MATLAB Answers

how do i select only a certain area of ​​an image and then use it to get the mean pixel value?

2 views (last 30 days)
Giuseppe Ronci
Giuseppe Ronci on 7 Mar 2021
Commented: Giuseppe Ronci on 14 Mar 2021
How can i select only the central red area of ​​the star and then get the mean pixel value of the red channel?

Answers (1)

KALYAN ACHARJYA
KALYAN ACHARJYA on 7 Mar 2021
Edited: KALYAN ACHARJYA on 7 Mar 2021
This is all about how you can correctly segregate ROI, what the red fields refer to, as there is no clear boundary in the area of interest items, the easiest way-
red_channel=rgbImage(:,:,1);
bwimage=imbinarize(rgbImage(:,:,1),0.3);
% Get the largest blob only
bwimage=bwareafilt(bwimage,1);
% Get data for mean
sum_pix=sum(bwimage(:));
mask=uint8(cat(3,bwimage,bwimage,bwimage)); % Just for display purpose
% Mask operation on Red Channel
red_seg=red_channel(bwimage);
fprintf('The Mean is: %f',sum(red_seg)/sum_pix);
imshow([rgbImage,mask.*rgbImage;])
  7 Comments
Giuseppe Ronci
Giuseppe Ronci on 14 Mar 2021
@Image Analyst Can you help me? I tried to insert in various ways the command to do the standard deviation to add to the mean pixel value so as to have the error beyond the average but the code gives me an error. Do you know how I can change the code?

Sign in to comment.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by