APP下载

基于双向循环网络的变色龙视觉超分辨率图像重建

2023-10-08杨改娣黎敬涛宋开雨

关键词:低分辨率高分辨率双向

杨改娣,黎敬涛,宋开雨

(昆明理工大学 信息工程与自动化学院,云南 昆明 650500)

超分辨率图像重建在图像压缩、医学成像、遥感成像、公共安防等计算机视觉子领域有广泛应用[1-4],并且在图像识别、目标检测、目标分割等许多监督式学习任务的预处理阶段有重要作用[1].监督式学习训练阶段使用的训练样本需要对目标进行标注,但由于拍摄过程的不稳定性或某些特定领域采集环境的影响[5],获取到的图像往往是低分辨率的.低分辨率图像在进行标注时由于缺乏高频细节,会出现目标对象误标和漏标问题,尤其训练集中有相似目标和小目标的图像,影响更为明显.因此,得到超分辨率图像是提高监督式学习任务性能的保障.

Dong 等[6](SRCNN)首次利用卷积网络实现超分辨率的重建,但Shi 等[7](ESPCN)认为SRCNN使用插值进行预上采样操作影响了性能,认为应让网络从训练样本中学习如何进行放大,便将预上采样操作替换为在重建操作之后增加一个亚像素卷积层来实现放大,这种方法在降低SRCNN 计算量的同时重建效果也得到改善.Ledig 等[8](SRGAN)则认为SRCNN、ESPCN 以及其他使用均方误差(Mean Square Error,MSE)作为重建目标损失的算法,其模型重点学习的是颜色、亮度等像素上的差异而非图像固有的语义差异,导致重建出来的图像过于平滑,缺乏高频信息,在感知上不令人满意.对此,SRGAN 定义了感知损失函数,并利用可以生产具有真实图像感知的生成对抗网络来重建超分辨率图像.Haris 等[9](DBPN)则仍然使用MSE 作为重建损失函数,通过设计具有自回归功能的上下采样单元构成网络,利用反馈机制挖掘低分辨率图像与高分辨率图像之间的相关性信息来重建超分辨率图像,该算法同样提升了峰值信噪比(Peak Signal to Noise Ratio,PSRN)和结构相似性(Structural Similarity,SSIM)值[10].除了在网络结构、损失函数的讨论之外,Blau 等[11]关注算法的评估指标,用数学理论证明失真与感知质量并不是完全相关,有时候较大的失真也可能有较好的感知质量,为此提出新的评估指标平衡两者.

近年来,为了改善使用MSE 作为重建目标损失导致重建出来的超分辨率图像在失真和感知两个属性上难以兼得的问题,许多改进算法相继被提出.段丽娟等[12]鉴于小波变换能够将图像内容的“粗略”和“细节”特征进行分离,提出一种基于小波域的深度残差网络,解决传统的神经网络方法忽略重要细节的问题.也有许多研究者在SRGAN模型上进行优化改进,丁玲等[13]为缓解判别器在接收高分辨率图像作为输入时,输出判别信号不稳定问题,设计了一个稳定的基于能量的辅助对抗损失;李强等[14]与辛元雪等[15]方法相似,均删除生成网络中的所有批归一化层,设计多级残差密集连接模块,重新改进网络结构.针对一些算法忽略了特征通道间相关信息以及网络数据传递中信息丢失问题,蔡体健等[16]、许娇等[17]提出多尺度残差融合与通道注意力相结合类重构网络;蔡文郁等[18]将残差与注意力机制引进到循环生成对抗网络中.

这些算法主要对生成对抗网络[19]、残差网络[20]等这类单向机制进行改进,虽然在一定程度上重建效果有所提高,但单向机制只从一个方向学习低分辨率与高分辨率图像之间的信息,不能同时挖掘低分辨率图像演进到高分辨率图像和高分辨率图像退化到低分辨率图像两个方向信息,导致在超分辨率特征重建时,两者的相关性信息没有得到充分利用,进而限制了网络性能,影响重建效果.本文受《每日邮报》报道的变色龙眼睛有着可以同时向前向后看的非凡视觉功能一文启发[21],借助具有可以结合序列演进前向与反向两个方向给输出提供不同方向时间信息功能的双向循环神经网络(Bidirectional Recurrent Neural Network,BRNN)[22],进行网络模型设计.变色龙的两只眼球可以360 度独立旋转,两只眼睛可以同时注视两个不同方向,有非常宽广的视野范围,这一特殊功能帮助他们更快地捕捉到昆虫[23].而双向循环神经网络的前向循环网络和反向循环网络如同变色龙的两只眼睛,同时看低分辨率图像如何演进到高分辨率图像以及高分辨率图像如何退化到低分辨率图像两个过程.通过双向循环机制获取两个方向信息,在重建超分辨率特征时将这两个分向上的特征联合起来进行最终预测,实现在超分辨率图像重建过程中失真和感知属性的兼顾,改善重建效果.

