关于去雾算

去雾化算法总结

下内容参考

一个大婶的博客:https://www.cnblogs.com/Imageshop/p/3515871.html

从最开始的Crimm Imageshop中最简单的去雾功能开始,到前不久为止研究的诸多去雾算法,再到近日和一些朋友的关于去雾经验的交流,感觉自己对这个方面的研究已经止步了,现对这些算法做个简单的总结。

     本博客中共给出了6种有去雾功能的算法:

  (1)基于何凯明博士提出的暗通道去雾算法;

        (2)基于中值滤波(也可使用高斯\均值\双边之类的)的去雾;

        (3)基于均值滤波的实时去雾算法;

  (4)基于多尺度Retinex图像增强技术;

  (5)基于自适应直方图均衡化算法;

  (6)基于自适应对比度及色阶增强的图像算法;

  其中前三种算法属于基于去雾物理模型的,后三种属于普通图像增强手段。

     我们先说说后三种吧。基于Retinex的算法对于整体偏暗的图像有很好的增强作用,用于去雾方面只可用于静态的图像,原因有:(1) MSRCR是基于多次高斯模糊的,里面有很多的浮点计算,速度是个瓶颈;(2)对于有雾图,有可能会出现过增强现象,使的图像出现噪点;(3)对于本身比较正常的图,处理后的效果人的视觉看来很不自然。

     第5和第6种算法i是传统的增强算法,对于图像整体特征比较单一的图去雾的效果还是相当明显的,但是这两个算法受参数的影响比较大,特别是取样数或者说是Tile的大小,不同的Tile会造成局部图像的过增强(偏白或偏黑),并且算法的复杂度也比较高,内部的分块处理也不适合于并行处理,严重限制了其在实时去雾方面的应用。

      第2种基于中值滤波的方式在一些论文里也时有提到,实际我用高斯或者均值之类的模糊代替高斯,也有一定的去雾能力,如果是用中值,可能还会出现图像周边有明显的分界效果,如下图所示,注意看建筑物顶部的几个角的位置:

      

     还有个问题就是虽然有快速的中值算法,但是考虑到现在的工业应用场合常见的处理大小,实时性还是难以保证,因此,我认为这个算法也只有停留在纸面上,创造不了使用价值。 

     第3篇算法提出的实时算法,其核心就是一个boxblur,约占整个过程耗时一半左右,但确实能做到实时的能力。对于单幅图像的去雾效果也是相当的不错的,但是用于连续的视频流去雾似乎能发现各帧之间的过渡不是特别的自然。

     在来说说何凯明的去雾算法吧,我现在看来,还是这个算法最稳定、最可靠。一是这个算法的原理性经得起推敲,二是其效果综合来说要比其他的算法都为好,特别是用于连续的视频流。我认为这主要还是得益于其透射率图要比其他的都为精细。你如果看看中值或者那个实时的,就可以知道他们对应的透射率图都很粗糙。 不过何的算法有一个致命的弱点,速度很慢,因为无论是用soft matting或者guide filter都有着大量的浮点运算,这严重的限制了其用于工业CCD的实时处理。

     鉴于此,作者也试着对代码进行深层次的优化,包括SSE处理、并行运行等,但由于算法本身的顺序执行,无法全程并行,偶尔一个小函数可以并行,但由于其本身执行就特别快,比如不要5ms,你去用并行算法可能耗时还会大一些。因此,一直没有什么大的进步,对于一副1024*768的彩图进行去雾需要90ms,这肯定无法满足需求。

     最近,在思考,既然暗通道去雾的透射率图比其他的算法都来的精细,如果适当的降低一点点其精度,其去雾的效果理论上应该不会有太大的区别,于是我想到了一种方式,即求取透射率的时候不是对原图进行求取,而是先对原图进行下采样,比如缩小为原图的1/4,计算出小图的透射率,之后在通过插值的方式的获取原图大概的透射率,则应该也可以获得效果。经过实践,这种方式大大的提高了执行速度,而且效果和原始的方案基本一致,对于1024*768的图像大约只需要30ms了,如果进一步取1/9的缩放,则只需要大约20ms,完全可以满足工业实时性要求高的场合。

    当然,如果你的缩小系数不是特别大的话,比如缩小为原来的0.5大小,可能两次缩放所用的耗时还抵消了计算小图的透射率图所换来的盈利,因此必须合理选择这个下采样率。

    去雾还有一些其他人做的论文,比较经典比如有fattal论文:Single Image Dehazing

                 Jean-Philippe Tarel: Fast Visibility Restoration from a Single Color or Gray Level Image

  最新的比如2013年的 Gaofeng MENG: Efficient Image Dehazing with Boundary Constraint and Contextual Regularization (国产的)

    有兴趣的朋友可以自己去研究研究。 

    我做了一个程序,集成了上述6种图像去雾的算法: 图像去雾综合版本

 

去雾化资源

以下内容参考

https://blog.csdn.net/zonglingkui1591/article/details/79776433

