直方图均衡matlab

自己复习的时候写了一个对黑白图像进行直方图均衡的函数,帮助加深理解

function [image_histogram,out_image]=histogram_processing(image)
%code by Xiuwen Wu ahu 2019/5/30
image_size=size(image);
%判断输入是否是灰度图片
if(length(image_size)==3)
    image=rgb2gray(image);
end
figure;
imshow(image);title('Image');
image=double(image);
image_size=size(image);
container=zeros(256,1);
image_histogram=zeros(256,1);
out_image=zeros(image_size);

%统计每个灰度的频率(输出为PDF)  PDF 概率密度函数
for i=0:255;
    container(i+1)=length(find(image==i))/(image_size(1)*image_size(2));
end

%计算直方图
% for i=0:255;
%     for j=0:i;
%         image_histogram(i+1)=image_histogram(i+1)+container(j+1);
%     end
% end
for i=0:255;
    image_histogram(i+1)=sum(container([1:i+1]));
end
image_histogram=round(image_histogram*255);%注意四舍五入

%依据直方图对原图片进行映射
for i=0:255;
 out_image(find(image==i))=image_histogram(i+1);
end
figure;
bar(0:255,image_histogram);title('The Histogram Of Image');
figure;
imshow(uint8(out_image));title('The Image After Histogram Processing');
end

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值