Google Jump是Google I/O上??亮相的一款全景相机设备。
它由镜头组、自动整合和处理素材的软件以及播放平台组成。
它可以让用户实现全景拍摄。
拍摄的原始视频经过JUMP应用程序转换后,将生成非常逼真的3D虚拟现实视频。
JUMP由Google和GoPro联合开发。
被外媒称为“完整的虚拟现实录音生态系统”。
让我们仔细看看最有趣的事情(至少在我看来!):Jump 虚拟现实拍摄设备。
我们来分析一下这个东西,看看它和之前的平移和角度的拼接有什么不同。
首先,Jump是一个GoPro阵列。
从外观上看,除了摄像头的数量外,它与各个VR成像公司提供的没有什么不同。
谷歌副产品总监兼VR/AR部门负责人克莱·巴沃尔表示,这个东西可以和他自己买的一些零件组装在一起。
谷歌本身并不销售这个东西,但他们会为任何想要制造它的人发布 CAD 图纸来生产和销售它。
如下图:而且,他们还用纸做了一个(1相机和8元纸板)。
但在你雄心勃勃地想要自己生产这个东西、创业、上市当CEO、成为怪物股、娶白富美、走向人生巅峰之前,你一定知道GoPro打算从今年开始卖掉这个东西夏天。
GoPro 卖这个我们怎么能坐视呢?但总之,如果你想定制颜色什么的,你还是可以自己做的。
塑料版肯定很快就会在淘宝上架。
但需要注意的是这个结构的密封性,因为摄像头的位置非常重要。
乍一看,这个圆形阵列没有向上或向下的摄像头。
如果遵循 GoPro4Black 的规格,该阵列可以捕获水平方向的镜头,但只能捕获垂直方向的镜头。
因此,从顶部和底部都会失去60°的视角。
此外,Jump乍一看就像一个非立体单目相机,每个相机都指向不同的方向。
大多数 3D GoPro 相机都有两个摄像头指向某个方向,类似于这样:当有两个摄像头指向某个方向时,你可以给每只眼睛在这个方向上呈现不同的画面,因此视角存在差异。
以及立体效果。
图片中也会有拼接的痕迹,因为一个方向的“左”相机距离另一个方向的“左”相机有点远(显然,如果忽略立体效果,它是平面相机) 。
围绕减少拼接痕迹的各种方式,一个小微产业诞生了。
这就是谷歌解决方案的天才之处:这个看起来像平面相机阵列的摄影阵列实际上是三维的。
每个摄像头拍摄的图像不适合左眼或右眼。
数据可供双眼使用。
3D效果是利用计算机图形学来获取相对的三维位置,然后重新映射到你的眼睛上,所以根本没有拼接的痕迹(理论上)。
非常酷,因为如果这种成本不到1W的半专业设备能够拍摄流畅的3D VR视频,那将是一个非常大的突破。
工作原理是这样的:因为软件知道每两个摄像机之间的相对距离和位置,只要能计算出两个摄像机之间的场景像素,就可以得到场景中某一点的深度。
使用这些立体数据,您可以扭曲帧以获得所谓的“立体”视野:基本上,每个相机都会捕获正确的视差点(与以前的双目立体设备一样)。
,只有双眼摄像头之间拍摄的画面才有正确的视角差,也就是说越靠边,立体感越差)。
当然,这需要大量的计算,但谁希望谷歌拥有更多的计算机呢?当您从一台相机转换到另一台相机时,视角会稍微发生变化。
为了连接图像(或构建 3D 模型),您需要从相邻摄像机中找到匹配区域。
例如,你从相机 A 中找到一组像素,然后从相机 B 中找到同一组像素(该组是指对于相同的相关部分,例如同一片叶子,不同位置的相机拍摄的图像将略有不同)。
事实上,你可以知道往哪里看(相邻相机拍摄的图像不会有太大差异)。
与那些未校准的相机相比,处理速度也会显着提高。
现有的拼接软件,例如 Videostitch 或 Kolor(较早被 GoPro 收购)是通用软件,会对您的拍摄设备的结构进行一些猜测。
不过,如果是像Google这样的校准相机,则只需要通过严格的数学算法来解决即可。
当找到匹配区域,并且还知道图像中这些区域之间的距离差时,您可以计算出相机阵列与该区域中的实际物体之间的距离。
如果物体(例如天空)位于无穷远,那么相邻两个相机拍摄的照片中的天空部分将非常接近。
当物体距离摄像头很近时,物体在屏幕上会变大,相邻两个摄像头拍摄的图像也会出现较大的距离偏差。
具体偏差完全由物体距相机阵列的距离决定,因此可以得到物体非常精确的位置。
更准确地说,您正在寻找右侧的这条对极几何线。
由于 GoPro 镜头的扭曲程度很高,因此这条线实际上是弯曲的。
然而,基于这种方法的高效算法只有几年的历史。
当您拥有 3D 模型时,您甚至可以获得一定范围的环顾四周和头部跟踪。
但只有一小部分,并且你不会得到任何垂直视角的差异。
理论上,图像中的点都有正确的深度信息,但是你没有其背后的背景信息,当你垂直移动时就会出现问题。
(通过差值来填充像素也不是完全不可能,只是复杂度会大很多,目前还没有必要。
)这么说来,似乎前途无比光明,但现在问题来了,计算机图形学并不是万能的。
通过上述算法计算差异时,我们假设相邻两幅图像相似,并且像素可以相互对应。
对于没有镜面反射的哑光表面(技术术语是朗伯表面)来说这是可以的,但是只要有发光闪烁就会出现问题。
谷歌视频中的演示是静态的,但当自然界的光线复杂时,对算法的要求很高,可能会导致各种奇怪的或撕裂或扭曲的图像情况。
另一个明显会使你的算法感到困惑的情况是重复的形状,因为算法可能会识别错误的区域(砖墙、链栏杆等是此类技术的祸根,当然有一些技巧可以绕过它)。
另外,透明玻璃、无质感的白墙等也很难处理。
还有一些东西是无中生有的,比如电话线中间的空间:电话线围成一圈,背景是白墙。
因此对于算法来说,这两组像素看起来一定是一个对象。
但那里什么也没有,只有电话线圈中的空洞。
压缩也会带来高频错误:GoPro 即时将数据压缩为 H.,压缩质量也参差不齐。
更不用说树叶和镜头反射之类的东西了。
当然,毕竟谷歌从街景时代就开始在这方面进行研究,因此积累了大量的经验——在演示中他们甚至发布了一些算法解决方案。
Bavor展示了通过算法跟踪场景得到的轮廓轮廓图。
:谷歌可能会通过这种方式解决上面提到的一些问题:当两个摄像头拍摄的图片的某个部分匹配得不太好时,那么就从这部分的外围插值得到深度数据。
例如,如果您得到一些完全错误的数据,例如镜头弹跳或错误匹配,只需忽略它并直接使用插值数据。
当然,这是一种柔化或低通处理方法,而且这条曲线似乎是直接由Google的算法生成的,因为如果你仔细观察,你会发现结果与现实世界并不完全匹配:线条位于边缘。
它太光滑了(看柱子的顶部)和连续性,就好像一根大的拉伸橡皮筋覆盖了整个场景(虽然听起来离现实世界很远,但你要知道我们对深度的感知不仅仅是它)完全取决于深度本身的准确性,避免立体误差比获得完全正确的深度更为必要)。
如果这确实是谷歌算法计算出的场景的一部分,那么其中有一部分特别展示了橡皮筋效应:当然无论如何都会有错误。
而事实上,这些场景中存在一些问题,一看就可以看出。
例如,如果你看右边中间前景的一堆木柱,当视角横向来回移动时,它的反射和形状就会出现重影和破碎。
也许这个例子看起来问题不大,但是目前我们不知道如何解决这个系统中常见的反射、睡眠、重复模式、透明度等问题。
当然,视频中的演示确实不错。
至少这个系统也会提高制作VR摄像头设备的门槛,大概会淘汰目前行业80%左右的人(当然国内不一样,但是会降低门槛,甚至一个Cardboard都可以用)列出)。
但用起来却不是那么好用,毕竟太大了。
GoPro 将在夏天发布正式产品,但谷歌无论如何都会发布图纸,希望同时开启 16 个摄像头并不复杂。
Bavor 表示,曝光会很好地匹配,帧同步不应该成为问题。
但就帧同步而言,我们不确定是指半帧内的同步,还是类似于专业3D相机系统的毫秒甚至微秒级的同步。
听说GoPro3和4不能硬同步到毫秒或微秒级别,不知道是真是假(GoPro有这个3D系统,但Hero3或Hero4不能选择)。
从内容生产者的角度来看,这可能是一个问题;因为半毫秒的误差,高速移动的物体或者摄像机都会导致最终拼接的画面出现误差,而摄像机时钟可能是容易漂移的石英晶体振荡器。
(千分之一的漂移意味着在 60fps 下每 20 秒丢失一帧)。
当然,所需的精度取决于您想要捕捉的场景和主题,但讽刺的是,GoPro 可能不再适合高速动作序列。
同样,GoPro 还具有明显的果冻效果(滚动快门)。
GoPro Black的4k视频拍摄帧率为30,那么你会看到约30ms的果冻延迟。
由于拍摄是逐行扫描,所以扫描一张图片需要33ms。
如果物体或相机在此过程中发生移动,就会发生明显的变形。
这种变形将如何影响谷歌的算法?目前我们还不知道,还要等具体产品出来。
当然,提高帧率可以减少一些问题,但最终的可用性如何呢?粗略计算该摄像机组的视频容量为 GB 每小时:在 GoPro Black 中,您可以以 60Mbit 的速度录制 H. 压缩视频流,即每台摄像机每秒 7.5MB。
所有 16 个摄像机一小时为 GB。
看来你需要准备很多硬盘和SD卡。
当然,有了摩尔定律,几年后我们也可能进入PB时代。
Bavor 提到,这些摄像机捕获的源文件基本上与“五台 4k 电视”一样大。
用手算一下,大概是20k,也就是0x。
当然这是源文件,但是处理后的文件呢?我们知道有很多用于建模目的的数据,但我们实际上并不需要 - 如果我们将这些 GoPro 排列起来并拍摄它们,无论它们的重叠如何,总数将达到 ° (94.4°x16),而显然我们只需要 1 个它们的度数约为1/4,剩下的3/4被算法用来消除误差。
无论如何,对于Jump来说,以及大会上宣布的拍摄+Google服务器云计算+YouTube终端播放(目前支持4k、°和60fps视频,°3D将在今年夏天与Jump一起发布),都凸显了Google的定位本身就是VR内容领域的大玩家。
对于普通人来说,VR视频是普及VR最关键的界面,而谷歌似乎也为自己找到了一个很好的定位。