2013年发表在TIP上的对比度增强算法AGCWD(Efficient contrast enhancement using adaptive gamma correction with weighting distribution)

提出了一种自动映射技术,通过亮度像素的伽马校正和概率分布来提高调暗图像的亮度。为了增强视频,所提出的图像增强方法使用关于每帧之间差异的时间信息来减少计算复杂性。该算法本质上是一种自适应的gamma校正算法,其中,“自适应”是利用图像直方图信息来实现的,本文提出了一种混合HM方法,将cdf、加权分布和伽玛校正相结合的算法

算法步骤:

假设X表示我们的输入图像,其亮度$l$的变化范围$l_{min}$和$l_{max}$,那么这个算法一共分为5步来执行:

1、Image Statistics Computation

图像$X(i,j)$,亮度灰阶$I$的动态范围是$l_{min}$和$l_{max}$,其中 $l_{min}$是最小的灰度阶,例如8bit数据,Imin最小为0,最大为255。统计图像的灰阶像素分布概率probability density function (PDF)。

$$

PDF(l) =\frac{n_{l}}{MN}

$$

其中,$MN$是像素总个数,$n_{l}$是灰阶n对应的像素数。

2、Weighting Probability Density Function

利用cd f并应用归一化伽玛函数来修改变换曲线,而不会丢失可用的统计直方图,对前一步算出来的概率密度函数进行修改,加权分布(WD)函数也用于略微修改统计直方图,得到加权概率密度函数。

$$

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

用$PDF_{w}(l)$计算cumulative distribution function (CDF) ,做归一化处理,利用第二步算出来的加权概率密度函数,求出平滑的累积分布函数

$$

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校正。

$$

T(l) = (l_{max}-l_{min})*(\frac{l}{l_{max}-l_{min}})^{\gamma}

$$

$$

\gamma=1-CDF_{s}(l)*P

$$

其中,P表示自适应参数,设置为1,取值范围[0.5,1]

5、Final Luminance Transformation

在映射函数T(l)映射函数中,最后一步就是对图像每个像素点的亮度值进行映射,就得到了对比度增强后的图像

$$

Y= {T (X(i, j))|∀X(i, j) ∈ X}

$$


该算法支持图像、视频数据流处理,图像数据流处理pipeline如下图:

视频数据流处理pipeline如下图:

仿真结果

仿真代码matlab Demo可以参考 ,自己跑跑看结果

代码链接:

https://github.com/AomanHao/ISP_Low_Light_Image_Enhancement


我的个人博客主页,欢迎访问

我的CSDN主页,欢迎访问

我的GitHub主页,欢迎访问

我的知乎主页,欢迎访问

