calculate the area percent of non white pixel in the image
3 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
Sumit Chaudhary
el 25 de Mzo. de 2018
Comentada: Image Analyst
el 25 de Mzo. de 2018
In an ongoing project of mine, i have to calculate the area percent of all the pixel having not white coloration. The color is basically green and the shades of green. I have written code for area percentage for green coloration but it dont seem to work. The area percentage it is showing for all the 5 sub images to be 0.33 . Please help me out. I read something related to pure rgb color. Please tell how to check in my image the colors are pure or not.
I = imread('image.jpg');
av = zeros(1,5);
for i = 1:5
imshow(I) ;
[rgbImage, rect] = imcrop(I);
imwrite(rgbImage,strcat(num2str(i),'.jpg')) ;
greenChannel = rgbImage(:, :, 2);
[rows, columns] = size(rgbImage);
greenCount = sum(greenChannel(:) > 0);
greenareapercent(i)= greenCount / (rows * columns);
end
0 comentarios
Respuesta aceptada
Image Analyst
el 25 de Mzo. de 2018
I don't know what your definition of green is. Is it any pixel in which the green signal is more than the red and blue signal? Is it only pixels with an RGB value of (0, 255, 0)?
About all I can say is to convert your image to HSV with rgb2hav, and threshold on the hue channel to get pixels with a green hue. See color segmentation demos in my File Exchange for demos https://www.mathworks.com/matlabcentral/fileexchange/?term=authorid%3A31862&sort=downloads_desc
3 comentarios
Image Analyst
el 25 de Mzo. de 2018
Use my hue segmentation tool here: https://www.mathworks.com/matlabcentral/fileexchange/28512-simplecolordetectionbyhue-- to find any green items.
You can also use the Color Thresholder app on the Apps tab of the MATLAB toolribbon to find green things. Use HSV color space.
Más respuestas (0)
Ver también
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!