[人机交互]
整编自:雷锋网 知乎日报
前不久开幕的苹果年度开发者大会 WWDC17 发布会上,苹果的两条重要产品线 Mac 和 iPhone,分别开始加入对 VR 和 AR 的支持。其中,Mac 产品在软硬件上都开始支持 VR 内容创作;而最新的 iOS 11 更新了 ARKit,为整个 iPhone 和 iPad 产品线带来了 AR 功能。
苹果要做 AR 早就不是什么新闻,Tim Cook 也多次在公开场合提到对 AR 的看好。这次苹果公布了自己迈入 AR 领域的第一步——针对 iOS 11 推出 ARKit。
从功能上来看,苹果 ARKit 所展示的功能与谷歌早前推出的 Tango 很相似,他们都可以通过摄像头对环境进行扫描识别,结合 SLAM 等计算机视觉技术,将虚拟的物体融合到真实的世界里。但这不是仅仅的图像叠加,除了当你移动手机时,虚拟物体在真实世界里的位置保持不动外,苹果在物体的一些细节上也做得很棒。比如现场演示的桌面上放置了一盏台灯和一杯咖啡,当演示者将咖啡靠近台灯时,其反射的灯光明亮也会随之改变,可谓栩栩如生。
据苹果介绍,这是通过摄像头、GPU 和 CPU 一起实现的。通过 ARKit,苹果将为上亿台 iPhone 和 iPad 带来 AR 功能,使其一夜之间成为全世界最大的 AR 平台。该平台将支持 Unity 和 Unreal 引擎。到底新的 ARKit 可以做什么呢?除了在现实世界里加入虚拟的场景和物体,比如宜家可以据此设计一款虚拟家装应用,许多游戏体验也会升级。以去年火爆全球的 Pokemon Go 为例,有了 ARKit 加持后,它的 AR 特性将变得更自然。
在之前,用户找到的 Pokemon 和真实世界不是真正融合的,更像是飘在半空中,而 ARKit 可以让它在真实世界的地面上保持不动,就像真的在那里一样,而且抓精灵的球丢出去后也可以很真实地在地面上弹来弹去。也就是说,现实世界将不再只是一个背景而已,而是可以与虚拟世界互动的场景。
ARkit到底带来了什么功能
第一. 快速稳定的运动定位,这个是最基本的AR功能,从演示中可以发现整个定位非常稳定且准确,说明精度很不错,桌面的特征并不算丰富,说明鲁棒性很好,最后渲染的Demo模型很复杂,但是感觉很流畅,说明实时性和算法能耗都深度优化过。从发布会的整个演示来看,ARkit的水准应该是业内顶级的。
第二. 平面和边界的估计,平面估计在单目SLAM上并不稀奇,只是从演示中很难判断是基于三维点云拟合还是IMU数据,初始化的方式看起来更像是基于IMU的。边界估计这个之前不常见,演示中唯一可以看出来的是那个虚拟小人掉到桌子外,说明ARkit可能不是像snapchat那样简单的VIO类算法,点云构建的部分是有一定输出的。
第三. 光照估计,这个不好说,单目做光照估计的需求很可能和算法本身的架构有关,以什么形式输出不看到接口很难判断,大部分的AR应用是不需要这类数据的,除非是要基于实际光照做高还原的真实渲染。
第四. 尺度估计,这个就非常厉害了,做单目SLAM的同学都有了解,单目是无法解决尺度问题的,虽然视频里没有展示,但是如果真的解决了尺度问题,说明苹果在IMU和视觉融合方面做了非常先进的工作,而且工程化的非常好,很期待这个功能的实际体验。
第五. 对各个开发平台或引擎的支持,这点说明苹果做AR绝对是“蓄谋已久”的,并且野心很大,不给其他对手留余地,一上来就要建立一个完整且广泛的AR内容开发生态。
总体来说,ARkit基本实现了单目+IMU的SLAM算法可以提供的大部分功能,并且质量很高,我相信苹果是严格检查过机型覆盖率,实时性和能耗的,那么毫无疑问,凭借广泛的硬件覆盖率,iOS会成为最有活力的AR内容发布平台,PMGO的体验肯定有质的飞跃,一大波真-AR游戏应用将会到来。
ARkit目前的不足
第一个不足是三维重建的能力,无论从文字解释还是Demo演示来看,目前的ARkit仅仅支持平面的“重建”,这里姑且先算做重建,因为是否支持垂直面,任意角度的平面,甚至多个平面目前都还不确定(从目前发出来的文档看只支持水平面,说明平面的拟合可能是依赖于IMU的,仅用部分点云判断深度信息)。就算ARkit包含完整的平面重建能力,对于AR应用来说依然还是不足够的。
增强现实最基础的要求是对现实世界的理解,比如几何体的重建,这方面缺失带来的问题就是无法和真实世界的物体发生合理的物理碰撞,比如演示中看到一个虚拟小人掉下桌子,我们是看不到这个小人掉落到地面的效果的。另外就是虚实遮挡,假设桌面上有一个水杯,那么如果无法重建水杯的Mesh,我们就看不到水杯遮挡住虚拟模型的效果,而会看到虚拟模型“叠加”在水杯之上,这个会比较影响整个AR的体验。当然我相信以苹果的实力,想做重建并不是没有办法可想。
这里我有两个猜测,一个可能是三维重建的流程,交互和接口苹果还在优化中,目前AR基本的功能接口已经足够发布了,苹果想慢慢来。另一个可能是苹果想依托于硬件来解决三维重建的问题,众所周知单目做实时三维重建是非常有难度的,而基于双目或深度摄像头则可以相对简单的解决这个问题,顺便苹果还可以展现9月份即将发布的iPhone8的“特殊”,两全其美。
第二个不足,就是识别的能力,目前AR最火爆的应用场景其实不是游戏而是线下营销,而线下AR营销非常依托于识别算法和定位算法的对接。苹果可以在移动端单目设备上做出这样成熟的SLAM算法,单纯的识别和定位应该都不是问题,难点可能在于定位算法如何跟识别算法对接,如果依赖于端上的识别算法,那么按照现有的苹果更新审核机制,AR内容的更新会非常麻烦,苹果可能需要提供专门的编辑器;但是如果基于云端识别,则苹果的用户群体过于庞大,到时候云识别的QPS会很惊人,是否苹果还没有准备好接受这样的考验?
此外,服务于AR的单目SLAM可以说是目前业界没有很好解决的一个课题,所以苹果在这方面做出了很大的推进。而如果我们限定于二维图像的识别和跟踪,则有非常多成熟的SDK可以使用,就连Hololens也可以兼容使用Vuforia,也许苹果并不准备自己承担这和识别算法对接的需求。
ARkit对整个AR行业的影响
首先是最下游的硬件玩家,为首的就是AR眼镜厂商,比如微软,Meta,ODG等等。
这类玩家受到的波及应该不大,因为AR眼镜本身就不是服务于当下的C端客户,大部分都给B端客户定制使用了,而且短期内不会有很大的出货量。相反,这其实对AR眼镜厂商是好事情,因为手机体验AR是有各种缺陷的,比如无法解放双手,但是手机上玩AR是可以快速教育用户的,当用户习惯于AR,并且想要更高质量的体验的时候,AR眼镜就可以考虑转型服务于C端,苹果其实是在加速整个AR行业的发展。不过我相信苹果既然此时布局AR,肯定不会放弃眼镜,未来希望苹果也可以重新定义“AR眼镜”。
这里有点尴尬的硬件玩家是Google,旗下的Project Tango发布已经一年,目前市面仅有联想的Phab 2 pro和即将发布的华硕的ZenFone搭载了Tango的技术,然而由于整个安卓系AR内容的匮乏,导致Tango手机出货量非常少,此时ARkit发布一瞬间几乎覆盖整个iOS,那么Google是要推出单目的AR SDK覆盖全部安卓来应对还是强推Tango让安卓手机硬件升级就是一个非常值得考虑的问题,这里大胆猜测Google是否会开源出来Tango目前整套Msckf的算法?毕竟之前已经开源了一套基于激光的SLAM算法,很期待Google的动作。
还有就是AR硬件模组玩家,比如Intel的RealSense,或者Occpital Bridge这类,本身要依赖于其他硬件终端才可以使用,虽然整体AR的能力是高于iPhone手机的,但是如何体现出自己独特的价值就变成了一个不得不面对的问题,本来自己是唯一的选择,现在突然变成“增值服务”,未来的路又渺茫起来。
另外值得一提的是所谓的AR眼镜盒子或MR眼镜盒子,即带有简易光学设备或仅仅可以让手机露出后置摄像头的,需插入手机才可以玩的类似VR盒子的东西...这类设备成本不高,但是可以借助具备AR能力的手机让用户快速体验到类似AR眼镜的体验,这类盒子可能会有销量的带动,但是长远发展可以参考目前VR盒子现状。
再来,我们说说SDK玩家,即AR算法玩家。业内都知道的是由于AR需求的快速发展,最近一年几乎所有SDK公司都在基于单目做SLAM算法的研发,不论国内国外,大家由于竞争关系在大量的重复造轮子,然而除了Vuforia以外,并没有哪家拿出来可以服众的单目SLAM算法SDK,或多或少的,各家都有自己存在的问题。
此时,苹果拿出来ARkit,按照发布会Demo来看,效果超过所有其他玩家,何况这还是iOS原生算法,这意味着所有APP不需要集成任何SDK就可以具备目前市面上最好的AR能力,可以说对大部分SDK都是比较致命的打击,当然,SDK玩家也并不是完全没空间,如我上文所说,ARkit并不是完美无瑕并且功能齐全的,单目SLAM是没办法做了,但是在这个基础上扩展功能还是可能的,所以此时的SDK公司应该仔细思考自己如何定位,找到自己的价值和ARkit共存。
然后,我们说一下上游的AR软件的玩家,为首的是Snapchat、Facebook这类社交软件,这两家都刚刚发布了AR相关的产品和编辑器,同时这两家都依托于自家研发的AR算法,可以说两家在算法上本来是很领先的。可惜,ARkit一发布,一夜回到解放前,不仅没有和彼此拉开差距,反而身后跟过来一大批小玩家,类似FaceU,B612这样的软件,在人脸的内容运营上本来就很优秀,此时突然白白得到了AR大杀器,更是可以奋起直追。所以AR应用的厮杀接下来可能会很精彩,非常期待!
上游玩家还有就是游戏行业,之前因为工作原因接触过不少游戏公司,可以说游戏公司对AR是有兴趣而不敢投入,一方面技术不够成熟,接入SDK的学习成本和风险都比较高,效果还不一定好,二是游戏行业目前发展势头很好,PMGO后期下滑也比较厉害,游戏公司动力不足。现在ARkit发布以后,一下有一个原生靠谱的AR能力,此时游戏公司不一定还能淡定的观望,现在有了新能力肯定不会放过,哪怕跟风,也会尝试在游戏里加入部分AR的元素,比较看好AR在游戏的发展,尤其卡牌游戏。
总体来说由于iOS巨大的用户群体,ARkit的发布对整个AR行业是有很大的推进作用的,每一个和AR相关的玩家可能都需要重新审视一下自己的位置,如何在明确知道iOS具备AR能力的情况下找到自己的定位,纯算法或者硬件是否还要坚持?如何细分?如果做软件或AR服务,那么怎么最大化的利用ARkit?
首台 VR Ready iMac Pro 公布,SteamVR 将登陆 Mac
在发布会上,苹果宣布正与 Valve 合作将 SteamVR 带到 Mac 上面。更多的消息会在开发者大会期间公布。由于近两年的 VR 热潮,许多 VR 开发者转移到了微软的平台以进行相关内容的开发,今天的消息应该能够更多开发者吸引回苹果的生态。
此前 Oculus Rift 的开发者套件曾支持 Mac,但苹果电脑一直没有为高质量的 VR 提供软硬件支持。这次,苹果为 27 英寸高端版本的 iMac 配置了独立显卡,同时 MacBook 也开始支持外置显卡,帮助提高中低端产品线的 GPU 性能。此外苹果还公布了 VR Ready 的全新 iMac Pro。
iMac Pro 采用的是工作站级别的配置,搭载 18 核 Xeon 处理器,AMD Radeon Pro Vega GPU,16 GB 高带宽内存,它还拥有 4TB SSD 和 128 GB ECC 存储。官方表示可以“实时进行 3D 和高帧率沉浸式 VR 渲染”。当然售价也不便宜,起价为 4999 美元。
发布会现场也进行了 VR 内容创作的演示,画面看起来十分流畅。HTC 公布的一个帖子可以让我们更清楚地了解由 MacBook 驱动的 VR 演示是什么样的:通过全新的对外置 GPU 的支持,开发者和内容创作者将可以使用测试版的 SteamVR 和新的 MacOS High Sierra,在自己的 MacBook 上获得为 Vive 创作内容的能力。在 WWDC 的舞台上,苹果用 Vive 结合 ILM 和 Unity 的方式展示对 VR 的支持。他们在开发者面前首次展示了用 MacBook 驱动的高端 VR。
苹果对 AR/VR 的拥抱对行业来说是一件意义巨大的事。SteamVR 的降临,MacBook 借助外置 GPU 可以运行 VR,新的性能王者 iMac Pro 直接 VR Ready,这对于扩大 VR 用户群,推动高质量 VR 内容生产将有很大帮助。
AR 方面,其实许多公司都做过类似的产品和功能,但凭借对软硬件的完全控制,苹果的 AR 一经推出,便可以取得其它平台难企及的规模和支持。就比如谷歌的 Tango 平台,到现在也只有联想和华硕各出一款支持的手机,而且支持的开发者很少。苹果的进入,不仅仅将让 iPhone 和 iPad 成为最大 AR 平台,也将对 Android 的 AR 生态产生巨大的推动作用。我们拭目以待。