EDVR: Video Restoration with Enhanced Deformable Convolutional Networks

EDVR:基于增强可变形卷积网络的视频恢复

论文:https://arxiv.org/pdf/1905.02716.pdf

代码:xinntao/EDVR: Winning Solution in NTIRE19 Challenges on Video Restoration and Enhancement (CVPR19 Workshops) - Video Restoration with Enhanced Deformable Convolutional Networks. EDVR has been merged into BasicSR and this repo is a mirror of BasicSR. (github.com)

本篇笔记主要对整篇论文从头到尾进行阅读分析,本文内容有点多,主要是对不同部分的总结以及图例解释,如果只对模型原理部分有兴趣,可直接观看第四部分。

本文为了详细说明各图、公式在各组件中的情况,所以对原文图片、公式做了切割和拼接,保证该内容是在该组件中生效的。

目录

(1)摘要

(2)引言

(3)相关工作

(4)本文方法介绍

(4.1)PCD模块(Alignment with Pyramid, Cascading and Deformable Convolution)

(4.2)TSA模块(Fusion with Temporal and Spatial Attention)

(4.3) 两阶段策略

(5)实验

(5.1)相比较其他模型的实验结果:

(5.2)消融实验实验结果:

总结 :


(1)摘要

NTURE19挑战赛的REDS任务,两个挑战:(1)对齐大运动的多个帧。(2)有效融合具有不同运动和模糊的不同帧。本文的解决方案:(1)处理大范围运动,本文设计一种金字塔、级联和可变形(PCD)模块(从这就可以看出,本文模型的参数量应该不小),应用于特征级的针对齐。(2)提出时间和空间的注意力机制(TSA)融合模块,用于后续帧的恢复。

(2)引言

目前的VSR的pipelines通常由特征提取、对齐、融合和重建构成(可以看BasicVSR中的对于目前的VSR的归类,实际上可以普遍分为传播、对齐、融合以及上采样四部分),对于遮挡、大运动和严重模糊主要是对对齐和融合产生挑战。

对齐:当前的方法主要是两个分支,(1)显示运动估计,通过明确估计目标帧和参考帧之间的光流场,根据估计的运动长扭曲参考帧来实现对齐。(2)隐式运动估计,目前的研究是通过研究动态滤波器(DUF,可以看我前面的文章)和可变形卷积(DCN)来实现隐式的运动补偿,实现对齐。而对于基于光流的方法,精确的光流估计和扭曲很耗时,并且在大运动情况下,很难执行显示或隐式的运动补偿。

融合:当前的方法分为两种:(1)使用卷积对所有帧进行早期融合。(2)采用递归网络进行逐步融合。但是这两种方式没有考虑对齐帧上潜在的视觉信息量和位置信息都是不同的,受到模糊和不完美对齐的问题,不利于进行重建。

本文的解决方案:

EDVR:两个核心(1)金字塔(Pyramid)、级联(Cascading)和可变形(Deformable),(PCD)对齐模块。(2)时间和空间的注意力机制(TSA)融合模块。

PCD模块使用可变形卷积将每个参考帧与目标帧对齐,将特征信息从粗到细进行对齐,但是对于文中的说明我觉得可能存在问题,文中说以金字塔的模式从低尺度的特征获得粗略运动信息,然后再到高尺度获得高精度运动信息。根据文中的内容,在金字塔形的可变形卷积中,作者是将特征图进行下采样获得低尺度的特征图,下采样会丢失某些特征,使可变形卷积获得粗略的运动信息,然后将粗略信息上传,提高大尺度特征图的在卷积中获得运动补偿信息的速率和效果

TSA融合模块,通过计算目标帧和参考帧特征之间的元素相关引入注意力机制,通过相关系数对每个位置的相邻特征进行加权,来表示该特征对于重建特征的影响,最后对所有加权特征进行卷积核融合。

从现在来看,本文对于视频处理的实时性要求不高,但是优于19之前的模型,缺点就是参数太大,相比较DUF可以看出还是比较有优势的。

(3)相关工作

本章节对VSR方法、DCN卷积以及注意力机制进行了简单介绍,文中主要应用这些思想,所以了解的话就没必要看了。

(4)本文方法介绍

本文的EDVR模型应用于视频超分和去模糊方面,下图是EDVR的统一架构,图中架构说明,左边的下半部分和PreDeblur Module模块是用于去模糊的,不是本次blog说明的重点,所以进行简要的说明:(去模糊在于将模糊内容通过其他相邻参考帧的补充,来补充模糊内容,对连续视频帧进行下采样,输入模糊的预处理模块,进行pipline中处理)。左边的上半部分用于视频超分。

本文中的VSR方法,将2N+1帧视频作为输入,t时刻帧作为目标帧,[N-t , N+t]范围帧作为参考帧,经过PCD对齐模块后,得到目标帧的以及2N个对齐后的特征,经过TSA模块,将进行融合,并提取出特征后重建SR视频帧。

作者提出PCD模块用于处理帧间对齐和TSA用于进行特征融合。所以我们着重讲一下这两个模块。

