基于Inception-Residual和生成对抗网络的水下图像增强

2021-11-12 00:47王德兴袁红春
液晶与显示 2021年11期
关键词:卷积损失测试

王德兴,王 越,袁红春

(上海海洋大学 信息学院,上海 201306)

1 引 言

近年不断提及的海洋强国战略表明,海洋资源的开发和利用是我国发展的必由之路。为了充分地了解海洋,获取海洋信息具有重要意义。水下图像作为水下信息的载体,其对深海环境感知与资源探索发挥着重要的作用。由于水下环境较为复杂,水下图像往往会呈现出模糊、对比度低、颜色失真等退化现象。退化的水下图像对水下高级视觉任务造成了一定的挑战,如水下机器人的自动巡航、水下目标检测[1-2]等。因此,寻找一种有效的方法对退化水下图像进行增强成为一个亟需解决的问题。

目前为止,存在3类方法可对退化的水下图像进行增强处理,分别为:基于物理模型的方法、基于非物理模型的方法和基于数据驱动的方法[3]。基于物理模型的方法依据Jaffe-McGlamery水下成像模型,将水下图像增强操作看成是水下成像的逆过程,通过求解水下成像模型的逆运算以获得清晰的水下图像[4-9]。该类方法需利用水下成像光学属性或物理先验知识,并依据水下成像模型对参数进行估计。由于模型通常建立在假设的基础上,对模型参数的估计存在一定的偏差,会造成图像增强效果不佳。Berman[5]等提出了基于模糊假设的传输估计和基于灰色世界假设的衰减系数比估计。当环境比场景更亮时,大多数像素都指向同一方向,很难检测到霾线,因此该方法可能会失效。基于非物理模型的方法主要通过直接调整图像像素取值,以改善图像的视觉感知[10-13]。文献[11]提出一种基于小波变换的水下图像增强算法,将空域中的原始图像以某种映射方式变换到变化域中,在变化域中对图像进行处理,再变换到空域,以得到增强图像。小波变换在去除水下图像噪声方面取得了成功,但不能对水下图像存在的颜色失真、对比度低等问题进行有效处理。基于数据驱动的方法根据模型采用的主体结构可分为两种,即基于卷积神经网络(CNN)的方法[14-15]与基于生成对抗网络(GAN)的方法[16-17]。通常该类方法的网络层数过深,模型训练过程中容易出现梯度消失的现象。为了解决这一问题, He[18]等提出了深度残差学习,将多个卷积层级联得到的输出和输入图像相加再用Relu函数进行激活。特别是基于卷积神经网络的残差模型[19],在去模糊、对比度提升等方面表现良好。然而,一些水下图像增强方法在颜色校正上的效果还有待改善。Islam[20]等提出一种基于生成对抗网络的实时水下图像增强模型,该方法增强后的图像呈现出暗黑色,整体视觉效果较差。近年来,多尺度技术被广泛地应用在模式识别、信号处理和计算机视觉等领域中。通过多尺度技术可保证图像或特征大小不同时,能有效地提取出同等重要的关键点,从而有效地提升模型性能。

针对现有方法处理效果的不尽如人意,本文结合多尺度的Inception结构、残差学习思想和色彩感知损失,提出一种基于Inception-Residual和生成对抗网络的水下图像增强算法(IRGAN)。该算法由生成网络和判别网络两个部分组成,利用生成网络学习源域(退化水下图像的集合)与目标域(增强图像的集合)间的映射关系。其中,在生成网络中引入Inception-Residual(IR)模块,通过融合不同大小卷积核提取的不同尺度的图像特征来提高网络生成图像的质量。判别网络通过学习区分生成图像与参考图像,进而判别输入数据的来源。此外,通过构建包含全局相似性、内容感知和色彩感知损失的多项损失函数,进一步提升模型性能。实验结果表明,本文算法能有效地提高对比度,校正颜色偏差,提升图像视觉感知。

2 本文算法

2.1 IRGAN网络增强模型

