如何在python中的图像中沿着不规则形状对象的边界设置相等的间隔?

how to set equal intervals along boundaries of irregular shaped object in image in python?

我正在尝试沿黑白图像的边界设置相等的间隔。有办法吗?

我考虑先使用距离变换找到对象的边缘,然后扫描图像寻找边缘。我正在考虑从边缘上的第一个像素开始,然后找到最接近它的像素,最终我们将按顺序获得边缘像素列表。但是它的运行时间似乎真的很慢。

有人可以帮我解决这个问题吗?

你或许可以使用 findCountours 来做到这一点。

Each individual contour is a Numpy array of (x,y) coordinates of boundary points of the object.

所以你的 "boundary" 上有一个点列表。现在你只需要将连续的点放入一条线上并计算你想要在该线上的哪些点(不过我会把它的数学问题留给你 :)

你可以使用形态学(腐蚀或膨胀,取决于你的斑点是白色还是黑色)。然后找到轮廓。它应该比距离变换更快。