VSR review - yubo105139/paper GitHub Wiki

[[TOC]]

VSR算法笔记

版本 日期 书写人 修改内容
v1.0 2020-07-16 张月 初稿

一、经典算法

Video Super-Resolution via Deep Draft-Ensemble Learning(2015, ICCV)

  1. 训练数据:自己创建的VideoSR dataset,160个1080P HD视频序列,训练HR图像帧为随机切出的$100\times100$ patch,每个高分图像切出1000张;前15帧和后15帧作为supporting帧,中间帧作为reference帧;

  2. LR视频帧构建:两步骤:1)经过低通高斯滤波器;2)降采样4倍;

  3. 数据增强手段:多个PSF(点扩散函数,描述了成像系统对点源或点对象的响应);

  4. 网络结构:

    1592879732927

  • 两步骤:第一步前项重建:通过TV-l1(20个$\alpha$)和MDP(motion detail preserving)两种光流法生成HR候选集Z,这些候选通道堆叠,最后一个通道是reference LR帧经过bicubic得到的bicubic input;第二步采用CNN融合所有候选HR得到重建的HR图像帧;
  • 预上采样,上采样方法为bicubic;
  • 如果视频帧是RGB多通道的,每个通道都单独训练和测试;
  • loss:$L= l_1 loss + \lambda TV loss $
  1. 预测结果:

    1)运行时间(论文):输入31帧$120\times 180$,TV-l1光流计算耗时约58s,CNN网络耗时约0.2s,整体耗时约500s(Intel Corei5, NVIDIA K40 GPU);

  2. 贡献点:

    1)采用CNN整合HR candidates;

Bidirectional Recurrent Convolutional Networks for Multi-Frame Super-Resolution(BRCN,2016,NIPS)

  1. 训练数据:25个video,HR视频帧为重叠切出的$32\times32$ patch,共41000视频帧用于训练;

  2. LR视频帧构建:两步骤:1)经过低通高斯滤波器;2)降采样4倍;

  3. 网络结构:

    1592892892693

  • 预上采样,上采样方法为bicubic;
  • 相同颜色箭头所代表的权重共享;
  • 通过循环,实现不同帧之间的时间依赖;
  • 只重建y通道;
  • loss:MSE(均方误差);
  1. 预测结果:

    1)论文中预测一帧图像所需时间约为350ms (Intel CPU 3.10GHz and 32G Memory);

  2. 贡献点:

    1)提出循环卷积CNN网络结构;

Real-Time Single Image and Video Super-Resolution Using an Efficient Sub-Pixel Convolutional Neural Network(ESPCN,2016,CVPR)

  1. 网络结构:

1592899805611

  • SISR结构,未考虑帧间的时间依赖;
  1. 贡献点:

    1)提出亚像素层卷积;

Super-resolution of compressed videos using convolutional neural networks(CVSRnet,2016, ICIP)

  1. 训练数据:Myanmar视频序列,包含59个场景的数据,原始HR视频分辨率为4K($3840\times2160$);从中切出$36\times36$大小的视频序列作为HR视频;
  2. LR视频帧构建:两步骤:1)降采样4倍;2)利用ffmpeg进行压缩;
  3. 网络结构:

1592892892693

  • 预上采样,上采样方法为bicubic;
  • 在视频训练之前,采用imagenet做SISR训练,作为预训练模型,Layer1、Layer3的参数可直接初始化,Layer2的每帧对应的参数为图像参数的$1/N$(N表示一次输入的视频帧数,实验时N=5);
  • 输入的supporting帧采用自适应运动补偿,光流算法用的是Druleas算法,自适应运动补偿方法如下:

1592905167857

  • 只重建Y通道;
  • loss:目标帧与预测帧间的欧式距离;
  1. 预测结果:

    1)运行时间:光流法需要55秒/帧,CNN网络5帧输入需要0.24ms;

  2. 贡献点:

    1)预训练模型;

    2)自适应运动补偿;

Video Super-Resolution With Convolutional Neural Networks(VSRnet, 2016, TCI)

  1. 训练数据:CDVL,HR图像帧$5\times72\times72$(5表示输入5个连续帧),训练数据量为22w;
  2. 与CVSRnet是同一作者;
  3. 主要在CNN上探索三种结构:

1592962612163

  • CVSRnet即结构(b);
  • 只处理Y通道;

Building an End-to-End Spatial-Temporal Convolutional Network for Video Super-Resolution(STCN, 2017, AAAI)

  1. 训练数据:连续31帧1080p HR视频,训练时,从中切出$41\times41$ patch作为HR视频帧;
  2. LR视频帧构建:两步骤:1)经过高斯滤波器;2)bicubic降采样;
  3. 网络结构:

1592967451470

  • LSTM中的全连接层都用卷积层替代;
  • BMC-LSTM结构:

1592967534152

1592967552702

  • $Z$为输入,$H$为隐藏状态,不同于LSTM,为利用多尺度设计如下:

1592967668295

  • 预上采样结构,LR视频帧输入前先用bicubic上采样到与HR帧相同尺寸;
  • 训练时连续输入5帧;
  • loss:目标帧和其他帧的平方误差和:

