ARKit 的原理与最佳实践

构建杰出 AR 体验的概念、功能和最佳实践。


简介

任何 AR 体验的基本要求——也是 ARKit 的定义特征——是创建和跟踪用户所在的现实世界空间与可以建模可视化内容的虚拟空间之间对应关系的能力。当 App 将此内容与实时摄像头画面显示在一起时,用户会体验到增强现实:虚拟内容是真实世界中一部分的错觉。

世界追踪的工作原理

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

世界追踪还分析和理解场景中的内容。使用 hit-testing 方法(见 ARHitTestResult 类)来寻找与相机画面中的点对应的真实世界表面。如果在 session 配置中启用 planeDetection 设置,ARKit 会检测相机画面中的平面,并报告位置和尺寸。可以使用 hit-test 结果或检测到的平面来放置内容,或与场景中的虚拟内容进行交互。

最佳实践与限制

世界追踪是一项不精确的科学。这个过程通常会产生令人震惊的准确性,引领现实的 AR 体验。然而,它依赖于设备的物理环境的细节,这些细节并不总是一致的,或者难以实时测量而没有一定程度的错误。要创建高品质的 AR 体验,请注意这些注意事项和提示。

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

使用追踪质量信息来提供用户反馈。世界追踪与图像分析和设备运动有关。如果设备在移动,ARKit 可以更好地理解场景,哪怕设备只是微微移动。过多的动作——太远、太快或太剧烈的抖动——会导致图像模糊,或者所追踪的视频帧之间距离太远,从而降低视频质量。ARCamera 类提供追踪状态的原因信息,可以借助它开发一个用户界面,告诉用户如何解决低质量的追踪状况。

给平面检测充分的时间以产生清晰的结果,并在获得所需结果后禁用平面检测。平面检测结果随时间变化——首次检测到平面时,其位置和范围可能不准确。随着时间的推移,平面依然保持在场景中,ARKit 会进一步提升对于位置和范围的估计。如果场景中有一个大的平面,ARKit 可能会在你已经在上面放置内容后继续改变平面锚点的位置、范围和变换

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 203,456评论 5 477
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,370评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,337评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,583评论 1 273
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,596评论 5 365
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,572评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,936评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,595评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,850评论 1 297
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,601评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,685评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,371评论 4 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,951评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,934评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,167评论 1 259
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 43,636评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,411评论 2 342

推荐阅读更多精彩内容