Onboard simultaneous localization and mapping (SLAM) methods are commonly used to provide accurate localization information for autonomous robots. However, the coordinate origin of SLAM estimate often resets for each run. On the other hand, UWB-based localization with fixed anchors can ensure a consistent coordinate reference across sessions; however, it requires an accurate assignment of the anchor nodes' coordinates. To this end, we propose a two-stage approach that calibrates and fuses UWB data and SLAM data to achieve coordinate-wise consistent and accurate localization in the same environment. In the first stage, we solve a continuous-time batch optimization problem by using the range and odometry data from one full run, incorporating height priors and anchor-to-anchor distance factors to recover the anchors' 3D positions. For the subsequent runs in the second stage, a sliding-window optimization scheme fuses the UWB and SLAM data, which facilitates accurate localization in the same coordinate system. Experiments are carried out on the NTU VIRAL dataset with six scenarios of UAV flight, and we show that calibration using data in one run is sufficient to enable accurate localization in the remaining runs. We release our source code to benefit the community at https://github.com/ntdathp/slam-uwb-calibration.
翻译:机载同步定位与建图(SLAM)方法通常用于为自主机器人提供精确的定位信息。然而,SLAM估计的坐标原点往往在每次运行时重置。另一方面,基于固定锚点的超宽带(UWB)定位能够确保跨会话的坐标参考一致性,但需要精确标定锚节点的坐标。为此,我们提出一种两阶段方法,通过标定与融合UWB数据和SLAM数据,实现在同一环境中坐标一致且精确的定位。在第一阶段,我们利用一次完整运行所获取的距离与里程计数据,结合高度先验和锚点间距离因子,通过求解连续时间批量优化问题来恢复锚点的三维位置。在第二阶段的后续运行中,采用滑动窗口优化方案融合UWB与SLAM数据,从而实现在同一坐标系下的精确定位。我们在NTU VIRAL数据集上进行了六种无人机飞行场景的实验,结果表明仅需利用单次运行数据进行标定,即可在其余运行中实现精确的定位。我们已公开发布源代码以惠及研究社区:https://github.com/ntdathp/slam-uwb-calibration。