1592967724400

  1. 预测结果:

    1)预测时间还是比较长,属于MFSR(Muti-Frame Super-resolution);

  2. 贡献点:

    1)end-to-end结构;

    2)提出双向多尺度LSTM(BMC-LSTM)解决视频帧间时间依赖的问题;

Real-Time Video Super-Resolution with Spatio-Temporal Networks and Motion Compensation(VESPCN,CVPR,2017)

  1. 训练数据:CDVL,HR视频帧$1080\times1920$,imresize获取对应的LR视频帧;
  2. 训练时,不重叠切LR视频帧$32\times32$,对应的HR视频帧为$96\times96$;数据集数量:1932(3个连续视频帧记为1);
  3. 网络结构:

1592967724400

  • 运动补偿:

1592967724400

  • spatial-temporal ESPCN是对ESPCN(提出亚像素层的网络)改进,此处有三种结构:early fusion、slow fusion、3D convolution;

    1592967724400

  • 只重建Y通道(实验中重建RGB三个通道);

  • 输入为连续3帧;

  • loss:

1592967724400

​ 第一项为重建SR帧和HR帧间的平方误差,第二项为运动补偿模块损失,$L_{t+i}^{'LR}$表示运动补偿后的$t+i$帧,$\Delta_{t+i}$表示运动估计的光流;

  1. 预测结果:

    1)vid4所有视频PSNR平均值为23.978388;

    2)三帧$120\times180$预测一帧$480\times720$,所需时间约为20ms;

    3)预测视频及图像请参见results/vespcn;

  2. 贡献点:

    1)将ESPCN改进用于VSR领域;

    2)后上采样;

    3)提出有效的运动补偿模块;

FAST: A Framework to Accelerate Super-Resolution Processing on Compressed Videos(Fast, 2017,CVPRW)

  1. 框架结构:

1592967724400

  • 本框架主要适用于压缩的视频;
  • 压缩的视频记录两个信息,第一个称为residual,记录的是一个GOP(压缩的视频块)中,目标视频帧与源视频帧的差异;第二个是运动向量,记录的是目标视频帧与原视频帧间的位移;
  • 只对每个GOP中的第一帧(即源视频帧)运用超分技术;其他帧利用压缩信息(即residual与运动向量)基于第一帧的SR进行重建,重建中,residual和运动向量尺寸不匹配时,采用bicubic进行插值;
  • 重建时,基于非重叠的block块进行重建,为避免在拼接边缘处产生伪影,采用debloking滤波;
  1. 贡献点:

    1)利用压缩信息,提升压缩视频的重建速度;

Detail-Revealing Deep Video Super-Resolution(SPMC,2017,ICCV)

  1. 网络结构:

image_1bt457gll23b1p7ouqd13k21qe79.png-79.3kB

  • 包含三个部分:运动估计、运动补偿和细节融合;
  • 运动估计采用的VESPCN中的运动估计网络;
  • 运动补偿采用的是SPMC层,既运动补偿又进行超分;

img

​ 1)采样网格生成器:

img

$p$是原图中的一个像素,$(u_p, v_p)$为光流估计的结果;

​ 2)对网格进行填充:

img

img

  • 细节融合:采用编码->LSTM模块->解码;
  • 训练步骤:1)先训练运动估计,运动估计损失:

img

​ 2)训练SR网络:

img

​ 3)联合训练:

img

  • 只处理YUV的Y通道;
  • 连续3帧作为输入;
  1. 预测结果:

    1)每3帧前向运算时间为~960ms;

    2)运行结果图($120\times160->$$480\times640$)请参看results/spmc;

  2. 贡献点:

    1)提出sub-pixel motion compensation(SPMC),可以有效的处理运动补偿和特征图缩放(运动补偿后生成的就是高分辨率特征图);且该结构使得可以进行多尺度缩放;

Robust Video Super-Resolution with Learned Temporal Dynamics (2017,ICCV)

  1. 训练数据:三个视频MCV-V,TUM 1080p、LIVE Video Quality Assessment;
  2. LR视频帧:切出的$30\times30$patch;
  3. 数据增强:旋转、镜像、rescaling,构成100w个视频序列(5个连续帧预测一帧);
  4. 网络结构:

img

  • 空间对齐网络为时间自适应网络的预处理阶段,将对齐的视频帧和参考帧作为时间自适应网络的输入;

1593335791422

  • 时间自适应网络包括SR推断分支和时间调制分支,时间调制分支是为了对每个推断的分支生成像素级的权重图,最后将两个分支的结果对应点乘并聚合;
  • 只处理YCrCb的Y通道;
  • loss:

1593336071470

  1. 预测结果:

    1)5个连续的$540\times960$视频帧在Itel i7 Cpu上,需要15s进行warp,0.8s处理空间对齐网络;

  2. 贡献点:

    1)提出时间自适应网络,通过时间调制分支,决定每个长度的权重,相当于变长(连续帧长不同);

Temporally Coherent GANs for Video Super-Resolution(TecoGAN,2018)

  1. 训练数据:从https://vimeo.com/中获取高清视频,从中截取120个连续帧作为一个视频片段,视频帧imresize 降采样2倍作为HR视频帧;LR视频帧是通过对HR视频帧进行高斯滤波和4倍降采样获取的;
  2. 数据增强:随机镜像;
  3. 网络结构:

