如何确定图像中元素的坐标?

时间:2010-08-27 09:53:16

标签: java

我的图像几乎是b& w,它在白色背景上有一个黑色方块。我怎样才能确定这个广场的坐标?

实际上是扫描文档,这些方块用于扫描图像的校准和定位。我想我需要AI和神经网络,但我宁愿使用更简单的东西。我只需要该广场内的像素坐标。

我可以使用标准Java API逐像素地读取图像,但这似乎是天真的解决方案。

感谢。

1 个答案:

答案 0 :(得分:2)

除非您想使用使用相当复杂算法的图像处理框架,否则您必须逐个像素地读取图像。但是这里有一些使这项任务更简单的技巧?

  1. 长方形有多大?如果您知道它是纯白色且至少10像素宽,则可以将图像缩小10倍。现在你只需要寻找一个白色(或非常浅灰色)的像素。或者,您只能读取每10个像素。

  2. 在开始搜索之前裁剪图像,即向Java图像API询问一行中的所有像素,然后检查它们是否完全相同。如果是这样,那么你可以忽略该行。

  3. 当然,现实很少是那么尖锐。所以你需要在图像上运行一个过滤器,如果超过6个邻居是黑色的话,如果8个邻居中至少有3个为白色,则需要将像素变为白色。

  4. 如果可以,请从灰色图像开始,然后将其转换为B& W.这样,您可以根据需要优化结果(例如,将切割设置为60或80而不是128)。