我使用HelloAR场景(随ARcore包提供)构建了一个apk。该应用程序仅检测水平表面(例如 table )并在其上创建自己的半透明平面。当我在瓶子周围移动手机时,该应用程序再次只创建了一个穿过瓶子的水平面。我希望 ARCore 在我移动手机时沿着瓶子创建平面,就像网格中的多边形一样。
另一种情况是,我在地板上放置了两本书,每本书的厚度都不同。但 HelloAR 应用程序仅在较厚的书本上创建一个半透明的水平表面,而不是创建两个表面(每本书一个)。
这里出了什么问题?我该如何解决这个问题并让 HelloAR 应用程序更准确地工作?请帮忙。
软件:Unity v2018.2,
ARcore v1.11.0
最佳答案
ARCore 使用设备的软移动来生成近似的点云
来识别特征点,如果您在统一测试模式下使用应用程序,则通过不同形状的对比来检测这些点您可以看到这些点是如何放置在空场景中的。
一旦程序在“相同高度”
处有足够的点(我不知道确切的精度),它就会生成您可以看到的平面,但它不会检测分离的平面相差5厘米甚至更远。
如果您想知道应用程序的大致精度,请统一测试它并制作一个脚本来捕获已用于生成平面的生成点,然后检查Y差异
以看看哪个是公差距离。
关于unity-game-engine - 如何使用 Unity 和 ARCore 在现实世界对象(如瓶子)周围生成表面/平面?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57607766/