How to get the hue/saturation of a colourful images?
4 visualizzazioni (ultimi 30 giorni)
Mostra commenti meno recenti
I have a set of color images and I want to get the values of hue and saturation and brightness using matlab , But I want to get the values quickly for all the images because the number of images is too large.
thanks to all.
0 Commenti
Risposte (2)
KALYAN ACHARJYA
il 29 Dic 2019
rgb2hsv and get the data
4 Commenti
KALYAN ACHARJYA
il 29 Dic 2019
Modificato: KALYAN ACHARJYA
il 29 Dic 2019
for i=1:...
variable_name{i}=data_to_be_save
end
See here
Image Analyst
il 29 Dic 2019
Then inside the loop over k, call rgb2hsv(). If you want the means, do
hsvImage = rgb2hsv(rgbImage);
hmean(k) = mean2(hsvImage(:, :, 1))
smean(k) = mean2(hsvImage(:, :, 2))
vmean(k) = mean2(hsvImage(:, :, 3))
5 Commenti
Image Analyst
il 7 Gen 2020
mean2() is a function in the Image Processing Toolbox that takes the mean of a 2-D array. It's basically the same as mean(array(:)).
Guillaume
il 8 Gen 2020
Modificato: Guillaume
il 8 Gen 2020
Or since R2018b, you can also use mean(array, 'all'). There's not much need for mean2 anymore. You could also calculte the mean of all 3 channels at once as a 1x3 vector with:
hsvmean = squeeze(mean(hsvImage, [1, 2])); %requires R2018b or later
Vedere anche
Categorie
Scopri di più su Convert Image Type in Help Center e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!