专栏名称: 泡泡机器人SLAM
SLAM的最新资讯,干货内容。
目录
相关文章推荐
新机器视觉  ·  手搓ROS应用 | 全局规划与局部避障系统 ·  21 小时前  
新机器视觉  ·  手搓ROS应用 | 全局规划与局部避障系统 ·  21 小时前  
51好读  ›  专栏  ›  泡泡机器人SLAM

【泡泡机器人新闻前线】Adobe新技术可将全景视频变成6自由度视频

泡泡机器人SLAM  · 公众号  · 机器人  · 2017-06-11 00:01

正文


很早大家就发现,360 度视频和真正的 VR 相比差一些,于是就有很文章站出来说这些都是“伪 VR”。


他们给出的理由是,绝大部分的 360 度视频都不是 3D 拍摄的,更不用说 6 自由度移动。


也正是看出了这一点,包括 Facebook、索尼、英特尔在内在 VR 领先公司都在尝试 6 自由度 VR 视频。但他们通常需要用到好几个高端相机组合拍摄,产生巨大的数据量,并由于运算量太大还得在云端剪辑。


不过 Adobe 或许可以改变这一点,他们刚刚展示了一项新技术,可以将平面的 360 度视频变成 6 自由度视频。如此,“伪 VR”也可以变“真 VR”了。


Adobe 的这项研究由该公司的首席研究员在本周的 National Association of Broadcasters Show(国家广播协会展)上发布。最初由国外媒体 Variety 独家报道。

所谓的 360 度视频变 6 自由度视频,从用户体验上来看,是指之前用户只能在 360 度视频里转动头部看四周,6 自由度则可以让用户不仅能转动头,还能在视频里上下前后左右地移动头部,就像是在真实世界里看东西一样。那么 Adobe 是怎么做到的呢?


据该公司的研究员介绍,他们使用了一种新的扭曲算法(warping algorithm),这种算法可以在固定视点的视频里模拟出新的视点,同时保持 120 fps的帧率。


简单来说就是,普通的 360 度视频只有一个视点,就是相机的位置,而要想变 6 自由度,就得在这个位置周围创造新的视点,这样你才能前后左右移动,而周围的画面不动。


实际上,这一新算法不仅可以用在创造 6 自由度体验上,还能用于视频防抖,让一些手持拍摄时抖动造成的动态模糊画面更平滑。


不过,实现这些功能有一个条件,那就是相机必须得动,毕竟只在一个点拍摄是算不出精确深度的。


在 Adobe 发布的研究论文里,研究员介绍了这项功能实现的基本流程:

首先他们采用了一个运动恢复结构(structure-from-motion,SfM)算法来计算相机的运动并创造一个基本的三维重建架构。用这个方法推测出三维几何值后,他们把视频的每一帧都映射(map)到一个六面的球体上,然后针对每个面运行标准的计算机视觉追踪算法。


对于将画面映射到六面体时不可避免会产生的失真情况,他们使用大于 45 度的视场角(FOV)产生画面重叠区域来解决。


虽然很厉害,但这技术也不是万能的。除了要求相机要动外,三维重建的质量也取决于合成视点的位置与初始视点位置的距离。就是说,虽然能产生 6 自由度的体验,但如果你移动得太快太远,效果就会打比较大的折扣。


此外,有些自然现象也会带来问题,比如画面中遇到一大片没什么纹理的区域,遮挡情况以及光照的改变,它们可能会在重建点的画面中造成严重的噪点,以及在 3D 效果里带来“黑洞”(holes)效果。


在固定点的画面中,也会看到一些非静态物体的扭曲,这是由于算法试图将合成的帧和初始帧融合在一起。

俗话说,后期再厉害,不如把素材拍得好一点。所以很多公司直接用光场相机来拍摄 6 自由度视频,比如 HypeVR 带激光雷达(LiDAR)的 6K/60 FPS 相机,还有雷锋网之前报道过的 Lytro 那巨型的 Immerge 相机。使用这些相机显然可以拍出更高质量的 3D 效果。


本文转载自雷锋网

泡泡机器人推广内容组编辑发布

参与:许峰  张一