0. 简介
由于多相机之间通常存在有限或无重叠的视场,因此在估计外参相机参数时面临着一定的挑战,为了解决这个问题,本文提出了CamMap:一种新颖的6自由度外参标定流程。根据三个操作规则,使一个多相机系统单独捕捉一些类似的图像序列,以使用SLAM系统创建基于稀疏特征的地图。我们构建了一个两阶段的优化问题来对齐这些地图,并基于双向投影得到它们之间的变换,这些变换即为外参参数。该方案支持各种相机类型,在任何纹理丰富的环境中都可以使用。它可以同时标定任意数量的相机,无需标定板、同步、相同分辨率和频率。我们对具有有限和无重叠视场的相机进行了实验评估,结果显示我们的方法具有较高的准确性和效率。Kalibr和CamMap之间的绝对姿态误差(APE)小于0.025。代码已经在Github上开源了。我们这里文字主要是基于《CamMap:基于SLAM地图对不共视相机进行外参标定》的,当中插入代码以供学习。
1. 主要贡献
准确估计相机外参对于关联多个相机的信息至关重要。然而,如图1(a)所示,重叠视场通常很小或不存在,这给外参标定带来了重大挑战。为了让标定板能够被同时捕捉到,标定板必须远离相机放置。由于角点提取像素误差的增加,标定精度会降低,对于没有重叠视场的情况,需要一个充满已知相对位置模式的标定房间,这既昂贵又不方便。
图1. 非重叠相机的组合示例。(a) 配备两个RealSense D455和两个L515的TurtleBot。我们移除了连接线以清晰显示。(b) RealSense D455的组成,右侧图像传感器和左侧图像传感器可以组合成立体摄像头,并且左侧图像传感器的坐标系被用作参考,中间的RGB模块可以单独用作单目摄像头。© RealSense L515的结构,它可以用作RGB-D或单目摄像头。
针对解决上述问题并充分利用ORB-SLAM3,本文提出了CamMap:一种6自由度外参标定流程,它可以对非重叠相机进行高精度的外参标定,并可应用于多种类型的相机,如单目、立体和RGB-D相机。该标定方法CamMap通过对ORB-SLAM3创建的地图进行对齐来实现,换句话说,自然场景可以用作标定模式。在分别使用两个相机构建两个相似地图并找到所有匹配的地图点后,外参参数正好是地图之间的变换关系。标定过程仅耗费几十秒时间。所提出的方法的应用要求在表I中可以找到。
本文的主要贡献如下:
-
提出了一种相机外参标定流程,将ORB-SLAM3系统集成到不重叠视场的各种相机类型中,在任何纹理丰富的自然环境中都可以使用,无需标定板,并且可以同时标定任意数量的相机。并将所提出的方法开源。
-
为不同位置的多相机提出了三个操作规则,这旨在消除相机不同步时的理论误差,并减少SLAM漂移引起的误差。
-
我们在两阶段优化问题中引入了基于双向投影的代价函数来计算外参参数,然后提供了一种用于确定标定是否成功的SLAM漂移评估方法。
2. 主要内容
2.1 概述
这里详细描述了所提出的方法,如图2所示,一个装有两个刚性连接相机A和B的支架,在支架上进行一系列规定的运动后,相机捕捉图像流,这些图像流将由ORB-SLAM3处理,用于创建地图,包括关键帧 A i A_i Ai、 B j B_j Bj(其中 i = 1 , . . . , m i = 1,...,m i=1,...,m, j = 1 , . . . , n j = 1,...,n j=1,...,n)和地图点 P P P,值得注意的是地图坐标系与相机的第一个关键帧坐标系重合,这意味着地图之间的变换$ T B A M a p T^{Map}_{BA} TBAMap实际上是 A 1 A_1 A1和 B 1 B_1 B1之间的变换 T A 1 B 1 T^{B_1}_{A_1} TA1B1,也即是外参参数。然后执行类似关键帧检测以在两个地图中找到匹配的关键帧。最后使用两阶段优化通过对所有匹配地图点对( P k A 1 , P k B 1 P_k^{A_1},P_k^{B_1} PkA1,PkB1)进行对齐来估计外参参数(其中 k ∈ N , N = { 1 , . . . , l } k ∈ N,N = \{1,...,l\} k∈N,N={1,...,l})。CamMap的流程包括以下步骤:
-
通过相机捕捉一些图像序列,当多相机支架进行一组固定运动时,例如在小圆圈上旋转,这应该根据相机的相对位置进行规划,在标定开始和结束时,支架应保持静止。
-
使用ORB-SLAM3系统处理图像序列,以创建基于ORB特征的地图。
-
使用词袋(BoW)模块对两个地图之间的所有关键帧进行相似性检测,找到相似关键帧并匹配地图点。
-
对相似关键帧捕捉的尺度和局部地图进行对齐,以估计外参参数,这个过程是“帧到帧”的对齐,是第一个优化阶段。同时,使用卡方检验来删除错误匹配的地图点对。
-
对于第二阶段的优化,使用所有正确匹配的地图点对来优化外参参数,这是“地图对地图”的对齐。卡方检验用于获得内点的数量。最后根据内点数量和 T B 1 A 1 T^{A_1}_{B_1} TB1A1与 T B m A n T^{A_n}_{B_m} TBmAn之间的差异判断标定是否成功。