Can anyone please help me to calculate average(mean) RGB value from the image in matlab? and also show the image using that average values.....
17 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Sajina Rose
le 18 Août 2019
Modifié(e) : Image Analyst
le 18 Août 2019
I=imread(filename);
red=I(:,:,1);
green=I(:,:,2);
blue=I(:,:,3);
Ravg=(sum(sum(red)))./((size(red,1)).*(size(red,2)));
Gavg=(sum(sum(green)))./((size(green,1)).*(size(green,2)));
Bavg=(sum(sum(blue)))./((size(blue,1)).*(size(blue,2)));
2 commentaires
Réponse acceptée
Image Analyst
le 18 Août 2019
Modifié(e) : Image Analyst
le 18 Août 2019
What does "enhance" mean to you? Increase the saturation? If so, convert to HSV space with rgb2hsv() and multiply the second channel, the "S" channel, by some factor. See attached demo where I do that for the blue colored things.
Regarding your code, you could do it much simpler by
Ravg = mean2(red);
Gavg = mean2(green);
Bavg = mean2(blue);
0 commentaires
Plus de réponses (0)
Voir également
Catégories
En savoir plus sur Image Filtering and Enhancement dans Help Center et File Exchange
Produits
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!