基于深度复合卷积神经网络的低分辨率单影像复原
2020-02-24涂荣杰
涂荣杰
(浙江煤炭测绘院有限公司, 浙江 杭州 310016)
在图像处理领域和计算机视觉领域, 图像修复一直是一个十分热门的研究方向。 在医学影像、 遥感卫星影像和高清电视等领域被广泛应用[1]。 图像复原, 即针对低分辨率或超低分辨率的图像, 采用特定的模型或算法对其分辨率进行修复, 从而得出清晰度明显提升的图像。 但现有图像修复方法较为单一, 主要是将多张不同时间维度的图像作为输入数据, 剔除各个图像中的干扰信息, 对其主要特征信息进行提取收集, 采用叠加融合的方式生成一幅纹理细节清晰的高分辨率图像。 1964 年, HARRIS首先提出超分辨率复原的概念[2], 他针对单图像的特点进行了长期的实验研究, 得出了一套较为完整的理论依据, 但图像复原质量较差, 存在一定的局限性。 随后, 将深度复合图像用于超分辨率的频域处理上[3], 并将一些扩展方法也引入到超分辨率复原中[4-5]。 一些空域超分辨率复原方法在混合运动模型、 过滤和插值的基础上取得了有效的研究进展[6-7]。 随机场模型 (MRF) 通常用于预测超分辨率复原的极大后验的先验信息[8]。 一些学者为了去除噪声, 复原高分辨率影像, 提出了多尺度超分辨率的几种复原方法[9-11]。 在多数情况下, 深度复合图像不用于提高超分辨率, 而一直用于单图像复原, 大部分基于实例的主流方法都是利用先验信息[12]。
这些方法主要分两类: 基于相同图像之间的相似性及基于外部超分辨率图像的示例[13-15]。 一些用于改善低分辨率图像质量的恢复技术[16-20], 例如解决图像恢复的点扩展函数系数的联合评估方法[21],边缘检测和交替最小化组合的遥感图像恢复问题[22]。稀疏特征用于非均匀优化框架下的超分辨率恢复[23-24]。 近年来, 卷积神经网络 (CNN) 在图像处理中表现出色。 超分辨率卷积神经网络[25](SRCNN)在低分辨率和高分辨率之间训练端到端特征, 并且多个非线性特征层用作联合优化网络参数, 而无需额外处理。 权重结构的神经网络在超分辨率盲恢复中效果较好。 然而, 针对超低分辨率 (ULR) 单图像复原存在许多不足, 上述方法只适用于提高一定范围内的图像分辨率, 而包含3 个隐含层的超分辨率卷积神经网络能够解决这一问题, 并且能够构建更大更深的网络解决非线性所带来的不足。
本文在卷积神经网络的基础上, 对模型进行了一定的改进, 构建了一个通过模拟低分辨率及其对应的高分辨率图像而训练的深度卷积神经网络。 即使对于低分辨率图像也可以实现单图像盲复原。 所提出的方法基于整个图像预测端到端的特征图, 而不采用任何特定的恢复模型。 本文方法在很多方面不同于超分辨率卷积神经网络, 比如更多的层数与特征图, 不同的激活函数和更大的过滤器。
1 卷积神经网络
深度学习算法由HINTON 等[26]于20 世纪60 年代提出, 传统的CNN 是一种基于深度监督的学习神经网络, 同时也是具有共享权重结构位移不变的人工神经网络。 近年来, CNN 一直是国内外研究热点, 在图像处理、 语音识别、 对象检测、 计算机视觉等应用中取得了巨大的研究进展[27-30]。 通常,典型的CNN 网络架构包含多个隐含层 (见图1),它们由多个不同尺寸卷积核的卷积层和不同采样因子的池化层交替构成, 最后由全连接层对提取的主要特征进行组合输出。 CNN 的通道包括前向反馈和逆向反馈两个阶段。 CNN 采用平方误差作为整体代价函数E, 其表达式为
式中, x, m 分别为样本数据和样本数; h(x )为训练结果; y 为期望值; 上式第二部分为权值的正则项, 其中 λ 为权重衰减参数, W 为权值。
在输入训练样本 (x, y) 到 DCNN 中, 计算对应的实际输出O, 表达式为
式中, F 可表示为
式中, l 为卷积层; w, b 分别为卷积核和偏置。 降采样层池化公式为
式中, down(·) 为降采样函数; β, b 分别为乘性与加性偏置。
反向传播采用梯度下降法, 权值W 和偏置b 更新公式为
式中, η 为学习效率; i=1, 2, …, sl+1; j=1, 2,…, sl; l=1, 2, …, nl-1; 激活值得残差计算公式为
第l 层第i 个节点残差计算公式为
图1 典型的卷积神经网络架构
2 用于复原的深度复合卷积神经网络
基于传统的卷积神经网络模型在进行图像复原过程中存在不足, 在传统CNN 模型的基础上增加了多层卷积层与池化层对图像主要特征的提取。 构建深度复合CNN 模型能够模拟和学习高低分辨率图像间的映射, 对卷积和池化多次的原始图像中的重要特征信息依旧能很好地保留且不会丢失 (见第60页图 2)。
本文构建的深度复合卷积神经网络模型包含5 个主要的卷积层和2 个串行并联的子卷积层。 根据图像特征信息的差异, 5 个卷积层采用不同尺寸的卷积核, 第一个卷积层采用19×19 的卷积核, 第二个卷积层采用5×5 卷积核, 第三个卷积层采用1×1 卷积核。 在第一个卷积层和第三个卷积层中除了包含一个卷积滤波器外, 还包含一个并联的池化小滤波器。 在并联的小滤波器中采用双三次插值法进行上采样操作, 得出的特征结果作为第三个卷积层和第五个卷积层的输入数据。 在实验过程中, 采用卷积神经网络的初始尺度进行特征结果的预测, 并输出全尺寸图像。
图2 深度复合卷积神经网络
2.1 深度卷积网络结构
深度卷积神经网络 (DCNN) 是基于典型的CNN 模型构建的多个卷积层的网络模型, 该模型能够针对高低分辨率图像之间的映射进行模拟和学习, 从而不需要利用某个固定的修复模型对图像进行修复就能预测整幅图像的深度特征图。 深度卷积神经网络 (见图2 上半部分) 主要由两大部分构成, 即卷积与线性组合。
DCNN 模型对超低分辨率影像修复方法原理如下: 将超低分辨率影像输入到模型当中, 然后卷积层的图像信息被不同尺寸的滤波器进行特征提取,被提取的特征作为下一层网络的输入数据进行特征的再次提取, 最后经由全连接层将各部分特征信息进行组合输出, 从而得出复原图像。 其中每个卷积层的反馈由式 (3) 得出, 其表示式为
式中, σ(·) 为整流线性单元 (ReLU) 的卷积反馈。权重W 的大小为f×f×n, 其中f 为卷积核的尺寸,n 为每个卷积层的通道数。 DCNN 结构见表1。
表1 深度卷积神经网络结构(卷积核尺寸与每个卷积层的通道数)
2.2 深度复合卷积网络结构
基于深度卷积神经网络的模型架构, 本文采用附加的池化和上采样函数 (见图2 下半部分) 构建深度复合网络模型。 与DCNN 不同的是, DCCNN在第一个和第三个卷积层之后叠加并联了两组滤波器, 对卷积层的特征信息进行池化和上采样操作。经过复合滤波器输出的特征信息, 分别被输入到第三和第五个卷积层 (卷积核尺寸为5×5) 中进行卷积, 并采用ReLU 函数得到特征图。
基于式 (5), (6) 和 (7), DCNN 的权重矩阵和池化卷积计算公式为
式中, 参数 0.9 为变量; η 为学习率, 是可调节参数。
与SRCNN 相比, 本文构建的模型由于在第一个和第三个卷积层下方并联了包含池化层的小比例尺滤波器, 增加了网络模型对重要特征信息的获取深度, 使得该模型算法中的学习率收敛速度快、 收敛范围广。 本文利用式 (10) 来调节样本训练的学习率, 其公式为
式中, epochs 为目前迭代次数; max_epochs 为固定迭代次数; Lrepochs和Lrepochs-1分别为目前和上次迭代的学习率。
3 低分辨率单影像复原实验
本节对构建的深度复合神经网络模型 (DCCNN) 进行实验效果测试, 采用Image Net 图像数据集作为实验数据, 利用不同缩放比例的网络结构与最新的深度学习模型 (SRCNN) 进行模拟实验的对比和分析, 本节实验将采用不同图像数据集对本文模型进行定性和定量分析, 以验证其对低分辨率单影像复原的有效性。
实验数据: Set5 数据集、 Set14 数据集、Berkeley Segmentation 数据集和Image Net 数据集。
本文实验过程中的深度复合卷积神经网络的滤波器一共有7 个, 其中包括5 个主要卷积层和2 个串联的池化层。 图像修复实验中, 每50 幅图像为1 个训练序列。 实验中迭代数设置为100 (max_epochs), 学习初始率为 0.1, 迭代周期为 10。 图3中, 当学习初始率为 1.0 时, DCCNN 在 100 个迭代次数内难以收敛; 当学习初始率为0.01 时, 模型在40 个迭代次数进行收敛, 但收敛效果较差;当学习初始率为0.1 时, 模型在30 个迭代次数进行收敛, 收敛速度快, 收敛效果稳定。
在定量和定性方面, 通过不同缩放尺度因子,将 DCCNN 与 Bicubic, A+, RFL, SelfEx 和 SRCNN 方法进行对比。 对比函数采用目前使用较为普遍的PSNR (峰值信噪比) 和SSIM (结构相似度),对比结果见表2。 从表2 可以看出, 本文方法在缩放尺度×2, ×3 和×4 方面效果都很突出, 仅在缩放尺寸为×2 的 Image Net 数据集中, PSNR 值与SRCNN 方法相差 0.02。 第 62 页图4 为采用 SRCNN 模型和DCCNN 模型对超低分辨率影像 (ULR)进行复原的前后对比图, 可以看出, 采用DCCNN的复原图像, 图像边缘细节更平滑, 图像特征识别度更高。
图3 不同学习初始率的PSNR 的性能曲线
表2 缩放尺度因子为×2、 ×3 和×4 在数据集 Set5, Set14, B100 和 INet200 上的平均 PSNR/SSIM 比较
可以看出在采用DCCNN 修复的图4-a 图像中, 人物眼部边缘细节平滑, 识别度高; 图4-b 图像中斑马黑白纹理界限分明; 图4-c 图像中房屋墙体边缘清晰; 图4-d 图像中水体与陡坎的边缘处清晰可见。 由复原影像图片可以明显看出, 在人物、动物、 建筑物和水体上, DCCNN 模型能够很好地修复图像细节信息, 显著提升超低分辨率图像的整体分辨率和可识别度。 进而将DCCNN 应用于超低分辨率的遥感影像复原, 使用的遥感影像经过降采样操作后, 分辨率较低, 地物边缘特征模糊, 复原后的遥感影像地物边缘信息清晰, 与SRCNN 的修复图像相比, 噪声较少, 识别度高, 整体分辨率明显提升 (见图5)。 从定量方面进行对比, 本文方法在峰值信噪比、 结构相似度、 信息熵和平均梯度上的值分别为 31.12, 0.880 6, 7.39, 4.10, 效果优于SRCNN 方法。 在标准差函数上, SRCNN 方法效果优于本文方法 (见表3)。 综上所述, 以定性和定量相结合的评估方法对不同的复原方法进行效果对比, 本文基于深度复合神经网络构建的复原模型修复的图像细节纹理清晰, 物体边缘辨识明显, 噪声较少, 能够较好地复原超低分辨率图像。
图4 采用DCCNN 模型复原超低分辨率图像
4 结论
图 5 采用 DCCNN 与SRCNN 模型复原超低分辨率影像对比
表3 本文方法与SRCNN 复原结果的质量评价函数对比
本文针对超低分辨率单影像的特点, 基于卷积神经网络模型构建了一种深度复合的图像修复模型。 本文模型采用附加的最大池化和上采样函数,为确保空间局部输入模式的稳定性, 复原模型在利用低级和高级特征图构建深度复合网络的同时, 采用了大尺度卷积层串联小尺度卷积层。 本文利用基于迭代次数的方法提升学习速率, 以提高收敛速度和样本训练的稳定性。 本文通过使用多个不同数据集生成的模拟数据集训练深度复合网络, 从而对低分辨率单影像进行修复。 实验结果表明, 本文模型可以显著提高低分辨率影像的质量, 特别对于超低分辨率单影像的复原, 在PSNR 和SSIM 方面效果优于较好的超分辨率卷积神经网络(SRCNN)方法。