How to find out the different intensity values that are used in the image and make out a list of them.Then find the freq. of occurence (probability) of each of intensity values in the image?
1 次查看(过去 30 天)
显示 更早的评论
How to find out the different intensity values that are used in the image and make out a list of them. Then find the freq. of occurrence (probability) of each of intensity values in the image?
1 个评论
采纳的回答
Walter Roberson
2015-7-30
grayImage = rgb2gray(YourImage);
[unique_vals, ~, idx] = unique(grayImage(:));
counts = accumarray(idx(:), 1);
probs = counts ./ sum(counts);
bar(unique_vals, probs);
0 个评论
更多回答(1 个)
Image Analyst
2015-7-30
You can use
grayImage = rgb2gray(rgbImage);
[pixelCounts, grayLevels] = imhist(grayImage);
grayLevelFrequency = pixelCounts / numel(grayImage);
It depends on what you mean by intensity or how accurate you want to be. It would be best to calibrate your system using a Color Checker Chart and then convert to LAB and take the histogram of the L channel. This is what I do, and what John suggested above. If you just want to get an idea of graylevels for thresholding or something, then you don't need to go through all that.
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Image Processing Toolbox 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!