CN112446882A - 一种动态场景下基于深度学习的鲁棒视觉slam方法 - Google Patents

一种动态场景下基于深度学习的鲁棒视觉slam方法 Download PDF

Info

Publication number
CN112446882A
CN112446882A CN202011169500.XA CN202011169500A CN112446882A CN 112446882 A CN112446882 A CN 112446882A CN 202011169500 A CN202011169500 A CN 202011169500A CN 112446882 A CN112446882 A CN 112446882A
Authority
CN
China
Prior art keywords
dynamic
deep learning
image
mask
feature
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.)
Pending
Application number
CN202011169500.XA
Other languages
English (en)
Inventor
阮晓钢
郭佩远
黄静
于乃功
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing University of Technology
Original Assignee
Beijing University of Technology
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing University of Technology filed Critical Beijing University of Technology
Priority to CN202011169500.XA priority Critical patent/CN112446882A/zh
Publication of CN112446882A publication Critical patent/CN112446882A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/246Analysis of motion using feature-based methods, e.g. the tracking of corners or segments
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10016Video; Image sequence
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20081Training; Learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20084Artificial neural networks [ANN]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Image Analysis (AREA)

Abstract

本发明公开了一种动态场景下基于深度学习的鲁棒视觉SLAM方法,属于人工智能与机器人和计算机视觉领域。本发明采用相机作为图像采集装置。首先对相机采集的图像序列利用基于深度学习的Mask R‑CNN语义分割网络将图像中的对象划分成静态对象和动态对象,动态对象的像素级语义分割作为语义先验知识并剔除动态对象上的特征点;利用对极几何特性的几何约束进一步检查特征是否是动态特征;结合局部建图和回环检测模块构成完整的鲁棒视觉SLAM系统。本发明可以很好的减小SLAM系统的绝对轨迹误差和相对位姿误差,提高SLAM系统位姿估计的准确性和鲁棒性。

Description

