【数字图像处理】直方图均衡化(含实现代码)

一、什么是直方图均衡化?

1、定义:直方图均衡化是指一幅输入图像经过点运算变化,得到一幅灰度直方图均匀分布的新图像的方法。
2、目的:使一幅输入图像转化为在每一灰度级上都有相同的像素点数(即输出的直方图是平的)。但由于数字图像的灰度级是离散并且是有限的,所以直方图均衡化的结果一般只是近似均衡的直方图,并非理想的水平直线。
3、功效:自动地增加像素灰度的分布范围,达到增强整个图像对比度的效果。
4、直方图均衡化的应用
① 提高图像的主观质量,在处理艺术图像时非常有用
② 经过直方图均衡化的图像对二值化阈值的选取十分有利
③ 有利于进行基于直方图的图像匹配

二、直方图的计算

        可以证明,图像的累计分布函数(Cumulative Distribution Function,CDF)是将直方图变换为均匀分布的转换函数,其变化公式如下所示:
在这里插入图片描述
        其中,DA为输入的灰度值,DB为输出的灰度值,Dm为最大灰度级(通常即255),A0为像素总数(即图像的面积),H(k)为灰度值为k的直方图统计结果。H(k) / A0即是将直方图归一化到(0, 1)之间的概率函数。我们以灰度级为8的灰度图像为例,展示直方图均衡化的计算步骤如下所示:
在这里插入图片描述
在这里插入图片描述

三、直方图均衡化的实现

        OpenCV内置了直方图均衡化的函数cv::equalizeHist(cv::InputArray src, cv::OutputArray dst),能够对输入的灰度图像进行均衡化处理。对于彩色图像,需要将其分离成R、G、B三个通道,分别处理后再合并通道。具体实现代码如下所示,使用时只需传入一幅灰度/彩色图像

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值