基于深度残差网络的图像超分辨率算法

2022-07-27 09:13王剑峰
关键词:密集残差纹理

王剑峰,彭 中

(青岛科技大学 信息科学技术学院,山东 青岛266061)

针对低分辨率图像,借助图像处理技术手段,将其转化为具有丰富高频纹理的高分辨率图像的过程,称为图像超分辨率重建。它具有广泛的应用场景,比如生物特征识别、视频监控、医疗病症诊断等。基于深度学习网络的高分辨率图像重建方法很多,主要是基于学习的方法,包括近邻嵌入[1],稀疏编码[2]和随机森林[3],其主要实施骨干网络是卷积神经网络及其变种,其虽然具有多层次表达能力,可以学习和建模非线性函数关系,但这类重建模型仍然存在两个问题[4]:其一是没有充分利用原始低分辨率图像的分层特征,导致重构性能相对较低;其二是将像素级误差作为损失函数,易得到缺乏高频纹理过度平滑的图像,与人类对图像质量的感知差别较大。基于此,本工作提出了基于深度残差网络的超分辨率图像重建算法并对算法进行了实验验证。

1 算法原理

1.1 损失函数优化设计

给定低分辨率图像ILR,图像超分辨率(SR:super-resolution)重建旨在生成与ILR尽可能相似的高分辨率图像Iest。基于卷积神经网络(CNN)的方法使用前馈网络直接学习由所参数化的映射函数Gθ:

设(ILRi,IHRi)是训练样本对,为了学习IHRi,通过最小化特定的损失函数L,求解最优参数来构建Gθ:

其中PHR和PLR分别是训练样本IHR和ILR的概率分布。该损失函数由于考虑到了重构后图像内容上的语义偏差,从而可以使得重构图像的细节更加符合人们的视觉审美要求。

1.2 总体算法架构

整体结构如图1所示,主要包含4个主要环节:浅层特征提取、残差密集块、密集特征融合和上采样。对于深层CNN,卷积层的输出表示低分辨率图像ILR相应层的特征,它往往不能被充分利用。本工作通过残差密集块提取多层次局部密集特征解决该问题。残差密集块包含稠密连接层、局部特征融合以及局部残差学习。然后,全局特征融合以全局方式自适应地保留局部分层特征。最后,全局残差学习结合深、浅层特征,以从ILR中获取全局密集特征。该框架中各模块数据处理原理介绍如下。

图1 图像超分辨率算法网络结构图Fig.1 Network structure of image super-resolution algorithm

1.2.1 CNN 特征提取

它由包含两个卷积层的微型网络实现。第一个Conv层从ILR中提取特征F-1,然后将F-1用于下一步的浅层特征提取和全局残差学习。第二个Conv层的输出特征F0为第一个残差密集块的输入。

1.2.2 残差密集块

该模块是整体网络的基本组件,它包含卷积和Relu运算,产生多级局部密集特征。如图2 所示,它由密集连接层,局部特征融合和局部残差学习3部分构成,由于密集连接和局部残差学习,将此结构故称为残差密集块。

图2 残差密集块结构图Fig.2 Architecture of residual dense block

令F d-1和F d分别表示第d个残差密集块的输入和输出,则第d个块的第c个Conv层的输出为:

其中H dLEF表示第d个块中的1×1 Conv层。

最后,通过局部残差学习进一步改进信息流。局部残差学习还可以提高网络的表示能力,从而获得更好的性能。第d个块的最终输出为:

其中F-1表示I中浅层特征提取的第一个Conv层的输出。在充分提取低分辨率图像空间的局部和全局特征后,经过特征空间转换为UPNet的高分辨率特征。

1.2.4 语义映射和特征空间变换

语义映射是先提取超分辨率清晰图像中的具代表性的高维抽象特征,然后通过条件网络结构在空间上进行尺寸变换,以便为下一步的空间特征转移模块提供输入。该输入可以视为为空间特征转移网络的先验条件Ψ,通过自学习训练仿射变换参数对(γ;β)组成的映射函数M,自适应地影响输出,即给定ILR和语义映射图,仅一次前向传播就可以生成IHR:

1.2.5 VGG 网络与判别网络