一种动态场景下基于深度学习的鲁棒视觉SLAM方法
技术领域
本发明属于人工智能与机器人和计算机视觉领域,特别涉及基于动态场景下基于深度学习的鲁棒视觉SLAM方法。
背景技术
近年来,同时定位与地图构建(simultaneous localization and mapping,SLAM)已成为人工智能与机器人和计算机视觉的一个重要研究领域,动态场景下的定位与建图是其中一个热门的研究方向,广泛应用于室内服务机器人、室外自动驾驶汽车等方面。
目前大多数视觉SLAM方法基于观测环境是静态的假设,由于现实环境中包含动态对象,传统的SLAM方法很容易由于跟踪特征的错误对应或者遮挡而导致没有足够多的特征匹配从而位姿估计会发生漂移甚至丢失,从而导致系统在动态环境下精度低、鲁棒性差。
一些现有检测动态特征的方法依赖几何信息,通过定义几何约束,如果后续帧中的匹配特征距离极线很远,则被认为是动态的,或者将前一帧的特征投影到当前帧,计算特征跟踪的重投影误差,如果误差很大,则被认为是动态的,这些方法仅仅依赖几何信息从而无法建立动态对象的先验语义信息,不能提供对周围环境中动态对象的高级理解,从而导致系统在动态环境中的精度不佳;还有一些方法依赖语义信息,根据人的经验和尝试,将可以自己移动的对象视为动态物体,通过目标检测或者语义分割获取动态对象的语义信息,并剔除动态对象上的特征点,这些方法不能有效去除潜在动态对象上的不稳定特征点。
动态特征检测是构建鲁棒视觉SLAM的关键步骤,只有动态特征被很好的检测出来才能对其进行剔除,并利用稳定的静态特征点进行位姿估计。由于动态场景复杂,以及跟踪特征的错误对应或者遮挡等因素的影响,使得动态场景下检测动态特征从而构建鲁棒的视觉SLAM成为一项极具挑战性的课题。可以通过一种先进的深度学习方法来检测动态对象,使用语义分割网络对动态对象进行分割,获得动态对象的像素级语义分割作为语义先验知识,并通过运动一致性检测算法进一步检测潜在动态的移动对象,利用语义信息和几何信息结合的方法会将动态特征更好的检测出来。
发明内容
本发明的目的在于克服现有技术的上述不足,采用一种动态场景下基于深度学习的鲁棒视觉SLAM方法。该方法将语义分割技术与运动一致性检测算法相结合,首先用MaskR-CNN网络对图像进行语义分割,建立动态对象的先验语义信息,然后通过运动一致性检测算法进一步剔除属于动态物体的特征点,最后用静态特征点进行特征匹配和位姿估计。本发明可以减小SLAM系统的绝对轨迹误差和相对位姿误差,提高了SLAM系统位姿估计的准确性和鲁棒性。
本发明采用的技术方案为一种动态场景下基于深度学习的鲁棒视觉SLAM方法,该方法包括如下步骤:
(1)对相机采集的图像序列利用基于深度学习的语义分割网络将图像中的对象划分成静态对象和动态对象,动态对象的像素级语义分割作为语义先验知识;
1.1)搭建Mask R-CNN分割网络,采用Mask R-CNN网络进行潜在动态对象的语义分割。为了对动态对象进行分割并覆盖掩膜,首先设置Mask R-CNN网络模型及其损失函数,Mask R-CNN将完成掩码预测、回归预测和分类预测三个任务,损失函数使用的是平均二值交叉熵损失与二分类交叉熵损失。Mask R-CNN网络训练的总体损失函数为分类误差、回归误差和分割误差三者之和:
L=Lcls+Lbox+Lmask
其中L为网络训练的总体损失函数;Lmask为掩码预测的损失函数;Lcls为分类预测的损失函数;Lbox为回归预测的损失函数。
1.2)利用MS COCO数据集作为训练样本对MaskR-CNN网络进行训练。MS COCO数据集包含80多种不同的物体类别。所需的类别分为两种:一种是动态置信度高的移动对象,例如人、汽车、猫、狗等;另一种是静态置信度高的对象或潜在动态的移动对象,如椅子、书、杯子等。
1.3)Mask R-CNN网络的输入为m×n×3的RGB图像,输出为m×n×l的矩阵,其中l为图像中物体的数量。对于每个输出通道i∈l,将获得一个二进制掩码,矩阵中只有1和0两个数字,数字1对应于静态场景,数字0对应于动态对象。通过将所有的输出通道合并成一个通道,可以获得出现在一个场景图像中的所有动态对象的分割。
(2)由于语义分割在对象边界附近的分割结果模糊仍不可避免并且不能有效去除潜在动态对象上的不稳定特征点,因此需要利用对极几何特性的几何约束进一步检查特征是否是动态特征,具体步骤如下:
2.1)对输入的图像序列进行ORB特征点提取;
2.2)采用光流法获取像素在图像中的运动,从而实现像素点的追踪;具体步骤如下:
2.2.1)假设相机获取的图像是由着时间进行变化的,图像中的像素点(x,y)的灰度值为I(x,y,t),由于同个空间点的灰度值随着时间的变化在平面上始终保持一致,则满足:I(x,y,t)=I(x+dx,y+dy,t+dt)
假设运动比较小(即时间的变化不会引起目标位置的剧烈变化,相邻帧之间的位移达到毫米级)的情况下,则展开得到:
Figure BDA0002746851110000031
结合两式得:
Figure BDA0002746851110000032
Figure BDA0002746851110000033
为该点沿x轴的运动速度,
Figure BDA0002746851110000034
为该点沿y轴的运动速度,光流算法假定图像块内的像素运动是一样。最后通过进行多次迭代,就能够获取像素在图像中的运动,从而实现像素点的追踪。
2.2.2)根据前一帧特征点集合P1,利用光流法计算当前帧中匹配的特征点集合P2,如果匹配对太靠近图像的边缘,或者匹配对中心的3×3图像块的像素差太大,则匹配对将被丢弃。
2.3)使用经典的八点法估计基础矩阵F;
2.4)假设p1和p2为一对匹配的特征点对,齐次坐标如下所示:
P1=[u1,v1,1],P2=[u2,v2,1]
其中u,v是对应的像素横、纵坐标,使用基础矩阵F和特征点计算当前帧中特征点对应的极线:
Figure BDA0002746851110000035
2.5)计算p2到p1对应极线的距离与预定阈值的关系来判断特征点是否移动,点p2到极线l1之间的距离D通过下式计算:
Figure BDA0002746851110000036
如果距离大于预定阈值,则将p2加入到动态特征点集合S,否则,将其视为相对稳定的静态特征点,用于后续位姿估计。
(3)在之前的跟踪线程中,得到新的关键帧。通过插入关键帧、删除冗余地图点和关键帧、局部集束调整进行局部建图;具体步骤如下:
3.1)将新的关键帧作为新的节点加入图中,并且更新与那些能够共享地图点的关键帧节点相连接的边。同时更新关键帧的生长树,并计算表示关键帧词袋BOW;
3.2)为保存地图点,必须在创建该点云的前三帧测试通过约束,少于三个关键帧能观察到该点时将当前地图点删除;
3.3)对于未匹配的点,与其他关键帧中未被匹配的特征点进行匹配,ORB特征点对三角化后,检查正向景深、视差、反投影误差和尺度一致性,创建新的地图点;
3.4)局部集束调整对当前处理的关键帧进行优化;
3.5)为控制重建的紧凑度,通过局部建图检测冗余的关键帧,将90%的点能够被超过三个关键帧观察到的关键帧认为是冗余关键帧,将其删除。
(4)由于视觉里程计在跟踪的过程中会有累计误差,通过闭环来检测是否曾经来过此处,进行后端优化,消除这段时间相机运动产生的累计误差;具体步骤如下:
4.1)检测对列中是否有新的关键帧,如果地图中的关键帧数小于10,那么不进行闭环检测;
4.2)检测闭环:
4.2.1)获取共视关键帧,并计算他们和当前关键帧之间的BoW分数,求得最低分;
4.2.2)通过计算出的最低分数到数据库中查找出候选关键帧,相当于找到了曾经到过此处的关键帧;
4.2.3)对候选关键帧集进行连续性检测。
4.3)上一步已经检测到了闭环,需要进行后端优化。主要工作是在当前关键帧和闭环帧之间找到更多的对应点,并通过这些对应点计算当前关键帧和闭环帧之间的Sim3变换,求解出Rt和s;
4.4)计算闭环、融合位图。最终实现对所有匹配的点云进行更加有效的数据融合。
本发明采用相机作为图像采集装置,双目、深度相机均可。
与现有的基于静态环境假设的SLAM技术相比较,本发明通过结合基于深度学习的Mask R-CNN语义分割网络与运动一致性检测算法,可以减小SLAM系统的绝对轨迹误差和相对位姿误差,提高了SLAM系统位姿估计的准确性和鲁棒性。
附图说明
图1为本发明方法的流程图。
图2为运动一致性检测算法流程图。
具体实施方式
图1为本发明方法的流程图,参照图1,本发明提供一种动态场景下基于深度学习的鲁棒视觉SLAM方法。四个线程在系统中并行运行:跟踪、语义分割、局部地图、闭环检测.当原始RGB图像抵达后,同时传入语义分割线程和跟踪线程,两者并行地对图像进行处理。语义分割线程采用Mask R-CNN网络将物体分为动态对象和静态对象,把动态对象的像素级语义标签提供给跟踪线程,并通过几何约束的运动一致性检测算法进一步检测潜在动态特征点异常值,然后剔除动态对象中的ORB特征点并利用相对稳定的静态特征点进行位姿估计。并通过插入关键帧、删除冗余地图点和关键帧、局部集束调整进行局部建图,以及通过闭环来检测是否曾经来过此处,进行后端优化,将累计误差缩小到一个可接受的范围内。
图2为运动一致性检测算法流程图,参照图2,以检测潜在动态的移动对象的动态特征,首先根据前一帧特征点集合P1,利用光流法计算当前帧中匹配的特征点集合P2。如果匹配对太靠近图像的边缘,或者匹配对中心的3×3图像块的像素差太大,则匹配对将被丢弃.然后可以用至少五对特征估计基础矩阵F,通常使用经典的八点法,再使用基础矩阵F计算当前帧中的极线.最后,通过计算p2到p1对应极线的距离与预定阈值的关系来判断特征点是否移动。
在机器人感知的环境中包含动态对象的情况下,则需要经过权利要求书中的步骤2从相邻帧中利用运动一致性检测算法检测动态特征。
以上所述仅为本发明的实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所作的任何修改,等同替换以及改进等,均应包含在本发明的保护范围之内。

