从 AR 应用程序 (WebXR) 检测房间中的真实物体

Detecting real objects in a room from an AR app (WebXR)

让我们想象一个真实的绘画画廊,访客可以在绘画附近使用 phone 浏览器,以便(通过 AR)查看有关该绘画的一些信息。

我如何使用 WebXR 做到这一点?对每幅画的 GPS 位置进行硬编码可能不够准确,尤其是在室内。将 OpenCV arUco 标记打印并粘贴在每幅画上,并通过 WebXR 应用程序检测它们,是否是最佳解决方案?如果您距离标记超过 1 米,它们似乎效果不佳。

这听起来是个有趣的应用程序。计算机视觉技术通常非常擅长对对象进行分类(给定适当的训练集),但在检测和区分类别的各个成员(这就是您所提议的 - 从一组所有类别中的绘画)。

最简单的解决方案是使用 arUco 之类的东西——这是一个完美的用例。

如果你想要更通用的东西,你需要建立一个训练集(如果你的画作还不是著名的/有据可查的,这将非常困难)并训练一个模型以部署在手机等边缘设备上.这很容易是上述工作的 10-100 倍(并且您可能会得到更糟糕的结果),所以除非您试图展示计算机视觉的前沿并且手头有计算机视觉专家,否则我不会走这条路.

编辑:

我看到您更新的问题解释说标记效果不佳。虽然我还不知道您对此有多深入,但如果开箱即用后效果不佳,请不要气馁。计算机视觉是需要大量修改参数的事物之一,当参数调整的微小变化会显着影响性能时,它通常看起来像是黑魔法。我希望我可以分享更多内容,但是在计算机视觉方面,没有通用的技巧可以让您始终获得出色的结果。

WebXR AR 模块的初始版本不向应用程序提供相机图像,但计划将其作为后续版本。有关详细信息,请参阅 https://github.com/immersive-web/computer-vision 中社区小组的提案。

相比之下,ARCore 支持 image recognition,这将是 WebXR 的一个有用的附加功能,既可以作为计算机视觉提案的一部分,也可以作为一个单独的功能。