有没有人知道一种简单的方法,给定一个二进制图像,构造一个变换,对于边界上的每个点(轮廓集像素)返回它最接近的中轴上的点?
问问题
349 次
1 回答
0
我不知道您的程序使用的是哪种语言,但您可以使用 python。
使用 scikit-image 库,这将非常容易。
首先,由于以下方法,您必须计算所有组件标签(可选,取决于您的二进制图像):skimage.morphology.label(image, return_num=True)
之后,您可以通过以下方式计算每个中间轴:skimage.morphology.medial_axis(img, return_distance=True)
所以在这一点上,你已经得到了带有轮廓像素的点集和带有中轴像素的点集。
您只需为每个组件标签计算您想要的像素与中间轴集合中所有像素之间的距离 dist=sqrt((y2-y1)^2+(x2-x1)^2)
我希望它会帮助你。
于 2017-02-15T14:59:53.510 回答