(4.1)PCD模块(Alignment with Pyramid, Cascading and Deformable Convolution)

本文使用的PCD模块,使用DCN可变形卷积进行扭曲,如上所说的使用隐式运动补偿来进行扭曲对齐操作。在PCD中采用金字塔模式进行多级对齐,由粗到细的方式,最后进行对齐操作,解决出现复杂运动和大范围运动的问题。

文章中首先对VSR中的DCN使用进行介绍,将输入的目标帧(t 帧)与参考帧(t + i帧)进行简单concat之后,通过卷积学习到offset,将offset用于参考帧,配上权重 以及调制参数,其中K表示的位置的个数,例如k=3,表示3*3的卷积核∈{(−1, −1), (−1, 0), · · · , (1, 1)},经过求和留下p0位置的特征。

而对于输入的连续帧,包含每个参考帧与目标帧的对齐都生成一组偏移矩阵,所有帧的偏移矩阵如下图计算。其中其中[⋅,⋅] 表示concat操作,

--------------------------------------------------------------------------------------------------------------------------------

上述的内容是对DCN在VSR中使用的介绍,而在本文中,作者介绍不考虑 调制参数 ,只关注offset。所以PCD模块的结构如下图所示:

首先,如上图所示,左边蓝线表示这是一个金字塔层级的模型,每层都是使用DCN进行变形卷积,对上图 t帧 和 t+i 帧的对齐进行说明。首先,将目标帧和参考帧通过卷积各自输出feature map作为金字塔L1层的特征信息

1,黑色虚线部分,对t帧图片和t+i帧图片进行使用跨步卷积stride=2进行下采样,生成L2层的两个特征信息。如法炮制,生成L3层的特征信息。

2,到达顶层的L3层之后,根据黄色实线,将的特征做Concat,并进行卷积降低通道数之后,生成L3层的offset。根据蓝色实线方向,获得offset之后,将和offset通过DConv进行对齐,生成对齐特征

具体的计算过程如下图所示,是表示   层的 t+i 帧偏移矩阵,表示学习offset网络,使用双线性插值进行2倍上采样。表示可变形卷积。表示一般的卷积过程。例如L2层的偏移矩阵,是L3层的偏移矩阵经过上采样后于L2层特征concat数据计算出这一层的offset,逐层上移,得到最终的对齐结果。

3,左侧紫色虚线是对上一层的offset进行双线性插值的上采样。右侧紫色虚线是对上层对齐的特征进行双线性插值的上采样。

至此就完成了PCD模块的帧对齐工作,该模块不依赖于光流估计的精确度,使用DCN进行隐式运动补偿的对齐操作,并且利用金字塔模型的层级,对不同分辨率的特征进行由粗到细的提取对齐,使其能应对复杂运动和大视差的问题。

(4.2)TSA模块(Fusion with Temporal and Spatial Attention)

本模块的设计主要是针对两个方面:

  1. 不同的相邻帧因为时序、模糊、视差以及遮挡等问题,为目标帧提供的参考特征信息量是不相同的;
  2. 对齐效果不好的帧,会导致融合的时候前后帧的内容不一致,影响重建效果。

本模块的结构流程如下图所示:

时间注意力:

pipeline中到TSA模块,获得2N个对齐特征,对每个对齐特征都使用目标帧来计算一个注意力热图,表示帧间的相似距离。这个就是时间注意力。

计算方式如下图:

(1) 求权值公式

(2) 得到最终的时间融合特征

其中是相邻帧的对齐特征,是目标帧的特征。分别表示对目标帧的特征和参考帧的特征的卷积,之后按通道进行相乘和累加得到单通道的特征图,最后经过sigmoid得到时间注意力图。

空间注意力

融合之后的结果包含2N个时间维度的特征图,如图中下半部分所示,得到的时间注意力图,首先使用两次下采样,然后在通过上采样的操作获得和尺寸相同的空间注意力,进行element-wise相乘、相加得到最终的融合特征,输入重构模块中。

其中图中下半部分的标志:表示element-wise相乘、相加、上采样

(4.3) 两阶段策略

级联类似但较浅的EDVR网络以细化第一级的输出帧。其好处有两个:

1)有效地消除了前一种模型无法处理的严重运动模糊,提高了恢复质量;

2) 它缓解了输出帧之间的不一致性。

(5)实验

训练数据集:REDS、Vimeo-90K

测试数据集:REDS4(从REDS中抽取的4个视频)、Vid4、Vimeo-90K-T

迭代优化器:Adam optimizer

学习率:4*10^-4

PCD模块:5个RB(残差块)

EVDR2:级联的第二阶段20RB

重建模块:40个RB

batchsize:32

LR的size:64*64

损失函数:Charbonnier loss

(5.1)相比较其他模型的实验结果:

(5.2)消融实验实验结果:

总结 :

