您的位置:首页 > 编程语言 > MATLAB

用MATLAB编程实现直方图均衡化

2011-06-14 21:08 155 查看
I=imread('mri.tif');%初始化图像
figure,imshow(I)
title('原图像')

%直方图显示

[M,N]=size(I);%图像的大小,M为水平像素点个数,N为垂直像素点个数
n=zeros(1,256);%计算各灰度级像素点数
for i=1:M
for j=1:N
n(I(i,j)+1)=n(I(i,j)+1)+1;
end
end

pi=zeros(1,256);%计算各灰度级出现的概率
for i=1:256
p(i)=n(i)/(M*N);
end

s1=zeros(1,256);
for i=1:256
for j=1:i
s1(i)=p(j)+s1(i);%直方图均衡化
end
end

plot(s1)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: