基于单幅图像的快速去雾算法实现

Posted Ven_J

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了基于单幅图像的快速去雾算法实现相关的知识,希望对你有一定的参考价值。

  基于图像复原的去雾方法中,最有代表性的是暗通道去雾算法,但是暗通道去雾算法的处理时间比较长,不能达到实时处理。在阅读了大量文献及其参考文献,找到能够实时处理的去雾算法,是清华大学写的文章:基于单幅图像的快速去雾算法,作者:刘倩,陈茂华,周东华。
  废话不多说,直接上算法

  首先对算法进行一个简单的说明,根据博文去雾技术综述可知,去雾的主要步骤就是估计全局大气光 A 和透射率t(x)
文章中,使用了 L(x) 来代替 A(1t(x))

L(x)=A(1t(x))(1) 因此,本文就是根据输入图像估计 A L(x),然后根据雾天退化模型求取出去雾后的图像。
估计透射率 t(x)
根据博文 去雾技术综述可知, t(x)1H(x)A(2) H(x) 三通道中的最小值,并记为 M(x)=mincr,g,b(Hc(x))(3) 因此公式(2)可以变换为 t(x)1M(x)A(4) 对公式(4)右边进行均值滤波 averagesa(1M(x)A)=1averagesa(M(x))A=1yΩ(x)M(y)Asa2(5) 其中, sa 表示均值滤波窗口大小, Ω(x) 表示像素x的 sa×sa 的邻域。均值滤波后的结果能反应 t(x) 的大致趋势,但与真实的 t(x) 还相差一定的绝对值,于是,得出透射率的粗略估计值 t (x)=1Mave(x)A+ψMave(x)A=1δMave(x)A(6) 其中 Mave(以上是关于基于单幅图像的快速去雾算法实现的主要内容,如果未能解决你的问题,请参考以下文章

基于Python单幅图像融合去雾系统

基于暗通道优先算法的去雾应用(Matlab/C++)

实例应用:基于opencv的单张图像去雾算法

基于Retinex的图像去雾算法(MATLAB实现)

图像去雾技术综述

图像去雾技术综述