【问题标题】:How does image anchoring work in Reality Composer?图像锚定在 Reality Composer 中如何工作?
【发布时间】:2021-07-31 09:52:12
【问题描述】:
在学习 Reality Composer 时,我发现可以使用 Reality Composer 锚定图像,这意味着如果我在现实生活中有一张图像,并且在 Reality Composer 中有它的副本,那么我可以使用它来构建整个场景。在图像的顶部。我想知道,实际的锚定是如何发生的?
我以前使用过 SIFT 关键点匹配,也可以在这种情况下使用,但是,我无法在 Reality Composer 中找到它的工作原理。
【问题讨论】:
标签:
augmented-reality
arkit
realitykit
reality-composer
【解决方案1】:
操作原理就这么简单:
RealityKit 应用程序中.rcproject 文件中包含的名为AnchorEntity 的Reality Composer 场景元素符合HasAnchoring 协议。当 RealityKit 应用程序的人工智能通过后置摄像头看到任何图像时,它会将其与包含内部参考图像文件夹的图像进行比较。如果两个图像相同,应用程序会创建一个基于图像的锚点AnchorEntity(类似于 ARKit 中的 ARImageAnchor),用于绑定其对应的 3D 模型。不可见的锚点出现在图片的中心。
AnchorEntity(.image(group: "ARResourceGroup", name: "imageBasedAnchor"))
当您在 RealityKit 应用程序中使用基于图像的锚点时,您使用的是 RealityKit 的模拟 ARImageTrackingConfig,它的处理器密集度低于 ARWorldTrackingConfig。
AnchorEntity(.image) 和 ARImageAnchor 的区别在于 RealityKit 自动跟踪其所有锚点,而 ARKit 使用renderer(...) 或session(...) 方法进行更新。