1593336071470

1593336071470

  • 整体VSR包含三个组件:循环生成器、流估计网络和时空判别器;
  • 循环生成器G:基于低分辨率输入循环地生成高分辨率视频帧(上采样采用最近邻上采样);
  • 流估计网络 F :学习帧与帧之间的动态补偿,帮助生成器和时空判别器Ds,t;代码中运动估计用的是FRVSR中的FNet;
  • 训练时,G和F一起训练;
  • 生成器用的是FRVSR;
  • 时空判别器Ds,t是本文的重要贡献,既考虑空间因素又考虑时间因素,对时间不连贯的结果进行惩罚:

1593336071470

​ x为LR图像帧,g为生成图像帧,y为真实的HR帧;图像帧输入前进行通道concat;

  • 本文的另一创新点为提出Ping-Pong(PP)损失函数,可以成功移除漂移伪影,同时保留适当的高频细节,改进了时间的连贯度。该研究使用具备ping-pong ordering 的扩展序列来训练网络,如图 5 所示。即最终附加了逆转版本,该版本将两个「leg」的生成输出保持一致。PP 损失的公式如下所示:

    1593336071470

1593336071470

  • 损失函数如下表,其中g为生成图像帧,b为ground truth,ϕ为采用VGG19或Ds,t ;

1593336071470

  • 本文另一贡献是提出两个新的metric,衡量时间连续性

1593336071470

  • RGB三个通道重建;
  • 训练时,输入10个连续帧;
  • inference时,该算法可以使得每次只输入当前帧,网络保存其他信息;
  1. 预测结果:

    1)预测一帧$144\times180$$576\times720$的视频帧所需时间约380ms,$134\times320$$536\times1280$所需时间约为550ms;

    2)预测图像和视频请参见results/tecogan;

  2. 贡献点:

    1)提出首个时空判别器,以获得逼真和连贯的视频超分辨率;

    2)提出新型 Ping-Pong 损失,以解决循环伪影;

    3)从空间细节和时间连贯度方面进行详细的评估;

    4)提出新型评估指标,基于动态估计和感知距离来量化时间连贯度;

Deep Video Super-Resolution Network Using Dynamic Upsampling Filters Without Explicit Motion Compensation(VSR-DUF,2018,CVPR)

  1. 数据增强:随机镜像和旋转,间隔几帧采样一次(正向和反向都有,模拟不同的运动状态,最多隔两帧),以模拟更快的运动;
  2. 网络结构:

1593336071470

  • 包含两个分支:动态上采样滤波器(上分支)和残差学习(下分支);
  • 网络设计时,大多数网络参数都共享,可以减少存储开销;
  • 残差学习分支中,为学习时空信息,采用3D卷积;
  • 动态上采样滤波器如图:

1593336071470

  • 无需显示的运动估计和运动补偿;
  • RGB三个通道分别经过上下两个分支,再通道concat;
  • 7帧连续输入;
  • 后上采样,类似于亚像素的后采样方法;
  1. 预测结果:

    1. 7帧$144\times180$预测一帧$576\times720$所需时间约1.5s;

    2)预测视频帧请参见:results/vsr-duf;

  2. 贡献点:

    1)提出动态上采样滤波器,根据每个像素的局部时空邻域来计算,避免显式运动补偿,对输入图像进行直接重构;

    2)通过计算残差增加细节;

    3)提出隔帧的数据增强手段;

Frame-Recurrent Video Super-Resolution(FRVSR, 2018, CVPR)

  1. LR视频帧的获取:Bicubic;
  2. 数据增强方法:随机旋转和镜像;
  3. 网络结构:

在这里插入图片描述

  • 首先光流估计网络FNet,根据输入的当前LR和前一帧LR,估计它们两个之间的光流,得到LR光流图,接着通过双线性插值按照指定的比例上采样到相应的分辨率上,得到HR光流图,然后将所得到的HR光流图和前一帧的HR(生成的)进行Wrap操作,再将其输出进行space-to-depth操作(可以类比亚像素卷积的逆操作),从高分辨率空间变换到低分辨率空间中,最后将输出送入SRNet中进行最终的超分辨操作,输出当前LR图像的超分辨图像;
  • FNet和SRNet的内部结构如下:

在这里插入图片描述

  • RGB三个通道重建;

  • loss:

    $L = L_{sr}+L_{flow}, L_{sr}=||I_t^{est}-I_t^{HR}||2^2,L{flow}=||WP(I_{t-1},F^{LR})-I_t^{LR}||_2^2$

  1. 预测结果:

    1)vid4所有视频PSNR平均值为24.271562;

    2)连续7帧作为输入,两帧$144\times176$预测一帧$576\times704$,所需时间约为13ms;

    3)预测视频及图像请参见:results/frvsr;

  2. 贡献点:

    1)在生成下一帧图像时,考虑之前生成的HR图像,将其也输入网络,这样不仅能产生时间连续的结果,也降低了计算复杂度;

Learning Temporal Dynamics for Video Super-Resolution: A Deep Learning Approach(2018,TIP)

  1. 网络结构:

