我需要使用OpenCV在图像中找到正方形(在matlab或其他任何问题上都没问题,通常我期望的是一些想法)。
考虑下面的测试图像:
我需要在上面的图像中准确找到那些彩色的正方形(而不是白色的长条)。
我做了什么 :
我应用了通用方法(OpenCV样本随附),即在所有颜色平面中找到轮廓,对其进行近似并检查元素数= 4。它在某种程度上可以检测到很少的正方形,尤其是暗的正方形。
我要做的下一步是预测。即这种安排是固定的。因此,如果获得一些,我可以预测剩余的。它还可以进一步扩展。但是准确性非常差。
但是我觉得这里的预测不是一个好方法,并且它并不总是提供第一步所给出的准确答案。
我需要的 :
1)还有其他更好的方法可以更准确地检测这些正方形吗?还是多种方法?
重要的一点是,时间在这里不是问题。算法可能很慢,没关系。但是准确性是主要标准。
有时,图像可能更加模糊。
我面临的主要问题之一是某些正方形的颜色与背景颜色几乎相似(请检查第3列的第一和第二个正方形)。
寻找想法,在此先感谢
更新:
以下是我得到的最大准确结果:
当然,结果图像的大小会有所调整。
更新2:
我在下面的答案中给出了更好的解决方案:https : //dsp.stackexchange.com/a/7526/818