How to display output image from 'Regionprops'?

Illustration
Fahmi Akmal Dzulkifli - 2024-02-01T13:37:38+00:00
Question: How to display output image from 'Regionprops'?

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?

Expert Answer

Profile picture of John Williams John Williams answered . 2025-11-20

 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.webp'); % this image in grayscale
c = 1;
BW = img > 127; % I have changed the threshold value for coins.webp
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)


Not satisfied with the answer ?? ASK NOW

Get a Free Consultation or a Sample Assignment Review!