1593569031949

  • 和2016年的BRCN同一作者,结构也一样,只是将2D卷积改为了3D卷积;
  • loss:MSE(均方误差);
  1. 贡献点:

    1)3D卷积构建双向循环网络用于VSR;

Learning for Video Super-Resolution through HR Optical Flow Estimation(SOFVSR,2018,ACCV)

  1. 训练数据:152个1080p的CDVL和Ultra Video Group Database;HR视频是对原始图像bicubic降采样2倍得到的($540\times960$),LR视频是对HR视频bicubic降采样4倍得到的($135\times240$);训练时,从LR的连续3帧中切出$32\times32$patch作为输入;
  2. 数据增强:随机旋转90度和随机垂直、水平镜像;
  3. 网络结构:

1593580094435

  • 包括三部分:HR光流估计(OFRnet)、运动补偿、SR网络;
  • OFRnet:

1593580358647

  • 运动补偿:

1593580514478

  • SRnet:

1593580456209

  • 只处理YCrCb的Y通道;

  • loss:

    $$L=L_{SR}+\lambda _{4} L_{OFR}$$

1593580456209

1593580456209

  • 连续3帧输入;
  1. 预测结果:

    1)连续三帧$144\times180$预测一帧$576\times720$的运行时间约为36ms;

    2)预测图像或视频请参看results/sofvsr;

  2. 贡献点:

    1)将图像和光流的超分整合成一个网络SOF-VSR;

    2)提出OFRnet网络以粗到细的方式整合HR光流;

Fast Spatio-Temporal Residual Network for Video Super-Resolution(FSTRN,2019,CVPR)

  1. 训练数据:LR视频帧通过高斯滤波和bicubic降采样获取;
  2. 数据增强:水平和垂直镜像;
  3. 网络结构:

img

  • 包含四个模块:LR视频浅层特征提取网络(LFENet, $F_0^L$前的卷积为3DCNN)、快速时空残差块(FRBs)、LR特征融合和上采样SR网络(LSRNet)、全局残差学习部分(GRL);
  • FRBs结构:

img

  • 全局残差学习:包含两个部分,LR空间残差学习和跨空间残差学习;
  • 上采样用的是3D反卷积;
  • 连续5帧$36\times36$输入,连续5帧$144\times144$输出,计算loss时,只计算中间帧的重建损失;
  • 只重建Y通道;
  • loss:$L_1$损失+参数的正则化项;
  1. 贡献点:

    1)快速时空残差网络(FSTRN);

    2)快速时空残差块(FRB);

    3)全局残差学习(GRL),包含LR空间残差学习(LRL)以及跨空间残差学习(CRL);

Recurrent Back-Projection Network for Video Super-Resolution(RBPN,2019,CVPR)

  1. 训练数据:Vimeo90K,LR视频帧是通过对HR视频帧imresize得到的;
  2. 网络结构:

img

  • 整体分为三个部分:初始特征提取、多投影和重建;
  • 初始特征提取:1)MISR path:将第$I_t$$I_{t-k}$帧以及其光流$F_{t-k}$ concat后,进行卷积得到8通道的特征张量$M_{t-k}$;2)SISR path:第t帧$I_t$直接进行卷积得到特征张量$L_t$
  • 多投影:1)通过projection module,将第k个M张量与第k-1个L张量进行投影,并输出第k个L张量和第k个高分特征H张量;2)第k个张量再一次输入到projection module中(作者提到: “The projection module, shared across time frames”),然后结合第k+1个M张量,生成L和H;3)Encoder:SISR和MISR两支路的特征输入到Encoder后,经由上采样得到高分的特征张量$H_{t-n}^{m}$$H_{t-n-1}^{l}$,求得残差后,与SISR支路的高分特征张量$H_{t-n-1}^{l}$相加,得到Encoder的输出,一个高分的特征张量$H_{t-n}$;4)Decoder:Encoder的输出$H_{t-n}$通过残差块(即有shorcut的几个卷积层)下采样后,得到低分的张量$L_{t-n}$;5)相当于Encoder和Decoder之间传递的这个"向量"就是高分的特征张量$H_{t-n}$

img

​ SISR采用的是单幅图像超分中DBPN网络的上映射单元,MISR块采用的就是残差模块;

  • 连续7帧作为输入,7帧重建1帧;
  • RGB三个通道重建;
  • loss:$L_1$损失函数;
  1. 预测结果:

    1)连续七帧$144\times180$预测一帧$576\times720$的运行时间约为190ms;

    2)平均PSNR为24.99;

    3)预测图像和视频请参看results/rbpn;

  2. 贡献点:

    1)提出一个递归框架,它使用前一帧的HR估计来生成下一帧,从而使得生成帧的时间具有一致性;

    2)本文模型能够在不增加计算量的情况下在大的时间range上传递信息;

Adapting Image Super-Resolution State-Of-The-Arts and Learning Multi-Model Ensemble for Video Super-Resolution(2019, CVPRW,NTIRE2019 VSR Track 1第二名)

  1. 训练数据:REDS,训练时,随机切取$96\times96$的patches;
  2. 数据增强:随机90度旋转、随机水平镜像、随机垂直镜像、随机时间镜像;
  3. 网络结构:

