我试图侵蚀二进制图像中的对象,使它们不会变得小于某个固定大小。例如,考虑由连通分量(blob)组成的二进制映射,其中一个通过最小或最大反极化(反周界)距离(即两个点之间的距离彼此相距的距离定义为blob大小)。它们可以位于斑点的周长或轮廓上;如果轮廓由N个连续编号的点组成,则评估的距离将是点1和N / 2 + 1,点2和N / 2 + 2之间的距离等。 )。鉴于这样的安排,我试图侵蚀这些斑点,直到距离度量达到指定的限制。如果斑点是简单的圆圈,那么效果可以通过最终侵蚀然后扩张到固定尺寸来实现;然而,这种程序会丢失不规则物体的轮廓。有没有办法在MATLAB中使用内置函数为连接的不规则组件实现这样的效果?
答案 0 :(得分:0)
由于没有图片和已经尝试过的代码,我可以理解你的错误,但可能会使用bwmorph进行迭代,以及' thin' skel'或者'缩小'会帮助你。
while(cond < cond_threshold)
bw=bwmorph(bw,...,1); %one of the options above
cond = calc_cond(bw);
end