Claims (4)

1.一种动态场景下基于深度学习的鲁棒视觉SLAM方法,其特征在于:该方法基于视觉传感器相机实现,具体包括以下步骤:
S1对相机采集的图像序列利用基于深度学习的语义分割网络将图像中的对象划分成静态对象和动态对象,动态对象的像素级语义分割作为语义先验知识;
S1.1搭建Mask R-CNN分割网络,采用Mask R-CNN网络进行潜在动态对象的语义分割;
S1.2利用MS COCO数据集作为训练样本对Mask R-CNN网络进行训练;
S1.3 Mask R-CNN网络的输入为m×n×3的RGB图像,输出为m×n×l的矩阵,通过将所有的输出通道合并成一个通道,可以获得出现在一个场景图像中的所有动态对象的分割;
S2利用运动一致性检测算法检查特征是否是动态特征;
S2.1对输入的图像序列进行ORB特征点提取;
S2.2采用光流法获取像素在图像中的运动,从而实现像素点的追踪;
S2.3使用经典的八点法估计基础矩阵F;
S2.4使用基础矩阵F和特征点计算当前帧中特征点对应的极线;
S2.5计算p2到p1对应极线的距离与预定阈值的关系来判断特征点是否移动;
S3通过插入关键帧、删除冗余地图点和关键帧、局部集束调整进行局部建图;
S4通过闭环来检测是否曾经来过此处,进行后端优化,将累计误差缩小到一个范围内。
2.根据权利要求1所述的一种动态场景下基于深度学习的鲁棒视觉SLAM方法,其特征在于:对潜在动态对象进行像素级语义分割的网络为Mask R-CNN网络。
3.根据权利要求1所述的一种动态场景下基于深度学习的鲁棒视觉SLAM方法,其特征在于:采用运动一致性检测算法检测潜在动态对象的动态特征。
4.根据权利要求1所述的一种动态场景下基于深度学习的鲁棒视觉SLAM方法,其特征在于:鲁棒视觉SLAM系统利用步骤1至4对需要的有动态对象的场景进行应用。
CN202011169500.XA 2020-10-28 2020-10-28 一种动态场景下基于深度学习的鲁棒视觉slam方法 Pending CN112446882A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011169500.XA CN112446882A (zh) 2020-10-28 2020-10-28 一种动态场景下基于深度学习的鲁棒视觉slam方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011169500.XA CN112446882A (zh) 2020-10-28 2020-10-28 一种动态场景下基于深度学习的鲁棒视觉slam方法