1594016079882

  • 将SOTA的SISR网络用于VSR;
  • 本文采用的SOTA网络有EDSR、RDN、RCAN;
  • 从头训练SISR网络,与图像超分不同的是,输入的是通道concat的视频帧;
  • 将SISR获取的超分视频帧输入到本文提出的自适应整合网络中,相当于对每个超分视频帧学习融合权重;
  • 连续5帧输入;
  1. 贡献点:

    1)提出自适应整合网络,将SOTA的SISR网络用于VSR;

## An Empirical Investigation of Efficient Spatio-Temporal Modeling in Video Restoration(WDVR,2019,CVPRW,NTIRE2019 VSR和视频deblurring四个track中3个第二)

  1. 贡献点:

    1)本论文主要是对一些常用策略做实验;

    2)VSR领域weigt norm好于没有norm和batch norm;

    3)3D卷积好于2D卷积,但gap较小;

    4)在相同的计算量和参数量时,ReLU层前特征通道数越多效果越好,设计在残差模块(conv-relu-conv),relu前的残差分支conv输出channel通常为原始的2倍或4倍;

    5)小范围内,增加帧数可以提高模型效果,2DCNN最适合5帧,3DCNN最适合6帧;

EDVR: Video Restoration with Enhanced Deformable Convolutional Networks(EDVR,2019,CVPRW,Winners in NTIRE 2019 Challenges on Video Restoration and Enhancement)

  1. 训练数据:REDS,$64\times64$做LR视频帧输入;
  2. 数据增强:水平翻转、旋转90度;
  3. 网络结构:

1594016079882

  • PCD(Pyramid, Cascading and Deformable convolutions):以粗到细的方式执行对齐以处理大而复杂的运动。具体来说,我们使用金字塔结构,首先将较低比例的特征粗略估计对齐,然后将偏移和对齐特征传播到更高的比例,以便于精确的运动补偿,类似于光流估计中采用的概念。

1594016079882

  • TSA(Temporal and Spatial Attention):为了更好的考虑每一帧的视觉信息,引入了时间注意力机制,通过计算参考帧和相邻帧之间的像素级相关性;还引入了空间注意力为每一个通道的每一个位置分配权重,更有效的利用跨通道信息和空间信息:

1594016079882

  • loss:charbonnier损失函数;
  • RGB三个通道;
  • 5个连续帧输入;
  1. 预测结果:

    1)连续七帧$144\times180$预测一帧$576\times720$的运行时间约为190ms;

    2)平均PSNR为27.353614;

    3)预测图像和视频请参看results/edvr;

  2. 贡献点:

    1)提出PCD对齐模块;

    2)提出TSA融合模块;

MultiBoot VSR: Multi-Stage Multi-Reference Bootstrapping for Video Super-Resolution(MultiBoot,2019,CVPRW,NTIRE2019 clean track SSIM得分第二名)

  1. 网络结构:

1594016079882

  • 光流信息是通过预训练的FlowNet2.0获取的;
  • 上图显示的是一阶段的,第一阶段的input没有下边估计的HR帧;
  • loss:Huber loss;
  1. 贡献点:

    1)多阶段超分网络,将上阶段输出的HR视频帧作为下一阶段的输入,不断优化超分结果;

NTIRE2019 Video Deblurring and Super-Resolution(第一届视频超分比赛)

  • 数据集:REDS (不同视频,300video共30000帧$720\times1280$);
  • 300个视频,240个训练,30个验证、30个测试;
  • 4个赛道:motion blur、motion blur with compression artifacts、bicubic downscaling(scale为4)、bicubic downscaling with motion blur;
  • 评价指标:基于RGB的PSNR和SSIM;

NTIRE 2019 Challenge on Video Super-Resolution: Methods and Results

  • NTIRE的参赛队伍都没采用RNN结构,而是堆叠channel,交给CNN学习;
  • 大多的队伍结果采用self-ensemble(利用水平镜像和旋转90度作为输入得到的结果);
  • 参赛队伍采用的数据增强方法有:镜像和旋转90度;

NTIRE 2020 Challenge on Video Quality Mapping: Methods and Results(NTIRE2020)

  • 两个track: track1-将压缩的视频映射为更少压缩的视频(全监督,压缩视频通过H.264获取);track2:将低质量设备拍摄的视频映射到高质量设备拍摄的视频(弱监督,有非成对的LR HR视频);
  • track2无提交,track1有7提交,提交方案大多采用PCD模块;

Zooming Slow-Mo: Fast and Accurate One-Stage Space-Time Video Super-Resolution(2020,CVPR)

  1. 训练数据:LR视频帧降采样4倍获取($32\times32$),将奇数帧取出;
  2. 数据增强:随机旋转90度、180度、270度、水平镜像;
  3. 网络结构:

在这里插入图片描述

  • 奇数帧的特征经由帧特征时序插值模块合成中间缺失的偶数帧的特征,特征提取和offset用的是EDVR的PCD模块,网络结构如下:

在这里插入图片描述

  • DeformableConvLSTM模块提取时序信息进行时序对齐和融合得到high level特征,最后通过高分辨率帧重建模块得到HR的所有帧,DeformableConvLSTM模块如下图所示:其中h和c代表LSTM中的隐含层和记忆cell;