感知损失与对抗损失分别对应一个单独的神经网络。感知损失的计算借助固定参数的VGG-16结构。判别网络也采用VGG 风格,它是本文中唯一一个输入输出的空间尺寸不一致的网络,结构如图3所示。网络使用参数为0.01 的Leaky Re LU激活函数。判别网络不仅区分输入是真还是假,还预测输入属于哪个类别[5]。训练图像被裁剪为只包含一个类别。该判别网络在测试阶段被移除。

图3 判别网络结构图Fig.3 Network structure of the discriminator

2 实验结果与分析

2.1 数据集及参数

2.1.1 语义分割网络数据集

使用新合并的数据集(OutdoorSeg)进行户外场景图像分割,如表1所示,该数据集包括ADE 数据集[6]的8 447幅图像,另外,为了平衡每个类别的训练样本,额外加入了Flickr网站的899幅山图像和COCO 数据集[7]的554 幅动物图像。模型在COCO 数据集上进行预训练,然后在ADE 数据集上fine-tune。

表1 分割网络所用数据集-Outdoor SegTable 1 Training dataset for segmentation-Outdoor Seg

2.1.2 超分辨率网络数据集

SR 网络使用两个数据集:Image Net数据集(移除低于30 k B的低分辨率图像)和OutdoorScene数据集的一个子集。使用Image Net数据集的450k个训练图像,预训练用于计算感知损失的VGG-16网络和用于计算对抗损失的判别网络,以避免陷入局部最优。将Outdoor Scene数据集分为训练集(Outdoor Scene Train)和测试集(Outdoor Scene Test)。训练集如表2 所示,裁剪Outdoor Scene Train的每个图像,使裁剪后的图像只包含一个类别,每个类别包含1k到2k的图像,背景类从Image Net中随机采样。Outdoor Scene Train 总数为10 324。Outdoor Scene Test总数为300,并且未经过预处理。

表2 Outdoor Scene Train每个类别的图片数目Table 2 Image number of each category in Outdoor Scene Train

2.1.3 数据集的预处理与增强

实验采用×2、×3、×4、×8的比例因子。首先遵循现有标准,使用Bicubic插值对IHR进行下采样来获得ILR。裁剪IHR和ILR为96×96和24×24大小,然后通过水平、垂直翻转和旋转90°的操作随机增加图像块。

2.1.4 参数设置

除了在局部和全局特征融合中1×1的卷积核,其余所有卷积核为3×3大小,并且进行零填充以保持大小不变。残差密集块中的所有层滤波器数目均为64,使用ESPCNN 上采样,最终的Conv层输出有3个通道,对应3通道IHR。在每批训练中,随机提取16个大小为24×24的ILR块作为输入。1 000次反向传播构成一个epoch。使用Adam 算法对参数进行更新。学习率lr的初始值为10-4,并且每200个epoch减少一半。

分割网络的输入是4倍bicubic上采样的ILR,其输出图像的尺寸相应地变为4倍,然后作为条件网络的输入,故条件网络的第一个卷积层使用4×4卷积核,步长为4,以将分割图还原成ILR尺寸。此外,为了避免图像中不同类别区域在卷积后相互混叠,保持特征图的宽高不变,条件网络剩余层的卷积核均为1×1。为了适应分割任务,将Res Net101的一些卷积层的膨胀参数设置为2和4,并去掉全连接层,增加上采样层。

2.2 结果分析

在SR 任务中,大都对IHR进行Bicubic下采样,人为地生成ILR,将此操作称为BI退化。本工作在BI退化的基础上完成SR 任务。为了比较不同方法的重建图像的质量,从两方面进行结果评估:基于PSNR 和SSIM、基于人类视觉效果。

2.2.1 基于PSNR 和SSIM

遵循主流的方法,将SR 结果图变换到YCbCr空间,提取Y 通道(亮度)上的PSNR 和SSIM 进行评估。在图像分类任务中,通过对从输入图像中导出的一组变换图像的预测进行平均来效果增强,称为self-ensemble策略。常见的变换方式包括裁剪,翻转和旋转。在SR 任务中,旋转和翻转应该在像素级别产生相同的HR 结果。因此,本工作对ILR应用旋转和翻转,以获得一组8个ILR′,然后对每个ILR′应用SR 方法,使用所有Iest′的平均值作为最终输出Iest。运行时间与转换次数是线性关系,且重建精度显著提高,PSNR 最多可增加0.24 dB。

