# How do I find the percentage for the area of white colour over the area of the full image?

9 views (last 30 days)
Nursyahirah Hafidz on 10 May 2018
Edited: John BG on 11 May 2018
This is an image i have eroded and dilated. How do i find the percentage of the white ?

John BG on 10 May 2018
Hi Nursyahirah
When one zooms in it turns out that KSSV answer includes a lot of grey pixels wrapping the thick white dots that shouldn't be considered aprt of the pixels.
KSSV code renders a white area of
..
0 0 67
0 0 67
0 0 67
0 5 63
73 73 122
iwant =
0.155080657527910
.
KSSV says the white dots cover 15% of the image.
Yet, when we binarize the image
A1=A(:,:,1);
A2=imbinarize(A1);
imshow(A1)
figure(2);imshow(A2)
px_nz=nnz(A2)
total_px=numel(A2)
px_nz/total_px
px_nz =
23093
total_px =
399582
ans =
0.057792893573785
.
the image only has a 5.7% of white pixels.
.
Comment: Since the question clearly mentions 'full image' there's no need the crop the image.
.
thanks in advance for time and attention
John BG
KSSV on 10 May 2018
Hello...when you save the image....the image has white background in all the corners...so I included the command to crop it...it is a commonsense that the user wants the ratio from whole image ...not a small part of it...

KSSV on 10 May 2018
I = imcrop(I) ; % crop the required part
I = rgb2gray(I) ; % convert to gray image
whitepixels = nnz(I) ;
totalpixels = numel(I) ;
iwant = whitepixels/totalpixels
##### 2 CommentsShowHide 1 older comment
KSSV on 10 May 2018
Huummhh...sounds legitimate....what's the solution?

Nursyahirah Hafidz on 11 May 2018
now how do i display the percentage on my gui?
##### 2 CommentsShowHide 1 older comment
Image Analyst on 11 May 2018
How do you want to display it? In a static text label? In a table control? Over the image in the text overlay?

### Categories

Find more on Images 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!

Translated by