在图像上找到十字架

Ale*_*pus 7 algorithm opencv image-processing

我有一组二进制图像,我需要在其上找到十字架(附带示例).我使用findcontours从二进制图像中提取边框.但我无法理解我怎样才能确定这个形状(边界)是否交叉?也许opencv有一些内置方法,可以帮助解决这个问题.我想用机器学习来解决这个问题,但我认为有一种更简单的方法可以做到这一点.谢谢!

交叉二进制图像

交叉二进制图像2

ami*_*mit 2

维奥拉-琼斯物体检测可能是一个好的开始。尽管该算法(据我所知)的主要用途是人脸检测,但它实际上是为任何对象检测而设计的,例如十字架。

该算法是基于机器学习的算法(因此,您将需要一组分类的“交叉”和一组分类的“非交叉”),并且您将需要识别重要的“特征”(模式),这将有助于算法识别十字。

该算法在 OpenCV 中实现为cvHaarDetectObjects()