从 ARKit 获取特征点

Getting feature points from ARKit

我想抓取ARkit找到的原始特征点,这个API暴露了稀疏点云​​:https://developer.apple.com/documentation/arkit/arframe/2887449-rawfeaturepoints,并将其输出为[=11]的列表=].我还希望在这些点云坐标中的每一个坐标处都有特征点的矢量表示,例如它可以是 SIFT、SURF、BRIEF 或 ARkit 内部使用的任何东西。我可以从视频源中抓取图像并在图像上使用 运行 特征检测器,但不能保证特征点与稀疏点云中的点处于相同的 3D 坐标!

Apple 没有公开定位/生成特征点的内部机制。这对 Apple API 来说很典型——他们倾向于在不披露底层算法的任何细节的情况下公开结果,因为这使他们可以在未来自由地更改此类算法,从而自动改善所有使用 [= 的运输产品的体验15=].

事实上,Apple 引用了这个原因并暗示应该避免分析使用点云......就在您链接的文档页面上:

ARKit does not guarantee that the number and arrangement of raw feature points will remain stable between software releases, or even between subsequent frames in the same session.