CN115526936B - 定位模型的训练方法和点云数据定位方法及装置 - Google Patents
定位模型的训练方法和点云数据定位方法及装置 Download PDFInfo
- Publication number
- CN115526936B CN115526936B CN202211506549.9A CN202211506549A CN115526936B CN 115526936 B CN115526936 B CN 115526936B CN 202211506549 A CN202211506549 A CN 202211506549A CN 115526936 B CN115526936 B CN 115526936B
- Authority
- CN
- China
- Prior art keywords
- point cloud
- cloud data
- preset
- positioning
- positioning model
- 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
- 238000012549 training Methods 0.000 title claims abstract description 135
- 238000000034 method Methods 0.000 title claims abstract description 112
- 238000012795 verification Methods 0.000 claims abstract description 31
- 230000006870 function Effects 0.000 claims description 44
- 238000012545 processing Methods 0.000 claims description 43
- 238000006243 chemical reaction Methods 0.000 claims description 23
- 238000004590 computer program Methods 0.000 claims description 19
- 230000002776 aggregation Effects 0.000 claims description 14
- 238000004220 aggregation Methods 0.000 claims description 14
- 238000000605 extraction Methods 0.000 claims description 13
- 230000008569 process Effects 0.000 abstract description 24
- 238000004364 calculation method Methods 0.000 abstract description 8
- 238000010586 diagram Methods 0.000 description 14
- 238000011176 pooling Methods 0.000 description 10
- 238000004891 communication Methods 0.000 description 6
- 230000003287 optical effect Effects 0.000 description 5
- 238000004422 calculation algorithm Methods 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 239000006185 dispersion Substances 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 238000007781 pre-processing Methods 0.000 description 3
- 238000011161 development Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000010606 normalization Methods 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 238000010408 sweeping Methods 0.000 description 2
- 238000007792 addition Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000000802 evaporation-induced self-assembly Methods 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/70—Determining position or orientation of objects or cameras
- G06T7/73—Determining position or orientation of objects or cameras using feature-based methods
- G06T7/74—Determining position or orientation of objects or cameras using feature-based methods involving reference images or patches
-
- 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/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
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10028—Range image; Depth image; 3D point clouds
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20081—Training; Learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20084—Artificial neural networks [ANN]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30248—Vehicle exterior or interior
- G06T2207/30252—Vehicle exterior; Vicinity of vehicle
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Evolutionary Computation (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Databases & Information Systems (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Software Systems (AREA)
- Artificial Intelligence (AREA)
- Multimedia (AREA)
- Image Analysis (AREA)
Abstract
本申请公开了一种定位模型的训练方法和点云数据定位方法及装置。定位模型的训练方法包括:获取预设训练样本;根据训练集中的第一点云数据,对预先构建的点云定位模型进行训练,得到训练后的点云定位模型;将验证集中的第二点云数据输入训练后的点云定位模型,并获取训练后的点云定位模型输出的每个第二点云数据的预测全局描述符;根据每个第二点云数据的预测特征信息,确定训练后的点云定位模型的定位精度值;在定位精度值满足预设精度条件的情况下,将训练后的点云定位模型确定为目标定位模型。根据本申请实施例,能够有效减少获取定位信息过程中的冗余计算,提高定位的鲁棒性,实现高精度定位。
Description
技术领域
本申请属于定位技术领域,尤其涉及一种定位模型的训练方法和点云数据定位方法及装置。
背景技术
随着定位技术的发展,越来越多的可移动设备通过自身定位实现导航和自动移动。由于可移动设备的应用场景的越来越多,例如,在复杂的户外场景、多样的室内场景中,导航***对机器人和自动驾驶汽车的高鲁棒,到高精度定位有着极高的要求;又例如拥有自动驾驶功能的智能车辆、扫地机器人,以及无人机等产品,因此,可移动设备在应用过程中对定位精度的要求越来越高。
目前,为了便于在可移动设备中实现精确定位,常常利用激光雷达通过相关点云算法来实现定位功能。例如,现有的点云定位方式中,需要利用组合导航数据预测车辆位姿,并利用扩展卡尔曼滤波进行车辆定位。其中,整个算法计算量大,步骤复杂冗余,且定位欠缺鲁棒性,因此,如何基于点云数据实现提高定位精度的问题亟需解决。
发明内容
本申请实施例提供一种定位模型的训练方法和点云数据定位方法及装置,能够有效减少获取定位信息过程中的冗余计算,提高定位的鲁棒性,实现高精度定位。
第一方面,本申请实施例提供一种定位模型的训练方法,该方法包括:
获取预设训练样本,其中,预设训练样本包括训练集和验证集,训练集包括第一预设数量的第一点云数据,验证集包括第二预设数量的第二点云数据;
根据训练集中的第一点云数据,对预先构建的点云定位模型进行训练,得到训练后的点云定位模型;
将验证集中的第二点云数据输入训练后的点云定位模型,并获取训练后的点云定位模型输出的每个第二点云数据的预测全局描述符,预测全局描述符用于表示第二点云数据对应位置的预测特征信息;
根据每个第二点云数据的预测特征信息,确定训练后的点云定位模型的定位精度值;
在定位精度值满足预设精度条件的情况下,将训练后的点云定位模型确定为目标定位模型。
在第一方面的一些可实现方式中,预先构建的点云定位模型包括向量转换网络、特征提取网络和预设特征聚合函数;
根据训练集中的第一点云数据,对预先构建的点云定位模型进行训练,得到训练后的点云定位模型,包括:
将每个第一点云数据输入向量转换网络,得到每个第一点云数据对应的第一转换向量;
将每个第一转换向量输入特征提取网络,得到每个第一点云数据的初始特征信息;
将每个第一点云数据的初始特征信息输入预设特征聚合函数,得到每个第一点云数据对应的第一全局描述符,其中,第一全局描述符用于表示第一点云数据的定位的特征信息;
根据预设损失函数和每个第一点云数据对应的第一全局描述符,自动调整预先构建的点云定位模型中的模型参数,得到训练后的点云定位模型。
在第一方面的一些可实现方式中,根据预设损失函数和每个第一点云数据对应的第一全局描述符,自动调整预先构建的点云定位模型中的模型参数,得到训练后的点云定位模型,包括:
根据预设损失函数和每个第一点云数据对应的第一全局描述符,确定点云定位模型的损失值;
根据损失值,自动调整预先构建的点云定位模型中的模型参数,得到训练后的点云定位模型。
在第一方面的一些可实现方式中,训练集还包括每个第一点云数据的标记信息,标记信息包括第m个第一点云数据的正样本和第m个第一点云数据的负样本,正样本包括第一预设数量个第一点云数据中与第m个第一点云数据相似的第一点云数据的标识,负样本包括第一预设数量个第一点云数据中与第m个第一点云数据不相似的第一点云数据的标识,其中,m∈M,M为第一预设数量;
根据预设损失函数和每个第一点云数据对应的第一全局描述符,确定点云定位模型的损失值,包括:
计算每个所述第一点云数据对应的第一全局描述符与所述正样本对应的全局描述符的第一欧氏距离,以及,计算每个所述第一点云数据对应的第一全局描述符与所述负样本对应的全局描述符的第二欧氏距离;
对应每个第一点云数据,计算第一欧氏距离与第二欧氏距离的差值,并对M个差值进行求和计算得到初始损失值;
计算预设超参数与初始损失值的和;
其中,当预设超参数与初始损失值的和大于或等于零时,将预设超参数与初始损失值的和作为损失值;
当预设超参数与初始损失值的和小于零时,将损失值设置为预设数值。
在第一方面的一些可实现方式中,根据每个第二点云数据的预测特征信息,确定训练后的点云定位模型的定位精度值,包括:
获取预设点云地图;
根据每个第二点云数据的预测特征信息和预设点云地图,确定每个第二点云数据的预测位置信息;
根据每个第二点云数据的预设位置信息和第二点云数据的实际位置信息,确定训练后的点云定位模型的定位精度值。
在第一方面的一些可实现方式中,根据每个第二点云数据的预测特征信息和预设点云地图,确定每个第二点云数据的预测位置信息,包括:
根据第二点云数据的预测特征信息,计算第二点云数据与预设点云地图之间的最小欧氏距离;
将预设点云地图中最小欧氏距离对应位置,作为第二点云数据的预测位置信息。
第二方面,本申请实施例提供一种点云数据定位方法,该方法包括:
获取实时采集的点云数据;
将点云数据输入目标定位模型,通过目标定位模型输出点云数据的全局描述符,其中,目标定位模型根据实现第一方面或者第一方面任一可实现方式中的定位模型的训练方法训练得到,全局描述符用于表示点云数据对应位置的预测特征信息;
根据点云数据的预测特征信息,计算点云数据与预设点云地图之间的最小欧氏距离;
将预设点云地图中最小欧氏距离对应位置,确定为点云数据的目标位置。
第三方面,本申请实施例提供一种定位模型的训练装置,包括:
获取模块,用于获取预设训练样本,其中,预设训练样本包括训练集和验证集,训练集包括第一预设数量的第一点云数据,验证集包括第二预设数量的第二点云数据;
处理模块,用于根据训练集中的第一点云数据,对预先构建的点云定位模型进行训练,得到训练后的点云定位模型;
处理模块,还用于将验证集中的第二点云数据输入训练后的点云定位模型,并获取训练后的点云定位模型输出的每个第二点云数据的预测全局描述符,预测全局描述符用于表示第二点云数据对应位置的预测特征信息;
处理模块,还用于根据每个第二点云数据的预测特征信息,确定训练后的点云定位模型的定位精度值;
处理模块,还用于在定位精度值满足预设精度条件的情况下,将训练后的点云定位模型确定为目标定位模型。
第四方面,本申请实施例提供一种点云数据定位装置,包括:
获取模块,用于获取实时采集的点云数据;
处理模块,用于将点云数据输入目标定位模型,通过目标定位模型输出点云数据的全局描述符,其中,目标定位模型根据实现第一方面或者第一方面任一可实现方式中的定位模型的训练方法训练得到,全局描述符用于表示点云数据对应位置的预测特征信息;
处理模块,还用于根据点云数据的预测特征信息,计算点云数据与预设点云地图之间的最小欧氏距离;
处理模块,还用于将预设点云地图中最小欧氏距离对应位置,确定为点云数据的目标位置。
第三方面,本申请提供一种电子设备,该设备包括:处理器以及存储有计算机程序指令的存储器;处理器执行计算机程序指令时实现第一方面或者第一方面任一可实现方式中的定位模型的训练方法,或者实现如第二方面中的点云数据定位方法。
第四方面,本申请提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序指令,计算机程序指令被处理器执行时实现第一方面或者第一方面任一可实现方式中的定位模型的训练方法,或者实现如第二方面中的点云数据定位方法。
第五方面,本申请实施例提供了一种计算机程序产品,计算机程序产品中的指令由电子设备的处理器执行时,使得电子设备执行如第一方面或者第一方面任一可实现方式中的定位模型的训练方法,或者如第二方面中的点云数据定位方法。
本申请实施例的定位模型的训练方法和点云数据定位方法及装置,获取预设训练样本,通过使用预设训练样本中训练集和验证集中的点云数据,对预先构建的点云定位模型进行训练和验证。其中。在验证过程中,通过使用获取训练后的点云定位模型输出的每个第二点云数据的预测全局描述符,预测全局描述符用于表示第二点云数据的定位的预测特征信息;根据每个第二点云数据的预测特征信息,确定训练后的点云定位模型的定位精度值;在定位精度值满足预设精度条件的情况下,将训练后的点云定位模型确定为目标定位模型。如此,根据本申请实施例得到的目标定位模型,能够有效减少获取定位信息过程中的冗余计算,提高定位的鲁棒性,实现高精度定位。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例中所需要使用的附图作简单的介绍,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的一种定位模型的训练方法的流程示意图;
图2是本申请实施例提供的一种预先构建的点云定位模型的示意图;
图3是本申请实施例提供的一种点云数据定位方法的流程示意图;
图4是本申请实施例提供的一种定位模型的训练装置的流程示意图;
图5是本申请实施例提供的一种定位模型的训练装置的结构示意图;
图6是本申请实施例提供的一种电子设备的结构示意图。
具体实施方式
下面将详细描述本申请的各个方面的特征和示例性实施例,为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及具体实施例,对本申请进行进一步详细描述。应理解,此处所描述的具体实施例仅意在解释本申请,而不是限定本申请。对于本领域技术人员来说,本申请可以在不需要这些具体细节中的一些细节的情况下实施。下面对实施例的描述仅仅是为了通过示出本申请的示例来提供对本申请更好的理解。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
随着定位技术的发展,越来越多的可移动设备通过自身定位实现导航和自动移动。由于可移动设备的应用场景的越来越多,例如,在复杂的户外场景、多样的室内场景中,导航***对机器人和自动驾驶汽车的高鲁棒,到高精度定位有着极高的要求;又例如拥有自动驾驶功能的智能车辆、扫地机器人,以及无人机等产品,因此,可移动设备在应用过程中对定位精度的要求越来越高。
目前,为了便于在可移动设备中实现精确定位,常常利用激光雷达通过相关点云算法来实现定位功能。例如,现有的点云定位方式中,需要利用组合导航数据预测车辆位姿,并利用扩展卡尔曼滤波进行车辆定位。其中,整个算法计算量大,步骤复杂冗余,且定位欠缺鲁棒性,因此,如何基于点云数据实现提高定位精度的问题亟需解决。
为了解决现有技术问题,本申请实施例提供了一种定位模型的训练方法和点云数据定位方法及装置。下面首先对本申请实施例所提供的定位模型的训练方法进行介绍。
图1示出了本申请一个实施例提供的定位模型的训练方法的流程示意图。如图1所示,该方法可以包括步骤110至步骤150。
步骤110,获取预设训练样本。
其中,预设训练样本包括训练集和验证集,训练集包括第一预设数量的第一点云数据,验证集包括第二预设数量的第二点云数据;
步骤120,根据训练集中的第一点云数据,对预先构建的点云定位模型进行训练,得到训练后的点云定位模型;
步骤130,将验证集中的第二点云数据输入训练后的点云定位模型,并获取训练后的点云定位模型输出的每个第二点云数据的预测全局描述符。
其中,预测全局描述符用于表示第二点云数据对应位置的预测特征信息。
步骤140,根据每个第二点云数据的预测特征信息,确定训练后的点云定位模型的定位精度值。
步骤150,在所述定位精度值满足预设精度条件的情况下,将所述训练后的点云定位模型确定为目标定位模型。
下面介绍上述各个步骤的具体实现方式。
具体地,涉及上述步骤110,获取预设训练样本。在预设训练样本中包括多个点云数据。示例性的,可以对预设应用场景采集得到的点云数据,在预设应用场景中对应已建立有点云地图。预设应用场景例如预设的路段、商场等公共场所,预设应用场景还可以是居住空间等个人使用场所,在此并不具体限定。在对预设应用场景采集的多个点云数据中每个点云数据包括具体地位置信息。
在一些实施例中,可以根据模型训练的需求,对预设应用场景采集的多个点云数据进行划分,例如,可以从多个点云数据中随机提取第一预设数量的点云数据,生成模型的训练集;可以从多个点云数据中随机提取第二预设数量的点云数据,生成模型的验证集。可选地,可以根据实际训练需求,在提取点云数据的过程中,可以设置提取条件。例如,提取条件可以是训练集的点云数据和验证集的点云数据不重合。为了便于描述,在本申请实施例中,可以将训练集中的点云数据描述为第一点云数据,将验证集中的点云数据描述为第二点云数据。
在一些实施例中,为了提高模型训练速度和模型训练精度。可以对预设应用场景采集得到的点云数据进行预处理,将预处理后的点云数据作为在预设训练样本中包括的多个点云数据。示例性的,预处理可以包括对采集的点云数据进行剪裁,保留点云数据中的主要区域。具体例如,可以基于采集点云数据的激光雷达建立三维坐标系,并预设保留点云数据的坐标范围。
示例性的,通过激光雷达对预设应用场景采集得到点云数据后,将坐标范围之外的点移除。以激光雷达为坐标原点为例,对应每个坐标轴的坐标范围可以设置(-80,80),即,x,y,z中每个坐标轴对应坐标的取值在(-80,80)范围内。由于在采集的每帧点云数据中超出坐标范围的点包括信息量较少,因此,在移除坐标范围的之外的点后,并不影响模型训练精度。
可选地,在预处理过程中还可以包括对点云数据进行下采样处理和归一化处理。例如,在剪裁得到固定坐标范围内的点云数据后,还可以对固定坐标范围内的点云数据进行下采样处理。示例性的,下采样处理例如可以是随机均匀的从每帧固定坐标范围内的点云数据中采样的预设数量个点。其中,预设数量个点可以为4096,在此并不具体限制。
接下来,将每帧点云数据对应的预设数量个点的坐标进行归一化处理,从而将每帧点云数据中每个点的坐标值转换到[-1,1]之间。示例性的,归一化公式可以如公式(1)所示。
(1)
其中,A为归一化后的坐标值,
a (
x,
y,
z)表示每帧点云数据中每个点的坐标,
avg(
x,
y,
z)表示固定坐标范围内的点云数据中坐标平均值,C为预设常数。示例性的,C可以根据固定坐标范围确定。例如,每个坐标轴对应的取值范围为(-80,80),C可以取值为80。
根据本申请实施例,通过对上述预设应用场景中采集得到的点云数据进行预处理,将预处理后的点云数据作为在预设训练样本中包括的多个点云数据,并基于预设训练样本生成训练集和验证集,可以有效提高模型的训练速度和训练后模型的定位精度。
涉及上述步骤120,可以使用训练集中的第一点云数据,对预先构建的点云定位模型进行训练。
在一些实施例中,预先构建的点云定位模型包括向量转换网络、特征提取网络和预设特征聚合函数。具体地,将每个第一点云数据输入向量转换网络,得到每个第一点云数据对应的第一转换向量;将每个第一转换向量输入特征提取网络,得到每个第一点云数据的初始特征信息;将每个第一点云数据的初始特征信息输入预设特征聚合函数,得到每个第一点云数据对应的第一全局描述符,其中,第一全局描述符用于表示第一点云数据的定位的特征信息;根据预设损失函数和每个第一点云数据对应的第一全局描述符,自动调整预先构建的点云定位模型中的模型参数,得到训练后的点云定位模型。
示例性的,向量转换网络例如可以是Transform转换网络,在Transform转换网络中,可以分别预先设定卷积层(Conv)、最大池化层(Maxpooling)以及全连接层(Fullyconnected layer,FCL)的数量。
例如,图2是本申请实施例提供的一种预先构建的点云定位模型的示意图。结合图2所示,点云定位模型中的Transform转换网络可以包括三层卷积层211,一层最大池化层212和三层全连接层213。
在卷积层211中, Conv(h,w,c)用于表示使用(h*w)大小的卷积核,其输出通道大小为c,即有c个大小为(h*w)的卷积核进行卷积操作。继续结合图2所示,第一层卷积层211a可以表示为Conv(1,3,64),第二层卷积层211b可以表示为Conv(1,1,128),第三层卷积层211c可以表示为Conv(1,1,1024)。
最大池化层212可以表示最大池化操作。
在全连接层213中,FC(x)用于表示尺寸大小为x的全连接层。继续结合图2所示,第一层全连接层213a可以表示为FC(512),第二层全连接层213b可以表示为FC(256),第三层全连接213c可以表示为FC(9)。
将训练集中的第一点云数据输入向量转换网络后,其中,由于最大池化操作采用具有对称性的对称函数,通过最大池化层可以克服点云数据的无序性,实现聚合点云数据中每个点的信息。根据本申请实施例,点云数据经过卷积层、最大池化层、三层全连接层,从而可以不受输入顺序的影响,得到每个第一点云数据的第一转换向量,可选地,可以通过向量L1表示,其中,第一转换向量可以用来表征第一点云数据的底层特征。
在一些实施例中,特征提取网络可以包括Inception二分支结构卷积分支。在Inception二分支结构中可以包括多个模块,在每个模块中可以包括两个卷积分支,其中,Inception二分支结构中模块的数量可以根据实际应用需求进行设置。继续结合图2所示,以Inception二分支结构包括5个模块为例,在模块221中两个卷积分支的卷积核分别为Conv(3,3,32)和Conv(5,3,32),在模块222中两个卷积分支的卷积核分别为Conv(3,1,32)和Conv(5,1,32),在模块223中两个卷积分支的卷积核分别为Conv(3,1,32)和Conv(5,1,32),在模块224中两个卷积分支的卷积核分别为Conv(3,1,64)和Conv(5,1,64),在模块225中两个卷积分支的卷积核分别为Conv(3,1,128)和Conv(5,1,128)。
在每个模块中,两个卷积分支分别的卷积结果进行拼接,并将拼接后的卷积结果输入下一模块中。基于此,每个点云数据的第一转换向量,依次经过模块221、模块222、模块223、模块224、模块225,得到每个第一点云数据的初始特征信息。在一些实施例中,通过使用多分支多尺度的Inception卷积结构,可以保证训练后的点云定位模型可以捕获点云之间点与点的拓扑结构信息,使用不同尺寸的感受野可以提取点云中不同尺寸物体的信息,保证训练后的点云定位模型高精度检索点云。
通过特征提取网络输出初始特征信息后,初始特征信息输入预设特征聚合函数,可以生成初始特征信息的全局描述符。由于第一全局描述符用于表示第一点云数据的定位的特征信息,从而可以保证训练后点云定位模型的定位精度,且能够有效减少模型的计算量,便于快速部署训练后的点云定位模型。
可选地,预设特征聚合函数可以是平均池化(Generalized Mean Pooling,GeM)池化函数。示例性的,继续结合图2所示,初始特征信息输入预设特征聚合函数230,从而输入第一点云数据对应的第一全局描述符。
作为一个具体地示例,预设特征聚合函数可以如公式(2)所示。
(2)
其中,f(g)表示通过预设特征聚合函数输出的第一全局描述符,共有K维,每一维度共有Xk个值,对于第k个值求由该维度的Xk个值求pk次方再相加后除以Xk总和,再开pk次方根,其中的pk为k维对应的超参数,由网络模型学习而得。f(g)是由K个值组成的新向量,[∙]T为转置。
根据本申请实施例,通过结合特征提取网络中的多分支多尺度的卷积结构和预设特征聚合函数,可以有效提高点云定位模型的定位精度和鲁棒性。
在获得第一点云数据对应的第一全局描述符后,可以结合预设损失函数自动调整预先构建的点云定位模型中的模型参数,得到训练后的点云定位模型。
在一些实施例中,根据预设损失函数和每个第一点云数据对应的第一全局描述符,自动调整预先构建的点云定位模型中的模型参数,得到训练后的点云定位模型,具体可以包括:根据预设损失函数和每个第一点云数据对应的第一全局描述符,确定点云定位模型的损失值;根据损失值,自动调整预先构建的点云定位模型中的模型参数,得到训练后的点云定位模型。
作为一个具体地示例,训练集还可以包括每个第一点云数据的标记信息,标记信息包括第m个第一点云数据的正样本和第m个第一点云数据的负样本,正样本包括第一预设数量个第一点云数据中与第m个第一点云数据相似的第一点云数据的标识,负样本包括第一预设数量个第一点云数据中与第m个第一点云数据不相似的第一点云数据的标识,其中,i∈N,N为所述第一预设数量。
具体地,在上述步骤120中,将训练集中的第一点云数据输入预先构建的点云定位模型之前,还可以为训练集中每个第一点云数据标记正样本和负样本,从而得到每个第一点云数据的标记信息。
以训练集中包括M个第一点云数据为例,对第m个第一点云数据,将M个第一点云数据中与第m个第一点云数据的距离小于第一预设距离的第一点云数据标记为第m个第一点云数据的正样本,将M个第一点云数据中与第m个第一点云数据的距离大于第二预设距离的第一点云数据标记为第m个第一点云数据的负样本。可选地,第一预设距离可以为3米,第二预设距离可以为10米。其中,正样本中的点云数据可以确定为与第m个第一点云数据相似的点云数据,负样本中的点云数据可以确定为与第m个第一点云数据不相似的点云数据。
示例性的,根据公式(3)可以计算得到M个第一点云数据中每个第一点云数据与第m个第一点云数据的距离。
(3)
其中,
dist(∙)表示M个第一点云数据中每个第一点云数据与第m个第一点云数据的距离,X表示第m个第一点云数据,Y表示M个第一点云数据中任一个第一点云数据,每个点云数据共有n个点,i表示第一点云数据中的点,sqr(∙)为平方根函数。
具体地,在根据预设损失函数和每个第一点云数据对应的第一全局描述符,确定点云定位模型的损失值时,可以参考以下步骤:计算每个第一点云数据对应的第一全局描述符与正样本对应的全局描述符的第一欧氏距离,以及,计算每个第一点云数据对应的第一全局描述符与负样本对应的全局描述符的第二欧氏距离;对应每个第一点云数据,计算第一欧氏距离与第二欧氏距离的差值,并对M个差值进行求和计算得到初始损失值;计算预设超参数与初始损失值的和。其中,当预设超参数与初始损失值的和大于或等于零时,将预设超参数与初始损失值的和作为损失值;当预设超参数与初始损失值的和小于零时,将损失值设置为预设数值。
示例性的,预设损失函数可以如公式(4)所示。
(4)
其中,L为损失值,表示第m个点云数据,表示第i个点云数据对应正样本中的点云数据,表示第m个点云数据对应负样本中的点云数据,表示第m个点云数据的第一全局描述符,||∙||2表示两个点云数据的全局描述符之间的欧氏距离。其中
α为预设超参数,表示设置的边缘值。[∙]+用于表示预设超参数与初始损失值的和大于或等于零时,将预设超参数与初始损失值的和作为损失值,当预设超参数与初始损失值的和小于零时,将损失值设置为预设数值。
根据本申请实施例提供的预设损失函数,可以第一点云数据与其对应的正样本的距离,并拉远第一点云数据与其对应的负样本的距离。也就是说,通过本申请实施例提供的预设损失函数,可以将第一点云数据靠近与其相似点云数据离近,并远离与第一点云数据不相似点云数据,能够实现提高点云定位模型的训练速度,并使训练后的点云定位模型在给定点云地图中实现高精度点云定位。
为确保点云定位模型能够实现高精度点云定位,在通过训练集对预先构建的点云数据进行训练之后,可以使用验证集对训练后的点云定位模型进行验证。
具体地,涉及上述步骤130,将验证集中的第二点云数据输入训练后的点云定位模型,并获取训练后的点云定位模型输出的每个第二点云数据的预测全局描述符。通过预测全局描述符用于表示第二点云数据对应位置的预测特征信息。
接下来,涉及上述步骤140,根据每个第二点云数据的预测特征信息,确定训练后的点云定位模型的定位精度值。具体地,可以参考以下步骤:获取预设点云地图;根据每个第二点云数据的预测特征信息和预设点云地图,确定每个第二点云数据的预测位置信息;根据每个第二点云数据的预设位置信息和第二点云数据的实际位置信息,确定训练后的点云定位模型的定位精度值。
具体地,预设点云地图可是在预设应用场景中对应已建立有点云地图。在预设点云地图中可以包括每个点的特征信息,根据预设点云地图中每个点的特征信息,将第二点云数据的预测特征信息与预设点云地图进行匹配计算,确定预设点云地图中与第二点云数据相匹配的点。由此,预设点云地图中与第二点云数据相匹配的点在预设点云地图中的位置信息,即为第二点云数据的预测位置信息。
可选地,根据第二点云数据的预测特征信息,计算第二点云数据与预设点云地图之间的最小欧氏距离;将预设点云地图中最小欧氏距离对应位置,作为第二点云数据的预测位置信息。其中,预设点云地图中最小欧氏距离对应位置即预设点云地图中与第二点云数据相匹配的点的位置。
由于第二点云数据为预设训练样本中已知的点云数据,第二点云数据对应的实际位置信息也是已知的,因此,在确定每个第二点云数据对应预测位置信息后,可以根据每个第二点云数据的预设位置信息和第二点云数据的实际位置信息,确定训练后的点云定位模型的定位精度值。
涉及上述步骤150,在定位精度值满足预设精度条件的情况下,将训练后的点云定位模型确定为目标定位模型。
其中,预设精度条件可以根据实际应用需求进行设置。例如,可以确定计算每个第二点云数据的预设位置信息和第二点云数据的实际位置信息的差值,得到第二预设数量个差值。可以根据第二预设数量个差值的离散度评估训练后点云定位模型的定位精度值。其中,预设精度条件可以是定位精度值小于预设精度阈值。即,预设精度条件为第二预设数量个差值的离散度小于预设精度阈值。当第二预设数量个差值的离散度小于预设精度阈值时,可以确定当前训练后的点云定位模型可以作为目标定位模型。
可以理解的是,当定位精度值不满于预设精度条件时,可以对点云定位模型继续训练。
根据本申请实施例,获取预设训练样本,通过使用预设训练样本中训练集和验证集中的点云数据,对预先构建的点云定位模型进行训练和验证。其中。在验证过程中,通过使用获取训练后的点云定位模型输出的每个第二点云数据的预测全局描述符,预测全局描述符用于表示第二点云数据的定位的预测特征信息;根据每个第二点云数据的预测特征信息,确定训练后的点云定位模型的定位精度值;在定位精度值满足预设精度条件的情况下,将训练后的点云定位模型确定为目标定位模型。如此,根据本申请实施例得到的目标定位模型,能够有效减少获取定位信息过程中的冗余计算,提高定位的鲁棒性,实现高精度定位。
基于在本申请实施例提供的定位模型的训练方法得到目标定位模型,本申请实施例还提供了一种点云数据定位方法。图3是本申请是实施例提供的一种点云数据定位方法的流程示意图,点云数据定位方法可以包括步骤310至步骤340。
步骤310,获取实时采集的点云数据。
步骤320,将点云数据输入目标定位模型,通过目标定位模型输出点云数据的全局描述符。
其中,目标定位模型根据本申请上述实施例提供的定位模型训练方法训练得到,其中,全局描述符用于表示点云数据对应位置的预测特征信息。
步骤330,根据点云数据的预测特征信息,计算点云数据与预设点云地图之间的最小欧氏距离。
步骤340,将预设点云地图中最小欧氏距离对应位置,确定为点云数据的目标位置。
具体地,可以通过激光雷达实时采集的点云数据。为了提高定位速度,减少冗余计算,可以对实时采集的点云数据进行预处理。其中,预处理可以包括对实时采集的点云数据进行下采样处理和归一化处理。例如,将实时采集的点云数据进行剪裁,得到固定坐标范围内的点云数据,再对固定坐标范围内的点云数据进行下采样处理,从而得到用于输入目标定位模型的点云数据。
在一些实施例中,预设点云地图可是在应用场景中对应已建立有点云地图。在预设点云地图中可以包括每个点的特征信息,根据预设点云地图中每个点的特征信息,结合点云数据的预测特征信息,计算点云数据与预设点云地图之间的最小欧氏距离;将预设点云地图中最小欧氏距离对应位置,确定为点云数据的目标位置。
根据本申请实施例,根据本申请实施例得到的目标定位模型,在对实时采集的点云数据定位的过程中,通过目标定位模型,能够快速、准确的得到点云数据对应位置的预测特征信息。接下来,只需要根据预设特征信息,计算点云数据与预设点云地图之间的最小欧氏距离,从而能够有效减少获取定位信息过程中的冗余计算,提高定位的鲁棒性,实现高精度定位。
基于相同的发明构思,本申请还提供了与上述定位模型的训练方法对应的定位模型的训练装置400。具体结合图4进行详细说明。
图4是本申请实施例提供的一种定位模型的训练装置的结构示意图,如图4所示,该定位模型的训练装置400可以包括:获取模块410和处理模块420。
获取模块410,用于获取预设训练样本,其中,预设训练样本包括训练集和验证集,训练集包括第一预设数量的第一点云数据,验证集包括第二预设数量的第二点云数据;
处理模块420,用于根据训练集中的第一点云数据,对预先构建的点云定位模型进行训练,得到训练后的点云定位模型;
处理模块420,还用于将验证集中的第二点云数据输入训练后的点云定位模型,并获取训练后的点云定位模型输出的每个第二点云数据的预测全局描述符,预测全局描述符用于表示第二点云数据对应位置的预测特征信息;
处理模块420,还用于根据每个第二点云数据的预测特征信息,确定训练后的点云定位模型的定位精度值;
处理模块420,还用于在定位精度值满足预设精度条件的情况下,将训练后的点云定位模型确定为目标定位模型。
在一些实施例中,所述预先构建的点云定位模型包括向量转换网络、特征提取网络和预设特征聚合函数;
处理模块420,还用于将每个所述第一点云数据输入所述向量转换网络,得到每个所述第一点云数据对应的第一转换向量;
处理模块420,还用于将每个第一转换向量输入所述特征提取网络,得到每个所述第一点云数据的初始特征信息;
处理模块420,还用于将每个所述第一点云数据的初始特征信息输入所述预设特征聚合函数,得到每个所述第一点云数据对应的第一全局描述符,其中,所述第一全局描述符用于表示所述第一点云数据的定位的特征信息;
处理模块420,还用于根据预设损失函数和每个所述第一点云数据对应的第一全局描述符,自动调整所述预先构建的点云定位模型中的模型参数,得到训练后的点云定位模型。
在一些实施例中,处理模块420,还用于所述根据预设损失函数和每个所述第一点云数据对应的第一全局描述符,确定所述点云定位模型的损失值;
处理模块420,还用于根据所述损失值,自动调整所述预先构建的点云定位模型中的模型参数,得到训练后的点云定位模型
在一些实施例中,训练集还包括每个第一点云数据的标记信息,标记信息包括第m个第一点云数据的正样本和第m个第一点云数据的负样本,正样本包括第一预设数量个第一点云数据中与第m个第一点云数据相似的第一点云数据的标识,负样本包括第一预设数量个第一点云数据中与第m个第一点云数据不相似的第一点云数据的标识,其中,m∈M,M为第一预设数量;
处理模块420,还用于计算每个所述第一点云数据对应的第一全局描述符与所述正样本对应的全局描述符的第一欧氏距离,以及,计算每个所述第一点云数据对应的第一全局描述符与所述负样本对应的全局描述符的第二欧氏距离;
处理模块420,还用于对应每个第一点云数据,计算第一欧氏距离与第二欧氏距离的差值,并对M个差值进行求和计算得到初始损失值;
处理模块420,还用于计算预设超参数与初始损失值的和;
其中,当预设超参数与初始损失值的和大于或等于零时,将预设超参数与初始损失值的和作为损失值;
当预设超参数与初始损失值的和小于零时,将损失值设置为预设数值。
在一些实施例中,获取模块410,还用于获取预设点云地图;
处理模块420,还用于根据每个第二点云数据的预测特征信息和所述预设点云地图,确定每个第二点云数据的预测位置信息;
处理模块420,还用于根据每个所述第二点云数据的预设位置信息和所述第二点云数据的实际位置信息,确定所述训练后的点云定位模型的定位精度值。
在一些实施例中,处理模块420,还用于根据所述第二点云数据的预测特征信息,计算所述第二点云数据与所述预设点云地图之间的最小欧氏距离;
处理模块420,还用于将所述预设点云地图中所述最小欧氏距离对应位置,作为所述第二点云数据的预测位置信息。
可以理解的是,本申请实施例的定位模型的训练装置400,可以对应于本申请实施例提供的定位模型的训练方法的执行主体,定位模型的训练装置400的各个模块/单元的操作和/或功能的具体细节可以参见上述本申请实施例的定位模型的训练方法中的相应部分的描述,为了简洁,在此不再赘述。
根据本申请实施例,获取预设训练样本,通过使用预设训练样本中训练集和验证集中的点云数据,对预先构建的点云定位模型进行训练和验证。其中。在验证过程中,通过使用获取训练后的点云定位模型输出的每个第二点云数据的预测全局描述符,预测全局描述符用于表示第二点云数据的定位的预测特征信息;根据每个第二点云数据的预测特征信息,确定训练后的点云定位模型的定位精度值;在定位精度值满足预设精度条件的情况下,将训练后的点云定位模型确定为目标定位模型。如此,根据本申请实施例得到的目标定位模型,能够有效减少获取定位信息过程中的冗余计算,提高定位的鲁棒性,实现高精度定位。
基于相同的发明构思,本申请还提供了与上述点云数据定位方法对应的点云数据定位装置500。具体结合图5进行详细说明。
图5是本申请实施例提供的一种点云数据定位装置的结构示意图,如图5所示,该点云数据定位装置500可以包括:获取模块510和处理模块520。
获取模块510,用于获取实时采集的点云数据;
处理模块520,用于将点云数据输入目标定位模型,通过目标定位模型输出点云数据的全局描述符。
其中,目标定位模型根据本申请上述实施例提供的定位模型训练方法训练得到,其中,全局描述符用于表示点云数据对应位置的预测特征信息。
处理模块520,还用于根据点云数据的预测特征信息,计算点云数据与预设点云地图之间的最小欧氏距离;
处理模块520,还用于将预设点云地图中最小欧氏距离对应位置,确定为点云数据的目标位置。
可以理解的是,本申请实施例的点云数据定位装置500,可以对应于本申请实施例提供的点云数据定位方法的执行主体,点云数据定位装置500的各个模块/单元的操作和/或功能的具体细节可以参见上述本申请实施例的点云数据定位方法中的相应部分的描述,为了简洁,在此不再赘述。
根据本申请实施例,根据本申请实施例得到的目标定位模型,在对实时采集的点云数据定位的过程中,通过目标定位模型,能够快速、准确的得到点云数据对应位置的预测特征信息。接下来,只需要根据预设特征信息,计算点云数据与预设点云地图之间的最小欧氏距离,从而能够有效减少获取定位信息过程中的冗余计算,提高定位的鲁棒性,实现高精度定位。
图6示出了本申请一个实施例提供的电子设备的结构示意图。如图6所示,该设备可以包括处理器601以及存储有计算机程序指令的存储器602。
具体地,上述处理器601可以包括中央处理器(Central Processing Unit,CPU),或者特定集成电路(Application Specific Integrated Circuit ,ASIC),或者可以被配置成实施本申请实施例的一个或多个集成电路。
存储器602可以包括用于信息或指令的大容量存储器。举例来说而非限制,存储器602可包括硬盘驱动器(Hard Disk Drive,HDD)、软盘驱动器、闪存、光盘、磁光盘、磁带或通用串行总线(Universal Serial Bus,USB)驱动器或者两个或更多个以上这些的组合。在一个实例中,存储器602可以包括可移除或不可移除(或固定)的介质,或者存储器602是非易失性固态存储器。存储器602可在电子设备的内部或外部。
存储器可包括只读存储器(ROM),随机存取存储器(RAM),磁盘存储介质设备,光存储介质设备,闪存设备,电气、光学或其他物理/有形的存储器存储设备。因此,通常,存储器包括一个或多个编码有包括计算机可执行指令的软件的有形(非暂态)计算机可读存储介质(例如,存储器设备),并且当该软件被执行(例如,由一个或多个处理器)时,其可操作来执行参考根据本申请的一方面的方法所描述的操作。
处理器601通过读取并执行存储器602中存储的计算机程序指令,以实现本申请实施例所描述的方法,并达到本申请实施例执行其方法达到的相应技术效果,为简洁描述在此不再赘述。
在一个示例中,该电子设备还可包括通信接口603和总线610。其中,如图6所示,处理器601、存储器602、通信接口603通过总线610连接并完成相互间的通信。
通信接口603,主要用于实现本申请实施例中各模块、装置、单元和/或设备之间的通信。
总线610包括硬件、软件或两者,将在线信息流量计费设备的部件彼此耦接在一起。举例来说而非限制,总线可包括加速图形端口(Accelerated Graphics Port,AGP)或其他图形总线、增强工业标准架构(ExtendedIndustry Standard Architecture,EISA)总线、前端总线(Front Side Bus,FSB)、超传输(Hyper Transport,HT)互连、工业标准架构(Industry Standard Architecture,ISA)总线、无限带宽互连、低引脚数(LPC)总线、存储器总线、微信道架构(MCA)总线、***组件互连(PCI)总线、PCI-Express(PCI-X)总线、串行高级技术附件(SATA)总线、视频电子标准协会局部(VLB)总线或其他合适的总线或者两个或更多个以上这些的组合。在合适的情况下,总线610可包括一个或多个总线。尽管本申请实施例描述和示出了特定的总线,但本申请考虑任何合适的总线或互连。
该电子设备可以执行本申请实施例中的定位模型的训练方法和/或点云数据定位方法,从而实现本申请实施例描述的定位模型的训练方法和/或点云数据定位方法的相应技术效果。
另外,结合上述实施例中的定位模型的训练方法和/或点云数据定位方法,本申请实施例可提供一种可读存储介质来实现。该可读存储介质上存储有计算机程序指令;该计算机程序指令被处理器执行时实现上述实施例中的任意一种定位模型的训练方法和/或点云数据定位方法。可读存储介质的示例可以是非暂态机器可读介质 ,如电子电路、半导体存储器设备、只读存储器(Read-Only Memory,ROM)、软盘、只读光盘(CompactDisc Read-Only Memory,CD-ROM)、光盘、硬盘等。
需要明确的是,本申请并不局限于上文所描述并在图中示出的特定配置和处理。为了简明起见,这里省略了对已知方法的详细描述。在上述实施例中,描述和示出了若干具体的步骤作为示例。但是,本申请的方法过程并不限于所描述和示出的具体步骤,本领域的技术人员可以在领会本申请的精神后,做出各种改变、修改和添加,或者改变步骤之间的顺序。
以上所述的结构框图中所示的功能块可以实现为硬件、软件、固件或者它们的组合。当以硬件方式实现时,其可以例如是电子电路、专用集成电路(Application SpecificIntegrated Circuit,ASIC)、适当的固件、插件、功能卡等等。当以软件方式实现时,本申请的元素是被用于执行所需任务的程序或者代码段。程序或者代码段可以存储在机器可读介质中,或者通过载波中携带的数据信号在传输介质或者通信链路上传送。“机器可读介质”可以包括能够存储或传输信息的任何介质。机器可读介质的例子包括电子电路、半导体存储器设备、只读存储器(Read-OnlyMemory,ROM)、闪存、可擦除只读存储器(Erasable ReadOnly Memory,EROM)、软盘、只读光盘(Compact Disc Read-Only Memory,CD-ROM)、光盘、硬盘、光纤介质、射频(RadioFrequency,RF)链路,等等。代码段可以经由诸如因特网、内联网等的计算机网络被下载。
还需要说明的是,本申请中提及的示例性实施例,基于一系列的步骤或者装置描述一些方法或***。但是,本申请不局限于上述步骤的顺序,也就是说,可以按照实施例中提及的顺序执行步骤,也可以不同于实施例中的顺序,或者若干步骤同时执行。
本申请实施例还提供一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序指令;该计算机程序指令被处理器执行时实现本申请实施例提供的定位模型的训练方法和/或点云数据定位方法。
另外,结合上述实施例中的定位模型的训练方法和/或点云数据定位方法、装置,以及可读存储介质,本申请实施例可提供一种计算机程序产品来实现。所述计算机程序产品中的指令由电子设备的处理器执行时,使得所述电子设备执行上述实施例中的任意一种定位模型的训练方法和/或点云数据定位方法。
上面参考根据本申请的实施例的方法、装置(***)和计算机程序产品的流程图和/或框图描述了本申请的各方面。应当理解,流程图和/或框图中的每个方框以及流程图和/或框图中各方框的组合可以由计算机程序指令实现。这些计算机程序指令可被提供给通用计算机、专用计算机、或其它可编程数据处理装置的处理器,以产生一种机器,使得经由计算机或其它可编程数据处理装置的处理器执行的这些指令使能对流程图和/或框图的一个或多个方框中指定的功能/动作的实现。这种处理器可以是但不限于是通用处理器、专用处理器、特殊应用处理器或者现场可编程逻辑电路。还可理解,框图和/或流程图中的每个方框以及框图和/或流程图中的方框的组合,也可以由执行指定的功能或动作的专用硬件来实现,或可由专用硬件和计算机指令的组合来实现。
以上所述,仅为本申请的具体实施方式,所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的***、模块和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。应理解,本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本申请的保护范围之内。
Claims (11)
1.一种定位模型的训练方法,其特征在于,包括:
获取预设训练样本,其中,所述预设训练样本包括训练集和验证集,所述训练集包括第一预设数量的第一点云数据,所述验证集包括第二预设数量的第二点云数据,其中,所述预设训练样本基于预设应用场景的采集的点云数据确定;
根据所述训练集中的第一点云数据,对预先构建的点云定位模型进行训练,得到训练后的点云定位模型;
将所述验证集中的第二点云数据输入所述训练后的点云定位模型,并获取训练后的点云定位模型输出的每个第二点云数据的预测全局描述符,所述预测全局描述符用于表示所述第二点云数据对应位置的预测特征信息;
根据每个第二点云数据的预测特征信息,确定所述训练后的点云定位模型的定位精度值;
在所述定位精度值满足预设精度条件的情况下,将所述训练后的点云定位模型确定为目标定位模型。
2.根据权利要求1所述的方法,其特征在于,所述预先构建的点云定位模型包括向量转换网络、特征提取网络和预设特征聚合函数;
所述根据所述训练集中的第一点云数据,对预先构建的点云定位模型进行训练,得到训练后的点云定位模型,包括:
将每个所述第一点云数据输入所述向量转换网络,得到每个所述第一点云数据对应的第一转换向量;
将每个第一转换向量输入所述特征提取网络,得到每个所述第一点云数据的初始特征信息;
将每个所述第一点云数据的初始特征信息输入所述预设特征聚合函数,得到每个所述第一点云数据对应的第一全局描述符,其中,所述第一全局描述符用于表示所述第一点云数据的定位的特征信息;
根据预设损失函数和每个所述第一点云数据对应的第一全局描述符,自动调整所述预先构建的点云定位模型中的模型参数,得到训练后的点云定位模型。
3.根据权利要求2所述的方法,其特征在于,所述根据预设损失函数和每个所述第一点云数据对应的第一全局描述符,自动调整所述预先构建的点云定位模型中的模型参数,得到训练后的点云定位模型,包括:
所述根据预设损失函数和每个所述第一点云数据对应的第一全局描述符,确定所述点云定位模型的损失值;
根据所述损失值,自动调整所述预先构建的点云定位模型中的模型参数,得到训练后的点云定位模型。
4.根据权利要求3所述的方法,其特征在于,所述训练集还包括每个所述第一点云数据的标记信息,所述标记信息包括第m个第一点云数据的正样本和所述第m个第一点云数据的负样本,所述正样本包括所述第一预设数量个第一点云数据中与第m个第一点云数据相似的第一点云数据的标识,所述负样本包括所述第一预设数量个第一点云数据中与所述第m个第一点云数据不相似的第一点云数据的标识,其中,m∈M,M为所述第一预设数量;
所述根据预设损失函数和每个所述第一点云数据对应的第一全局描述符,确定所述点云定位模型的损失值,包括:
计算每个所述第一点云数据对应的第一全局描述符与所述正样本对应的全局描述符的第一欧氏距离,以及,计算每个所述第一点云数据对应的第一全局描述符与所述负样本对应的全局描述符的第二欧氏距离;
对应每个所述第一点云数据,计算所述第一欧氏距离与所述第二欧氏距离的差值,并对M个所述差值进行求和计算得到初始损失值;
计算预设超参数与所述初始损失值的和;
其中,当所述预设超参数与所述初始损失值的和大于或等于零时,将所述预设超参数与所述初始损失值的和作为所述损失值;
当所述预设超参数与所述初始损失值的和小于零时,将所述损失值设置为预设数值。
5.根据权利要求1所述的方法,其特征在于,所述根据每个第二点云数据的预测特征信息,确定所述训练后的点云定位模型的定位精度值,包括:
获取预设点云地图;
根据每个第二点云数据的预测特征信息和所述预设点云地图,确定每个第二点云数据的预测位置信息;
根据每个所述第二点云数据的预设位置信息和所述第二点云数据的实际位置信息,确定所述训练后的点云定位模型的定位精度值。
6.根据权利要求5所述的方法,其特征在于,所述根据每个第二点云数据的预测特征信息和所述预设点云地图,确定每个第二点云数据的预测位置信息,包括:
根据所述第二点云数据的预测特征信息,计算所述第二点云数据与预设点云地图之间的最小欧氏距离;
将所述预设点云地图中所述最小欧氏距离对应位置,作为所述第二点云数据的预测位置信息。
7.一种点云数据定位方法,其特征在于,所述方法包括:
获取实时采集的点云数据;
将所述点云数据输入目标定位模型,通过所述目标定位模型输出所述点云数据的全局描述符,其中,所述目标定位模型根据权利要求1至6任意一项所述的定位模型的训练方法训练得到,所述全局描述符用于表示所述点云数据对应位置的预测特征信息;
根据所述点云数据的预测特征信息,计算所述点云数据与预设点云地图之间的最小欧氏距离;
将所述预设点云地图中所述最小欧氏距离对应位置,确定为所述点云数据的目标位置。
8.一种定位模型的训练装置,其特征在于,所述装置包括:
获取模块,用于获取预设训练样本,其中,所述预设训练样本包括训练集和验证集,所述训练集包括第一预设数量的第一点云数据,所述验证集包括第二预设数量的第二点云数据,其中,所述预设训练样本基于预设应用场景的采集的点云数据确定;
处理模块,用于根据所述训练集中的第一点云数据,对预先构建的点云定位模型进行训练,得到训练后的点云定位模型;
所述处理模块,还用于将所述验证集中的第二点云数据输入所述训练后的点云定位模型,并获取训练后的点云定位模型输出的每个第二点云数据的预测全局描述符,所述预测全局描述符用于表示所述第二点云数据对应位置的预测特征信息;
所述处理模块,还用于根据每个第二点云数据的预测特征信息,确定所述训练后的点云定位模型的定位精度值;
所述处理模块,还用于在所述定位精度值满足预设精度条件的情况下,将所述训练后的点云定位模型确定为目标定位模型。
9.一种点云数据定位装置,其特征在于,所述装置包括:
获取模块,用于获取实时采集的点云数据;
处理模块,用于将所述点云数据输入目标定位模型,通过所述目标定位模型输出所述点云数据的全局描述符,其中,所述目标定位模型根据权利要求1至6任意一项所述的定位模型的训练方法训练得到,所述全局描述符用于表示所述点云数据对应位置的预测特征信息;
所述处理模块,还用于根据所述点云数据的预测特征信息,计算所述点云数据与预设点云地图之间的最小欧氏距离;
所述处理模块,还用于将所述预设点云地图中所述最小欧氏距离对应位置,确定为所述点云数据的目标位置。
10.一种电子设备,其特征在于,所述设备包括:处理器,以及存储有计算机程序指令的存储器;
所述处理器读取并执行所述计算机程序指令,以实现如权利要求1-6任意一项所述的定位模型的训练方法或权利要求7所述的点云数据定位方法。
11.一种可读存储介质,其特征在于,所述可读存储介质上存储有计算机程序指令,所述计算机程序指令被处理器执行时实现如权利要求1-6任意一项所述的定位模型的训练方法或权利要求7所述的点云数据定位方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211506549.9A CN115526936B (zh) | 2022-11-29 | 2022-11-29 | 定位模型的训练方法和点云数据定位方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211506549.9A CN115526936B (zh) | 2022-11-29 | 2022-11-29 | 定位模型的训练方法和点云数据定位方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115526936A CN115526936A (zh) | 2022-12-27 |
CN115526936B true CN115526936B (zh) | 2023-04-28 |
Family
ID=84705179
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211506549.9A Active CN115526936B (zh) | 2022-11-29 | 2022-11-29 | 定位模型的训练方法和点云数据定位方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115526936B (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110276801A (zh) * | 2019-06-24 | 2019-09-24 | 深圳前海达闼云端智能科技有限公司 | 一种物体定位方法、装置及存储介质 |
CN111638528A (zh) * | 2020-05-26 | 2020-09-08 | 北京百度网讯科技有限公司 | 定位方法、装置、电子设备和存储介质 |
CN115115790A (zh) * | 2022-06-02 | 2022-09-27 | 合众新能源汽车有限公司 | 预测模型的训练方法、地图预测方法及装置 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2017114581A1 (en) * | 2015-12-30 | 2017-07-06 | Telecom Italia S.P.A. | System for generating 3d images for image recognition based positioning |
KR102335389B1 (ko) * | 2019-01-30 | 2021-12-03 | 바이두닷컴 타임즈 테크놀로지(베이징) 컴퍼니 리미티드 | 자율 주행 차량의 lidar 위치 추정을 위한 심층 학습 기반 특징 추출 |
CN110032949B (zh) * | 2019-03-22 | 2021-09-28 | 北京理工大学 | 一种基于轻量化卷积神经网络的目标检测与定位方法 |
WO2021007117A1 (en) * | 2019-07-05 | 2021-01-14 | DeepMap Inc. | Generating training data for deep learning models for building high definition maps |
CN113240038B (zh) * | 2021-05-31 | 2024-02-09 | 西安电子科技大学 | 基于高度-通道特征增强的点云目标检测方法 |
-
2022
- 2022-11-29 CN CN202211506549.9A patent/CN115526936B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110276801A (zh) * | 2019-06-24 | 2019-09-24 | 深圳前海达闼云端智能科技有限公司 | 一种物体定位方法、装置及存储介质 |
CN111638528A (zh) * | 2020-05-26 | 2020-09-08 | 北京百度网讯科技有限公司 | 定位方法、装置、电子设备和存储介质 |
CN115115790A (zh) * | 2022-06-02 | 2022-09-27 | 合众新能源汽车有限公司 | 预测模型的训练方法、地图预测方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN115526936A (zh) | 2022-12-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3637308A1 (en) | Method and device for positioning vehicle, device, and computer readable storage medium | |
CN112733885A (zh) | 点云识别模型的确定方法、点云识别的方法及装置 | |
CN112883236B (zh) | 一种地图更新方法、装置、电子设备及存储介质 | |
CN116012422B (zh) | 基于单目视觉的无人机6d位姿估计跟踪方法及其应用 | |
CN114612616A (zh) | 建图方法、装置、电子设备和存储介质 | |
CN115205803A (zh) | 自动驾驶环境感知方法、介质及车辆 | |
CN117495891B (zh) | 点云边缘检测方法、装置和电子设备 | |
CN114898041A (zh) | 一种基于光度误差的改进icp方法 | |
CN115526936B (zh) | 定位模型的训练方法和点云数据定位方法及装置 | |
CN110645996A (zh) | 一种感知数据的提取方法及*** | |
CN110738668A (zh) | 一种智能控制远光灯的方法、***及交通工具 | |
CN113256595A (zh) | 地图创建方法、装置、设备及计算机存储介质 | |
Yan et al. | An end-to-end traffic light detection algorithm based on deep learning | |
CN110472092B (zh) | 一种街景图片的地理定位方法及*** | |
CN116704549A (zh) | 三维空间关键点的位置检测方法、装置、设备及存储介质 | |
CN114842074A (zh) | 一种基于模型匹配的无人机影像定位方法 | |
CN115952248A (zh) | 终端设备的位姿处理方法、装置、设备、介质及产品 | |
CN116030134B (zh) | 定位方法、装置、设备、可读存储介质及程序产品 | |
CN112950652B (zh) | 机器人及其手部图像分割方法和装置 | |
CN113902898A (zh) | 目标检测模型的训练、目标检测方法、装置、设备和介质 | |
CN109711363B (zh) | 车辆定位方法、装置、设备和存储介质 | |
CN114155504A (zh) | 用于自动驾驶的视觉识别车辆方法、装置、出行装置及介质 | |
CN112966565A (zh) | 一种物体检测方法、装置、终端设备及存储介质 | |
Nguyen et al. | An algorithm using YOLOv4 and DeepSORT for tracking vehicle speed on highway | |
CN113963337B (zh) | 物体图像轮廓基元提取方法和装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |