使用Open CV检测形状
我一直在尝试检测图像中的形状,并计算图像中有多少这样的形状,例如加号。是否有任何内置函数来检测此类形状?如果有,请告诉我使用Open CV检测形状,c,opencv,shape-recognition,C,Opencv,Shape Recognition,我一直在尝试检测图像中的形状,并计算图像中有多少这样的形状,例如加号。是否有任何内置函数来检测此类形状?如果有,请告诉我 谢谢。您需要找到图像中的所有轮廓,然后对其进行过滤 我们知道加号有12个角。所以你需要过滤所有有12个角的轮廓。当然,有时这会给你一些不想要的东西。因此,您可以再次过滤那些在2条直线(3个角)之间具有角度的轮廓,例如,最大值为0.3 cos 看看OpenCV的samples目录中的squares.cpp。它将查找具有4个角和角度的所有轮廓,最大值为0.3 cos。几乎所有的方
谢谢。您需要找到图像中的所有轮廓,然后对其进行过滤 我们知道加号有12个角。所以你需要过滤所有有12个角的轮廓。当然,有时这会给你一些不想要的东西。因此,您可以再次过滤那些在2条直线(3个角)之间具有角度的轮廓,例如,最大值为0.3 cos
看看OpenCV的samples目录中的squares.cpp。它将查找具有4个角和角度的所有轮廓,最大值为0.3 cos。几乎所有的方块都是这样。你也可以看看霍夫变换 检测形状的一种方法是使用 用于执行二进制图像连接组件标签的库 (类似于regionprops的Matlab函数)。它还提供功能 要从提取的水滴中操作、过滤和提取结果, 有关更多信息,请参见功能部分 有关示例,请参见: 另一种选择是利用 Emgu CV是OpenCV映像的跨平台.Net包装器 处理库。允许从.NET调用OpenCV函数 兼容的语言,如C#、VB、VC++、IronPython等 可以在Mono中编译并在Windows、Linux、Mac OS X、iPhone、, iPad和Android设备
霍夫变换的可能复制基本上是检测圆形物体,对吗?我怀疑我是否可以用它来检测加号。你可以用它来检测线条。顺便说一句,你应该看看这个链接,它解释了如何使用openCV检测形状:是的,找到轮廓是我一直在想的。我必须更深入地研究如何检测角度和角。谢谢你的信息。我会调查一下,然后回来!!我以前使用过cvblobslib进行人员跟踪,但这基本上是为了检测移动的对象。需要找到一种方法来检测形状使用。非常感谢。