CN114926637A - 基于多尺度距离图与点云语义分割的园林地图构建方法 - Google Patents

基于多尺度距离图与点云语义分割的园林地图构建方法 Download PDF

Info

Publication number
CN114926637A
CN114926637A CN202210520695.0A CN202210520695A CN114926637A CN 114926637 A CN114926637 A CN 114926637A CN 202210520695 A CN202210520695 A CN 202210520695A CN 114926637 A CN114926637 A CN 114926637A
Authority
CN
China
Prior art keywords
point
static
map
dynamic
point cloud
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202210520695.0A
Other languages
English (en)
Inventor
蒙艳玫
李科
韩冰
张金来
韦锦
刘辉
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Guangxi University
Original Assignee
Guangxi University
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 Guangxi University filed Critical Guangxi University
Priority to CN202210520695.0A priority Critical patent/CN114926637A/zh
Publication of CN114926637A publication Critical patent/CN114926637A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/20Image preprocessing
    • G06V10/26Segmentation 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/267Segmentation 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
    • 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
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • G06T17/05Geographic models
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/20Image enhancement or restoration using local operators
    • G06T5/30Erosion or dilatation, e.g. thinning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/764Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/82Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/70Labelling scene content, e.g. deriving syntactic or semantic representations
    • 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/20081Training; Learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20084Artificial neural networks [ANN]

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Evolutionary Computation (AREA)
  • Multimedia (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Computing Systems (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Medical Informatics (AREA)
  • Geometry (AREA)
  • Computational Linguistics (AREA)
  • Databases & Information Systems (AREA)
  • Biomedical Technology (AREA)
  • Molecular Biology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Mathematical Physics (AREA)
  • Data Mining & Analysis (AREA)
  • Biophysics (AREA)
  • General Engineering & Computer Science (AREA)
  • Remote Sensing (AREA)
  • Computer Graphics (AREA)
  • Image Analysis (AREA)

Abstract

本发明提供了一种基于多尺度距离图与点云语义分割的园林地图构建方法,先定义园林环境中的动/静物体,使用卷积神经网络对扫描到的物体投影到距离图上提取语义信息,并对含有语义标签的距离图进行图形学闭运算处理优化动态区域,然后使用语义信息通过权值调整细化动/静区域检测敏感度,采用检查投影距离图像平面内地图点的可见性完成动静点的分类任务,最后在多个尺度距离图下实现点云的去除与恢复任务,完成静态地图的构建与优化。本发明的园林地图构建方法,改善了传统方法对静态物体误删、错删的概率,提高地图复用时点云配准精度,更能在园林环境下保留植被外观的完整信息,为园林修剪机器人的后续工作提供丰富的先验信息。

Description

基于多尺度距离图与点云语义分割的园林地图构建方法
技术领域
本发明涉及地图构建技术领域,特别涉及一种基于多尺度距离图与点云语义分割的园林环境静态地图构建方法。
背景技术
建立一张信息丰富、准确的环境地图是园林绿篱修剪机器人自主作业过程中极其重要的环节,在使用激光雷达、相机等传感器进行环境建模的同时,不可避免的也会对一些路边的行人以及过往的车辆进行建模。这些动态物体在地图上或多或少留下痕迹,这些都不利于后续自主导航任务,影响整体功能的实现。而对于园林修剪机器人来说,园林环境中不仅含有大量的动态物体,也含有大量用于精准定位的植被模型信息,大多植被的枝叶会随风摇曳从而也作为动态物体存在与环境中,与此同时姿态估计的不准确也会导致大量的静态点被误判为动态目标,如果使用传统的动态滤除方法将不仅会对环境中的动态物体进行滤除,园林环境中植被的大多数外观信息也会被破坏,在后续开展修剪工作中可能由于信息缺失将导致很难达到预期修剪期望,因此,去除动态物体且保证植被模型不被破坏成为了园林环境建模的一个重大的难题。
为了去除环境中的动态物体,目前有两种主流的方法。一种是在传感器扫描阶段,不断的查询与历史世界模型的一致性来检测当前扫描中的动态物体,并进行滤除,这种方式旨在提高同步定位与建图(Simultaneous Localization and Mapping,SLAM)系统在定位中的鲁棒性,减少动态物体对环境建图及自身定位的影响。另外一种方法是在扫描完成后对地图进行符合要求的后处理,旨在构建一个不含潜在错误且能保留有效环境信息的地图。
激光静态地图的建立是一个经典的主题,传统的方法主要依赖已构建的点云地图完成动态点的移除工作,常见的方法就是使用体素射线进行铸造,这种方法需要密集的激光扫描,且需要有非常精准的姿态信息,正因如此也给系统带来了很大的计算量。为了解决计算量大的问题,有人提出了基于可见性的方法,这种类型的方法提出了一个查询点和一个窄视场内的映射点进行关联。近几年基于距离图的方法也表现出不错的性能,该方法利用查询扫描与已知子地图的差异性作为检测动态物体的方式,并采用多分辨率恢复静态点的方式优化地图。随着基于学习的方法和动态场景下的语义SLAM的发展,针对含动态物体的环境建图表现出不错的效果,这种方法通常用神经网络来预测潜在移动物体的概率,或者利用语义信息高效准确的实现了动态和静态目标的分离任务。
以上动态滤除算法在城市环境中已经达到不错的效果,但在园林环境中,植被的枝叶在环境中经常以动态物体的形式出现,现有大部分动态去除算法只考虑物体是否移动,并未考虑是否应该进行移除,这导致对一些微动的植被被去除,这对于园林地图并不是有利的,由于植被的外观形状是园林修剪机器人工作的重要信息,在建立静态地图时不能将其也作为动态物体去除,现有的算法并不能很好适配于园林环境,在滤出动态物体的同时对园林环境关键信息的保护是需要解决的一个关键问题。
因此,目前急需对园林环境的静态地图构建方法进行优化,旨在解决上述问题。
发明内容
本发明的目的在于提供一种基于多尺度距离图与点云语义分割的园林地图构建方法,包括以下步骤:
步骤S1,定义园林环境中的动/静物体:采取距离图的形式对点云进行球面投影,然后在距离图上使用卷积神经网络对扫描到的物体提取语义信息,在距离图上进行语义分割,得到含有语义标签和深度信息的距离图;
步骤S2,对含有语义标签和深度信息的距离图进行图像处理算法中的闭运算操作,优化整个距离图中的动态区域,进一步的填充由于语义分割不完整而导致的目标图像覆盖不全面的现象,得到每一帧点云的语义标签与标签概率;
步骤S3,使用语义信息对距离图上的动/静态区域的点云赋予不同的权值,对待去除的区域增大权值提高检测敏感度,待保留的区域减少权值降低检测敏感度,调整动/静区域点云的检测灵敏度;
步骤S4,将距离图加入动态检测模型,建立多时间维度匹配模型,根据残差图初步完成动静点的分类任务;
步骤S5,不断改变距离图的像素分辨率,将不同像素分辨率的距离输入步骤S4的多时间维度匹配模型中,按照步骤S4的方法进行动静点分类,然后整合各个像素分辨率下点云被分类为动/静态的次数,根据不同分辨率下的分类结果进行综合计算,最终确定动/静点的分类,然后根据每一帧中动/静点的分类和每一帧的位姿情况,将每一帧中的静态点云和对应的位姿构建静态点云地图,最后再建立静态地图。
进一步的,在步骤S1中,距离图的像素坐标使用以下方法获得:通过映射∏:R3→R2将每帧点云中的每个点P(x,y,z)转换为球面坐标,最终转化为像素坐标,转化公式如下:
Figure BDA0003641409450000031
在公式中,(u,v)代表激光点在图像坐标中对应的位置,(h,w)为距离图的高和宽,f=fup+fdown表示传感器的垂直视场,r=||pi||2表示激光点到传感器的距离信息;在这个过程中,每个点pi都对应着一对图像坐标(u,v)的元组列表,同一像素中的激光点可表示为不同的索引,最终将点云信息存储在分辨率为64×900的图像中。同时也可以将额外的信息作为额外的通道加入到图像存储中。
进一步的,在步骤S1中,语义分割采用RangeNet++卷积神经网络对点云进行预测并生成语义信息,以kitti数据集为训练集,对道路上影响园林修剪机器人自主导航和路径规划的动态物(如汽车、自行车、人)进行网络训练;然后,RangeNet++卷积神经网络将每次扫描帧投影到距离图中进行分割,将分割出的动态物(此时并没有区分运动的物体与静止的物体,只是分割出更有可能成为动态物的类)归为一类,不应该被滤除的静态物(除定义的动态物之外)归为另一类;将每一帧的距离图推断出语义标签和分割中对应标签的概率,后续步骤中会针对不同概率的标签做进一步的处理。
进一步的,在步骤S2中,采用膨胀+腐蚀的闭运算操作来优化整个距离图中的动态区域,方法为:
首先对单个像素点取值的定义如下:
Figure BDA0003641409450000041
其中p表示像素点(i,j)内的点云,r(p)表示点云的距离值,rk表示单个像素中距离传感器最近点的距离值;
在整个闭运算过程中总共分为两步进行;
第一步对RangeNet++卷积神经网络输出的原始语义掩模Ssem进行膨胀运算,选取Size(3×3)和十字结构的结构元素进行扩充,定义如下:
Figure BDA0003641409450000042
Figure BDA0003641409450000043
表示膨胀运算,图像A的膨胀运算就是生成能够将结构B全部包含的图像,然后与距离图中的r值进行关联;膨胀区域与相邻区域(结构元素中心像素)的距离差值超过阈值θ的区域不会被考虑为膨胀对象,表示为:
||rs d-rs||<θ
rs
Figure BDA0003641409450000044
分别表示原始语义掩模Ssem和膨胀后语义掩模
Figure BDA0003641409450000045
的像素点取值;
第二步对膨胀后的语义掩模
Figure BDA0003641409450000046
进行腐蚀运算,仍选取Size(3×3)和十字结构的结构元素进行腐蚀,定义如下:
Figure BDA0003641409450000047
Θ表示腐蚀运算,图像A的腐蚀运算就是寻找图像中能后将结构元素B全部包含的像素点;腐蚀区域与相邻区域(结构元素中心像素)的距离差值小于阈值的θ区域不会被考虑为腐蚀对象,表示为:
||rs e-rs d||<θ
Figure BDA0003641409450000051
分别为膨胀后的语义掩模
Figure BDA0003641409450000052
和腐蚀后的语义掩模
Figure BDA0003641409450000053
的像素点取值。
其中,步骤S3中对距离图上的动/静态区域的点云赋予不同的权值的方法为:
在步骤S1中已经在距离图上分割并优化了定义的“动态物”,在步骤S2中经过RangeNet++卷积神经网络获取了每个点云的标签概率概率越大的点越有可能成为真正的动态点,对步骤S1定义的动态物的每个点云增设语义标签通道、标签概率通道和语义权重通道,表示为
Figure BDA0003641409450000054
其中lDynamic=1,lstatic=0,
Figure BDA0003641409450000055
(x,y,z)为点云相对于激光雷达坐标系的位置,lDynamic,lstatic分别表示为动态标签和静态标签,
Figure BDA0003641409450000056
Figure BDA0003641409450000057
分别为单次扫描中动静点的权值;n为单次扫描的点云总数,p为点云的标签概率;
利用SLAM里程计(视觉里程计)获取的每一帧点云的位姿信息
Figure BDA0003641409450000058
计算当前帧和变换帧之间每个像素的残差值,定义如下:
Figure BDA0003641409450000059
其中
Figure BDA00036414094500000510
表示帧SA与帧SB的相对位置关系,
Figure BDA00036414094500000511
表示两个像素点之间的差异性,
Figure BDA00036414094500000512
表示SA与SB对应的像素点取值,
Figure BDA00036414094500000513
表示B帧中单个像素点的取值,引入语义权值具体定义如下:
Figure BDA00036414094500000514
r表示激光点到传感器的原始距离,rs表示加入语义权重后的距离值,
Figure BDA00036414094500000515
表示权重信息;
通过待去除的区域增大权值提高检测敏感度,待保留的地方减少权值降低检测敏感度,即可调整动/静区域点云的检测灵敏度。
进一步的,在步骤S4中,采用检查投影距离图像平面内地图点的可见性的方法来执行动静点的分类任务,在离线模式下,在查询点与映射点的匹配模型中加入多维时间的距离图像,建立多时间维度匹配模型;具体如下:
首先沿着园林修剪机器人的运动定义一组序列扫描,其中当前扫描为Sj,查询序列为…,Sj-3,Sj-2,Sj-1,Sj+1,Sj+2,Sj+3,…,利用SALM获取的位姿信息,对应计算出查询序列与当前扫描的位姿关系,定义如下:
Figure BDA0003641409450000061
Figure BDA0003641409450000062
其中,
Figure BDA0003641409450000063
为查询序列Sj+n与当前扫描帧Sj的位姿变化关系,
Figure BDA0003641409450000064
Figure BDA0003641409450000065
表示相邻两帧位姿变化关系;在对序列进行查询扫描时,不仅使用历史查询序列,而且将未来查询序列也加入到检测模型中,以此来克服单次扫描中一些遮挡和阴影等问题,面对一些速度相似的动态对象时更可能被检测出;
然后计算当前距离图中每个序列点与其他距离图中映射点的残差值,并根据阈值对序列点进行动/静状态标记,得到每个像素点被标记不同状态的次数,进而得到每个点云被标记为动静点的次数。并采用基于距离的自适应阈值方法来更好的分类动/静点,定义如下,
Figure BDA0003641409450000066
其中τ为是否标记动态点的阈值,τD为固定阈值,α为调整系数,r为激光点到传感器距离。
进一步的,步骤S5中,构建静态点云地图的方法为:
逐步降低距离图的分辨率,并将不同像素分辨率的距离输入步骤S4的多时间维度匹配模型中,按照步骤S4的方法进行动静点分类,然后将动/静点还原到三维点云空间,然后计算每一个点P在不同分辨率下被标记为动态点nDynamic和静态点nStatic的(映射序列扫描数量为nDynamic)的总次数,并通过计算每个序列点的得分情况对动/静点进行重新分类,具体公式如下:
S(·)=αnDynamic+βnStatic
其中,α为积极权重,β为消极权重;通过降低距离图分辨率对动/静点分类更新迭代,最后综合在多个尺度距离图下动/静分类的结果完成静态点云地图的构建。
进一步的,将动/静点还原到三维点云空间的方法为:
采用对原始点云进行二次映射的方法,若某个点对应的像素点被标记为动态点,则在原始点云中删除该点,若为静态点则保留,具体如下:
Figure BDA0003641409450000071
Figure BDA0003641409450000072
其中,F(·)表示Π:R3→R2的映射函数。
进一步的,步骤S5中,建立静态地图的方法为:
根据SLAM保存的位姿信息{Ti,Ti+1,…,Tn}与处理后的扫描帧
Figure BDA0003641409450000073
Figure BDA0003641409450000074
进行点云的拼接,如下所示:
M={MD,MS}
Figure BDA0003641409450000075
式中,M为原始地图;MD为动态地图;MS为静态地图;
Figure BDA0003641409450000076
表示关联扫描帧与对应的位姿信息。
与现有技术相比,本发明具有如下有益效果:
本发明提供了一种基于多尺度距离图与点云语义分割的园林环境静态地图构建方法,改善了传统方法对静态物体误删、错删的概率,提高地图复用时点云配准精度,更能按照需求在园林环境下保留植被外观的完整信息,为园林修剪机器人的后续工作提供丰富的先验信息。
附图说明
图1为基于多尺度距离图与点云语义分割的园林地图构建方法的流程图;
在图1中,序号①②③部分表示距离图像的点云语义分割和优化处理部分;序号④表示查询点和映射点匹配模型部分;序号⑤表示动态点移除和静态点恢复部分,Sn表示第n次迭代时点云主要由静态点组成,各部分方框大小表示点的个数;
图2为原始点云生成距离图的可视化过程图;
图3为语义分割和优化距离图中的动态区域的可视化过程;
图4为使用语义信息对距离图上动/静态区域的点云赋予不同的权值的残差图生成可视化流程;
图5为不同分辨率下残差图的对比可视化图;
图6为对点云进行删除与恢复的可视化图;
图7为本发明的方法与其他方法的对比可视化图。
具体实施方式
下面结合附图,对本发明的具体实施方式进行详细描述,但应当理解本发明的保护范围并不受具体实施方式的限制。
除非另有其它明确表示,否则在整个说明书和权利要求书中,术语“包括”或其变换如“包含”或“包括有”等等将被理解为包括所陈述的元件或组成部分,而并未排除其它元件或其它组成部分。
实施例1
请参见图1,一种基于多尺度距离图与点云语义分割的园林地图构建方法,包括以下步骤:
步骤S1,定义园林环境中的动/静物体:采取距离图的形式对点云进行球面投影,然后在距离图上使用卷积神经网络对扫描到的物体提取语义信息,在距离图上进行语义分割,得到含有语义标签和深度信息的距离图;
其中,在步骤S1中,距离图的像素坐标使用以下方法获得:通过映射Π:R3→R2将每帧点云中的每个点P(x,y,z)转换为球面坐标,最终转化为像素坐标,转化公式如下:
Figure BDA0003641409450000081
在公式中,(u,v)代表激光点在图像坐标中对应的位置,(h,w)为距离图的高和宽,f=fup+fdown表示传感器的垂直视场,r=||pi||2表示激光点到传感器的距离信息;在这个过程中,每个点pi都对应着一对图像坐标(u,v)的元组列表,同一像素中的激光点可表示为不同的索引,最终将点云信息存储在分辨率为64×900的图像中。同时也可以将额外的信息作为额外的通道加入到图像存储中;
请参见图2,图2展示了步骤S1中原始点云生成距离图的可视化过程,首先将每个点云坐标点进行球形投影,将其转化为球面坐标,最后再展开成距离图,最终点云被转化为像素坐标。对于机械式激光雷达,如Velodyne HDL-64E,根据垂直角分辨率FOV_Up(上视场角)和FOV_Down(下视场角),雷达内部的64个激光器中的每一个都以固定角度定向,当旋转一周时,通过计算每个激光从物体反射后的飞行时间形成点云(如图2-(b))。以激光雷达作为坐标系的中心,通过球面映射将点云进行空心圆柱投影(如图2-(a)),最后通过基坐标系变换转换为2D图像(如图2-(c))
其中,在步骤S1中,语义分割采用RangeNet++卷积神经网络对点云进行预测并生成语义信息,以kitti数据集为训练集,对道路上影响园林修剪机器人自主导航和路径规划的动态物(如汽车、自行车、人)进行网络训练;然后,RangeNet++卷积神经网络将每次扫描帧投影到距离图中进行分割,将分割出的动态物(此时并没有区分运动的物体与静止的物体,只是分割出更有可能成为动态物的类)归为一类,不应该被滤除的静态物(除定义的动态物之外)归为另一类;将每一帧的距离图推断出语义标签和分割中对应标签的概率,后续步骤中会针对不同概率的标签做进一步的处理。
步骤S2,对含有语义标签和深度信息的距离图进行图像处理算法中的闭运算操作,优化整个距离图中的动态区域,进一步的填充由于语义分割不完整而导致的目标图像覆盖不全面的现象,得到每一帧点云的语义标签与标签概率;
其中,在步骤S2中,采用膨胀+腐蚀的闭运算操作来优化整个距离图中的动态区域,方法为:
首先对单个像素点取值的定义如下:
Figure BDA0003641409450000101
其中p表示像素点(i,j)内的点云,r(p)表示点云的距离值,rk表示单个像素中距离传感器最近点的距离值;
在整个闭运算过程中总共分为两步进行;
第一步对RangeNet++卷积神经网络输出的原始语义掩模Ssem进行膨胀运算,选取Size(3×3)和十字结构的结构元素进行扩充,定义如下:
Figure BDA0003641409450000102
Figure BDA0003641409450000103
表示膨胀运算,图像A的膨胀运算就是生成能够将结构B全部包含的图像,然后与距离图中的r值进行关联;膨胀区域与相邻区域(结构元素中心像素)的距离差值超过阈值θ的区域不会被考虑为膨胀对象,表示为:
||rs d-rs||<θ
rs
Figure BDA0003641409450000104
分别表示原始语义掩模Ssem和膨胀后语义掩模
Figure BDA0003641409450000105
的像素点取值;
第二步对膨胀后的语义掩模
Figure BDA0003641409450000106
进行腐蚀运算,仍选取Size(3×3)和十字结构的结构元素进行腐蚀,定义如下:
Figure BDA0003641409450000107
Θ表示腐蚀运算,图像A的腐蚀运算就是寻找图像中能后将结构元素B全部包含的像素点;腐蚀区域与相邻区域(结构元素中心像素)的距离差值小于阈值的θ区域不会被考虑为腐蚀对象,表示为:
||rs e-rs d||<θ
Figure BDA0003641409450000108
分别为膨胀后的语义掩模
Figure BDA0003641409450000109
和腐蚀后的语义掩模
Figure BDA00036414094500001010
的像素点取值。
请参见图3,图3展示了步骤S1中进行语义分割和步骤S2中优化距离图中的动态区域的可视化过程,Sraw表示由初始点云图进行球映射得到的距离图,Ssem表示经过语义分割后得到的距离图,在本实施例中只对人、汽车、摩托、自行车进行训练与预测,之后采用膨胀操作尽可能的扩大语义区域得到
Figure BDA00036414094500001011
最后采用腐蚀操作来去除边界标签和错误标签的小区域得到
Figure BDA0003641409450000111
图3中右侧展示了语义分割与优化处理的详细信息,腐蚀运算能够限制连通域因膨胀运算带来的面积增长,但此处仍有一定的面积外扩,这当然也是发明人希望得到的结果。与原始预测相比,经闭运算操作处理后将没有分割完整的部分进行重新包含起来,以及将一个物体没有连通的区域进行了连通,并采取了相对于目标物更大的区域作为动态区域。
步骤S3,使用语义信息对距离图上的动/静态区域的点云赋予不同的权值,对待去除的区域增大权值提高检测敏感度,待保留的区域减少权值降低检测敏感度,调整动/静区域点云的检测灵敏度,方法如下:
在步骤S1中已经在距离图上分割并优化了定义的“动态物”,在步骤S2中经过RangeNet++卷积神经网络获取了每个点云的标签概率概率越大的点越有可能成为真正的动态点,对步骤S1定义的动态物的每个点云增设语义标签通道、标签概率通道和语义权重通道,表示为
Figure BDA0003641409450000112
其中lDynamic=1,lstatic=0,
Figure BDA0003641409450000113
x,y,z)为点云相对于激光雷达坐标系的位置,lDynamic,lstatic分别表示为动态标签和静态标签,
Figure BDA0003641409450000114
Figure BDA0003641409450000115
分别为单次扫描中动静点的权值;n为单次扫描的点云总数,p为点云的标签概率;
利用SLAM里程计(视觉里程计)获取的每一帧点云的位姿信息
Figure BDA0003641409450000116
计算当前帧和变换帧之间每个像素的残差值,定义如下:
Figure BDA0003641409450000117
其中
Figure BDA0003641409450000118
表示帧SA与帧SB的相对位置关系,
Figure BDA0003641409450000119
表示两个像素点之间的差异性,
Figure BDA00036414094500001110
表示SA与SB对应的像素点取值,
Figure BDA00036414094500001111
表示B帧中单个像素点的取值,引入语义权值具体定义如下:
Figure BDA00036414094500001112
r表示激光点到传感器的原始距离,rs表示加入语义权重后的距离值,
Figure BDA00036414094500001113
表示权重信息;
通过待去除的区域增大权值提高检测敏感度,待保留的地方减少权值降低检测敏感度,即可调整动/静区域点云的检测灵敏度。
请参见图4,图4展示了步骤S3中使用语义信息对距离图上动/静态区域的点云赋予不同的权值的残差图生成可视化流程,通过对待去除的区域增大权值提高检测敏感度,待保留的地方减小权值降低检测敏感度,在图4所示的残差图中,例如移动的汽车(方框1),由于存在运动趋势,在有语义权重的残差图中残余图案更加明显,这对于缓慢行驶的汽车同样适用。对于微动的枝叶(方框2),在有语义权重的残差图中残余图案不太明显,而在原始残差图案存在一些模糊残余图案。因此,语义信息为园林环境下移动对象的分割提供了更大的灵活性。
步骤S4,将距离图加入动态检测模型,建立多时间维度匹配模型,根据残差图初步完成动静点的分类任务;
其中,在步骤S4中,采用检查投影距离图像平面内地图点的可见性的方法来执行动静点的分类任务,在离线模式下,在查询点与映射点的匹配模型中加入多维时间的距离图像,建立多时间维度匹配模型;具体如下:
首先沿着园林修剪机器人的运动定义一组序列扫描,其中当前扫描为Sj,查询序列为…,Sj-3,Sj-2,Sj-1,Sj+1,Sj+2,Sj+3,…,利用SALM获取的位姿信息,对应计算出查询序列与当前扫描的位姿关系,定义如下:
Figure BDA0003641409450000121
Figure BDA0003641409450000122
其中,
Figure BDA0003641409450000123
为查询序列Sj+n与当前扫描帧Sj的位姿变化关系,
Figure BDA0003641409450000124
Figure BDA0003641409450000125
表示相邻两帧位姿变化关系;在对序列进行查询扫描时,不仅使用历史查询序列,而且将未来查询序列也加入到检测模型中,以此来克服单次扫描中一些遮挡和阴影等问题,面对一些速度相似的动态对象时更可能被检测出;
然后计算当前距离图中每个序列点与其他距离图中映射点的残差值,并根据阈值对序列点进行动/静状态标记,得到每个像素点被标记不同状态的次数,进而得到每个点云被标记为动静点的次数。并采用基于距离的自适应阈值方法来更好的分类动/静点,定义如下,
Figure BDA0003641409450000131
τ=τD+α*r
其中τ为是否标记动态点的阈值,τD为固定阈值,α为调整系数,r为激光点到传感器距离。
请参见图5,图5展示了不同分辨率下当前帧与其他帧的差值图可视化,左侧为在高分辨率(一个像素0.4°)下当前帧与其他帧的差值图可视化;右侧为在低分辨率(一个像素1°)下当前帧与其他帧的差值图可视化。方框1中表示骑车的人;方框2中表示建筑;方框3中表示植物;方框4中为缓慢移动的汽车。距离图中浅色像素点表示远距离;残差图中黄色点的数量表示动态点的个数,像素点的亮度表示距离差值大小。图4中,缓慢移动的汽车方框1在具有语义信息的残差图中表现为更多的残余图案,而在低像素分辨下(图5中的方框4),残余图案仍很明显,这部分将作为动态点处理。微动的树枝(图4中的方框2)也表现为更少的模糊残余图案,而在低分辨率下(图5中的方框3),残余图案几乎不存在,这部分将被作为静态点处理。
步骤S5,不断改变距离图的像素分辨率,将不同像素分辨率的距离输入步骤S4的多时间维度匹配模型中,按照步骤S4的方法进行动静点分类,然后整合各个像素分辨率下点云被分类为动/静态的次数,根据不同分辨率下的分类结果进行综合计算,最终确定动/静点的分类,然后根据每一帧中动/静点的分类和每一帧的位姿情况,将每一帧中的静态点云和对应的位姿构建静态点云地图,最后再建立静态地图。
其中,步骤S5中,构建静态点云地图的方法为:
逐步降低距离图的分辨率,并将不同像素分辨率的距离输入步骤S4的多时间维度匹配模型中,按照步骤S4的方法进行动静点分类,然后将动/静点还原到三维点云空间,然后计算每一个点P在不同分辨率下被标记为动态点nDynamic和静态点nStatic的(映射序列扫描数量为nDynamic)的总次数,并通过计算每个序列点的得分情况对动/静点进行重新分类,具体公式如下:
S(·)=αnDynamic+βnStatic
在公式中,α为积极权重,β为消极权重;通过降低距离图分辨率对动/静点分类更新迭代,最后综合在多个尺度距离图下动/静分类的结果完成静态点云地图的构建。
其中,将动/静点还原到三维点云空间的方法为:
采用对原始点云进行二次映射的方法,若某个点对应的像素点被标记为动态点,则在原始点云中删除该点,若为静态点则保留,具体如下:
Figure BDA0003641409450000141
Figure BDA0003641409450000142
在公式中,F(·)表示Π:R3→R2的映射函数。
其中,步骤S5中,建立静态地图的方法为:
根据SLAM保存的位姿信息{Ti,Ti+1,…,Tn}与处理后的扫描帧
Figure BDA0003641409450000143
Figure BDA0003641409450000144
进行点云的拼接,如下所示:
M={MD,MS}
Figure BDA0003641409450000145
式中,M为原始地图;MD为动态地图;MS为静态地图;
Figure BDA0003641409450000146
表示关联扫描帧与对应的位姿信息。
请参见图6,图6展示了步骤S5中对点云进行删除与恢复的可视化图,图中为KITTI数据集08序列的一段片段。将原始地图中的动态点和静态点分离并分别构成可视化的地图,这里可以看出,动态点的数量随着分辨率的降低不断被还原成静态点,而静态地图中的点数不断增加,不断被恢复,静态点与动态点总体呈互补的状态。原始地图中的深色点为估计出的动态点,方框1和方框2中为植物生成的点云。
请参见图7,图7展示了本发明提出的方法与其他方法的对比可视化图,在图中为Rellis-3d数据集序列分别为01(从1800帧到2000帧),02(从1200到1500帧),上面为原始地图,下面为多个方法与本发明方法的静态对比地图。其中,道路上的痕迹为动态物体在地图上留下的痕迹(右侧为局部放大图)。低像素分辨率下,查询点和映射点之间的对应关系就会比较容易,这会降低运动估计不准确带来的运动模糊问题(图5中方框1内自行车底部,方框2内杆的边缘),在较高像素分辨率下标记的动态点(图6中方框1内的植物)在低分辨下重新被标记为静态点(图6中方框2内的植物),可以看到动态点相应减少,总体呈互补的状态。
经过上述步骤,即可实现针对性的点云滤除工作,完成园林环境静态地图的构建与增强优化。
本发明所提供的基于多尺度距离图与点云语义分割结合的园林环境静态地图的构建方法,改善了传统方法对静态物体误删、错删的概率,提高地图复用时点云配准精度,更能按照需求在园林环境下保留植被外观的完整信息,为园林修剪机器人的后续工作提供丰富的先验信息。

Claims (9)

1.一种基于多尺度距离图与点云语义分割的园林地图构建方法,其特征在于,包括以下步骤:
步骤S1,定义园林环境中的动/静物体:采取距离图的形式对点云进行球面投影,然后在距离图上使用卷积神经网络对扫描到的物体提取语义信息,在距离图上进行语义分割,得到含有语义标签和深度信息的距离图;
步骤S2,对含有语义标签和深度信息的距离图进行图像处理算法中的闭运算操作,优化整个距离图中的动态区域,进一步的填充由于语义分割不完整而导致的目标图像覆盖不全面的现象,得到每一帧点云的语义标签与标签概率;
步骤S3,使用语义信息对距离图上的动/静态区域的点云赋予不同的权值,对待去除的区域增大权值提高检测敏感度,待保留的区域减少权值降低检测敏感度,调整动/静区域点云的检测灵敏度;
步骤S4,将距离图加入动态检测模型,建立多时间维度匹配模型,根据残差图初步完成动静点的分类任务;
步骤S5,不断改变距离图的像素分辨率,将不同像素分辨率的距离输入步骤S4的多时间维度匹配模型中,按照步骤S4的方法进行动静点分类,然后整合各个像素分辨率下点云被分类为动/静态的次数,根据不同分辨率下的分类结果进行综合计算,最终确定动/静点的分类,然后根据每一帧中动/静点的分类和每一帧的位姿情况,将每一帧中的静态点云和对应的位姿构建静态点云地图,最后再建立静态地图。
2.按照权利要求1所述的园林地图构建方法,其特征在于:在步骤S1中,距离图的像素坐标使用以下方法获得:通过映射Π:R3→R2将每帧点云中的每个点P(x,y,z)转换为球面坐标,最终转化为像素坐标,转化公式如下:
Figure FDA0003641409440000011
在公式中,(u,v)代表激光点在图像坐标中对应的位置,(h,w)为距离图的高和宽,f=fup+fdown表示传感器的垂直视场,r=||pi||2表示激光点到传感器的距离信息;在这个过程中,每个点pi都对应着一对图像坐标(u,v)的元组列表,同一像素中的激光点可表示为不同的索引,最终将点云信息存储在分辨率为64×900的图像中。同时也可以将额外的信息作为额外的通道加入到图像存储中。
3.按照权利要求1所述的园林地图构建方法,其特征在于:在步骤S1中,语义分割采用RangeNet++卷积神经网络对点云进行预测并生成语义信息,以kitti数据集为训练集,对道路上影响园林修剪机器人自主导航和路径规划的动态物(如汽车、自行车、人)进行网络训练;然后,RangeNet++卷积神经网络将每次扫描帧投影到距离图中进行分割,将分割出的动态物(此时并没有区分运动的物体与静止的物体,只是分割出更有可能成为动态物的类)归为一类,不应该被滤除的静态物(除定义的动态物之外)归为另一类;将每一帧的距离图推断出语义标签和分割中对应标签的概率,后续步骤中会针对不同概率的标签做进一步的处理。
4.按照权利要求1所述的园林地图构建方法,其特征在于,在步骤S2中,采用膨胀+腐蚀的闭运算操作来优化整个距离图中的动态区域,方法为:
首先对单个像素点取值的定义如下:
Figure FDA0003641409440000021
其中p表示像素点(i,j)内的点云,r(p)表示点云的距离值,rk表示单个像素中距离传感器最近点的距离值;
在整个闭运算过程中总共分为两步进行;
第一步对RangeNet++卷积神经网络输出的原始语义掩模Ssem进行膨胀运算,选取Size(3×3)和十字结构的结构元素进行扩充,定义如下:
Figure FDA0003641409440000022
Figure FDA0003641409440000023
表示膨胀运算,图像A的膨胀运算就是生成能够将结构B全部包含的图像,然后与距离图中的r值进行关联;膨胀区域与相邻区域(结构元素中心像素)的距离差值超过阈值θ的区域不会被考虑为膨胀对象,表示为:
||rs d-rs||<θ
rs
Figure FDA0003641409440000024
分别表示原始语义掩模Ssem和膨胀后语义掩模
Figure FDA0003641409440000025
的像素点取值;
第二步对膨胀后的语义掩模
Figure FDA0003641409440000026
进行腐蚀运算,仍选取Size(3×3)和十字结构的结构元素进行腐蚀,定义如下:
Figure FDA0003641409440000031
Θ表示腐蚀运算,图像A的腐蚀运算就是寻找图像中能后将结构元素B全部包含的像素点;腐蚀区域与相邻区域(结构元素中心像素)的距离差值小于阈值的θ区域不会被考虑为腐蚀对象,表示为:
||rs e-rs d||<θ
Figure FDA0003641409440000032
分别为膨胀后的语义掩模
Figure FDA0003641409440000033
和腐蚀后的语义掩模
Figure FDA0003641409440000034
的像素点取值。
5.按照权利要求1所述的园林地图构建方法,其特征在于,步骤S3中对距离图上的动/静态区域的点云赋予不同的权值的方法为:
在步骤S1中已经在距离图上分割并优化了定义的“动态物”,在步骤S2中经过RangeNet++卷积神经网络获取了每个点云的标签概率概率越大的点越有可能成为真正的动态点,对步骤S1定义的动态物的每个点云增设语义标签通道、标签概率通道和语义权重通道,表示为
Figure FDA0003641409440000035
其中lDynamic=1,lstatic=0,
Figure FDA0003641409440000036
Figure FDA0003641409440000037
(x,y,z)为点云相对于激光雷达坐标系的位置,lDynamic,lstatic分别表示为动态标签和静态标签,
Figure FDA0003641409440000038
Figure FDA0003641409440000039
分别为单次扫描中动静点的权值;n为单次扫描的点云总数,p为点云的标签概率;
利用SLAM里程计(视觉里程计)获取的每一帧点云的位姿信息
Figure FDA00036414094400000310
计算当前帧和变换帧之间每个像素的残差值,定义如下:
Figure FDA00036414094400000311
其中
Figure FDA00036414094400000312
表示帧SA与帧SB的相对位置关系,
Figure FDA00036414094400000317
表示两个像素点之间的差异性,
Figure FDA00036414094400000313
表示SA与SB对应的像素点取值,
Figure FDA00036414094400000314
表示B帧中单个像素点的取值,引入语义权值具体定义如下:
Figure FDA00036414094400000315
r表示激光点到传感器的原始距离,rs表示加入语义权重后的距离值,
Figure FDA00036414094400000316
表示权重信息;
通过待去除的区域增大权值提高检测敏感度,待保留的地方减少权值降低检测敏感度,即可调整动/静区域点云的检测灵敏度。
6.按照权利要求1所述的园林地图构建方法,其特征在于,在步骤S4中,采用检查投影距离图像平面内地图点的可见性的方法来执行动静点的分类任务,在离线模式下,在查询点与映射点的匹配模型中加入多维时间的距离图像,建立多时间维度匹配模型,方法为:
首先沿着园林修剪机器人的运动定义一组序列扫描,其中当前扫描为Sj,查询序列为…,Sj-3,Sj-2,Sj-1,Sj+1,Sj+2,Sj+3,…,利用SALM获取的位姿信息,对应计算出查询序列与当前扫描的位姿关系,定义如下:
Figure FDA0003641409440000041
Figure FDA0003641409440000042
其中,
Figure FDA0003641409440000043
为查询序列Sj+n与当前扫描帧Sj的位姿变化关系,
Figure FDA0003641409440000044
表示相邻两帧位姿变化关系;在对序列进行查询扫描时,不仅使用历史查询序列,而且将未来查询序列也加入到检测模型中,以此来克服单次扫描中一些遮挡和阴影等问题,面对一些速度相似的动态对象时更可能被检测出;
然后计算当前距离图中每个序列点与其他距离图中映射点的残差值,并根据阈值对序列点进行动/静状态标记,得到每个像素点被标记不同状态的次数,进而得到每个点云被标记为动静点的次数。并采用基于距离的自适应阈值方法来更好的分类动/静点,定义如下,
Figure FDA0003641409440000045
τ=τD+α*r
其中τ为是否标记动态点的阈值,τD为固定阈值,α为调整系数,r为激光点到传感器距离。
7.按照权利要求1所述的园林地图构建方法,其特征在于,步骤S5中,构建静态点云地图的方法为:
逐步降低距离图的分辨率,并将不同像素分辨率的距离输入步骤S4的多时间维度匹配模型中,按照步骤S4的方法进行动静点分类,然后将动/静点还原到三维点云空间,然后计算每一个点P在不同分辨率下被标记为动态点nDynamic和静态点nStatic的(映射序列扫描数量为nDynamic)的总次数,并通过计算每个序列点的得分情况对动/静点进行重新分类,具体公式如下:
S(·)=αnDynamic+βnStatic
其中,α为积极权重,β为消极权重;通过降低距离图分辨率对动/静点分类更新迭代,最后综合在多个尺度距离图下动/静分类的结果完成静态点云地图的构建。
8.按照权利要求7所述的园林地图构建方法,其特征在于,将动/静点还原到三维点云空间的方法为:
采用对原始点云进行二次映射的方法,若某个点对应的像素点被标记为动态点,则在原始点云中删除该点,若为静态点则保留,具体如下:
Figure FDA0003641409440000051
Figure FDA0003641409440000052
其中,F(·)表示∏:R3→R2的映射函数。
9.按照权利要求1所述的园林地图构建方法,其特征在于,步骤S5中,建立静态地图的方法为:
根据SLAM保存的位姿信息{Ti,Ti+1,…,Tn}与处理后的扫描帧
Figure FDA0003641409440000053
进行点云的拼接,如下所示:
M={MD,MS}
Figure FDA0003641409440000054
式中,M为原始地图;MD为动态地图;MS为静态地图;
Figure FDA0003641409440000055
表示关联扫描帧与对应的位姿信息。
CN202210520695.0A 2022-05-12 2022-05-12 基于多尺度距离图与点云语义分割的园林地图构建方法 Pending CN114926637A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210520695.0A CN114926637A (zh) 2022-05-12 2022-05-12 基于多尺度距离图与点云语义分割的园林地图构建方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210520695.0A CN114926637A (zh) 2022-05-12 2022-05-12 基于多尺度距离图与点云语义分割的园林地图构建方法

Publications (1)

Publication Number Publication Date
CN114926637A true CN114926637A (zh) 2022-08-19

Family

ID=82809336

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210520695.0A Pending CN114926637A (zh) 2022-05-12 2022-05-12 基于多尺度距离图与点云语义分割的园林地图构建方法

Country Status (1)

Country Link
CN (1) CN114926637A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116596923A (zh) * 2023-07-17 2023-08-15 天津市蓟州区民力新能源科技有限公司 基于边缘检测的园林植物识别方法及系统

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116596923A (zh) * 2023-07-17 2023-08-15 天津市蓟州区民力新能源科技有限公司 基于边缘检测的园林植物识别方法及系统
CN116596923B (zh) * 2023-07-17 2023-09-12 天津市蓟州区民力新能源科技有限公司 基于边缘检测的园林植物识别方法及系统

Similar Documents

Publication Publication Date Title
CN111583369B (zh) 一种基于面线角点特征提取的激光slam方法
CN114413881B (zh) 高精矢量地图的构建方法、装置及存储介质
CN113506318B (zh) 一种车载边缘场景下的三维目标感知方法
CN113593017A (zh) 露天矿地表三维模型构建方法、装置、设备及存储介质
CN113516664A (zh) 一种基于语义分割动态点的视觉slam方法
CN112509056B (zh) 一种动态战场环境实时路径规划系统及方法
CN112613378A (zh) 3d目标检测方法、系统、介质及终端
CN113761999A (zh) 一种目标检测方法、装置、电子设备和存储介质
CN112396655B (zh) 一种基于点云数据的船舶目标6d位姿估计方法
CN115032648B (zh) 一种基于激光雷达密集点云的三维目标识别与定位方法
CN114325634A (zh) 一种基于激光雷达的高鲁棒性野外环境下可通行区域提取方法
CN115393680A (zh) 雾天场景下多模态信息时空融合的3d目标检测方法及系统
CN113989744A (zh) 一种基于超大尺寸高分辨图像的行人目标检测方法及系统
Liu et al. Image-translation-based road marking extraction from mobile laser point clouds
CN112070800A (zh) 一种基于三维点云极化地图表征的智能车定位方法及系统
CN115330969A (zh) 一种用于地面无人车的局部静态环境矢量化描述方法
CN116643291A (zh) 一种视觉与激光雷达联合剔除动态目标的slam方法
CN114926637A (zh) 基于多尺度距离图与点云语义分割的园林地图构建方法
CN114049362A (zh) 一种基于transformer的点云实例分割方法
CN114556419A (zh) 三维点云分割方法和装置、可移动平台
CN116879870A (zh) 一种适用于低线束3d激光雷达的动态障碍物去除方法
CN117053779A (zh) 一种基于冗余关键帧去除的紧耦合激光slam方法及装置
Han et al. GardenMap: Static point cloud mapping for Garden environment
CN111507341A (zh) 一种目标边界框的调整方法、装置、设备及存储介质
CN116664851A (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