在这里插入图片描述

  • 连续输入4帧预测出7帧;
  • RGB三通道重建;
  • loss:MSE;
  1. 预测结果:

    1)输入四帧$64\times112$,输出$256\times118$视频帧所需时间约为213.6ms;

    2)vid4平均PSNR:24.152;

    3)预测图像或视频请参看results/zsm;

  2. 贡献点:

    1)提出了一个一阶段的时空超分网络。在统一的框架里同时解决帧插值和视频超分,比起把两个任务的方法单纯串联起来做在性能、计算资源等方面都要好;

    2)针对中间LR帧,提出了一种基于可变形采样的利用局部时序上下文信息的帧特征时序插值网络;

    3)设计了一种新的可变形卷积加ConvLSTM模型来显式地增强时序对齐能力,并利用全局时序上下文信息来处理视频中的大运动;

    4)相比直接串联现存最好的帧插值方法和视频超分方法组合成的二阶段方法,该方法结果好,速度快;

TDAN: Temporally Deformable Alignment Network for Video Super-Resolution(TDAN,2020,CVPR)

  1. 训练数据:Vimeo,输入选用大小为48×48 的连续5帧,LR视频帧通过高斯核+bicubic下采样方法获得;
  2. 网络结构:

在这里插入图片描述

  • 整体框架包括时间可变形对齐网络和超分网络两部分;
  • 每个相邻帧分别和参考帧一起送入可变形对齐网络,再将得到的特征重建为对应的$I^{LR'}_i$
  • 可变形对齐:对提取出的参考帧和相邻帧的特征连接,再用瓶颈层减少输入通道;采样参数由卷积层进行预测,生成的卷积核偏移量参数用于可变形卷积中对相邻帧进行特征对齐;
  • 对齐帧重建:虽然可变形的对齐有可能捕获动作线索,并将特征$F_i^{LR} $ 对齐,但如果没有监督,很难对它进行学习。因此用一个卷积对该特征进行重建得到对齐帧$I^{LR'}_i$ ,并利用它与参考帧$I^{LR}_t$的对齐损失来进行学习;
  • 将所有的重建的$I^{LR'}_i$和参考帧连接后一起作为超分网络(亚像素卷积层)的输入;
  1. 贡献点:

    1)提出了时间可变形对齐网络(TDAN),无需计算光流,自适应地在特征层面进行对齐;

    2)TDAN使用参考帧和每个相邻帧的特征来动态预测采样卷积核的偏移量,用该采样核对相邻帧进行对齐操作;

Video Super-resolution with Temporal Group Attention(2020,CVPR)

  1. 网络结构:

在这里插入图片描述

  • 将连续的视频帧根据时间间隔分为多组,然后通过一个注意力模块和组间融合模块进行集成,同时,为了对齐大尺度运动的视频帧,采取了与以往基于光流或者可变形卷积不同的对齐方式,本文采用的是计算两个连续帧之间的单应性矩阵,然后将相邻帧warp到参考帧;
  • 组内融合模块(Intra-group Fusion Module):包括三个部分,第一部分有3个单元作为空间特征提取,每个单元由一个3x3卷积层、BN和ReLU组成,每个卷积层根据不同的帧率采用不同的扩张率,主要是基于帧的时间间隔大,运动幅度也比较大,反之运动幅度较小;第二部分使用3x3x3的3D卷积用于时空特征融合;最后每组产生的组级别融合特征采用2D dense block里面的18个2D单元,用于进一步整合组内帧信息;
  • 组间融合模块(Inter-group Fusion Module):由于邻帧与参考帧更加相似,慢帧率的组级别特征会有较丰富的信息,而快帧率的组级别特征会捕捉一些邻帧丢失的细节信息, 时间注意力作为一种指导,有效地整合不同时间间隔组的特征:

在这里插入图片描述

在这里插入图片描述

  1. 贡献点:

    1)根据时间对参考帧进行分组,使得对运动幅度较大和较小的效果都好;

Space-Time-Aware Multi-Resolution Video Enhancement(2020,CVPR)

  1. 网络结构:

在这里插入图片描述

  • 分为三个步骤:Stage1为初始化阶段;Stage2为微调阶段;Stage3为重建阶段;
  • 光流是提前计算的
  • loss:空间loss(对$I_t^{sr}$$I_{t+1}^{sr}$评估)+时间loss(对$I_{t+n}^{l}$评估)+空时loss(对$I_{t+n}^{sr}$评估),每个评估包含$L_1$和VGG loss;
  1. 贡献点:

    1)提出ST-SR联合训练网络;

    2)多个分辨率联合学习(最后的loss函数中的时间loss);

Video Face Super-Resolution with Motion-Adaptive Feedback Cell(2020,AAAI)

  1. 训练数据:Vocceleb,LR视频帧的获取方法:先对HR视频帧加高斯滤波,然后bicubic降采样,然后加高斯噪声;
  2. 网络结构:

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

  • MAFC通过S和Sigmoid函数可以去除冗余信息;E(卷积层)生成运动补偿;
  • loss:$L_1$loss;
  1. 贡献点:

    1)提出运动自适应的模块MAFC;

