2. 哈尔滨工程大学 船舶工程学院,黑龙江 哈尔滨 150001
2. College of Shipbuilding Engineering, Harbin Engineering University, Harbin 150001, China
近年来,无人船不仅在国防领域中起到不可忽视的作用,也广泛应用于海上搜救,水质监测等民用领域[1-2]。视觉系统具有定位精度高、使用灵活、硬件成本低等特点,可以作为无人船的环境感知和避障传感器,保证无人船安全航行[3]。但是相对于陆地来说,海上环境复杂多变,海雾天气更是常见天气,雾气中的悬浮粒子对光的吸收和散射作用,会导致无人船的视觉系统在采集图像数据和视频数据时,产生对比度降低、颜色失真以及模糊等现象。而退化后的图像会丢失目标物的特征信息,导致立体匹配时出现匹配对数降低或出现较多的误匹配点等问题,影响无人船系统对障碍物识别及距离判断的准确性,严重时可能会因距离判断失误而导致无人船碰撞、触礁等事故的发生,所以将图像去雾技术应用于无人船的视觉系统对提高目标定位的精度和安全航行系数是非常重要的[4]。
近年来常用的图像去雾算法主要有无模型的图像增强方法和基于物理模型的图像复原方法,无模型方法通常不考虑图像的退化机制而直接对图像的对比度或亮度进行调节,常用的方法有:Retinex算法、直方图均衡化(Histogram Equalization,HE)、对比度受限的自适应直方图均衡(Contrast Limited Adaptive histgram equalization,CLAHE)和小波变换[5]。这些方法虽然对图片有一定的增强作用,但是会造成图像失真并丢失部分图像细节,只能达到感知级别的图像增强效果[6]。基于物理模型的方法主要是利用图像退化模型,根据先验知识对得到的雾化图像进行反推,进而恢复无雾图像。此类方法通过图像散射模型分析图像降质的本质原因和降质过程中的丢失信息,利用图像信息和先验知识求取模型中各参数,最终建立合理的去雾算法,得到去雾图像。Tan等[7]利用无雾图像对比度高于有雾图像的先验信息,在不完全恢复场景原始透射率条件下,最大化局部信息对比度,得到去雾图像,该方法可以处理灰度和彩色图像,但是忽略了图像自身的颜色构造,导致去雾图像出现色彩严重失真的现象。Fattal等[8]假设介质的传导率和物体表面的光照是不相关的,利用图像邻域信息的马尔科夫性和局部最优的思想计算得到无雾图像。这种方法对先验信息的精度要求较高,不适用于模糊图像和灰度图像。He[9]通过统计大量无雾图提出的暗通道先验理论(Dark Channel Prior,DCP),即图像中任意一个区域内都至少有一个通道的像素值最小甚至趋于0,该算法基于大气散射物理模型从图像的退化原因进行反推,最终复原出陆地上效果最好的去雾图。但是图像中如果存在白色物体或区域时,会出现3个颜色通道的暗通道值均较高的现象,暗通道先验理论将会失效,由此估计出的大气散射模型中的参数会导致去雾图像出现色斑和光晕现象,丢失大量的图像信息。而海上图像含有大面积亮度较高的天空区域,此时DCP算法将不能直接用于海上图像去雾。此后的一些基于暗通道改进的算法[10]大都是通过弱化对天空区域的处理来达到改善天空区域的效果,但是这样的改进就会导致图像中跟天空区域连接的区域被弱化,丢失很多细节信息。
本文通过分析雾天的成因以及图像退化模型,针对海上图像特点以及暗通道算法处理海上图像时存在的不足,采用四分法对海上图像进行不断分割,并通过设计的评价函数确定每次分割后得到的优化大气光值的候选区域,且将达到预先设定阈值的候选区域作为最终感兴趣区域,同时将该区域内所有像素的亮度平均值作为大气光值
McCartney提出的大气散射模型是最经典的雾天图像退化模型[11-12],该模型包含入射光衰减模型和大气光模型。其中入射光衰减模型描述了光从目标物到观测点之间的衰减过程;大气光模型描述了环境的悬浮粒子对观测点接收到的光强的影响。大气散射模型如下式:
$ I(x) = J(x)t(x) + A(1 - t(x))\text{。} $ | (1) |
其中:
对式(1)进行变换后可得:
$J(x) = A - \frac{{A - I(x)}}{{t(x)}} \text{。} $ | (2) |
由上式可知,若能精确地求出大气光值
He等在大气散射模型的基础上,通过统计5000多幅图像的特征,提出了暗通道先验算法。该理论假定在图像中绝大多数的目标区中会存在一些暗像素区域,这些区域中至少有一个颜色通道的像素值很小,甚至趋近于0。正常图像的暗通道图像接近纯黑,但有雾图像的暗通道图像颜色则呈现灰色,这就构成了暗通道去雾的理论基础。
暗通道可以表示为:
${J^{dark}}(x) = \mathop {\min }\limits_{c \in \{ r,g,b\} } \left(\mathop {\min }\limits_{y \in \varOmega (x)} {J^c}(y)\right) \to 0 \text{。} $ | (3) |
式中:
假设在局部区域内
${I^{dark}}(y) = \mathop {\min }\limits_{c \in \{ r,g,b\} } \left(\mathop {\min }\limits_{y \in \varOmega (x)} {I^c}(y)\right) \approx A(1 - t(x)) \text{,} $ | (4) |
对式(4)进行变换可得
$ t(x) = 1 - \mathop {\min }\limits_{c \in \{ r,g,b\} } \left(\mathop {\min }\limits_{y \in \varOmega (x)} \frac{{{I^c}(y)}}{A}\right) \text{。} $ | (5) |
上式可粗略估算出暗通道先验算法的透射率。
然而在现实场景中,非常晴朗的天气中也会存在一层薄雾以增强图像的层次感。为了保持景深,在进行图像去雾时要保留一部分的雾,防止因雾全部移除而产生的噪声和颜色失真等现象。对有雾图像进行去雾操作时,预设一个雾气保留因子
$t(x) = 1 - \omega \mathop {\min }\limits_{c \in \{ r,g,b\} } \left(\mathop {\min }\limits_{y \in \Omega (x)} \left(\frac{{{I^c}(y)}}{{{A^c}}}\right)\right) \text{,} $ | (6) |
暗通道先验算法估计大气光值时,通常将图像中亮度最高点,也就是图像中像素值的最大值作为大气光值的近似估计。具体做法分为2步:
1)将暗通道图像中的亮度大小进行排序,将前0.1%的值取出;
2)将求取的亮度值对应原图的位置,在原含雾图像中找出这些位置的最高值将其作为大气光值。
根据大气物理模型以及上述得到的粗略的大气光值
$J(x) = \frac{{I(x) - A}}{{\max (t(x),{t_0})}} + A \text{。} $ | (7) |
式中,为了防止估计的透射率过小而造成最终复原图像严重失真,可设置透射率阈值
海上图像的特点为图像中有大面积的天空区域,而天空区域中的白光分量过多,易出现局部区域R,G,B三通道值均较高的现象,与暗通道先验假设某一区域内至少有一个颜色通道像素值趋近于0的理论基础相悖,故DCP算法不能直接用于含有大面积天空区域的图像去雾。
针对上述问题,本文提出改进大气光值
原始及许多改进暗通道去雾算法均选取图像中亮度最高的像素值作为大气光值的近似估计值。但选取单个点易受外界随机条件干扰,尤其是当图像中存在亮度较高的白色物体或区域时,通常就会导致大气光值的错误估计,影响图像去雾的效果,丢失更多图像信息。
本文采用四分法对目标图像进行分割并确定最终的候选区域,其主要思想是根据构建的评价函数对输入图像进行四等分,选择符合评价函数的区域并再次进行四等分,直至得到符合评价函数并满足区域阈值要求的候选区域。
本文将某一区域内的像素平均值
$\bar x = \frac{{{x_1} + {x_2} + \cdots + {x_n}}}{n}\text{,} $ | (8) |
${s_N} = \sqrt {\frac{1}{n}\sum\limits_{i = 1}^n {{{({x_i} - \bar x)}^2}} }\text{,} $ | (9) |
$F(x) = \bar x - {s_N} \text{。} $ | (10) |
其中,
每次四分均选取值
$A = \frac{{S(x)}}{n} \text{。}$ | (11) |
式中,
图1为四分法的过程及结果。首先对输入进行四等分,对符合判断标准的区域再次进行划分,最终得到
原始暗通道先验方法在求取透射率时,假设每个区域内的透射率是不变的,因此估计出的结果存在块效应,具有一定的偏差。He采用软抠图的方式对透射率结果进行优化,但是该方法速度慢且计算量较大。本文采用导向滤波对暗通道先验得到的透射率图进行优化,并将立体匹配和图像增强交替迭代的思想引入其中,即透射率
导向滤波算法引入了局部线性模型,输出图像由输入图像和导向图共同决定,输出图像大体上与输入图像相似,但边缘纹理处与导向图相同,对图像边缘的处理效果更好,耗时更少,并且导向滤波还能更好保持图像的梯度信息。
引入的局部线性模型包括导向图
${q_i} = {a_k}{I_i} + {b_k},\forall i \in {\omega _k} \text{。} $ | (12) |
其中:
为了最小化输出图像
$E({a_k},{b_k}) = \sum\nolimits_{i \in {\omega _k}} {({{({a_k}{I_i} + {b_k} - {p_i})}^2} + \varepsilon a_k^2)} \text{,} $ | (13) |
其中,
${a_k} = \frac{{\dfrac{1}{{|\omega |}}\displaystyle\sum\nolimits_{i \in {\omega _k}} {{I_i}{p_i} - {\mu _k}{{\bar p}_k}} }}{{\sigma _k^2 + \varepsilon }} \text{,} $ | (14) |
${b_k} = {\bar p_k} - {a_k}{\mu _k} \text{。} $ | (15) |
式中:
将优化之后的大气光值
大气散射模型中,透射率
$t(x) = {e^{ - \beta d(x)}} \text{。} $ | (16) |
其中:
而双目立体定位中,视差图与景深的关系为:
$d(x) = Z = \frac{{b*f}}{D} \text{。} $ | (17) |
其中:
考虑到复原之后的图像更加清晰、细节信息更加丰富,引入双目立体视觉和图像增强交替迭代的思想,其实现过程如下:
1)利用本文提出的去雾算法对有雾原图进行去雾;
2)对去雾之后的左右图像进行立体匹配操作,并根据式(17)获得图像的景深
3)将步骤2中得到的景深代入式(16)计算出新的透射率
4)判断得到的去雾图像或距离信息是否达到稳定状态,若已达稳态,则执行步骤5,否则重复步骤1~步骤3;
5)输出达到稳态值的去雾图像。
3 实验验证 3.1 对比实验图3为大连海事大学实习船“育鲲”号和“育鹏”号在雾中的图像,图4为局部细节放大展示图。从图3和图4可以看出,相比于Retinex,CLAHE,Fatal,He等算法,本文算法恢复出的无雾图像有效改善了图像中天空区域的光晕现象,并且恢复出的图像色彩更加真实,细节图更加清晰。
为了直观反映算法的去雾效果,引入图像评价指标结构相似度(Structual Simmilarity,SSIM)、峰值信噪比(Peak Signal to Noise Ratio,PSNR)以及信息熵(Entropy)进行定量分析。结构相似度指标能够衡量图像的对比度、亮度以及结构信息,该值越大说明恢复效果越好;峰值信噪比能够衡量图像噪声水平和失真情况,该值越大说明去雾之后的图像与原图像越相似;信息熵能够衡量图像中平均信息的多少,熵值越大图像中的轮廓信息越清晰。表1为图3(a)中3张原图分别经过Retinex,CLAHE,Fattal,He以及本文算法计算得到的各图像评价指标值。由表1可知,本文去雾算法在各项图像评价指标中均表现上乘。
此外,立体匹配是无人船视觉系统利用双目摄像机实现目标定位和障碍物测距必不可少的一步,其主要原理是利用双目摄像机拍摄到的同一场景图像,经过摄像机标定、校正等一系列处理之后,在左右2幅图像中找到同一物体的同一点,从而计算出视差图,实现对物体的最终定位。立体匹配主要是利用图像中物体的纹理和色彩等特征进行左右图像的匹配,匹配点的个数以及匹配的准确度都会影响最终的定位精度,所以立体匹配可以作为图像质量的一个评价标准。其中特征点匹配是立体匹配的核心,ORB[17](Orientation by Intensity Centroid)特征点匹配算法具有良好的稳定性且计算速度极快,故本文采用ORB算法对成对图像进行匹配点检测并对总匹配对数以及优秀匹配对数进行统计,以评价去雾前后的图像质量。
图5为利用ORB特征匹配算法对双目摄像头拍摄到的左右图像进行特征点匹配的结果。表2列出了上述3图的总匹配对数和误差小于0.75的优秀匹配对数,并计算出了优秀匹配对数的占比。
综合上述实验结果可知,基于本文的海上图像去雾算法可以从一定程度上改善原始DCP算法存在的色斑和光晕现象,且得到的复原图像能够能复原出更多的图像细节,可给无人船视觉系统提供质量更高的海上图像。
4 结 语本文通过改进暗通道先验算法,对海上有雾图像进行增强,有效复原出较多的图像细节信息,使视觉系统更好发挥“眼睛”的作用,更有利于实现无人船精确避障以及目标物测距等后续工作。通过与现有的一些去雾算法进行的对比实验,验证了本文算法在海上图像去雾处理上的有效性和优越性。但是,一些实验也显示,当海上雾气浓度很高时,与其他去雾算法相比,基于本文算法的图像去雾优势则不够明显,尚需后续加以改善。
[1] |
LIU R, FAN X, HOU M, et al. Learning aggregated transmission propagation networks for haze removal and beyond[J]. IEEE Transactions on Neural Networks and Learning Systems, 2019. |
[2] |
刘兴瑞. 自适应直方图均衡处理下船舶视频监控图像去雾算法[J]. 舰船科学技术, 2020, 42(16): 70-72. |
[3] |
KIM J H, JANG W D, SIM J Y, et al. Optimized contrast enhancement for real-time image and video dehazing[J]. Journal of Visual Communication and Image Representation, 2013, 24(3): 410-425. DOI:10.1016/j.jvcir.2013.02.004 |
[4] |
王博. 无人艇光视觉感知研究发展综述[J]. 舰船科学技术, 2019, 41(12): 44-49. |
[5] |
SINGH G, JAGGI N, VASAMSETTI S, et al. Underwater image/video enhancement using wavelet based color correction (WBCC) method[J]. IEEE Underwater Technology, 2015, 1-5. |
[6] |
WANG Y, SONG W, FORTINO G, et al. An experimental-based review of image enhancement and image restoration methods for underwater imaging[J]. arXiv, 2019. |
[7] |
TAN R T. Visibility in bad weather from a single image [C]// 2008 IEEE Computer Society Conference on Computer Vision and Pattern Recognition (CVPR 2008), 24−26 June 2008, Anchorage, Alaska, USA. IEEE, 2008.
|
[8] |
FATTAL R. Single image dehazing[J]. Proceedings of SIGGRAPH, 2008, 27(3): 1-9. |
[9] |
HE K, SUN J, et al. Single image haze removal using dark channel prior[J]. IEEE Transactions on Pattern Analysis & Machine Intelligence, 2011, 33(12): 2341-2353. |
[10] |
SONG Y, LUO H, HUI B, et al. An improved image dehazing and enhancing method using dark channel prior [C]//Qingdao: The 27th Chinese Control and Decision Conference, 2015: 5840−5845.
|
[11] |
HAN M, LYU Z, QIU T, et al. A review on intelligence dehazing and color restoration for underwater images[J]. IEEE Transactions on Systems Man & Cybernetics Systems, 2018, 1-13. |
[12] |
CHEN X, YU J, KONG S, et al. Towards real-time advancement of underwater visual quality with GAN [J]. 2017.
|
[13] |
HE K, SUN J, TANG X. Guided image filtering[J]. IEEE Transactions on Pattern Analysis & Machine Intelligence, 2013, 35(6): 1397-1409. |
[14] |
陈书贞, 任占广, 练秋生. 基于改进暗通道和导向滤波的单幅图像去雾算法[J]. 自动化学报, 2016, 42(3): 455-464. |
[15] |
LI S, KANG X, HU J. Image fusion with guided filtering[J]. IEEE Transactions on Image Processing, 2013, 22(7): 2864-2875. DOI:10.1109/TIP.2013.2244222 |
[16] |
ZHANG Q, LI X. Fast image dehazing using guided filter[C]//Hangzhou: IEEE International Conference on Communication Technology. IEEE, 2016.
|
[17] |
RUBLEE E, RABAUD V, KONOLIGE K, et al. ORB: An efficient alternative to SIFT or SURF[C]//Barcelona: International Conference on Computer Vision. IEEE, 2012.
|