论文:通过循环的潜在空间传播实现高效的视频超分
文章检索出处:2019 arXiv
摘要和简介
VSR算法成功的关键在于如何充分利用时间信息。近年来,大多数基于深度学习的VSR方法将任务分为两个子问题:运动估计和补偿,由于亚像素级对齐是一个比较有挑战的问题,所以这些方法可能会产生模糊的估计。此外,复杂的运动估计和补偿模块通常在计算上很昂贵,这使得这些方法无法实时处理视频。DUF为了解决这个问题,通过动态上采样滤波器隐式的捕获运动信息,并通过对中心输入帧进行局部滤波直接构建HR帧。但是,DUF需要估计每个位置的动态滤波器并且使用了大量的3D卷积,计算量及其庞大,在处理大尺寸图像时对内存和显存要求较高。
在本文中,我们提出了一种有效的循环潜在空间传播的算法(RLSP)。它与FRVSR采用相似的策略,不同的是,FRVSR采用显示运动估计和warping操作来利用时间信息,RLSP则是引入了高维潜在状态以隐式的方式传播时间信息。
我们所提出的方法对比FRVSR和DUF分别提升了近10和70倍的速度,此外,我们的RLSP 7-256在Vid4上也实现了SOTR。
方法
我们将 x t − 1 : t + 1 x_{t-1:t+1} xt−1:t+1和循环输入 h t − 1 h_{t-1} ht−1、 y t − 1 y_{t-1} yt−1在通道维度上进行叠加。其中,先前的HR输出 y t − 1 y_{t-1} yt−1要经过shuffled down操作才可以和当前的LR输入进行合并和对齐。然后合并好的数据输入到具有ReLU激活函数的n个卷积层中,将生成下一次迭代的隐藏状态 h t h_t ht和HR残差,将残差与经过最邻近插值和放缩系数为4的shuffled down操作后的 x t x_{t} xt相加,最终生成输出 y t y_{t} yt。所有的输入帧都在RGB颜色空间中,而输出表示的是YCbCr颜色空间中的通道Y,其中CbCr经过双三次插值法进行放大。在本次实验中,n=7,所有的filter size为3x3。损失函数使用像素均方误差。
Shuffling
Shuffling 是双射变换,因此这些操作是可逆的。放大系数为x4时需要输入16通道图像,具体如下图所示。
将 x t x_t xt从RGB颜色空间转换为亮度通道y,并复制16次并shuffling以去匹配残差的尺寸。此过程实际上就是最邻近插值,在此过程不会更改任何的信息,也无需分配复杂性。转换公式如下:
Y = 0.257R + 0.504G + 0.098B + 16
Gray = R0.299 + G0.587 + B0.114 (作为对比,灰度与Y通道的转换过程并不一样)
实验
数据集:从 vimeo.com获取的37个视频(原本有40个,但是有3个不在线),采样生成了40,000个大小为20x256x256x3的数据集。使用 σ \sigma σ=1.5的高斯滤波并只对4-th像素进行下采样生成LR图像。测试集为Vid4。
训练:我们的训练剪辑长度为10帧,为了进行训练,我们从20帧的训练片段中随机采样12个连续帧,多出的两帧用于在开始出馈入 x t − 1 x_{t-1} xt−1,在结尾处馈入 x t + 1 x_{t+1} xt+1。权重使用Xavier初始化,Adam优化器,batche size = 4,初始 h t − 1 h_{t-1} ht−1和 y t − 1 y_{t-1} yt−1使用零初始化。在实验中,我们最快的模型有7层,每层有48个filters,记做 RLSP7-48,最准确的模型结构为 RLSP7-256。网络的学习率初试为 1 0 − 4 10^{-4} 10−4,对于RLSP7-64,学习率在2M和3M次迭代后/10,其他模型则在2M和4M后/10。
针对不同输入的消融实验结果:
红线附近处图像细节对比:
为了调查信息流的范围,第一次运行比第二次运行提前了100帧。实验发现这些帧可以在近175帧上传播信息。直到两个运行最终收敛为止,最高可获得0.2dB的PSNR值。
不同模型在Vid4上PSNR随时间对比图:
不同模型在Vid4上运行时间和PSNR对比,双三次插值为baseline:
仅供学习使用,请勿转载。