陈龙彪 谌雨章 王晓晨 邹鹏 胡学敏
摘 要:由于水體本身的特性以及水中悬浮颗粒对光的吸收和散射作用,水下图像普遍存在信噪比(SNR)低、分辨率低等一系列问题,但大部分方法传统处理方法包含图像增强、复原及重建,都依赖退化模型,并存在算法病态性问题。基于深度学习的图像恢复技术近年来已成为研究的热点。为进一步提高水下图像恢复算法的效果和效率,提出了一种改进的基于深度卷积神经网络的图像超分辨率重建方法。该方法网络中引入了改良的密集块结构(IDB),能在有效解决深度卷积神经网络梯度弥散问题的同时提高训练速度。该网络对经过配准的退化前后的水下图像进行训练,得到水下低分辨率图像和高分辨率图像之间的一个映射关系。实验结果表明,在基于自建的水下图像作为训练集上,较卷积神经网络的单帧图像超分辨率重建算法(SRCNN),使用引入了改良的密集块结构(IDB)的深度卷积神经网络对水下图像进行重建,重建图像的峰值信噪比(PSNR)提升达到0.38dB,结构相似度(SSIM)提升达到0.013,能有效地提高水下图像的重建质量。
关键词:卷积神经网络;超分辨率重建;信噪比;水下图像处理;映射
中图分类号:TN911.73; TP183
文献标志码:A
Underwater image super-resolution reconstruction method based on deep learning
CHEN Longbiao, CHEN Yuzhang*, WANG Xiaochen, ZOU Peng, HU Xuemin
School of Computer Science and Information Engineering, Hubei University, Wuhan Hubei 430062, China
Abstract:
Due to the characteristics of water itself and the absorption and scattering of light by suspended particles in the water, a series of problems, such as low Signal-to-Noise Ratio (SNR) and low resolution, exist in underwater images. Most of the traditional processing methods include image enhancement, restoration and reconstruction rely on degradation model and have ill-posed algorithm problem, and image restoration technology based on deep learning has become a hot topic in recent years. In order to further improve the effects and efficiency of underwater image restoration algorithm, an improved image super-resolution reconstruction method based on deep convolutional neural network was proposed. An Improved Dense Block structure (IDB) was introduced into the network of the method, which can effectively solve the gradient disappearance problem of deep convolutional neural network and improve the training speed at the same time. The network was used to train the underwater images before and after the degradation by registration and obtained the mapping relation between the low-resolution image and the high-resolution image. The experimental results show that on a self-built underwater image training set, the underwater image reconstructed by the deep convolutional neural network with IDB has the Peak Signal-to-Noise Ratio (PSNR) and Structural SIMilarity (SSIM) improved by 0.38dB and 0.013 respectively, compared with SRCNN (an image Super-Resolution method using Conventional Neural Network) and proposed method can effectively improve the reconstruction quality of underwater images.
Key words:
Convolutional Neural Network (CNN); super-resolution reconstruction; Signal-to-Noise Ratio (SNR); underwater image processing; mapping
0 引言
伴随水下资源开发、水下环境监测以及海洋军事等诸多领域的兴起与蓬勃发展,水下成像探测一直是研究的热点。但鉴于水下环境与陆地环境之间的极大差异,水中存在的水体对光的吸收和散射等诸多因素,导致电子设备采集到的水下图像质量严重退化,存在对比度低、表面雾化等多方面不足,严重影响了信息的准确获取。传统的水下图像处理方法包含图像的增强、复原及超分辨率重建算法[1-2],但普遍存在依赖退化模型及效率低的问题,从而在应用范围及实时性方面受到了限制。因此,找到一种快速有效的方法来对水下图像进行处理,从而获取到信噪比高、清晰度好的图像是十分有必要且迫切的[3-5]。
近年来,学者们通过引入各种数学方法来优化水下图像复原及重建的质量,并取得了一定的成效。针对水下图像光照不均匀以及图像的纹理细节模糊、对比度低的问题,郭相凤
等[6]提出了一种基于水下图像光学成像模型的清晰化算法,但该算法在实时性上的表现却不够好。也有学者针对特定的
应用场景设计了一些专门的图像复原算法[7-8],这些算法在且仅在特定的场景下表现出对图像复原良好的性能。考虑到水下光学条件复杂,张颢等[9]和Lu等[10]通过分析水下光学成像模型,针对噪声去除,分别提出了自己的超分辨率重构算法,使得到的超分辨率图像有较好的噪声水平,但对于光照不足、色彩偏离严重的水下图像,他们的算法却显得乏力。Nakagawa等[11]提出一种基于kinect水下三维图像重建方法,该方法考虑了水中泥沙的影响,采用水下暗通道先验去模糊、加权引导图像超分辨率,有效克服了深度图精度低的缺点。
本文结合课题组近几年在退化模型和恢复算法的研究成果,总结出目前图像恢复算法的一些共性问题:1)无法处理好降噪和进行对比度增强之间的先后关系,进而导致重建得到的图像存在噪声消除不够完善或者细节受损的问题;2)数字图像多为二维或者三维数字矩阵,数据量十分庞大,算法的迭代耗时过长,从而无法实现实时性。因此采用经典方法处理水下图片无法快速准确地得到高质量的水下图像复原图。
深度学习成为近年来图像处理领域的研究热潮,已有学者也在这股热潮中提出了基于深度学习的水下图像处理算法。Lu等[12]提出了一种解决低强度光环境下水下成像问题的光场成像方法,该方法通过使用深度估计的深卷积神经网络来解决光场图像的去散射问题。而Perez等[13]提出了一种基于深度学习的水下图像增强方法,通过图像恢复技术对卷积神经网络进行训练,提高了神经网络的泛化能力。自从Dong等[14]提出应用卷积神经网络的单帧图像超分辨率重建算法(an image Super-Resolution method using Conventional Neural Network, SRCNN)以后,就打开了深度学习通往图像超分辨率重建的大门,同时解决了以前需要人为设计特征提取方式的不便,实现了端对端的学习,提高了图像重建的精度。但SRCNN算法却也存在明显不足,表现在当SRCNN的层数较多时,便会出现梯度弥散的现象;而且,SRCNN使用的是单一的模糊因子进行训练的,会导致该网络对其他模糊程度的图像的复原效果不佳。针对SRCNN的上述不足,本文提出了一种改进的深度卷积神经网络,用以训练低分辨率水下图像和高分辨率图像之间的映射关系,从而达到对水下图像进行重建、提高图像分辨率的目的。
1 本文方法
1.1 改进的基于卷积神经网络的图像超分辨率重建方法
本文设计的改进的深度密集卷积神经网络结构如图1所示。
改进的网络主要包含两大部分,即:
Z(X)=A(X)+B(X)(1)
其中:Z(X)為最终的重建图像HR;X为摄像头采集的水下低分辨率图像;A(X)为由低分辨率图像进行双三次插值得到的图像信息ILF,是图像的低频部分;B(X)表示低分辨率图像经过深度卷积神经网络后的输出图像信息IHF,是图像的高频信息部分。众所周知,低分辨率图像与高分辨率图像的最大区别是在其基础上损失了重要的高频部分信息,而低频部分的信息与原图像基本一致,所以本文构建的网络能够有效避免对低频部分信息的重复学习,从而加快模型的收敛速度。
其中用于学习图像高频部分信息的深度卷积神经网络是图1的上半部,该部分网络由四大部分组成,包括:
1)用于学习低层特征的卷积层,其中包含两个Conv卷积层;
2)用于学习高层特征的改良密集块,包含12个IDB;
3)用于将学习的密集特征融合的融合层;
4)用于生成HR高频特征的重构块,包含一个上采样层和一个卷积层。
1.2 数据集的建立及图像预处理
受张清博等[15]的研究启发,本实验使用自建数据集,为保证实验数据的多样性,本次实验在长江和东湖上进行。图2是此次实验成像系统原理以及采样现场图。
图3(a)是长江水中测试靶1的图像,图3(b)是清水中测试靶1的图像。可以看出:清水中的图像的成像质量比较高,基本没有噪声;而长江水中的图像含较多噪声,清晰度很低。
为更好地体现出提取高频信息进行网络训练的直观效果,将测试靶1的高频信息提取结果导出如图4所示,可以看到,图像的高频细节部分信息展现更为突出,而低频部分信息不再进入网络进行训练,能极大地提高网络训练的速度和效率。
为了解决数据难以获取的难点,采集了大量用于训练的数据集。将在自然光下采集得到的训练靶退化前后的图像进行配准得到尺寸为64×64的训练样本对。仿照文献[16]中对数据的处理办法,对图像先进行 64×64颜色空间转换并提取64×64通道,将得到的图像按照步长为10,处理为大小64×64的图像块。再利用旋转、镜像的方法扩充训练集,选取90%作为训练集,10%作为校验集,再选取在东湖中得到的测试靶的图像作为测试集。最后得到训练、校验、和测试图片的数目及尺寸如表1所示。采集到的这些训练集图像块将用于特征提取步骤中,对本文设计的卷积神经网络模型进行交叉训练。
采集到的这些训练集图像块将用于特征提取步骤中,对本文设计的卷积神经网络模型进行交叉训练。而所谓交叉训练,就是将训练集分为10份,每一轮训练都会选取9份作为训练集数据,剩下的1份将用作校验集,并用其对网络参数进行调节,每一轮的校验集都不同,以此种方式循环10轮,便构成了交叉训练。通过此方式,能有效地筛选出对网络训练更有利的数据集,防止因为部分训练集效果不佳而对网络整体效果产生影响。
1.3 特征提取
式(1)中的A(X)可通过直接对低分辨率图像进行低通滤波,然后进行双三插值得到;而用于训练B(X) 的输入则为通过高通滤波处理的低分辨率图像。利用前层学习得到的特征图与卷积核进行卷积操作提取局部特征,卷积结果经激活函数运算后得到当前层的特征图。
得到如下的输出结果:
xlj=f(∑i∈Mjxl-1i×Wlij+blj)(2)
其中:x为特征图中像素点的值,l为卷积层的层数,i和j为像素点的位置, f为神经网络采取的激活函数,M为卷积核,W和b分别为卷积核中的权值和常数偏置。本文提出的卷积神经网络中,受文献[17]中提出方法的引导,在每次卷积前都对图像进行补0操作,这样保证了所有的特征图和最终的输出图像在尺寸上都保持一致,避免出现图像因通过逐步卷积而会变得越来越小的问题。
有研究表明,网络层次越深,则对图像的重建性能会有更好的体现,见文献[18]。但由于神经网络中梯度弥散现象,会导致深层次网络的重建效果甚至不如简单的3层卷积神经网络。文献[19]中提出了残差网络结构的概念,残差结构在深层网络中利用跨层将浅层和深层的卷积层连接,使卷积层对特征图的残差进行拟合,大幅降低了训练过程的计算复杂度,同时也减少了梯度弥散的现象。
本文对残差网络的中间层进行改良,在其中引入了改良的密集块结构。而所谓密集块结构,见文献[20],就是一种具有密集连接的卷积神经网络;在该网络中,任何两层之间都有直接的连接,也就是说,网络每一层的输入都是前面所有层输出的并集,而该层所学习的特征图也会被直接传给其后面所有层作为输入。
而本文独具匠心,将残差块与密集块结构相结合,提出了改良的密集块结构(Improved Dense Block, IDB),如图5所示。
1.4 误差函数构造
前文中已有提及,输入的低分辨率图像与其对应的高分辨图像的低频部分信息基本一致,从而导致两者的残差图像的像素值大多数很小甚至很多为0。为了学习高频部分端到端的映射函数F,本文方法中训练高频部分信息的密集卷积神经网络采用了残差学习的思想,在图像重建过程中构造了本网络模型的重建误差函数H(λ),定义为:
H(λ)=1N∑Ni=1‖(Zi-Xi)-F(limx→∞ Xi;λ)‖2=
1N∑Ni=1‖r-F(limx→∞ Xi;λ)‖2(3)
其中:N是训练样本的数量,Xi为输入的第i幅低分辨率图像,λ={W1,W2,…,Wn,b1,b2,…,bn},r是标准的高分辨率输出Zi与低分辨率输入Xi的残差图像信息。
2 实验结果与分析
由于超分辨率重建的任务是得到与原始高分辨率图像尽可能相近的重建图像,因此对于数据集{Xi,Zi}Ni=1训练的目标为求解使得原始高分辨率图像Zi和重建图像i的平均欧氏距离最小的W和b,即为:
W,b=arg minW,b12N‖Zi-i‖22(4)
峰值信噪比(Peak Signal-to-Noise Ratio, PSNR)和结构相似度(Structural SIMilarity, SSIM)是衡量图像重建的质量时用得較广泛的两个指标[21],前者对处理后的结果跟原图相比的误差进行定量计算,PSNR愈高,说明失真愈小;SSIM越逼近1,说明处理后的结构与原图结构极为近似,即生成的结果图更好。故本文采用这两个指标来客观评价各类重建方法的优劣,对于原始高分辨率图像Zi和重建图像i,PSNR和SSIM的表达式为:
PSNR=10·lgMN‖Zi-i‖2(5)
SSIM = (2ufuf⌒+ C1)(σff⌒+ C2)(uf 2+ uf⌒2+ C1)(σf2+ σf⌒2+ C2)(6)
其中:M、N均为图像的尺寸,Zi为原始高分辨率图像, i为重建后的超分辨率图像,uf和σf分别为真实高分辨率图像的平均灰度值和方差, uf⌒和σf⌒分别为重建后图像的灰度平均值和方差, σff⌒为原始高分辨率图像和重建图像的协方差,C1、C2均为常数,且取C1=(k1L)2,C2=(k2L)2,k1=0.01,k2=0.03,L=255。
2.1 实验配置
本实验的训练平台为:操作系统为 Ubuntu 14.04,CPU为Core i7-7700K(Quad-core 4.2GHz),显卡为 NIVID GTX 1080ti。训练测试平台为CUDA8.0,cuDNN5.1, Pytorch0.4,python3.5。在主要参数学习率的设置上,本文采用的是学习率衰减的办法,这样能有效防止训练时间过长。设定初始学习率为0.001,每迭代100000次,学习率降为原来的1/10,采用随机梯度下降法(Stochastic Gradient Descent, SGD)对网络进行训练。
网络结构参数如表2所示,其中kerner_size为卷积核的尺寸,padding为输入的每一条边补充0的层数,bias为是否添加偏置。
为了更加全面地展示出本神经网络的效果,本文选取了4个相关的方法在相同的数据集中进行比较,这些方法包括:双三插值、A+[22]、Self-Exp[23]和SRCNN[14],对比中所用的方法的代码,均从作者项目代码的公开网页上获得,其中A+、Self-Exp以及SRCNN方法代码网址分别为http://www.vision.ee.ethz.ch/~timofter/software/AplusCodes_SR.zip;
[5]王鑫,朱行成,宁晨,等.融合暗原色先验和稀疏表示的水下图像复原[J].电子与信息学报,2018, 40(2):264-271.(WANG X, ZHU X C, NING C, et al. Combination of dark-channel prior with sparse representation for underwater image restoration [J]. Journal of Electronics and Information Technology, 2018, 40(2):264-271.)
[6]郭相凤,贾建芳,杨瑞峰,等.基于水下图像光学成像模型的清晰化算法[J].计算机应用,2012,32(10):2836-2839.(GUO X F, JIA J F, YANG R F, et al. Visibility enhancing algorithm based on optical imaging model for underwater images [J]. Journal of Computer Applications, 2012, 32(10): 2836-2839.)
[7]QUEVEDO E, DELORY E, CALLIC G M, et al. Underwater video enhancement using multi-camera super-resolution [J]. Optics Communications, 2017, 404: 94-102.
[8]LI J, LI Y. Underwater image restoration algorithm for free-ascending deep-sea tripods [J]. Optics and Laser Technology, 2019, 110: 129-134.
[9]张颢,范新南,李敏,等.基于光学成像模型的水下图像超分辨率重构[J].计算机与现代化,2017(4):7-13.(ZHANG H, FAN X N, LI M, et al. Underwater image super-resolution reconstruction based on optical imaging model [J]. Computer and Modernization, 2017(4): 7-13.)
[10]LU H, LI Y, NAKASHIMA S, et al. Underwater image super-resolution by descattering and fusion [J]. IEEE Access, 2017,5: 670-679.
[11]NAKAGAWA Y, KIHARA K, TADOH R, et al. Super resolving of the depth map for 3D reconstruction of underwater terrain using kinect [C]// Proceedings of the 2016 IEEE 22nd International Conference on Parallel and Distributed Systems. Piscataway, NJ: IEEE, 2016, 1: 1237-1240.
[12]LU H, LI Y, UEMURA T, et al. Low illumination underwater light field images reconstruction using deep convolutional neural networks [J]. Future Generation Computer Systems, 2018, 82: 142-148.
[13]PEREZ J, ATTANASIO A C, NECHYPORENKO N, et al. A deep learning approach for underwater image enhancement [C]// Proceedings of the 2017 International Work-Conference on the Interplay Between Natural and Artificial Computation, LNCS 10338. Berlin: Springer, 2017: 183-192.
[14]DONG C, LOY C C, HE K, et al. Learning a deep convolutional network for image super-resolution [C]// Proceedings of the 2014 European Conference on Computer Vision, LNCS 8692. Berlin: Springer, 2014: 184-199.
[15]張清博,张晓晖,韩宏伟.一种基于深度卷积神经网络的水下光电图像质量优化方法[J].光学学报,2018,38(11):88-96.(ZHANG Q B, ZHANG X H, HAN H W. Optimization of underwater photoelectric image quality based on deep convolutional neural networks [J]. Acta Optica Sinica, 2018, 38(11): 88-96.)
[16]LIM B, SON S, KIM H, et al. Enhanced deep residual networks for single image super-resolution [C]// Proceedings of the 2017 Computer Vision and Pattern Recognition Workshops. Washington, DC: IEEE Computer Society, 2017: 136-144.
[17]KIM J, LEE J K, LEE K M. Accurate image super-resolution using very deep convolutional networks [C]// Proceedings of the 2016 IEEE Conference on Computer Vision and Pattern Recognition. Washington, DC: IEEE Computer Society, 2016: 1646-1654.
[18]HE K, ZHANG X, REN S, et al. Spatial pyramid pooling in deep convolutional networks for visual recognition [J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2015, 37(9): 1904-1916.
[19]HE K, ZHANG X, REN S, et al. Deep residual learning for image recognition [C]// Proceedings of the 2016 IEEE Conference on Computer Vision and Pattern Recognition. Washington, DC: IEEE Computer Society, 2016, 1: 770-778.
[20]TONG T, LI G, LIU X, et al. Image super-resolution using dense skip connections [C]// Proceedings of the 2017 IEEE International Conference on Computer Vision. Washington, DC: IEEE Computer Society, 2017: 4809-4817.
[21]WANG Z, BOVIK A C, SHEIKH H R, et al. Image quality assessment: from error visibility to structural similarity [J]. IEEE Transactions on Image Processing, 2004, 13(4): 600-612.
[22] TIMOFTE R, de SMET V, van GOOL L. A+: adjusted anchored neighborhood regression for fast super-resolution [C]// Proceedings of the 2014 Asian Conference on Computer Vision, LNCS 9006. Berlin: Springer, 2014: 111-126.
[23]HUANG J-B, SINGH A, AHUJA N . Single image super-resolution from transformed self-exemplars [C]// Proceedings of the 2015 IEEE Conference on Computer Vision and Pattern Recognition. Washington, DC: IEEE Computer Society, 2015, 1: 5197-5206.
This work is partially supported by Youth Science Foundation of National Natural Science Foundation of China (61806076), the Students Platform for Innovation and Entrepreneurship Training Program of Hubei Province (201710512051, 201810512051).
CHEN Longbiao, born in 1997. His research interests include deep learning, image processing.
CHEN Yuzhang, born in 1984, Ph. D., associate professor. His research interests include photoelectric detection, image processing.
WANG Xiaochen, born in 1998. His research interests include deep learning, software engineering.
ZOU Peng, born in 1997. His research interests include image processing, deep learning.
HU Xuemin, born in 1985, Ph. D., associate professor. His research interests include computer vision, intelligent system.