(ARKit框架)官方文档_02、原理文章01_了解ARKit中的世界跟踪_2018-08-21

发布时间:2018-08-21 (周二 广州/晴)
最后更新时间:2018-08-21 (周二 广州/晴)


文章来自于苹果官方文档
了解ARKit中的世界跟踪


了解ARKit中的世界跟踪

发现支持概念,功能和最佳实践,以构建出色的AR体验。

概观

image

任何增强现实体验的基本要求 - 以及ARKit的定义特征 - 是能够创建和跟踪用户所在的真实世界空间与可以对视觉内容建模的虚拟空间之间的对应关系。当您的应用程序将该内容与实时摄像头图像一起显示时,用户会体验到增强现实:虚拟内容是现实世界的一部分。

在所有AR体验中,ARKit遵循右手惯例使用世界和相机坐标系:y轴向上指向,并且(当相关时)z轴指向观察者并且x轴指向观察者的右侧。

会话配置可以改变坐标系相对于现实世界的起源和方向(参见参考资料)。AR会话中的每个锚定义其自己的局部坐标系,也遵循右手,z-towards-viewer惯例; 例如,该类定义了一个用于定位面部特征的系统。worldAlignmentARFaceAnchor

世界跟踪如何运作

为了在真实空间和虚拟空间之间建立对应关系,ARKit使用了一种称为视觉惯性测距法的技术。此过程将来自iOS设备的运动感应硬件的信息与设备相机可见场景的计算机视觉分析相结合。ARKit识别场景图像中的显着特征,跟踪视频帧中这些特征的位置差异,并将该信息与运动感测数据进行比较。结果是设备位置和运动的高精度模型。

世界跟踪还分析和理解场景的内容。使用命中测试方法(请参阅类)查找与摄像机图像中的点对应的真实世界曲面。如果在会话配置中启用该设置,ARKit会检测摄像机图像中的平面并报告其位置和大小。您可以使用命中测试结果或检测到的平面来放置场景中的虚拟内容或与之交互。ARHitTestResultplaneDetection

最佳实践和限制

世界追踪是一门不精确的科学。此过程通常可以产生令人印象深刻的准确性,从而实 但是,它依赖于设备的物理环境的细节,这些细节并不总是一致的,或者在没有一定程度的错误的情况下难以实时测量。要建立高质量的增强现实体验,请注意这些警告和提示。

为可预测的照明条件设计AR体验。世界跟踪涉及图像分析,需要清晰的图像。当相机无法看到细节时,例如当相机指向空白墙或场景太暗时,会降低跟踪质量。

使用跟踪质量信息来提供用户反馈****。世界跟踪将图像分析与设备运动相关联。如果设备正在移动,ARKit会更好地了解场景,即使设备只是巧妙地移动。过度运动 - 太远,太快或过于剧烈摇晃 - 导致图像模糊或距离太远,无法跟踪视频帧之间的功能,从而降低了跟踪质量。本ARCamera类提供跟踪状态原因的信息,你可以用它来开发用户界面,告诉用户如何解决低质量跟踪的情况。

留出时间进行平面检测以产生清晰的结果,并在获得所需结果时禁用平面检测。平面检测结果随时间变化 - 当首次检测到平面时,其位置和范围可能不准确。随着飞机在一段时间内保持在场景中,ARKit会改进其位置和范围的估计。当场景中有大的平面时,ARKit可能会在您已经使用平面放置内容后继续更改平面锚点的位置,范围和变换。

你可能感兴趣的:((ARKit框架)官方文档_02、原理文章01_了解ARKit中的世界跟踪_2018-08-21)