不知道是否有朋友看到这篇文章和下面这张图一样的表情? ? ? 

ios的编辑器 苹果编辑器在哪_锚点

公元2020年6月23日,苹果的 WWDC 2020 如期而至。

只是,与往年不同的是,这是一场没有在场观众的线上开发者大会。

由于没有现场记者、没有粉丝和大咖,没有朋友圈的晒图,只有线上的直播和录制的视频,因此,这场一年一度的技术盛宴显得低调了许多。

以至于,网上都很少有相关的资料和消息。



ios的编辑器 苹果编辑器在哪_开发者_02

想看看ARKit 4 发布了什么新功能,结果油管上的资料都少的可怜。

很多讲ARKit 4的文章大多都只是机翻了一堆术语,不知道在写什么东西 。。不知道朋友们是否有同感 ?

看来咱们只能亲自动手了,去苹果开发者的官网啃一啃生肉, 顺便也跟大家分享一下我平时在哪看ARKit的资料。



ios的编辑器 苹果编辑器在哪_锚点_03


苹果开发者官网的 ARKit 4 相关资料

我一般学习研究这方面的技术,会去苹果开发者网站上查询 ARKit ,找到相应的页面。官网的ARKit资料质量很高,可以找到每年 WWDC 上发布的 ARKit 技术视频、PPT、项目示例等。

不过今年的资料是真的少,只找到了4个AR技术相关的视频 :

  • Explore ARKit 4 探索ARKit 4
  • Support performance-intensive apps and games 支持性能密集型应用和游戏
  • The artist’s AR toolkit 艺术家的AR工具
  • What’s new in RealityKit RealityKit的新功能

ios的编辑器 苹果编辑器在哪_开发者_04


探索ARKit 4 (Explore ARKit 4 )

一般来说,直接介绍 ARKit 的视频是最好看的。会有ARKit 开发人员上台介绍整个技术的核心功能、设计理念以及开发时的注意事项等。全程高能,毫不墨迹,看完感觉整个人都神清气爽。



ios的编辑器 苹果编辑器在哪_Real_05

ARKit 4 Location Anchors 位置锚点

一、Location Anchors 是 ARKit 4 的核心功能

Location Anchor 是位置锚点,这是ARKit继平面锚点、脸部锚点、身体锚点、物体锚点之后推出的又一重要锚点。

实现的效果如上图所示,通过 Location Anchor 可以实现在地图上的某一特定位置放置锚点。当打开AR应用走到这个区域的时候,就会加载出相应的视觉内容。

AR内容从室内到室外、从房间级到城市级是今年AR发展的一个趋势,无论是华为Cyberverse、Snapchat 的 LandMark 、谷歌的 Cloud Anchor,以及国内EasyAR、太虚、商汤、悉见等厂商,都在重点推这方面的技术。

基于地理信息位置,可以提供更大范围的AR信息服务,如AR导航、AR导览、AR游戏等。

从 Explore ARKit 4 这个视频可以看出 ,苹果的 Location Anchor 是采取了将手机和平板设备采集到的视觉特征点结合 Apple Map 提供的GPS定位来实现的。

对于开发者来说如何知道把虚拟物体放在当前地图中的哪一个位置呢?



ios的编辑器 苹果编辑器在哪_苹果编辑器在哪_06


ARKit 4 Location Anchors 通过坐标轴调整位置

关于这点,苹果是通过经纬度和三维坐标来解决的。ARKit 4 应用可以通过创建位置锚点来指定AR体验中感兴趣的地理区域,该位置锚点可指定特定的纬度,经度和可选的高度。

关于 Location Anchors 位置锚点总结如下 :

  • Location Anchors 位置锚点
  • Geo-referenced AR content 地理位置关联AR内容
  • Apple Maps visual localization 苹果地图视觉定位
  • ARGeoTrackingConfiguration 用于跟踪地理位置的配置
  • ARGeoAnchor 跟踪地理位置的锚点

ios的编辑器 苹果编辑器在哪_苹果编辑器在哪_07


ARKit 4 Location Anchors 点云效果

不过我其实挺好奇这玩意在国内能不能用。虽然苹果手机的地图应用之前在国内是可以使用的,但导航功能弱的无力吐槽。而且结合特征点后,这些信息就变得比较敏感了,基于用户的设备可以重建一个三维的数字城市空间,很容易牵扯一些安全方面的问题,目测这个功能在国内很有可能会被阉割掉,谷歌、Niantic 就是前车之鉴。

二、 提供 LiDAR Api 和所捕获的深度数据信息



ios的编辑器 苹果编辑器在哪_苹果编辑器在哪_08

在 iOS 14 系统中,可以通过ARKit 获取到 LiDAR的数据。其中包括当前环境中的深度数据信息,开发者可以基于这些数据做二次开发。



ios的编辑器 苹果编辑器在哪_ios的编辑器_09

添加了激光雷达以后,扫描场景变得更加迅速。在打开摄像头的短短一瞬间就能完成对环境的基本理解,并且可以实现自动放置物体。

ios的编辑器 苹果编辑器在哪_苹果编辑器在哪_10

ARKit 3 人物遮挡功能

苹果去年在ARKit 3中先发布了人物遮挡这一强大的技术,人物可以站在虚拟物体前面。

ios的编辑器 苹果编辑器在哪_苹果编辑器在哪_11

ARCore 的虚实遮挡功能

而谷歌则在去年年底发布了虚拟与现实物体遮挡的技术。开发出《Pokemon Go》的AR游戏厂商 Niantic 也发布了这方面的技术,可以实现小精灵的遮挡。

ios的编辑器 苹果编辑器在哪_ios的编辑器_12

ARKit 4 的虚实遮挡功能

在ARKit 4中苹果没有特别强调虚实遮挡这一功能的重要性,但在 ARKit 4中应该是已经实现了,如上图 gif 中真实世界的鸟就被虚拟的 kaws 模型完美遮挡了。

这个有关遮挡的优化是在之前 ARKit 3.5 版本中做的,在iPad 2020发布以后,搭载激光雷达后的 ARKit 可以轻松实现三维重建、动作捕捉和虚实遮挡。


ios的编辑器 苹果编辑器在哪_ios的编辑器_13

ARKit 4 基于 LID AR 实现的不规则平面锚点


ARKit 支持的场景更加复杂,如白墙也可以放置虚拟物体。像沙发这样形状不规则的复杂物体,也可以从多个角度进行放置。


ios的编辑器 苹果编辑器在哪_ios的编辑器_14

ARKit 4 基于 LiD AR 实现的深度信息捕获


在ARKit 4 的视频中,苹果的分享者聊了聊激光雷达的实现原理,我们通过激光雷达可以获得许多数据信息,深度图像、点云等等,在视频中有详细的说明,感兴趣的朋友可以直接去看,在此就不逐个列举了。

三、FaceTracking 算法优化


ios的编辑器 苹果编辑器在哪_Real_15

A12 条件下可支持非深度摄像头设备的脸部AR效果


苹果在 2017 年推出了面部增强功能,可以将AR内容加在人脸上,实现一些如试妆、试口红、试穿戴眼镜帽子以及AR面具贴纸等效果。


ios的编辑器 苹果编辑器在哪_开发者_16

幻影坦克,按F进入驾驶

更骚的是,ARKit还支持面部表情捕捉,可以用自己的脸做一些有趣的 emoji 表情,拍些好玩的短视频。

但这个技术有个前提就是手机前面需要搭载深度摄像头才行,需要iPhone X以上的机型才能支持。

这次算法更新以后,不搭载深度摄像头也可以实现面部表情捕捉和面部识别了。只是有个前提,需要 A12 以上处理器才行,我觉得这就是废话 … 那之前版本的手机不带 A12 处理器还是用不了啊,苹果iPhone 6 ~ iPhone 8 和各个版本的iPad 都不要了 ?

搭载 A12 还没有前置深度摄像头的手机,也就只有新推出的 iPhone SE 符合条件。

所以,个人觉得这个功能只能是为之后苹果推出的低价机型或者其他类型“设备” 准备的,现阶段意义不大。

四、Reality Kit 更新了


ios的编辑器 苹果编辑器在哪_Real_17

早期苹果使用 SenseKit 作为ARKit的渲染引擎,但很快发现SenseKit无法满足AR技术发展的需要。为了追求更真实的AR体验效果,从2019年的 ARKit 3 开始,苹果开始采用 Reality Kit 。RealityKit是Apple为增强现实而构建的渲染,动画,物理和音频引擎:它对传统的3D渲染器进行了重新构想,使开发人员可以轻松地原型制作和产生高质量的AR体验。

在去年的时候,我的好朋友汪老师曾经准备写一本有关ARKit原生开发的书,但是却发现有关 Reality Kit 的官方和社区资料非常少。

今年在 Reality Kit 更新以后,相信这方面的状况会有所改善。用Swift写ARKit做原生开发的难度比较大,但兼容性要好一些,而且可以使用最新的ARKit技术。

期待后面这方面的资料能越来越多,为开发者带来更多便利。

五、为设计师视觉艺术家提供的 ARTool Kit


ios的编辑器 苹果编辑器在哪_苹果编辑器在哪_18

面向设计师和艺术家的 Reality Composer


苹果为了让不擅长编程的人们也能开发出AR应用,推出了 Reality Converter 和Reality Composer。其中 Reality Composer 是一个非编程方向的AR编辑器,而 Reality Converter 是一个用于将各种格式模型转换为USDZ格式模型的转换工具。

非编程开发iOS AR应用这一点想着还是挺美好的,但实际操作起来还是会遇到一些问题。我去年使用 Reality Composer 时还是要基于 XCode 开发和编译,没有想象中那么方便,里面有一些坑只有开发者才知道怎么处理。在用 Reality Converter 转换模型也经常出现各种Bug,还不如直接用Sketchfab上现成的USDZ。

但是未来一定会有越来越多的设计师和艺术家可以开发出好的AR作品,所以非编程向的AR是一个趋势,期待这方面的发展会越来越好吧。

ARKit 4 总结


ios的编辑器 苹果编辑器在哪_ios的编辑器_19

ARKit 4 发布的新功能较往年并不多,但发布的这些功能都十分重要。如基于 Location Anchor 开发者可以开发出室外空间的大规模AR应用,在2020年华为和苹果同时都在做这个,这可能会是一个重要的信号。

AR云计算的浪潮,或许就在眼前了。

在苹果为设备搭载激光雷达以后,AR应用的使用交互模式由扫描点击平面逐渐过渡到了自动识别环境、自动放置物体、可以秒加载。

iOS 14 系统中开发者可以通过 ARKit 4 获取到激光雷达的数据,根据自身项目上的业务需求,进行二次开发。

AR技术从对白墙、强光、弱光环境的识别定位稳定性差,逐渐变为可以适应复杂环境,让AR应用能够在更多场景下使用。

ARKit 4 虽然很低调,但在其历史版本中的地位绝对不低。这个版本提供的功能不会是最强大的,但一定是不可或缺的。

好了,就先聊到这啦,以上是有关 WWDC 2020 ARKit 4 的一些观点和吐槽,过两天准备做些国内AR眼镜的测评,感兴趣的朋友可以点个再看和关注。

我是子羽歌,AR世界还有很多精彩等着我们去探寻,下期视频见 ~


ios的编辑器 苹果编辑器在哪_苹果编辑器在哪_20