Notifications
Article
官方翻译 | 了解ARKit
Published a year ago
350
0
ARKit官方文档翻译——使你更加了解AR与apple的计划
认识开发AR工程的概念、特性和最好的体验。

概览

对于任何AR程序最基本的要求就是构件并维护一个用户所在的真实世界与用户可以交互的虚拟世界的桥梁——这也是ARKit的基本功能。当你的设备通过摄像机展示了真实世界的内容的时候,用户能体验到增强的相识:产生了虚拟物体进入了真实世界的错觉。
在所有的体验中,ARKit遵循的是右手定则:Z轴向里,Y轴向上,X轴向右。
Session configurations能够定义和生产原始的坐标系的位置和旋转。并且,在Session configurations中的每一个锚点都独立成为一个系统,拥有自己的坐标位置和旋转。比如ARFaceAnchor就是定义了本地坐标系来表达脸部的特性。

World-Tracking是怎么工作的

为了维持虚拟与现实之间的交互关系,ARKit采用了visual-inertial odometry(视觉惯性里程VIO)技术。这个进程结合了从iPhone设备运动传感器获取的数据和从相机获取的图像分析的数据的信息。ARKit标注一些场景中具有显著特性的图像,并且绑定这些信息,并不断的和运动数据进行比较。最终拿到了高精度的设备位置和旋转。
World-Track也分析和理解现实场景中的内容。使用Hit-testing方法(ARHitTestResult类完成的工作)来找到现实世界中在相机所看到的地方的反馈点。如果你在 session configuration设置了planeDetection,那么ARKit就会在相机看到的地方开始生产并报告平面和平面的大小和位置等。你可以使用hit-test拿到这个平面的个各个点并放置你自己的虚拟内容。
World track是一个不精确的技术。这个过程经常能够给人印象深刻的准确性,从而使AR感觉灰常的棒。但是,这些表现常常基于这个设备所处的环境,有时候这些环境不是想象的那么合适以至于在角度和位置计算上会有一些差距或者错误。所以,为了创建更好的AR体验,请注意一下几个要求和建议:

最好的体验和限制

1.对可预见的光环境来设计AR应用。

World Tracking技术依赖于图像分析,而图像分析需要一些清晰的图片。所以,当相机看不清楚的时候,绑定效果就会下降,比如当相机看着一个没有空白的墙或者所在的场景比较暗的时候。

2.使用“绑定质量信息”提供用户反馈信息。

world tracking使图像分析与设备运动发生了关联。如果设备在移动的话,ARKit能够更好的理解环境,即便是设备在隐隐约约的动。极端的运动——太快或者太慢,或者抖动的厉害——给出了一些模模糊糊的图像或者太远的距离,这些都会相机绑定质量。ARCamera类给出了 绑定状态原因的信息,你可以获取到并在UI层提示用户来减少低质量绑定。

3.给平面检测以时间,并且当你有了想要的结果的时候及时关掉平面检测。

平面检测一直存在——当第一次检测到平面的时候也许是不稳定和完美的,当这个平面在这个场景中的时候,ARKit就一直估算他啊的位置和扩展位置,当一个大的平面生成的时候,ARKit也许会继续修改这个平面的锚点位置、扩展和transform,即便你已经放置了虚拟物体。
欢迎加入微信群:vzheng2013 。一起讨论。

渔夫
CEO - Programmer
2
Comments