如何在轮廓OpenCV中找到“区域”?

时间:2019-02-07 22:41:20

标签: python opencv image-segmentation

假设我们从OpenCV轮廓获取以下轮廓信息:

enter image description here

我所说的“区域”是轮廓的子集,方向变化很小。

例如,这些可能是所提供示例中的区域:

enter image description here

一种检测这些现象的方法是,对每个点的切线的点积进行局部邻域比较。 (即查看切线在本地发生了多少变化)。

但是我想知道是否还有更好的方法,直接使用OpenCV而不是自己执行向量运算。

1 个答案:

答案 0 :(得分:0)

-当区域边界总是接近垂直或接近水平时,请考虑使用滤镜(腐蚀,扩张)对图像进行预处理,以分离顶点和地平线,然后合并结果,以在区域边界上找到交替的颜色。

-当您前往任何地方时,情况都会更加复杂!一种选择是借助强线参见

从像素中检索坐标

https://opencv-python-tutroals.readthedocs.io/en/latest/py_tutorials/py_imgproc/py_houghlines/py_houghlines.html