我是Matlab的新手,正在尝试做一些图像处理。我有两个彩色图像,可以转换为灰度图像。我的目标是能够将两个灰度图像的直方图放在同一张图上,以便进行比较。我的代码如下所示:

a=imread('image1.jpg')
agray=rgb2gray(a)
b=imread('image2.jpg')
bgray=rgb2gray(b)
figure,imhist(agray)
figure,imhist(bgray)

该代码可以很好地用于独立查看两个直方图,但是我可以找到如何将它们组合成一个图形进行比较。请帮忙!!

最佳答案

如果您希望两者都在同一轴上,并且您不介意丢失下部条,请尝试以下操作(我现在没有“图像工具箱”,因此我尚未对其进行测试):

a=imread('image1.jpg')
agray=rgb2gray(a)
b=imread('image2.jpg')
bgray=rgb2gray(b)
[counts,x] = imhist(agray)
stem(counts,x,'b')
hold on
[counts,x] = imhist(bgray)
stem(counts,x,'r')

关于matlab - 在Matlab中使用 "imhist"函数在同一图形上绘制多个直方图,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/18044950/

10-12 03:51