1 基于双向循环网络的变色龙视觉超分辨率图像重建算法

本文提出的基于双向循环网络的变色龙视觉超分辨率重建算法,定义了特征演进和退化序列,并在VGG[24]基础结构上设计了低分辨率图像到高分辨率图像演进和高分辨率图像到低分辨率图像退化网络;将演进和退化网络对应应用为双向循环网络的前向循环和反向循环网络结构.完整的SRBRNN 网络结构如图1 所示,包括一个双向循环重建模块和两个卷积模块,其中双向循环重建模块包含特征演进和退化网络以及双向循环超分辨率特征重建网络.特征演进和退化网络模拟低分辨率图像到高分辨率图像演进和高分辨率图像到低分辨率图像退化两个过程;双向循环超分辨率特征重建网络的两个循环网络则模拟变色龙的两只眼睛,负责获取演进和退化两个过程信息.网络模型采用先放大再修复流程,将低分辨率图像先放大到目标尺寸作为网络输入,并经过卷积特征提取模块1 提取低分辨率图像特征,然后把提取的特征送给BRNN 进行超分辨率特征重建,最后在卷积模块2 中对重建的超分辨率特征进行特征通道数调整,输出超分辨率图像.

图1 SRBRNN 网络结构Fig.1 The network structure of SRBRNN

1.1 特征演进和退化网络特征演进和退化网络主要功能是对卷积特征提取模块1 提取到的低分辨率图像特征进行加工,构造像素到语义特征演进序列和语义到像素特征退化序列,模拟低分辨率图像到高分辨率图像演进和高分辨率图像到低分辨率图像退化过程.采用VGG 网络作为特征演进和退化网络的骨干模型.VGG 模型的不同深度卷积层梯度机制,可以提取不同类型特征,浅层更多是颜色亮度像素特征,深层更多是语义特征.将通道数逐层加深方向提取到的各层特征定义为像素到语义特征演进序列,对应低分辨率图像到高分辨率图像演进过程信息;而通道数逐层递减方向提取到的各层特征定义为语义到像素特征退化序列,对应高分辨率图像到低分辨率图像退化过程信息.

网络结构如图2 所示,将序列演进方向称为Forward VGG,序列退化方向称为Backward VGG,图2 中的k表示卷积核数.每个卷积层均采用3×3小卷积核,与SRCNN 使用的5×5、9×9 大卷积核相比,多个小卷积核降低计算量的同时具有更强的非线性表达能力,可以学习到像素与语义特征之间更丰富、精准的映射关系.

图2 特征演进和退化网络Fig.2 Feature evolution and degenerate networks

1.2 双向循环超分辨率特征重建网络双向循环超分辨率重建网络的双向循环机制通过像素到语义特征演进序列和语义到像素特征退化序列不同方向的信息交流,并结合低分辨率图像到高分辨率图像演进及高分辨率图像到低分辨率图像退化两个过程信息,对低分辨率图像与高分辨率图像之间的相关性信息进行全面推理学习,使网络在重建超分辨率特征时可以兼顾到失真和感知两个属性.

双向循环超分辨重建网络由输入序列、两个循环网络和输出序列组成,输入序列为卷积特征提取模块1 提取到的低分辨率特征,前向循环和反向循环网络的网络模型分别为Forward VGG 和Backward VGG,输出序列则是前向循环网络以及反向循环网络的各个同层输出特征对应叠加.双向循环网络推理流程:前向循环网络Hi层的输入由输入序列Xi特征和前向循环网络Hi-1层的输出特征同时控制,而反向循环网络Hi层的输入由输入序列Xi特征和反向循环网络Hi+1层的输出特征同时控制,然后前向和反向循环网络的同层输出特征同时输入到输出模块G中.前向和反向循环网络的同层输出特征,一个来自演进过程中的特征,另一个来自退化过程中的特征,输出模块对接收到的多种像素与语义特征组合进行信息整合后作为超分辨率特征序列输出.BRNN 结构如图3 所示,推理流程如式(1)~(4).

图3 BRNN 网络结构Fig.3 The network structure of BRNN

1.3 损失函数SRBRNN 使用的损失包括MSE和双向循环超分辨率特征重建网络输出序列的最后一个特征映射之间的欧氏距离,损失函数如式(5)~(7)所示.经过SRBRNN 网络的双向循环信息交流,输出的超分辨率图像包含了丰富的低分辨率图像与高分辨率图像演进和退化过程信息,使得Lmse可以兼顾优化超分辨率图像与高分辨率图像之间失真和感知差异;LG特征损失辅助优化感知差异.