FISR: Deep Joint Frame Interpolation and Super-Resolution with A Multi-scale Temporal Loss(FISR,2020,AAAI)

  1. 训练数据:YouTube上4K 60fps视频,随机切出$192\times192$作为HR HFR视频帧;
  2. LR LFR视频帧构建:从原视频帧中连续取出9帧,隔一帧取出5帧,再利用bicubic降采样2倍;
  3. 网络结构:

在这里插入图片描述

  • 三个层级由粗到细生成HR HFR视频帧;
  • $\frac{1}{2}$$\frac{1}{4}$处也计算loss,ground trurh的获取,通过预训练的PWC-Net获取对应的光流,然后再warp获取;
  • YCrCb三个通道处理;
  • 训练时输入为5帧,预测时,输入为3帧;
  • loss示意图:

在这里插入图片描述

​ 1)Temporal Matching Loss:

​ stride1:$L_{TM}^1=||p_{-\Delta t/2}^1-p_{-\Delta t/2}^2||_2+||p_{+\Delta t/2}^2-p_{+\Delta t/2}^3||_2$

​ stride2: $L_{TM}^2=||p_{-\Delta t}-p_{-\Delta t}^1||_2+||p_{0}-p_{0}^2||_2+||p_{+\Delta t}-p_{+\Delta t}^3||_2$

​ 2) Temporal Matching Mean Loss:

​ loss:$L_{TMM}=||\frac{1}{2}(p_{-\Delta t/2}^1+p_{-\Delta t/2}^2)-y_{-\Delta t/2}||_2+||\frac{1}{2}(p_{+\Delta t/2}^2+p_{+\Delta t/2}^3)-y_{+\Delta t/2}||_2$

​ 3)Temporal Diffrerence loss:

​ stride1:$L_{TD}^1=\sum_{w=1}^3\sum_{s=0}^1||(p_{(w+\frac{s}{2}-\frac{5}{2})\Delta t}^w-p_{(w+\frac{s}{2}-2)\Delta t)}^w)-(y_{(w+\frac{s}{2}-\frac{5}{2})\Delta t}-y_{(w+\frac{s}{2}-2)\Delta t)})||_2$

​ stride2: $L_{TD}^2=||(p_{-\Delta t}-p_0)-(y_{-\Delta t}-y_0)||_2+||(p_0-p_{+\Delta t})-(y_0-y_{+\Delta t})||_2$

​ 4)Reconstruction loss:

​ stride1:$L_{R}^1=\sum_{w=1}^3\sum_{s=0}^2||p_{(w+\frac{s}{2}-\frac{5}{2})\Delta t}^w-y_{(w+\frac{s}{2}-\frac{5}{2})\Delta t}||_2$

​ stride2:$L_{R}^2=\sum_{s=0}^2||p_{(s-1)\Delta t}^w-y_{(s-1)\Delta t}||_2$

​ 5)Total Loss:

​ loss: $L_T=\lambda_{R}L_R^1+\lambda_{TM}^1L_{TM}^1+\lambda_{TMM}L_{TMM}+\lambda_{TD}L_{TD}^1+\lambda^2\cdot (\lambda_{R} \cdot L_{R}^2+\lambda_{TM}^2L_{TM}^2+\lambda_{TD}L_{TD}^2)$

  1. 预测结果:

    1)三帧$1080\times1920$预测三帧$2160\times3840$的时间约为40s;

    2)平均PSNR:FISR 37.86,SR 48.074;平均SSIM:FISR 0.974,SR 0.992;

    3)预测结果请参看 results/fisr;

  2. 贡献点:

    1)提出帧插和超分联合训练的网络;

    2)提出多尺度temporal loss函数;

JSI-GAN: GAN-Based Joint Super-Resolution and Inverse Tone-Mapping with UHD HDR video(2020,AAAI)

  1. 网络结构:
  • 生成器:

在这里插入图片描述

  • 生成器包含三个子网络:图像重建子网络、细节重建子网络(对细节的水平方向和垂直方向分别进行41次滤波)、局部对比度增强子网络(动态2D上采样,对Xb的每一个通道用$9*9$的2D滤波器,滤波器数目为$scale*scale$,然后再depth-to-space);
  • 是SR和ITM(逆色调映射)联合训练;
  • 判别器:

在这里插入图片描述

​ 两个结构一样的判别器,第一个判别器输入为生成的视频帧和groundtruth,第二个判别器输入为生成的细节图$P_d$和真实的细节图$Y_d$;

  • 处理YUV三个通道;

  • 预测时,将2K视频帧分成6块分别预测再合并;预测时是一帧预测一帧;

  • SDR每个通道的取值范围为0-255,HDR每个通道的取值范围为0-1023;

  • loss:包含三部分:重建损失、对抗损失和特征匹配损失

    $$L_G=\lambda \cdot ||Y-P||_2+\lambda_{adv}\cdot (L_{adv}^G+\lambda_{d}\cdot L_{adv}^{d,G})+\lambda_{fm} \cdot(L_fm+\lambda_d \cdot L_{fm}^d)$$

    其中特征匹配函数为$L_{fm}=\sum_{i=1}^4||fm_i(Y)-fm_i(P)||_2$

  1. 预测结果:

    1)一张$1080\times1920$预测一张$2160\times3840$视频帧所需时间34.74s;

    2)平均PSNR:35.777dB;

  2. 贡献点:

    1)VSR和ITM联合训练;