去雾化算法

  1.     S.G. Narasimhan and S.K. Nayar, 多幅图像(同一场景不同时间、天气)去雾
  2.     NASA, Retinex理论增强
  3.     Ana Belén Petro总结了NASA的Retinex理论,源代码
  4.     Kopf,Deep Photo: Model-Based Photograph Enhancement and Viewing,3D场景去雾
  5.     Fattal, single image dehazing, 主页, matlab代码
  6.     Fattal 2014,Automatic Recovery of the Atmospheric Light in Hazy Images,大气光恢复去雾
  7.     Fattal 2014,Dehazing using Color-Lines,
  8.     Matlab script converting jet-color images into [0,1] transmission values
  9.     Tarel,Fast visibility restoration from a single color or gray level image,matlab , 实验主页*
  10.     He kaiming, single image dehazing using dark channel prior,实验主页 其guided image dehazing,主页还有matlab代码.失效了
  11.     Nishino,bayesian defogging,贝叶斯去雾
  12.     Ancuti,inverse-image dehazing, fusion-based dehazing,水下融合去雾, 半反去雾主页*
  13.     Ketan Tang, 基于学习的去雾Investigating haze-relevant features in a learning framework for image dehazing
  14.     Gibson,维纳滤波去雾,fast single image fog removal using the adaptive wiener filter
  15.     Meng gaofeng,改进的暗原色去雾efficinet image dehazing with boundary constraint contextual regularization
  16.     Yoav Y.Schechner,一直研究偏振去雾算法,典型的代表作,blind haze separation, advanced visiblity improvement based on polarization filtered images
  17.     yk wang,Single Image Defogging by Multiscale Depth Fusion,也是基于贝叶斯和马尔可夫来去雾,暂时没公布matlab代码
  18.     Jin-Hwan Kim, optimized contrast enhancement for real-time image and video dehazing,

关于去雾算法质量评价对比

  1. Zhengying Chen,Quality Assessment for Comparing Image Enhancement Algorithms(CVPR2014),基于学习的去雾算法排序方法,据说有数据库,但得填表找他们要,无法访问了
  2. Gibson,A No-Reference Perceptual Based Contrast Enhancement Metric for Ocean Scenes in Fog(TIP,2013),一种CEM评价方法,不过也是基于学习的,数据库和代码都有。主页
  3. Hautiere,Blind contrast enhancement assessment by gradient ratioing at visible edges,三种忙评价方法
  4. 图像去雾和视频去雾的综述,感觉整理的还蛮全的,Review of Video and Image Defogging Algorithms and Related Studies on Image Restoration and Enhancement。另外整理了部分代码。

深度学习去雾化

下面是我自己找的资源

  1. Real-time Video Dehazing based on Spatio-temporal MRF
  2. OptimizedImageEnhance
  3. DehazeNet
  4. DehazeNet
  5. DCPDN

 

  • 1
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
Crimm Imageshop数码图片处理系统是一款无需安装,完全绿色的单EXE图像处理软件,大小仅900多KB,启动迅速,功能丰富实用,执行速度很快。软件的界面简朴、清新,高度模仿PS CS5,各功能一目了然,菜单和快捷键按照PS做相同的设置,科学合理。 Crimm Imageshop数码图片处理系统功能上融合了常用图像处理技术的多个方面,能满足普通和专业用户在日常生活中调整图像的基本需求,对于熟悉PS的用户在使用上更是得心应手。 Crimm Imageshop数码图片处理系统软件设有很多国内图像软件都没有专业的选区功能,对所作选区可以进行羽化、平滑、收缩等操作,满足高端用户的需求。为方便用户日常的工作,将常用的图像调节功能设计为一个主菜单,并通过极度的优化提高了各功能的实时调节性能,满足数码级相片处理的需求。   滤镜方面,配置多达近100多个法,既有传统的PS的部分类似特效,也有一些独创的艺术性滤镜,通过不同的组合,可以创造出令人意想不到的效果。大部分滤镜的执行速度都已优化。   软件配置了专业的图像导航器、直方图、信息栏、颜色栏等面板,方便用户修改和查看图像。   在图像格式支持上,能支持多达25种图像的解析,其中不乏很多很专业格式的图像。自行完美解析BMP格式,支持一些GDI和GDI 都无法打开的BMP文件。在保存为16位图像时,增加了PS未提供的抖动选项,让用户在真彩色和高彩色之间的转换信息损失降低到最少。能完美支持各种格式的PCX\TGA\PNM等格式的转换。   软件中各滤镜的执行速度经作者极度优化,和同类软件相比,往往有过之而无不及,让使用者在调节参数时能实时看到效果。   软件还多特殊的功能,如查看数码图像EXIF信息,统计图像使用的不同颜色数,这些功能无论是对于图像爱好者还是图像编程者都有一定的助。   1)熟悉PS但不需要PS的复杂功能,仅用Photoshop做些图像的简单修饰处理。   2)数码摄影图像的后期修饰使用者。   3)日常生活中的图像处理和格式转换等使用者。   4)数字图像处理理论研究者。   5)经常在不同电脑处理图像者。   当然,软件还有不少不完美的地方,我会不断的改进的,希望大家喜欢这款软件。 Crimm Imageshop数码图片处理系统 v2.2更新: 2.2版本修正了2.1版本存在的一些BUG,对常用的调节菜单中各功能的速度及调节时的实时性做了很大的改进,增加了曝光度、水平垂直边缘检测、彩色半掉等功能。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

颐水风华

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值