matlab直方图均衡化代码

学习目标:

1.直方图均衡化在matlab的实现

学习产出

p=imread('liena.jpg');
g=rgb2gray(p);%读取图片灰度化的图像
x=size(g,1);y=size(g,2);%得到图片的格式
g_r=imhist(g)./(x*y);%图像的离散化直方图
s=zeros(256,1);%均衡化直方图的容器
picure=im2uint8(zeros(x,y));%均衡化后的图像的容器
for i=1:256
    for u=1:i
    s(i)=s(i)+g_r(u);
    end
end
S=im2uint8(s);
for i=1:x
    for j=1:y
        for u=1:256
        if g(i,j)==u
            picure(i,j)=S(u);
        end
        end
    end
end

最后 

原图像

 matlab直方图均衡化代码_第1张图片

原直方图

matlab直方图均衡化代码_第2张图片

 均衡化的图像

matlab直方图均衡化代码_第3张图片

均衡化后的直方图

matlab直方图均衡化代码_第4张图片

 

你可能感兴趣的:(matlab,开发语言,图像处理,直方图)