【阅读笔记】对比度增强-《Efficientcontrast enhancement using adaptive gamma correction with weighting distribution 》 date: 2023-12-08 10:08:00的更多相关文章

  1. [论文阅读笔记] Fast Network Embedding Enhancement via High Order Proximity Approximati

    [论文阅读笔记] Fast Network Embedding Enhancement via High Order Proximity Approximation 本文结构 解决问题 主要贡献 主要 ...

  2. 阅读笔记 1 火球 UML大战需求分析

    伴随着七天国庆的结束,紧张的学习生活也开始了,首先声明,阅读笔记随着我不断地阅读进度会慢慢更新,而不是一次性的写完,所以会重复的编辑.对于我选的这本   <火球 UML大战需求分析>,首先 ...

  3. opencv----彩色图像对比度增强

    图像对比度增强的方法可以分成两类:一类是直接对比度增强方法;另一类是间接对比度增强方法. 直方图拉伸和直方图均衡化是两种最常见的间接对比度增强方法. 直方图拉伸是通过对比度拉伸对直方图进行调整,从而“ ...

  4. JavaScript高级程序设计 - 阅读笔记

    [本博客为原创:http://www.cnblogs.com/HeavenBin/] 前言: 大致花费了一个星期的时间把这本书认真看了半本,下面是我做的阅读笔记,希望能够让看这本书的人有个大致的参考. ...

  5. StackGAN 阅读笔记

    StackGAN 阅读笔记 StackGAN论文下载链接(arxiv) 创新点 提出多尺度的GAN Stage-I GAN Stage-II GAN Stage-I GAN 主要是根据文本描述抓取目标 ...

  6. 论文阅读笔记“Attention-based Audio-Visual Fusion for Rubust Automatic Speech recognition”

    关于论文的阅读笔记 论文的题目是“Attention-based Audio-Visual Fusion for Rubust Automatic Speech recognition”,翻译成中文为 ...

  7. 《Graph Neural Networks: A Review of Methods and Applications》阅读笔记

    本文是对文献 <Graph Neural Networks: A Review of Methods and Applications> 的内容总结,详细内容请参照原文. 引言 大量的学习 ...

  8. Minimum Barrier Salient Object Detection at 80 FPS 论文阅读笔记

    v\:* {behavior:url(#default#VML);} o\:* {behavior:url(#default#VML);} w\:* {behavior:url(#default#VM ...

  9. Gated CNN 阅读笔记

    之前看过TCN,稍微了解了一下语言模型,这篇论文也是对语言模型建模,但是由于对语言模型了解不深,一些常用数据处理方法,训练损失的计算包括残差都没有系统的看过,只是参考网上代码对论文做了粗浅的复现.开学 ...

  10. HashMap源码阅读笔记

    HashMap源码阅读笔记 本文在此博客的内容上进行了部分修改,旨在加深笔者对HashMap的理解,暂不讨论红黑树相关逻辑 概述   HashMap作为经常使用到的类,大多时候都是只知道大概原理,比如 ...

随机推荐

  1. vue-cli3开启gzip压缩

    首先添加yarn add 插件 "compression-webpack-plugin" 然后在vue.config.js里引入 在configureWebpack里增加插件代码. ...

  2. 2023全国大学生电子设计竞赛H题全解 [原创www.cnblogs.com/helesheng]

    2023年又是全国大学生电子设计竞赛年,一如既往的指导学生死磕H题.8月2日看到公布的赛题,我自己还沾沾自喜,觉得今年学生用嵌入式系统和数字信号处理知识就可以完成这题,赛前都辅导过,应该成绩不差.哪想 ...

  3. C#设计模式15——观察者模式的写法

    是什么: 观察者模式是一种设计模式,它定义了对象之间的一种一对多的依赖关系,使得当一个对象状态发生改变时,它的所有依赖者都能够得到相应的通知并作出相应的反应.观察者模式也被称为发布-订阅模式. 为什么 ...

  4. C#使用正则表达式检查字符串中重复出现的词

    private void button1_Click(object sender, EventArgs e) { MatchCollection matches =//使用正则表达式查找重复出现单词的 ...

  5. windows无法远程访问liunx的mysql解决方案(8.0.27版本)

    一.安装后mysql后发现windows上的无法正常访问,报错如下: 不管是navicat软件,还是使用python的pymsql进行连接 1.navicat软件如下:"Access den ...

  6. 玩转 Helm 之 upgrade

    0. 前言 在 玩转 Helm 一文中,简略提到了 Helm upgrade 的策略. 在实际项目开发上,upgrade 多是调研的重点.基于此,这里对 upgrade 继续展开. 1. basic ...

  7. OpenShift image registry 访问镜像

    1. OpenShift 内部 image registry Openshift 自带内部 image registry,可通过 podman 实现 image 的 pull 和 push 操作. 对 ...

  8. 凸优化 | Lagrange 对偶:极大极小不等式的证明

    背景: Lagrange 对偶:对于优化问题 \[\begin{aligned} &\mathrm{minimize} ~~ &f_0(x) \\ &\mathrm{subje ...

  9. spring--CGLIB动态代理的实现原理

    CGLIB(Code Generation Library)是一个强大的.高性能.高质量的代码生成库,它可以在运行时扩展 Java 类和实现 Java 接口.CGLIB 动态代理是基于继承的方式来实现 ...

  10. 基于taro搭建小程序多项目框架

    前言 为什么需要这样一个框架,以及这个框架带来的好处是什么? 从字面意思上理解:该框架可以用来同时管理多个小程序,并且可以抽离公用组件或业务逻辑供各个小程序使用.当你工作中面临这种同时维护多个小程序的 ...