Real-Time Video Super-Resolution with Spatio-Temporal Networks and Motion Compensation 论文笔记
Real-Time Video Super-Resolution with Spatio-Temporal Networks and Motion Compensation 论文笔记
摘要
- 作者的目的是引进一个spatio-temporal sub-pixel convolution networks,能够处理视频图像超分辨,并且做到实时速度。还提出了一个将动作补偿和视频超分辨联合起来的算法,并且可以端到端训练。
- 与单帧模型相比,时空网络即可以减少计算,又可以维持输出质量。
简介
- 超分辨问题一直是信号处理领域中的一大挑战。在多帧超分辨问题中,假设能够对同一场景的不同观察,它们所共有的显示冗余(explicit redundancy)可以用来限制求解空间。
- 在之前的ESPCN方法中,已经能够做到非常快速的超分辨了,但是简单地用来处理每一帧视频便没有利用帧之间的关联信息。而VSRnet虽然有联合地处理多个输入帧,但是动作补偿算法不当,速度较慢,不能做到实时。
- Spatial transformer networks可以推断两个图像间的映射参数,并且成功运用于无监督光流特征编码中,但还未有人尝试用其进行视频动作补偿。
- 作者用的结构是,用spatio-temporal networks进行超分辨,其中early fusion,slow fusion等来处理时间维度。另外还基于spatial transformers建立了动作补偿框架,与时空模型相结合,就可以得到非常好的video SR with motion compensation。
I′LRt−1 和ILRt−1 的区别:ILRt−1 和ILRt 是两个不同帧,图像中物体的位置可能发生了变化,通过warp可以使I′LRt−1 和ILRt 中物体的位置差不多一样(有略微区别),然后再送进ESPCN超分辨。
方法
1. Subpixel convolution SR(不介绍了)
2. Spatio-temporal networks
- Spatio-temporal networks可以处理输入为许多帧的情况,多个帧融合的方法有early fusion,slow fusion,3D convolution三种。其中3D convolution是slow fusion的权重共享的形式。具体看图
3. Spatial transformer motion compensation
- 光流大致可以理解为帧
It+1 和帧It 之间点的运动关系。插值的意义是,warp之后那些变换后的点可能不在grid上,即计算出来的坐标不是整数,需要用插值方法把这些点弄到grid上。 - 之后,作者采用的框架为下图。首先一个网络估计粗糙的光流,并生成粗糙的目标帧,这两个再和原始两个帧输入网络,得到精细的光流,和粗糙光流一起得到最后的帧。输出使用tanh**层,让像素在正规化空间中放置(不懂)。其中,warp过程就是用STN实现的。为了训练这个网络,作者设置了MSE损失和Huber loss两种损失。
实验
- 实验用的是CDVL数据集,包含115个HD视频。其中100个视频用来训练,随机提取得到3000个训练对sample。根据网络结构来决定这个sample是单张图还是一组图像序列。
- 训练的具体参数不提,到时候代码实现。
- 实验的结果简而言之,就是:
- 多帧效果好于单帧,但帧数太多性能也会下降,可能是因为帧数多了噪声也随之变多
- slow fusion在网络变深时效果才好于early fusion。
- 有补偿的效果好于没补偿的。首先,图5展示了MC的效果,图6和表3展示了加了MC后的优越性。
- 和别的方法相比,用的Vid4数据集。指标除了PSNR,SSIM,还有MOVIE(有考虑到视频质量和时间一致性)。结果不用多说,自然是VESPCN更好。