我想知道预测手部追踪在 ARKit 中是如何工作的。它使用卡尔曼滤波器,还是有其他方法,例如机器学习?
我搜索了很多,但没有找到任何论文或网站解释这个预测是如何运作的。
骨骼手跟踪的两个相反方面是准确性与延迟。在选择任何过滤/人工智能/求解器算法时,您需要牺牲低延迟来换取高精度,反之亦然。卡尔曼滤波器/预测器对于这两个参数都是最佳的。在这项迪士尼研究中,团队为每个关节使用了 22 个单独的卡尔曼滤波器,它们同时工作。遗憾的是,Apple 很少发表有关其产品或 API 所基于原理的科学论文,但是,我 99% 确定它是 ARKit/RealityKit 身体跟踪和手部跟踪中使用的卡尔曼滤波器/预测器 。为什么要重新发明轮子?
我想补充一点,当使用
.predicted
跟踪模式时,没有什么可以阻止库比蒂诺工程师使用解决方案的共生:Kalman predictor
(使用过去的数据来预测关节的运动)与 predictive AI models
(当某些关节遮挡),基于特定求解器使用 inverse kinematics
。