How to plot a 2D histogram of pixel pairs ?
2 次查看(过去 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 ?
0 个评论
回答(2 个)
Azzi Abdelmalek
2014-3-30
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]
0 个评论
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.
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/174691/image.png)
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Histograms 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!