二、研究方向

  1. 注意力机制:

    • 视频超分辨率(VSR)可以直接采用单幅图像超分辨率(SISR)算法,但是生成的超分视频会产生闪烁,这是因为SISR算法忽略了相邻帧间的时间信息,因此VSR多采用多帧超分辨率(MFSR)算法;
    • 目前的MFSR算法一般将当前帧及其前后N个相邻帧作为输入,对相邻帧通过显式或隐式的运动补偿对齐到当前帧,再一起送入超分重建网络,重建当前帧,在此过程中,通常相邻帧对当前帧的贡献是相同的,但在视频中,可能某个或某几个相邻帧场景发生重大变化,对当前帧提供的信息较少,因此,自主学习每个相邻帧的贡献权重,会使得重建效果更好(如NTIRE2019视频超分冠军算法采用时间注意力机制获得较好的超分性能);
    • MFSR算法一般取固定的视频帧长度,因为过多的相邻帧不但会增加时间消耗,而且会致使重建性能下降,但是过少的视频帧,重建性能也会降低,因此,视频帧长度的选取严重依赖于经验;而且每个当前帧对相邻帧的依赖数量应该也是不同的;因此如何设计算法使得能够自动获取相邻帧长度的依赖是值得研究的方向;
    • MFSR算法是多帧输入,一帧输出,如果能够多帧输入多帧输出,会显著提升视频重建的速度;
    • BERT是自然语言处理(NLP)领域里程碑式的算法,完全舍弃了CNN和RNN传统的神经网络结构,采用注意力机制构建整个网络,在NLP领域的多项任务中取得了重大突破;BERT能够自主学习对上下文的依赖程度(对应于视频帧中对前后多帧的依赖权重,即时间注意力机制),而且具有多个输入多个输出的结构,因此如果将BERT思想用于VSR,可能会获取较好的重建效果;
    • 超分辨率重建是基于像素进行重建的,因此除了对前后帧的依赖需要建模(即时间注意力),还需要关注相邻像素点间的依赖,即空间注意力;

    基于上述分析,可能的研究方向如下:

    • 将BERT的结构应用于VSR,BERT的输入为多个连续的一维向量,但是VSR需要输入多个连续的二维图像,因此将BERT的结构进行调整使其适用于二维输入;此外,BERT结构只采用了时间注意力机制,不关注每个输入内部像素点之间的依赖关系,因此,我们还需要将空间注意力机制添加到BERT架构中;BERT多个输入多个输出的结构设计使得我们能够同时获取多个重建的视频帧;
  2. 重建难度自适应:

    • VSR重建一个视频帧时,视频帧内的像素或区域重建的难度是不一样的,比如有的视频背景比较单一,而前景的运动比较复杂,而目前所有的MFSR算法对视频帧内每个像素的处理都是一样的;

    基于上述分析,可能的研究方向如下:

    • 根据重建的难易程度,对LR视频帧的不同区域(或像素)自动分配权重,根据分配权重的位置,可以分为三个方向进行研究:

      1)在网络末端分配权重:设计损失函数可以自动根据某项指标(如像素级损失的大小)对难例分配更多权重;

      2)在网络前端分配权重:在重建网络之前,对LR视频帧划分不同的区域,定义每个区域重建的难易程度,对重建难度大的区域计算损失函数时分配更多的权重(当视频帧数比较多或者对视频重建速度要求比较高时,此类方法不适用);

      3)在网络中分配权重:在网络中根据提取的特征自动学习每个区域(或每个像素)重建的难易程度,在损失函数计算时,对重建难度大的区域分配更大的权重系数;

  3. 3DCNN

    • 3DCNN在VSR领域性能优于2DCNN,且3DCNN会自动学习连续帧之间的时间信息,但因其参数量较多、计算量较大,因此在VSR领域的应用受到了限制;

    基于上述分析,可能的研究方向如下:

    • 将2DCNN轻量级的设计结构(如inception、mobilenet)应用于3DCNN,从而构建基于3DCNN的VSR算法;
  4. 轻量级网络:

    • 当前的VSR算法在计算设备性能较高时(如GPU)几乎也不能实时地对视频帧进行超分辨率,大多算法只关注重建超分视频的效果,而忽略了时间消耗;而在直播、网络视频播放等情景,需要视频帧能够在非GPU设备上实时地重建;

    基于上述分析,可能的研究方向如下:

    • 对每一帧都利用相同的网络进行重建是比较耗时的,如果只对关键帧利用复杂网络进行重建,非关键帧利用重建的关键帧和其他信息基于轻量级网络重建肯定可以加快视频的重建速度;

    • 设计轻量级且效果好的VSR算法,可以从以下几个方向进行处理:

      1)将2DCNN中轻量化的设计理念运用到VSR领域,加快网络的重建速度;

      2)对输入视频帧通过space-to-depth操作,将部分像素点转移到通道中,从而减小特征尺寸,加快网络的重建速度。

⚠️ **GitHub.com Fallback** ⚠️