CN116597294A - Slam地图拓扑评估方法、装置、电子设备及存储介质 - Google Patents
Slam地图拓扑评估方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN116597294A CN116597294A CN202310506978.4A CN202310506978A CN116597294A CN 116597294 A CN116597294 A CN 116597294A CN 202310506978 A CN202310506978 A CN 202310506978A CN 116597294 A CN116597294 A CN 116597294A
- Authority
- CN
- China
- Prior art keywords
- point cloud
- plane
- normal
- planes
- semantic
- 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
Links
- 238000011156 evaluation Methods 0.000 title claims abstract description 57
- 238000003860 storage Methods 0.000 title claims abstract description 10
- 238000001514 detection method Methods 0.000 claims abstract description 46
- 239000011159 matrix material Substances 0.000 claims abstract description 43
- 230000011218 segmentation Effects 0.000 claims abstract description 42
- 230000003068 static effect Effects 0.000 claims abstract description 17
- 238000013135 deep learning Methods 0.000 claims abstract description 15
- 238000013507 mapping Methods 0.000 claims abstract description 10
- 230000002776 aggregation Effects 0.000 claims abstract description 9
- 230000001360 synchronised effect Effects 0.000 claims abstract description 9
- 238000004220 aggregation Methods 0.000 claims abstract description 8
- 238000012360 testing method Methods 0.000 claims description 24
- 238000004364 calculation method Methods 0.000 claims description 23
- 238000004422 calculation algorithm Methods 0.000 claims description 15
- 238000012549 training Methods 0.000 claims description 15
- 238000010845 search algorithm Methods 0.000 claims description 13
- 238000003062 neural network model Methods 0.000 claims description 9
- 238000004590 computer program Methods 0.000 claims description 7
- 238000005070 sampling Methods 0.000 claims description 7
- 230000001502 supplementing effect Effects 0.000 claims description 6
- 238000009960 carding Methods 0.000 claims description 2
- 238000010276 construction Methods 0.000 claims description 2
- 238000011158 quantitative evaluation Methods 0.000 claims description 2
- 238000000034 method Methods 0.000 abstract description 26
- 230000033001 locomotion Effects 0.000 description 12
- 238000010586 diagram Methods 0.000 description 11
- 238000005259 measurement Methods 0.000 description 10
- 238000004088 simulation Methods 0.000 description 9
- 238000013519 translation Methods 0.000 description 9
- 238000004891 communication Methods 0.000 description 8
- 238000005516 engineering process Methods 0.000 description 6
- 238000013139 quantization Methods 0.000 description 6
- 238000013528 artificial neural network Methods 0.000 description 5
- 238000011161 development Methods 0.000 description 5
- 230000018109 developmental process Effects 0.000 description 5
- 230000006870 function Effects 0.000 description 4
- 230000002829 reductive effect Effects 0.000 description 4
- 238000012800 visualization Methods 0.000 description 4
- 230000008901 benefit Effects 0.000 description 3
- 230000008859 change Effects 0.000 description 3
- 238000010219 correlation analysis Methods 0.000 description 3
- 238000009826 distribution Methods 0.000 description 3
- 238000001914 filtration Methods 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 238000012795 verification Methods 0.000 description 3
- 238000003491 array Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000010354 integration Effects 0.000 description 2
- 230000000670 limiting effect Effects 0.000 description 2
- 239000000463 material Substances 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000002441 reversible effect Effects 0.000 description 2
- 238000009827 uniform distribution Methods 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- 241000282414 Homo sapiens Species 0.000 description 1
- 238000009825 accumulation Methods 0.000 description 1
- 238000005054 agglomeration Methods 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 238000004140 cleaning Methods 0.000 description 1
- 238000009833 condensation Methods 0.000 description 1
- 230000005494 condensation Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000006073 displacement reaction Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000001788 irregular Effects 0.000 description 1
- 238000002372 labelling Methods 0.000 description 1
- 230000004807 localization Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000036961 partial effect Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000005295 random walk Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 230000000087 stabilizing effect Effects 0.000 description 1
- 238000010937 topological data analysis Methods 0.000 description 1
- 238000005303 weighing Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/35—Categorising the entire scene, e.g. birthday party or wedding scene
- G06V20/36—Indoor scenes
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/38—Electronic maps specially adapted for navigation; Updating thereof
- G01C21/3804—Creation or updating of map data
- G01C21/3807—Creation or updating of map data characterised by the type of data
- G01C21/383—Indoor data
-
- 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/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/77—Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
- G06V10/774—Generating sets of training patterns; Bootstrap methods, e.g. bagging or boosting
-
- 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/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/77—Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
- G06V10/776—Validation; Performance evaluation
-
- 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/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/77—Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
- G06V10/778—Active pattern-learning, e.g. online learning of image or video features
-
- 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/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/82—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/70—Labelling scene content, e.g. deriving syntactic or semantic representations
-
- 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)
- Multimedia (AREA)
- Evolutionary Computation (AREA)
- Databases & Information Systems (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Artificial Intelligence (AREA)
- Computing Systems (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Software Systems (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Computational Linguistics (AREA)
- Automation & Control Theory (AREA)
- Image Analysis (AREA)
Abstract
本申请涉及建图技术领域,特别涉及一种SLAM地图拓扑评估方法、装置、电子设备及存储介质,其中,方法包括:获取目标区域的点云数据;将点云数据输入训练完成的深度学习点云语义分割模型,对预定义的静态场景语义类别的点云进行平面检测得到候选平面集合和对应估计的法向信息;通过平行平面检测条件构建候选平面集合中候选平面的邻接矩阵,计算共平面点方差;对法向信息进行法向凝聚聚类得到多个法向子簇,基于每个子簇的法向计算法向熵均值,根据共平面点方差和/或法向熵均值确定目标区域的同步定位与建图SLAM地图的地图拓扑评估结果。由此,解决了相关技术中SLAM位姿估计受到环境和测量装置的限制,精度估计方式有限等问题。
Description
技术领域
本申请涉及建图技术领域,特别涉及一种SLAM地图拓扑评估方法、装置、电子设备及存储介质。
背景技术
随着传感器、移动芯片和人工智能技术的不断进步,智能机器人逐渐在日常生活和作业场景普及,并有将人类从重复、低端、简易、繁重的作业中取代的潜力,在无人清扫、运输、安防、监控、种植和采摘等场景开始出现应用的雏形,因此移动机器人的智能无人化作业具有空前的经济价值和社会应用价值。
其中,移动机器人对复杂动态场景的理解和自身定位是保证机器人安全性和后续任务的基础。目前主流的机器人自主定位技术多采用同步定位与建图(SimultaneousLocalization And Mapping,SLAM),而基于开环控制的SLAM算法结合后端优化能够尽可能的降低机器人对额外设备和环境基础建设的依赖性,同时建图结果能够用于环境测量、可视化交互和其它机器人的定位,适用于大规模、全球定位系统(Global PositioningSystem,GPS)受限场景下的机器人自主定位和建图。
现有的SLAM开发主要依赖基于参考估计度量的相对位姿估计和绝对位姿估计,也就是计算由具体的SLAM算法估计的机器人运动位姿与真实机器人运动位姿变化的相对或绝对误差,并尽可能降低误差。而实际机器人位姿的参考值的获取或采用精准的差分GPS定位信息,或者借助高精度的测量设备,如激光跟踪仪或全站仪。其中,差分GPS定位信息受峡谷效应和建筑遮挡,存在误差且无法支撑室内环境的定位,而激光跟踪仪则基于主动激光对装配的目标靶球追踪,仅能支撑有限距离下的视距内追踪,在大型复杂遮挡场景则需要大量设备进行协同追踪,成本极其昂贵,难以进行大规模部署。其它射频、超宽带技术(Ultra Wide Band,UWB)或毫米波定位则多基于通过改装环境部署锚点,借助三角定位进行目标坐标估计,精度方面的波动较大,且无法估计姿态。
发明内容
本申请提供一种SLAM地图拓扑评估方法、装置、电子设备及存储介质,以解决现有技术中SLAM位姿估计受到环境和测量装置的限制,精度估计需要基准数值的方式的局限性等问题。
本申请第一方面实施例提供一种SLAM地图拓扑评估方法,包括以下步骤:获取目标区域的点云数据;将所述点云数据输入训练完成的深度学习点云语义分割模型,输出点云的语义标签信息,基于所述语义标签信息确定点云的语义类别,对对预定义的静态场景语义类别的点云进行平面检测得到候选平面集合和对应估计的法向信息;通过平行平面检测条件构建所述候选平面集合中候选平面的邻接矩阵,利用所述邻接矩阵和团搜索算法检测属于共平面的子团,基于所述子团计算共平面点方差;对所述法向信息进行法向凝聚聚类得到多个法向子簇,每个子簇的法向计算法向熵,并计算所有子簇的法向熵均值,根据所述共平面点方差和/或所述法向熵均值确定目标区域的同步定位与建图SLAM地图的地图拓扑评估结果。
可选地,在将所述点云数据输入训练完成的深度学习点云语义分割模型之前,还包括:采集环境的点云数据;基于人工点云语义标注的所述点云数据,构建点云语义分割数据集;基于所述点云语义分割数据集进行抽样构建训练集和测试集,分别利用所述训练集和所述测试集训练对神经网络模型进行参数训练和量化评估,将收敛性能最优和计算复杂度最小的神经网络模型作为所述深度学习点云语义分割模型。
可选地,所述对预定义的静态场景语义类别的点云进行平面检测得到候选平面集合和对应平面的法向信息,包括:依次遍历当前帧的每类静态语义点云,对每类语义的点云构建八叉树,,切分所述八叉树,直到所述八叉树的每个叶子节点的规模小于预设簇阈值,得到切分后的八叉树;从所述切分后的八叉树的任意叶子节点进行迭代的平面估计测试,以对当前点云簇进行平面拟合,若所述当前点云簇的离群点规模大于预设百分比的点云,则判定所述当前点云簇不属于平面,否则判定满足平面条件;其中,若当前节点的所有叶子节点均未通过上述判断,则将所述当前节点变成新的叶子节点,并将所述当前节点的所有叶子节点加入到当前节点最近的上级根节点的点云簇,并对新的点云簇进行平面估计测试,若所述当前节点通过所述平面估计测试,则进入合并阶段,否则继续向上合并;平面增长时,基于满足所述平面条件的点云簇构建近邻图,其中,所述近邻图的顶点为点云,所述近邻图的边为对任意点云进行k近邻搜索时,满足近邻条件的边,并通过广度优先算法进行搜索,将不属于其它平面、且满足到当前平面距离阈值和法向方差阈值条件的点云合并到当前平面;对于属于同一八叉树节点的两个平面,若满足预设合并条件,则对所述两个平面进行合并,并重新对合并后的点云簇进行平面拟合和法向估计,直到没有任何点云簇发生更新,得到所述候选平面集合和平面估计的法向信息。
可选地,所述预设合并条件包括:所述近邻图中的两个平面包含的点存在至少一条关联边;基于合并后两个平面的点云簇估计的法向小于预设值;所述两个平面中的任意一个平面中至少存在一个点云样本,满足属于另一个平面估计的平面距离阈值和法向方差阈值。
可选地,所述通过平行平面检测条件构建所述候选平面集合中候选平面的邻接矩阵,包括:遍历候选平面集合中的平面对;计算法向近似的平面对的距离,若所述距离小于预定阈值,在邻接矩阵的相应位置补充第一数值,否则补充第二数值;基于遍历结果生成的所述邻接矩阵。
可选地,所述利用所述邻接矩阵和团搜索算法检测属于共平面的子团,包括:根据所述邻接矩阵构建邻接图,对所述邻接图进行团搜索算法,获得所有规模大于预设阈值的子团。
可选地,所述法向熵均值的计算公式为:
其中,i表示第i个点云,k表示总点云梳理,ni表示平面i的法向,e表示自然常数。
本申请第二方面实施例提供一种SLAM地图拓扑评估装置,包括:获取模块,用于获取目标区域的点云数据;检测模块,用于将所述点云数据输入训练完成的深度学习点云语义分割模型,输出点云的语义标签信息,基于所述语义标签信息确定点云的语义类别,对预定义的静态场景语义类别的点云进行平面检测得到候选平面集合和对应估计的法向信息;计算模块,用于通过平行平面检测条件构建所述候选平面集合中候选平面的邻接矩阵,利用所述邻接矩阵和团搜索算法检测属于共平面的子团,基于所述子团计算共平面点方差;评估模块,用于对所述法向信息进行法向凝聚聚类得到多个法向子簇,基于每个子簇的法向计算法向熵,并计算所有子簇的法向熵均值,根据所述共平面点方差和/或所述法向熵均值确定目标区域的同步定位与建图SLAM地图的地图拓扑评估结果。
本申请第三方面实施例提供一种电子设备,包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述程序,以实现如上述实施例所述的SLAM地图拓扑评估方法。
本申请第四方面实施例提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行,以用于实现如上述实施例所述的SLAM地图拓扑评估方法。
由此,本申请至少具有如下有益效果:
本申请实施例可以在大型室内环境GPS遮挡情况下,不借助额外的测量设备,仅通过局部点云拓扑信息对SLAM估计的位姿误差进行评估,能够促进相关算法对大型复杂人工环境的发展;通过引入基于神经网络的点云语义分割模型,实现对复杂场景的精确语义信息获取,并基于语义标签进行非稳定和不包含潜在平面的目标类别的过滤,降低后续计算的复杂度;通过鲁棒统计的平面检测对每一类别的稳定语义点云进行平面检测和法向评估,能够提升候选平面的检测精度和对应平面的法向估计精度;基于SLAM的位姿估计原理,分别针对旋转噪声误差和平移噪声误差设计了对应的量化评估指标,首次针对不同位姿噪声分量实现量化评估;利用共平面方差统计计算方法和基于法向聚类的平均法向熵统计计算方法,实现了对SLAM位姿的评估等有益效果。由此,解决了相关技术中SLAM位姿估计受到环境和测量装置的限制,精度估计的方式有限等技术问题。
本申请附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本申请的实践了解到。
附图说明
本申请上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:
图1为根据本申请实施例提供的一种SLAM地图拓扑评估方法的流程图;
图2为根据本申请实施例提供的SLAM位姿估计的旋转噪声和平移噪声影响的示意图;
图3为根据本申请实施例提供的SLAM地图拓扑评估方法的流程图;
图4为根据本申请实施例提供的仿真模拟环境及移动机器人和雷达感知方案的示意图;
图5为根据本申请实施例提供的人工语义标注叠加地图可视化的示意图;
图6为根据本申请实施例提供的平面检测及法向估计结果的示意图;
图7为根据本申请实施例提供的仅添加旋转噪声情况下的拓扑度量与RPE的二元相关性的示意图;
图8为根据本申请实施例提供的仅添加平移噪声情况下的拓扑度量与RPE的二元相关性的示意图;
图9为根据本申请实施例提供的包含旋转和平移噪声情况下的拓扑度量与RPE的三元相关性的示意图;
图10为根据本申请实施例提供的SLAM地图拓扑评估装置的示例图;
图11为根据本申请实施例提供的电子设备的结构示意图。
具体实施方式
下面详细描述本申请的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本申请,而不能理解为对本申请的限制。
下面参考附图描述本申请实施例的SLAM地图拓扑评估方法、装置、电子设备及存储介质。针对上述背景技术中提到的目前SLAM开发主要依赖基于参考估计度量的相对位姿估计和绝对位姿估计,但是受到环境和测量装置的限制,导致实际部署较为困难,精度估计方式有限的问题,本申请提供了一种SLAM地图拓扑评估方法,在该方法中,通过SLAM局部地图的点云拓扑信息协助评估位姿估计中存在的噪声,借助深度学习点云语义分割优化平面检测,在无需借助GPS或其它测量设备的情况下进行自评估。由此,解决了相关技术中SLAM位姿估计受到环境和测量装置的限制,精度估计的方式有限等问题。
在描述本申请实施例的SLAM地图拓扑评估方法之前,先对相关技术进行简单阐述,具体的:近年来有部分研究尝试利用SLAM算法构建的地图拓扑稳定性间接的对位姿估计进行分析,这类方法被称为基于SLAM地图特征的拓扑分析方法,但目前属于起步阶段。早期方法主要基于全局点云熵均值、潜在平面方差和互正交平面的拓扑规律进行评估,但受平面检测精度、法向估计误差、以及无法对复杂动态时变场景的动态语义的处理能力影响。
具体而言,图1为本申请实施例所提供的一种SLAM地图拓扑评估方法的流程示意图。
如图1所示,该SLAM地图拓扑评估方法包括以下步骤:
在步骤S101中,获取目标区域的点云数据。
其中,目标区域可以为停车场、办公室等,在本申请实施例中,为了方便阐述,以本地目标室内场景构造的三维模拟仿真环境为例,包括包含常规语义信息的地图和移动机器人及对应激光雷达配置。
具体而言,本申请实施例可以通过手动控制移动机器人在目标区域内随机移动,采集点云数据(Point Cloud=[x,y,z]i),通过在不同场景的遍历采集的数据来构建一个点云数据集,以及对应的位姿(Pose)序列。需要说明的是,在构造点云SLAM数据集时的同时,为获取可控噪声分布的位姿信息,通过对位姿信息的平移分量(t)和旋转分量(R)添加不同分布的高斯白噪声,获得带有噪声的位姿(Pose=Test,i)以求达到模拟可控SLAM算法估计的噪声波动范围,来进行后续相关性分析和证明。
在步骤S102中,将点云数据输入训练完成的深度学习点云语义分割模型,输出点云的语义标签信息,基于语义标签信息确定点云的语义类别,对预定义的静态场景语义类别的点云进行平面检测得到候选平面集合和对应估计的法向信息。
其中,点云的语义标签(Label=li)基于点云可视化语义标注工具对点云的语义进行逐帧标注获得。
可以理解的是,本申请实施例可以将点云数据输入训练完成的深度学习点云语义分割模型,即可输出点云的语义标签信息(存在一定误差),确定点云的语义类别,基于平面检测算法对预定义的静态场景语义类别进行处理,得到候选平面集合和对应平面的法向信息。
需要说明的是,本申请实施例对点云SLAM数据集中的连续点云进行滑动窗口采样,获取当前窗口内的点云,依次将每帧点云输入所训练好的最终语义分割模型,即可获得每帧点云的模型语义分割标签。对每类静态语义点云进行平面检测和法向估计之前,依次将每帧点云输入训练好的语义分割模型,并基于预定义的标签类别将场景内的不稳定特征进行剔除,过滤潜在运动目标、非稳定目标以及不包含平面的目标语义点云,如动态和潜在动态的不规则目标,仅保留如墙、地面、天花板、称重柱之类的稳定点云语义,对剩余的每类点云进行平面分割。
在本申请实施例中,在将点云数据输入训练完成的深度学习点云语义分割模型之前,还包括:采集环境的点云数据;基于人工点云语义标注的点云数据,构建点云语义分割数据集;基于点云语义分割数据集进行抽样构建训练集和测试集,分别利用训练集和测试集对神经网络模型进行参数训练和量化评估,将收敛性能最优和计算复杂度最小的神经网络模型作为深度学习点云语义分割模型。
其中,环境的点云数据可以为手动遥控机器人在仿真环境进行随机游走采集得到。
具体而言,本申请实施例为构建基于点云语义分割数据的模型训练,包括:利用机器人携带的激光雷达传感器采集环境的点云数据,基于人工点云语义标注,对典型室内场景语义进行标注,即基于雷达点云和语义标签构建点云语义分割数据集,接着进行神经网络模型训练,基于构建的点云语义分割数据集进行抽样构建训练集和测试集,基于分割精度计算模型输出结果和语义标签的误差,通过误差反向传播和随机梯度下降驱动模型参数调整,并保证通过足够多的训练轮次使得模型收敛,并综合对比模型分割精度、计算速度、计算复杂度、模型总体参数规模等信息,挑选满足适合机器人移动平台部署的轻量化模型作为最终模型。
在本申请实施例中,预定义的静态场景语义类别的点云进行平面检测得到候选平面集合和对应估计的法向信息,包括:依次遍历当前帧的每类静态语义点云,对每类语义的点云构建八叉树,切分八叉树,直到八叉树的每个叶子节点的规模小于预设簇阈值,得到切分后的八叉树;从切分后的八叉树的任意叶子节点进行迭代的平面估计测试,以对当前点云簇进行平面拟合,若当前点云簇的离群点规模大于预设百分比的点云,则判定当前点云簇不属于平面,否则判定满足平面条件;其中,若当前节点的所有叶子节点均未通过上述判断,则将当前节点变成新的叶子节点,并将当前节点的所有叶子节点加入到当前节点最近的上级根节点的点云簇,并对新的点云簇进行平面估计测试,若当前节点通过平面估计测试,则进入合并阶段,否则继续向上合并;平面增长时,基于满足平面条件的点云簇构建近邻图,其中,近邻图的顶点为点云,近邻图的边为对任意点云进行k近邻搜索时,满足近邻条件的边,并通过广度优先算法进行搜索,将不属于其它平面、且满足到当前平面距离阈值和法向方差阈值条件的点云合并到当前平面;对于属于同一八叉树节点的两个平面,若满足预设合并条件,则对两个平面进行合并,并重新对合并后的点云簇进行平面拟合和法向估计,直到没有任何点云簇发生更新,得到候选平面集合和对应平面的法向信息。
其中,预设合并条件包括:近邻图中的两个平面包含的点存在至少一条关联边;基于合并后两个平面的点云簇估计的法向小于预设值;两个平面中的任意一个平面中至少存在一个点云样本,满足属于另一个平面估计的平面距离阈值和法向方差阈值。
可以理解的是,本申请实施例中平面检测的具体步骤为:
首先,依次遍历当前帧的每类静态语义点云,对属于当前帧的每类语义的点云构建八叉树,基于空间对八叉树进行切分,直到每个叶子节点的规模小于预设簇阈值;从八叉树叶子节点进行迭代的平面估计测试,如果当前节点通过平面测试,则进入合并阶段,如果当前节点的八个叶子节点都未通过测试,则当前节点变成新的叶子节点,之前的八个叶子节点加入到它的簇,并对新的簇进行平面估计测试。其中,平面估计测试为对当前簇进行基于RANSAC的平面拟合,并判断离群点规模大于预设百分比(比如为25%)的点云时,当前点云簇不属于平面,否则满足平面条件。
平面增长时,对于满足平面条件的点簇进行近邻图G的构建,其中G的顶点为点云,G的边为对任意点进行k近邻搜索时,满足近邻条件的边,并通过广度优先算法进行搜索,并将不属于其它平面,且满足到当前平面距离阈值和法向方向阈值条件的点合并到当前平面。
接着进行平面合并,对于属于同一八叉树节点的两个平面A和B,当满足条件:(1)对于近邻图G,A和B包含的点存在至少一条关联边(也就是kNN搜索时满足距离阈值,这里复用上面的图G简化计算过程);(2)基于合并后的A、B点云簇估计的法向小于max(NA,NB);(3)A中至少存在一个点云样本,满足属于B估计的平面距离阈值和法向方差阈值,反之亦然。可对A和B进行合并,并重新对合并后的点簇进行平面拟合和法向估计。
通过迭代上述步骤,直到没有任何簇发生更新,所得平面集合即为平面检测的最终结果,将当前窗口内所有帧点云估计到的点云平面簇添加到一个集合,该集合包含了所有的平面和对应法向信息。
在步骤S103中,通过平行平面检测条件构建候选平面集合中候选平面的邻接矩阵,利用邻接矩阵和团搜索算法检测属于共平面的子团,基于子团计算共平面点方差。
可以理解的是,本申请实施例基于候选平面集合,进行基于团搜索的平行平面检测,获取若干组互相平行的平面子合集,然后基于每个平行平面子集合基于近似共面条件进一步进行共平面集合检测,将属于共平面的点作为一组,对这组点云计算方差,即可得共平面方差(Co-Plane Variance,CPV)。
在本申请实施例中,通过平行平面检测条件构建候选平面集合中候选平面的邻接矩阵,包括:遍历候选平面集合中的平面对;计算法向近似的平面对的距离,若距离小于预定阈值,在邻接矩阵的相应位置补充第一数值,否则补充第二数值;基于遍历结果生成的邻接矩阵。
具体而言,本申请实施例对于集合中的平面集合N,先构建N*N的全0邻接矩阵,遍历集合中的两两平面对P1和P2,对与法向近似的平面对,假设两个平面平行即(A1=A2,B1=B2,C1=C2),并计算两个平面的距离d,对于距离d小于预定阈值的平面对,再邻接矩阵的相应位置添加边1,否则填0。
P1:A1x+B1y+C1z+D1=0,
P2:A2x+B2y+C2z+D2=0,
在本申请实施例中,利用邻接矩阵和团搜索算法检测属于共平面的子团,包括:根据邻接矩阵构建邻接图,对邻接图进行团搜索算法,获得所有规模大于预设阈值的子团。
其中,预设阈值可以依据具体情况进行设定,比如可以为2个或3个。
以预设阈值为2个为例,本申请实施例可以基于遍历结果生成的邻接矩阵构建邻接图D,对D进行团搜索算法,获得所有规模大于2的团,即为包含至少2个以上共平面的子集合,合并每个子集合内的点云,并求合并后的共平面点的平面方差,即为对应点云协方差矩阵的最小特征值。
在步骤S104中,对法向信息进行法向凝聚聚类得到多个法向子簇,每个子簇的法向计算法向熵,并计算所有子簇的法向熵均值,根据共平面点方差和/或法向熵均值确定目标区域的同步定位与建图SLAM地图的地图拓扑评估结果。
其中,法向熵均值的计算公式为:
其中,i表示第i个点云,k表示总点云梳理,n_i表示平面i的法向,e表示自然常数。可以理解的是,本申请实施例可以对法向信息进行法向凝聚聚类,基于每个类簇的法向求取法向熵,根据共平面点方差和/或法向熵均值确定目标区域的同步定位与建图SLAM地图的地图拓扑评估结果。
可以理解的是,本申请实施例对于集合中的每个平面的法向值采用凝聚聚类,获得若干法向近似的子簇,然后对每个规模大于3(k>3)的簇,基于计算公式求解所有簇法向熵均值(Plane Normal Entropy,PNE),ni为平面i的法向。其中,共平面方差反馈了相对位姿误差中的平移噪声分量,该值越大,平移噪声(noise of t)的分量就越大,而法向熵均值反馈了旋转误差(noise of R)噪声分量的相关性,该值越大,旋转噪声分量越大。
在本申请实施例中,对于移动机器人采用点云SLAM估计位姿变化,其原理为基于连续两帧点云进行配置算法估计机器人的相对运动,主要包含三维平移运动和旋转运动。其中,平移运动可以表示为t向量,t=[x,y,z]分别为机器人在一个时间片内的沿世界三维坐标系的相对位移,而机器人绕X-Y-Z轴的旋转矩阵R表示,总的位姿矩阵定义为:
而由于存在传感器测量噪声,基于连续两帧点云进行机器人的刚体运动估计,即计算Test,不可避免会引入误差。基于测量设备或GPS获得的准确结果定义为Tgt。则相邻两帧i到i+Δt时刻的相对位姿误差(Relative Pose Error,RPE)可以定义为
但当GPS定位信息不可获取,而机器人的运动又超过激光跟踪仪等设备的测量范围时,则会导致无法获取对应的Tgt,导致上述RPE无法计算。
因此,还需要考虑通过上述流程介绍的拓扑一致性度量替代现有的RPE估计方案,并借助仿真环境提供的绝对精准位姿信息对所提出的地图拓扑度量和RPE进行相关性验证。
具体而言,SLAM位姿估计如上述公式所示,其中,旋转分量R可以描述为一个3×3的旋转矩阵,包含了机器人运动朝向沿X-Y-Z轴的旋转变化;平移分量t可以描述为一个3×1的向量,包含了机器人运动在X-Y-Z轴平移变化。如图2所示,旋转分量噪声会导致场景中潜在的平面法向发生变化,从而引起总体法向的随机性增强;虽然也会导致平面点云方差变化,但波动难以估计。而平移分量的噪声则会导致原本配准的一个平面沿X/Y/Z轴发生平移变化,从而使得原本能够拟合单一平面的点发生抖动,可能生成多个平面,从而导致估计平面方差估计增大。基于上述现象,本申请提出了共面点云方差估计和基于法向聚类的平均法向熵估计来对位姿噪声的平移分量和法向分量噪声进行估计,并通过仿真数据进行相关性验证。
综上,本申请实施例的SLAM地图拓扑评估方法,流程如图3所示,包括:
(1)点云语义分割数据构建;
(2)神经网络点云语义分割模型训练;
(3)点云SLAM数据集构建;
(4)实时点云语义获取;
(5)鲁棒平面检测和法向估计;
(6)共平面点云方差估计;
(7)基于法向聚类的平均法向熵估计;
(8)相关性分析验证。
下面通过一个具体实施例来阐述SLAM地图拓扑评估方法,如下:
其中,移动机器人实验平台如图4所示,包含安装在机器人顶部的低成本激光雷达、显示器和计算单元,以及移动机器人底盘。测试部署的仿真环境如图4所示,分别包含两个与本地场景等比例的大型地下车库和中型办公室,以及两个开源的方形办公室场景,并在仿真环境搭建与机器人原型系统雷达一致的仿真平台。
步骤1:点云语义分割数据构建。通过人工控制机器人在四个仿真场景随机的移动遍历多次,以5/10Hz采集雷达的点云数据。然后通过人工标注的形式进行点云语义标注,获取逐帧点云的语义标签信息。基于标注后的点云可视化对比如图5所示,其中每个图的上部分为以点云高度着色的可视化结果,下部分为基于标签着色的可视化结果。当前场景标注类别包含了地面、墙、承重柱、桌子和椅子五个类别的场景语义。
步骤2:神经网络点云语义分割模型训练。对步骤1所采集的点云语义分割数据集,随机划分为60%/40%的两个子集,分别选取若干神经网络模型进行训练和评估,利用标签约束模型参数收敛。本地测试硬件环境为GPU服务器,包括Intel i9-12900K的CPU,128GB内存,NVIDIARTX 3090@24GB显卡,大容量硬盘。并通过实测验证模型的分割精度,并选取综合性能最优的作为候选集成模型。结果如表1所示,选取了MinkowskiNet、CylinderNet和SPVCNN三个典型神经网络模型进行测试,其中MinkowskiNet能够获得最优的平均交并比和基于类的交并比,且在当前测试的硬件平台的速率最高,故选择该模型作为最终的语义分割模型进行集成。
表1
其中,平均交并比的计算公式如下,其中C为场景语义类别,TP、FP和FN分别为对应类别的点云分割真阳性、假阳性和假阴性的数量,而基于类的交并比则无需进行累加和取均值的计算。
步骤3:点云SLAM数据集构建。通过人工控制机器人在反着场景进行随机移动,以5/10Hz采集雷达的点云数据,以及对应时刻下的机器人位姿矩阵T,构建包含连续点云及位姿的SLAM数据集。
步骤4:实时点云语义获取。基于滑动窗口(窗口长度5,步长5,即不重叠采样)对连续点云进行采样,并将每一帧点云输入到步骤2训练好的MinkowskiNet中进行处理,获取分割标签。其中,对非静态目标(即桌子和椅子进行过滤),仅保留其中能够反馈场景稳定拓扑信息的墙、地面和承重柱点云。
步骤5:鲁棒统计平面检测和法向估计。依次采用鲁棒统计的平面检测算法对每帧点云的每类稳定语义点云进行平面检测,并将所获取的平面点云和法向信息依次加入候选平面集合。整个集合包含了当前滑动窗口内所有潜在的所有平面,如图6所示。
步骤6:共平面点云方差估计。基于当前候选平面集合构建邻接矩阵,并填充全0进行初始化。依次遍历每两个平面对[P1,P2],对法向差|N1,N2|>1-∈,其中∈为极小阈值,判定为平行平面。这时可假设两个平面公式的A,B和C一致,基于计算公式求取两个平面距离d,并判定d<3∈(倍率基于情况设定)。对于满足上述共平面条件的平面对,在邻接矩阵对应位置(包括主对角线对称的两个区块)添加1,代表构成一条边。
基于最终的邻接矩阵生成邻接图,图的顶点为候选平面,图的边代表了连接的两个顶点的平面对为共平面。然后基于团搜索获取团队规模大于2的所有团,即每个团包含了对应的共平面。
对每个团内包含的平面点云进行合并,并计算当前点集的协方差矩阵对应的特征值,其中最小特征值即为平面点云的方差。对所有团的平面点云方差排序,其中位数即为平均共平面方差估计(CPV)。
步骤7:基于法向聚类的平均平面法向熵估计(PNE)。基于当前候选平面集合的所有法向进行凝聚聚类,初始以每个平面的法向作为独立簇,并基于预设阈值与相邻法向进行合并,并基于预设条件停止。即可得到基于法向近似的若干簇,对于每个簇独立计算基于法向的熵,然后对所有簇的法向熵均值(如公式7),即为结果。
步骤8:为了进一步验证所设计的两种基于SLAM算法局部点云地图拓扑信息进行位姿噪声估计的正确性,分别引入常见二元相关性度量Pearson、Spearman和Kendall,以及多关系三元相关性度量MultiRelation(MR),计算公式如下。其中对于变量Yi,=1,…,的n个观测,可以构建k*n的矩阵Y。由于每个k可能来自不同的观测背景,如本实施例中的RPE、CPV和PNE,需要对按行进行归一化,得到对应的标准化矩阵S。则样本相关性矩阵R=SST,其中R的最小特征值为λ(R)。
MR(Y1,…,Yk)=1-λ(R)=1-λ(SST)
为了控制噪声分布和规模,选择对长度为5的滑动窗口内的位姿分别添加旋转噪声、平移噪声和旋转平移噪声。其中,旋转噪声在绕Z轴的yaw取[-pi/180,pi/180]*Scale的均匀分布噪声,而绕XY轴的roll和pitch取[-0.05*pi/180,0.05*pi/180]*Scale的均匀分布噪声;平移噪声在XY轴取[-0.1,0.1]*Scale的均匀分布噪声,在Z轴取[-0.005,0.005]*Scale的均匀分布噪声。主要考虑机器人在室内运动主要沿2D平面移动和旋转。而Scale配置[1,1.5,2]三种比例。并与早期开发的MME、MPV和MOM三种度量进行对比,上述三种度量并不区分对平移分量和旋转分量的独立相关性分析。
其中,如图7所示,仅添加旋转噪声情况下的拓扑度量与RPE的二元相关性中,平面法向熵(PNE)度量与相对位姿误差(RPE)的相关性在三种不同规模的噪声下均表现的最高,说明平面PNE能够正确的反馈由于旋转噪声导致的相对位姿误差。
如图8所示,仅添加平移噪声情况下的拓扑度量与RPE的二元相关性中,共平面点云方差(CPV)度量与相对位姿误差(RPE)的相关性在三种不同规模的噪声下均表现的最高,说明平面CPV能够正确的反馈由于平移噪声导致的相对位姿误差。
如图9所示,同时添加平移和旋转噪声情况下的拓扑度量与RPE的三元相关性计算使用公式MR(Y1,…,Yk)=1-λ(R)=1-λ(SST)计算,平面法向熵(PNE)度量、共平面点云方差(CPV)度量和相对位姿误差(RPE)的三元相关性在三种不同规模的噪声下均表现的最高,说明将两个独立的度量进行整合,具有正确的反馈包含平移和旋转噪声导致的相对位姿误差的可能性。
通过二元和三元相关性度量,验证了共平面点云方差和平面法向熵均值与基于基准测量的相对位姿估计度量存在稳定相关性,具备对缺少GPS和高精度测量装置情况下的室内环境,仅依赖地图拓扑信息作为SLAM位姿估计的替代方案。
根据本申请实施例提出的SLAM地图拓扑评估方法,可以在大型室内环境GPS遮挡情况下,不借助额外的测量设备,仅通过局部点云拓扑信息对SLAM估计的位姿误差进行评估,能够促进相关算法对大型复杂人工环境的发展;通过引入基于神经网络的点云语义分割模型,实现对复杂场景的精确语义信息获取,并基于语义标签进行非稳定和不包含潜在平面的目标类别的过滤,降低后续计算的复杂度;通过鲁棒统计的平面检测对每一类别的稳定语义点云进行平面检测和法向评估,能够提升候选平面的检测精度和对应平面的法向估计精度;基于SLAM的位姿估计原理,分别针对旋转噪声误差和平移噪声误差设计了对应的量化评估指标,首次针对不同位姿噪声分量实现量化评估;利用共平面方差统计计算方法和基于法向聚类的平均法向熵统计计算方法,实现了对SLAM位姿的评估。
其次参照附图描述根据本申请实施例提出的SLAM地图拓扑评估装置。
图10是本申请实施例的SLAM地图拓扑评估装置的方框示意图。
如图10所示,该SLAM地图拓扑评估装置10包括:获取模块100、检测模块200、计算模块300和评估模块400。
其中,获取模块100用于获取目标区域的点云数据;检测模块200用于将点云数据输入训练完成的深度学习点云语义分割模型,输出点云的语义标签信息,基于语义标签信息确定点云的语义类别,对预定义的静态场景语义类别的点云进行平面检测得到候选平面集合和对应估计的法向信息;计算模块300用于通过平行平面检测条件构建候选平面集合中候选平面的邻接矩阵,利用邻接矩阵和团搜索算法检测属于共平面的子团,基于子团计算共平面点方差;评估模块400用于对法向信息进行法向凝聚聚类得到多个类法向子簇,每个子簇的法向计算法向熵,并计算所有子簇的法向熵均值,根据共平面点方差和/或法向熵均值确定目标区域的同步定位与建图SLAM地图的地图拓扑评估结果。
需要说明的是,前述对SLAM地图拓扑评估方法实施例的解释说明也适用于该实施例的SLAM地图拓扑评估装置,此处不再赘述。
根据本申请实施例提出的SLAM地图拓扑评估装置,可以在大型室内环境GPS遮挡情况下,不借助额外的测量设备,仅通过局部点云拓扑信息对SLAM估计的位姿误差进行评估,能够促进相关算法对大型复杂人工环境的发展;通过引入基于神经网络的点云语义分割模型,实现对复杂场景的精确语义信息获取,并基于语义标签进行非稳定和不包含潜在平面的目标类别的过滤,降低后续计算的复杂度;通过鲁棒统计的平面检测对每一类别的稳定语义点云进行平面检测和法向评估,能够提升候选平面的检测精度和对应平面的法向估计精度;基于SLAM的位姿估计原理,分别针对旋转噪声误差和平移噪声误差设计了对应的量化评估指标,首次针对不同位姿噪声分量实现量化评估;利用共平面方差统计计算方法和基于法向聚类的平均法向熵统计计算方法,分别实现了对于SLAM位姿的平移分量噪声估计、旋转分量噪声估计和整体位姿的误差估计。
图11为本申请实施例提供的电子设备的结构示意图。该电子设备可以包括:
存储器1101、处理器1102及存储在存储器1101上并可在处理器1102上运行的计算机程序。
处理器1102执行程序时实现上述实施例中提供的SLAM地图拓扑评估方法。
进一步地,电子设备还包括:
通信接口1103,用于存储器1101和处理器1102之间的通信。
存储器1101,用于存放可在处理器1102上运行的计算机程序。
存储器1101可能包含高速RAM(Random Access Memory,随机存取存储器)存储器,也可能还包括非易失性存储器,例如至少一个磁盘存储器。
如果存储器1101、处理器1102和通信接口1103独立实现,则通信接口1103、存储器1101和处理器1102可以通过总线相互连接并完成相互间的通信。总线可以是ISA(IndustryStandard Architecture,工业标准体系结构)总线、PCI(Peripheral Component,外部设备互连)总线或EISA(Extended Industry Standard Architecture,扩展工业标准体系结构)总线等。总线可以分为地址总线、数据总线、控制总线等。为便于表示,图11中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
可选的,在具体实现上,如果存储器1101、处理器1102及通信接口1103,集成在一块芯片上实现,则存储器1101、处理器1102及通信接口1103可以通过内部接口完成相互间的通信。
处理器1102可能是一个CPU(Central Processing Unit,中央处理器),或者是ASIC(Application Specific Integrated Circuit,特定集成电路),或者是被配置成实施本申请实施例的一个或多个集成电路。
本申请实施例还提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如上的SLAM地图拓扑评估方法。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本申请的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不是必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或N个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本申请的描述中,“N个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或N个用于实现定制逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本申请的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本申请的实施例所属技术领域的技术人员所理解。
应当理解,本申请的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,N个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。如,如果用硬件来实现和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列,现场可编程门阵列等。
本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
尽管上面已经示出和描述了本申请的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本申请的限制,本领域的普通技术人员在本申请的范围内可以对上述实施例进行变化、修改、替换和变型。
Claims (10)
1.一种SLAM地图拓扑评估方法,其特征在于,包括以下步骤:
获取目标区域的点云数据;
将所述点云数据输入训练完成的深度学习点云语义分割模型,输出点云的语义标签信息,基于所述语义标签信息确定点云的语义类别,对预定义的静态场景语义类别的点云进行平面检测得到候选平面集合和对应平面的法向信息;
通过平行平面检测条件构建所述候选平面集合中候选平面的邻接矩阵,利用所述邻接矩阵和团搜索算法检测属于共平面的子团,基于所述子团计算共平面点方差;
对所述法向信息进行法向凝聚聚类得到多个法向子簇,基于每个子簇的法向计算法向熵,并计算所有子簇的法向熵均值,根据所述共平面点方差和/或所述法向熵均值确定目标区域的同步定位与建图SLAM地图的地图拓扑评估结果。
2.根据权利要求1所述的SLAM地图拓扑评估方法,其特征在于,在将所述点云数据输入训练完成的深度学习点云语义分割模型之前,还包括:
采集环境的点云数据;
基于人工点云语义标注的所述点云数据,构建点云语义分割数据集;
基于所述点云语义分割数据集进行抽样构建训练集和测试集,分别利用所述训练集和所述测试集对神经网络模型进行参数训练和量化评估,将收敛性能最优和计算复杂度最小的神经网络模型作为所述深度学习点云语义分割模型。
3.根据权利要求1所述的SLAM地图拓扑评估方法,其特征在于,所述对预定义的静态场景语义类别的点云进行平面检测得到候选平面集合和对应平面的法向信息,包括:
依次遍历当前帧的每类静态语义点云,对每类语义的点云构建八叉树,切分所述八叉树,直到所述八叉树的每个叶子节点的规模小于预设簇阈值,得到切分后的八叉树;
从所述切分后的八叉树的任意叶子节点进行迭代的平面估计测试,以对当前点云簇进行平面拟合,若所述当前点云簇的离群点规模大于预设百分比的点云,则判定所述当前点云簇不属于平面,否则判定满足平面条件;其中,若当前节点的所有叶子节点均未通过上述判断,则将所述当前节点变成新的叶子节点,并将所述当前节点的所有叶子节点加入到当前节点最近的上级根节点的点云簇,并对新的点云簇进行平面估计测试,若所述当前节点通过所述平面估计测试,则进入合并阶段,否则继续向上合并;
平面增长时,基于满足所述平面条件的点云簇构建近邻图,其中,所述近邻图的顶点为点云,所述近邻图的边为对任意点云进行k近邻搜索时,满足近邻条件的边,并通过广度优先算法进行搜索,将不属于其它平面、且满足到当前平面距离阈值和法向方差阈值条件的点云合并到当前平面;
对于属于同一八叉树节点的两个平面,若满足预设合并条件,则对所述两个平面进行合并,并重新对合并后的点云簇进行平面拟合和法向估计,直到没有任何点云簇发生更新,得到所述候选平面集合和对应平面的法向信息。
4.根据权利要求3所述的SLAM地图拓扑评估方法,其特征在于,所述预设合并条件包括:
所述近邻图中的两个平面包含的点存在至少一条关联边;
基于合并后两个平面的点云簇估计的法向小于预设值;
所述两个平面中的任意一个平面中至少存在一个点云样本,满足属于另一个平面估计的平面距离阈值和法向方差阈值。
5.根据权利要求1所述的SLAM地图拓扑评估方法,其特征在于,所述通过平行平面检测条件构建所述候选平面集合中候选平面的邻接矩阵,包括:
遍历候选平面集合中的平面对;
计算法向近似的平面对的距离,若所述距离小于预定阈值,在邻接矩阵的相应位置补充第一数值,否则补充第二数值;
基于遍历结果生成的所述邻接矩阵。
6.根据权利要求1或5所述的SLAM地图拓扑评估方法,其特征在于,所述利用所述邻接矩阵和团搜索算法检测属于共平面的子团,包括:
根据所述邻接矩阵构建邻接图,对所述邻接图进行团搜索算法,获得所有规模大于预设阈值的子团。
7.根据权利要求1所述的SLAM地图拓扑评估方法,其特征在于,所述法向熵均值的计算公式为:
其中,i表示第i个点云,k表示总点云梳理,ni表示平面i的法向,e表示自然常数。
8.一种SLAM地图拓扑评估装置,其特征在于,包括:
获取模块,用于获取目标区域的点云数据;
检测模块,用于将所述点云数据输入训练完成的深度学习点云语义分割模型,输出点云的语义标签信息,基于所述语义标签信息确定点云的语义类别,对预定义的静态场景语义类别的点云进行平面检测得到候选平面集合和对应平面的法向信息;
计算模块,用于通过平行平面检测条件构建所述候选平面集合中候选平面的邻接矩阵,利用所述邻接矩阵和团搜索算法检测属于共平面的子团,基于所述子团计算共平面点方差;
评估模块,用于对所述法向信息进行法向凝聚聚类得到多个法向子簇,基于每个子簇的法向计算法向熵,并计算所有子簇的法向熵均值,根据所述共平面点方差和/或所述法向熵均值确定目标区域的同步定位与建图SLAM地图的地图拓扑评估结果。
9.一种电子设备,其特征在于,包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述程序,以实现如权利要求1-7任一项所述的SLAM地图拓扑评估方法。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行,以用于实现如权利要求1-7任一项所述的SLAM地图拓扑评估方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310506978.4A CN116597294A (zh) | 2023-05-04 | 2023-05-04 | Slam地图拓扑评估方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310506978.4A CN116597294A (zh) | 2023-05-04 | 2023-05-04 | Slam地图拓扑评估方法、装置、电子设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116597294A true CN116597294A (zh) | 2023-08-15 |
Family
ID=87600074
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310506978.4A Pending CN116597294A (zh) | 2023-05-04 | 2023-05-04 | Slam地图拓扑评估方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116597294A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116912312A (zh) * | 2023-09-15 | 2023-10-20 | 湖南大学 | 一种面向复杂曲面构件的三维孔类定位方法 |
-
2023
- 2023-05-04 CN CN202310506978.4A patent/CN116597294A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116912312A (zh) * | 2023-09-15 | 2023-10-20 | 湖南大学 | 一种面向复杂曲面构件的三维孔类定位方法 |
CN116912312B (zh) * | 2023-09-15 | 2023-12-01 | 湖南大学 | 一种面向复杂曲面构件的三维孔类定位方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Czerniawski et al. | Pipe spool recognition in cluttered point clouds using a curvature-based shape descriptor | |
Taha et al. | An efficient algorithm for calculating the exact Hausdorff distance | |
Biosca et al. | Unsupervised robust planar segmentation of terrestrial laser scanner point clouds based on fuzzy clustering methods | |
CN105809672B (zh) | 一种基于超像素和结构化约束的图像多目标协同分割方法 | |
Yang et al. | A Point Cloud Simplification Method Based on Modified Fuzzy C‐Means Clustering Algorithm with Feature Information Reserved | |
CN108710914A (zh) | 一种基于广义模糊聚类算法的无监督数据分类方法 | |
CN111444294B (zh) | 一种轨迹补全方法、装置及电子设备 | |
CN112347550A (zh) | 耦合式室内三维语义建图及建模方法 | |
Joo et al. | Robust and globally optimal manhattan frame estimation in near real time | |
CN108764157B (zh) | 基于法向量高斯分布的建筑物激光脚点提取方法及系统 | |
US9852360B2 (en) | Data clustering apparatus and method | |
CN116520281B (zh) | 一种基于ddpg的扩展目标跟踪优化方法和装置 | |
CN111709988A (zh) | 一种物体的特征信息的确定方法、装置、电子设备及存储介质 | |
CN116597294A (zh) | Slam地图拓扑评估方法、装置、电子设备及存储介质 | |
CN117252863B (zh) | 一种地理信息异常数据快速检测分析方法 | |
CN114964212A (zh) | 面向未知空间探索的多机协同融合定位与建图方法 | |
CN107292039B (zh) | 一种基于小波聚类的uuv巡岸轮廓构建方法 | |
CN115546116A (zh) | 全覆盖式岩体不连续面提取与间距计算方法及系统 | |
CN110310322A (zh) | 一种10微米级高精度器件装配表面检测方法 | |
US20210150078A1 (en) | Reconstructing an object | |
CN111765883B (zh) | 机器人蒙特卡罗定位方法、设备及存储介质 | |
Maharani et al. | Particle filter based single shot multibox detector for human moving prediction | |
Wan et al. | M-AMST: an automatic 3D neuron tracing method based on mean shift and adapted minimum spanning tree | |
CN116842818A (zh) | 基于鹈鹕优化算法的结构面产状分组方法 | |
Kaleci et al. | Plane segmentation of point cloud data using split and merge based method |
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 |