An adaptive gamma correction for image enhancement 低照度图像自适应gamma矫正


前言

文章主要对图像增强算法进行综述,并比较之前直方图均衡化算法的优缺点提出一种新的基于Gamma增强的算法。算法的主要步骤:
1、色彩空间转换,BGR转换到HSV空间,选取V空间(亮度空间),计算V空间的均值和方差;
2、图像分类,规避传统直方图均衡化的缺点,根据V的均值将图像分成亮图像和暗图像,根据V的方差将图像分成低对比度和高对比度;不同亮度和对比度的图像分配不同的增益和对比度参数;
3、曲线转换,根据不同的分类分配不同的增益系数c和转换函数曲线控制系数r,根据Gamma理论对V空间进行增强,最后增强后的V空间和原始的S、V空间合并得到新的BGR空间。

一、算法流程

主要分为三个步骤,流程图如图所示:
算法流程图

算法流程图

1、色彩空间转换
将BGR色彩空间转至HSV空间,并分离通道,只对V亮度空间进行处理;把V空间类型转成浮点类型,计算其均值和方差;
2、图像分类
根据计算的均值 μ \mu μ和方差 σ \sigma σ,分配不同的系数,文章中定义:
μ \mu μ<=0.5认为是暗图像,反之是亮图像
4* σ \sigma σ<=1/3认为是低对比度,反之是高对比度
3、曲线转换
Gamma的公式: I o I_o Io = c* I i I_i Ii^ γ \gamma γ
其中,参数c 是增益系数,参数 γ \gamma γ 是Gamma系数, I i I_i Ii是输入图像, I o I_o Io是输出图像;
3.1 低对比度图像
低对比度图像,低对比度图像意味着大多数像素值较低并且具有相似的像素值,应该把像素拉伸到更大的范围来增强对比度,参数c定义为:
c= 1/(1 + Heaviside(0.5 − μ \mu μ) × (k − 1))
其中,k = I i I_i Ii^ γ \gamma γ + (1 - I i I_i Ii^ γ \gamma γ) * μ \mu μ^ σ \sigma σ
Heaviside是个符号操作,定义为:
Heaviside(x) = 0, if x<=0;
反之,Heaviside(x) =1,if x>0
3.1.1 亮图像
低对比度的亮图像, μ \mu μ是大于0.5的,图像的亮度较高只需要增强细节的对比度,此时c=1,变换曲线在 I o I_o Io = I i I_i Ii的下方,图像整体亮度降低,灰度值较低的像素点对比度降低,灰度值高的对比度增加,更又利于分辨高灰度值的图像细节,转换函数变成:
I o I_o Io = I i I_i Ii^ γ \gamma γ
论文中选取 γ \gamma γ = - log ⁡ 2 \log_2 log2( σ \sigma σ),对于临界点, γ \gamma γ_min = −log2(0.0833) = 3.585。
3.1.2 暗图像
低对比度暗图像的灰度集中在小部分区域并且集中在灰度均值附近,需要将直方图拉升到较大的范围,此时c = k,变换曲线在 I o I_o Io = I i I_i Ii的上方,陡峭部分曲线的值随 σ \sigma σ移动,图像的整体亮度增加,灰度值较低的像素点对比度增强,灰度值高的对比度降低,更又利于分辨低灰度值的图像细节,转换函数为:
I o I_o Io = I i I_i Ii^ γ \gamma γ/k
3.2 高对比度
高对比度图像,亮度调整比对比度增强重要,这时的 γ \gamma γ取值范围在1附近,保证图像的对比度变换范围不大,文章里 γ \gamma γ取值:
γ \gamma γ = exp(1-( μ \mu μ + σ \sigma σ)/2)
3.2.1 暗图像
对于高对比度的暗图像,均值和方差都小于0.5,因此 γ \gamma γ>=1,转换曲线在 I o I_o Io = I i I_i Ii的上方,图像均值和方差越小,增强的曲线越陡峭;对于暗图像均值接近于0.5的,转换曲线接近于一条直线;
3.2.2亮图像
对于高对比度的亮图像,图像有较好的亮度和对比度,均值和方差都接近于0.5,转换曲线接近于直线。

二、效果展示

选取低照度的图片,运行该代码后,图像增强效果如图所示:
原始低照度图片原始低照度图片
增强后的图片增强后的图片

总结

该方法对于暗图像增强有显著的提升,但是也存在较大的问题,对于高对比度高亮度的图片,会存在过增强和丢失细节等问题。

评论 40
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值