【问题标题】:Augmented image getting detected but not tracked增强图像被检测到但未被跟踪
【发布时间】:2020-02-10 12:37:48
【问题描述】:

我正在处理 arcore 中的增强图像示例,在该示例中我能够检测到图像,但没有跟踪图像并且没有放置对象。我指的是来自 codelabs 的增强图像示例。我已经更改了图像(手工制作的图像),其 arcoreimg 得分为 100,并且还对代码进行了以下更改。它不断被检测到,但没有被跟踪。

config.setUpdateMode(Config.UpdateMode.LATEST_CAMERA_IMAGE);
config.setFocusMode(Config.FocusMode.AUTO);

【问题讨论】:

    标签: android augmented-reality arcore sceneform


    【解决方案1】:

    为了在 ARCore 中连续检测和跟踪增强图像,请遵循以下基本规则:

    • 在 ARCore 1.15 中,如果您的图像不动(如墙上的海报),您应该在图像上附加 global anchor 以增加跟踪的稳定性。

    • 物理图像必须占据相机图像空间的 1/4。

    • 最小图像分辨率应为 300 x 300 像素。

    • 您必须在适当的照明条件下跟踪您的图像。光线不足的房间对于 AR 用户体验来说是一个糟糕的环境。

    • 最好指定跟踪图像的预期物理尺寸。额外的元数据可以提高跟踪性能,尤其是对于大型物理图像(尺寸超过 75 厘米)。

    • 当 ARCore 检测到未指定预期物理尺寸的所需图像时,其跟踪状态将自动暂停。对于用户来说,这意味着 ARCore 已经识别出图像,但还没有收集到足够的数据来估计它在 3D 空间中的位置。 Do not use the image's pose and size estimates until the image's tracking state is tracking

    • 增强图像支持.png.jpeg。但是,请避免对 .jpeg 进行大量压缩。

    • 使用具有高对比度内容的图像,无论是彩色还是黑白。

    • 避免使用重复图案(如Polka dot)和稀疏特征的图像。

    【讨论】:

      【解决方案2】:

      Andy 的回答是正确的,但可能不够具体。我也遇到了这个问题,一旦我添加了以米为单位的预期宽度,它几乎立即开始工作。

      而不是augmentedImageDatabase.addImage(DEFAULT_IMAGE_NAME, augmentedImageBitmap);

      使用augmentedImageDatabase.addImage(DEFAULT_IMAGE_NAME, augmentedImageBitmap, <width in meters>);

      然后它几乎会在检测到它后立即开始跟踪,而您不必处理这种暂停的恶作剧。对我来说效果很好,7 厘米的图像得分为 95。它甚至适用于得分为 40 的图像。具有设定宽度的 40 分图像比没有设定宽度的 100 分图像效果更好。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2021-10-22
        • 2020-12-16
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多