How to find the highest gray value in a color image?
3 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
matlabgeek
le 20 Jan 2016
Commenté : Image Analyst
le 20 Jan 2016
How do we find the highest gray values in a color image. If this highest gray value in certain channel, for example, further, how do we find out other locations which have highest gray value?
0 commentaires
Réponse acceptée
Walter Roberson
le 20 Jan 2016
grayimage = rgb2gray(YourRGBImage);
maxgray = max(grayimage(:));
grayidx = find(grayimage == maxgray);
These are the linear indices. If you want row and column instead then use
[grayidxrow, grayidxcol] = find(grayimage == maxgray);
4 commentaires
Image Analyst
le 20 Jan 2016
If by "highest gray value in certain channel" then you mean the highest red value, the highest green value, and the highest blue value, then you'd to that on each color channel independently.
maxR = mean2(rgbImage(:,:,1));
maxG = mean2(rgbImage(:,:,2));
maxB = mean2(rgbImage(:,:,3));
Of course the highest in each channel may not all lie at the very same pixel. The brightest red value may lie at a different place than the highest blue value.
Plus de réponses (0)
Voir également
Catégories
En savoir plus sur Image Processing Toolbox dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!