如何显示具有某些特定 属性 阈值的连通分量图像 say 'Area'
How to display a connected component image with threshold of some specific property say 'Area'
我使用
找到了图像的连通分量
La=bwlabel(labeledImage,8); %%% labeledImage is a binary image
figure,imshow(La,[]);
coloredLabel = label2rgb (La, 'hsv', 'k', 'shuffle');
imshow(coloredLabel);
现在我想在 Matlab 中显示(显示)面积小于“7”像素和大于“7”像素的连通分量(彩色),作为两个不同的图像。有人可以帮帮我吗
提前致谢...
有点棘手,但这是使用 regionprops
执行此操作的一种方法:
pr = regionprops( La, 'Area', 'PixelIdxList' );
smallArea = La;
small_select = [pr.Area] <= 7; %// select regions smaller than 7 pixels
smallArea( vertcat( pr(~small_select).PixelIdxList ) ) = 0; %// set all other regions to zero
imshow( smallArea ); colormap( rand(max(smallArea(:)), 3) );
我使用
找到了图像的连通分量La=bwlabel(labeledImage,8); %%% labeledImage is a binary image
figure,imshow(La,[]);
coloredLabel = label2rgb (La, 'hsv', 'k', 'shuffle');
imshow(coloredLabel);
现在我想在 Matlab 中显示(显示)面积小于“7”像素和大于“7”像素的连通分量(彩色),作为两个不同的图像。有人可以帮帮我吗
提前致谢...
有点棘手,但这是使用 regionprops
执行此操作的一种方法:
pr = regionprops( La, 'Area', 'PixelIdxList' );
smallArea = La;
small_select = [pr.Area] <= 7; %// select regions smaller than 7 pixels
smallArea( vertcat( pr(~small_select).PixelIdxList ) ) = 0; %// set all other regions to zero
imshow( smallArea ); colormap( rand(max(smallArea(:)), 3) );