how to sort histogram generated count and corresponding gray value.. pls help
1 view (last 30 days)
Show older comments
m=imread('ll.bmp');
[count,gray]=imhist(m);
the answer is:

i want to sort the count and corresponding gray value..
and delete the zero count values answer like this..

0 Comments
Accepted Answer
ARJUN K P
on 20 May 2015
Edited: ARJUN K P
on 20 May 2015
1 Comment
Image Analyst
on 20 May 2015
It does the same thing that I did but combined the counts and gray level arrays into a single 2D array (which we didn't know you wanted to do).
More Answers (2)
Image Analyst
on 18 May 2015
Don't use gray as a variable name - it's the name of a built in function that creates a colormap, and you just blew it away.
I don't know why you need to, but to get rid of array elements with zero counts
[count, grayLevels]=imhist(m);
rowsToDelete = count == 0;
count(rowsToDelete) = [];
grayLevels(rowsToDelete) = [];
5 Comments
Image Analyst
on 18 May 2015
To sort in reverse order, simply use fliplr()
count = fliplr(count)
grayLevels = fliplr(grayLevels);
Image Analyst
on 19 May 2015
% Sort count in descending order.
[sortedCounts, sortIndexes] = sort(count, 'descend');
% Sort grayLevels the same way.
grayLevels = grayLevels(sortIndexes);
See Also
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!