如何在连通分量分析的图像中找到最小和最大孔。我已经做了如何找到洞:(代码下面)
I = imread('1.jpg');
B=bwlabel(I);
level = graythresh(I);
BW = im2bw(I,level);
numb=bweuler(BW,4);
答案 0 :(得分:0)
通过最小和最大孔,我认为你的意思是最小和最大面积的孔。您可以使用regionprops
查找已连接组件的区域。但首先你要区分洞和背景。因此,我们排除了触摸图像边框的组件。
lbl = bwlabel(~BW);
holes = ~(BW|ismember(lbl,unique([lbl([1 end],:) lbl(:,[1 end])'])));
现在您要查找剩余组件的最小和最大区域。
rp = regionprops(holes);
min_hole_area = min([rp.Area]);
max_hole_area = max([rp.Area]);
你没有说你是否只想要像素的区域或地图。您可以获得最小/最大孔的索引,但通常它可能不是唯一的。