MATLAB直方图均衡化函数的计算及使用

MATLAB直方图均衡化函数的计算及使用

本文针对灰度图像的直方图均衡化函数给出运算方法。

图像的直方图展示了图像汇总的不同灰度级的分布。由下图的比较,我们可以清楚地区分:左上原始图像的像素值主要集中在低值处,因此整个图像看起来较为暗沉,不易分辨;而左下处理后的图像进行了灰度均衡化之后,整幅图像的像素值在0~256上分布较为均匀,因此更加清晰可辨。
左图上下分别为处理前与处理后的图像,右图分别为其各自的灰度直方图
matlab中有自带函数histeq可以很好地完成灰度直方图均衡化,而本文用的是展开图像频率的直方图均衡化方法,因为这个方法是先求出转换函数再进行计算,因此可以更直观地看出转换过程。
所谓展开图像频率,是指使用如下方程进行处理。
在这里插入图片描述
其中,sk为输出亮度值,T()为转换函数,rk为输入亮度值;L为图像中可能的灰度级数。本文中的原始图像为uint8格式,所以L=2^8=256; Pr为亮度值为rk的像素的分布概率,Pr(rk)=nk/MN,其中MN为像素总个数,nk为像素值为rk的像素点个数。

s0=255pr(r0);
s1=255
[pr(r0)+pr(r1)];

sk=255*[pr(r0)+pr(r1)+…Pr(rk)];
以此类推。
在这里插入图片描述
此图即为转换函数图。由此图可以看出,此函数主要将原先集中在亮度值较低处的函数值拉伸到了整个0~255区间上,因此图像会变得更加清晰。
以下为源代码:

I1=imread('Fig1.tif');
[M,N]=size(I1
  • 3
    点赞
  • 32
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值