问题主要出在“t.jpg”的属性上,图片的位深度为24,而imhist()函数要求图片的位深度为8。
处置办法,就是用画图软件打开后另存为256色位图格式。可用rgb2gray()改变。
t=rgb2gray(t);
处理前:
处理后:
运行你的程序,得到
imhist只支持灰度图像,而你imread读入的是彩色rgb图像,所以错了。改为:t=imread('t.jpg');t=rgb2gray(t);imhist(t);就行了