CN111798475B - 一种基于点云深度学习的室内环境3d语义地图构建方法 - Google Patents

一种基于点云深度学习的室内环境3d语义地图构建方法 Download PDF

Info

Publication number
CN111798475B
CN111798475B CN202010477740.XA CN202010477740A CN111798475B CN 111798475 B CN111798475 B CN 111798475B CN 202010477740 A CN202010477740 A CN 202010477740A CN 111798475 B CN111798475 B CN 111798475B
Authority
CN
China
Prior art keywords
semantic
point cloud
map
dynamic
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
Application number
CN202010477740.XA
Other languages
English (en)
Other versions
CN111798475A (zh
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.)
Zhejiang University of Technology ZJUT
Original Assignee
Zhejiang University of Technology ZJUT
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 Zhejiang University of Technology ZJUT filed Critical Zhejiang University of Technology ZJUT
Priority to CN202010477740.XA priority Critical patent/CN111798475B/zh
Publication of CN111798475A publication Critical patent/CN111798475A/zh
Application granted granted Critical
Publication of CN111798475B publication Critical patent/CN111798475B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/13Edge detection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/29Geographical information databases
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/11Region-based segmentation
    • 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/10028Range image; Depth image; 3D point clouds
    • 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/20016Hierarchical, coarse-to-fine, multiscale or multiresolution image processing; Pyramid transform

Abstract

本发明涉及一种基于点云深度学习的室内环境3D语义地图构建方法,包括以下四部分:(1)使用深度相机获取室内环境的彩色图和深度图;(2)构建点云深度学习网络获取环境中物体的3D语义信息;(3)动态物体的检测与动态特征点的剔除;(4)求解相机运动实现视觉里程计,构建并优化局部地图;(5)通过得到的3D点云语义信息构建目标语义库;(6)根据目标语义库对局部地图进行语义融合,构建八叉树语义地图。与现有方法相比,本发明不仅通过结合语义类别信息剔除了动态物体掩码中的特征点,有效减少了动态物体对定位和建图的影响,而且使用的3D语义获取方式更为直接高效,具有更好的定位建图能力以及语义感知效果。

Description

