【问题标题】:Fixing device coordinate system regardless of device orientation?无论设备方向如何,都修复设备坐标系?
【发布时间】:2018-10-15 15:52:08
【问题描述】:

我正在成功地将(纬度、经度)坐标转换为(东、北)坐标,并试图找出一种在 AR 世界中准确放置(东、北)坐标的方法。

我当前问题的示例:

设备坐标系:

从(纬度,经度)坐标转换得到的(东,北)坐标,

(+x, 0, +z) where x=East, z=North

现在,如果我面朝北,EN 坐标将放在我身后,因为前向轴是 -z 。如果我面向南方,EN 坐标将再次放置在我身后,因为它取决于我的设备方向。

我的问题:

在 ARCore 中,无论设备处于什么方向,都可以固定设备的坐标系吗?或者是否有考虑设备方向并允许静态放置锚点的算法?

编辑:

我在 ARCore-Sceneform GitHub 上发布了同样的问题,这些是我收到的答案:

【问题讨论】:

    标签: android augmented-reality arcore coordinate-systems sceneform


    【解决方案1】:

    首先让我们看看Google ARCore engineers say about World coordinates

    世界坐标空间

    随着 ARCore 对环境的理解发生变化,它会调整其世界模型以保持事物的一致性。发生这种情况时,相机和锚点的数字位置(坐标)可能会发生显着变化,以保持它们所代表的物理位置的适当相对位置

    这些变化意味着每一帧都应该被认为是在一个完全独特的世界坐标空间中。锚点和相机的数字坐标决不能在检索它们的渲染帧之外使用。如果需要考虑超出单个渲染帧范围的位置,则应创建锚点或使用相对于附近现有锚点的位置。

    但是!

    我坚信带有摄像头和传感器的智能手机(在 ArSession 中)从坐标空间的相对中心开始(对于我们来说是相对的,对于 ARCore 来说当然是绝对的):

    // X, Y, Z coordinates must be counted from zero, mustn't they?
    
    (x: 0.0, y: 0.0, z: 0.0)
    

    那么,在某些情况下,世界坐标空间可能会发生变化。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-11-11
      • 1970-01-01
      • 1970-01-01
      • 2011-11-06
      • 2012-09-06
      • 1970-01-01
      • 2012-07-19
      相关资源
      最近更新 更多