0

我正在尝试侵蚀二进制图像中的对象,以使它们不会变得小于某个固定大小。例如,考虑一个由连通分量(blob)组成的二进制映射,其中一个通过最小或最大反极(反周界)距离(即,彼此相距很远的两点之间的距离为它们可以在斑点的周边或轮廓上;如果轮廓由 N 个连续编号的点组成,则评估的距离将是点 1 和 N/2+1、点 2 和 N/2+2 之间的距离,等等。 )。鉴于这样的安排,我试图侵蚀这些斑点,直到距离度量达到指定的限制。如果斑点是简单的圆圈,则可以通过最终腐蚀然后膨胀到固定大小来实现效果;然而,这种程序会丢失不规则物体的轮廓。有没有办法使用 MATLAB 中的内置函数对连接的、不规则的组件实现这种效果?

4

1 回答 1

0

没有图像并且已经尝试过代码,我可以理解你的错误,但可能迭代使用带有'thin','skel'或'shrink'的bwmorph会帮助你。

while(cond < cond_threshold)
    bw=bwmorph(bw,...,1); %one of the options above
    cond = calc_cond(bw);
end
于 2017-08-20T15:03:30.420 回答