Publications (1)

Publication Number Publication Date
CN112446882A true CN112446882A (zh) 2021-03-05

Family

ID=74736115

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011169500.XA Pending CN112446882A (zh) 2020-10-28 2020-10-28 一种动态场景下基于深度学习的鲁棒视觉slam方法

Country Status (1)

Country Link
CN (1) CN112446882A (zh)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113223045A (zh) * 2021-05-19 2021-08-06 北京数研科技发展有限公司 基于动态物体语义分割的视觉与imu传感器融合定位系统
CN113920194A (zh) * 2021-10-08 2022-01-11 电子科技大学 基于视觉惯性融合的四旋翼飞行器定位方法
CN114202579A (zh) * 2021-11-01 2022-03-18 东北大学 一种面向动态场景的实时多体slam系统
CN114216465A (zh) * 2021-12-08 2022-03-22 哈尔滨工程大学 一种海底地形导航并行匹配方法
CN114677323A (zh) * 2021-12-31 2022-06-28 北京工业大学 一种室内动态场景下基于目标检测的语义视觉slam定位方法
CN115115672A (zh) * 2022-08-29 2022-09-27 东南大学 基于目标检测和特征点速度约束的动态视觉slam方法
CN116468786A (zh) * 2022-12-16 2023-07-21 中国海洋大学 一种面向动态环境的基于点线联合的语义slam方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111462135A (zh) * 2020-03-31 2020-07-28 华东理工大学 基于视觉slam与二维语义分割的语义建图方法
US20200273190A1 (en) * 2018-03-14 2020-08-27 Dalian University Of Technology Method for 3d scene dense reconstruction based on monocular visual slam
CN111814683A (zh) * 2020-07-09 2020-10-23 北京航空航天大学 一种基于语义先验和深度学习特征的鲁棒视觉slam方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20200273190A1 (en) * 2018-03-14 2020-08-27 Dalian University Of Technology Method for 3d scene dense reconstruction based on monocular visual slam
CN111462135A (zh) * 2020-03-31 2020-07-28 华东理工大学 基于视觉slam与二维语义分割的语义建图方法
CN111814683A (zh) * 2020-07-09 2020-10-23 北京航空航天大学 一种基于语义先验和深度学习特征的鲁棒视觉slam方法

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113223045A (zh) * 2021-05-19 2021-08-06 北京数研科技发展有限公司 基于动态物体语义分割的视觉与imu传感器融合定位系统
CN113223045B (zh) * 2021-05-19 2024-06-11 北京数研科技发展有限公司 基于动态物体语义分割的视觉与imu传感器融合定位系统
CN113920194A (zh) * 2021-10-08 2022-01-11 电子科技大学 基于视觉惯性融合的四旋翼飞行器定位方法
CN113920194B (zh) * 2021-10-08 2023-04-21 电子科技大学 基于视觉惯性融合的四旋翼飞行器定位方法
CN114202579A (zh) * 2021-11-01 2022-03-18 东北大学 一种面向动态场景的实时多体slam系统
CN114216465A (zh) * 2021-12-08 2022-03-22 哈尔滨工程大学 一种海底地形导航并行匹配方法
CN114216465B (zh) * 2021-12-08 2022-11-01 哈尔滨工程大学 一种海底地形导航并行匹配方法
CN114677323A (zh) * 2021-12-31 2022-06-28 北京工业大学 一种室内动态场景下基于目标检测的语义视觉slam定位方法
CN115115672A (zh) * 2022-08-29 2022-09-27 东南大学 基于目标检测和特征点速度约束的动态视觉slam方法
CN115115672B (zh) * 2022-08-29 2023-07-18 东南大学 基于目标检测和特征点速度约束的动态视觉slam方法
CN116468786A (zh) * 2022-12-16 2023-07-21 中国海洋大学 一种面向动态环境的基于点线联合的语义slam方法
CN116468786B (zh) * 2022-12-16 2023-12-26 中国海洋大学 一种面向动态环境的基于点线联合的语义slam方法

Similar Documents

Publication Publication Date Title
CN112132893B (zh) 一种适用于室内动态环境的视觉slam方法
CN111563442B (zh) 基于激光雷达的点云和相机图像数据融合的slam方法及系统
CN112446882A (zh) 一种动态场景下基于深度学习的鲁棒视觉slam方法
CN111724439B (zh) 一种动态场景下的视觉定位方法及装置
CN109800689B (zh) 一种基于时空特征融合学习的目标跟踪方法
CN108242079B (zh) 一种基于多特征视觉里程计和图优化模型的vslam方法
CN110060277A (zh) 一种多特征融合的视觉slam方法
CN111325843A (zh) 一种基于语义逆深度滤波的实时语义地图构建方法
CN112396595B (zh) 一种动态环境下基于点线特征的语义slam方法
CN114677323A (zh) 一种室内动态场景下基于目标检测的语义视觉slam定位方法
CN113516664A (zh) 一种基于语义分割动态点的视觉slam方法
Wen et al. Hybrid semi-dense 3D semantic-topological mapping from stereo visual-inertial odometry SLAM with loop closure detection
CN109974743A (zh) 一种基于gms特征匹配及滑动窗口位姿图优化的rgb-d视觉里程计
CN110570457A (zh) 一种基于流数据的三维物体检测与跟踪方法
CN113744315B (zh) 一种基于双目视觉的半直接视觉里程计
CN111998862A (zh) 一种基于bnn的稠密双目slam方法
Liu et al. Visual slam based on dynamic object removal
Min et al. Coeb-slam: A robust vslam in dynamic environments combined object detection, epipolar geometry constraint, and blur filtering
CN114187447A (zh) 一种基于实例分割的语义slam方法
CN112465858A (zh) 基于概率网格滤波的语义视觉slam方法
CN116862832A (zh) 一种基于三维实景模型的作业人员定位方法
CN112069997B (zh) 一种基于DenseHR-Net的无人机自主着陆目标提取方法及装置
CN114663835A (zh) 一种行人跟踪方法、系统、设备及存储介质
CN114022768A (zh) 一种基于语义先验和概率传播的视觉slam定位方法
CN113255514A (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