高强
摘要:传统的暗通道先验去雾算法通过软抠图方法来优化大气透射率,得到较好的去雾结果,但该算法存在复杂度高,去雾后图像边缘信息不足够丰富、对比度不高等问题。针对上述问题提出一种改进的梯度引导算法,该算法在引导滤波器中构造一个能量函数,并在能量函数中加入一个边缘保持项,以此来进一步优化大气透射率。实验结果表明,使用改进后的算法运算速度快,增加去雾后图像的清晰度和对比度。
关键词:图像去雾;暗通道先验;梯度引导算法
中图分类号:TP391 文献标识码:A
文章编号:1009-3044(2020)26-0017-03
Abstract:The traditional defogging algorithm based on dark channel prior optimizes the atmospheric transmittance by soft matting method.The result is good.However,there are still some problems in the algorithm, such as high complexity,low contrast,low definition.An improved gradient guided algorithm is proposed in order to solve the problems,which constructs an energy function in the guided filter.There is a special item in the energy function that can further improve the atmospheric transmittance.The experimental results show that the improved algorithm can increase the definition and contrast
Key words:image dehazing algorithm; dark channel prior; gradient guided filtering
1引言
圖像是现代社会数字信息的重要载体,其结构简单、表达信息丰富、容易被理解,可由多种不同类型的监测设备、通过各种方式而获得。在户外等自然场景下拍摄的图像,难免会受到雾、霾等不确定性天气因素的影响,造成获取的图像中可见特征信息大幅减少,低对比度、低清晰度、高颜色失真度,边缘细节模糊,非常不利于图像信息的处理、应用。因此,图像去雾方法的研究有十分重要的应用价值[1-2]。
图像去雾方法主要有两种,一种是基于图像增强的方法[3,4],结合图像的时域和频域特征通过雾霾图像增强算法来提高图像的清晰度和对比度,但是这种方法并没有分析雾霾天气条件下成像降质的本质,不计算图像场景深度,容易造成去雾后图像颜色失真、低清晰度、低对比度等现象,并对浓雾霾区域去除效果不明显[5-7]。另外一种是在分析成像降质的本质的基础上,通过先验来估算出大气透射率[8,9]。He[10]等人结合暗通道先验方法计算出透射率的大致估计值,然后使用Soft Matting优化透射率,代入成像模型中,得到去雾图像。通过该算法得到的去雾图像,与基于图像增强的方法相比较,去雾结果较好,但是该算法计算量大、处理速度慢,去雾结果图像不足够清晰、边缘信息不足够丰富。为此,本文在雾霾天气条件下成像模型的基础上,使用改进的引导梯度算法代替Soft Matting方法对透射率进行精细优化,降低算法计算量,使去雾后图像清晰度高、边缘信息丰富、色彩自然。
2基于暗通道先验的改进去雾算法
2.1暗通道先验理论
物体表面接收自然光照射,从而形成反射光。反射光经过雾气和空中微小颗粒时会发生散射现象,带走一部分的反射光,但大部分的物体表面反射光反能被成像视觉所接收,同时自然光在经过雾气和空中微小颗粒后也会发生散射现象,这部分散射光也会被成像视觉接收。根据此现象可以来定义散射的数学模型如下:
在公式(1)中,I(x)为视觉所成像的有雾图像;J(x)为加去雾算法后的图像;A为大气光值;t(x)为原始图像的大气透射图,表示到达视觉镜头的光;x表示图像的坐标。去雾算法的基本原理就是在已知大气光值A和大气透射图t(x)的情况下,根据(1)公式来求解J(x)。
暗通道先验原理是指在户外的图像中,剔除掉天空的区域内,近乎每一个像素都至少会有一个通道有很低的、近乎为0的灰度值,因此可以对原始图像的暗通道定义为:
通过公式(7)可知,若想求解出[t(x)],还必须知道大气光值A。我们采取这样的办法来求取A:第一步,求解原始图像暗通道图,并对此图中的像素按照亮度大小来进行排序,记录排序位于前0.1%的像素点;第二步,对记录到的像素点,通过最大值滤波法计算出原始图像的亮度最大的像素点,将该亮度记为大气光值A。当求解出[t(x)],就可以根据公式(1)求解出去雾后的图像J(x)。
2.2 改进算法
由暗通道先验理论可知,若想求取去雾效果较好的图像J(x),被记为大气透射率的[t(x)]尤为关键。通过暗通道先验理论计算出的[t(x)],在还原去雾后的图像中,较为容易出现图像明亮位置颜色偏移和光晕问题,造成还原去雾后图像视觉模糊,无法保留很多的边缘信息细节。针对暗通道先验方法出现的问题,本文对其进行改进,使用改进梯度引导算法对大气透射率[t(x)]进行精细计算,解决还原去雾后图像无法保留很多边缘细节的问题。
假设原始图像的参考图像为C(x),经过导向滤波器后的图像为F(x),F(x)与C(x)有如下的线性关系:
在公式(13)中,[aq]、[bq]分是X正方形区域内的aq、bq的平均值。通过求取平均值的方法,使得原始图像I的梯度参数与经过导向滤波器后的图像F在梯度值上较为接近,因此在去雾后会更多地保留很多的边缘信息细节。
3实验结果和分析
本实验通过使用Matlab 2016a在Window10系统环境下来验证改进算法的有效性。实验结果如图1所示。从图1中(f)和(g)的图像相比较,改进算法去雾结果图像清晰,在细节上可观察出更多的景物边缘信息,且边缘信息在景深大致一样的区域内会显得较为平滑;去雾后图像,会显得清新自然,色彩柔和,不会出现暗通道先验去雾结果图像的颜色过饱和与去雾效果不足的现象。
本文引入代码在Matlab平台的运行时间和PSNR峰值信噪比,这两个客观指标来评价两种不同算法在去雾结果的优劣。运行时间越短,说明算法的实时性更高,有利于算法的实际应用。PSNR峰值信噪比越大,说明去雾后的图像与原始无雾图像更加接近。针对图1中(d)和(f)去雾结果图像,这两个客观指标的结果如表1所示。
从两种不同算法的去雾结果综合来看,改进去雾算法去雾效果优于暗通道先验去雾效果,去雾后成像结果更加接近原始图像,结构清晰,对比度高,边缘细节信息保留多,图像色彩清新自然真实,有更好的去雾效果,且实时性好。
3小结
基于暗通道先验理论的去雾算法,在還原去雾后的图像结果时,透射率精度不高,容易造成图像结果视觉模糊,无法保留很多的边缘信息细节,去雾结果不理想。本文针对暗通道先验去雾算法出现的问题,使用改进后的梯度引导算法对大气光值进行精细计算,并在MATLAB平台中进行仿真实验,对实验结果进行分析,本文提出的改进算法有较好的去雾效果,结果图像结构清晰,色彩自然,消除块效应,保留了较多的边缘细节,解决还原去雾后图像无法保留很多边缘细节的问题。同时,改进算法还提高了运行速度。
参考文献:
[1] 杨燕,王志伟.基于均值不等关系优化的自适应图像去雾算法[J].电子与信息学报,2020,42(3):755-763.
[2] 孙士伟,刘金虎,马文君,等.基于线性模型的自适应优化去雾算法[J].应用光学,2020,41(1):114-119.
[3] 齐永锋,李占华.一种基于多尺度卷积神经网络和分类统计的图像去雾霾方法[J].红外技术,2020,42(2):190-197.
[4] 徐岩,孙美双.基于多特征融合的卷积神经网络图像去雾算法[J].激光与光电子学进展,2018,55(3):031012.
[5] He L Y,Zhao J Z,Zheng N N,et al.Haze removal using the difference- structure-preservation prior[J].IEEE Transactions on Image Processing,2017,26(3):1063-1075.
[6] Zhu S,Cao D H,Wu Y B,et al.Edge-aware dynamic programming-based cost aggregation for robust stereo matching[J].Journal of Electronic Imaging,2015,24(4):043016.
[7] 杨燕,李一菲,岳辉.一种自适应线性透射率估计去雾算法[J].应用光学,2019,40(3):447-453.
[9] 王雪梅,鞠铭烨.基于暗通道先验的快速图像去雾[J].科学技术与工程,2016,16(20):66-72.
[10] He K M,Sun J,Tang X O.Single image haze removal using dark channel prior[J].IEEE Transactions on Pattern Analysis and Machine Intelligence,2011,33(12):2341-2353.
【通联编辑:唐一东】