Ios ARKIT-如何确保ARKIT已校准?

Ios ARKIT-如何确保ARKIT已校准?,ios,swift,arkit,Ios,Swift,Arkit,我正在swift 4中制作一个简单的尺子ARKit应用程序 但我遇到了一个问题,有时,我的措施是有点或完全关闭。我想,这可能是因为ARkit校准不好,没有正确检测到我的表面 我目前在3D中投影了4个点,并希望确保使用它们得到的测量值是正确的,或者至少是一致的。有没有一个标准的方法可以做到这一点 提前感谢可能不是一种标准的方法,但我的方法是每隔半秒左右执行一次命中测试,直到命中测试实际返回一些东西。一旦它这样做了,我至少知道AR已经校准了 我找到了一个不错的方法,通过对Arkit在我的帧中检测到的

我正在swift 4中制作一个简单的尺子ARKit应用程序

但我遇到了一个问题,有时,我的措施是有点或完全关闭。我想,这可能是因为ARkit校准不好,没有正确检测到我的表面

我目前在3D中投影了4个点,并希望确保使用它们得到的测量值是正确的,或者至少是一致的。有没有一个标准的方法可以做到这一点


提前感谢

可能不是一种标准的方法,但我的方法是每隔半秒左右执行一次命中测试,直到命中测试实际返回一些东西。一旦它这样做了,我至少知道AR已经校准了

我找到了一个不错的方法,通过对Arkit在我的帧中检测到的FeaturePoints数量设置一个阈值


例如,如果
frame.rawFeaturePoints?.points.count
返回的值高于我的阈值(我个人使用50,但这主要取决于您通常与目标的距离),我估计我的应用程序已校准。

感谢您的回答,我最终尝试了一些稍微不同的方法,但是你的输入也有帮助:)很好的解决方案,ARKit通常需要多长时间才能通过你应用程序的阈值?这主要取决于你离目标的距离。显然,距离越远,应用程序越能检测到特征点。所以我实际上做的是让我的阈值取决于距离,如果我真的离我的物体很近,它大约是20-30,如果我离得很远,它大约是150。我还想过使用ARFrame.worldMappingStatus,它可以让你了解“环境探索的状态”,但我必须承认它并没有像预期的那样发挥作用。为了回答你的问题,我想在iPhone8 iOS 12Cool上用大约2-3秒的时间来回答你。这是一种很好的方式