How to display output image from 'Regionprops'?
3 次查看(过去 30 天)
显示 更早的评论
Greetings, I have a code like shown as below:
img = imread('I.jpg'); % this image in grayscale
c = 1;
BW = img > 0;
BW = bwareaopen(BW,50);
s = regionprops(BW,img,{'Centroid','MeanIntensity','PixelValues'});
numObj = numel(s);
for k = 1:numObj
s(k).Gamma = round((2.6593.*(s(k).MeanIntensity)+0.3137),1);
s(k).Output = c*(s(k).PixelValues.^s(k).Gamma);
end
I want to ask is there any possible way to display the new image obtained from the s(k).Output?
采纳的回答
Atsushi Ueno
2022-7-30
> I want to ask is there any possible way to display the new image obtained from the s(k).Output?
You can write only a continuum area in the source image as below. Get 'PixelIdxList' with regionprops function.
img = imread('coins.png'); % this image in grayscale
c = 1;
BW = img > 127; % I have changed the threshold value for coins.png
BW = bwareaopen(BW,50);
s = regionprops(BW,img,{'Centroid','MeanIntensity','PixelValues','PixelIdxList'}); % add PixelIdxList
numObj = numel(s);
for k = 1:numObj
s(k).Gamma = round((2.6593.*(s(k).MeanIntensity)+0.3137),1);
s(k).Output = c*(s(k).PixelValues.^round(s(k).Gamma)); % gamma is rounded to avoid error
img(s(k).PixelIdxList) = s(k).Output;
end
imshow(img)
更多回答(0 个)
另请参阅
类别
Find more on Image Segmentation and Analysis in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!