基于一种图像去雾改进算法的客观评价与识别
2018-01-29宋东辉刘纹岩陈虹丽
宋东辉, 刘纹岩, 陈虹丽
(1.浙江大学 控制科学与工程学院,杭州 310007; 2.上海卫星工程研究所,上海 200240;3.哈尔滨工程大学 自动化学院,哈尔滨 150001)
0 引 言
图像去雾技术是图像处理与计算机视觉领域研究的重要课题之一。雾霾天气下,严重影响图像的特征提取,以及以此为基础的目标检测和目标跟踪,这很大程度上降低了图像的利用价值,因此,对雾霾图像的处理就是极为重要的了。
文献[1-5]中需要利用同一场景满足不同条件下的多幅图像获得有效信息;但是,在现实条件下,通常无法同时满足这样的条件。文献[6]中假设雾霾图像的局部区域的大气光恒定不变,并且对比度明显地增加,在马尔科夫随机场(Markov Random Field,MRF)模型的框架下,构造了关于图像边缘强度的代价函数,使用图分割理论估计最理想的大气光值,但由此导致的图像颜色过度饱和失真无法避免,同时伴有光晕。文献[7]中需要大量的物理色彩信息,然而,在浓雾条件下的图像已经丢失了大量的色彩信息,此时估计雾霾图像的透射率值,偏差一般很大。文献[8]中实际上是一种大规模的稀疏线性方程组的推导过程,具有很高的时间和空间复杂度[9],同时,仅利用最小滤波获得透射率,会导致去雾图像出现光晕效应和黑斑效应。He等[10]提出暗原色先验(Dark channel prior)原理,但是该算法空间复杂度和时间复杂度高;文献[11]中用双边滤波代替图像抠图,稍许降低了算法的时间复杂度,但是透射率图的精度降低,实用价值不高。Gibson等[12]提出用中值滤波获得透射率图的算法,在一定程度上损坏了去雾图像的细节;进而,张小刚等[13]提出了双区域的算法优化了中值滤波获得透射率图像,但是该算法对图像细节的保持作用有限,图像细节精细度降低。文献[14]中提出用开运算优化透射率图像,但其中的腐蚀运算对图像细节损害严重。刘海波等[15]提出结合形态学和Retinex获取透射率图的混合算法,然后用双边滤波优化,该算法复杂度高,且可行性受到多个因素的限制,存在多次高斯滤波导致的图像高频细节损失,细节精度低,去雾图像易包含噪声,且对包含天空区域和白色物体的图像去雾效果不理想[16]。
虽然,He的算法是公认最好的图像去雾算法,但是由于暗原色原理自身的局限,导致了一系列问题,如不适用于天空区域。综上,本文基于图分割提出了改进暗原色先验的去雾算法。
1 本文算法
本文提出的去雾算法主要分为3个步骤:①估计大气光值;②粗估计透射率图,改进天空区域的透射率;③优化透射率图像,得到最终去雾图像。
1.1 估计天空亮度
本文提出分割理论应用于图像去雾,主要有2个原因:①从图1可以看出,对于含有高亮度的雾霾图像,He总存在一定概率误估计大气光值,而基于分割得到候选天空区域估计大气光值则不存在该问题;②基于候选天空区域,可以更精确的改进图像天空区域的透射率。
图1 He算法估计的天空亮度分布图
本文改进算法从实效性考虑,把已知图像I(x)从RGB空间转换到LAB空间;然后采用k均值分割算法获得候选天空区域,实验结果见图2,记为It(x)。
(a)原图 (b)候选天空图
图2 不同雾霾浓度的分割效果
从图2(b)可以看出,候选的天空区域并不精细,为了进一步减小误估计的概率,本文提出了新的算法估计天空亮度。这里设计一个简单的识别,先统计天空区域像素值在150以上的数目,若少于总像素数的0.05,则认为不含有天空区域,本文采用He的算法估计天空亮度;否则,对候选的天空区域进行最小值滤波,即灰度腐蚀操作:
其中,It(x)为It(x)的R、G、B三原色通道,Ω(x)是以像素点x为中心的方形区域。
为增加天空亮度估计的准确性,降低误分割的非天空区域的影响,增强本文算法的容错性,本文定义天空亮度为候选的天空区域的均值,其公式如下:
A=mean(Itmin(x))
1.2 粗估计透射率
本文采取顺序统计滤波,修正了张定义的暗区域。在暗区域采取顺序统计滤波,可以消弱Halo效应,增强图像的对比度;在非暗区域,考虑到最小值滤波对图像细节保持度高,可以更好地保留图像的边缘,抑制块效应,采用最小值滤波。该算法函数定义如下:
上式表示当像素点位于暗区域时,对该像素点采用最小值滤波;否则,采用顺序统计滤波,结果取邻域三原色通道的最小值的中值和最小值之间的值;其中w∈[0.8,1),可以得到较满意的结果,本文取为0.8。
至此,本文提出对天空区域的透射率的初步优化如下:基于前文获得的候选的天空区域,把天空区域的像素值高于天空亮度的估计值的点对映到暗通道的相应点,然后把天空亮度值赋给该点。这样既可以保证此像素点为天空区域,还可以加大容错率,减小误分割的天空区域造成的不良影响。从图3的直方图可以看出,本文改进的透射率图更加满足He的暗原色原理。
(a)原图 (b)He暗通道直方图(c)本文暗通道直方图
图3 清晰图像的暗通道图像及其直方图
1.3 利用导向滤波优化透射率图
本文得到的透射率图像细节依然比较粗糙,故需要对粗糙的透射率进行优化处理。由于透射率仅是关于景深d(x)的函数,对透射率的粗估计进行区域平滑操作,保持图像景深突变处的边缘细节,这可以看作一个滤波问题。软抠图具有很高的时间和空间复杂度,双边滤波优化效果也不理想[17]。综合考虑,本文采用导向滤波,导向滤波可以根据引导图像的特性有选择的对图像优化,因此可以有效保持图像边缘。实验结果见图4。
(a)优化前的透射率(b)优化后的透射率
图4 导向滤波的优化效果
1.4 实验比较与分析
以本校校园景色的雾霾图像为主,结合部分经典图像,对不同场景的雾图进行实验比较,见图6。
从图6可以看出,He的算法和本文算法,都获得了不错的去雾效果[18-19];He的结果对天空区域处理不理想,且对远景的细节保持度有限;总体而言,本文算法在对各种类型的雾霾图像处理中都获得了很好的效果。
2 去雾图像的客观评价
本文使用3ds Max 2013,构建了具有代表性的60幅雾霾图像和60幅清晰图像的训练库,其可细分为4个部分:清晰图像,去雾图像,雾霾图像,特效渲染的雾霾图像。
2.1 基于特效渲染雾霾图像的去雾特征分析和评价
本文基于3ds Max 2013对清晰图像进行云雾大气环境的特效渲染,以备后续的客观评价体系的测试之用。
该软件提供的场景特效能够创建云雾、山雾等大气环境,在雾霾的作用下,景物消失在雾霾里,如同原场景处于雾霾天气里,景物覆了一层均匀的雾霾。本文通过设置可见度、雾霾浓度等参数,创建了不同雾霾浓度的图像。图7显示,特效渲染构建的雾霾图像和真实的雾霾图像极为相似。
(a)原图 (b)中浓度雾 (c)较高浓度雾 (d)高浓度雾
图7 构建的雾霾图像
接着,文中运用特效渲染构建的图像训练库对客观评价体系[20-21]进行了验证,结果显示:均值、标准差、对比度、熵、基于形态学的可见边缘强度和暗通道强度可以反映图像的雾霾浓度。
运用训练库对上述的6个图像特征进行了依次的验证,结果证明了这些特征参数对雾霾图像和清晰图像分辨作用的可行性。对图6的实验结果显示:He的算法在所有参数中都偏低;本文结果稳定,所有参数都良好,且通过增加图像的均值,提高了图像的整体亮度,是相对最为普适性的去雾算法。
为进一步对去雾算法进行客观评价,对特效渲染的雾霾图像进行去雾;另一方面还可以把去雾图像和清晰的原图进行主观和客观的比较,结论更具有说服力,见图8。
(a)雾霾图 (b)原图 (c)He的结果 (d)文中结果
图8 去雾图像
表1为图8的测试数据,理论上,数值越大,图像越清晰。从数据中可以得到,He的结果均值偏小,表明图像较为灰暗,对比度较低,部分参数与原图相差较大;总体而言,本文算法的特征参数和原图的最为接近,并且对比度更高,图像的细节更加精致。
表1 去雾图像的特征表
另外,图像的雾霾浓度越低,其灰度分布与原图像越相似,这可以证明去雾效果好的图像的灰度分布应与原图直方图保持一致[21]。以图8中的图像R分量为例进行比较,见图9;可以看出,本文的算法得到更好的结果。
(a)第1行图像(b)第2行图像
图9R分量的直方图
2.2 基于SOFM神经网络的图像识别
本小节基于图像的纹理特征,建立去雾图像的识别系统,将为以后的去雾图像质量评价体系奠定坚实的基础。
本文设定SOFM神经网络的学习效率呈线性递减至0,邻域数也是呈线性递减,在训练的后四分之一的周期内,邻域数恒为1。这样,一方面可以保证神经元在初始阶段的有较大的活动范围,避免局部最优,并使全体都趋向于输入尺量出现的区域;一方面也可以让学习效率在一个较长的时间内衰减,使神经元可以足够的展开。
SOFM网络的学习过程大体如下:①网络权值初始化。设定神经元数目和输入端数目,归一随机化处理初始权值。②计算获胜的神经元。③调整权值。④调整学习效率及更新邻域神经元参数。⑤结束判断。
由于评价体系的特征参数有6个,故输入端值设为6;输出端设置为2,清晰图像用二进制的10表示,雾霾图像用二进制的01表示;随机选择100个样本为训练数据,其他20个为测试数据。分别选取了(36个竞争神经元,训练1 000次;25个竞争神经元的网络,训练了5 000次),表明,基于SOFM神经网络的图像识别算法在实际运用中识别效果很好。在增加竞争神经元和训练次数的后续实验中,试验结果成功率可以达到98%。
3 结 语
(1)文中提出的改进暗原色先验原理的大气耗散函数的估计方案,不仅细节保持度很好,而且抑制了Halo效应,并且没有中值滤波造成的黑斑效应,获得了更好的视觉效果。
(2)基于3ds max软件对清晰图像进行雾霾特效渲染,获得了不同浓度的雾霾图像,并构建了本文的图像训练库。
(3)对图像的纹理特征进行了统计分析,验证了部分可以反应图像雾霾浓度的特征参数。
(4)对不同的去雾算法获得的去雾图像进行了合理且系统的客观评价和比较。
(5)基于SOFM网络提出了识别雾霾图像和清晰图像的算法。目前还没有权威的去雾图像的质量评价体系,这很大程度上限制了去雾图像的实用价值,因此,本文初步探索去雾图像的评价体系具有重大的实际意义。
[1] Schechner Y Y,Narasimhan S G,Nayar S K.Instant dehazing of images using polarization[C]//Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition.Washington D.C.,USA:IEEE,2001:325-332.
[2] Shwartz S,Namer E,Schechner Y Y.Blind haze separation[C]//Proceedings of IEEE Conference on Computer Vision and Pattern Recognition. Washington D.C.,USA:IEEE,2006:1984-1991.
[3] Narasimhan S G,Nayar S K. Chromatic framework for vision in bad weather[C]//Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition.New York,USA:IEEE,2000:598-605.
[4] Nayar S K,Narasimhan S G.Vision in bad weather[C]//Proceedings of the 7th IEEE International Conference on Computer Vision.Kerkyra,Greece: IEEE,1999:820-827.
[5] Narasimhan S G,Nayar S K. Contrast restoration of weather degraded images[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2003,25(6):713-724.
[6] Tan R T.Visibility in bad weather from a single image[C]//Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition.Anchorgae,USA:IEEE,2008.
[7] Fattal R. Single image dehazing[J].ACM Transactions on Graphics, 2008, 27(3):1-9.
[8] Tomasi C, Manduchi R.Bilateral-ltering for gray and color images[C]//Proceedings of the 6th International Conference on Computer Vision Bombay. India:IEEE,1998:839-846.
[9] Xu H R,Guo J M,Liu Q,etal. Fast image dehazing using improved dark channel prior[C]//Proceedings of the IEEE International Conference on Information Science and Technology. Hubei,China:IEEE,2012:663-667.
[10] He Kai-Ming,Sun Jian,Tang Xiao-Ou.Single image haze removal using dark channel prior[C]//In:Proceeding of IEEE Conference on Computer Vision and Pattern Recognition. Washington D.C.,USA:IEEE,2009.1956-1963.
[11] 禹 晶,李大鹏,廖庆敏.基于物理模型的快速单幅图像去雾方法[J].自动化学报,2011,37(2):143-149.
[12] Gibson K B,Vo D T,Nguyen T Q.An investigation of dehazing effects on image and video coding[J]. IEEE Transactions on Image Processing,2012,21(2): 662-673.
[13] 张小刚,唐美玲,陈 华,等.一种结合双区域滤波和图像融合的单幅图像去雾算法[J].自动化学报,2014,40(8):1733-1739.
[14] Kumar Y, Gautam J, Gupta A,etal. Single image dehazing using improved dark channel prior[J].IEEE Signal Processing and Integrated Networks,2015:564-569.
[15] 刘海波,杨 杰,吴正平,等. 基于暗通道先验和Retinex理论的快速单幅图像去雾方法[J].自动化学报,2015,41(7):1264-1273.
[16] 陈书贞,任占广,练秋生. 基于改进暗通道和导向滤波的单幅图像去雾算法[J].自动化学报,2016,42(3):455-465.
[17] He Kai-Ming,Sun Jian,Tang Xiao-Ou.Guided image filtering[J]. IEEE Transaction on Pattern Analysis and Machine Intelligence,2013,35(6): 1397-1409.
[18] 宋东辉,夏晓靖,陈虹丽. 一种暗原色先验的图像去雾改进算法[J].应用科技,2016(6):7-11+23.
[19] 郭 璠,蔡自兴.图像去雾算法清晰化效果客观评价方法[J].自动化学报,2012,38(9):1410-1419.
[20] 南 栋,毕笃彦,马时平,等.基于分类学习的去雾后图像质量评价算法[J].自动化学报,2016,46(2):270-278.
[21] 李大鹏,禹 晶,肖创柏.图像去雾的无参考客观质量评测方法[J].中国图象图形学报,2011,16(9):1753-1757.