我想构建一个输出 RGB-D 图像/视频的程序/功能。RGB-D 图像是普通的 rgb 图像,但每个像素也有一个像这样的深度分量:
这段代码可以访问你手机的所有数据,所以我可以访问多个摄像头、加速度计、方向数据等。我的目标是制作最好的 RGB-D 视频。
我发现了两种主要的方法,一种是 VO(视觉里程计),您可以将普通视频输入到一些算法中,通常是 CNN(卷积神经网络)。该算法比较某些跟踪点的距离变化,并得出深度图,如下所示:
VIO(视觉惯性里程计)数据类似,但它采用惯性测量,例如加速度计数据。我已经看到 ARCore 在这里这样做:
问题是,我不确定哪种方法可以产生更好的 RGB-D 数据,而且我无法与地面真实值进行比较。我很想使用 ARCore/WebXR,因为它有一个易于使用的 JS Api,它很容易使用,因为它可以在手机上运行,而不是为 VO 编译 C++ 代码,它使用 KITTI 或 SLAM 等算法。
我的问题是,收集最准确的 RGB-D 数据的最佳方法是什么?