A multi-sensor fusion positioning method was proposed to address the limitations of single-sensor localization in complex environments. In terms of vision, line features were added to point features to overcome the interference caused by repetitive textures in visual images. In the global navigation satellite system (GNSS), the introduction of carrier phase with higher accuracy was used to smooth the pseudorange observations, which improved the accuracy of single point positioning. The accuracy and stability of the algorithm were validated by using both public datasets and measured data. In both public datasets and actual data, the accuracy of the proposed method is improved by 32.2%, 23.3%, 24.5%, and 25.7%, 25.8%, and 14.1% in the X, Y, and Z directions, respectively, compared to the GVINS (visual inertial GNSS tightly coupled algorithm) in the geocentric coordinate system. In addition, in the environments where satellite signals are severely obstructed, the proposed method still has good positioning performance for a certain period of time, with a positioning accuracy of 0.74 m in plane and 0.91m in elevation. Research results provide new insights for multi-sensor fusion position in complex environments.
近年来,基于多传感器融合的定位方法被广泛研究.视觉传感器具有价格低廉、能够提供丰富视觉和语义信息的优点.视觉同步定位和建图(simultaneous localization and mapping, SLAM)是一种仅使用相机就能实现自我运动估计的技术.MONO-SLAM(monocular-SLAM)[1]算法作为最早提出的一种视觉SLAM算法,使用间接法和卡尔曼滤波估计位姿,但该方法只适用于小场景中,且缺乏回环检测和全局优化.ORB-SLAM(oriented FAST and rotated BRIEF-SLAM)[2]算法使用基于特征点的间接方法,可以在纹理良好的环境中提供精确的定位.SVO(semi-direct visual odometry)[3]算法利用半直接的方法进行运动估计和建图,其主要缺点是采用短期数据关联,并且无法进行回环检测和全局优化.DSO(direct sparse odometry)[4]和LSD-SLAM(large-scale direct monocular SLAM)[5]算法使用直接法,利用平面中所有点进行大量计算,得到一个精确的结果.
相比之下,全球卫星导航系统GNSS提供全局的、无漂移的定位结果,被广泛应用于导航场景,只要有4颗可观测的卫星,就能获取接收机在全局坐标系中的位置.GNSS主要有4种定位模式:单点定位(single point positioning,SPP);实时差分(real time differential,RTD);实时动态(real time kinematic,RTK)[14]以及精密单点定位(precise point positioning,PPP)[15].其中,SPP和PPP不需要基站即可获取定位结果;PPP利用了精度更高的载波相位,可以获取分米级的定位结果,但收敛时间长[16],需要考虑整周模糊度的问题,增加了问题的复杂性和计算量.载波相位平滑伪距的方法将两者折中,使用载波相位信息优化伪距的精度,同时不需要考虑整周模糊度的问题.
本文利用PL-VIO[7]中改进的LSD方法提取线特征,在提取线特征后,使用普吕克坐标法(Plücker)来描述空间中的直线,给定空间中一条直线,其普吕克坐标可以表示成,其中 n 是平面的法向量, d 是直线的方向向量.假设局部世界坐标系下的直线转换到相机坐标系下的变换矩阵,其中和分别是局部世界坐标系到相机坐标系的旋转矩阵和平移矩阵.线特征的投影矩阵 K 将直线的相机坐标转换到线段的像素平面.定义普吕克线特征的坐标变换为
此外,在图9中的RTK退化区域为树木遮挡区域,由于树木遮挡严重导致卫星信号差,RTK在此路段失效,退化成单点定位.但在采集数据时路线为沿着中间车道分界线采集,因此该区域的路径应为一条直线.通过获取RTK退化区域两端的坐标,可以得到该路程的真值,并将本文算法与RTK退化时的误差进行比较如图12所示.从图中可以看出,当RTK退化时,本文方法在一定时间内仍然可以保持良好的精度,平面精度达到0.74 m,高程精度达到0.91 m.
5 结 语
本文提出了一种结合点线特征的视觉、惯性、GNSS紧耦合定位方法.该方法在GVINS算法的基础上,加入了包含更多环境结构信息的线特征,使得系统在重复纹理场景下的精度得到提高.另外,由于伪距测量的精度只能达到米级,而载波相位的精度可以达到厘米级,但需要求解整周模糊度,所以利用载波相位平滑伪距的方法以提高伪距测量的精度.通过公开数据集和实测数据集分别进行实验,验证了提出的方法可以实现稳定、高精度、实时的定位.在公开数据集中,本文提出的方法相比于GVINS算法,在地心地固坐标系下的X,Y,Z 3个方向上的定位精度分别提高了32.2%,23.3%,24.5%;在实测数据集中分别为25.7%,25.8%,14.1%.同时,在卫星信号遮蔽环境下,RTK不可用,退化为单点定位时,本文提出的方法仍可以在一定时间内保持良好的定位性能,平面精度达到0.74 m,高程精度达到0.91 m.
DavisonA J, ReidI D, MoltonN D, et al. MonoSLAM: real-time single camera SLAM[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2007, 29(6): 1052-1067.
[2]
Mur-ArtalR, MontielJ M M, TardósJ D. ORB-SLAM: a versatile and accurate monocular SLAM system[J]. IEEE Transactions on Robotics, 2015, 31(5): 1147-1163.
[3]
ForsterC, PizzoliM, ScaramuzzaD. SVO: fast semi-direct monocular visual odometry[C]// 2014 IEEE International Conference on Robotics and Automation (ICRA). Hong Kong, 2014: 15-22.
[4]
EngelJ, KoltunV, CremersD. Direct sparse odometry[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2018, 40(3): 611-625.
[5]
EngelJ, SchöpsT, CremersD. LSD-SLAM: large-scale direct monocular SLAM[M]//Computer Vision-ECCV 2014. Cham: Springer International Publishing, 2014: 834-849.
WangDan, HuangLu, LiYao. A monocular visual SLAM algorithm based on point-line feature[J]. Robot, 2019, 41(3): 392-403.
[8]
HeY J, ZhaoJ, GuoY, et al. PL-VIO: tightly-coupled monocular visual-inertial odometry using point and line features[J]. Sensors, 2018, 18(4): 1159.
[9]
LeeJ, ParkS Y. PLF-VINS: real-time monocular visual-inertial SLAM with point-line fusion and parallel-line fusion[J]. IEEE Robotics and Automation Letters, 2021, 6(4): 7033-7040.
[10]
QinT, LiP L, ShenS J. VINS-mono: a robust and versatile monocular visual-inertial state estimator[J]. IEEE Transactions on Robotics, 2018, 34(4): 1004-1020.
[11]
MourikisA I, RoumeliotisS I. A multi-state constraint Kalman filter for vision-aided inertial navigation[C]//Proceedings 2007 IEEE International Conference on Robotics and Automation. Rome, 2007: 3565-3572.
[12]
SunK, MohtaK, PfrommerB, et al. Robust stereo visual inertial odometry for fast autonomous flight[J]. IEEE Robotics and Automation Letters, 2018, 3(2): 965-972.
[13]
CamposC, ElviraR, RodríguezJ J G, et al. ORB-SLAM3: an accurate open-source library for visual, visual-inertial, and multimap SLAM[J]. IEEE Transactions on Robotics, 2021, 37(6): 1874-1890.
[14]
Mur-ArtalR, TardósJ D. ORB-SLAM2: an open-source SLAM system for monocular, stereo, and RGB-D cameras[J]. IEEE Transactions on Robotics, 2017, 33(5): 1255-1262.
[15]
LangleyR B. RTK GPS[J]. GPS World, 1998, 9(9):70-76.
[16]
ZumbergeJ F, HeflinM B, JeffersonD C, et al. Precise point positioning for the efficient and robust analysis of GPS data from large networks[J]. Journal of Geophysical Research—Solid Earth, 1997, 102: 5005-5017.
[17]
XiangY, GaoY, LiY. Reducing convergence time of precise point positioning with ionospheric constraints and receiver differential code bias modeling[J]. Journal of Geodesy, 2020, 94(1): 8.
[18]
CaoS Z, LuX Y, ShenS J. GVINS: tightly coupled GNSS-visual-inertial fusion for smooth and consistent state estimation[J]. IEEE Transactions on Robotics, 2022, 38(4): 2004-2021.
LinLi-meng, WangMei. An improved stereo SLAM system through combination of points and line segments[J]. Computer Measurement & Control, 2019, 27(9): 156-162.