本文提出一种水下图像增强模型IRGAN, 它被分为生成网络和判别网络两个部分。生成网络的结构由编码器与解码器组成,并与Inception-Residual模块相结合,以对退化的水下图像完成增强操作。它的目标是学习源域(退化水下图像的集合)与目标域(增强图像的集合)间的映射关系,从而生成视觉感知良好的水下图像。判别网络的结构与马尔科夫判别器类似,实现对生成图像与其对应的参考图像的判别。它的目标是区分来源于生成网络生成的图像与来源于真实分布的参考图像,以促进生成的图像更接近于参考图像。所提算法的执行过程如下:将退化水下图像作为生成网络的输入,经过网络的推理得到生成图像;再将生成图像与其对应的参考图像作为判别网络的输入,进一步计算出两张图像间的均方误差;将计算出的均方误差反馈到生成网络的各个层,以对网络的各层参数不断迭代更新,从而获得高质量、清晰的水下图像。IRGAN的网络结构以及数据流动方向如图1所示。

图1 IRGAN网络结构Fig.1 Network structure of IRGAN

2.2 Inception-Residual模块

Inception-Residual[21]模块将Inception模块与残差学习相结合,克服了深层网络的梯度消失问题,同时解决了过滤器尺寸的最佳组合问题。IR模块通过让网络自己决定最佳路径来帮助解决网络设计的困难,该模块由空间大小为1×1,3×3,5×5的卷积层和3×3的池化层4个并行网络层组成。为了解决较大的卷积核计算复杂度较大问题,采用1×1卷积进行优化,即先采用1×1卷积将特征的通道数降低,再对其进行相应的卷积运算。此外,为了将各个卷积层学习到的特征进行融合,将得到的特征图两两拼接(密集连接)后再进行卷积操作。进一步,将卷积操作得到的特征图按通道维度进行拼接,并将得到的结果输入到卷积核大小为1×1的卷积层中,使特征维数与IR模块的输入相匹配。最后,利用恒等映射[18]将一系列卷积层学习到的特征图与输入特征图相加,这有助于避免梯度消失问题,并保持整个网络的误差梯度。IR模块的结构如图2所示。

2.3 生成网络

为了获得高质量、清晰的水下图像,采用生成网络学习源域(退化水下图像的集合)与目标域(增强图像的集合)间的映射关系。由图3的生成网络结构所示,生成网络中的卷积层和上采样层大致是对称的,类似于Unet网络中的收缩路径和扩展路径;为避免图像的细节损失,网络结构引入跳跃连接。生成网络由5个卷积层、5个IR模块和5个上采样层3个主要部分组成。图3中,第一层的k5、n64、s2、S分别表示该层卷积核的尺寸为5×5、卷积核个数为64、步长为2、补零填充策略为same。BN(Batch Normalization)表示批量归一化。LeakyReLU和Tanh分别代表不同的非线性激活函数。此外,生成网络使用步长为2的步幅卷积代替传统的池化层,有效避免传统池化操作的局限性。生成网络中的一系列卷积层对输入图像进行下采样操作,输出8×8×512大小的特征图;并将输出的特征图输至IR模块处理,得到融合不同尺度特征信息的特征图;再利用生成网络中的上采样层对特征图尺寸放大,得到256×256×3大小的生成图像。

图2 Inception-Residual模块Fig.2 Inception-Residual module

图3 生成网络结构Fig.3 Generative network structure

2.4 判别网络

为促进生成网络生成的图像更接近于参考图像,采用判别网络学习生成的虚假图像和真实的参考图像间的差异。IRGAN的判别网络采用5个卷积层实现下采样,它类似于马尔科夫判别器(PatchGAN)[22]体系结构。如图4的判别网络结构所示,判别网络将生成的图像和对应的参考图像作为输入;将大小为16×16×1的补丁块作为输出。如果生成图像和参考图像的某个区域差别较小,则输出补丁块中对应的位置像素点的值接近于1,反之接近于0。在判别网络中,先使用Concat操作将生成图像与参考图像按通道维度叠加,得到256×256×6大小的图像;再将叠加后的图像通过一系列卷积层实现下采样,最终得到大小为16×16×1的输出,该输出表示生成图像和参考图像间差异的平均值。

图4 判别网络结构Fig.4 Discriminative network structure

2.5 损失函数

IRGAN网络模型通过生成网络和判别网络的交替优化实现训练,网络模型的训练过程与损失函数的最小化过程相对应。对抗网络的损失函数如式(1)所示:

Ladv=E(y)[log(D(y))]+
E(x)[log(1-D(G(x)))],

(1)

式中:D表示判别网络,G表示生成网络,x表示输入的水下图像,y表示与输入图像对应的参考图像,E表示数学期望。

由于单一的对抗损失Ladv很难约束模型进行训练,网络模型对退化的水下图像增强效果不佳。为解决上述问题,本文构建了一个多项损失函数,它由全局相似性、内容感知和色彩感知损失3部分组成。

全局相似性损失:大量研究表明,在目标函数中添加L1损失使G能够学习从L1意义上的全局相似空间中采样[23]。因此,我们在多项损失函数中加入了L1损失项,其计算过程可描述为:

L1=Ex,y[‖y-G(x)‖1],

(2)

式中:G表示生成网络,x表示输入的水下图像,y表示与输入图像对应的参考图像,E表示数学期望。

内容感知损失:图像内容感知损失项可以驱动G生成与参考图像内容相似的增强图像。受文献[24]、文献[25]的启发,将图像内容函数φ(·)定义为由预先训练的VGG-19网络的conv5_2层提取的高级特征。内容感知损失的定义如式(3)所示:

Lcon=Ex,y[‖φ(y)-φ(G(x))‖2],

(3)

式中:x表示输入的水下图像,y表示与输入图像对应的参考图像,φ(·)表示图像内容函数,G表示生成网络,E表示数学期望。

色彩感知损失:该损失项可促进G生成与参考图像色彩相似的增强图像,其计算过程可描述为:

(4)

式中:r、g、b分别表示参考图像与生成图像的红、绿、蓝颜色通道的差值;rmean表示参考图像与生成图像红色通道的平均值。

(5)

r=yc_r-G(x)c_r,

(6)

g=yc_g-G(x)c_g,

(7)

b=yc_b-G(x)c_b,

(8)

上述式中:x表示输入的水下图像;y表示与输入图像对应的参考图像;c_r、c_g、c_b分别表示图像的红、绿、蓝三颜色通道。

IRGAN使用多项损失函数进行网络模型的学习,这有利于网络的加速收敛,同时可以提高模型的鲁棒性。目标函数通过将对抗损失Ladv、L1损失函数、内容感知损失Lcon和色彩感知损失Lcol_per进行线性组合,得到公式(9):

L=Ladv+λ1·L1+λ2·Lcon+λ3·Lcol_per,

(9)

式中:λ1、λ2、λ3分别表示L1、Lcon和Lcol_per所占权重。

3 实验结果与分析

3.1 实验数据

由于现实世界水下图像的参考图像采集比较困难,对模型学习退化水下图像与其对应的增强图像间的映射关系造成了一定的挑战。为了解决缺乏成对的训练数据问题,Islam[20]等人提出大规模现实世界水下图像数据集EUVP。因此,我们利用现有的数据集EUVP 构造了一个用于训练IRGAN模型的数据集EUIDs。该数据集共有7 469张图像,它被划分为训练集和测试集。其中,包含作为训练集的3 700对配对的水下图像,作为测试集的69张水下图像。图5展示了训练集样本示例,第一行表示退化的水下图像,第二行表示对应的参考图像。

测试集一般用在训练结束之后,目的是评估最终训练好的模型性能。其中,测试集又被划分为测试集A和测试集B,测试集A包含46张有参考的水下图像,测试集B包含23张无参考的水下图像。图6表示测试集A与测试集B的样本示例,第一行表示测试集A样本示例,第二行表示测试集B样本示例。

图5 训练集样本示例Fig.5 Examples of training set samples

图6 测试集样本示例Fig.6 Examples of test set samples

3.2 实验设置

本实验在Windows操作系统下,基于Tensorflow和Keras深度学习开源框架实现。计算机的配置如下:NVIDIA GeForce RTX2070 Max-Q (8 GB) GPU,Inter Core i7-10750H CPU,主频2.60 GHz,内存16 GB。

在训练过程中,设置batch_size大小为4,将所有输入图像的尺寸缩放至256×256×3,并将其归一化到[-1,1]区间。公式(9)中的权重λ1=0.6,λ2=0.3,λ3=0.1。为了降低深度神经网络的训练难度,在部分卷积操作后加入批量归一化(BN)操作。它能加速模型的收敛、减小震荡、使训练过程更加稳定,同时可以防止训练后的模型出现过拟合。此外,采用Adam优化器(β1=0.5,β2=0.999)驱动模型进行学习;设置生成网络和判别网络的初始学习率为0.000 01,训练轮数epoch为50。

3.3 实验分析

为了证明所提算法在清晰度提升、对比度增强和颜色校正等方面的有效性,将其与现有的水下图像增强方法做对比分析。对比方法包括基于非物理模型的方法(CLAHE,文献[7]中的方法)、基于物理模型的方法(UDCP)、基于数据驱动的方法(Water-Net,FUnIE-GAN)。在实验部分,先对色彩感知损失项做消融实验,再对引入的IR模块是否可以提升模型的性能进行分析,最终分别对测试集A和测试集B中的退化水下图像做增强处理,并对各方法的实验结果做定性和定量的对比分析。

3.3.1 色彩感知损失项的消融实验

为证明采用色彩感知损失项对退化水下图像颜色校正的有效性,分别对包含色彩感知损失的IRGAN(withLcol_per)和不包含色彩感知损失的IRGAN(withoutLcol_per)进行实验。在测试集A上,采用全参考图像质量评价指标(PSNR和SSIM)对两种模型的性能进行对比分析,定量对比结果如表1所示。PSNR和SSIM值越大,表明增强后的图像亮度、对比度、整体结构以及颜色信息越接近参考图像。从表1结果来看,IRGAN(withLcol_per)在PSNR和SSIM评价指标上的取值均优于IRGAN(withoutLcol_per),表明Lcol_per可以提升模型性能,有效校正水下图像存在的颜色偏差,改善水下图像的色彩效果。

表1 IRGAN(without Lcol_per)和IRGAN(with Lcol_per)在测试集A上的实验结果

为了更加准确地评估色彩感知损失项对增强模型的作用,分别将IRGAN(withLcol_per)和IRGAN(withoutLcol_per)用于增强测试集B中的退化水下图像。本部分采用两种非参考图像质量评价指标(IE和NIQE)对增强后的结果进行评估。其中,信息熵(IE)可以表示图像信息的丰富程度,其值越大,图像包含的信息越丰富;自然图像质量评估(NIQE)可以表示图像色彩的自然程度,其值越小,图像越自然。定量对比结果如表2所示。从表2结果来看,加入Lcol_per后,信息熵(IE)和自然图像质量评估(NIQE)有更好的取值,均优于未加入Lcol_per的IRGAN(withoutLcol_per)模型。

表2 IRGAN(without Lcol_per)和IRGAN(with Lcol_per)在测试集B上的实验结果

3.3.2 IR模块的对比实验

图7 未采用IR模块和采用IR模块的对比实验结果。(a)水下图像;(b)GAN;(c)IRGAN。Fig.7 Results of comparative experiments without IR module and with IR module. (a) Underwater images; (b) GAN; (c) IRGAN.

为了证明采用IR模块的有效性,分别对本文模型和未采用IR模块的GAN模型进行实验,定性的实验结果如图7所示。图7中,未采用IR模块的GAN模型虽大致可以校正退化水下图像呈现出的蓝绿色调,但校正效果欠佳。与本文模型相比,GAN模型增强的图像鲜艳程度偏低,亮度偏暗,使得图像整体的视觉感知效果较差。而所提算法将Inception模块与残差学习相结合,克服了深层网络的梯度消失问题,有效提升了模型的性能,使得增强后的图像在清晰度、对比度和颜色校正方面均表现良好。

为了客观的评估IR模块对增强模型的作用,对测试集A和测试集B中的图像用上述两种模型分别处理。本部分考虑采用两种全参考图像质量评价指标和3种非参考图像质量评价指标对增强结果进行评估。其中,采用的全参考图像质量评价指标[25-27]包括PSNR和SSIM,非参考图像质量评价指标包括水下图像质量度量(UIQM)[28]、信息熵(IE)、基于梯度关联的图像质量评估(OG-IQA)[29]。定量的实验结果如表3和表4所示。

表3 GAN和IRGAN在测试集A上的实验结果

PSNR和SSIM的值越大,表明待评图像的亮度、对比度、整体结构以及包含的信息越接近参考图像。由表3可知,模型引入IR模块,使得增强后的水下图像与参考图像之间的差距更小,在图像亮度、对比度、结构信息等方面更接近于参考图像。

表4 GAN和IRGAN在测试集B上的实验结果

由表4中的实验结果可知,引入IR模块后,所提算法增强的水下图像在非参考图像质量评价指标上表现较好,均优于未引入IR模块的GAN模型。

3.3.3 在测试集A上的对比实验

为评估所提算法的性能,在测试集A上分别进行多次实验,将所提算法与现有的水下图像增强方法进行定性和定量的对比分析,对比方法包括CLAHE[6]、文献[7]中的方法、UDCP[4]、Water-Net[15]、FUnIE-GAN[20]。不同方法对测试集A中图像的处理结果如图8所示。图8中,CLAHE方法处理的退化水下图像出现曝光现象,增强效果欠佳,导致增强后的图像与其对应的参考图像存在一定差距。而通过文献[7]中的方法处理的图像呈现出黄色或淡蓝色颜色偏差,整体视觉效果较差。UDCP方法对图像引入了颜色偏差,主要呈现出蓝色或蓝绿色色偏。Water-Net方法有效去除了原始图像中存在的雾化,清晰度得到提升;但亮度偏暗,色彩鲜艳程度偏低。FUnIE-GAN方法通常可以对颜色失真的图像进行有效校正,但偶尔会引入暗黑色色偏,使得增强效果不佳。所提算法在清晰度、颜色校正和对比度方面均表现良好,有效地提升了图像的视觉感知。相比之下,所提算法增强的图像在多个方面均最接近于参考图像,并且有更自然的视觉感知。

图8 不同方法在测试集A上的定性对比。(a)水下图像;(b)CLAHE;(c)文献[7]方法;(d)UDCP;(e)Water-Net;(f)FUnIE-GAN;(g)本文方法;(h)参考图像。Fig.8 Qualitative comparison of different methods on test set A. (a) Underwater images; (b) CLAHE; (c) Method of Ref. [7]; (d) UDCP; (e) Water-Net; (f) FUnIE-GAN; (g) Our method; (h) Reference image.

为客观证明所提算法的性能,采用峰值信噪比(PSNR)、结构相似性(SSIM)两种全参考图像质量评价指标,将所提算法与现有的方法做定量对比分析。各个方法在PSNR和SSIM指标上的均值如表5所示。由表5可知,所提算法在PSNR和SSIM评价指标上均优于其他对比方法,表明所提算法能有效恢复图像中所包含的内容,提高图像的亮度和对比度。

表5 不同方法在测试集A上的定量对比

续 表

3.3.4 在测试集B上的对比实验

