How to plot a 2D histogram of pixel pairs ?

3 次查看(过去 30 天)
I have a 'M by 2' matrix consisting of pixel pairs in an image. I want to find which pixel pairs occur more frequently. For this I need to plot a 2D histogram. Any suggestions ?

回答(2 个)

Azzi Abdelmalek
Azzi Abdelmalek 2014-3-30
This looks like the previous question
If you can find the frequency of each pair, then you can find the most frequent one.
A=[1 2;3 4;1 2;5 6;1 2;5 6]
[ii,jj,kk]=unique(A,'rows')
f=histc(kk,1:numel(jj))
[a,idx]=max(f)
out=[ii(idx,:) a]

Image Analyst
Image Analyst 2014-3-30
There is a special function made to exactly that. It's called graycomatrix() and is in the Image Processing Toolbox. It calculates what is called the Gray Level Cooccurrence Matrix. The GLCM is what you called the 2D histogram. My demo script is attached below in blue text. I show the GLCM as a 2D image, like a heat map.

类别

Help CenterFile Exchange 中查找有关 Histograms 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by