1.一种适用于动态环境的轻量化视觉SLAM方法,其特征在于,包括以下步骤:
S1、通过RGB‑D相机获取RGB图像与深度图像,并从RGB图像中提取特征点和深度图像中得到特征点的深度值;
S2、使用轻量化的语义分割网络对获取的RGB图像进行语义分割,根据场景中对应物体的语义标签,对物体中的特征点赋予语义运动概率Pprior;
S3、根据语义运动概率的阈值,剔除图像中的特征点,对于剩余特征点进行跟踪,通过最小化重投影误差得到初始相机位姿Tprior;
S4、使用基于聚类的几何方法来判断图像中所有特征点的几何运动概率;所述步骤S4具体为:找到若干个与当前帧匹配度最高的参考关键帧,即旋转矩阵和位移与当前帧的差异最小的关键帧,分别为:I1、I2、...、In;计算当前帧与参考关键帧之间的投影深度误差,从而检测不可靠的点;根据步骤S3中得到的初始相机位姿Tprior,将参考关键帧中深度值为z的特征点x投影到当前帧中,其对应的投影点和深度分别表示为x′和zproj;其中特征点x的深度值z从深度图像中提取得到;将x′在当前帧中的观测深度标记为z′;当z′和zproj之间的差值Δz大于阈值τz时,则将此点视为不可靠点,在参考关键帧中是动态的;其中,不可靠点及其投影点分别表示为 和 对提取的特征点做两次聚类操作,第一次聚类中,基于特征点的深度值,将所有特征点分为n1;使用C来表示所有簇的集合, 并计算出每个簇ci的中心深度值为 并计算出每个簇中不可靠点的个数 和单个簇中不可靠点最多的数量 及其比值,从而计算出这个簇中特征点的几何运动概率若 大于阈值τ1时,将ci区域认定为运动区域;
然后,在运动区域中进行第二次基于2D坐标的聚类算法,在2D聚类算法中,距离使用欧几里得距离度量方式进行计算,从而将运动区域再次分为n2个区域,并计算出每个簇中不可靠点的个数 和单个簇中不可靠点最多的数量 及其比值,从而计算出这个簇中特征点的几何运动概率S5、使用贝叶斯框架融合特征点的语义运动概率和几何运动概率,从而计算得到每个特征点的最终运动概率Pfinal;若语义运动概率为0,则将几何运动概率作为最终运动概率Pfinal;确定最终运动概率的阈值,根据最终运动概率的阈值再次剔除图像中的特征点,得到静态特征点;
S6、对RGB图像进行再次跟踪,在重投影误差计算中使用特征点的最终运动概率,从而得到优化相机位姿Topt;
S7、使用静态特征点,进行局部稀疏建图,得到一个稀疏三维点云地图;将静态特征点用于局部BA优化,并进行回环检测,从而得到最终相机位姿Tfinal和运动轨迹。
2.根据权利要求1所述的一种适用于动态环境的轻量化视觉SLAM方法,其特征在于,所述步骤S1中采用ORB方法提取RGB图像中的特征点,并与前一关键帧中的特征点进行匹配,从而估计相机的运动轨迹。
3.根据权利要求1所述的一种适用于动态环境的轻量化视觉SLAM方法,其特征在于,所述步骤S2中,对位于掩膜边缘的特征点,通过图像形态学处理,具体为:先对掩膜图像进行腐蚀操作,再进行膨胀,从而得到语义分割结果;并根据掩膜的语义类型,对属于检测到的物体的特征点赋予语义运动概率Pprior。
4.根据权利要求1所述的一种适用于动态环境的轻量化视觉SLAM方法,其特征在于,所述步骤S3中,所述语义运动概率的阈值范围为0.5~0.6;
若特征点的语义运动概率大于等于该阈值时,则该特征点是运动的,剔除该特征点;若特征点的语义运动概率小于该阈值时,则该特征点是静止的,保留该特征点。
5.根据权利要求1所述的一种适用于动态环境的轻量化视觉SLAM方法,其特征在于,所述步骤S5中,使用贝叶斯框架融合特征点的语义运动概率和几何运动概率,从而计算得到每个特征点的最终运动概率Pfinal,具体为:其中,α为尺度因子。
6.根据权利要求1所述的一种适用于动态环境的轻量化视觉SLAM方法,其特征在于,所述步骤S5中,确定最终运动概率的阈值,具体为:样本特征点的运动概率服从正态分布,通过计算置信区间的上界来确定运动点的概率阈值τ,其计算公式如下:其中, 是样本特征点的最终运动概率的均值,z表示在95%置信水平下正态分布的临界值,ntotal是特征点的数量,σ为所有特征点的方差;
若特征点的最终运动概率大于等于τ,则该特征点被认为是运动的;反之,则该特征点被认为是静止的。
7.根据权利要求1所述的一种适用于动态环境的轻量化视觉SLAM方法,其特征在于,所述步骤S6具体为:使用光束法平差优化方法来通过最小化特征点xi和3D地图点Xi之间的重投影误差来优化相机的旋转矩阵R和位移t:其中,ρ是鲁棒的Huber函数,ns是静态特征点的数量,π(·)代表从3D坐标到2D坐标的相机投影函数,在协方差矩阵Σ与特征点的运动概率和尺度因子相关联。
8.根据权利要求1所述的一种适用于动态环境的轻量化视觉SLAM方法,其特征在于,所述步骤S7具体为:用ORB‑SLAM2的局部建图线程,通过对新关键帧与旧关键帧之间的匹配进行三角测量来生成地图点,同时优化局部地图并计算相对位姿,能够得到一个稀疏三维点云地图;使用ORB‑SLAM2中的回环检测和全局BA优化线程,从而得到最终相机位姿Tfinal和运动轨迹。