一种基于点云深度学习的室内环境3D语义地图构建方法
技术领域
本发明属于计算机视觉技术在移动机器人领域的应用,具体涉及一种基于点云深度学习的室内环境3D语义地图构建方法。
背景技术
同时定位和地图构建(Simultaneous Localization and Mapping,SLAM)算法是基于传感器数据信息同时实现传感器自身位姿估计和环境地图构建的过程,是移动机器人和无人驾驶汽车在未知环境中实现完全自主导航的关键技术。依照传感器的种类不同,SLAM分为基于激光的SLAM和基于视觉的SLAM两大类,其中基于激光传感器的SLAM研究较早,理论和技术相对成熟,然而高精度的激光传感器价格昂贵,性价比较低。以摄像机作为传感器的SLAM方案被称作视觉SLAM(Vision-based SLAM,VSLAM)。传统的视觉SLAM重在几何的定位和建图,具有高性价比的优势,但还没有感知环境的语义信息。因此,在其基础上,能够构建具有语义信息地图的语义SLAM是目前工业界重要研发方向。
语义SLAM的研发尚处于起步阶段,目前发表的论文和公开的专利主要是基于2D图像的目标检测或语义分割来得到环境的语义信息,然后将获得的语义信息映射到聚类分割出的3D点云团,从而间接得到对应帧的3D点云语义信息。这种获取目标语义信息的方式不是基于对原生3D点云的直接特征提取,存在处理方式不直接、语义效果不佳、深度信息不充分、3D边缘分割模糊等问题。另外,传统的视觉SLAM和现有语义SLAM方案主要局限于对静态环境的处理,无法很好地应用于复杂动态场景。
Sünderhauf等人于2016年提出了面向物体对象的语义建图方法,利用ORB-SLAM2和SSD通过最近邻的方法进行语义数据融合来实现语义地图的构建(见Sünderhauf N,PhamT,Latif Y,et al.Meaningful maps Object-oriented semantic mapping[C].//International Conference on Intelligent Robots and Systems.USA:IEEE,2016:1609-7849)。此外,还有研究人员利用目标检测算法YOLO结合ORB-SLAM算法构建语义地图(见白云汉.基于SLAM算法和深度神经网络的语义地图构建研究[J].计算机应用与软件,2018,35(01):183-190)。以上语义地图构建方法都依赖于在2D的图像数据上用卷积神经网络进行语义分割,并非对深度传感器得到的原始3D点云数据进行直接学习然后融合到SLAM系统中实现3D语义地图构建,所以构建出的语义地图对于环境信息的表达能力是有限的,在室内建图导航等应用场景中的应用还是有一定的局限性。
申请号为201811089153.2的专利公开了一种识别目标的坐标系定位和语义地图构建的方法及系统。该方法通过对作为目标物体的特征物体,将其目标检测2D框与采集的对应点云数据融合,对目标物体在世界坐标系下进行三维定位,基于上述定位方法进行栅格-语义地图的构建。但该方法仍然依赖2D语义分割网络来得到3D点云语义信息,且只适用于静态环境下的栅格语义地图构建,若存在动态物体,则会极大的影响地图构建的精度。申请号为201910408713.4的专利公开了一种基于深度学习的室内环境3D语义地图构建方法。该发明用训练好的基于RGB-D图像的语义分割网络对当前获取的RGB-D图像进行特征提取与处理,然后用关键帧构建点云地图,并将新获取图像帧对应点云与已构建的点云地图进行融合,将像关键帧的语义标注结果映射到对应点云地图上构建3D语义地图。该发明在语义获取方式上也是基于2D的语义分割网络,且适用于静态环境的语义地图构建,另外构建的3D语义地图是点云形式的语义地图,非拓扑结构的点云语义地图不能直接用于机器人在室内的定位导航和避障等功能。
Qi等人提出的点云深度学习网络PointNet(见Qi C R,Su H,Kaichun M,etal.PointNet:deep learning on point sets for 3D classification andsegmentation[C].//International Conference on Computer Vision and PatternRecognition.Honolulu:IEEE Computer Society Press,2017:77-85.)。开创性的直接在非结构化的点云数据上进行特征学习,得到3D点云的语义信息,为直接利用3D语义信息融合构建室内环境语义地图提供了技术可能。
发明内容
为了解决现有视觉SLAM地图构建方法存在的对动态场景适应性差、无语义感知能力或语义获取方式复杂不直接、构建出的点云地图占用存储空间巨大、非拓扑地图结构不能够直接用于导航避障等问题,本发明提供了一种基于点云深度学习的室内环境3D语义地图构建方法,所述方法包括以下步骤:
(1)使用深度相机获取室内环境的彩色图像和深度图像;
(2)构建点云深度学习网络获取环境中物体的3D语义信息;
构建点云深度学习网络,对从深度相机获取的彩色图像帧对应的点云帧进行语义分割,得到环境的点云语义信息。所述的点云深度学习网络设计如下:
(2-1)将点云深度学习网络PointNet中通过多层感知器(Multi-LayerPerceptron,MLP)模块对点云进行特征提取的方法改为通过构造动态图卷积模块提取特征的方法。
把数据构造成有边和顶点的图,然后在图上进行卷积的操作被称为图卷积。本发明的图卷积是基于空间的图卷积,通过选取k个近邻点把点云数构造为有边和顶点的图,k取值范围为[10,50],然后在图上进行卷积,学习选取的顶点与其相邻点之间组成的边的关系来获得点云局部特征。图卷积是动态不固定的,一个点的k个近邻点的选取对象随着网络层和特征的不同而变化,使得每一层图的参数也随着层的不同而动态更新,从而构成了动态的图卷积网络。
点云的维度可以是3维、6维、9维等,用D表示点云的维度。对于一帧点数为n、维度为D的点云,可以表示为式(1),RD表示D维度的点云在实数域的集合。
点云中的第i个点xi可以分别用式(2)-(4)表示,其中当D=3时,表示网络输入具有u、v、w三个坐标维度的点云,用式(2)表示;D=6时,表示网络输入带有r、g、b信息的彩色点云,用式(3)表示;D=9表示输入带有曲面法向量α,β,γ的点云,用式(4)表示。
xi=(ui,vi,wi) (2)
xi=(ui,vi,wi,ri,gi,bi) (3)
xi=(ui,vi,wi,ri,gi,biiii) (4)
从第l层的D维度的点云特征中选取的第i个顶点与其kl个近邻点经过图卷积学习边缘特征,并经过聚合操作∑,得到的第(l+1)层的D维度的特征输出/>可以用式(5)表示。其中,/>表示第i个顶点/>的近邻点,ε (l)代表/>和/>构成的顶点和近邻点的集合,hΘ是被可学习的参数Θ集合参数化的一系列非线性函数,/>表示在第l层上的特征学习过程RD(l)×RD(l)→RD(l+1)
(2-2)使用多窗口和窗口步长的空间金字塔池化结构对学习的点云特征分空间层次地进行多尺度池化;空间金字塔池化结构式如式(2)所示:
其中空间金字塔池化窗口类型包括N、N/4、N/8、N/16,对应点云特征的不同空间层次,其中N为输入的点云个数,f代表通过图卷积网络学习得到的特征信息,sn表示第n个池化窗口的尺寸,g代表池化操作,多个不同的池化窗口组合构成了空间金子塔池化结构,c代表将空间金字塔池化得到的多尺度特征进行聚合,经过多层全连接神经网络mlp进行上采样,得到点云中N个点的每个点的特征F(x1,…,xN)。
(3)利用3D语义信息、结合基于三维的多视角几何动静点检测算法进行动态物体的检测,剔除动态特征点;
本发明使用步骤(2)得到的物体语义信息对动态物体进行初步的预筛选,结合基于三维的多视角几何动静点检测方法再次检测是否存在动态特征点,最后去除动态特征点信息,具体步骤如下:
(3-1)利用步骤(2)得到的环境点云语义信息预筛选可能存在的先验动态物体。
(3-2)使用基于三维的多视角几何动静点检测方法检测是否存在动态的特征点,基于三维的多视角几何动静点检测方法引自"DynaSLAM:Tracking,Mapping andInpainting inDynamic Scenes"。
将构建的局部地图中的点投影到当前相机视角下,测量当前帧深度值d'和投影的深度值d差值绝对值diff,若diff大于阈值TH,说明是有动态物体遮挡了当前场景的部分视野,则判定被遮挡场景前方物体即为动态物体。室内环境中阈值TH取值范围为[0.3,1],单位米。
(3-3)输出动态物体信息,剔除动态物体中的动态特征点;动态物体信息包括区域位置和对应的特征点信息。
(4)求解相机运动,实现视觉里程计,构建并优化局部地图。
具体步骤如下:
(4-1)对已剔除动态特征点的参考帧和当前帧进行特征匹配,建立帧间几何约束关系求解相机运动,跟踪视觉里程计并生成局部地图,不断选取新的关键帧。若相机跟踪丢失,则进行位姿重定位。
(4-2)基于ORB-SLAM2算法,插入新关键帧、剔除冗余地图点、更新创建新的地图点,利用光束平差法(Bundle Adjustment,BA)进行局部地图的相机位姿优化,构建更新局部地图。
(5)通过得到的3D点云语义信息构建目标语义库,具体步骤如下:
(5-1)通过语义分割得到的当前点云帧的语义信息,初始化构建包含RGB-D图像、3D包围框、ORB特征点、物体类别和类别概率的语义库。
(5-2)对当前点云关键帧进行语义分割,并在语义库中按照物体类别查找是否存在同类别的语义信息。
(5-3)若语义库中无与目标物体对应的物体类别信息,说明是初次检测到该物体,则将目标物体添加到语义库中。
(5-4)若在超过连续N帧中检测到相同的语义类别,N设为5,即在语义库中找到同类别物体,计算新检测到的物体3D包围框中心与已有同类别所有物体3D包围框中心的欧氏距离,找到距离最小的物体中心坐标,根据位置信息判断是否是同一物体。若是同一个物体信息,说明地图语义库中已存在此目标语义信息,则更新该物体的空间坐标信息,进行新旧物体的地图更新融合。若不是同一个物体,则将此新目标物体加入语义库。
(6)根据目标语义库对局部地图进行语义融合,构建八叉树语义地图,具体步骤如下:
(6-1)在步骤(4)构建的局部地图基础上,使用贝叶斯法则新融合深度相机的观测数据,进行三维占有格概率动态更新,利用步骤(5)得到的目标语义库不断更新对应位置八叉树节点的语义信息,从而实现八叉树地图的语义化。
(6-2)利用光束平差法对构建的八叉树地图进行局部的相机位姿优化和地图配准对齐;然后经过闭环优化模块,用光束平差法对全局地图进行相机位姿和空间点位置的集束调整优化。
与现有技术相比,本发明具有以下有益效果:
本发明针对ORB-SALM2的定位与建图受环境中动态物体影响的问题,设计了基于3D目标语义分割和三维视觉的多视角几何动静点检测算法相结合的动态物体检测方法,剔除了动态物体掩码中的特征点,然后进行帧间位姿估计和重定位,求解相机运动,减少了动态物体对定位和建图的影响。现有的视觉语义地图构建方法中,3D语义信息获取技术基本停留在通过2D图像的目标检测和语义分割再映射到分割出的点云团上的不足。本发明设计基于动态图卷积和空间金字塔池化的3D点云深度学习网络,在语义地图构建系统中通过直接对3D点云进行语义分割获取目标点云的语义信息的方法,简化了语义的获取流程;构建语义库,设计语义数据关联与融合算法,利用贝叶斯传感器信息融合概率模型进行深度相机的观测数据和地图的融合更新,从而实现了可用于实际导航的八叉树语义地图。
附图说明
图1本发明流程框图。
图2为语义地图构建系统总体框架图。
图3为语义地图构建技术细节示意图。
图4为点云语义分割网络结构图。
图5为基于k-NN的GraphConv示意图。
图6为点云空间金字塔池化模型图。
图7为动态物体检测流程图。
图8为基于三维的多视角几合动态点检测示意图。
图9为语义库结构图。
图10为语义库构建流程图。
图11为八叉树结构图。
具体实施方式
下面结合实施例和附图来详细描述本发明,但本发明并不仅限于此。
整个方法系统运行所需的硬件环境为Kinect2.0深度传感器、CPU i7-8700k以及GPU为GTX1080Ti的服务器;软件环境为Ubuntu16.04Linux操作系统、ROS机器人开发环境、ORB-SLAM2开源框架、OpenCV开源视觉库、以及CUDA、cuDNN、Tensorflow等为3D目标检测服务的深度学习环境。另外还有必备的DBoW2视觉词典库、地图显示库Pangolin、图优化库g2o等第三方依赖库。
如图1所示,一种基于点云深度学习的室内环境3D语义地图构建方法,主要实施包含以下几个步骤:
(1)使用深度相机获取环境的彩色图像和深度图像;
(2)构建点云深度学习网络获取环境中物体的3D语义信息;
(3)动态物体的检测与动态特征点的剔除;
(4)求解相机运动,实现视觉里程计,构建并优化局部地图;
(5)通过得到的3D语义信息构建目标语义库;
(6)根据目标语义库对局部地图进行语义融合,构建八叉树语义地图。
如图2所示为语义地图构建系统总体框架图,选择基于3D点云深度学习的语义分割网络与ORB-SLAM2视觉地图构建系统相结合,设计了一种基于点云深度学习的室内环境3D语义地图构建方法和系统。如图3所示为更详细的3D点云语义分割网络和改进的ORB-SLAM2进行语义融合的语义地图构建技术细节示意图。
一种基于点云深度学习的室内环境3D语义地图构建方法,实施步骤(1)具体包括:
对Kinect2.0深度相机进行标定,主要分四个部分:彩色图像标定、红外标定、sync帧同步、深度图像标定。然后在Linux环境ROS机器人操作系统下在室内采集色度空间格式为RGB的原始图像和对应的深度图像帧,以及对应的点云帧。
步骤(2)构建点云深度学习网络获取环境中物体的3D语义信息,具体实施步骤如下;
(2-1)将点云深度学习网络PointNet中通过MLP模块对点云进行特征提取的方法改为通过构造动态图卷积提取特征的方法,图的参数随着网络层的不同进行动态更新。
点云语义分割网络结构图如图4所示,点云深度学习网络首先采用动态图卷积结构(GraphConv)替换PointNet网络中用多层感知机构造的特征提取结构,GraphConv示意图如图5所示。N为采样点的个数,D为每个点的数据维度,D=3代表输入三维的点云数据。输入N×D维的点云经过可训练的空间转换网络Spatial T-Net。输入点云经Spatial T-Net网络训练得到的空间转换矩阵进行坐标对齐,然后输入到GraphConv中提取特征。其中k-NNgraph表示用k近邻点选取图的范围,mlp(L1,L2,…,Ln)代表具有n个共享权值的MLP层,用来提取经过k-NN图结构的边缘信息,经过多层图卷积进行特征提取后得到N×k×Ln维度的特征信息。再将此特征信息经过PSPP进行多尺度池化,使其既包含多尺度的局部区域特征又包含全局特征,用于后续的分割网络。分割网络将经金字塔池化得到的特征与低维度的特征进行融合后再输入全连接层,用来得到每个点的标签分类,实现语义分割。分割网络输出点云中每一点所属m个类别的得分情况。
在图5中,首先,对于一个点的个数为n,维度为D的点云,用式(1)表示:
用一个有向图来代表局部点云结构,有向图用式(2)表示,其中V={1,…n}代表图结构的顶点,表示图结构的边。
G=(V,E) (2)
通过k-NN图的形式在每一层的点云RD中构建图结构G。对于点xi,找到其k个近邻点用xji1,…,xjik表示,其中xi与邻近点之间的定向边为(i,ji1),…,(i,jik)。定义边的特征为式(3),其中hΘ是被可学习的参数Θ的集合参数化的一系列非线性函数,用来完成RD×RD→RD′的特征学习。类比图像中的卷积运算,可以把顶点xi看作做中心像素,只不过此处的xi是三维的,捕获所有的xi就构成了点云全局信息。{xj:(i,j)∈E}是环绕在xi周围的点云块,xj-xi代表xi与其邻近点xj构成的局部信息。简言之,输入具有N个点的D维点云通过图卷积后输出具有D′维点云特征的N个点。
eij=hΘ(xi,xj) (3)
对于选定顶点xi,以k近邻的方式选择xi的k个邻近点,k取值范围为[10,50],本发明中当k=30时语义分割效果最佳。如图5中仅以k=5为例进行示图展示,邻近点在图5中以黄色表示,分别为xji1,xji2,xji3,xji4,xji5。第二步,通过GraphConv学习得到顶点和邻近点之间的边特征,边特征用eij表示,最后将得到的所有边特征聚合起来。
图卷积是动态不固定的,一个点的k近邻点在不同的网络层中是随着特征情况变化的,k近邻点的变化使得每一层的图的参数也随着层的不同而进行动态更新,构成了动态的图卷积网络。对于第l层的输出可以表示为式(4):
原始的点云输入可以表示为X(0)。每一层都对应一个不同的图,用式(5)表示:
G=(V(l),E(l)) (5)
因此,从第l层的D维度的点云特征中选取的第i个顶点与其kl个近邻点经过图卷积学习边缘特征,并经过聚合操作∑,得到的第(l+1)层的D维度的特征输出/>可以用式(6)表示。其中,/>表示第i个顶点/>的近邻点,ε (l)代表/>和/>构成的顶点和近邻点的集合,hΘ是被可学习的参数Θ集合参数化的一系列非线性函数,/>表示在第l层上的特征学习过程RD(l)×RD(l)→RD(l+1)。这样,图卷积不仅学会了如何提取局部几何特征,而且学会了如何在点云中对点进行分组。
本发明中,局部特征本身没有限定,指的就是局部区域特征,即一帧点云中的局部点特征以及这些特征之间的内在特征联系。
(2-2)通过多窗口和窗口步长的点云空间金字塔池化(PSPP)结构,如图6所示,对学习的点云特征分空间层次地进行多尺度池化,改进了PointNet网络中对称函数Maxpooling模块单一池化窗口的不足。空间金字塔池化结构的数学表达如式(7)所示:
其中N为输入的点云个数,f代表通过图卷积网络学习得到的特征信息,sn表示第n个池化窗口的尺寸,g代表池化操作,多个不同的池化窗口组合构成了空间金子塔池化结构,c代表将空间金字塔池化得到的多尺度特征进行聚合,经过多层全连接神经网络mlp进行上采样,得到点云中N个点的每个点的特征F(x1,…,xN)。
具体的,语义分割网络在部件分割数据集ShapeNet上参数设置为网络输入点个数N为2048、构造图卷积结构k近邻点个数为30、空间金字塔池化窗口类型为N,N/4,N/8,N/16的组合学习率为0.001、权重衰减为1e-4、动量值0.9、Batch Size为16、Epoch为200;在场景语义分割数据集S3DIS上的参数为输入点个数4096、构造图卷积结构k近邻点个数为30、空间金字塔池化窗口类型为(N,N/4,N/8,N/16)、学习率为0.001、权重衰减为1e-5、动量值0.9、Batch Size为24、Epoch为60。
然后对ORB-SLAM2进行改进,求解相机运动前,先剔除动态的ORB特征信息,再进行特征匹配,建立帧间几何约束关系求解相机运动,估计帧间位姿与重定位,进行视觉里程计的跟踪和建图。具体实施为步骤(3)和步骤(4)。
步骤(3)动态物体的检测与动态特征点的剔除如图7所示,具体包括:
(3-1)利用步骤(2)得到的环境点云语义信息,预筛选可能存在的先验动态物体,如人等,对于筛选到的动态物体的特征点,在后续的处理中进行剔除,不采用动态物体的特征点求相机的运动。
(3-2)使用基于三维的多视角几何动静点检测方法检测是否存在动态的特征点,避免了步骤(3-1)中将坐着的人检测为动态物体,同时避免对非先验动态物体的检测遗漏,如手持移动的杯子。
如图8基于三维的多视角几何动态点检测示意图:左图所示为无动态遮挡物体下的局部地图示意图,三角形表示参考帧的局部地图点,根据参考帧和当前帧求得的位姿关系,可将局部地图点反投影到当前帧下,没有动态物体出现时,投影点的参考帧投影深度值d和当前帧的测量值d'差接近,但是在右图所示有动态物体遮挡的情况下,测量深度必定小于投影深度,则将对应的点标记为动态点。
具体的,将构建的局部地图中的点投影到当前相机视角下,测量当前帧深度值d'和投影的深度值d的差值d-d',若差值大于阈值TH,说明很可能是有动态物体遮挡了当前场景的部分视野,则判定被遮挡场景前方物体即为动态物体。室内环境中,阈值TH取值范围为[0.3,1],单位米。
(3-3)输出动态物体信息,剔除动态物体对应的动态特征点。根据(3-1)找出先验动态对象,根据步骤(3-2)确定是否存在动态特征点,若存在,则找出这些动态对象的特征点信息,然后剔除运动物体掩码内的特征点,实现动态特征点的剔除。动态物体信息包括区域位置和对应的特征点信息。
步骤(4)具体包括:
(4-1)首先利用ORB特征提取算法提取图像特征信息,接着对去除动态特征点的参考帧和当前帧进行特征匹配,建立帧间几何约束关系求解相机运动,然后跟踪视觉里程计生成局部地图,不断选取新的关键帧。若相机跟踪丢失,则进行位姿重定位。
(4-2)基于ORB-SLAM2算法,插入新关键帧、剔除冗余地图点、更新创建新的地图点,利用光束平差法进行局部地图的相机位姿优化,构建更新局部地图。
步骤(5)通过得到的3D点云语义信息构建目标语义库,语义库结构如图9所示,包含的信息有RGB-D图像、3D包围框、ORB特征点、物体类别和类别概率。具体构建流程如图10所示,步骤如下:
(5-1)根据分割得到的语义信息,初始化构建包含RGB-D图像、3D包围框、ORB特征点、物体类别和类别概率的语义库。
(5-2)对当前点云关键帧进行语义分割,得到3D语义信息,并在语义库中按照物体类别查找是否存在同类别的语义信息;
(5-3)若语义库中无与目标物体对应的物体类别信息,说明是初次检测到该物体,则添加到语义库中;
(5-4)若在超过连续帧N中检测到相同的语义类别,设定N为5,即在语义库中找到同类别物体,则计算新检测到的目标3D包围框中心与已有同类别所有物体3D包围框中心的欧氏距离,找到距离最小物体的中心坐标,根据位置信息判断是否是同一物体。若是同一个物体信息,说明地图语义库中已存在此目标语义信息,则更新该物体的空间坐标信息,进行新旧物体的地图更新融合。若不是同一个物体,则将此新物体加入语义库。
(5-3)中判断的是没有出现此类别时加入语义库,(5-4)则是已经出现同类别后的处理,当存在同一语义类别的不同物体时就要更新到语义库中,为下一步更新到地图中做准备。
步骤(6)根据目标语义库和局部地图进行语义融合,构建八叉树语义地图。具体包括:
(6-1)在步骤(4)构建的局部地图基础上,根据贝叶斯法则更新融合深度相机观测数据,进行三维占有格概率动态更新,利用步骤(5)得到的目标语义库不断更新对应位置八叉树节点的语义信息,实现了八叉树地图的语义化。
八叉树结构图如图11所示,八叉树的每个节点都存储着对应空间块的占据信息,也保存了描述一个节点占据程度的空间占有率。当最开始地图是空白的时候,仅需要一个根节点来表示此空白地图,不需要完整的树即可。假设0表示节点是无占据的空白状态,1表示完全占据装状态,用0到1之间的浮点数x作为概率值,表示节点的增大或减小,此浮点型概率值可用一个比特来存储,节省空间。作为概率值,需要对x进行对数变换,避免x超出0到1的范围。假设y∈R为概率对数值,表示一个节点是否被占据。x∈[0,1],为被占据概率值。其变换和反变换公式分别如下式(8)、(9)所示:
根据贝叶斯法则更新融合传感器数据的过程,对n节点,观测数据为z,那么从初始时刻到T时刻某节点的概率对数值为L(n|z 1:T),那么T+1时刻为:
L(n|z1:T+1)=L(n|z1:T-1)+L(n|zT) (10)
则第n个节点的占据概率公式为:
节点的先验概率用P(n)表示,第n个节点基于T时刻的后验概率用P(n|zT)表示,z1:T为1到T时间段的观测集合,P(n|z1:T)为第n个节点在1到T时间段观测集合的后验概率。根据上述概率更新公式,可以构建并更新基于八叉树的三维栅格语义地图。
(6-2)利用光束平差法(BA)对构建的八叉树地图进行局部地图的位姿优化和配准对齐;然后经过闭环优化模块,用光束平差法对全局地图进行相机位姿和空间点位置的集束调整优化。

Claims (5)

1.一种基于点云深度学习的室内环境3D语义地图构建方法,其特征在于:所述方法包括以下步骤:
步骤1:使用深度相机获取环境的彩色图像和深度图像;
步骤2:构建点云深度学习网络获取环境中物体的3D语义信息,包括以下子步骤:
步骤2.1:将点云深度学习网络PointNet中通过多层感知器对点云进行特征提取的方法改为通过构造动态图卷积提取特征的方法;所构造的动态图卷积是基于空间的图卷积,通过选取k个近邻点把点云构造为有边和顶点的图,k的取值范围为[10,50],然后在图上进行卷积,学习选取的顶点与其相邻点之间组成的边的关系来获得点云局部特征;
用D表示点云的维度,对于一帧点数为n、维度为D的点云表示为式(1),RD表示D维度的点云在实数域的集合;
点云中的第i个点xi分别用式(2)-(4)表示,其中当D=3时,表示网络输入具有u、v、w三个坐标维度的点云,用式(2)表示;D=6时,表示网络输入带有r、g、b信息的彩色点云,用式(3)表示;D=9表示输入带有曲面法向量α,β,γ的点云,用式(4)表示;
xi=(ui,vi,wi) (2)
xi=(ui,vi,wi,ri,gi,bi) (3)
xi=(ui,vi,wi,ri,gi,biiii) (4)
从第l层的D维度的点云特征中选取的第i个顶点与其kl个近邻点经过图卷积学习边缘特征,并经过聚合操作∑,得到的第(l+1)层的D维度的特征输出/>用式(5)表示;其中,表示第i个顶点/>的近邻点,ε(l)代表/>和/>构成的顶点和近邻点的集合,hΘ是被可学习的参数Θ集合参数化的一系列非线性函数,/>表示在第l层上的特征学习过程RD(l)×RD (l)→RD(l+1)
步骤2.2:使用多窗口和窗口步长的空间金字塔池化结构对学习的点云特征分空间层次地进行多尺度池化;空间金字塔池化结构式如式(6)所示,
空间金字塔池化窗口类型为N、N/4、N/8、N/16的组合,其中N为输入的点云个数,f代表通过图卷积网络学习得到的特征信息,sn表示第n个池化窗口的尺寸,g代表池化操作,多个不同的池化窗口组合构成了空间金子塔池化结构,c代表将空间金字塔池化得到的多尺度特征进行聚合,经过多层全连接神经网络mlp进行上采样,得到点云中N个点的每个点的特征F(x1,…,xN);
步骤3:利用3D语义信息、结合基于三维的多视角几何动静点检测算法进行动态物体的检测,剔除动态特征点;
步骤4:求解相机运动,实现视觉里程计,构建并优化局部地图;
步骤5:通过得到的3D语义信息构建目标语义库;
步骤6:根据目标语义库对局部地图进行语义融合,构建八叉树语义地图。
2.根据权利要求1所述的一种基于点云深度学习的室内环境3D语义地图构建方法,其特征在于:所述步骤3包括以下子步骤:
步骤3.1:利用点云深度学习网络获取的环境点云语义信息预筛选可能存在的先验动态物体;
步骤3.2:使用基于三维的多视角几何动静点检测方法检测是否存在动态的特征点;将构建的局部地图中的点投影到当前相机视角下,测量当前帧深度值d'和投影的深度值d的差值绝对值diff,若diff大于阈值TH,说明是有动态物体遮挡了当前场景的部分视野,则判定被遮挡场景前方物体即为动态物体;室内环境中阈值TH取值范围为[0.3,1],单位米;
步骤3.3:输出动态物体信息,剔除动态物体对应的动态特征点;
所述动态物体信息包括区域位置和对应的特征点信息。
3.根据权利要求1所述的一种基于点云深度学习的室内环境3D语义地图构建方法,其特征在于:所述步骤4包括以下子步骤:
步骤4.1:对已剔除动态特征点的参考帧和当前帧进行特征匹配,估计相机位姿,跟踪视觉里程计并生成局部地图,选取新的关键帧;
步骤4.2:基于ORB-SLAM2算法,插入新关键帧、剔除冗余地图点、更新创建新地图点,利用光束平差法进行局部地图的相机位姿优化,构建更新局部地图。
4.根据权利要求1所述的一种基于点云深度学习的室内环境3D语义地图构建方法,其特征在于:所述步骤5包括以下子步骤:
步骤5.1:通过语义分割得到的当前点云帧的语义信息,初始化构建包含RGB-D图像、3D包围框、ORB特征点、物体类别和类别概率的语义库;
步骤5.2:对当前点云关键帧进行语义分割,并在语义库中按照物体类别查找是否存在同类别的语义信息;
步骤5.3:若语义库中没有与目标物体对应的物体类别信息,则将目标物体添加到语义库中;若在超过连续若干帧中检测到相同的目标语义类别,则计算新检测到的目标物体3D包围框中心坐标与语义库已有同类别所有物体3D包围框中心坐标的欧氏距离,找到距离最小的物体中心坐标,根据位置信息判断是否是同一物体;若是同一物体,则更新该物体的空间坐标信息,若不是同一个物体,则将此新物体加入语义库。
5.根据权利要求4所述的一种基于点云深度学习的室内环境3D语义地图构建方法,其特征在于:所述步骤6包括以下子步骤:
步骤6.1:在步骤4构建的局部地图基础上,根据贝叶斯法则更新融合深度相机观测数据,进行三维占有格概率动态更新,利用步骤5得到的目标语义库不断更新对应位置八叉树节点的语义信息,实现八叉树地图的语义化;
步骤6.2:通过局部优化建图模板对构建的八叉树地图进行局部地图的相机位姿优化和地图配准对齐;然后使用闭环优化模块对全局地图进行相机位姿和空间点位置的集束调整优化。
CN202010477740.XA 2020-05-29 2020-05-29 一种基于点云深度学习的室内环境3d语义地图构建方法 Active CN111798475B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010477740.XA CN111798475B (zh) 2020-05-29 2020-05-29 一种基于点云深度学习的室内环境3d语义地图构建方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010477740.XA CN111798475B (zh) 2020-05-29 2020-05-29 一种基于点云深度学习的室内环境3d语义地图构建方法

Publications (2)

Publication Number Publication Date
CN111798475A CN111798475A (zh) 2020-10-20
CN111798475B true CN111798475B (zh) 2024-03-22

Family

ID=72805972

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010477740.XA Active CN111798475B (zh) 2020-05-29 2020-05-29 一种基于点云深度学习的室内环境3d语义地图构建方法

Country Status (1)

Country Link
CN (1) CN111798475B (zh)

Families Citing this family (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112348921B (zh) * 2020-11-05 2024-03-29 上海汽车集团股份有限公司 一种基于视觉语义点云的建图方法及系统
CN112509110A (zh) * 2020-12-16 2021-03-16 清华大学 一种陆地对抗智能体的图像数据集自动采取与标注框架
CN112800828A (zh) * 2020-12-18 2021-05-14 零八一电子集团有限公司 地面栅格占有概率目标轨迹方法
CN112633376A (zh) * 2020-12-24 2021-04-09 南京信息工程大学 基于深度学习的点云数据地物分类方法、系统与存储介质
CN112784873A (zh) * 2020-12-25 2021-05-11 华为技术有限公司 一种语义地图的构建方法及设备
CN112598796B (zh) * 2020-12-28 2024-03-22 华东交通大学 基于广义点云的三维建筑信息模型构建与自动更新的方法
CN112833892B (zh) * 2020-12-31 2022-12-16 杭州自适应科技有限公司 一种基于轨迹对齐的语义建图方法
CN112346074B (zh) * 2021-01-07 2021-04-20 北京海天瑞声科技股份有限公司 点云数据标注方法、点云数据标注装置及存储介质
CN112364200B (zh) * 2021-01-15 2021-04-13 清华大学 一种类脑成像的方法、装置、设备及存储介质
CN112925322B (zh) * 2021-01-26 2023-01-13 哈尔滨工业大学(深圳) 一种长期场景下无人车的自主定位方法
CN112802053B (zh) * 2021-01-27 2023-04-11 广东工业大学 一种面向动态环境稠密建图的动态物体检测方法
CN112902966A (zh) * 2021-01-28 2021-06-04 开放智能机器(上海)有限公司 一种融合定位系统及方法
CN112987720A (zh) * 2021-01-29 2021-06-18 北京比得机器人科技有限公司 一种用于移动机器人的多尺度地图构建方法及构建装置
CN113012191B (zh) * 2021-03-11 2022-09-02 中国科学技术大学 一种基于点云多视角投影图的激光里程计算法
CN112991211A (zh) * 2021-03-12 2021-06-18 中国大恒(集团)有限公司北京图像视觉技术分公司 一种工业相机暗角校正方法
CN113129372B (zh) * 2021-03-29 2023-11-03 深圳清元文化科技有限公司 基于HoloLens空间映射的三维场景语义分析方法
CN112801059B (zh) * 2021-04-07 2021-07-20 广东众聚人工智能科技有限公司 图卷积网络系统和基于图卷积网络系统的3d物体检测方法
CN113256716B (zh) * 2021-04-21 2023-11-21 中国科学院深圳先进技术研究院 一种机器人的控制方法及机器人
CN113177502B (zh) * 2021-05-13 2024-02-02 北京罗克维尔斯科技有限公司 环视障碍物检测方法、装置、介质、车载系统以及车辆
CN113405547B (zh) * 2021-05-21 2022-03-22 杭州电子科技大学 一种基于语义vslam的无人机导航方法
CN113256793A (zh) * 2021-05-31 2021-08-13 浙江科技学院 一种三维数据处理方法及系统
CN113724325A (zh) * 2021-05-31 2021-11-30 西安理工大学 一种基于图卷积网络的多场景单目相机位姿回归方法
CN113658257B (zh) * 2021-08-17 2022-05-27 广州文远知行科技有限公司 一种无人设备定位方法、装置、设备及存储介质
CN113984037B (zh) * 2021-09-30 2023-09-12 电子科技大学长三角研究院(湖州) 一种基于任意方向目标候选框的语义地图构建方法
CN114187310A (zh) * 2021-11-22 2022-03-15 华南农业大学 基于八叉树和PointNet++网络的大规模点云分割方法
CN114066773B (zh) * 2021-11-26 2023-10-27 哈尔滨理工大学 一种基于点云特征与蒙特卡洛扩展法的动态物体去除
CN114020934A (zh) * 2022-01-05 2022-02-08 深圳市其域创新科技有限公司 基于知识图谱的空间语义信息的整合方法及系统
CN114739388B (zh) * 2022-04-20 2023-07-14 中国移动通信集团广东有限公司 基于uwb和激光雷达的室内定位导航方法及系统
CN114937083B (zh) * 2022-05-27 2024-04-02 山东大学 一种应用于动态环境的激光slam系统及方法
CN115063550B (zh) * 2022-07-22 2022-11-11 合肥工业大学 一种语义点云地图构建方法、系统及智能机器人
CN115272493B (zh) * 2022-09-20 2022-12-27 之江实验室 一种基于连续时序点云叠加的异常目标检测方法及装置
CN115797422A (zh) * 2022-12-01 2023-03-14 西南交通大学 基于语义地图的地面到无人机激光点云跨视角重定位方法
CN116128835B (zh) * 2023-02-02 2023-09-15 南方电网数字电网研究院有限公司 基于点云分析的输电导线弧垂测量方法、装置和设备

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107833236A (zh) * 2017-10-31 2018-03-23 中国科学院电子学研究所 一种动态环境下结合语义的视觉定位系统和方法
CN110781262A (zh) * 2019-10-21 2020-02-11 中国科学院计算技术研究所 基于视觉slam的语义地图的构建方法
CN111179426A (zh) * 2019-12-23 2020-05-19 南京理工大学 基于深度学习的机器人室内环境三维语义地图构建方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107833236A (zh) * 2017-10-31 2018-03-23 中国科学院电子学研究所 一种动态环境下结合语义的视觉定位系统和方法
CN110781262A (zh) * 2019-10-21 2020-02-11 中国科学院计算技术研究所 基于视觉slam的语义地图的构建方法
CN111179426A (zh) * 2019-12-23 2020-05-19 南京理工大学 基于深度学习的机器人室内环境三维语义地图构建方法

Also Published As

Publication number Publication date
CN111798475A (zh) 2020-10-20

Similar Documents

Publication Publication Date Title
CN111798475B (zh) 一种基于点云深度学习的室内环境3d语义地图构建方法
CN111563442B (zh) 基于激光雷达的点云和相机图像数据融合的slam方法及系统
CN112258618B (zh) 基于先验激光点云与深度图融合的语义建图与定位方法
CN110675418B (zh) 一种基于ds证据理论的目标轨迹优化方法
Leotta et al. Vehicle surveillance with a generic, adaptive, 3d vehicle model
CN111563415B (zh) 一种基于双目视觉的三维目标检测系统及方法
CN111665842B (zh) 一种基于语义信息融合的室内slam建图方法及系统
CN111429514A (zh) 一种融合多帧时序点云的激光雷达3d实时目标检测方法
CN110097553A (zh) 基于即时定位建图与三维语义分割的语义建图系统
CN113506318B (zh) 一种车载边缘场景下的三维目标感知方法
CN114724120B (zh) 基于雷视语义分割自适应融合的车辆目标检测方法及系统
CN111880191B (zh) 基于多智能体激光雷达和视觉信息融合的地图生成方法
CN113139453A (zh) 一种基于深度学习的正射影像高层建筑基底矢量提取方法
CN113269040A (zh) 结合图象识别与激光雷达点云分割的驾驶环境感知方法
Yan et al. Scene flow estimation: A survey
CN111998862B (zh) 一种基于bnn的稠密双目slam方法
CN112270694B (zh) 基于激光雷达扫描图进行城市环境动态目标检测的方法
CN114325634A (zh) 一种基于激光雷达的高鲁棒性野外环境下可通行区域提取方法
Cui et al. Dense depth-map estimation based on fusion of event camera and sparse LiDAR
CN115222884A (zh) 一种基于人工智能的空间对象分析及建模优化方法
CN114298151A (zh) 一种基于点云数据与图像数据融合的3d目标检测方法
CN112396655B (zh) 一种基于点云数据的船舶目标6d位姿估计方法
CN112950786A (zh) 一种基于神经网络的车辆三维重建方法
CN116246033A (zh) 一种面向非结构化道路的快速语义地图构建方法
CN112508007B (zh) 基于图像分割Mask和神经渲染的空间目标6D姿态估计方法

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