将实验结果与6种最先进的SISR 方法(SRCNN,LapSRN,DRRN,SRDenseNet,Mem Net 和MDSR)进行比较。如上分析,更深更广的网络会带来更好的性能,但由于大多数方法的Conv层仅使用64个滤波器,为公平起见,将网络参数设置为:16个残差密集块,每个块包含8个Conv层,每个Conv层的滤波器数目为64。

表3显示了×2,×3和×4 的SR 结果,可以看出,提出的网络在所有数据集、所有比例因子上都表现最好。这表明残差密集块比SRDenseNet中的密集块和Mem Net中的内存块更有效。然而,当比例因子变大时,本文的方法性能略低于MDSR,主要有3个原因:首先,MDSR更深,大约有160层;其次,MDSR采用与VDSR相同的策略,即输入包含多种尺寸;第三,MDSR使用更大的图像块进行训练。

表3 SR算法的PSNR/SSIM 值Table 3 PSNR/SSIM values of SR algorithms

图4展示了比例因子×4时的视觉比较。可以看出,对于图4上部图像,大多数方法会产生明显的伪影和模糊的边缘,而本网络可以恢复更真实、更清晰的边缘。对于图4下部图像中的细线(红色箭头所指),其他方法都无法恢复,而本网络通过密集特征融合,充分利用了分层特征,因此有更好的重建效果。

图4 ×4比例因子时的视觉效果Fig.4 Visual results with scaling factor×4

基于PSNR 的方法最常用,但它倾向于产生模糊的结果,特别是在纹理丰富的区域,因此高PSNR并不意味着好的视觉效果。

2.2.2 基于人类实际视觉效果

基于人类视觉效果的评估更关注纹理质量,本工作的方法能够在一次前向传播中,为图像中的多个语义区域生成独特而丰富的纹理。如图5所示,语义分类的先验知识,即知道哪个区域属于建筑,有利于产生更丰富和更逼真的纹理。

图5 类别先验的示例Fig.5 Illustration of categorical prior

为了分析不同分类先验的影响,手动地将语义映射图更改为所有类别,如图6所示,给定I LR,在不同的分类先验下会生成不同的纹理,且纹理都呈现预设类别的特征,其中红框内为正确类别。无论输入如何,恢复的纹理总是具有规则的几何形状,这种现象表明了分类先验在SR 中的重要性。

图6 不同先验下的纹理重建Fig.6 Restored textures under different categorical priors

图7 为比例因子为×4 时,SRCNN,SRGAN,EnhanceNet和本工作网络的重建效果比较,后面三者均使用感知相似性度量的损失函数,SRGAN 和EnhanceNet在不同的图像块上产生无差别的纹理,而本网络可以产生更丰富、视觉效果更好的逼真纹理。虽然PSNR 值稍低,但三者的视觉效果均优SRCNN。

3 结 语

本工作在传统的超分辨率图像重建中融合两点改进,一是融合残差网络,使用全局特征融合以全局方式自适应地学习全局分层特征。二是使用合理的损失函数组合,并增加使用语义分割概率图对网络结构进行指导,借助空间特征变换模块调整网络中间层的特征。使训练出的网络性能更优。本工作的超分辨率(SR)算法的优势在于不受影像设备的限制,并且无需高精度的传感器等昂贵的硬件设备和严苛的图像采集环境、无需复杂的图像预处理和后处理,通过软件算法来实现图像分辨率的提高,经济成本和实现难度低。理论分析和试验测试证明了本算法的有效性,但是仍有提升空间,下一步可以在以下两个方面进行更深层的探究:1)目前大多数SR 方法都没有有效结合特定场景的领域知识,如何更有效地提取先验知识和网络结合,并在少量的训练图像中就能得到较好的HR图像,从而进一步提高SR 模型的性能和可解释性。2)引入全新的学习机制,目前的深度学习网络大多都是使用CNN 实现,在NLP领域的Self-Attention机制,Transformer等在图像的分类分割中都有全新的发展,将这些新的学习方法与SR网络结合是有潜力的研究方向。

猜你喜欢
密集残差纹理
基于残差-注意力和LSTM的心律失常心拍分类方法研究
融合上下文的残差门卷积实体抽取
耕地保护政策密集出台
密集恐惧症
基于残差学习的自适应无人机目标跟踪算法
基于深度卷积的残差三生网络研究与应用
肺纹理增多是病吗?
童梦
Seeing Red
TEXTURE ON TEXTURE质地上的纹理