c - 使用 Open CV 检测形状

标签 c opencv shape-recognition

我一直在尝试检测图像中的形状,并计算图像中存在多少个此类形状,例如加号。是否有任何内置函数可以检测此类形状?如果有请告诉我。

谢谢。

最佳答案

您需要找到图像中的所有轮廓,然后对它们进行过滤。

我们知道加号有 12 个角。所以你需要过滤掉所有有12个角的轮廓。当然,有时这会给您带来一些不需要的对象。因此,您可以再次过滤那些 2 条线(3 个角)之间的角度最大为 0.3 cos 的轮廓。

查看 OpenCV 示例目录中的 squares.cpp。它找到所有具有 4 个角和最大角度的轮廓。 0.3 因斯所以几乎都是正方形。

关于c - 使用 Open CV 检测形状,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18307546/

相关文章:

c - 段错误,不知道为什么

c - 为什么这个 offsetof() 的实现有效?

java - 如何使用 JavaCV 库将 IplImage 拆分为 HSV channel

image-processing - 如何判断图片中最明显的物体是否是形状?

c - printf 不在 eclipse c 的控制台中打印

c - 位操作(移位)

python-3.x - 动态相机标定OpenCV python3

java 内存溢出错误 : memory usage is too high: physicalBytes > maxPhysicalBytes javacpp Pointer deallocator()

python - 在 Python 中为 findContours 使用层次结构