how to compute number of pixels in images
15 views (last 30 days)
Show older comments
Medical Imaging
on 28 Jul 2017
Commented: Image Analyst
on 28 Jul 2017
Dear sir I have one ground truth image(image 1) and other segmented image(image 2). I want to compute the number of pixel for white area for image 1 and number of pixel for red area in image 2. and then want to compute the difference of pixels.
2 Comments
Adam
on 28 Jul 2017
If the black pixels are all 0s then just use
doc nnz
If they aren't you can still just easily count, for example
nnz( myImage == 7 )
Gianfrancesco Angelini
on 28 Jul 2017
There are many ways to do it. I will suggest you a basic one, hoping to be clearer and helpful
% Define your images
img1 = x1;
img2 = x2;
% Convert them in grayscale, easier approach
img1g = rgb2gray(img1);
img2g = rgb2gray(img2);
figure(); imshow(img1g); %if you want to see the result
figure(); imshow(img2g); %if you want to see the result
% Calculate
img1g_totpx = numel( img1g ); %total number of pixel of img1
img1g_NB = length( img1g(img1g~=0) ); %number of pixel not black of img1
img2g_totpx = numel( img2g ); %total number of pixel of img2
img2g_NB = length( img2g(img2g~=0) ); %number of pixel not black of img2
diffPx = abs( img1g_NB - img2g_NB ); %difference of pixels between the 2 imgs
Cheers
Accepted Answer
Image Analyst
on 28 Jul 2017
Because a different person asked this very same question with the very same image, and Walter answered it here I'm thinking it's homework. I've tagged it as such.
2 Comments
Image Analyst
on 28 Jul 2017
Oh, you're right. He posted it in someone else's discussion. I just saw the original poster's name.
More Answers (0)
See Also
Categories
Find more on Filter Analysis in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!