张 骁,但志平,孙水发,李勃辉,方帅领
(1. 三峡大学 计算机与信息学院,湖北 宜昌 443002;2.三峡大学 水电工程智能视觉监测湖北省重点实验室,湖北 宜昌 443002)
由Ce Liu等[1]提出通过对特征点的聚类追踪来实现视频中动作放大,辅助人工获取视频中重要的变化信息。Wu等[2]提出了欧拉视频放大方法,对感兴趣的区域进行增强放大,为后续视频图像放大上提供了方法和依据。Wadhwa等[3]提出了基于相位的运动放大方法,该方法通过平移噪声提高放大图像生成质量。目前视频运动放大主要的应用领域包括非接触式心率测量[4]、视频伪造[5]判别等。
深度学习方法的引入为该领域提供了良好的研究基础。Kuchaiev O等[6]提出自编码网络,但当输入图像信息过于复杂时,这种端到端的网络模型在重构输出时会忽视重要的特征信息。Jie H等[7]提出针对图像特征提取的通道注意力机制(channel attention),该机制让网络利用全局信息有选择地增强有益特征并抑制无用特征,使得生成图像亮度、色彩、更加丰富,纹理、形状更加清晰。
常规卷积操作对图像中物体的未知形变的建模存在缺陷,J.Dai等[8]提出了可变形卷积(deformable convolution networks,DCN),DCN可以针对图像中不同的物体形变对尺度或感受野的大小进行自适应调整,但DCN会引入多余的背景信息,对物体的形变产生干扰。X.Zhu等[9]提出了DCNv2,在DCN的基础上添加了采样点的权重信息,提高了算法对几何形变的建模能力。Tae-Hyun Oh等[10]提出了基于深度学习的运动放大技术,结合欧拉放大的计算规则,设计了自主学习滤波器的网络架构,有效改善了图像的噪声伪影、细节缺失等问题。周飞等[11]提出基于可控金字塔分解的网络架构,将手工设计滤波器与课程学习策略相结合实现运动放大。
为解决基于深度学习的运动放大方法中存在的图像失真、伪影和轮廓变形、局部色彩丢失,亮度、对比度减弱等问题。本文提出了一种融合可变形卷积、通道注意力机制[12]的改进自编码网络模型。该网络模型既对尺度或感受野的大小进行自适应调整,同时添加采样点的权重信息,提高了网络对几何形变的建模能力,通过对图像不同运动区域的空间特征分配不同的权重信息,提高了生成图像色彩、亮度、纹理质量。实验结果表明,改进后的网络模型从定量分析和视觉效果上都有显著提升。
基于深度学习视频运动放大方法的自编码网络架构如图1所示,该网络架构主要是由编码器、放大器、解码器构成。网络的输入为连续的两帧图像IA、IB, 通过编码操作分别提取出图像的形状和纹理特征,放大器的作用主要是放大图像像素的位移变化,且整个放大过程是对形状特征进行操作。另外,纹理特征用来约束纹理损失,最后经过解码器将纹理、形状特征融合并输出放大图像IM。 网络中的编码器、放大器、解码器主要由卷积层和残差块[13]构成,目的是更好减少纹理、形状特征在卷积过程中的损失,这样更有利于适应不同尺寸的输入。
图1 自编码网络结构
自编码网络模型具体的计算流程为:首先编码器内部进行两次卷积操作和三次残差核计算,其次分别对提取出的特征进行不同尺度的变化,将特征分为形状和纹理特征,特征分离的作用是避免放大纹理特征带来的噪声干扰。对于两个编码器的输入IA和IB采用相同的操作,保证提取的形状特征尺寸一致。在放大器中计算输入图像IA和IB的形状特征像素位移差值,添加放大因子α进行放大,将放大差值进行卷积和残差操作后叠加回形状A, 得到放大后的形状特征。在解码过程之前需要将纹理和形状特征采样到相同尺寸,最终将输入IA的纹理特征与放大后的形状特征融合,将融合后的特征图通过上采样和卷积层恢复至原始尺寸。
该模型将深度学习的作为一种工具,解决了传统手工设计滤波器的问题。通过在大量数据集中训练,该模型通过自编码网络学习放大方法,极大地减少了生成图像中的噪声伪影、棋盘效应,提高生成图像的质量。但随着网络层数的逐步增加,在针对复杂场景下的微小运动,网络很难更精确学习到图像的运动特性,在放大倍数较高情况下仍会造成图像的噪声伪影、色彩缺失、轮廓变形等现象。为了使网络更有针对性地学习图像的运动特性,同时减少生成图像中色彩和轮廓的缺失,需要改进自编码网络模型,如:引入通道注意力机制、采用可变形卷积等,使卷积网络在训练过程中针对不同变化区域的特征分配不同的权重信息,并针对物体形变过程改变卷积核形状,提高网络的几何建模能力,因此,不仅能在一定程度上改善生成图像的色彩和纹理,而且能提高网络在较高倍数放大时的适应能力。
本文以基于深度学习的自编码网络架构为基准,网络主要由编码器、解码器、放大器组成。保留放大操作过程,主要对编码器和解码器进行改进。整体的网络架构如图2所示。
图2 改进网络结构
改进的网络同样采用两帧图像IA和IB作为输入,为确保编码器能够提取更准确的图像特征信息,在编码器内部将不同维度的特征信息分别用来表示图像的纹理特征FT和形状特征FS。 增加通道注意力模块提取纹理特征FT, 利用通道注意力机制的特性针对色彩、纹理变化不一致区域,分配不同的权重信息,更好地将浅层的图像纹理特征FT与深层次的结构信息融合。对图像中变化的形状特征FS, 采用可变形卷积提取,拓宽卷积视野,自适应调整卷积核的形状,融合更多的空间结构信息,提高网络的去噪能力,确保网络提取图像中更精确的动态变化特征信息。
在放大器的实现过程中,结合欧拉放大技术的线性与非线性原理,用I(x,t) 表示图像中原始像素的位置与时间的关系。像素集变化的计算规则如式(1)所示
(1)
(2)
其中,Gm代表整个放大操作过程。
由于线性放大过程容易产生噪声,因此引入非线性表达式,即利用放大器中的卷积层和残差块使放大过程呈现非线性的计算方式,如式(3)所示
(3)
其中,g() 表示是卷积层运算,h() 表示是残差核运算,相比于单纯线性放大拥有更好的运动放大效果,这样可有效避免将图像中的噪声信号放大。
最后,将提取的纹理特征与经过放大器处理后的形状特征作为解码器的输入,对纹理特征和形状特进行征融合后,经过多层残差处理,并保留残差块以减少图像损失,同时,在解码器引入通道注意力机制以减少纹理、形状特征融合后图像的色彩、亮度、对比度等细节损失,最终输出合成图像IM。
自编码网络在低分辨率空间中进行密集卷积计算时,通过自适应调整动态特征来弥补网络层数、参数带来的信息损失。自适应调整机制使浅层特征信息自适应地从上采样部分流向更高层次特征,更好地保持特征的有效性。传统的空间不变卷积核可能会导致图像纹理被破坏和过度噪声伪影,而可变形卷积改变了传统卷积方式,动态扩展了感受野,能够融合更多的空间结构信息,进一步提高去噪网络的性能。可变形卷积的卷积核感受野变化如图3所示。
图3 卷积感受野变化
图3(a)部分代表普通卷积的感受野,图3(b)、图3(c)、图3(d)分别代表加上偏移量后的感受野。以图3(a)为例,表示3×3的卷积核,卷积结构输出的特征图的点与卷积中心点对应,如式(4)所示
(4)
其中,r代表滑动窗口的规则网格,例如r={(-1,-1),(-1,0),…,(0,1),(1,1)},w表示卷积计算过程中的采样权重,k表示输入特征图对应位置的值,bn是b0在卷积核的偏移量,z表示卷积操作后输出特征矩阵值。
可变形卷积在原始卷积的基础上为每个点增加一个偏移量Δbn, 其中{Δbn|n=1,2,…,N},N=|r|。 为确保生成像素点与特征图中实际点对应,同时采用双线性差值方法保证获取像素的准确性。如式(5)所示
(5)
采用可变形卷积能够更有效地针对图像形状特征发生改变的情况,自适应调整卷积核的形状,提高运动物体特征的提取质量。
通道注意力机制可以较好解决图像特征提取过程中色彩、亮度、纹理损失等问题,不同的通道特征包含不同的加权信息,由于视频运动帧之间存在不同像素的运动变化差异,会造成色彩变化不均、纹理特征差异明显。因此,图像各通道不同类型的信息需要进行不同权重处理。扩展了神经网络的表征能力。通道注意力机制能够将不同层次特征融合,并自适应的从注意力模块中学习到不同的权重信息,同时会根据输出图像中变化的特征信息动态调整权重。本文中在处理视频运动过程中应尽可能减少亮度、色彩、纹理损失,保留浅层信息,更有利于形状、纹理特征的融合。
通过编码器提取图像IA的特征图FA∈W×H×C,C表示特征图的通道数,H、W分别代表特征图的高和宽。通道注意力机制能够对任意的输入信息构造运算单元,运算过程为
其中,Ftr表示对特征图卷积操作,UA表示输出特征集合。
为确保网络能够增加有利信息的提取,对通道之间的依赖关系进行精确建模,首先考虑将输出特征UA的全局空间信息压缩成一个通道描述器,即将特征图的形状从C×H×W变成C×1×1, 并通过一个全局平均池化层来实现通道统计用gC表示。具体实现如式(6)所示
(6)
其中,UC(i,j) 代表的是C通道的特征图UC在位置 (i,j) 的像素值,MP代表全平均池化局池化功能。为确保网络捕捉到通道之间非线性的相互作用关系,给不同的通道分配不同权重,将获取到的通道统计gC通过两个卷积层和Sigmoid、Rule函数激活,如式(7)所示
CAC=σ(Conv(δ(Conv(gC))))
(7)
其中,σ是Sigmoid函数,δ是Rule激活函数,最后将逐个元素输入FA与通道CAC的权重进行逐像素相乘,得到通过注意力机制提取后纹理特征信息FTA, 如式(8)所示
FTA=CAC×FA
(8)
本文在视频运动过程中提取通道信息时尽可能减少亮度、色彩、纹理损失,保留浅层信息,增强形状、纹理特征的融合。
(9)
在本文中主要是用于计算生成图像IM与输入图像IA之间对应像素差值的绝对值总和。
训练了数据集包含4类,分别是原始两帧图像IA和IB、 加入干扰的图像IC和真实放大的图像Im′。 计算生成图像IM与真实的放大图像Im′之间损失记为L1(IM,Im′),L1(IA,IC) 来表示IA与IC的纹理损失,L1(IB,Im′) 表示IB与Im′的纹理损失。此外,训练过程还需要对形状变化进行约束,用L1(IB′,Im′) 表示IB相对Im′的运动损失,总的Loss函数如式(10)所示
Loss=L1(IM,Im′)+λ(L1(IA,IC)+
L1(IB,Im′)+L1(IB′,Im′))
(10)
其中,λ参数设为0.1。
本文实验使用的显卡为单张12 GB显存的RTX 2080TI显卡,深度学习的框架为pytorch[14]。训练时学习率设置为0.0001,Batchsize设置为6,采用Adam优化器对网络进行优化。测试时设置Batchsize设置为3。
由于真实的微运动视频数据集有限,本文使用基于深度学习方法中的数据集[10]进行训练。数据集中包含FrameA、FrameB、FrameC和放大帧共4个文件,每个文件中包含10万张图片。分别包含遮挡、局部运动、色彩扰动、模糊、低对比度、静态场景等等来训练网络的泛化能力。数据集中图片分辨率为384*384的,为尽量缩短训练时间并确保网络学习所有可能图像变化特性,本文在实验阶段按类别选取20 000张图片进行训练。
测试使用的视频数据[15-17]均来源于相关研究领域,且视频的分辨率大小不同。其中Baby视频的分辨率为960*544,时长为10 s,帧率为30,将其分解为300张图像序列。guitar视频的分辨率是432*192,drone视频分辨率为960*540,Cat toy视频分辨率为640*360,gun视频分辨率为720*576,water视频分辨率为568*320,camera视频分辨率为521*384,crane视频分辨率为720*1280,wrist视频分辨率为640*352。这表明训练的网络具有很好的泛化能力针对不同的测试数据都能够变现出很好的网络特性。同时通过生成图片的细节图进行对比进一步说明实验有效性。
实验结果对比中,本文选用广泛应用于衡量生成视频质量的评价指标PSNR(peak signal-to-noise ratio)和SSIM(structural similarity)[18]来评价本文方法与其余方法生成视频的质量,并对评价结果进行对比分析。计算规则是将放大后的视频帧与原始视频帧计算求平均的PSNR和SSIM值。PSNR的值与MSE(mean-square error)成反比,而MSE表示生成图像与原始图像对应像素点的均方误差,生成图像质量越好表示相应的MSE越低则对应的PSNR值也就越高。SSIM主要是衡量原始图像与生成图像之间的亮度、对比度和结构三方面的相似性。通常用图像中像素的均值作为对亮度的估计,像素之间的标准差作为对比度估计,协方差用于度量结构相似程度,SSIM的取值范围在0和1之间,SSIM值越接近于1表示生成图像与原始图像越相似。相位方法[6]、基于深度学习方法[12]和本文方法不同的放大倍数下的平均PSNR和平均SSIM值的对比分析结果如下所示:
Baby、guitar视频实验结果的平均PSNR值见表1、表2,相比于相位方法、基于深度学习方法,本文的方法在较低放大倍数时有一定程度的提高,且在较高放大倍数时明显优于其它方法。这表明本文的方法能够表现出更好的几何建模能力,通过自适应改变卷积核减少生成图像细节损失。
表1 Baby视频平均PSNR值对比
表2 guitar视频平均PSNR值对比
Baby、guitar视频实验结果的平均SSIM值对比见表3和表4,随着放大倍数的不断增加,传统方法中的纹理损失越严重,引入通道注意力机制提高网络在生成图像的色彩、对比度、结构相似性上有一定程度的提升。
表3 Baby视频平均SSIM值对比
通过对比生成图像中的细节部位,更能体现本文算法的优势。选取生成视频帧序列中的第100帧图像,用黑色实线框标注为Baby胸部轮廓发生形变位置,黑色虚线框标注出图像的边缘轮廓位置。实验结果表明,本文的方法不仅能在放大10倍、20倍时达到相同的效果,而且在50倍及以上取得更好的效果,在发生形变的部位产生更少的噪声伪影,在图像边缘轮廓位置表现出更平滑的效果。
表4 guitar视频平均SSIM值对比
由图4实验结果显示,在放大10倍、20倍时对比原图相位方法生成的图像会产生轻微的棋盘效应,且图像的噪声明显,有轻微的色彩变化。本文方法与基于深度学习方法生成图像减少了棋盘效应和噪声伪影,统计结果相近。
由于相位方法无法放大较高倍数,这里主要对比深度学习方法和本文方法。从图5、图6实验结果显示,在Baby视频和guitar视频放大50、80、100倍情况下,将标注区域放大后能清楚看到本文中的方法在生成图像质量上有明显提升,能够很好保留轮廓细节;并且随着放大倍数的不断增加,深度学习方法的图像边缘部分产生形变,运动放大部位也出现更多的噪声伪影,细节缺失。而且本文提出的方法能够很好地保留原图像的边缘信息,进一步验证本文方法在较高放大倍数时表现得效果良好。
图4 Baby视频放大10、20倍对比
图5 Baby视频放大50、80、100倍对比
图6 guitar视频放大50、80、100倍对比
此外,本文在其余不同分辨率的视频上做了消融实验,在网络中加入不同模块进行测试。实验结果表明,本文对比深度学习方法,测试网络中单独加入可变形卷积模块和同时加入两个模块生成图像的平均PSNR和平均SSIM值都有一定程度的提升,在不同分辨率的测试数据集上效果也有所提升,选取的测试视频尺寸大小都不相同通过实验进一步验证了本文方法的有效性见表5、表6。
表5 测试视频放大80倍平均PSNR对比
表6 测试视频放大80倍平均SSIM对比
本文提出一种改进自编码网络方法用于提升视频运动放大生成图像的质量。对编码器提取的纹理特征通过通道注意力CA用于减少浅层纹理损失,利用可变形卷积DCN提高网络对图像中运动特征的建模能力,在解码器内部将图像的纹理、形状特征融合后通过通道注意力CA减少生成图像在色彩、纹理、对比度的损失。通过对网络参数的调整,在测试视频中,该方法能够有效解决高放大倍数下图像细节、轮廓缺失等问题,并较好保留图像纹理细节,减少噪声干扰。
在未来的研究中,我们将主要从2个方面继续深入研究:①增加通道注意力机制会产生更长的计算时间,我们将考虑在提升质量的同时进一步提高效率;②针对连续性的运动特征需要更长序列的输入,我们将考虑进一步简化输入序列。