为了更加准确和全面地评估所提算法,将其与上述现有方法分别用于测试集B,并对各种方法处理的结果进行定性和定量对比分析。不同方法对测试集B中图像的处理结果如图9所示。由图9可知,基于非物理模型的方法(CLAHE,文献[7]中的方法)不能对图像的蓝绿色调实现完全去除,且引入颜色偏差,在颜色校正方面的性能欠佳。基于物理模型的UDCP方法增强的图像整体上呈现出暗黑色,且引入了蓝绿色色偏。Water-Net方法和FUnIE-GAN方法对图像的亮度提升、雾化去除和颜色校正等方面表现出不足,还有较大程度的改善空间。所提算法在图像的清晰度、对比度提升和颜色校正等方面均表现良好。相比之下,所提算法增强后的图像更加清晰自然,具有较好的泛化性能。

图9 不同方法在测试集B上的定性对比。(a)水下图像;(b)CLAHE;(c)文献[7]方法;(d)UDCP;(e)Water-Net;(f)FUnIE-GAN;(g)本文方法。Fig.9 Qualitative comparison of different methods on test set B. (a) Underwater images; (b) CLAHE; (c) Method of Ref. [7]; (d) UDCP; (e) Water-Net; (f) FUnIE-GAN; (g) Our method.

为了客观地评估所提算法,选取4种非参考图像质量评价指标——水下图像质量度量(UIQM)[28]、信息熵(IE)、自然图像质量评估(NIQE)[30]和基于梯度关联的图像质量评估(OG-IQA)[29],对经过上述方法处理后的水下图像进行评估、分析。其中,UIQM是水下图像色度度量(UICM)、水下图像清晰度度量(UISM)和水下图像对比度度量(UIConM)的线性组合,其值越大,图像在色度、清晰度、对比度方面表现越好。IE是衡量图像信息丰富程度的重要指标,其值越大,图像所包含的内容越丰富。NIQE仅利用在自然图像中观察到的信息对图像质量进行评估,其值越小,图像越自然。OG-IQA利用相邻梯度间的关联性对图像的失真程度进行描述,其值越小,图像视觉质量越好。各方法在客观评价指标上的平均得分如表6所示。由表6可知,除在NIQE客观评价指标上,所提算法在其他3个客观评价指标上均优于对比方法。如表6,所提算法的UIQM评价指标取值为2.863 4,比第二名高4.1%,表明所提算法在色度、清晰度、对比度方面表现得更好。在IE和OG-IQA评价指标上,所提算法取值分别为4.794 0和-0.779 6,分别比第二名高0.9%和4.3%,表明所提算法处理后的图像包含的信息量相对丰富,失真程度较小。综上,所提算法增强的水下图像在清晰度、对比度提升、颜色校正等方面表现得更为突出。

表6 不同方法在测试集B上的定量对比

4 结 论

针对水下图像存在模糊、对比度低和颜色失真等问题,本文提出了一种基于Inception-Residual和生成对抗网络的水下图像增强算法(IRGAN)。此外,根据公开的水下图像数据集构造了一个用于训练IRGAN模型的数据集EUIDs。IRGAN由生成网络和判别网络两个部分组成。生成网络中引入Inception-Residual模块,克服了深层网络的梯度消失问题,同时解决了过滤器尺寸的最佳组合问题,有效提升了水下图像的增强效果。生成网络用于生成视觉感知良好的水下图像;而判别网络实现区分生成的虚假图像和真实的参考图像,以促进生成网络生成的图像更接近于参考图像。先将原始图像缩放至256×256×3大小,再利用生成网络生成与参考图像在视觉感知上相似的图像,采用多项损失函数,令生成网络和判别网络轮流训练。实验结果表明,与对比方法相比,IRGAN在PSNR、UIQM和IE指标上的平均值分别为22.704 0、2.863 4和4.794 0,分别比第二名提升13.6%、4.1%和0.9%,表明所提算法在清晰度、颜色校正和对比度方面均表现良好,能有效提升图像视觉感知。

猜你喜欢
卷积损失测试
基于3D-Winograd的快速卷积算法设计及FPGA实现
胖胖损失了多少元
幽默大测试
从滤波器理解卷积
“摄问”测试
“摄问”测试
“摄问”测试
玉米抽穗前倒伏怎么办?怎么减少损失?
基于傅里叶域卷积表示的目标跟踪算法
一般自由碰撞的最大动能损失