如何在轮廓 OpenCV 中找到 "regions"?

How to find "regions" in a contour OpenCV?

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

我所说的 "region" 是具有低方向变化的轮廓子集。

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

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

我想知道是否有更好的方法来做到这一点,直接使用 OpenCV 而不是自己进行向量运算。

-当你的区域边界总是接近垂直或接近水平时,考虑使用过滤器预处理图像(腐蚀、膨胀),以隔离顶点和层,然后合并结果,以找到区域上的交替颜色边界。

-当您的路线指向任何地方时,情况会变得更加复杂!一种选择是在 霍夫线 的帮助下从像素中检索坐标,请参阅

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