我正在尝试使用ARCore获取点云并构成场景的数据。但是,我无法确定起点,即入门代码将如何获取该数据?如果有人可以帮助我,我将非常感激。
谢谢。
首先您需要按如下方式获取会话的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示例应用程序代码,它确切显示了如何以及在何处实现这些功能)