3-d plot
1 次查看(过去 30 天)
显示 更早的评论
I have two matrixes: I is a grayscale image and BW is the binary image. for the regions that have area>50 in BW, I want to calculate the mean value of the those regions in I. I then want to show these mean values for each region as bar plot on the grayscale. Any suggestion?
I used the following code to show the mean value of each region on the image but dont know how to show them as bar.
% create a synthetic image
I = propsSynthesizeImage;
%a create binary image
BW = I >0;
%find the centroid of each region
s = regionprops(BW, I, {'Centroid'});
imshow(I)
title('Weighted (red) and Unweighted (blue) Centroid Locations');
hold on
numObj = numel(s);
%plot the centeroid of each region on the image
for k = 1 : numObj
plot(s(k).Centroid(1), s(k).Centroid(2), 'bo');
end
hold off
s = regionprops(BW, I, {'Centroid', 'PixelValues', 'BoundingBox'});
imshow(I);
title('Standard Deviation of Regions');
hold on
%calculate the mean value of each region and plot them on the image
for k = 1 : numObj
s(k).Mean= mean(double(s(k).PixelValues));
text(s(k).Centroid(1),s(k).Centroid(2), ...
sprintf('%2.1f', s(k).Mean), ...
'EdgeColor','b','Color','r');
end
hold off
2 个评论
Walter Roberson
2011-12-17
http://www.mathworks.com/matlabcentral/answers/13205-tutorial-how-to-format-your-question-with-markup
回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Image Processing Toolbox 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!