一种无公共视场的多相机系统相对位姿解耦估计方法 下载: 1094次封面文章
1 引言
自动驾驶场景中,获取无人驾驶汽车的相对位姿是实现无人驾驶技术的基础,为此采用基于视觉的方法解决相对位姿估计的问题。基于视觉的相对位姿估计方法根据相机配置分为单目视觉、双目视觉和多目视觉位姿估计法[1-4]。单目位姿估计法存在视场范围小和观测信息较少等问题,双目位姿估计法虽然增大了视场范围,但是要求两个相机有公共视场,因此研究无需公共视场的多相机系统位姿估计法是十分有必要的。由于多相机系统可以配置任意数量的相机,并且相机朝向可以任意放置,这大大增加了视场范围,为此能够获取更多的环境信息,提高位姿估计算法的鲁棒性。近年来,多相机系统在自动驾驶、同时定位与地图构建等领域得到了广泛的应用。
目前,比较常用的相机模型是中心投影模型,该模型中的所有光束均交于同一个中心点,即光心,但是多相机系统的光束通常不交于同一个空间点。文献[ 5-6]推导了广义相机模型的对极约束。众多学者基于广义相机的对极约束提出了一系列多相机系统位姿估计算法。Stewénius等[7]提出了基于Gröbner基的最小配置解方法,该方法需要6对匹配点对以产生64组候选解,但该方法的计算复杂度较高,不适用于实际场景。Li等[8]提出了线性解法,该算法需要17对匹配点对。Kneip等[9]提出了一种基于特征值最小化策略的非线性优化算法,该算法需要7个或7个以上的匹配点对。Ventura等[10]提出了一种基于旋转矩阵一阶近似的相对位姿估计方法,该方法简化了相对位姿的求解过程,适用于连续的相机运动估计,但该方法需要求解一个20阶多项式,因此对噪声敏感。为了减少相对位姿估计的自由度,国内外学者引入了额外的传感器信息和运动模型所假设的位姿估计算法[11-14]。Lee等[15]提出了两点法并将相机运动模型近似为阿克曼模型。为了更好地适应实际场景,Lee等[16]提出了最小4点和线性8点算法,利用了垂直方向的信息将相对运动的自由度减少为4个。Sweeney等[17]在已知旋转轴的条件下,将相对位姿估计问题推导为二次特征值的求解问题,但最少需要4对匹配点对。Liu等[18]对旋转矩阵进行一阶近似并利用惯性测量元件提供的滚转角和俯仰角,将多相机系统的位姿估计问题转换为4阶多项式求解问题,从而利用4对匹配点对产生4个候选解。
实际应用场景中,由于相对平移对场景中远点的前、后两帧图像坐标变化的影响很小[19-20],因此当只利用远处场景点估计相对位姿时,可以假设相对平移向量t为0。根据该假设条件,本文提出一种无公共视场的多相机系统相对位姿解耦估计方法。
2 基本原理
所提方法的处理流程如
1) 采用直方图投票法并利用远处场景点和惯性测量元件的测量数据估计R。由于一对匹配点对就可以得到两个候选解,因此采用直方图投票法来估计相对旋转矩阵的最终解。直方图投票法赋予给每一对匹配点对投票权,使相对位姿估计的最终解是所有匹配点对的综合贡献结果。
2) 采用采样相对高度变化法并利用近处场景点和R估计t。平移向量中有三个参数,若其中一个参数已知,则可以使用两对匹配点对来求解平移向量。由于在自动驾驶场景中,汽车在连续时刻的高度变化较小,因此可以对汽车在连续时刻的高度变化进行离散采样,通过穷举搜索法来找到全局最优解。
2.1 广义多相机对极约束
三维欧氏空间的一条直线L可以用直线的方向向量u和直线上的点p∈L来表示。直线L的Plücker坐标为L=
实验的目的是求解连续帧O1和O2之间的相对运动问题,广义相机对极几何约束如
直线L1在坐标系O2中的Plücker坐标为
式中:[·]×表示向量的反对称矩阵。直线L1和L2在空间中相交的充要条件为
整理(4)式可得广义相机对极约束[5],表达式为
2.2 相对姿态估计
为了减少多相机系统相对位姿估计的自由度,将IMU对齐垂直方向,即将多相机系统坐标系的Z轴方向校正为重力方向,使相对旋转矩阵只有一个未知量,即偏航角。
设定世界坐标系的X轴指向左,Y轴指向前,Z轴指向下,校正后的多相机系统坐标系的Z轴方向与重力方向一致,竖直向下。利用IMU提供关于世界坐标系的俯仰角Ryaw(绕X轴)、滚转角Rroll(绕Y轴)和偏航角Rpitch(绕Z轴),可以得到相应的三个旋转矩阵,因此相邻两帧关于世界坐标系的旋转矩阵可以分别表示为
相邻两帧的相对旋转矩阵ΔR可以表示为
式中:ΔRyaw表示相邻两帧相对偏航角的旋转矩阵,ΔRyaw=(
将(8)式代入(5)式可得
为了简化(9)式,设平移向量为
式中:
其中
由(11)~(13)式可知,对齐垂直方向后,多相机系统的相对位姿只剩两个未知量,即绕Z轴旋转θ的旋转矩阵ΔRyaw以及对齐垂直方向后
对于远处的场景点,可以假设相邻两帧的平移向量
使用欧拉角来构造旋转矩阵ΔRyaw,表达式为
将(15)式代入(14)式并利用三角函数约束cos2θ+sin2θ=1展开(14)式,整理后可得一个关于偏航角正弦函数sin θ的一元二次方程,表达式为
式中:A、B和C由
由(16)式可知,只需一对匹配点对就可解出偏航角θ的两个候选解,采用直方图投票法可以确定θ的最终解[21]。将偏航角θ代入(16)式即可求解旋转矩阵ΔRyaw,需要指出的是ΔRyaw并不是多相机系统相邻两帧的相对旋转矩阵ΔR,ΔR可以由ΔRyaw以及IMU提供的滚转角和俯仰角矩阵得到,将ΔRyaw代入(8)式即可得到多相机系统相邻两帧的相对旋转矩阵ΔR。
2.3 相对平移估计
确定相对旋转矩阵后,由于近处场景点既包含旋转矩阵的信息,又包含平移向量的信息,因此可利用近处场景点估计多相机系统的相对平移向量。
将
将(17)式代入(11)式,则广义相机对极约束可以简化为
式中:E表示单位矩阵。由(18)式可知,
展开(18)式可以得到关于平移向量
式中:m1、m2、m3和n均由
对高度变化tz进行离散采样,则(19)式仅剩两个未知数tx和ty,因此只需要两对匹配点对即可求出未知数tx和ty,表达式为
采用(20)式可以求解出
3 分析与讨论
3.1 仿真模拟
仿真模拟KITTI数据集的配置和两个无公共视场的相机,基线l=0.5 m。测试相机的等效焦距f=1000 pixel。多相机系统的坐标系设置为X轴指向左、Y轴指向前和Z轴指向下。由于在自动驾驶场景中,前、后两帧的位姿变化较小,因此在仿真模拟中,每次随机产生三个在-1°~1°之间的欧拉角并将其转换成R,平移距离设为0.5 m。空间点分为两部分,即100个远处点(距离相机5~1000 m)和100个近处点(距离相机0~5 m)。将200个空间点投影到图像平面上即可得到理想的像点坐标,加入期望为0和标准差为σ的高斯噪声可以得到实际的像点坐标。
为了测试所提方法在不同图像噪声水平下的表现,使高斯噪声的标准差σ从0 pixel增加到2 pixel,间隔为0.2 pixel,分别采用所提方法、17-Li[8]、6pt-Stewénius[7]和4pt-Lee[16]方法求解相对位姿,结果如
式中:Rgt和Rest分别表示旋转矩阵的真值和估计值;tgt和test分别表示平移向量的真值和估计值;trace(·)表示矩阵的迹。
图 4. 加入噪声后相对位姿在不同运动状况下的误差。(a)(b)向前运动;(c)(d)随机运动;(e)(f)侧向运动
Fig. 4. Error of relative pose under different motion condition after adding noise. (a)(b) Forward motion; (c)(d) random motion; (e)(f) sideways motion
从
3.2 KITTI数据集实验
KITTI数据集[22]是目前自动驾驶领域最重要的测试数据集之一,使用KITTI数据集的00序列对所提方法进行验证。使用SURF算子提取相邻两帧的匹配点对,由于所提方法适用于无公共视场的多相机系统,因此只提取相同相机前、后两帧的匹配点对以模拟无公共视场的配置。
3.2.1 筛选场景中的远点
观察实际的应用场景,平移向量对场景中远点的图像坐标变化的影响几乎可以忽略不计,平移向量模拟图像坐标变化的示意图如
自动驾驶场景中连续运动的车辆,其前进距离较小,即t值较小。由(23)式可知,当U值较大时,则t对图像坐标变化的影响可以忽略不计,因此可以利用图像匹配点对的纵坐标变化对所有特征点进行分类以筛选远处场景点。以KITTI数据集00序列中第2021 frame和第2022 frame左、右相机的图像为例,判断图像匹配点对的纵坐标变化是否小于1 pixel,若满足条件则对特征点进行分类,结果如
图 5. 平移向量模拟图像坐标变化的示意图
Fig. 5. Schematic of translation vector simulating image coordinate change
图 6. 不同图像的区分效果。(a)左相机的第2021 frame;(b)右相机的第2021 frame;(c)左相机的第2022 frame;(d)右相机的第2022 frame
Fig. 6. Distinguishing effects of different images. (a) 2021th frame of left camera; (b) 2021th frame of right camera; (c) 2022th frame of left camera; (d) 2022th frame of right camera
3.2.2 相对位姿解耦估计算法的效率与精度评估
为了验证所提方法的计算效率与精度,采用所提方法对KITTI数据集的00序列进行相对位姿估计,并与17-Li [8]、6pt-Stewénius[7]和4pt-Lee[16]方法进行对比,其中17-Li方法[8]和6pt-Stewénius方法[7]由OpenGV库[23]提供,4pt-Lee方法[16]和所提方法在C++上编程实现。实验平台的配置:CPU为intel i7-7700HQ处理器,内存16 GB,主频2.8 GHz。不同方法处理一对图像的运行时间,如
利用KITTI数据集提供的真值对各方法的估计值进行误差统计,采用中值误差来衡量方法的精度,精度的统计结果如
表 1. 不同相对位姿估计方法的运行时间
Table 1. Running time of different relative pose estimation methods
|
表 2. 位姿估计的精度
Table 2. Accuracy of pose estimation
|
图 7. 位姿估计误差分布曲线。(a)旋转矩阵误差;(b)平移向量误差
Fig. 7. Error distribution curves of pose estimation. (a) Rotation matrix error; (b) translation vector error
4 结论
针对单目和双目视觉系统的视野范围小以及朝向受限等问题,提出一种基于多相机系统的相对位姿解耦估计方法。该方法适用于无公共视场的多相机系统,多个相机的任意角度位置组合安装可以增加视场范围,从而获取丰富的纹理信息。通过仿真模拟和实际实验对所提方法进行验证并与现有方法进行对比,结果表明所提方法正确有效,精度可靠,可适用于自动驾驶场景中无人驾驶汽车的自定位。
[1] Guan BL, ZhaoJ, LiZ, et al. Minimal solutions for relative pose with a single affine correspondence[C]∥2020 IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR), June 13-19, 2020, Seattle, WA, USA. New York: IEEE, 2020: 1926- 1935.
[2] 张雄锋, 刘海波, 尚洋. 单目相机位姿估计的稳健正交迭代方法[J]. 光学学报, 2019, 39(9): 0915004.
[3] 李鑫, 张跃强, 刘进博, 等. 基于直线段对应的相机位姿估计直接最小二乘法[J]. 光学学报, 2015, 35(6): 0615003.
[4] 关棒磊, 孙祥一, 尚洋, 等. 晃动平台上对空拍摄大视场摄像机的标定方法[J]. 光学学报, 2015, 35(7): 0712003.
[5] Pless R. Using many cameras as one[C]∥2003 IEEE Computer Society Conference on Computer Vision and PatternRecognition, June 18-20, 2003, Madison, WI,USA. New York: IEEE, 2003: II-587.
[6] SturmP. Multi-view geometry for general camera models[C]∥2005 IEEE Computer Society Conference on Computer Vision and Pattern Recognition (CVPR'05), June 20-25, 2005, San Diego, CA, USA. New York: IEEE, 2005: 206- 212.
[7] StewéniusH, NistérD. Solutions to minimal generalized relative pose problems[EB/OL]. [2020-09-26].https:∥www.ixueshu.com/document/3df075ef2b672811318947a18e7f9386.html.
[8] Li HD, HartleyR, Kim JH. A linear approach to motion estimation using generalized camera models[C]∥2008 IEEE Conference on Computer Vision and Pattern Recognition, June 23-28, 2008, Anchorage, AK, USA. New York: IEEE, 2008: 10139850.
[9] KneipL, Li HD. Efficient computation of relative pose for multi-camera systems[C]∥2014 IEEE Conference on Computer Vision and Pattern Recognition, June 23-28, 2014, Columbus, OH, USA. New York: IEEE, 2014: 446- 453.
[10] VenturaJ, ArthC, LepetitV. An efficient minimal solution for multi-camera motion[C]∥2015 IEEE International Conference on Computer Vision (ICCV), December 7-13, 2015, Santiago, Chile. New York: IEEE, 2015: 747- 755.
[11] FraundorferF, TanskanenP, PollefeysM. A minimal case solution to the calibrated relative pose problem for the case of two known orientation angles[M] ∥Daniilidis K, Maragos P, Paragios N. Computer vision-ECCV 2010. Lecture notes in computer science. Heidelberg: Springer, 2010, 6314: 269- 282.
[15] Lee GH, FaundorferF, PollefeysM. Motion estimation for self-driving cars with a generalized camera[C]∥2013 IEEE Conference on Computer Vision and Pattern Recognition, June 23-28, 2013, Portland, OR, USA. New York: IEEE, 2013: 2746- 2753.
[16] Lee GH, PollefeysM, FraundorferF. Relative pose estimation for a multi-camera system with known vertical direction[C]∥2014 IEEE Conference on Computer Vision and Pattern Recognition, June 23-28, 2014, Columbus, OH, USA. New York: IEEE, 2014: 540- 547.
[17] SweeneyC, FlynnJ, TurkM. Solving for relative pose with a partially known rotation is a quadratic eigenvalue problem[C]∥2014 2nd International Conference on 3D Vision, December 8-11, 2014, Tokyo, Japan. New York: IEEE, 2014: 483- 490.
[19] Guan BL, VasseurP, DemonceauxC, et al. Visual odometry using a homography formulation with decoupled rotation and translation estimation using minimal solutions[C]∥2018 IEEE International Conference on Robotics and Automation (ICRA), May 21-25, 2018, Brisbane, QLD, Australia. New York: IEEE, 2018: 2320- 2327.
[20] 康轶非, 宋永端, 宋宇, 等. 动态环境下基于旋转-平移解耦的立体视觉里程计算法[J]. 机器人, 2014, 36(6): 758-768.
Kang Y F, Song Y D, Song Y, et al. Stereo visual odometry algorithm with rotation-translation decoupling for dynamic environments[J]. Robot, 2014, 36(6): 758-768.
[21] ScaramuzzaD, FraundorferF, SiegwartR. Real-time monocular visual odometry for on-road vehicles with 1-point RANSAC[C]∥2009 IEEE International Conference on Robotics and Automation, May 12-17, 2009, Kobe, Japan. New York: IEEE, 2009: 4293- 4299.
[23] KneipL, FurgaleP. OpenGV: a unified and generalized approach to real-time calibrated geometric vision[C]∥2014 IEEE International Conference on Robotics and Automation (ICRA), May 31 - June 7, 2014, Hong Kong, China. New York: IEEE, 2014: 14616693.
田苗, 关棒磊, 孙放, 苑云, 于起峰. 一种无公共视场的多相机系统相对位姿解耦估计方法[J]. 光学学报, 2021, 41(5): 0515001. Miao Tian, Banglei Guan, Fang Sun, Yun Yuan, Qifeng Yu. Decoupling Relative Pose Estimation Method for Non-Overlapping Multi-Camera System[J]. Acta Optica Sinica, 2021, 41(5): 0515001.