我正在寻找一个快速的想法/算法,让我在图像文件中找到正方形(作为标记点)。然而,它不应该是如此多的挑战......
我开始这样做是将源图像的颜色更改为灰度图像并扫描图像的每一行,寻找两条,三条最长的线条(逐个像素)。
然后有一排"线"我找到了可能创造欲望的元素。
更好的想法是找到具有已知特征的模式,例如:它是正方形,超出正方形,没有失真(只有白色空间)等。
目标是在不到1-2秒的时间内分析图像5000 X 5000像素。
有可能吗?
答案 0 :(得分:4)
其中一个OpenCV示例squares.cpp
就是这样做的,有关代码,请参阅here。或者,您可以查找Hough变换以检测图像中的所有线条,然后测试两条直线相交的线条。
此网站上还有许多资源可以帮助您:
我确定还有其他人,这些只是我遇到的前几个。
答案 1 :(得分:1)
请参见缩放不变特征变换,模板匹配和Hough变换。快速且不准确的猜测可能是制作颜色直方图并进行比较。如果图像足够复杂,您可以区分几组图像。
为了简单起见,假设我们有三个用于R,G和B的桶。完全白色的图像((100,100%,100%)用于(R,G,B)。完全红色的图像会有(100%,0%,0%)。复杂的图像可能有类似的东西(23%,53%,34%)。如果你采用那个(R,G,B)空间中的点之间的距离,你可以比较哪一个是“更接近”。
我想克里斯的链接解决了这个问题:)