点击上方“CVer”,选择加"星标"置顶
重磅干货,第一时间送达
鱼羊 发自 凹非寺
来源:量子位(QbitAI)
右边的画面,是不是比左边的画面看上去稳定许多?
这样的效果,大家可能并不陌生。现在,不少手机厂商都为自家手机配备了类似的防抖算法,为你拍摄生活Vlog提供便利。
不过,目前的智能手机在面对复杂的抖动时,主要是通过电子防抖(EIS)的方式来实现画面的稳定。
也就是说,需要对画面的边界进行裁剪,通过“后期处理”,实现画面的稳定:
△图片来自TDK
而现在,一项来自台湾大学、谷歌、弗吉尼亚理工大学和加州大学默塞德分校等研究机构的论文,提出了一种无需裁剪的全帧视频稳定算法。
NeRViS
Neural Re-rendering for Full-frame Video Stabilization
论文:https://arxiv.org/abs/2102.06205
项目:https://alex04072000.github.io/NeRViS
代码:https://github.com/alex04072000/NeRViS
即使是奔跑中拍摄的画面,也能稳定不少。
那么,这只AI具体是如何做到防抖的?
方法原理
该方法的核心思想,是融合视频中多个相邻帧的信息,来呈现无需裁剪的完整稳定视频。
具体而言,对于输入视频,首先对每一帧图像特征进行编码,并在目标时间戳处将相邻帧翘曲至虚拟相机空间。
这里面主要用到了目标帧到关键帧的翘曲场,以及从关键帧到相邻帧的估计光流两个信息,这样,就可以通过链接流向量,计算目标帧到相邻帧的翘曲场。
然后,融合这些特征。
传统的全景图像拼接算法通常是在图像级别进行融合。这样做的缺点在于,如果估计光流不可靠,就会产生伪影。
而将图像编码为CNN特征,再在特征空间中进行融合的方法更具鲁棒性,但又往往会产生过于模糊的图像(如下图b)。
于是,研究人员提出结合两种策略的优点:首先将图像编码为CNN特征,然后从多个帧中融合翘曲特征。
对于每个源帧,研究人员将融合特征图和各个翘曲特征一起,解码成输出帧和相关的置信度图。
最后,通过使用生成图像的加权平均,来产生最终的输出帧。
实验结果
研究人员在NUS数据集和自拍视频数据集上验证了该方法。
△标红的为最佳结果
在上表中,DIFRINT方法同样是无需裁剪的方法。虽然该方法在失真值(distortion value)上略优于本文方法,但如下图所示,DIFRINT的结果中有明显的局部失真。
总体而言,本文提出的方法优于此前的SOTA方法。
不过,论文也谈到了该方法的局限性,比如对卷帘式快门无效;如果视频帧间亮度变化很大,会导致明显的接缝;预处理阶段的平滑方法可能会导致失真等。
传送门
根据作者介绍,该项目即将开源,如果感兴趣,不妨先mark一下~
代码地址:
https://github.com/alex04072000/NeRViS
CV资源下载
后台回复:CVPR2020,即可下载代码开源的论文合集
后台回复:ECCV2020,即可下载代码开源的论文合集
后台回复:YOLO,即可下载YOLOv4论文和代码
后台回复:Transformer综述,即可下载两个最新的视觉Transformer综述PDF,肝起来!
重磅!CVer-细分垂直交流群成立
扫码添加CVer助手,可申请加入CVer-细分垂直方向 微信交流群,也可申请加入CVer大群,细分方向已涵盖:目标检测、图像分割、目标跟踪、人脸检测&识别、OCR、姿态估计、超分辨率、SLAM、医疗影像、Re-ID、GAN、NAS、深度估计、自动驾驶、强化学习、车道线检测、模型剪枝&压缩、去噪、去雾、去雨、风格迁移、遥感图像、行为识别、视频理解、图像融合、图像检索、论文投稿&交流、Transformer、PyTorch和TensorFlow等群。
一定要备注:研究方向+地点+学校/公司+昵称(如目标检测+上海+上交+卡卡),根据格式备注,才能通过且邀请进群
▲长按加微信群
▲点击上方卡片,关注CVer公众号
整理不易,请给CVer点赞和在看!