式中:r表示图像通道数(r=3),表示源高分辨率图像第 (x,y) 像素点的像素值,表示重建超分辨率图像第 (x,y)像素点的像素值,W、H和W j、H j表示输出特征图的尺寸大小,ϕj()表示双向循环超分辨率特征重建网络输出序列第j个特征图的每个像素值.

2 实验及结果分析

实验在Set5[25]、Set14[26]、BSD100[27]基准测试集上进行4 倍重建,并用PSNR 和SSIM 指标对算法效果进行评估.为证明算法的有效性,将Bicubic[28]、SRCNN、ESPCN、SRGAN、SRResNet、DBPN、EMSRN[17]算法作为对比实验.实验硬件平台为64 位Windows 操作系统,配合2 块GTX 2080 TI 显卡加速,深度学习框架为Pytorch1.11 版本.

实验设置如下:训练样本采用RGB 三通道图像,使用大小为16 的批训练,中心裁剪加载图像96×96 的子块作为原始高分辨率图像,对原始高分辨率图像进行4 倍双线性降采样后再使用双三次插值进行放大到目标尺寸作为低分辨率图像,原始高分辨率图像与低分辨率图像构成训练样本对.训练使用LSRBRNN损失函数和Adam 优化器(β1=0.9,β2=0.999,ε=10-8),学习速率设为η=10-4,进行10 轮预训练.

表1 显示SRBRNN 算法与各个比较算法在Set5、Set14、BSD100 测试集经过4 倍重建后的PSNR 和SSIM([0,1])结果及模型大小对比,最优结果加粗标出.可以看出,与Bicubic、SRCNN、ESPCN、SRGAN、SRResNet、DBPN、EMSRN 算法相比,SRBRNN 算法的PSNR 和SSIM值最优;模型大小,实时性优势不突出.值得注意的是,EMSRN 算法的PSNR 和SSIM 值虽然优于Bicubic、SRCNN、ESPCN、SRGAN、SRResNet、DBPN 算法,但并不能很好地代表感知质量,所以增加Mean Opinion Score(MOS)主观评价指标,补充说明算法的重建效果.MOS 是让一定数量的观察者对重建出来的图像进行评分,然后计算所有观察者评分的平均值.MOS 取值范围[1,5],分值越高表示重建的高分辨率图像感知效果越好.为了与算法更公平地对比,对低分辨率图像进行4 倍重建.如表2 所示,SRBRNN 算法的MOS 值最大,重建效果最优,EMSRN 算法劣于SRGAN 和DBPN 算法.

表1 不同算法×4 的PSNR 和SSIM 结果与模型大小对比Tab.1 Comparison of PSNR and SSIM and model size of different algorithms ×4

表2 不同算法×4 的MOS 对比Tab.2 MOS comparison of different algorithms ×4

图4 展示了不同算法在4 倍重建图像的局部细节对比图,HR(High Resolution)表示源高分辨率图像.从图4 中可以看到SRBRNN 重构出来的蝴蝶翅膀上的纹理更丰富,线条更清晰,具有令人满意的视觉感知效果.图5 是Set14/Set5/BSD100/cocoVal2017/other 的部分图片测试效果,包含了不同类别事物,结果图中SRBRNN 重建出来的图像在失真与感知质量上均有较好表现.

图4 不同算法4 倍重建细节对比Fig.4 4× comparison of reconstruction details of different algorithms

图5 SRBRNN 算法不同测试集4 倍重建效果Fig.5 4× reconstruction effect of different test sets of SRBRNN algorithm

3 结论

本文借由变色龙视觉功能,结合双向循环神经网络结构,设计了双向循环变色龙超分辨率重建模型,为超分辨率图像重建任务提供了新的思考角度.通过在基于深度学习的超分辨率图像重建算法使用的基准测试集和评估标准上进行实验评估与比较,实验结果表明,在客观评估指标和主观评估指标上,SRBRNN 模型优于比其他算法,重建的超分辨率图像在失真和感知上都有较好表现.因使用VGG 作为双向循环网络的骨干网络,所以SRBRNN 模型参数略大,后续将关注模型的轻量化,让模型有更好的实时性.

猜你喜欢

低分辨率高分辨率双向
基于超分辨重建和公共特征子空间的低分辨率人脸识别
红外热成像中低分辨率行人小目标检测方法
双向度的成长与自我实现
基于偏移学习的低分辨率人体姿态估计
高分辨率合成孔径雷达图像解译系统
树木的低分辨率三维模型资源创建实践
一种软开关的交错并联Buck/Boost双向DC/DC变换器
高分辨率对地观测系统
一种工作频率可变的双向DC-DC变换器
基于Curvelet-Wavelet变换高分辨率遥感图像降噪