这篇文章也是针对对齐和融合部分,进行了设计改进,提出金字塔级联可变形对齐模块以及时空注意力融合模块,这个片模型的设计可以对提取出的特征进行权重分配,更好的对提取和融合的特征信息进行提取。利用不同层级之间的信息传递以及由粗到细的特征提取,完成大视差和复杂运动的对齐。但是因为本模型为了解决上述的两个问题,所以使用了复杂的结构,金字塔型的信息传递、注意力机制的使用以及两阶段策略,所以本模型在取得良好效果的同时,也附带较大的参数量,对于部分工业需求,可能需要对模型本身进行缩减。

EDVR: Video Restoration with Enhanced Deformable Convolutional Networks阅读笔记相关推荐

  1. 视频重建论文EDVR: Video Restoration with Enhanced Deformable Convolutional Networks阅读笔记

    论文来源:CVPRW2019 论文链接:http://ieeexplore.ieee.org/document/9025464 项目地址:GitHub - xinntao/EDVR: Winning ...

  2. 论文笔记之EDVR: Video Restoration with Enhanced Deformable Convolutional Networks

    EDVR: Video Restoration with Enhanced Deformable Convolutional Networks 金字塔.级联和可变形卷积的对齐 时间空间注意力融合 整体 ...

  3. 视频超分:EDVR(EDVR: Video Restoration with Enhanced Deformable Convolutional Networks)

    论文:EDVR:视频超分与加强的可变形卷积网络 文章检索出处: 2019 ICCV 摘要和简介 为了处理较大的运动,我们设计了一个金字塔,级联和可变形对齐模块 (PCD).在该模块中,使用可变形卷积从 ...

  4. Deformable Convolutional Networks论文翻译——中英文对照

    文章作者:Tyan 博客:noahsnail.com  |  CSDN  |  简书 声明:作者翻译论文仅为学习,如有侵权请联系作者删除博文,谢谢! 翻译论文汇总:https://github.com ...

  5. 可变形卷积网络--Deformable Convolutional Networks

    https://arxiv.org/abs/1703.06211 Microsoft Research Asia Code coming soon 本文可以看做是对 Spatial Transform ...

  6. Deformable ConvNets--Part4: Deformable Convolutional Networks

    转自:https://blog.csdn.net/u011974639/article/details/79704043 关于Deformable Convolutional Networks的论文解 ...

  7. Deformable Convolutional Networks论文翻译——中文版

    文章作者:Tyan 博客:noahsnail.com  |  CSDN  |  简书 声明:作者翻译论文仅为学习,如有侵权请联系作者删除博文,谢谢! 翻译论文汇总:https://github.com ...

  8. CNN卷积神经网络之DCN(Deformable Convolutional Networks、Deformable ConvNets v2)

    可变形卷积网络Deformable ConvNets V1.V2 前言 一.Deformable Convolutional Networks Deformable Convolution Defor ...

  9. Deformable Convolutional Networks

    Deformable Convolutional Networks Deformable Conv 论文链接: https://arxiv.org/abs/1703.06211 一. Problem ...

最新文章

  1. 【Nginx】如何建立新连接
  2. 函数递归简单题-hdoj-2044 2018-一只小蜜蜂 母牛的故事
  3. 男朋友出的性格测试题
  4. python经纬度获取县名_利用 Python 批量获取县镇运输距离
  5. 最新37网游JS逆向分析
  6. 数据挖掘技术有哪几种
  7. Mapped Statements collection already contains value for com.wen.mapper.ProjectMapper.xxx
  8. 2022款华硕灵耀pro16和华硕proart创16区别哪个好哪个更值得入手
  9. string类的常用方法
  10. 设计用于环境监测的无线传感网多跳数据采集、传输系统。在PC机上能显示当前测得的温/湿度、光照等环境信息。当光照超过一定阈值时,感知节点通过LED信号灯给以报警。
  11. macOS Big Sur 11.2.3 (20D91) 正式版发布,百度网盘下载
  12. (实测可用)STM32CubeMX教程-STM32L431RCT6开发板研究串口通信(printf)
  13. SimpleDateFormate日期字符串转换(墨雪亲测)
  14. OpenGL ES总结(一)OpenGL 初识
  15. SAP 接口测试操作-顾问
  16. Spring Boot中使用Convert接口实现类型转换器
  17. 使用nodejs、express以及MySQL制作一个简单类淘宝的登录注册页面
  18. jquery拼接html
  19. LCD1602显示屏的驱动设置及例程
  20. android笔记:长按APP图标弹出快捷方式(shortcuts)

热门文章

  1. python 生孩子朋友圈_宝宝出生怎么发朋友圈 生宝宝朋友圈报喜的句子
  2. 爬虫——解析图书排行榜图书信息
  3. SysML实践指南第二版(中文翻译:刘亚龙)第9章 序列图
  4. mysql三国人物库_一文带你使用neo4j生成三国人物社交关系图
  5. 云游戏能成为5G第一个杀手级应用吗?
  6. 禁止 mysql nobody_linux中nobody账号的相关解释
  7. 【游戏开发阅读列表2】动画(Anima2D、粒子、物理等)
  8. java实现飞机大战小游戏——————【附素材、源码、逐行注释讲解】
  9. 【fake location破解版】加强版随风2.0定位助手使用方法
  10. POJ2942 UVA1364 Knights of the Round Table 圆桌骑士