使用OpenCV进行徽标检测

dbo*_*tha 8 opencv image-recognition computer-vision

我正在尝试在我正在处理的移动应用程序中实现一个复活节彩蛋.在摄像机视图中检测到徽标时,将触发这些复活节彩蛋.我试图检测的徽标就是这个:哈利法克斯的标志.

我不太清楚解决这个问题的最佳方法是因为我对计算机视觉很陌生.我目前正在使用Canny算法找到水平边缘.然后我使用概率Hough变换找到线段.其输出如下(蓝线表示概率Hough变换检测到的线段):

哈利法克斯标志后检测

我要采取的下一步是寻找一组大约24条线(拟合在一个近似正方形的矩形内),每条线的长度必须大致相同.我会用这两个信号来表示徽标的潜在存在.我意识到这可能是一种非常天真的方法,并欢迎有关如何以更可靠的方式更好地检测此徽标的建议?

谢谢

dom*_*dom 5

您可能想使用 Rob Hess 的SIFT 库来使用SIFT。它使用 OpenCV,而且速度相当快。我想这比您当前处理徽标检测的方式更容易:)

还可以尝试寻找SURF,它声称比 SIFT 更快、更强大。这个特征检测教程将为您提供帮助。

  • SIFT 和 SURF 均已申请专利(尽管允许免费的非商业用途),因此任何商业用途都需要专利许可。 (3认同)