how to sort histogram generated count and corresponding gray value.. pls help
Ältere Kommentare anzeigen
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..

Akzeptierte Antwort
Weitere Antworten (2)
Image Analyst
am 18 Mai 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 Kommentare
ARJUN K P
am 18 Mai 2015
Image Analyst
am 18 Mai 2015
They are already both sorted in terms of increasing gray level. There is a sort() command to use if you want some different kind of sorting, but you should probably take the sort order and apply it to both so that both arrays are always sorted in the same order.
Image Analyst
am 18 Mai 2015
To sort in reverse order, simply use fliplr()
count = fliplr(count)
grayLevels = fliplr(grayLevels);
Image Analyst
am 19 Mai 2015
% Sort count in descending order.
[sortedCounts, sortIndexes] = sort(count, 'descend');
% Sort grayLevels the same way.
grayLevels = grayLevels(sortIndexes);
ARJUN K P
am 19 Mai 2015
0 Stimmen
Kategorien
Mehr zu Images finden Sie in Hilfe-Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!

