用MATLAB求图像直方图:
picture=imread('yun.png');
figure(1)
imshow(picture),title('原图')
gray_image=rgb2gray(picture);
%%
%直方图自己编的代码
number=zeros(1,256);
[M,N]=size(gray_image);
for i=1:M
for j=1:N
for index=1:256
if gray_image(i,j)==index-1
number(1,index)=number(1,index)+1;
end
end
end
end
figure(2)
plot(number),xlim([0,256]),title('自己编写代码')
one_number=number/(M*N);
figure(3)
plot(one_number),xlim([0,256]),title('归一化直方图')
%%
%matlab自带直方图函数
hist_image=imhist(gray_image);
figure(4)
plot(hist_image),xlim([0,256]),title('MATLAB自带函数')