nb_200905_2019_cvpr_Slow-Motion from Blurry Videos
Learning to Extract Flawless Slow Motion from Blurry Videos
2019cvpr|预训练模型:slow-motion.pth
0. Abstract
- 本文目标是:给定一个低帧率的模糊视频,生成一个清晰的慢镜头视频。本文提出一个数据驱动的端到端方法,其训练数据由高帧率摄像头捕获,再经均值处理后得到对应的模糊视频。
- 时间平滑问题
- 由于各个图像帧是独立估计的,因此尽管能够从均值模糊图像得到原始高清视频,却无法保证能够获得平滑的完整视频。
- 为此本文提出由两个子网络组成的系统:
- DeblurNet:预测高清关键帧
- InterpNet :帧间插值。
- 该结构还能够 增强帧率,且无需重新训练网络 —— 只需在帧间递归应用InterpNet。
- 本文网络可将模糊视频帧率提高至20倍。
一. 问题背景
- 快速运动物体理解任务对于人眼而言十分艰巨,通常需借助特殊硬件实现——商业相机可以以极低运动速度捕获事件。然而一方面高质量的相机设备非常昂贵,大多用于影视制作中;另一方面廉价替代品则提供最高240fps的帧率,其缺点如下:
- 低信噪比:越高的帧率则曝光时间越短,从而传感器接收到的光照量越少,则信噪比越低。
- 资源消耗大: 这类摄像头通常都需要较大的传输带宽和存储空间。
- 资源浪费:高帧率图像中许多图像内容重复不变,从而浪费整体资源。
- 针对以上高帧率且高噪声敏感性的硬件问题,一个方法是进行去模糊 (deblurring) 操作。另一个廉价解决方案是:使用长曝光摄像头获得低帧率视频,再通过后期插帧运算提高其帧率。但长曝光会导致运动物体变模糊。,直接插帧会得到不真实的高帧率模糊视频。
- 要实现上条目标,一个直接方案是:按顺序结合现有最好的视频去模糊 (video deblurring) 方法[24,2017,cvpr]和视频插帧 (video interpolation) 方法[6,2018,cvpr],从而既能够从输入的模糊帧得到对应的清晰帧,还能够提高清晰帧的帧率使其更平滑。
- 但缺点是:对某一帧的deblurring操作消除了十分有用的时间信息——模糊帧是其所有中间帧的平均值,包含有它们的相关信息。deblur之后的清晰帧就只包含其中某一帧的具体信息了。
二. 相关工作
A. Motion Deblurring
- 传统方法将之视为一个空间不变的模糊模型 (space-invariant blur model),通过引入自然图像的先验或正则化的数据分布特性来解决模糊图像的不适定性 (ill-posedness)。
- 然而由于景深不同以及摄像头和物体的非平移运动,真实图像通常都是空间变化的模糊 (space-varying blur)。
- 早期(2014年左右)的核方法通过同时考虑模糊核和景深,或通过场景分割来解决这一问题。
- 近期引入CNN来实现。但这些方法常会降低图像对比度,从而生成类似卡通的不真实效果。
- Deblurgan[13,2018,cvpr]采用GAN来恢复在去模糊阶段丢失的高频细节,从而渲染出更真实的图像。
- 针对视频去模糊 (video deblurring):
- 早期文章考虑了相邻帧之间的相似性,并利用相邻帧之间的清晰块进行互补。
- [24]部署了一个 U-net 结构,同时输入5个连续模糊帧,输出其中第三帧的去模糊图像。[10]引入了循环结构 *(recurrent)*以实现实时性能。
B. Frame Interpolation
- 插帧常用于帧率转换、图像变形、基于运动的视频压缩等。
- 传统方法通过帧间光流估计和给定图像构造模式,能够在任意位置插帧。但插帧质量严重依赖于光流准确度。
- 近期引入数据驱动的端到端CNN模型 (data driven, end-to-end)
- [17]将待插帧中的每个像素看作输入帧之间对应块 (patches) 的一个局部卷积,从而为每个像素学习一个空间可变含有多个独立卷积核的CNN。
- 针对多帧插值,[6]提出了基于特殊处理遮挡的流式CNN。
- 但这些插帧方法通常是针对清晰图像的。与本文目标最接近的是[7],它从单幅运动模糊图像中提取7帧图像。其缺陷在于:
- 无法确定7帧图像顺序;
- 无法保证帧间平滑。
三. 本文方案
A. 本文贡献
- 本文是第一个实现从模糊视频生成清晰慢镜头视频任务的论文。
- 创建了高质量视频数据集,可用于去模糊、插帧及其它任务。
- 提出了一个解决目标问题的网络结构:平滑插帧、提取运动模糊帧的运动信息、任意帧率插帧、比之前文章生成更高质量的慢镜头视频。
B. 总体方案
- 系统包含两个自网络:
- DeblurNet
网络结构如下:
输入4个模糊帧,输出位于中间两个模糊帧之间的5个清晰关键帧 (参考上图中输入部分的两个连续的蓝色块和粉色块,输出帧分别位于同色两块之间)
- InterpNet
网络结构如下:
输入两个连续关键帧和两个模糊输入,在位于两个关键帧之间生成插入的一个清晰帧。
三个优点:
- (1)加入模糊输入帧,从而提取出其中的运动信息,能够生成更有真实感的中间帧。
- (2)通过清晰关键帧,可以确保输出帧在时间变化上的平滑性。
- (3)通过在输出对上递归应用该网络,能够进行任意输出帧率的插帧。实验表明,最高能将帧率提高至20倍。
- DeblurNet
- 本文合成了模糊\清晰图像数据集,
- 其中清晰图像通过高帧率摄像机(Sony RX V)捕获。图像参数:分辨率1080P,帧率250FPS。
- [24]等文章采用手机摄像头或GoPro采集视频,这些视频本身信噪比很低,而本文采集视频则具有更高的质量。(已开源)
- 再对各清晰图像进行平均化并添加噪声,得到对应的模糊图像。
- 其中清晰图像通过高帧率摄像机(Sony RX V)捕获。图像参数:分辨率1080P,帧率250FPS。
nb_200905_2019_cvpr_Slow-Motion from Blurry Videos相关推荐
- 视频中的运动特征--Learning Motion Patterns in Videos
Learning Motion Patterns in Videos CVPR2017 Torch code: http://thoth.inrialpes.fr/research/mpnet 本文要 ...
- 【CVPR2019】论文完整列表一
CVPR 2019 Paper list No.1-1000 ?CVPR2019 完整列表二 论文题目与链接 Finding Task-Relevant Features for Few-Shot L ...
- CVPR2019论文题目中文列表
英文题目 中文题目 Finding Task-Relevant Features for Few-Shot Learning by Category Traversal 少镜头学习中用类别遍历法寻 ...
- (九:2020.08.27)CVPR 2019 追踪之论文纲要(译)
CVPR 2019 追踪之论文纲要(修正于2020.08.28) 讲在前面 论文目录 讲在前面 论坛很多博客都对论文做了总结和分类,但就医学领域而言,对这些论文的筛选信息显然需要更加精细的把控,所以自 ...
- 视频插帧--Video Frame Interpolation via Adaptive Convolution
Video Frame Interpolation via Adaptive Convolution CVPR2017 http://web.cecs.pdx.edu/~fliu/project/ad ...
- CVPR 2011 全部论文标题和摘要
CVPR 2011 Tian, Yuandong; Narasimhan, Srinivasa G.; , ■Rectification and 3D reconstruction of curved ...
- 【今日CV 视觉论文速览】14 Nov 2018
今日CS.CV计算机视觉论文速览 Wed, 14 Nov 2018 Totally 25 papers Daily Computer Vision Papers [1] Title: Fast Hum ...
- ECCV 2018 完整论文集 -- List 下载链接
下文列表为ECCV2018官网得到了今年接收论文列表,共779篇: 下文为ECCV2018的全部接收论文汇总 Oral: Convolutional Networks with Adaptive Co ...
- GitHub 3.6k Satr自监督学习(Self-Supervised Learning)资源你值得拥有!
自我监督学习已成为AI社区中令人兴奋的方向. Jitendra Malik: "Supervision is the opium of the AI researcher" Aly ...
最新文章
- html游戏键盘控制,键盘控制方块移动.html
- 一个当了爹的程序员的自白
- 英特尔CFO:裁员为加速转型 是艰难但正确的决定
- 作业五—个人项目-小学四则运算 “软件”之升级版1
- mt7628 pcie挂载nvme并测试
- android onpreviewframe保存mp4_无需第三方工具!教你如何保存抖音完整版视频
- java掉单_【Java】抄答案就是了,两套详细的设计方案,解决头疼的支付掉单问题...
- 【转】游戏编程中的人工智能技术--神经网络
- leetcode 9 --- 回文数
- 视觉SLAM笔记(28) Ceres
- 输入这是我的第一个python程序_「vs2017」vs2017 开始自己的第一个Python程序 - seo实验室...
- 购物车ajax php json,Ajax+json实现购物车结算
- 如何混淆.NET 程序集与 ConfuserEx
- 备战蓝桥杯(4)——第九届蓝桥杯嵌入式省赛赛题实战
- 计算机组装主板插线图,电脑组装之主板接口线缆怎么安装【图解教程】
- python计算圆周率_【Python】计算圆周率到小数点后任意位数
- android 4.1.2大小,4.1.2 Activity初窥门径
- bls java_Java PairingFactory.getPairing方法代碼示例
- 信息技术与计算科学(二)信息的度量
- SUN公司Java认证和考试纵览
热门文章
- 并发编程知识总结,软件开发架构,socket套接字模板,粘包问题,struct解决粘包问题,上传大文件数据,socketserver,关于操作系统的发展史,进程,线程。...
- Vue3 中如何加载动态菜单?
- 09组团队项目-Beta冲刺-5/5
- cocos2d-x apk 打包路径太深
- 主成分分析 python实现
- 氟化硼二吡咯(BODIIPY) FL炔烃/氨基/羧基/NHS脂/叠氮/酰胫/马来酰亚胺/四嗪/DBCO
- 三星typec转接耳机没反应_typec转3.5mm转接线,你买对了吗?
- Jquery Jqprint—随着Jquery Jqprint实现网页打印
- vue项目的导出功能
- 解决了.Net 2003“试图调试项目时发生错误”的问题