CN111581313B - 一种基于实例分割的语义slam鲁棒性改进方法 - Google Patents
一种基于实例分割的语义slam鲁棒性改进方法 Download PDFInfo
- Publication number
- CN111581313B CN111581313B CN202010336144.XA CN202010336144A CN111581313B CN 111581313 B CN111581313 B CN 111581313B CN 202010336144 A CN202010336144 A CN 202010336144A CN 111581313 B CN111581313 B CN 111581313B
- Authority
- CN
- China
- Prior art keywords
- semantic
- feature points
- map
- mask
- information
- 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
- 230000011218 segmentation Effects 0.000 title claims abstract description 50
- 238000000034 method Methods 0.000 title claims abstract description 43
- 230000006872 improvement Effects 0.000 title claims abstract description 8
- 230000003287 optical effect Effects 0.000 claims abstract description 29
- 238000010276 construction Methods 0.000 claims abstract description 10
- 230000033001 locomotion Effects 0.000 claims description 44
- 239000011159 matrix material Substances 0.000 claims description 28
- 230000003068 static effect Effects 0.000 claims description 19
- 238000013527 convolutional neural network Methods 0.000 claims description 17
- 238000012549 training Methods 0.000 claims description 17
- 238000004364 calculation method Methods 0.000 claims description 15
- 238000013528 artificial neural network Methods 0.000 claims description 12
- 238000012545 processing Methods 0.000 claims description 12
- 239000013598 vector Substances 0.000 claims description 12
- 238000000605 extraction Methods 0.000 claims description 11
- 238000012360 testing method Methods 0.000 claims description 11
- 238000012795 verification Methods 0.000 claims description 8
- 238000012216 screening Methods 0.000 claims description 6
- 230000004807 localization Effects 0.000 claims description 4
- 238000013507 mapping Methods 0.000 claims description 4
- 238000010586 diagram Methods 0.000 claims description 3
- 238000003708 edge detection Methods 0.000 claims description 3
- 230000000694 effects Effects 0.000 claims description 3
- 238000005457 optimization Methods 0.000 claims description 3
- 238000013519 translation Methods 0.000 claims description 3
- 238000010200 validation analysis Methods 0.000 claims 1
- 238000013135 deep learning Methods 0.000 abstract description 9
- 230000000007 visual effect Effects 0.000 description 5
- 230000008569 process Effects 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 230000004927 fusion Effects 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
Images
Classifications
-
- 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
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/11—Region-based segmentation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/13—Edge detection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/20—Analysis of motion
- G06T7/215—Motion-based segmentation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/30—Determination of transform parameters for the alignment of images, i.e. image registration
- G06T7/33—Determination of transform parameters for the alignment of images, i.e. image registration using feature-based methods
-
- 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
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10024—Color image
-
- 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
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/30—Computing systems specially adapted for manufacturing
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- General Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- Biophysics (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Biomedical Technology (AREA)
- Computational Linguistics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Life Sciences & Earth Sciences (AREA)
- Health & Medical Sciences (AREA)
- Databases & Information Systems (AREA)
- Multimedia (AREA)
- Remote Sensing (AREA)
- Image Analysis (AREA)
Abstract
本发明涉及一种基于实例分割的语义SLAM鲁棒性改进方法,首先通过实例分割网络对关键帧进行实例分割,建立先验语义信息;然后计算特征点光流场对物体进一步区分,识别出场景真正运动物体并将属于动态物体的特征点去除;最后进行语义关联,建立无动态物体干扰的语义地图。本发明与现有技术相比,采用深度学习与光流相互结合的方法建立语义地图且在彩色图的基础上增加深度图,赋予系统建立稠密三维点云语义地图的能力;另外,采用Mask‑RCNN框架实时语义分割,通过光流信息估计的动态特征点与像素级别的语义信息相互结合可计算物体动态信息。本发明采用深度学习与光流相互结合使得整个系统的鲁棒性得到显著提高,能将其应用于动态场景下实时语义地图构建。
Description
技术领域
本发明涉及实例分割及语义SLAM技术领域,具体涉及一种基于深度学习的动态场景语义SLAM改进方法。
背景技术
即时定位与地图构建(simultaneous localization and mapping,SLAM)是指机器人在陌生环境中仅通过自身携带的传感器估计自身位姿与构建环境地图的过程,它是很多机器人应用场景的先决条件,比如路径规划、无碰撞导航、环境感知等,视觉SLAM则是指以摄像头为主要数据采集传感器的定位建图方法。图片具有丰富的纹理信息,通过与深度学习相互结合,可产生环境的语义信息。
基于特征的方法只能建立稀疏的点云地图,并且没有环境语义信息,虽然直接法可以建立半稠密或者稠密地图,但是直接利用光流对整幅图像进行计算尤其是图片尺寸较大时具有准确度较低,计算量大等缺点。无论是直接法还是特征点法等方法进行视觉SLAM,均是将环境假设为静态场景且场景的主要部分的变化是由摄像头运动造成的,然而在实际环境中,不可避免的存在移动的物体,比如室内的人、室外行驶的车辆等。
为了提高动态环境下的语义SLAM系统的完整性与鲁棒性,融合深度学习方法逐渐成为国内外一个重要的研究内容和发展趋势。因此,如何利用深度学习提高动态场景下视觉语义SLAM鲁棒性能成为亟待解决的技术问题。
发明内容
本发明要解决的技术问题是:如何利用深度学习与光流互相结合的方法建立语义地图使得视觉SLAM系统在动态环境下也可有较高的鲁棒性,克服基于特征的方法只能建立稀疏点云地图并没有环境语义信息;直接利用光流对整幅图像进行计算,计算量大等缺点。
为了解决上述技术问题,本发明提供了一种基于实例分割的语义SLAM鲁棒性改进方法,包括:使用RGB-D摄像头获取RGB彩色图以及深度图,整个方法使用三路分支并行处理,使用分支三对深度图进行处理,通过分支一和分支二对RGB彩色图进行处理,其中分支一将采集到的RGB彩色图数据样本按一定比例进行划分为训练集、验证集和测试集,分支二将全部RGB彩色图数据用于ORB特征提取并辅助光流计算;
在分支一中,对RGB彩色图的处理,将RGB彩色图划分后的训练集送入实例分割卷积神经网络训练并在验证集上验证效果后得到最终网络模型参数,在测试集上进行泛化能力的测试后获得实例分割结果,即语义信息;在实例分割的同时,在分支二中,对RGB彩色图中所有数据进行ORB特征提取并辅助光流计算,得到表示运动的光流信息,并用所得到的光流信息来估计处于运动状态的特征点,即动态特征点;
将动态特征点筛选出来后,使用ORB特征中的静态特征点进行位姿的计算,获得实时运动轨迹;
得到实例分割出来的语义信息之后,通过在深度图中计算边缘信息,再将实例分割的语义信息扩展到深度图完成点云构建中的语义与深度图的匹配,从而获得语义地图;
将实时运动轨迹和语义地图同步输出,得到最终的带有语义信息的实时定位与地图构建(Simultaneous localization and mapping,SLAM)。
优选地,在分支一中,采用MS COCO数据集对实例分割卷积神经网络预训练,MSCOCO数据集包含91种不同物体,经过预训练之后,采用TUM(Technical University ofMunich)的室内数据集对实例分割卷积神经网络进行二次训练,TUM数据集包含彩色三通道图片与深度图,因仅彩色图片具有语义信息,所以实例分割卷积神经网络的输入端是将原始图片裁剪到640×480×3大小的彩色三通道图片。
优选地,所述实例分割卷积神经网络采用Mask-RCNN网络作为主要框架,为适应语义信息的提取,对Mask-RCNN网络结构进行了适当修改。首先,为了减轻网络的权重,基础网络采用Res-Net50结构;其次,由于已经在COCO数据集上预训练,在第二次在TUM数据集上训练的时候从第4层开始修改权重,实例数量设定为TUM数据集中潜在动态或常见物体共7种,并对物体进行颜色标记。最终,Mask-RCNN神经网络的输出分为四部分:物体类别、置信度、包围框的位置及大小何物体的掩膜位置向量。
优选地,具体的Mask-RCNN神经网络结构设计为:将Mask-RCNN神经网络的第一层设计为原始Faster-RCNN的结构,用于对候选窗口进行分类和感兴趣区域(region ofinterest,RoI)坐标回归,在最后一层卷积特征图上,通过候选区域提取网络RPN生成ROI,每张图片固定n个建议窗口;第二层则利用全卷积网络结构对每一个感兴趣区域预测二值分割掩模,生成语义信息并通过候选区域对齐网络(RoI Align层)使得每个建议窗口生成固定大小的特征图;
Mask-RCNN神经网络得到三个输出向量,第一个是softmax分类,第二个是每一类的bounding box回归,第三个是每一个ROI的二进制掩码Mask,通过这三个输出向量,从而得到实例分割的结果。
优选地,所述用所得到的光流信息来估计处于运动状态的特征点,即动态特征点,具体步骤为:
由灰度不变假设可知:
其中,Ii为像素点xi,yi处的灰度,ti代表时间变量,令代表xi方向上的灰度梯度;代表yi方向上的灰度梯度;代表灰度对时间的偏导数;代表xi方向上的运动速度;代表yi方向上的运动速度,则公式(1)变为:
公式(2)未知数数量大于方程数量,为正确求解,假设xi,yi附近具有相似的运动速度,取7×7区域内点进行计算,构建超定线性方程:
由最小二乘解法得到:
其中,AT为矩阵A的转置矩阵。
设[Eu Ev]T为背景运动速度,
其中,m表示累加所有maski的值为背景的特征点,uj、vj分别表示第j个像素点x方向和y方向的速度。
得到背景运动速度后,利用背景运动速度[Eu Ev]T和特征点计算出来的实际运动速度{uk,vk}来完成动态特征点的筛选,其关系满足以下方程:
[(uk-Eu)2+(vk-Eu)2]1/2>ε
其中,ε为阈值,可以看出,在具有相同语义信息的特征点数目大于一定阈值时即可认为这些具有相同语义信息的特征点为动态特征点。
优选地,所述使用ORB特征中的静态特征点进行位姿的计算,获得实时运动轨迹,具体为:
将动态特征点筛选出来后,剩下的即为静态特征点,在位姿计算时仅使用静态特征点。设筛选后符合条件的静态特征点Pl为{u,v},其三维坐标为{Xl,Yl,Zl},由几何投影关系得:
其中,K为相机内参矩阵,R为旋转矩阵,s为尺度大小,t为平移矩阵;
将相机的运动位姿(R,t)用李群李代数表示为exp(ξ^),则公式(3)写成矩阵形式就为:
siai=Kexp(ξ^)Pi
其中,ai表示像素坐标矩阵,Pi表示三维空间点坐标矩阵,si表示距离深度的尺度大小。
由最小化重投影误差对相邻关键帧所有特征点构建最小二乘问题:
ξ*即为所求位姿,n表示所有静态特征点的个数,位姿可由非线性优化算法求出。
优选地,所述按一定比例进行划分为训练集、验证集和测试集中的比例为6:1:3。
优选地,所述通过在深度图中计算边缘信息,采用区域生长法对深度图进行边缘检测。
与现有技术相比,本发明能够实现的有益效果至少如下:
本发明通过实例分割网络对视觉SLAM中的关键帧实例分割,赋予图像语义信息,再由光流计算背景运动阈值,并分辨出实例中运动物体。相比于仅用光流计算的方法,避免了预先估计相机运动,且在场景中动态物体占主要像素点时,不会产生动态物体间的错误匹配。最后根据语义信息计算深度图区域生长种子点,寻找到物体实际边缘,使语义地图更加符合实际场景,边缘信息更加准确。
附图说明
图1为本发明整体流程图;
图2为本发明的实例分割网络框架图;
图3为区域生长算法流程图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合说明书附图附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例
本发明实施例提供的一种基于实例分割的语义SLAM鲁棒性改进方法,包括以下步骤:
(1)使用RGB-D摄像头获取RGB彩色图以及深度图,整个方法使用三路分支并行处理。使用分支三对深度图进行处理,通过分支一和分支二对RGB彩色图进行处理,其中分支一将采集到的RGB彩色图数据样本按6:1:3的比例划分为训练集、验证集和测试集,分支二将全部RGB彩色图数据用于ORB特征提取并辅助光流计算;
(2)在分支一中,对RGB彩色图的处理,将RGB彩色图划分后的训练集送入实例分割卷积神经网络训练并在验证集上验证效果后得到最终网络模型参数,在测试集上进行泛化能力的测试后获得实例分割结果,即语义信息。在实例分割的同时,在分支二中,对RGB彩色图中所有数据进行ORB特征提取并辅助光流计算,得到表示运动的光流信息,并用所得到的光流信息来估计处于运动状态的特征点,即动态特征点;
(3)将动态特征点筛选出来后,使用ORB特征中的静态特征点进行位姿的计算,获得实时运动轨迹;
(4)得到实例分割出来的语义信息之后,通过在深度图中计算边缘信息,再将实例分割的语义信息扩展到深度图完成点云构建中的语义与深度图的匹配,从而获得语义地图。
(5)将实时运动轨迹和语义地图同步输出,得到最终的带有语义信息的实时定位与地图构建(Simultaneous localization and mapping,SLAM)。
本实施例中,采用MS COCO数据集对实例分割卷积神经网络预训练,MS COCO数据集包含91种不同物体,适合训练分类任务的卷积神经网络,经过MS COCO数据集预训练之后的实例分割卷积神经网络具有很强的特征提取能力。经过预训练之后,采用TUM(TechnicalUniversity of Munich)的室内数据集对实例分割卷积神经网络进行二次训练,TUM数据集包含彩色三通道图片与深度图,因仅彩色图片具有语义信息,所以实例分割卷积神经网络的输入端是640×480×3大小的彩色三通道图片。
其中,实例分割卷积神经网络采用Mask-RCNN网络作为主要框架,为适应语义信息的提取,对Mask-RCNN网络结构进行了适当修改。首先,为了减轻网络的权重,基础网络采用Res-Net50结构;其次,由于已经预训练,在二次训练的时候从第4层开始修改权重,实例数量设定为TUM数据集中潜在动态或常见物体共7种,并对物体进行颜色标记。最终,Mask-RCNN神经网络的输出分为四部分:物体类别、置信度、包围框的位置及大小何物体的掩膜位置向量。
Mask-RCNN神经网络结构设计如图2所示,具体为将Mask-RCNN神经网络的第一层设计为原始Faster-RCNN的结构,用于对候选窗口进行分类和感兴趣区域(region ofinterest,RoI)坐标回归,在最后一层卷积特征图上,通过候选区域提取网络RPN生成ROI,每张图片固定n个建议窗口;第二层则利用全卷积网络结构对每一个感兴趣区域预测二值分割掩模,生成语义信息并通过候选区域对齐网络(RoI Align层)使得每个建议窗口生成固定大小的特征图。并且,Mask-RCNN神经网络得到三个输出向量,第一个是softmax分类,第二个是每一类的bounding box回归,第三个是每一个ROI的二进制掩码Mask,通过这三个输出向量,从而得到实例分割的结果。
本实施例中,步骤(2)中的动态特征点的估计步骤为:
由灰度不变假设可知:
其中,Ii为像素点xi,yi处的灰度,ti代表时间变量,令代表xi方向上的灰度梯度;代表yi方向上的灰度梯度;代表灰度对时间的偏导数;代表xi方向上的运动速度;代表yi方向上的运动速度,则公式(1)变为:
公式(2)未知数数量大于方程数量,为正确求解,假设xi,yi附近具有相似的运动速度,取7×7区域内点进行计算。构建超定线性方程:
由最小二乘解法得到:
其中,AT为矩阵A的转置矩阵。
设[Eu Ev]T为背景运动速度,
其中,m表示累加所有maski的值为背景的特征点。
得到背景运动速度后,可以利用背景运动速度[Eu Ev]T和特征点计算出来的实际运动速度{uk,vk}来完成动态物体的筛选。其关系满足以下方程:
[(uk-Eu)2+(vk-Eu)2]1/2>ε
其中,ε为阈值,在时间t取1的情况下为13。可以看出,在特征点提取数量,且具有相同语义信息的特征点数目大于一定阈值时即可认为具有该语义信息的物体为动态物体。
本实施例中,步骤(3)中进行位姿计算的方法,具体为:
经过动静态特征点筛选后,在位姿计算时仅使用静态特征点。设筛选后符合条件的静态特征点Pl为{u,v},其三维坐标为{Xl,Yl,Zl},由几何投影关系得:
其中,K为相机内参矩阵,R为旋转矩阵,s为尺度大小,t为平移矩阵;
将相机的运动位姿(R,t)用李群李代数表示为exp(ξ^),则公式(3)写成矩阵形式就为:
siui=Kexp(ξ^)Pi
其中,ui表示像素坐标矩阵,Pi表示三维空间点坐标矩阵,si表示距离深度的尺度大小。
由最小化重投影误差对相邻关键帧所有特征点构建最小二乘问题:
ξ*即为所求位姿,n表示所有静态特征点的个数,位姿可由非线性优化算法求出。
本实施例中,步骤(4)中的点云构建中的语义与深度图的匹配方法具体为:
动态物体在运动过程中会发生位置的改变,所以在不同位姿下的动态物体空间位置不同。当重建三维点云地图时,为保证地图的正确性,应将动态物体在地图中删除。然而通过深度学习输出的实例是由RGB图像计算得出,其边缘信息并不准确。所以,先通过在深度图中计算边缘信息,再将实例分割的语义信息扩展到深度图像来减少误差。
首先采用区域生长法对深度图像进行边缘检测以获得边缘信息。区域生长的基本思想是将具有相似性质的像素集合起来构成区域。具体先对每个需要分割的区域找一个种子像素作为生长起点,然后将种子像素和周围邻域中与种子像素有相同或相似性质的像素(根据某种事先确定的生长或相似准则来判定)合并到种子像素所在的区域中。将这些新像素当作新的种子继续上面的过程,直到没有满足条件的像素可被包括进来,这样一个区域就生长成了。如图3所示,本实施例的区域生长分为三个步骤实现:
首先,确定生长种子点。根据前面的提到的方法确定动态特征点,并将具有动态特征点的物体标记为动态物体,并将动态物体确定为生长种子点。
其次,规定生长准则。以相对深度D作为判断依据,D((x,y))表示点(x,y)处的深度值,则相对深度为D=[max(D((xj,yj))-min(D((xj,yj))]/2。当子点的深度小于相对深度时,符合生长规则,合并像素区域,种子点从堆栈V中出栈,子点压入堆栈,继续循环。
最后,确定生长停止条件。因为种子点在计算过程中存储在堆栈V中,所以停止条件为堆栈内元素数目为空。当符合生长停止条件后,生长区域的生长停止,所生长出来的区域即为最终获得深度图的边缘信息。
本实施例的对整个SLAM系统分为三个线程,其中第一与第二线程并行计算,第三线程顺序执行。第一线程为对RGB图像进行特征提取,计算特征点的光流信息,这样仅计算特征点的光流场可大大减少追踪所有像素点时的计算时间;第二线程为采用Mask-RCNN深度神经网络实时语义分割,通过光流信息估计的动态特征点与像素级别的语义信息相互结合可计算物体动态信息;第三线程则根据动态语义信息不考虑动态特征点,保留静态特征点估计相机位姿,语义与深度在位姿下联合,最终得到动态环境下语义地图。
本实施例方法采用深度学习与光流相互结合的方法建立语义地图且在彩色图的基础上增加深度图,赋予系统建立稠密三维点云语义地图的能力。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明技术原理的前提下,还可以做出若干改进和变形,这些改进和变形也应视为本发明的保护范围。
Claims (8)
1.一种基于实例分割的语义SLAM鲁棒性改进方法,其特征在于,包括以下步骤:
使用RGB-D摄像头获取RGB彩色图以及深度图,整个方法使用三路分支并行处理,通过分支三对深度图进行处理,通过分支一和分支二对RGB彩色图进行处理,其中分支一将采集到的RGB彩色图数据样本按一定比例进行划分为训练集、验证集和测试集,分支二将全部RGB彩色图数据用于ORB特征提取并辅助光流计算;
在分支一中,对RGB彩色图的处理,将RGB彩色图划分后的训练集送入实例分割卷积神经网络训练并在验证集上验证效果后得到最终网络模型参数,在测试集上进行泛化能力的测试后获得实例分割结果,即语义信息;在实例分割的同时,在分支二中,对RGB彩色图中所有数据进行ORB特征提取并辅助光流计算,得到表示运动的光流信息,并用所得到的光流信息来估计处于运动状态的特征点,即动态特征点;
将动态特征点筛选出来后,使用ORB特征中的静态特征点进行位姿的计算,获得实时运动轨迹;
得到实例分割出来的语义信息之后,通过在深度图中计算边缘信息,再将实例分割的语义信息扩展到深度图完成点云构建中的语义与深度图的匹配,从而获得语义地图;
将实时运动轨迹和语义地图同步输出,得到最终的带有语义信息的实时定位与地图构建(Simultaneous localization and mapping,SLAM)。
2.根据权利要求1所述的一种基于实例分割的语义SLAM鲁棒性改进方法,其特征在于,在分支一中,采用MS COCO数据集对实例分割卷积神经网络预训练,MS COCO数据集包含91种不同物体,经过预训练之后,采用TUM(Technical University of Munich)的室内数据集对实例分割卷积神经网络进行二次训练,TUM数据集包含彩色三通道图片与深度图,因仅彩色图片具有语义信息,所以实例分割卷积神经网络的输入端是将原始图片裁剪到640×480×3大小的彩色三通道图片。
3.根据权利要求2所述的一种基于实例分割的语义SLAM鲁棒性改进方法,其特征在于,所述实例分割卷积神经网络采用Mask-RCNN网络作为主要框架,为适应语义信息的提取,对Mask-RCNN网络结构进行如下修改:基础网络采用Res-Net50结构;由于已经预训练,在二次训练的时候从第4层开始修改权重,实例数量设定为TUM数据集中潜在动态或常见物体共7种,并对物体进行颜色标记,Mask-RCNN网络的输出分为四部分:物体类别、置信度、包围框的位置及大小、物体的掩膜位置向量。
4.根据权利要求3所述的一种基于实例分割的语义SLAM鲁棒性改进方法,其特征在于,
Mask-RCNN神经网络结构设计为:Mask-RCNN神经网络的第一层设计为原始Faster-RCNN的结构,用于对候选窗口进行分类和感兴趣区域(region of interest,RoI)坐标回归,在最后一层卷积特征图上,通过候选区域提取网络RPN生成ROI,每张图片固定n个建议窗口;第二层则利用全卷积网络结构对每一个感兴趣区域预测二值分割掩模,生成语义信息并通过候选区域对齐网络(RoIAlign层)使得每个建议窗口生成固定大小的特征图;
Mask-RCNN神经网络得到三个输出向量,第一个是softmax分类,第二个是每一类的bounding box回归,第三个是每一个ROI的二进制掩码Mask,通过这三个输出向量,从而得到实例分割的结果。
5.根据权利要求1所述的一种基于实例分割的语义SLAM鲁棒性改进方法,其特征在于,用所得到的光流信息来估计处于运动状态的特征点,即动态特征点,具体步骤为:
由灰度不变假设可知:
其中,Ii为像素点xi,yi处的灰度,ti代表时间变量,令代表xi方向上的灰度梯度;代表yi方向上的灰度梯度;代表灰度对时间的偏导数;代表xi方向上的运动速度;代表yi方向上的运动速度,则公式(1)变为:
公式(2)未知数数量大于方程数量,为正确求解,假设xi,yi附近具有相似的运动速度,取7×7区域内点进行计算,构建超定线性方程:
由最小二乘解法得到:
其中,AT为矩阵A的转置矩阵;
设[Eu Ev]T为背景运动速度,
其中,m表示累加所有maski的值为背景的特征点,uj、vj分别表示第j个像素点x方向和y方向的速度;
得到背景运动速度后,利用背景运动速度[Eu Ev]T和特征点计算出来的实际运动速度{uk,vk}来完成动态特征点的筛选,其关系满足以下方程:
[(uk-Eu)2+(vk-Eu)2]1/2>ε
其中,ε为阈值,在具有相同语义信息的特征点数目大于一定阈值时即可认为这些具有相同语义信息的特征点为动态特征点。
6.根据权利要求1所述的一种基于实例分割的语义SLAM鲁棒性改进方法,其特征在于,所述使用ORB特征中的静态特征点进行位姿的计算,获得实时运动轨迹,具体为:
将动态特征点筛选出来后,剩下的即为静态特征点,在位姿计算时仅使用静态特征点,设筛选后符合条件的静态特征点Pl为{u,v},其三维坐标为{Xl,Yl,Zl},由几何投影关系得:
其中,K为相机内参矩阵,R为旋转矩阵,s为尺度大小,t为平移矩阵;
将相机的运动位姿(R,t)用李群李代数表示为exp(ξ^),则公式(3)写成矩阵形式就为:
siai=Kexp(ξ^)Pi
其中,ai表示像素坐标矩阵,Pi表示三维空间点坐标矩阵,si表示距离深度的尺度大小;
由最小化重投影误差对相邻关键帧所有特征点构建最小二乘问题:
ξ*即为所求位姿,n表示所有静态特征点的个数,位姿可由非线性优化算法求出。
7.根据权利要求1所述的一种基于实例分割的语义SLAM鲁棒性改进方法,其特征在于,所述按一定比例进行划分为训练集、验证集和测试集中的比例为6:1:3。
8.根据权利要求1所述的一种基于实例分割的语义SLAM鲁棒性改进方法,其特征在于,所述通过在深度图中计算边缘信息,采用区域生长法对深度图进行边缘检测。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010336144.XA CN111581313B (zh) | 2020-04-25 | 2020-04-25 | 一种基于实例分割的语义slam鲁棒性改进方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010336144.XA CN111581313B (zh) | 2020-04-25 | 2020-04-25 | 一种基于实例分割的语义slam鲁棒性改进方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111581313A CN111581313A (zh) | 2020-08-25 |
CN111581313B true CN111581313B (zh) | 2023-05-23 |
Family
ID=72115575
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010336144.XA Active CN111581313B (zh) | 2020-04-25 | 2020-04-25 | 一种基于实例分割的语义slam鲁棒性改进方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111581313B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112258618B (zh) * | 2020-11-04 | 2021-05-14 | 中国科学院空天信息创新研究院 | 基于先验激光点云与深度图融合的语义建图与定位方法 |
CN112308921B (zh) * | 2020-11-09 | 2024-01-12 | 重庆大学 | 一种基于语义和几何的联合优化动态slam方法 |
CN112446885B (zh) * | 2020-11-27 | 2024-10-15 | 广东电网有限责任公司肇庆供电局 | 一种动态环境下基于改进的语义光流法的slam方法 |
CN113343976B (zh) * | 2021-05-13 | 2022-10-04 | 武汉大学 | 基于颜色-边缘融合特征生长的抗高光干扰工程测量标志提取方法 |
CN114239736A (zh) * | 2021-12-21 | 2022-03-25 | 北京地平线信息技术有限公司 | 光流估计模型的训练方法和装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108596974A (zh) * | 2018-04-04 | 2018-09-28 | 清华大学 | 动态场景机器人定位建图系统及方法 |
CN109636905A (zh) * | 2018-12-07 | 2019-04-16 | 东北大学 | 基于深度卷积神经网络的环境语义建图方法 |
CN109816686A (zh) * | 2019-01-15 | 2019-05-28 | 山东大学 | 基于物体实例匹配的机器人语义slam方法、处理器及机器人 |
CN110738673A (zh) * | 2019-10-21 | 2020-01-31 | 哈尔滨理工大学 | 基于实例分割的视觉slam方法 |
-
2020
- 2020-04-25 CN CN202010336144.XA patent/CN111581313B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108596974A (zh) * | 2018-04-04 | 2018-09-28 | 清华大学 | 动态场景机器人定位建图系统及方法 |
CN109636905A (zh) * | 2018-12-07 | 2019-04-16 | 东北大学 | 基于深度卷积神经网络的环境语义建图方法 |
CN109816686A (zh) * | 2019-01-15 | 2019-05-28 | 山东大学 | 基于物体实例匹配的机器人语义slam方法、处理器及机器人 |
CN110738673A (zh) * | 2019-10-21 | 2020-01-31 | 哈尔滨理工大学 | 基于实例分割的视觉slam方法 |
Also Published As
Publication number | Publication date |
---|---|
CN111581313A (zh) | 2020-08-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111581313B (zh) | 一种基于实例分割的语义slam鲁棒性改进方法 | |
CN111898507B (zh) | 一种预测无标签遥感影像地表覆盖类别的深度学习方法 | |
US11971726B2 (en) | Method of constructing indoor two-dimensional semantic map with wall corner as critical feature based on robot platform | |
CN111563442B (zh) | 基于激光雷达的点云和相机图像数据融合的slam方法及系统 | |
CN111462135B (zh) | 基于视觉slam与二维语义分割的语义建图方法 | |
CN113516664B (zh) | 一种基于语义分割动态点的视觉slam方法 | |
CN113139453B (zh) | 一种基于深度学习的正射影像高层建筑基底矢量提取方法 | |
CN112132897A (zh) | 一种基于深度学习之语义分割的视觉slam方法 | |
CN110738673A (zh) | 基于实例分割的视觉slam方法 | |
CN113076871B (zh) | 一种基于目标遮挡补偿的鱼群自动检测方法 | |
CN110688905B (zh) | 一种基于关键帧的三维物体检测与跟踪方法 | |
CN112991413A (zh) | 自监督深度估测方法和系统 | |
CN109815847B (zh) | 一种基于语义约束的视觉slam方法 | |
CN111914698B (zh) | 图像中人体的分割方法、分割系统、电子设备及存储介质 | |
CN109726627A (zh) | 一种神经网络模型训练及通用接地线的检测方法 | |
JP7439153B2 (ja) | 全方位場所認識のためのリフトされたセマンティックグラフ埋め込み | |
Ding et al. | Vehicle pose and shape estimation through multiple monocular vision | |
CN109035300B (zh) | 一种基于深度特征与平均峰值相关能量的目标跟踪方法 | |
CN114677323A (zh) | 一种室内动态场景下基于目标检测的语义视觉slam定位方法 | |
CN114565675A (zh) | 一种在视觉slam前端去除动态特征点的方法 | |
CN117274515A (zh) | 基于ORB和NeRF映射的视觉SLAM方法及系统 | |
CN117541652A (zh) | 一种基于深度lk光流法与d-prosac采样策略的动态slam方法 | |
CN113436251B (zh) | 一种基于改进的yolo6d算法的位姿估计系统及方法 | |
Lai et al. | 3D semantic map construction system based on visual SLAM and CNNs | |
He et al. | Building extraction based on U-net and conditional random fields |
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 |