方检,图像处理

时间:2011-11-17 08:51:50

标签: image-processing opencv computer-vision image-recognition feature-detection

我正在寻找一种有效的方法来检测数字周围的小方框(见图片)? 我已经尝试过使用hough转换但没有成功。有任何想法吗?我需要一些提示!我正在使用opencv ...

2 个答案:

答案 0 :(得分:4)

获取灵感,你可以看一下

或者,如果你总是寻找相同的网格,你可以部署这样的东西:

  • 制作一个完美的网格仿真模板,并检测或保存所有角落的所有坐标。
  • 在目标图像中,执行相同的操作,例如使用Harris点。要有创意,您也可以使用可在图像中找到的不同三角形。
  • 使用模板中的坐标和找到的哈里斯点,确定模板和目标图像之间的仿射变换x = Ax'。然后可以使用该变换将模板网格映射到目标图像上。至少,这将为您提供一些先验信息,以帮助指导进一步细分。

可以在Zissermans书籍Multiple View Geometry in Computer VisionPeter Kovesi

的网站上找到关于仿射矩阵A估计的想法和示例的要点。

答案 1 :(得分:0)

我首先尝试检测整个纸张的矩形边界,然后应用透视变换使其成为真正的矩形。裁剪掉那部分图像。如果可能,那么尝试使交替的白色和灰色子矩形具有相同的背景亮度 - 也许尝试adaptive histogram equalization

然后Hough变换可能表现更好。或者,您可以采用与Robert Bemis在MATLAB Central上大致类似于this demonstration的方法(它分析DNA微阵列图像而不是Lotto卡,但它实际上是在网格中找到排列的项目框)。在较高的层次上,方法是计算沿像素列和行的自相关,以检测网格中项目的周期性,并使用它来对每个项目施加边界框。

很抱歉,上述建议主要是基于MATLAB的;我担心我不是一个opencv用户,但希望它至少会给你一些想法。