CN110207693B - 一种鲁棒立体视觉惯性预积分slam方法 - Google Patents
一种鲁棒立体视觉惯性预积分slam方法 Download PDFInfo
- Publication number
- CN110207693B CN110207693B CN201910423422.2A CN201910423422A CN110207693B CN 110207693 B CN110207693 B CN 110207693B CN 201910423422 A CN201910423422 A CN 201910423422A CN 110207693 B CN110207693 B CN 110207693B
- Authority
- CN
- China
- Prior art keywords
- time
- error
- moment
- navigation
- value
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 65
- 230000010354 integration Effects 0.000 title claims abstract description 32
- 230000000007 visual effect Effects 0.000 claims abstract description 41
- 239000011159 matrix material Substances 0.000 claims description 75
- 238000005457 optimization Methods 0.000 claims description 65
- 230000008859 change Effects 0.000 claims description 16
- 238000005259 measurement Methods 0.000 claims description 12
- 230000008569 process Effects 0.000 claims description 12
- 230000005484 gravity Effects 0.000 claims description 11
- 230000009466 transformation Effects 0.000 claims description 11
- 238000005070 sampling Methods 0.000 claims description 7
- 238000001514 detection method Methods 0.000 claims description 6
- 238000006243 chemical reaction Methods 0.000 claims description 5
- 238000004364 calculation method Methods 0.000 claims description 3
- 230000009191 jumping Effects 0.000 claims description 3
- 238000012546 transfer Methods 0.000 claims description 3
- 230000002411 adverse Effects 0.000 abstract description 2
- 102000008115 Signaling Lymphocytic Activation Molecule Family Member 1 Human genes 0.000 description 17
- 108010074687 Signaling Lymphocytic Activation Molecule Family Member 1 Proteins 0.000 description 17
- 238000013519 translation Methods 0.000 description 4
- 230000001133 acceleration Effects 0.000 description 3
- 238000010586 diagram Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- GLCKDDGHXHWQFI-UHFFFAOYSA-N 4-tert-butyl-n-[6-chloro-5-(2-methoxyphenoxy)pyrimidin-4-yl]benzenesulfonamide Chemical compound COC1=CC=CC=C1OC1=C(Cl)N=CN=C1NS(=O)(=O)C1=CC=C(C(C)(C)C)C=C1 GLCKDDGHXHWQFI-UHFFFAOYSA-N 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000006073 displacement reaction Methods 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 238000011423 initialization method Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000011017 operating method Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/10—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration
- G01C21/12—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration executed aboard the object being navigated; Dead reckoning
- G01C21/16—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration executed aboard the object being navigated; Dead reckoning by integrating acceleration or speed, i.e. inertial navigation
- G01C21/165—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration executed aboard the object being navigated; Dead reckoning by integrating acceleration or speed, i.e. inertial navigation combined with non-inertial navigation instruments
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/10—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration
- G01C21/12—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration executed aboard the object being navigated; Dead reckoning
- G01C21/16—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration executed aboard the object being navigated; Dead reckoning by integrating acceleration or speed, i.e. inertial navigation
- G01C21/18—Stabilised platforms, e.g. by gyroscope
Landscapes
- Engineering & Computer Science (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Automation & Control Theory (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Navigation (AREA)
Abstract
本发明公开了一种鲁棒立体视觉惯性预积分SLAM方法,属于视觉导航技术领域。本方法利用惯性传感器测量值进行预积分预测载体导航信息,并与立体视觉传感器的数据进行融合判断图像匹配质量,并根据判断结果融合预积分信息输出不同的结果,且可以对构出的地图进行复用,消除累积误差。本发明能够有效解决不良环境中视觉SLAM匹配错误与失败的问题,获得高鲁棒性以及高精度的载体导航信息,并可以构建精准地图进行复用,具有良好的推广前景。
Description
技术领域
本发明涉及一种鲁棒立体视觉惯性预积分SLAM方法,属于视觉导航技术领域。
背景技术
实时定位与构图(SLAM,Simultaneous Localization and Mapping)技术是机器人自主导航技术领域中的一大研究热点,也是机器人在工程实践应用中必要的关键技术。视觉传感器可以感知外界的光线,无需自身进行信号发射,具有高自主性,视觉SLAM在机器人SLAM中具有广阔的发展前景与较大的潜质。
目前大多视觉SLAM都对外界环境具有较高的要求,需要利用环境信息进行视觉解算,并且在整个SLAM过程中,环境需要一直保持一个可控的状态,否则会导致视觉解算失败进而产生导航信息输出失败而对机器人造成危害。而现实环境中往往存在着明暗变化以及运动造成的成像噪声。机器人SLAM方法中,对于外界环境变化十分敏感,其变化会对直接导致精度下降,造成较大的误差甚至系统崩溃。
发明内容
本发明提出了一种鲁棒立体视觉惯性预积分SLAM方法,能够在复杂环境下获得高鲁棒性的视觉SLAM系统。
本发明为解决其技术问题采用如下技术方案:
一种鲁棒立体视觉惯性预积分SLAM方法,包括如下步骤:
步骤3:判断是否初始化,如果尚未初始化则进行初始化,得到惯性传感器的误差ba(i)和bg(i)与重力分量gb(i)估计,并跳转至步骤1;如果已经初始化,则进入下一步骤;
步骤4:以i时刻的预积分预测值作为图像匹配的位姿起点,匹配视觉传感器数据S(i),并进行回环检测,如果存在回环,则进行联合回环、惯性、图像误差的位姿优化求解,并跳转至步骤6;如果不存在回环则进入下一步骤;
步骤5:构建图像匹配质量判定模型,对图像匹配的质量进行判断;图像匹配质量不满足条件时,进行纯惯性误差位姿优化求解;图像匹配质量满足条件时,联合惯性、图像误差进行位姿优化求解载体位姿;
步骤6:输出载体导航信息,更新地图,并跳转至步骤1。
i时刻得到惯性传感器加计输出与陀螺仪输出其中包含从i-1时刻到i时刻的惯性传感器加计测量数据和陀螺仪量测数据k∈(t(i-1),(t(i)-t(i-1))/Δt),k为i-1至i时刻的离散采样时刻序列,t(i-1)为以离散周期计数的起点,t(i)为以离散周期计数的终点,Δt为离散周期;测量模型为:
ba(k)为k时刻的加速度计量测偏差,bg(k)为k时刻的陀螺仪量测偏差,ηa(k)为k时刻加速度计的随机噪声,ηg(k)为k时刻陀螺仪的随机噪声,gn为导航系下的重力,为k时刻导航坐标系到机体坐标系的旋转矩阵,fn(k)为k时刻的加速度计量测在导航系中的真实值,为k时刻的加速度计量测的真实值;对ba(k)与bg(k)有:
bg(k)=ηbg
ηba为加速度计白噪声,ηbg为陀螺仪白噪声;
预积分的过程为:
ΔRi-1,i为从i时刻到i-1时刻的旋转矩阵,Δvi-1,i为i-1时刻到i时刻的速度变化量,Δpi-1,i为从i-1时刻到i时刻的位置变化量,Ri为i时刻从机体系至导航系的旋转矩阵,为i-1时刻从导航系至机体系的旋转矩阵,vi为i时刻在导航系中的速度,vi-1为i-1时刻在导航系中的速度,Δti-1,i为从i-1时刻到i时刻的时间周期,ΔRi-1,k为从i-1时刻到k时刻的旋转矩阵,pi为i时刻在导航系中的位置,pi-1为i-1时刻在导航系中的位置,整体预积分的过程将于i时刻的全局位姿无关。
步骤4中预积分预测值辅助图像匹配的方法为:
为利用i时刻载体预积分预测的导航信息预测i时刻的视觉传感器数据S(i)中每个特征点在导航坐标系中的坐标,为特征点在导航系下X值,为特征点在导航系下Y值,为特征点在导航系下Z值,为特征点在相机系下X值,为特征点在相机系下Y值,为特征点在相机系下Z值,为像素点在机体系下x值,为像素点在机体系下y值,为像素点在机体系下z值,为i-1时刻从机体系到导航系的旋转矩阵,为相机系转换至机体系的旋转矩阵,为i-1时刻到i时刻的转换矩阵,其中m代表视觉传感器数据S(i)中第m个特征点;
其中,j=1,2,L,numi
步骤4中位姿优化求解的方法具体为:
eb=b(q+1)-b(q)
ΣI为信息矩阵,用于描述惯性误差之间的关系,回环误差可以表示为eR为惯性在姿态中的误差,ev为惯性在速度中的误差,ep为惯性在位置中的误差,eb为惯性在误差转移上的变化,nloop为成功与回环匹配特征点的数量,为陀螺仪误差为bg(q)下从q+1时刻至q时刻旋转矩阵,为q+1时刻导航系下速度,为q时刻导航系下速度,Δvq,q+1(bg(q),ba(q))为陀螺仪误差为bg(q),加速度计误差为ba(q)下从q时刻至q+1时刻速度变化,w为导航系下,为q时刻导航系下位置,为q+1时刻导航系下位置,Δpq,q+1(bg(q),ba(q))为陀螺仪误差为bg(q),加速度计误差为ba(q)下从q时刻至q+1时刻位置变化,δbg(q)为q时刻陀螺仪误差变化量,δba(q)为q时刻加速度计误差变化量,ΣR为惯性误差协方差矩阵,ploop为回环位置矢量,π(·)为视觉投影;当其中一帧为匹配失败帧时,则其中Εproj(m,m+1)=0,完成出现匹配失败时的回环优化;
步骤5中所述图像匹配质量判断模型具有两种判断条件:
条件1:当前图像与地图拥有α个以上的匹配点,即:
Εjudge<δ
需同时满足条件1与条件2的情况下即满足图像匹配质量判断模型,其余情况均为不满足;
步骤5中纯惯性误差进行位姿优化求解载体位姿具体执行方法如下:
使用图优化方法进行牛顿-列温伯格迭代,当达到误差收敛或者迭代30次则停止,,输出优化目标 为优化后的姿态,为优化后的位置,为优化后的速度,为优化后的陀螺仪误差,为优化后的加速度计误差,将旋转矩阵转换为四元数,输出导航信息。
本发明的有益效果如下:
能够有效解决不良环境中视觉SLAM匹配错误与失败的问题,获得高鲁棒性以及高精度的载体导航信息,并可以构建精准地图进行复用,具有良好的推广前景。
附图说明
图1是本发明的实施例所提供的一种鲁棒立体视觉惯性预积分SLAM方法的原理框图。
图2是基于本发明的鲁棒立体视觉惯性预积分SLAM方法实际导航定位轨迹图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本发明作进一步的详细说明。
本实施例提供一种鲁棒立体视觉惯性预积分SLAM方法,包括惯性传感器和立体视觉传感器相对固定装载于一载体,所述惯性传感器包括加速度计和陀螺仪。参考图1,所述SLAM系统的工作方法包括以下步骤:
所述视觉传感器为立双目摄像机或颜色和深度(RGB-D)摄像机,步骤1中采集i时刻的视觉传感器数据为点云数据,每个像素点包含像素值以及在相机坐标系下的三维坐标值。
其中,载体的导航信息包括姿态四元数、三维位置与三维速度信息,四元数姿态角包括横滚角、俯仰角和偏航角;具体定义如下:横滚角为载体绕导航坐标系的Y轴方向的转动的角度,俯仰角为载体绕导航坐标系的X轴方向转动的角度,偏航角为载体绕导航坐标系的Z轴方向转动的角度。其旋转方向均满足右手定则,三维位置与三维速度为载体在速度与位置导航系各轴中的投影;
坐标系的定义如下:以当前时刻载体的位置为原点构建机体坐标系b,其中X轴、Y轴与Z轴分别与当前时刻载体的右向、前向和天向重合;以当前时刻相机的感光元件位置为原点构建相机坐标系c,其中X轴、Y轴与Z轴分别与当前时刻载体的右向、地向和前向重合;以当前时刻相机成像的左上角为原点构建像素坐标系,其中X轴与Y轴分别与当前图像的右向和地向重合;以初始时刻载体的位置为原点构建导航坐标系n,其中X轴、Y轴与Z轴分别与初始时刻载体的右向、前向和天向重合;以初始时刻载体的位置为原点构建地理坐标系i,其中X轴、Y轴与Z轴分别与初始时刻载体的右向、前向和当地水平面的天向重合。
获得载体导航信息预积分预测值的方法为:
i时刻得到惯性传感器加计输出与陀螺仪输出其中包含从i-1时刻到i时刻的惯性传感器测量数据和k∈(t(i-1),(t(i)-t(i-1))/Δt),Δt为离散周期,k为i-1至i时刻的离散采样时刻序列,t(i-1)为以离散周期计数的起点,t(i)为以离散周期计数的终点。测量模型为:
ba(k)与bg(k)分别为k时刻的加速度计与陀螺仪的量测偏差,ηa(k)与ηg(k)分别为k时刻的加速度计与陀螺仪的随机噪声,gn为导航系下的重力,为k时刻导航坐标系到机体坐标系的旋转矩阵,fn(k)为k时刻的加速度计量测在导航系中的真实值,为k时刻的加速度计量测的真实值。对ba(k)与bg(k)有:
bg(k)=ηbg
其中:ηba为加速度计白噪声,ηbg为陀螺仪白噪声。
预积分的过程为:
ΔRi-1,i为从i时刻到i-1时刻的旋转矩阵,Δvi-1,i为i-1时刻到i时刻的速度变化量,Δpi-1,i为从i-1时刻到i时刻的位置变化量。Ri为i时刻从机体系至导航系的旋转矩阵,为i-1时刻从导航系至机体系的旋转矩阵,ΔRi-1,k为从i-1时刻到k时刻的旋转矩阵,vi为i时刻在导航系中的速度,vi-1为i-1时刻在导航系中的速度,Δti-1,i为从i-1时刻到i时刻的时间周期,pi为i时刻在导航系中的位置,pi-1为i-1时刻在导航系中的位置。整体预积分的过程将于i时刻的全局位姿无关。
其中:
为流形空间李群与原点正切空间李代数的转换关系。
其中:ω为任意向量,W为任意旋转矩阵,ω∧为ω的反对称矩阵,ωi,i=1,2,3为任意数字,W∨为取逆反对称矩阵。
步骤3:判断是否初始化,如果尚未初始化则进行初始化,得到惯性传感器的误差ba(i)和bg(i)与重力分量gb(i)估计,并跳转至步骤1;如果已经初始化,则进入下一步骤;具体初始化方法为:
1)获取i时刻视觉信息,并提取当前定向加速段测试的特征与旋转二进制鲁棒独立基础特征点(Oriented Features From Accelerated Segment Test and RotatedBinary Robust Independent Elementary Features,ORB)或二进制鲁棒独立基础特征点(Binary Robust Independent Elementary Features,BRIEF)特征点得到视觉传感器数据S(i),特征点包含关键点、描述子与像素坐标
fpm(i)=[fuml(i) fvml(i) fumr(i)]T
fuml(i)为特征点点在双目中左像素坐标系下X坐标值,fvml(i)为在双目中左像素坐标系下Y坐标值,fumr(i)为右相机像素坐标系下的X轴上的值,深度相机可以将其虚拟投影至右相机中,其中m代表第m个特征点;
2)如果当前i=0,则以当前时刻的机体系作为导航系,并将视觉传感器数据S(i)投影至导航系,构成地图M(i);如果当前i>0,将i时刻视觉传感器数据S(i)与i-1时刻视觉传感器数据S(i-1)使用暴力(Brute)匹配方法进行特征点匹配。
3)利用非线性优化方法,在得到匹配点对后,将i时刻的特征点位置与对应匹配的i-1时刻视觉传感器数据S(i-1)的特征点像素位置之差的绝对值之和作为优化目标,优化最佳位姿变化,为k时刻S(i)的像素坐标,公式如下:
其中,为与匹配成功的M(k)中特征点在导航坐标系下的坐标值,为其在相机坐标系中的位置,n为匹配成功的数量,R,t为从i时刻到i-1时刻的旋转矩阵以及位置的变化量,ρ为核函数,Rcb为从机体系至相机系的旋转矩阵,pcb为从机体系至相机系的平移矩阵,为i时刻从导航系到机体系的旋转矩阵,pi为i时刻从导航系到机体系的平移矩阵。
其中fx为相机焦距x比例,fy为相机焦距y比例,cx为光心在像素坐标系中x偏移,cy为光心在像素坐标系中y偏移,b为基线长度,X为相机系中X坐标,Y为相机系中Y坐标,Z为相机系中Z坐标,对于RGB-D相机,例如Kinect与华硕Xtion大概为8cm。
使用图优化方法不断进行牛顿-列温伯格迭代变换矩阵使得优化目标最小,以达到最小值或者迭代30次为止,输出变换矩阵Ti-1,i,
得到使用视觉信息优化求解的位姿,其中:其中rij,i,j∈1,2,3为旋转参数,ti.i∈1,2,3为平移参数,01×3为0矩阵,I1×1为单位矩阵。
4)利用连续两个关键帧之间的图像位姿变换,去估计陀螺仪的偏差,关键帧的选取准则为匹配成功的特征点少于90%或者少于100个则选取当前帧作为新的关键帧,初始关键帧q=i=0。通过优化预积分预测与图像估计的旋转差值,计算陀螺仪的初始偏差:
其中,连续之间关键帧加速度计与陀螺仪的偏差变化可以忽略,bg(q)=bg(q+1)=…=bg(q+N-1),N为关键帧的数量,bg(q)为q时刻陀螺的偏差估计值,bg(q+1)为q+1时刻陀螺的偏差估计值,bg(q+N-1)为第q+N-1帧的陀螺仪误差,为陀螺仪误差为bg(q)下的从q+1时刻至q时刻的旋转矩阵,ΔRij为从j时刻到i时刻的旋转矩阵,为为视觉估计的从机体系到导航系旋转矩阵,为视觉估计的旋转矩阵,Rcb为机体系转换为相机系的旋转矩阵,为q+1时刻从机体系到导航系的旋转矩阵,为q时刻从机体系到导航系的旋转矩阵。优化该函数可以得出初始化陀螺仪偏差。
5)利用位置预测值估计重力在导航系中的分量:
可得利用两个连续的关键帧(q,q+1),(q+1,q+2),Δpq,q+1为q时刻至q+1时刻的位移矢量,为q+1时刻从相机在导航系中的位置,为q时刻导航系中机体系的速度,Δtq,q+1为q时刻至q+1时刻,gn为导航系下重力向量,为q+1时刻从相机系至导航系的转换矩阵,为导航系下从机体系到相机系的位置位置矢量去除速度的影响,可得:
为q+2时刻的相机在导航系中的位置,Δtq+1,q+2为q+1时刻到q+2时间,Δpq+1,q+2为从q+1时刻到q+2的位置变化,为q+1时刻从相机系到导航系的旋转矩阵,通过解线性矩阵求解gn,由于自由度为3,则需要3个关键帧建立三个方程组求解,得到重力分量的初值
6)利用重力初值可以进行加速度计偏差的估计以及重力分量的优化。将重力表达为:
其中,(·)×为取反对称矩阵,δθ为姿态的扰动,gi为当地真实重力向量,Rni为从地理系至导航系的旋转矩阵。同样将其与预积分公式进行代入。
其中,
其中,Δpq+1,q+2(ba(q))为当加速度偏差为ba(q)时q+1时刻到q+2时刻导航系下位置变化,Δvq,q+1为q时刻到q+1时刻导航系下的速度变化,Δpq,q+1(ba(q))为当加速度偏差为ba(q),q时刻到q+1时刻下导航系下位置变化,通过解线性矩阵求解,可以得出加速度计的初始偏差和重力的进一步估计。
7)对速度进行估计,由下式可得:
将旋转矩阵转换为四元数q0,q1,q2,q3,转换过程如下:
由此完成初始化的过程。
步骤4:以i时刻的预积分预测值作为图像匹配的位姿起点,匹配视觉传感器数据S(i),并进行回环检测,如果存在回环,则进行联合回环、惯性、图像误差的位姿优化求解,并跳转至步骤6;如果不存在回环则进入下一步骤;
其中预积分预测值辅助图像匹配的方法为:
为特征点在导航系下X值,为特征点在导航系下Y值,为特征点在导航系下Z值,为特征点在相机系下X值,为特征点在相机系下Y值,为特征点在相机系下Z值,为像素点在机体系下x值,为像素点在机体系下y值,为像素点在机体系下z值,为i-1时刻从机体系到导航系的旋转矩阵,为i-1时刻到i时刻的转换矩阵,其中m代表视觉传感器数据S(i)中第m个特征点;
其中,j=1,2,L,numi
通过计算与的汉明距离以最小的汉明距离的两倍为阈值L1,剔除高于两倍阈值L1的特征点匹配,再进行随机采样一致性(RandomSampleConsensusAlgorithm,RANSAC)随机采样一致性方法剔除外点,得到最终匹配的特征点对;
回环检测与位姿优化求解的方法具体如下:
利用词袋算法将i时刻视觉传感器数据S(i)与地图数据M进行匹配,如果连续3帧存在30个以上经过RANSAC筛选的成功匹配点,则认为成功检测出回环,并在此基础上进行位姿的求解,联合回环、惯性、图像误差,其中优化变量为从回环开始的所有关键帧位置速度姿态及陀螺仪误差加速度计误差 优化函数为:
eb=b(q+1)-b(q)
ΣI为信息矩阵,用于描述惯性误差之间的关系,回环误差可以表示为eR为惯性在姿态中的误差,ev为惯性在速度中的误差,ep为惯性在位置中的误差,eb为惯性在误差转移上的变化,nloop为成功与回环匹配特征点的数量,为陀螺仪误差为bg(q)下从q+1时刻至q时刻旋转矩阵,为q+1时刻导航系下速度,为q时刻导航系下速度,Δvq,q+1(bg(q),ba(q))为陀螺仪误差为bg(q),加速度计误差为ba(q)下从q时刻至q+1时刻速度变化,w为导航系下,为q时刻导航系下位置,为q+1时刻导航系下位置,Δpq,q+1(bg(q),ba(q))为陀螺仪误差为bg(q),加速度计误差为ba(q)下从q时刻至q+1时刻位置变化,δbg(q)为q时刻陀螺仪误差变化量,δba(q)为q时刻加速度计误差变化量,ΣR为惯性误差协方差矩阵,ploop为回环位置矢量,π(·)为视觉投影。当其中一帧为匹配失败帧时,则其中Εproj(m,m+1)=0,完成出现匹配失败时的回环优化。
步骤5:构建图像匹配质量判定模型,对图像匹配的质量进行判断;图像匹配质量不满足条件时,进行纯惯性误差位姿优化求解;图像匹配质量满足条件时,联合惯性、图像误差进行位姿优化求解载体位姿;
其中,图像匹配质量判断模型具体如下:
所述图像匹配质量判断模型具有两种判断条件:
条件1:当前图像与地图拥有α个以上的匹配点,即:
Εjudge<δ
需同时满足条件1与条件2的情况下即满足图像匹配质量判断模型,其余情况均为不满足。
当图像匹配质量不满足条件时,进行纯惯性误差位姿优化求解;图像匹配质量满足条件时,联合惯性、图像误差进行位姿优化求解载体位姿;
其中,联合惯性、图像误差进行位姿优化求解载体位姿具体执行方法如下:
将惯性误差融合进优化方程中,进行位姿的优化求解,优化目标为 为i时刻从机体系到导航系的转换矩阵,为i时刻在导航系中的位置,为i时刻在导航系中的速度,为i时刻陀螺仪误差,为i时刻加速度计误差,优化方程如下:
||rp-Hpχ||2为对地图特征点进行边缘化处理的线性雅各比矩阵,用以降低运算复杂度。
使用图优化方法不断进行牛顿-列温伯格迭代变换矩阵使得优化目标最小,以达到最小值或者迭代30次为止,输出优化目标 为优化后的姿态,为优化后的位置,为优化后的速度,为优化后的陀螺仪误差,为优化后的加速度计误差,将旋转矩阵转换为四元数,输出导航信息。
其中,纯惯性误差进行位姿优化求解载体位姿具体执行方法如下:
步骤6:输出载体导航信息,更新地图,并跳转至步骤1;
先判断是否为第一帧,如果为第一帧,则直接将视觉传感器数据S(i)中的每个特征点以及优化得出的导航坐标系的坐标全部载入地图中;
如果非初第一帧,将视觉传感器数据S(i)中的每个特征点以及求出的导航坐标系的坐标载入地图中,并处理与视觉传感器数据S(i-1)匹配成功的点对形成的冗余数据,存在匹配点对的导航坐标系坐标为所有包含该特征点的图像数据中包含的导航坐标系坐标值的平均。
图2所示的轨迹中,其中散点线参考轨迹,实线图为本专利轨迹,虚线图为ORB-SLAM2算法轨迹,粗体虚线为松组合轨迹图,虚线点图为紧组合轨迹图。可以看出,本发明提出的方法与参考轨迹基本重合,误差最终在0.6%,可以在出现错误的时候利用惯性预积分递推优化继续完成导航,目前最主流的松紧组合方法均以发散,相比目前最主流的松紧组合方法,本发明具有明显的优势。
以上所述的具体实施例,对本发明的目的、技术方案和有益效果进行了进一步详细说明,应理解的是,以上所述仅为本发明的具体实施例而已,并不用于限制本发明,在不脱离本发明的精神和原则的前提下,本领域普通技术人员对本发明所做的任何修改、等同替换、改进等,均应落入本发明权利要求书确定的保护范围之内。
Claims (4)
1.一种鲁棒立体视觉惯性预积分SLAM方法,其特征在于:包括如下步骤:
i时刻得到惯性传感器加计输出与陀螺仪输出其中包含从i-1时刻到i时刻的惯性传感器加计测量数据和陀螺仪量测数据k∈(t(i-1),(t(i)-t(i-1))/Δt),k为i-1至i时刻的离散采样时刻序列,t(i-1)为以离散周期计数的起点,t(i)为以离散周期计数的终点,Δt为离散周期;测量模型为:
ba(k)为k时刻的加速度计量测偏差,bg(k)为k时刻的陀螺仪量测偏差,ηa(k)为k时刻加速度计的随机噪声,ηg(k)为k时刻陀螺仪的随机噪声,gn为导航系下的重力,为k时刻导航坐标系到机体坐标系的旋转矩阵,fn(k)为k时刻的加速度计量测在导航系中的真实值,为k时刻的加速度计量测的真实值;对ba(k)与bg(k)有:
bg(k)=ηbg
ηba为加速度计白噪声,ηbg为陀螺仪白噪声;
预积分的过程为:
ΔRi-1,i为从i时刻到i-1时刻的旋转矩阵,Δvi-1,i为i-1时刻到i时刻的速度变化量,Δpi-1,i为从i-1时刻到i时刻的位置变化量,Ri为i时刻从机体系至导航系的旋转矩阵,为i-1时刻从导航系至机体系的旋转矩阵,vi为i时刻在导航系中的速度,vi-1为i-1时刻在导航系中的速度,Δti-1,i为从i-1时刻到i时刻的时间周期,ΔRi-1,k为从i-1时刻到k时刻的旋转矩阵,pi为i时刻在导航系中的位置,pi-1为i-1时刻在导航系中的位置,整体预积分的过程将与i时刻的全局位姿无关;
步骤3:判断是否初始化,如果尚未初始化则进行初始化,得到惯性传感器的误差ba(i)和bg(i)与重力分量gb(i)估计,并跳转至步骤1;如果已经初始化,则进入下一步骤;
步骤4:以i时刻的预积分预测值作为图像匹配的位姿起点,匹配视觉传感器数据S(i),并进行回环检测,如果存在回环,则进行联合回环、惯性、图像误差的位姿优化求解,并跳转至步骤6;如果不存在回环则进入下一步骤;
其中,步骤4中预积分预测值辅助图像匹配的方法为:
为利用i时刻载体预积分预测的导航信息预测i时刻的视觉传感器数据S(i)中每个特征点在导航坐标系中的坐标,为特征点在导航系下X值,为特征点在导航系下Y值,为特征点在导航系下Z值,为特征点在相机系下X值,为特征点在相机系下Y值,为特征点在相机系下Z值,为像素点在机体系下x值,为像素点在机体系下y值,为像素点在机体系下z值,为i-1时刻从机体系到导航系的旋转矩阵,为相机系转换至机体系的旋转矩阵,为i-1时刻到i时刻的转换矩阵,其中m代表视觉传感器数据S(i)中第m个特征点;
其中,j=1,2,L,numi
步骤5:构建图像匹配质量判断模型,对图像匹配的质量进行判断;图像匹配质量不满足条件时,进行纯惯性误差位姿优化求解;图像匹配质量满足条件时,联合惯性、图像误差进行位姿优化求解载体位姿;
步骤6:输出载体导航信息,更新地图,并跳转至步骤1。
2.根据权利要求1所述的一种鲁棒立体视觉惯性预积分SLAM方法,其特征在于:步骤4中位姿优化求解的方法具体为:
eb=b(q+1)-b(q)
ΣI为信息矩阵,用于描述惯性误差之间的关系,回环误差表示为eR为惯性在姿态中的误差,ev为惯性在速度中的误差,ep为惯性在位置中的误差,eb为惯性在误差转移上的变化,nloop为成功与回环匹配特征点的数量,为陀螺仪误差为bg(q)下从q+1时刻至q时刻旋转矩阵,为q+1时刻导航系下速度,为q时刻导航系下速度,Δvq,q+1(bg(q),ba(q))是陀螺仪误差为bg(q),加速度计误差为ba(q)的情况下,从q时刻至q+1时刻的速度变化量,为q时刻导航系下位置,为q+1时刻导航系下位置,Δpq,q+1(bg(q),ba(q))是陀螺仪误差为bg(q),加速度计误差为ba(q)的情况下,从q时刻至q+1时刻位置变化量,δbg(q)为q时刻陀螺仪误差变化量,δba(q)为q时刻加速度计误差变化量,ΣR为惯性误差协方差矩阵,ploop为回环位置矢量,π(·)为视觉投影;当其中一帧为匹配失败帧时,则其中Eproj(m,m+1)=0,完成出现匹配失败时的回环优化;
3.根据权利要求2所述的一种鲁棒立体视觉惯性预积分SLAM方法,其特征在于:步骤5中所述图像匹配质量判断模型具有两种判断条件:
条件1:当前图像与地图拥有α个以上的匹配点,即:
Ejudge<θ
需同时满足条件1与条件2的情况下即满足图像匹配质量判断模型,其余情况均为不满足;
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910423422.2A CN110207693B (zh) | 2019-05-21 | 2019-05-21 | 一种鲁棒立体视觉惯性预积分slam方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910423422.2A CN110207693B (zh) | 2019-05-21 | 2019-05-21 | 一种鲁棒立体视觉惯性预积分slam方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110207693A CN110207693A (zh) | 2019-09-06 |
CN110207693B true CN110207693B (zh) | 2021-05-11 |
Family
ID=67787987
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910423422.2A Active CN110207693B (zh) | 2019-05-21 | 2019-05-21 | 一种鲁棒立体视觉惯性预积分slam方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110207693B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110986968B (zh) * | 2019-10-12 | 2022-05-24 | 清华大学 | 三维重建中实时全局优化和错误回环判断的方法及装置 |
CN111156997B (zh) * | 2020-03-02 | 2021-11-30 | 南京航空航天大学 | 一种基于相机内参在线标定的视觉/惯性组合导航方法 |
CN112240768A (zh) * | 2020-09-10 | 2021-01-19 | 西安电子科技大学 | 基于Runge-Kutta4改进预积分的视觉惯导融合SLAM方法 |
CN112129287B (zh) * | 2020-09-24 | 2022-06-10 | 北京华捷艾米科技有限公司 | 一种基于视觉惯性里程计处理的方法和相关装置 |
CN113516714B (zh) * | 2021-07-15 | 2024-08-13 | 北京理工大学 | 基于imu预积分信息加速特征匹配的视觉slam方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108827287A (zh) * | 2018-04-10 | 2018-11-16 | 南京航空航天大学 | 一种复杂环境下的鲁棒视觉slam系统 |
CN109307508A (zh) * | 2018-08-29 | 2019-02-05 | 中国科学院合肥物质科学研究院 | 一种基于多关键帧的全景惯导slam方法 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9766074B2 (en) * | 2008-03-28 | 2017-09-19 | Regents Of The University Of Minnesota | Vision-aided inertial navigation |
US9658070B2 (en) * | 2014-07-11 | 2017-05-23 | Regents Of The University Of Minnesota | Inverse sliding-window filters for vision-aided inertial navigation systems |
CN105783913A (zh) * | 2016-03-08 | 2016-07-20 | 中山大学 | 一种融合车载多传感器的slam装置及其控制方法 |
CN107869989B (zh) * | 2017-11-06 | 2020-02-07 | 东北大学 | 一种基于视觉惯导信息融合的定位方法及系统 |
CN109520497B (zh) * | 2018-10-19 | 2022-09-30 | 天津大学 | 基于视觉和imu的无人机自主定位方法 |
-
2019
- 2019-05-21 CN CN201910423422.2A patent/CN110207693B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108827287A (zh) * | 2018-04-10 | 2018-11-16 | 南京航空航天大学 | 一种复杂环境下的鲁棒视觉slam系统 |
CN109307508A (zh) * | 2018-08-29 | 2019-02-05 | 中国科学院合肥物质科学研究院 | 一种基于多关键帧的全景惯导slam方法 |
Also Published As
Publication number | Publication date |
---|---|
CN110207693A (zh) | 2019-09-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110207693B (zh) | 一种鲁棒立体视觉惯性预积分slam方法 | |
CN109991636B (zh) | 基于gps、imu以及双目视觉的地图构建方法及系统 | |
CN111024066B (zh) | 一种无人机视觉-惯性融合室内定位方法 | |
Qin et al. | Robust initialization of monocular visual-inertial estimation on aerial robots | |
CN109520497B (zh) | 基于视觉和imu的无人机自主定位方法 | |
Heng et al. | Self-calibration and visual slam with a multi-camera system on a micro aerial vehicle | |
CN110084832B (zh) | 相机位姿的纠正方法、装置、系统、设备和存储介质 | |
Liu et al. | Stereo visual-inertial odometry with multiple Kalman filters ensemble | |
CN110702107A (zh) | 一种单目视觉惯性组合的定位导航方法 | |
CN110595466B (zh) | 轻量级的基于深度学习的惯性辅助视觉里程计实现方法 | |
CN107909614B (zh) | 一种gps失效环境下巡检机器人定位方法 | |
CN114623817B (zh) | 基于关键帧滑窗滤波的含自标定的视觉惯性里程计方法 | |
CN110726406A (zh) | 一种改进的非线性优化单目惯导slam的方法 | |
Zhang et al. | Vision-aided localization for ground robots | |
CN113551665B (zh) | 一种用于运动载体的高动态运动状态感知系统及感知方法 | |
CN106767767A (zh) | 一种微纳多模星敏感器系统及其数据融合方法 | |
CN115371665B (zh) | 一种基于深度相机和惯性融合的移动机器人定位方法 | |
CN111623773B (zh) | 一种基于鱼眼视觉和惯性测量的目标定位方法及装置 | |
CN113516692A (zh) | 一种多传感器融合的slam方法和装置 | |
CN114485640A (zh) | 基于点线特征的单目视觉惯性同步定位与建图方法及系统 | |
Hong et al. | Visual inertial odometry using coupled nonlinear optimization | |
CN108827287B (zh) | 一种复杂环境下的鲁棒视觉slam系统 | |
CN114690229A (zh) | 一种融合gps的移动机器人视觉惯性导航方法 | |
Ling et al. | RGB-D inertial odometry for indoor robot via keyframe-based nonlinear optimization | |
CN111539982B (zh) | 一种移动平台中基于非线性优化的视觉惯导初始化方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |