CN112734845B - 一种融合场景语义的室外单目同步建图与定位方法 - Google Patents
一种融合场景语义的室外单目同步建图与定位方法 Download PDFInfo
- Publication number
- CN112734845B CN112734845B CN202110023602.9A CN202110023602A CN112734845B CN 112734845 B CN112734845 B CN 112734845B CN 202110023602 A CN202110023602 A CN 202110023602A CN 112734845 B CN112734845 B CN 112734845B
- Authority
- CN
- China
- Prior art keywords
- semantic
- points
- map
- feature points
- monocular
- 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
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/70—Determining position or orientation of objects or cameras
- G06T7/73—Determining position or orientation of objects or cameras using feature-based methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/29—Geographical information databases
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/22—Matching criteria, e.g. proximity measures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/25—Fusion techniques
- G06F18/253—Fusion techniques of extracted features
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/80—Analysis of captured images to determine intrinsic or extrinsic camera parameters, i.e. camera calibration
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/20—Image preprocessing
- G06V10/26—Segmentation of patterns in the image field; Cutting or merging of image elements to establish the pattern region, e.g. clustering-based techniques; Detection of occlusion
- G06V10/267—Segmentation of patterns in the image field; Cutting or merging of image elements to establish the pattern region, e.g. clustering-based techniques; Detection of occlusion by performing operations on regions, e.g. growing, shrinking or watersheds
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/40—Extraction of image or video features
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20081—Training; Learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20084—Artificial neural networks [ANN]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30244—Camera pose
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02T—CLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO TRANSPORTATION
- Y02T10/00—Road transport of goods or passengers
- Y02T10/10—Internal combustion engine [ICE] based vehicles
- Y02T10/40—Engine management systems
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Computer Vision & Pattern Recognition (AREA)
- General Engineering & Computer Science (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Evolutionary Computation (AREA)
- Evolutionary Biology (AREA)
- Bioinformatics & Computational Biology (AREA)
- Artificial Intelligence (AREA)
- Life Sciences & Earth Sciences (AREA)
- Multimedia (AREA)
- Databases & Information Systems (AREA)
- Remote Sensing (AREA)
- Image Analysis (AREA)
Abstract
本发明公开了一种融合场景语义的室外单目同步建图与定位方法。获取训练数据集,构建训练实时语义分割网络,接收单目相机图像输出语义分割结果图,获得语义类别标签;实时通过SLAM前端模块的视觉里程计接收单目相机图像,获取特征点和描述子,组建语义特征点;利用语义特征点建立语义地图,匹配更新语义地图点的语义类别标签统计信息;在SLAM后端模块接收不同时刻视觉里程计测量的单目相机位姿,利用位姿构建最小二乘优化重投影误差时,加入语义权重优化。本发明将场景语义融入到SLAM系统中,根据语义分割结果进行动态物体滤除,根据语义类别标签为特征点分配不同的优化权重,有效提升了整个SLAM系统的定位精度,计算代价小,实时性强。
Description
技术领域
本发明涉及一种移动机器人或智能车辆的建图和定位方法,特别是涉及了一种融合了场景语义信息的移动机器人或智能车辆的建图和定位(SLAM)方法。
背景技术
SLAM,全称为Simultaneous localization and mapping,译为同步建图与定位,希望机器人从未知环境的未知地点出发,在运动过程中通过重复观测到的地图特征,定位自身位置和姿态,再根据自身位置增量式的构建地图,从而达到同时定位和地图构建的目的。单目SLAM算法拥有较长的研究历史,其因为设备要求简单而得到较为广泛的使用。
传统框架如ORB-SLAM在很多场景中展现出了较好的性能。但是,因为ORB依旧基于图像的灰度特征来提取特征点,因此对于光照的变化而产生的图像灰度变化还是比较敏感,同时,在传统SLAM框架中并没有考虑特征点的重要性与所在物体的语义类别的相关性。表现在:提取到的特征点在动态物体,比如人和车上时,SLAM计算的相机位姿就很容易受到影响;特征点都在静态物体上时,不同的物体语义类别对特征定位精度也有不同的影响。随着深度学习的发展,语义分割技术得到了突破,从图像中挖掘出深层语义类别信息成为可能,语义SLAM将语义信息加入到传统SLAM框架中,通过额外提供更高层次的语义信息辅助SLAM的计算,有助于提升SLAM的鲁棒性,语义分割实时性的提升也使得语义SLAM能在更多对实时性有要求的领域发挥作用,如何更好地利用语义信息也成为近年来的研究重点。本发明通过对基于视觉特征的语义SLAM相关方法进行研究,通过基于深度学习的像素级语义分割网络获取语义信息,滤除动态目标,并在优化中加入语义权重提高优化精度,最后构建语义地图。
发明内容
为了解决背景技术中存在的问题,本发明目的在于提供一种融合场景语义的室外单目同步建图与定位方法,适用于面向室外复杂环境下的视觉建图和定位问题。
本发明在传统单目SLAM技术的支持下,获取特征点的几何信息和描述子,依靠实时语义分割网络获取语义分割结果图,获得具有语义类别标签的语义特征点,在后端优化时,使用语义权重用于当前帧位姿计算,用于闭环检测时两帧之间相对位姿计算,用于局部地图优化调整和用于全局地图优化,以提升定位效果,使定位更加精确。
本发明采用的技术方案的步骤如下:
本发明方法包括以下几个模块:
SLAM前端模块,包括实时语义分割网络和视觉里程计,持续接收单目相机捕获的图像,提取语义特征点;用于室外场景的实时语义分割网络,接收单目相机捕获的图像,输出语义分割结果图,根据语义分割结果图获得语义类别标签;
SLAM建图模块,通过语义特征点得到语义地图点,建立语义地图。
SLAM后端模块,利用语义类别标签加上语义权重进行BA(bundle adjustment)优化获得同步建图与定位的结果。
(1)获取与实际运行场景相同的训练数据集,构建并训练实时语义分割网络,将训练后的实时语义分割网络接收单目相机捕获的图像输出语义分割结果图,通过语义分割结果图获得各个像素的语义类别标签;
(2)SLAM前端模块中,实时通过SLAM前端模块中的视觉里程计接收单目相机捕获的图像,获取图像的特征点和描述子,并根据语义分割结果图获取特征点的语义类别标签,主要由特征点和语义类别标签组建语义特征点,由所有语义特征点构成了语义特征点集;
所述(2)中,进行以下判断和处理:
若语义特征点的语义类别标签属于动态物体类,包括人和各类型的车,则将该语义特征点废弃,从语义特征点集中删除;
若语义特征点的语义类别标签不属于动态物体类,则语义特征点均保留。
(3)SLAM建图模块中,建图时,实时利用语义特征点建立语义地图,通过语义特征点和语义地图中的语义地图点的匹配更新语义地图点的语义类别标签统计信息;
(4)SLAM后端模块中,在SLAM后端模块接收不同时刻视觉里程计测量的单目相机的位姿,在利用单目相机的位姿和语义地图点在世界坐标系下的三维位置坐标构建最小二乘优化重投影误差时,加入语义权重进行优化,实现室外单目同步建图与定位。
本发明将实时语义分割网络作为SLAM的一个进程,SLAM系统运行时,利用实时语义分割网络对接收单目相机捕获的图像获取语义分割结果图,进而再用语义分割结果图进行处理获得。
所述的实时语义分割网络包括空间信息路径(Spatial Path)和上下文信息路径(Context Path)和特征融合模块,分别用来解决常规网络中空间信息缺失和感受野过小的问题;空间信息路径和上下文信息路径分别接收输入图像处理后输出到特征融合模块进行融合,特征融合模块的输出作为实时语义分割网络的输出;
所述的空间信息路径包含了三个连续的卷积归一化模块,每个卷积归一化模块是主要由卷积层、批归一化层、激活函数依次连接而成,最后一个卷积归一化模块的输出输入到特征融合模块;空间信息路径输出的特征图为输入图像的1/8,空间大小较大,可以对丰富的空间信息编码。
所述的上下文信息路径包含四个下采样层和两个注意力优化模块,四个下采样层依次连接,第三个下采样层和第四个下采样层的输出分别经各自的一个注意力优化模块处理后再与第四个下采样层的输出连接后输入到特征融合模块;所述的注意力优化模块(ARM)包含了第一全局池化层、第一卷积层、第一批归一化层和第一激活函数;第一全局池化层的输入作为注意力优化模块的输入,第一全局池化层依次经第一卷积层、第一批归一化层和第一激活函数连接,第一激活函数的输出和注意力优化模块的输入经相乘操作后输出并作为注意力优化模块的输出;
所述的特征融合模块(FFM)包含了连接层、卷积归一化模块、第二全局池化层、第二卷积层、第二激活函数、第三卷积层和第三激活函数;连接层接收分别来自空间信息路径和上下文信息路径的两个输入后进行连接操作,连接层的输出连接到卷积归一化模块,卷积归一化模块的输出依次经第二全局池化层、第二卷积层、第二激活函数、第三卷积层后输入到第三激活函数,第三激活函数的输出和卷积归一化模块的输出经相乘操作后再与卷积归一化模块的输出进行相加操作,相加操作的结果作为特征融合模块的输出。
所述的实时语义分割网络中,使用预训练的Xception骨架对输入的图像进行快速的下采样,以获一个足够的感受野,同时编码了高层的语义上下文信息,加上注意力优化模块(ARM)来优化特征。最后网络通过特征融合模块(FFM)融合两个路径的结果。
在训练实时语义分割网络时,由辅助损失函数监督模型训练,主要损失函数来监督整个网络的输出。
所述的实时语义分割网络,能在具有较好的实时性的基础上,还在特征融合模块和注意力优化模块的帮助下保证一定的性能。加入到ORB_SLAM2中可以保证整个系统的实时性。
所述步骤1中,单目相机持续捕获图像,帧率为fps,单目相机捕获的第i帧图像,宽为w像素,高为h像素,输入到实时语义分割网络得到第i帧的语义分割结果图Si,宽为w像素,高为h像素,语义分割结果图Si中第row行第col列的像素的值代表了语义类别标签crow,col,根据语义分割结果图Si中的每个像素的值进行以下判断获得语义类别标签:
当时,srow,col表示语义分割结果图Si中第row行第col列的像素的值,和分别为第k类语义类别标签在语义分割结果图中数值的下限和上限,则单目相机捕获的图像中的当前第row行第col列像素的语义类别标签为第k类,即crow,col=ck,crow,col表示单目相机捕获的图像中第row行第col列像素的语义类别标签,ck表示第k个语义类别标签。
第row行第col列的像素的语义类别标签crow,col∈{c1,c2,...,cn},{c1,c2,...,cn}表示不同的语义类别标签的集合,c1,c2,...,cn分别表示第1类~第n类的语义类别标签,通过语义分割结果图Si对应位置的值srow,col获得。
具体实施中所用语义类别标签例如可以是主要包含道路、车辆、自行车、建筑物、杆子、围栏、行人、人行道、交通标志、天空、树木等,所用实时语义分割网络处理耗时大约20毫秒,满足实时性要求。
所述步骤(2)中,在视觉里程计中提取单目相机实时捕获的图像中的特征点及其描述子,特征点是图像中比较有代表性的点,在单目相机发生少量的视角变化后会保持不变。再由特征点和描述子组建以下语义特征点,第i个语义特征点xi包括:
a.特征点,指特征点在图像中的像素坐标ui,坐标值分别是像素所处的列数和行数;
b.描述子di,是一个向量,为特征点周围像素的信息,两个特征点的描述子在向量空间上的距离小于阈值时,认为两个特征点匹配,是同样的特征点,也是是同样的语义特征点;
c.语义类别标签ci,通过特征点的像素坐标,查询语义分割结果图Si中对应像素坐标的值得到。
语义特征点是包含了语义类别标签的特征点,包括特征点、描述子和语义类别标签。
所述步骤(3)中,通过视觉里程计恢复出语义特征点在世界坐标系下的坐标作为语义地图点,为语义地图点构建语义类别标签统计信息,具体的语义地图点的属性包括语义地图点在世界坐标系下的三维位置坐标、单目相机观测的视角、所对应语义特征点中的描述子、所对应语义特征点中的语义类别标签和语义类别标签统计信息;由语义地图点的集合构成了语义地图,从而建立语义地图;实时对前一帧图像的语义地图点和当前帧图像的语义特征点进行匹配,当语义地图点和语义特征点匹配时,根据当前帧图像的语义特征点的语义类别标签更新语义地图以及语义地图的语义类别标签统计信息。
每个第i个语义地图点的语义类别标签统计信息为一个向量,表示为Ci=[cntc1cntc2...cntcn],其中cntck表示语义地图点的语义类别标签是第k类的次数;
针对单目相机实时捕获的每个当前帧图像,按照以下方式处理更新语义地图以及语义地图的语义类别标签统计信息:
对于每个当前帧图像,提取到语义特征点后,将每个语义特征点与单目相机捕获的前一帧图像处理获得的语义地图中的语义地图点进行匹配,匹配获得语义地图点和语义特征点是否是空间上同一个点的结果并判断处理:
若是同一个点,则将当前帧图像的语义特征点的语义类别标签累加到语义地图点的语义类别标签统计信息中,即此时语义特征点的语义类别标签为ci时,将第i个语义地图点的语义类别标签统计信息Ci中的语义类别标签是第k类的次数cntck加一;
若不是同一个点,则将当前的语义特征点通过视觉里程计恢复到世界坐标系下作为新的语义地图点,加入到语义地图中。
匹配是以描述子间的距离在预设距离范围内的语义地图点和语义特征点之间进行匹配。
所述的世界坐标系是以单目相机的第一帧时所在光心为原点的三维坐标系。
所述步骤(3)中根据语义特征点的语义类别标签可以进行动态物体滤除滤除,滤掉会对SLAM运行产生影响的动态物体,滤除的过程中,对于语义特征点xi而言,若其语义类别标签属于动态物体类ci∈Cdynamic,则该语义特征点将不被使用,将其从语义特征点集中删掉。其中具有动态物体标签属性的类别主要包括人和各类型的车。
所述步骤(4)中,
4.1、将每个语义地图点pi从世界坐标系下的三维位置坐标投影成像素坐标upi:
其中,ξ为李代数表示的相机位姿(包括平移和旋转),pwi为第i个语义地图点pi在世界坐标系下的三维位置坐标,K为单目相机的内参矩阵,si是第i个语义地图点pi的深度,exp()为指数映射,^符号表示将向量变成反对称矩阵的操作;
4.2、根据语义地图点pi的像素坐标upi和语义特征点的坐标获得语义特征点和匹配的语义地图点之间的重投影误差,在重投影误差基础上加上语义权重wi,最小二乘问题构建以下优化函数:
其中,ξ*为估计的李代数表示的相机位姿;wi表示第i个语义地图点pi的语义类别标签的语义权重,n表示语义地图点的总数,通过语义类别标签统计信息取最大次数的语义类别标签,将最大次数的语义类别标签对应的语义权重wi代入上述公式;
4.3、求解上述优化函数获得第i个语义地图点pi在世界坐标系下的三维位置坐标Pwi和相机位姿ξ,作为室外单目同步建图与定位的结果,从而实现室外单目同步建图与定位。
具体实施是将优化函数表示为图的形式,将许优化的变量由节点表示,误差项由边表示,建立带语义权重的图优化。
通过步骤(4)的SLAM后端模块在进行BA优化时添加语义权重,BA优化通过最小化作为目标函数的重投影误差,来优化相机位姿、地图点和相机参数等。
将优化表示为图的形式,将需要优化的变量由节点表示,误差项由边表示,建立带语义权重的图优化,建立的图优化主要有几个方面:
(a)用于当前帧的位姿计算,将当前关键帧设为地图中的节点,找出所有在当前关键帧中可见的语义地图点,并对每一个语义地图点建立边。
当前帧指的是当前正在处理的图像帧,包括图像、相机位姿、相机参数、语义特征点的集合。
关键帧指的是在处理当前帧时满足以下四个条件之一,就选入关键帧:
(1)在上一次全局重定位操作后,已经过去超过20帧图像;
(1)局部地图已经停止操作或者距离上一次入选关键帧超过20帧图像;
(1)当前帧匹配到的语义特征点数量大于50个;
(1)当前帧匹配到的语义地图点小于匹配搭配当前关键帧的点的数量的90%,且大于15个点。
当前关键帧是指当前帧用于参考估计位姿的关键帧。
(a)用于闭环检测,通过词袋等方式检测到闭环帧和当前帧之间的匹配关系,计算闭环帧和当前帧之间的相对位姿,将两个帧的位姿变换作为节点,分别与匹配的两个点建立边连接。
(a)用于局部地图优化,局部地图调整的本地BA中,对当前处理的关键帧进行优化。将关键帧、语义地图点建立图节点,对语义地图点和能看到这个点的所有关键帧建立边,边的两端分别是帧的位姿和语义地图点位姿。
(a)用于全局地图优化,对全局地图优化的全局BA中,把所有关键帧和地图点设为节点,把每一个地图点和能看到这个地图点的关键帧建立边,边的两端分别是关键帧的位姿和地图点的位姿。
本发明将基于深度学习获得的场景语义融入到SLAM系统中,采用实时语义分割神经网络获得场景语义信息,根据语义分割结果进行动态物体滤除,并在后端优化时根据语义类别标签为特征点分配不同的优化权重,最终有效的提升了整个SLAM系统的定位精度,计算代价小,实时性强。
本发明首先通过实时语义分割网络获取语义分割结果图,在传统ORB_SLAM的基础上,得到具有语义类别标签的语义特征点,滤掉具有动态物体标签的语义特征点,减少动态目标给SLAM系统带来的影响,并在优化时加入语义权重,以提升优化求解精度,提高SLAM在各种场景下的鲁棒性和精确度。
与背景技术相比,本发明具有的有益效果有:
(1)本发明可以依靠较为廉价的相机获得较好的SLAM定位精度。
(2)本发明能够降低动态物体对SLAM估算带来的影响,提高SLAM系统在动态环境下的鲁棒性和精度。
(3)本发明有利于提升SLAM后端优化整体求解效果。
(4)本发明采用较为高效的实时语义分割网络,提升系统运行的实时性,相较于常规语义网络更适合SLAM场景的使用,具有较小的计算代价。
综合来说,本发明有效提升视觉SLAM在高动态环境、极端场景下的运行表现,并在运行过程中保持较好的鲁棒性和精度,采用较为高效的网络并对语义信息进行了较为充分的使用,计算代价小,实时性高。
附图说明
图1为本发明方法的基本框架;
图2为本发明的语义分割网络结构图;
图3为KITTI02序列本方法运行示意图;
图4为KITTI02序列本方法建立的语义地图。
具体实施方式
下面结合附图和具体实施对本发明作进一步说明。
按照本发明发明内容完整方法实施的实施例如下:
(1)使用CityScapes数据集对实时语义分割网络进行训练,Cityscapes拥有5000张在城市环境中驾驶场景的图片,可以用于训练实现城市室外环境下的图像语义分割任务。
(2)提供不同语义类别标签的语义权重,可以在与实际运行场景相同的测试数据集上通过实验调整语义权重。语义类别标签主要包含道路、车辆、自行车、建筑物、杆子、围栏、行人、人行道、交通标志、天空、树木,其中围栏、杆子、交通标志、建筑物这些语义类别标签通常拥有较高的权重,天空、树木这些语义类别标签通常拥有较低的权重。经过实验,类别权重分配如下表:
表1语义权重设置
语义类别 | 权重设置 |
道路 | 1 |
车辆 | 1 |
自行车 | 1 |
建筑物 | 1.1 |
杆子 | 1.6 |
围栏 | 1.1 |
行人 | 0.9 |
人行道 | 0.8 |
交通标志 | 1.6 |
天空 | 0.9 |
树木 | 0.9 |
其他 | 1 |
(3)根据步骤中的要求,在ORB_SLAM2前端模块中加入训练好的实时语义分割网络,当单目相机接收到图片后,在前端模块的视觉里程计中提取ORB特征,利用实时语义分割网络获得语义分割结果图,并根据语义分割结果图获取特征点的语义类别标签,由特征点和语义类别标签组建语义特征点。利用语义特征点建立语义地图,通过语义特征点和语义地图中的语义地图点的匹配更新语义地图点的语义类别标签统计信息。修改ORB_SLAM2中的后端模块,构建最小二乘优化重投影误差时,加入语义权重进行优化。
(4)本部分实验基于ORB_SLAM2在KITTI数据集上进行测试,KITTI数据集是由德国卡尔斯鲁厄理工学院和丰田美国技术研究院联合建立,是目前业界比较流行的自动驾驶场景下的计算机视觉算法评测数据集,包括城市、乡村和高速公路等场景。在这些数据集下,实时语义分割网络在RTX2060平台下平均每帧耗时约20ms,满足实时运行的条件。
(4)实验所得轨迹利用EVO工具箱进行对齐和拉伸,对于序列中的每一个点,计算其与真值的误差,得到每个点的APE(绝对位置误差,absolute pose error),计算RMSE(均方根误差),得到一次实验结果。对同一个序列重复进行多次实验,得到平均的RMSE,用于对比。
KITTI02序列,场景为城镇环境,包含各种语义类别标签的物体,地图较大(599米x946米),包含闭环,KITTI03序列,场景为城郊环境,包含较多植被,有车辆驶过,kitti04序列进行,序列场景为城镇道路,实验结果如表2。
表2原版SLAM与本方法在KITTI02序列上的实验比较(平均APE RMSE,单位:米)
序列 | ORB-SLAM | 本方法 | 相对提升 |
KITTI02 | 20.92 | 19.94 | 4.68% |
KITTI03 | 2.89 | 2.64 | 9.02% |
KITTI04 | 1.233 | 0.926 | 24.89% |
可以看出,采用本发明通过构建语义地图,在利用单目相机的位姿和语义地图点在世界坐标系下的三维位置坐标构建最小二乘优化重投影误差时,加入语义权重进行优化,在室外场景实现的建图与定位的精度较高,误差较小。
Claims (7)
1.一种融合场景语义的室外单目同步建图与定位方法,其特征在于:方法如下:
(1)获取训练数据集,构建并训练实时语义分割网络,将训练后的实时语义分割网络接收单目相机捕获的图像输出语义分割结果图,通过语义分割结果图获得各个像素的语义类别标签;
(2)实时通过SLAM前端模块中的视觉里程计接收单目相机捕获的图像,获取图像的特征点和描述子,并根据语义分割结果图获取特征点的语义类别标签,由特征点和语义类别标签组建语义特征点,由所有语义特征点构成了语义特征点集;
(3)实时利用语义特征点建立语义地图,通过语义特征点和语义地图中的语义地图点的匹配更新语义地图点的语义类别标签统计信息;
(4)在SLAM后端模块接收不同时刻视觉里程计测量的单目相机的位姿,在利用单目相机的位姿和语义地图点在世界坐标系下的三维位置坐标构建最小二乘优化重投影误差时,加入语义权重进行优化,实现室外单目同步建图与定位;
所述步骤(4)中:
4.1、将每个语义地图点pi从世界坐标系下的三维位置坐标投影成像素坐标upi:
其中,ξ为相机位姿,包括平移和旋转,pwi为第i个语义地图点pi在世界坐标系下的三维位置坐标,K为单目相机的内参矩阵,si是第i个语义地图点pi的深度,exp()为指数映射,^符号表示将向量变成反对称矩阵的操作;
4.2、根据语义地图点pi的像素坐标upi和语义特征点的坐标获得语义特征点和匹配的语义地图点之间的重投影误差,在重投影误差基础上加上语义权重wi,最小二乘问题构建以下优化函数:
其中,ξ*为估计的相机位姿;wi表示第i个语义地图点pi的语义类别标签的语义权重,n表示语义地图点的总数,通过语义类别标签统计信息取最大次数的语义类别标签,将最大次数的语义类别标签对应的语义权重wi代入上述公式;
4.3、求解上述优化函数获得第i个语义地图点pi在世界坐标系下的三维位置坐标Pwi和相机位姿ξ。
2.根据权利要求1所述的一种融合场景语义的室外单目同步建图与定位方法,其特征在于:
所述的实时语义分割网络包括空间信息路径和上下文信息路径和特征融合模块;空间信息路径和上下文信息路径分别接收输入图像处理后输出到特征融合模块进行融合,特征融合模块的输出作为实时语义分割网络的输出;
所述的空间信息路径包含了三个连续的卷积归一化模块,每个卷积归一化模块是主要由卷积层、批归一化层、激活函数依次连接而成,最后一个卷积归一化模块的输出输入到特征融合模块;
所述的上下文信息路径包含四个下采样层和两个注意力优化模块,四个下采样层依次连接,第三个下采样层和第四个下采样层的输出分别经各自的一个注意力优化模块处理后再与第四个下采样层的输出连接后输入到特征融合模块;所述的注意力优化模块包含了第一全局池化层、第一卷积层、第一批归一化层和第一激活函数;第一全局池化层的输入作为注意力优化模块的输入,第一全局池化层依次经第一卷积层、第一批归一化层和第一激活函数连接,第一激活函数的输出和注意力优化模块的输入经相乘操作后输出并作为注意力优化模块的输出;
所述的特征融合模块包含了连接层、卷积归一化模块、第二全局池化层、第二卷积层、第二激活函数、第三卷积层和第三激活函数;连接层接收分别来自空间信息路径和上下文信息路径的两个输入后进行连接操作,连接层的输出连接到卷积归一化模块,卷积归一化模块的输出依次经第二全局池化层、第二卷积层、第二激活函数、第三卷积层后输入到第三激活函数,第三激活函数的输出和卷积归一化模块的输出经相乘操作后再与卷积归一化模块的输出进行相加操作,相加操作的结果作为特征融合模块的输出。
3.根据权利要求1所述的一种融合场景语义的室外单目同步建图与定位方法,其特征在于:
所述步骤1中,单目相机持续捕获图像,帧率为fps,单目相机捕获的第i帧图像,宽为w像素,高为h像素,输入到实时语义分割网络得到第i帧的语义分割结果图Si,宽为w像素,高为h像素,根据语义分割结果图Si中的每个像素的值进行以下判断获得语义类别标签:
4.根据权利要求1所述的一种融合场景语义的室外单目同步建图与定位方法,其特征在于:
所述步骤(2)中,进行以下判断和处理:
若语义特征点的语义类别标签属于动态物体类,则将该语义特征点废弃,从语义特征点集中删除;
若语义特征点的语义类别标签不属于动态物体类,则语义特征点均保留。
5.根据权利要求1所述的一种融合场景语义的室外单目同步建图与定位方法,其特征在于:
所述步骤(2)中,在视觉里程计中提取单目相机实时捕获的图像中的特征点及其描述子,再由特征点和描述子组建以下语义特征点,第i个语义特征点xi包括:
a.特征点,指特征点在图像中的像素坐标;
b.描述子di,为特征点周围像素的信息;
c.语义类别标签ci,通过特征点的像素坐标,查询语义分割结果图Si中对应像素坐标的值得到。
6.根据权利要求1所述的一种融合场景语义的室外单目同步建图与定位方法,其特征在于:
所述步骤(3)中,通过视觉里程计恢复出语义特征点在世界坐标系下的坐标作为语义地图点,为语义地图点构建语义类别标签统计信息,由语义地图点的集合构成了语义地图,从而建立语义地图;实时对前一帧图像的语义地图点和当前帧图像的语义特征点进行匹配,当语义地图点和语义特征点匹配时,根据当前帧图像的语义特征点的语义类别标签更新语义地图以及语义地图的语义类别标签统计信息。
7.根据权利要求4所述的一种融合场景语义的室外单目同步建图与定位方法,其特征在于:每个第i个语义地图点的语义类别标签统计信息为一个向量,表示为Ci=[cntc1 cntc2... cntck ... cntcn],其中cntck表示语义地图点的语义类别标签是第k类的次数;针对单目相机实时捕获的每个当前帧图像,按照以下方式处理更新语义地图以及语义地图的语义类别标签统计信息:
对于每个当前帧图像,提取到语义特征点后,将每个语义特征点与单目相机捕获的前一帧图像处理获得的语义地图中的语义地图点进行匹配,匹配获得语义地图点和语义特征点是否是同一个点的结果并判断处理:
若是同一个点,则将当前帧图像的语义特征点的语义类别标签累加到语义地图点的语义类别标签统计信息中,即此时语义特征点的语义类别标签为cj时,将第i个语义地图点的语义类别标签统计信息Ci中的语义类别标签是第k类的次数cntck加一;
若不是同一个点,则将当前的语义特征点通过视觉里程计恢复到世界坐标系下作为新的语义地图点,加入到语义地图中。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110023602.9A CN112734845B (zh) | 2021-01-08 | 2021-01-08 | 一种融合场景语义的室外单目同步建图与定位方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110023602.9A CN112734845B (zh) | 2021-01-08 | 2021-01-08 | 一种融合场景语义的室外单目同步建图与定位方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112734845A CN112734845A (zh) | 2021-04-30 |
CN112734845B true CN112734845B (zh) | 2022-07-08 |
Family
ID=75590175
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110023602.9A Active CN112734845B (zh) | 2021-01-08 | 2021-01-08 | 一种融合场景语义的室外单目同步建图与定位方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112734845B (zh) |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113096188B (zh) * | 2021-06-09 | 2021-09-21 | 之江实验室 | 一种基于高光像素检测的视觉里程计位姿优化方法 |
CN113362394A (zh) * | 2021-06-11 | 2021-09-07 | 上海追势科技有限公司 | 一种基于视觉语义分割技术的车辆实时定位方法 |
CN113656418B (zh) * | 2021-07-27 | 2023-08-22 | 追觅创新科技(苏州)有限公司 | 语义地图的保存方法和装置、存储介质、电子装置 |
CN113624223B (zh) * | 2021-07-30 | 2024-05-24 | 中汽创智科技有限公司 | 一种室内停车场地图构建方法及装置 |
CN113902828B (zh) * | 2021-09-26 | 2024-08-02 | 武汉科技大学 | 一种以墙角为关键特征的室内二维语义地图的构建方法 |
CN113903011B (zh) * | 2021-10-26 | 2024-06-11 | 江苏大学 | 一种适用于室内停车场的语义地图构建及定位方法 |
CN114266950B (zh) * | 2021-12-01 | 2024-09-10 | 浙江大学 | 基于语义梯度点以及道路幂点的视觉场景识别方法 |
CN114241050B (zh) * | 2021-12-20 | 2024-05-07 | 东南大学 | 一种基于曼哈顿世界假设及因子图的相机位姿优化方法 |
CN114693787B (zh) * | 2022-03-18 | 2024-08-02 | 东风汽车集团股份有限公司 | 停车库建图与定位方法、系统及车辆 |
CN115100643B (zh) * | 2022-08-26 | 2022-11-11 | 潍坊现代农业与生态环境研究院 | 融合三维场景语义的单目视觉定位增强方法和设备 |
CN115700781B (zh) * | 2022-11-08 | 2023-05-05 | 广东技术师范大学 | 一种动态场景下基于图像补绘的视觉定位方法及系统 |
CN117392347B (zh) * | 2023-10-13 | 2024-04-30 | 苏州煋海图科技有限公司 | 一种地图构建方法、装置、计算机设备及可读存储介质 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109816686A (zh) * | 2019-01-15 | 2019-05-28 | 山东大学 | 基于物体实例匹配的机器人语义slam方法、处理器及机器人 |
CN110084850B (zh) * | 2019-04-04 | 2023-05-23 | 东南大学 | 一种基于图像语义分割的动态场景视觉定位方法 |
CN110738673A (zh) * | 2019-10-21 | 2020-01-31 | 哈尔滨理工大学 | 基于实例分割的视觉slam方法 |
CN111402336B (zh) * | 2020-03-23 | 2024-03-12 | 中国科学院自动化研究所 | 基于语义slam的动态环境相机位姿估计及语义地图构建方法 |
CN111462135B (zh) * | 2020-03-31 | 2023-04-21 | 华东理工大学 | 基于视觉slam与二维语义分割的语义建图方法 |
CN111582232A (zh) * | 2020-05-21 | 2020-08-25 | 南京晓庄学院 | 一种基于像素级语义信息的slam方法 |
CN111950561A (zh) * | 2020-08-25 | 2020-11-17 | 桂林电子科技大学 | 一种基于语义分割的剔除语义slam动态点的方法 |
-
2021
- 2021-01-08 CN CN202110023602.9A patent/CN112734845B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN112734845A (zh) | 2021-04-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112734845B (zh) | 一种融合场景语义的室外单目同步建图与定位方法 | |
CN107038448B (zh) | 目标检测模型构建方法 | |
CN106778604B (zh) | 基于匹配卷积神经网络的行人再识别方法 | |
CN111080659A (zh) | 一种基于视觉信息的环境语义感知方法 | |
CN109711262B (zh) | 一种基于深度卷积神经网络的智能挖掘机行人检测方法 | |
CN110728200A (zh) | 一种基于深度学习的实时行人检测方法及系统 | |
CN111199556B (zh) | 基于摄像头的室内行人检测和跟踪方法 | |
CN108665496A (zh) | 一种基于深度学习的端到端的语义即时定位与建图方法 | |
CN111639564B (zh) | 一种基于多注意力异构网络的视频行人重识别方法 | |
CN106897677B (zh) | 一种车辆特征分类检索系统和方法 | |
CN110188835A (zh) | 基于生成式对抗网络模型的数据增强行人再识别方法 | |
CN112508960A (zh) | 一种基于改进注意力机制的低精度图像语义分割方法 | |
CN111462210A (zh) | 一种基于极线约束的单目线特征地图构建方法 | |
CN111950346A (zh) | 一种基于生成式对抗网络的行人检测数据扩充方法 | |
CN109887029A (zh) | 一种基于图像颜色特征的单目视觉里程测量方法 | |
CN113506318A (zh) | 一种车载边缘场景下的三维目标感知方法 | |
CN114638794A (zh) | 基于深度学习和slam技术的裂缝检测与三维定位方法 | |
CN111582232A (zh) | 一种基于像素级语义信息的slam方法 | |
CN111292366A (zh) | 一种基于深度学习和边缘计算的视觉行车测距算法 | |
CN109886200A (zh) | 一种基于生成式对抗网络的无人驾驶车道线检测方法 | |
CN101719279A (zh) | 星空图像背景运动估计方法 | |
Chen et al. | Vehicle type classification based on convolutional neural network | |
Yu et al. | Accurate and robust visual localization system in large-scale appearance-changing environments | |
CN110533692B (zh) | 一种面向无人机航拍视频中移动目标的自动跟踪方法 | |
CN109492522B (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 |