徐振轩张红英(通信作者)朱恩弘吴亚东
1. 西南科技大学信息工程学院 2. 特殊环境机器人技术四川省重点实验室(西南科技大学)
一种基于天空区域分割的单幅图像去雾方法
徐振轩1,2张红英(通信作者)1,2朱恩弘1吴亚东
1. 西南科技大学信息工程学院 2. 特殊环境机器人技术四川省重点实验室(西南科技大学)
针对暗原色先验去雾算法对天空区域估计透射率偏小,导致复原无雾图像色彩失真,存在不均匀色块等问题,提出了一种基于天空区域分割的图像去雾算法。通过,分别对天空及非天空区域进行去雾处理,既保留了暗原色先验算法的良好效果,又解决了天空区域不适用暗原色先验规律的问题。同时,消除了融合后分界处的明显的“白边”效应,使得天空与非天空区域处理后融合效果更加自然。实验结果表明,相比较与暗原色先验去雾算法,该方法在天空区域没有明显色块及色彩失真现象,复原图像清晰自然,能够达到良好的去雾效果。
去雾方法 暗原色先验 图像分割 天空区域 图像融合 大津法 四叉树
由于大气粒子的散射作用,雾,霾等恶劣自然天气状况很容易导致视觉系统获得的图像降质,信息丢失严重,严重影响人类视觉感受和相关视觉算法的处理效果。因此快速有效的去雾算法研究具有重要的意义。
现有算法中,He等人提出了一种基于暗原色先验的去雾算法,首先使用最小值滤波对透射图进行粗估计,然后借助导向滤波算法对透射图进行细化,最后根据大气散射模型复原出无雾图像。因其原理简单,去雾效果有效自然,所以目前研究者众多。然而暗原色先验规律并不适用于天空区域,使得复原图像天空区域容易出现光晕伪影或者色彩失真现象。为克服这一缺陷,文献[3]通过引入容差机制,纠正了这类区域错误估计的透射率,复原图像消除了色彩失真,但是其设定的容差值不具有普遍适用性,文献[4]-[7]通过分割出天空区域进行单独处理也取得了较好的复原效果,但是分割算法均过于复杂。
因此,针对上述问题,本文提出了一种基于暗通道先验的改进算法,和一种简单的融合处理方法,使得融合后的图像更加自然。
在计算机视觉和计算机图形学中,常用如下大气散射模型来描述有雾图像:
其中,I(x)是待去雾图像,J(x)是要恢复的无雾图像,A是大气光照度,t(x)是透射率。
多数存在天空区域的有雾图像,其天空与非天空区域有明显的结构特征。天空区域的分割方法众多,如文献[4][5]中先求取梯度图,再进行边缘跟踪,标记连通区确定天空区域;本文提出了一种新的分割方法,即利用最大类间方差法分割出天空区域所在范围,再对粗分割结果进行二次分割。
3.1 最大类间方差法求阈值
最大类间方差法是基于图像的灰度直方图,将图像分为两类,以两类的类间方差最大或类内方差最小作为阈值的选取准则。其基本原理如文献[6][7],选定最优分割阈值后,按照阈值对图像进行分割。在天空与非天空交界线明显的情况下,分割结果相对令人满意,但是遇到交界处噪声较多时候,简单单一阈值分割并不能保证分割的准确性。为了尽可能将天空与非天空区域分割精确,我们要对3.1的粗分割结果进行再次优化。
3.2 细分割处理
为了使得分割结果准确快速,经过大量实验处理对比确定,发现了一种十分简单却有效的方法,即将阈值分割结果作膨胀处理,使得天空区域膨胀后包含天空与非天空交界处,将此时的天空区域叠加,此时满足:
然后再将满足条件的天空区域置0,非天空置1,得出细分分割后的二值图。
至此,可以将天空与非天空区域精确分割开来。实验结果表明,该方法原理简单,分割快速有效,结果满意。
4.1 求取全局大气光照值A
按照He算法,A值可能受到非天空区域白色亮点噪声影响导致A值计算结果偏大,造成整个图像偏色严重。为了更准确的估算大气光照值,我们采用四叉树方法。将图像均分为四块区域。计算每块区域的平均值和标准差之差。将计算结果最大的区域再重复进行步骤直到区域大小小于设定的阈值,即最终选定的区域。计算最终选定区域亮度平均值,即为估算的大气光照值A。
4.2 去雾流程
天空区域亮度值相近且平滑,所以为了简化运算,设定其透射率为固定值,即图像透射率:
然后根据透射率及4.1所求得的值A,由下式复原无雾图像,
其中t0设为0.1,为防止透射率值取值过小。
在有雾图像中,天空与非天空区域的交界处在实际情况下应该有不同的透射率值,这种情况会使得在天空与非天空区域分割不准确时,基于暗原色先验原理处理非天空区域的时候边缘的“白边”效果更加明显,如图1左图所示。
为了消除拼接后的分界处“白边”,本文提出了一种新的拼接方法,使用简单的与或运算,即:
其中,Jdark(x)表示有雾图像经过基于暗原色先验原理处理后的无雾图像,Jsky(x)表示在文中处理后的天空区域图像,其非天空区域置0,Jprocess(x)表示分割出的非天空区域图像,其天空区域置0,J(x)表示复原无雾图像。
这样处理可以避免对非天空区域单独使用暗原色先验原理时因为运算窗口造成的边界锯齿效应,处理后效果图如图1右图所示。
为了验证本文提出算法的有效性,全部选取了含有天空区域的图像进行测试,分别与he方法和Fattal方法进行比较。在实验中,计算暗通道选择窗口大小为15×15,取值0.8,部分实验结果如图2所示。
在图2中,通过使用He的暗原色先验方法处理有雾图像整体去雾效果良好,但是在天空区域色彩失真严重,例如(a)图右半边区域存在较为严重的阴影,色彩失真,(b)图天空区域同样存在黑影;Fattal方法在天空区域色彩过度饱和,非天空区域图像细节信息丢失严重。与之相比,本文算法天空区域分割精确,整体去雾效果较好,天空色彩复原真实,没有出现偏色以及色块伪影日晕现象,远处细节有效保留,图像整体复原效果自然。
图1 融合图像及处理后图像
图2 含天空区域去雾效果对比
在浓雾天气状况下,天空分割处理并没有必要,而且实际分割效果也不好。另外本文需要对同一幅图像进行多次处理和遍历计算,算法效率不高。如何改善图像复原效果和解决浓雾状况下复原问题,以及如何利用硬件和算法方法优化本文算法的运算效率,这些都是下一步我们要研究的工作。
[1]He K, Sun J, Tang X. Single image haze removal using dark channel prior[J]. Pattern Analysis and Machine Intelligence, I EEE Transactions on, 2011, 33(12): 2341-2353
[2]He K, Sun J, Tang X. Single image haze removal using dar k channel prior[J]. Pattern Analysis and Machine Intelligence , IEEE Transactions on, 2011, 33(12): 2341-2353
[3]蒋建国,侯天峰,齐美彬.改进的基于暗原色先验的图像去雾算法[J].电路与系统学报,2011,16(2):7-12
[4]李加元,胡庆武,艾明耀,等.结合天空识别和暗通道原理的图像去雾[J].中国图象图形学报,2015,20(4)
[5]胡平.基于图像分割的交通图像快速去雾算法[J].计算机系统应用,2014,23(9):134-138
[6]雷琴,施朝健,陈婷婷.基于天空区域分割的单幅海面图像去雾方法[J].计算机工程,2015,41(5):237-242
[7]李坤,兰时勇,张建伟,等.改进的基于暗原色先验的图像去雾算法[J].计算机技术与发展,2015,25(2):6-11
TP391.4
A