【阅读笔记】图像增强-《Efficientcontrast enhancement using adaptive gamma correction with weighting
2013年发表在TIP上的对比度增强算法AGCWD(Efficientcontrast enhancement using adaptive gamma correction with weighting distribution)
提出了一种自动映射技术,通过亮度像素的伽马校正和概率分布来提高调暗图像的亮度。为了增强视频,所提出的图像增强方法使用关于每帧之间差异的时间信息来减少计算复杂性。该算法本质上是一种自适应的gamma校正算法,其中,“自适应”是利用图像直方图信息来实现的,本文提出了一种混合HM方法,将cdf、加权分布和伽玛校正相结合的算法
算法步骤:#
假设X表示我们的输入图像,其亮度的变化范围和,那么这个算法一共分为5步来执行:
1、Image Statistics Computation#
图像 <script type="math/tex;mode=inline" id="MathJax-Element-3">X(i,j)</script>X(i,j) ,亮度灰阶 <script type="math/tex;mode=inline" id="MathJax-Element-6">I</script>I 的动态范围是 <script type="math/tex;mode=inline" id="MathJax-Element-7">l_{min}</script>l_{min} 和 <script type="math/tex;mode=inline" id="MathJax-Element-11">l_{max}</script>l_{max} ,其中 <script type="math/tex;mode=inline" id="MathJax-Element-4">l_{min}</script>l_{min} 是最小的灰度阶,例如8bit数据, <script type="math/tex;mode=inline" id="MathJax-Element-1">l_{min}</script>l_{min} 最小为0,最大为255。统计图像的灰阶像素分布概率probability density function (PDF)。
<script type="math/tex;mode=inline" id="MathJax-Element-5"> PDF(l) =\frac{n_{l}}{MN} </script> PDF(l) =\frac{n_{l}}{MN}
其中, <script type="math/tex;mode=inline" id="MathJax-Element-2">MN</script>MN 是像素总个数, <script type="math/tex;mode=inline" id="MathJax-Element-9">n_{l}</script>n_{l} 是灰阶n对应的像素数。
2、Weighting Probability Density Function#
利用cd f并应用归一化伽玛函数来修改变换曲线,而不会丢失可用的统计直方图,对前一步算出来的概率密度函数进行修改,加权分布(WD)函数也用于略微修改统计直方图,得到加权概率密度函数。
<script type="math/tex;mode=inline" id="MathJax-Element-10"> PDF_{w}(l) =max(PDF)*(\frac{PDF(l)-min(PDF)}{max(PDF)-min(PDF)})^{\alpha} </script> PDF_{w}(l) =max(PDF)*(\frac{PDF(l)-min(PDF)}{max(PDF)-min(PDF)})^{\alpha}
较低的伽玛参数产生更显著的调整,alpha可取[0.1,0.5]值,根据经验可以取0.5,让函数曲线更加平滑
3、Smoothed Cumulative Distribution Function#
用 <script type="math/tex;mode=inline" id="MathJax-Element-8">PDF_{w}(l)</script>PDF_{w}(l) 计算cumulative distribution function (CDF) ,做归一化处理,利用第二步算出来的加权概率密度函数,求出平滑的累积分布函数
<script type="math/tex;mode=inline"> CDF_{s}(l) =\sum_{l=l_{min}}^{l_{max}}\frac{PDF_{w}(l)}{\sum{PDF_{w}}} </script> CDF_{s}(l) =\sum_{l=l_{min}}^{l_{max}}\frac{PDF_{w}(l)}{\sum{PDF_{w}}}
4、Adaptive Gamma Correction#
T(l)transform function,利用第三步的图像累积分布函数信息CDF,进行自适应的gamma校正。
<script type="math/tex;mode=inline"> T(l) = (l_{max}-l_{min})*(\frac{l}{l_{max}-l_{min}})^{\gamma} </script> T(l) = (l_{max}-l_{min})*(\frac{l}{l_{max}-l_{min}})^{\gamma}
<script type="math/tex;mode=inline"> \gamma=1-CDF_{s}(l)*P </script> \gamma=1-CDF_{s}(l)*P
其中,P表示自适应参数,设置为1,取值范围[0.5,1]
5、Final Luminance Transformation#
在映射函数T(l)映射函数中,最后一步就是对图像每个像素点的亮度值进行映射,就得到了对比度增强后的图像
<script type="math/tex;mode=inline"> Y= {T (X(i, j))|∀X(i, j) ∈ X} </script> Y= {T (X(i, j))|∀X(i, j) ∈ X}
该算法支持图像、视频数据流处理,图像数据流处理pipeline如下图:
视频数据流处理pipeline如下图:
仿真结果#
仿真代码matlab Demo可以参考 ,自己跑跑看结果
代码链接:
https://github.com/AomanHao/ISP_Low_Light_Image_Enhancement
我的个人博客主页,欢迎访问#
我的CSDN主页,欢迎访问#
我的GitHub主页,欢迎访问#
我的知乎主页,欢迎访问#
作者:AoamnHao
出处:https://www.cnblogs.com/AomanHao/p/18016772
版权:本作品采用「署名-非商业性使用-相同方式共享 4.0 国际」许可协议进行许可。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 零经验选手,Compose 一天开发一款小游戏!
· 因为Apifox不支持离线,我果断选择了Apipost!
· 通过 API 将Deepseek响应流式内容输出到前端