基于多尺度融合网络的视频快照压缩感知重建
2021-12-18陈勋豪黄俊茹孙玉宝
陈勋豪,杨 莹,黄俊茹,孙玉宝
(南京信息工程大学江苏省大数据分析技术重点实验室,江苏 南京 210044)
0 引 言
视频快照压缩成像系统(Video Snapshot Compressive Imaging, VSCI)是一种高效的视频成像方法[1],依据压缩感知理论[2-5],在一次曝光时间过程中,将视频中的多帧画面投影至单个二维快照测量中,进而实现高速成像。VSCI系统在采样资源受限以及高速成像等领域中具有重要的应用前景[6-10]。如图1所示,VSCI系统对于帧序列的调制频率高于探测器的捕获频率,实现了压缩测量。在重建阶段,运用重建算法从探测器中捕获的单一测量中可以恢复出若干高速帧。
图1 视频压缩成像方式示意图
VSCI系统依据压缩感知理论,设计有自身的测量方式,即编码孔径压缩时空成像(CACTI)[8]。CACTI系统的视频测量过程在逻辑上主要分为编码和集成2个阶段。在编码阶段,首先对原始的视频信号进行编码孔径模式调制。编码孔径是一个随机二进制掩码,其中掩码为0时表示让入射光通过,掩码为1时则阻挡入射光的进入。在曝光时间内,二进制掩码随着时间的变化进行线性移位,因此视频流中的每一帧都会被移动的编码孔径所调制。在集成阶段,经调制后的视频帧到达探测器,最终得到单帧的测量图像,即快照测量。
CACTI系统的测量过程在数学上可以表示为一个离散的线性系统。将X∈RNx×Ny×Nt视为一个离散的时空数据立方体,Nt、Nx、Ny分别表示时间帧数和空间维度的分辨率。A∈RNx×Ny×Nt表示编码通道数为Nt的编码矩阵。则探测器最终捕获的快照测量Y∈RNx×Ny可由式(1)表示:
(1)
式(1)中nij表示空间位置(i,j)处的噪声,快照测量Yij是Nt个通道中空间位置为(i,j)处被编码像素的加和,1/Nt在本文中被定为压缩比。通过将X矢量化为x∈RNx×NyNt×1,快照测量Y矢量化为y∈RNxNy×1,则整个CACTI测量过程可以由式(2)表示:
y=Φx+η
(2)
式(2)中Φ∈RNxNy×NxNyNt表示测量矩阵,η∈RNxNy表示矢量化的噪声。具体来说,Φ中有Nt个子矩阵,即Φ=[Φ1,Φ2,…,ΦNt],每个子矩阵Φi都是一个对角阵,矢量化的掩码(A11i,…,ANxNyi)为其对角线元素。根据式(2)的CACTI测量方程,可通过成像矩阵Φ的转置来获取原始信号x的近似重建:
x0=ΦTy
(3)
其中,x0可作为深度重建网络的初始输入。
1 相关工作
VSCI重建即从二维快照测量中重建原始视频的过程,其核心在于设计高效的重建算法。目前成熟的算法大多建立在正则化理论的基础上,利用原始视频的先验结构信息进行重建,通过迭代优化后得到最终结果。依据上述规律,GAP-TV[11]采用总变分最小化的思想,并采用广义交替投影法对问题进行求解。GMM-TP[12]依据高斯混合模型对时空视频补丁块进行稀疏表示,并通过期望最大值算法从训练集中反演出模型中的隐变量。与GMM-TP不同,MMLE-MFA[13]则是从给定的快照测量出发,通过最大似然估计反演出模型中的参数。然而,由于对总变分以及高斯混合模型独立分布的严格假设,基于正则化理论的模型对于场景复杂与含有物体运动的视频,重构出的结果往往难以取得较好效果。并且,由于需要大量的迭代,基于正则化的模型重建视频需要耗费大量时间,无法达到重建实时性的需求。以上种种弊限制了视频SCI系统的实际应用。
深度学习[14]是一个新兴的研究领域,它已在多种机器学习和计算机视觉任务(如图像识别、物体检测)中表现出极为先进的性能。大量学者开始将深度学习引入到视频快照压缩重建领域,以数据驱动的思路学习从快照测量到原始视频的单一映射,如文献[15]中的作者提出一种基于全连接神经网络的重建方式,用全连接层学习像素间的关联性。视频信号区别于一般信号的最大特征是其存在大量的空间、时间相关性。如何有效地利用时空相关性是实现高质量的视频快照压缩感知重建的关键。然而,现有的深度网络往往都忽视了这一重要特征,基于此,本文设计一个多尺度融合重构网络,可有效利用视频帧间的时空相关性,从而实现高质量且快速的视频快照压缩重建。
2 多尺度融合的压缩快照重建网络
2.1 网络结构
本文提出的视频快照压缩感知重建的多尺度融合重构网络MSF-Net的结构如图2所示,MSF-Net共有6层,横向对应相同尺度的特征,纵向特征尺度由大到小依次递减。最高层输入的特征尺度为1×8×256×256,分别对应卷积核通道数、视频帧数以及空间分辨率大小。为了得到小尺度的特征,本文使用卷积核大小为4×4×4、步长为2×2×2的三维卷积对最高层的尺度特征进行下采样,在下采样的过程中特征的通道数变为上一层的2倍。当进行2次下采样操作之后,由于视频时间维度已被压缩至1维,则使用卷积核大小为1×4×4、步长为1×2×2的三维卷积对视频特征中的空间维度进行特征提取,此时卷积核通道数不再发生变化。重复以上操作,直至底层视频特征尺度为128×1×8×8。横向中尺度大小相同的特征矩阵由伪三维卷积残差模块对其进行深度抽象。经过特征的深度提取后,纵向相邻尺度的特征通过上下采样进行融合,上采样方式为三维反卷积,融合方式为按特征通道数进行拼接,即concat操作。网络的最后,最底层的特征通过三维反卷积不断扩大尺度并与相同大小尺度的特征进行融合,直至尺度与输入网络的基础重建相同。
图2 MSF-Net网络框架图
三维卷积[16]是二维卷积[17]的扩展,二维卷积仅仅在H、W维度上对特征进行提取,而三维卷积则同时在L、W、H维度上同时提取特征,因此可有效地捕获这3个维度的相关性。三维卷积计算公式如下:
(4)
f(x)=max(0.01x,x)
(5)
对于下采样过后的特征,为了进一步挖掘当前尺度下的特征,受ResNet[18]的启发,本文使用伪三维卷积残差模块[19]加深网络以避免弱特征的丢失,在不额外引入参数的情况下提取更佳的深层抽象特征。残差单元的数学形式由下式表示:
xt+1=F(xt)+xt
(6)
式(6)中xt与xt+1分别表示第t+1个残差块的输入与输出,F(xt)则表示非线性映射。本文使用的伪三维卷积残差模块如图3所示。图3(a)为原始残差模块,图3(b)为前2层中使用的伪三维残差块,图3(c)则在后4层中使用。
图3 不同残差模块对比图
2.2 网络学习
设有m个训练样本对(Xi,Yi),其中Xi表示原始的视频片段,Yi表示经CACTI测量得到的快照测量。本文提出的多尺度融合重构网络在式(7)定义的损失函数中进行特征的学习:
s.t.Si=F(ω,X′i),i=1,…,m
X′i=ΦTYi
(7)
其中,ω表示网络模型中待优化的参数,Si表示第i个训练样本的重构输出,X′i表示Yi的基础重建,F则表示由输入Yi到预测Si的反映射,Vec表示矢量化操作。总的损失函数由3项组成,即重建保真、测量保真以及总变分正则化[20]。λ与γ是对这3个项进行加权的超参数。重建保真项要求重建后的视频尽可能地接近原始信号,衡量两者之间的差异使用L1损失函数。测量保真项同样使用L1损失约束重构信号的测量与原始信号测量之间差异。总变分正则化项[21]则是对视频帧内平滑度的约束,通过这一正则化可以减少视频帧内的噪点并增强网络应对噪声时的鲁棒性。
算法的整体流程如算法1所示。训练阶段:通过CACTI测量方式获取训练集视频的快照测量,然后对快照测量进行基础重建并将基础重建送入网络进行多次的迭代训练,直至网络收敛,保存此时网络中的参数。测试阶段:计算测试集中的快照测量的基础重建,加载已经训练好的网络参数,将基础重建输入网络,网络的输出即为重建结果。
算法1 多尺度融合的压缩快照重建
训练阶段:
输入:学习率α,最小批次大小m,最大迭代次数tmax,正则化参数λ,γ和测量矩阵Φ
1:初始化网络参数和迭代次数
2:whilet 3:选取m个训练视频{X1,…,Xm},计算对应的快照测量 Yi=ΦXi+η,i=1,2,…,m 4:计算快照测量Yi的基础重建X′i,X′i=ΦTYi 5:使用Adam方法更新网络中的参数ω 6:gω←∇ω(‖F(ω,X′i)-Xi‖1+λTV(F(ω,X′i))+γ‖(Yi)Vec-Φ(F(ω,X′i)Vec‖1) ωt←ωt-1-α·Adam(ω,gω) 7:增加迭代次数t=t+1 8:end while 输出:训练好的网络参数ω 测试阶段: 输入:输入测试集中的快照测量{Y′1,…,Y′i} 1:计算快照测量Yi的基础重建X′i,X′i=ΦTYi 2:加载训练好的网络参数ω 3:Si=F(ω,X′i) 输出:重建视频Si 为了分析MSF-Net对于快照测量的重建性能以及各模块的有效性,本文设计一系列实验对重建结果进行定量分析,具体安排如下:3.1节简介实验用的训练集及测试集;3.2节介绍评价重建质量的指标;3.3节通过对比实验讨论网络参数对于重建的影响;3.4节设计消融实验对多尺度融合的效果进行探讨;3.5节将MSF-Net的重建结果与基于传统迭代的GAP-TV[11]、GMM-TP[12]、MMLE-MFA[13]算法,基于深度学习的U-Net[21]、PnP-FFDNet[22]算法的重建结果进行定量比较;3.6节展示各算法重建出的结果;3.7节对各算法的重建性能进行比较;3.8节则比较各算法的重建时间。 本文训练用的数据集选择Kinetic-400数据集[23],该数据集是一个大规模视频数据集,包含了650000个视频片段,其内容包括400多种人类运动类别,每个片段均截取自不同的Youtube视频。本文从该数据集中随机选取2000个视频片段用作训练样本,被选出的视频分辨率被调整至256×256,并统一由彩色视频转换至灰视频。用于实验的测量矩阵来自文献[24],该测量矩阵中的随机掩码是从参数为0.5的伯努利分布中随机生成的。 测试集样本同样来自文献[24]所使用的通用测试集。该测试集包含5组视频,分别被命名为Kobe(32帧)、Aerial(32帧)、Crash(32帧)、Runner(40帧)和Traffic(48帧)。该测试集中压缩比为1/8,即每8帧对应一个压缩测量帧。 为了评价视频快照压缩感知视频重构后的质量,本文引入2种评价指标:PSNR(Peak Signal-to-Noise Ratio)峰值信噪比和SSIM(Structural Similarity)结构相似性。2个指标数值越大,代表重建结果越好。 如图2所示,MSF-Net共有6层,相同尺度下卷积核的通道数相同。前2次下采样时,卷积核通道数变为原来的2倍。后3次下采样时,其通道数不再发生变化。为了验证卷积核通道数对于重建性能的影响,本文设计了对比实验进行定量分析。表1与表2分别展示了最高尺度下不同卷积核通道数对于重建性能的影响。 表1 卷积核通道数对PSNR性能影响 单位:dB 表2 卷积核通道数对SSIM性能影响 从表中数据不难得出结论,随着卷积核通道数的增加,网络的重建性能逐步提升。这是由于卷积核通道数与特征图维度直接相关,通道数过少会导致特征图维度较低。网络难以从低维的特征中学习到有用的信息,导致模型拟合能力不足使得最终重建出的视频质量较低。 为了验证伪三维卷积残差模块的使用是否有利于原始视频的重建,本文通过消融实验对其有效性进行验证。 表3与表4分别展示了使用与未使用伪三维残差模块对于重建结构的影响。不难看出,使用该模块的网络比未使用该模块的网络PSNR值提高了0.4 dB,SSIM提高了0.01。伪三维卷积残差块对不同尺度的特征进行深度挖掘,并保证了在梯度回传的过程中不会因为下采样操作而导致梯度弥散,使得网络难以训练,最终影响重建结果。实验数据证明该模块有利于重构原始视频。 表3 残差模块使用与否对PSNR性能影响 单位:dB 表4 残差模块使用与否对SSIM性能影响 对于重建任务,大多数方法都是高分辨率到低分辨率网络(high-to-low network),通过下采样降低分辨率,再通过上采样提升分辨率,最终获得高分辨的特征。U-Net[21]、SegNet[25]本质上都是这种串联结构。然而这种结构对于重建任务并不是好的选择,高分辨率自身的特征往往被忽视。本文提出的MSF-Net与上述的串联结构不同,多尺度的特征进行并行提取并相互交融,以达到最好的重建效果。为了验证多尺度并行提取特征的有效性,本文设计如下对比试验:使用具有3层不同尺度(2次下采样)与6层不同尺度(5次下采样)的网络模型对快照测量进行重构,实验结果如表5、表6所示。 表5 不同尺度下网络重建结果PSNR性能比较 单位:dB 表6 不同尺度下网络重建结果SSIM性能比较 从数据中可看出拥有5层尺度的网络拥有更好的重建性能。卷积网络通过逐层抽象的方式对目标的特征进行提取,对于高层网络,卷积的感受野较大,对于语义信息表征能力强,但对于几何信息表征能力差。底层网络的感受野小,几何细节表征能力强。通过不断融合底层提取的细节特征,网络重构视频中细节的能力也随之增强。随着下采样次数的增加,细节特征提取得更充分,使得网络性能不断提升。 为了验证本文提出模型的先进性,本文将多尺度融合重构网络与GAP-TV[11]、GMM-TP[12]、MMLE-MFA[13]、U-Net[21]、PnP-FFDNet[22]在上文提及的通用测试集上进行对比。压缩比统一设置为1/8。实验结果由表7、表8展示。 表7 不同算法重建结果PSNR性能比较 单位:dB 表8 不同算法重建结果SSIM性能比较 从表7、表8中可以看出,与传统基于迭代的算法相比,基于深度学习的方法取得了更高的指标。虽然U-Net网络在PSNR值上略逊于传统算法,但在SSIM上则处于领先。这是由于传统算法对于稀疏结构先验的限制过于严格,这种严格的稀疏先验不足以反映真实视频中的位置关系,导致了在结构相似性这一指标上传统算法均落后于深度算法。与使用串行连接将多个尺度特征进行级联的U-Net相比,使用多尺度并行连接的MSF-Net取得了更好的指标,这体现出使用多尺度对特征进行提取,并在前馈学习中不断融合特征这一网络设计的优势。 图4~图8展示了对于通用测试集各算法重建出的结果。图中还展示了部分图像块的放大视图以便直观地展示各算法对于图像中细节、纹理的重建质量。对比各图,GAP-TV的重建图像可以恢复出主体的轮廓,但缺乏小尺度的结构与纹理细节。GMM-TP与MMLE-MFA的重建图像在物体轮廓处容易产生伪影。这是由于基于高斯混合模型的算法并未充分考虑视频帧间的时空关联性。PnP-FFDNet采用FFDNet作为深度图像去噪器,并将其嵌入迭代的优化框架中。依靠迭代优化,该网络平滑了视频帧内的噪声,使得重建出的图像更清晰,但这种平滑也导致了图像纹理、细节的丢失。U-Net和本文提出的方法重建出的图像具有较好的细节,但由于深度卷积网络学习的是像素点之间的单一映射,这导致网络中出现了较多噪声,图像不够清晰。 图4 Aerial重建结果展示 图5 Crash重建结果 图6 Traffic重建结果展示 图7 Runner重建结果展示 图8 Kobe重建结果展示 图9展示了不同方法重建出的Crash单帧内的PSNR与SSIM值。从图中发现,GMM-TP、MMLE-MFA和GAP-TV算法重建出的视频序列,存在序列中间位置帧的PSNR值高于序列前端与后端的PSNR值的现象。相比之下,PnP-FFDNet重建出的PSNR曲线与本文提出算法重建出的曲线则相对平坦。除了CACTI成像机制的影响外,对这一现象的直观解释便是本文提出的算法与PnP-FFDNet可以更好地表征视频序列中的时空关联性,保证重建视频序列的连续性。 图9 Crash视频逐帧图像的值 时间复杂度是评估重建算法的一个重要方面。表9显示了不同算法重建出通用测试集中5个视频所消耗的平均时间。表中同时还列出了帧速率(fps)。本文提出的算法运行在GPU上,而剩余方法运行在CPU上。除去本文所提出的算法与U-Net外,其余算法均基于迭代优化,此类算法的运行时间与每次迭代的复杂度直接相关。而本文提出的算法不需要迭代计算,仅需将快照测量输入到已训练好的网络中进行前馈计算。正如表中所展示的,本文提出的算法重建时间只需要3.41 s,重建时的帧速率可达10.94 fps,实现了近乎实时的重建。 表9 不同算法重建时间对比 本文针对视频快照压缩成像系统中的信号重构问题,提出了一种基于深度学习的多尺度融合网络(MSF-Net),该网络使用三维卷积充分提取视频信号中时空特征,通过多尺度融合的思想使得视频所包含的细节最大化。通过消融实验,证明了伪三维卷积残差模块以及多尺度融合方法的有效性。对比实验表明本文方法能够同时提升快照视频重建质量与重建速度。3 实验结果与分析
3.1 数据集
3.2 评价指标
3.3 网络参数对于重建影响
3.4 伪三维卷积残差模块有效性实验
3.5 多尺度有效性实验
3.6 对比实验
3.7 重建结果展示
3.8 重建性能分析
3.9 重建时间分析
4 结束语