2012-05-21 35 views
2

白色区域我有一个灰度图像,这是我转换成黑白图像,并执行就可以了一些处理。的处理之后,我有具有白色像素组在黑色图像的黑色和白色图像。所以我想将其周围的合成图像的白色区域圈,但在原始图像。 我想到了很多办法,但我仍然无法启动任何办法。 请帮忙。MATLAB环抱在黑色图像

回答

4

您可以使用regionprops得到二进制图像有关连接白色区域的一些统计数据,并从该估计区域半径。

im = imread('moon.jpg'); 
bw = im2bw(im); 

stats = regionprops(bw); 

imshow(im); 
hold on; 

t = 0:.01:2*pi; 
for i = 1:numel(stats) 
    bb = stats(i).BoundingBox; 
    radius = mean([bb(3),bb(4)])/2; 

    plot(bb(1)+radius+radius*sin(t), bb(2)+radius+radius*cos(t)); 
end 

给出: Image

+0

这就是它!这就是我想要的:) 我虽然不能+1它,因为我没有愚蠢的代表处点尚未:( 还是要谢谢你 – Adee