如何在Android上使用ARCore获取PointCloud和Pose?

时间:2019-06-10 09:45:06

标签: java android arcore

我正在尝试使用ARCore获取点云并构成场景的数据。但是,我无法确定起点,即入门代码将如何获取该数据? 如果有人可以帮助我,我将非常感激。

谢谢。

1 个答案:

答案 0 :(得分:2)

首先,您需要按以下方式获取会话的ArFrame

Frame frame = arFragment.getArSceneView().getArFrame();

然后调用acquirePointCloud方法

PointCloud pointCloud = frame.acquirePointCloud()

之后,可以将云中的点转储到FloatBuffer中进行处理:

FloatBuffer points = pointCloud.getPoints()

这会将点以4点(x,y,z,c)为一组转储到float缓冲区中。遍历FloatBuffer以获取点位置和置信度。这应该在附加到您的场景的onUpdate方法中调用

(顺便说一句,浏览一下ARCore示例应用程序代码,它确切显示了如何以及在何处实现这些功能)

相关问题