CN114937265B - 点云检测方法和模型训练方法、装置、设备及存储介质 - Google Patents
点云检测方法和模型训练方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN114937265B CN114937265B CN202210879332.6A CN202210879332A CN114937265B CN 114937265 B CN114937265 B CN 114937265B CN 202210879332 A CN202210879332 A CN 202210879332A CN 114937265 B CN114937265 B CN 114937265B
- Authority
- CN
- China
- Prior art keywords
- data
- point
- confidence
- point cloud
- dimension
- 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
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/60—Type of objects
- G06V20/64—Three-dimensional objects
-
- 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
-
- 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/40—Extraction 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/762—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using clustering, e.g. of similar faces in social networks
- G06V10/763—Non-hierarchical techniques, e.g. based on statistics of modelling distributions
-
- 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/764—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
- G06V10/765—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects using rules for classification or partitioning the feature space
-
- 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/82—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Evolutionary Computation (AREA)
- Software Systems (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Artificial Intelligence (AREA)
- Computing Systems (AREA)
- Databases & Information Systems (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Health & Medical Sciences (AREA)
- Probability & Statistics with Applications (AREA)
- Image Analysis (AREA)
Abstract
本公开实施例公开了一种点云检测方法和模型训练方法、装置、设备及存储介质,其中,所述方法包括:获取待处理点云数据对应的点云特征;所述待处理点云数据包括针对真实场景中至少一个物体采集的多个数据点;基于所述点云特征,确定每一所述数据点对应的物体数据;所述物体数据包括所述数据点所属物体的至少一个维度的属性数据;对所述点云特征进行置信度检测,得到每一所述数据点对应的置信度数据;所述置信度数据用于表征所述数据点的预测难度,且所述数据点的置信度数据与所述数据点的预测难度负相关;基于每一所述数据点对应的物体数据和置信度数据,确定每一所述物体在至少一个所述维度的目标属性数据。
Description
技术领域
本公开涉及但不限于数据处理技术领域,尤其涉及一种点云检测方法和模型训练方法、装置、设备及存储介质。
背景技术
机器人环境感知技术以其高度柔性化的特点已渗透到各大领域,如智能物流、缺陷检测等。6D位姿估计所指的是相机坐标系与目标对象坐标系间的旋转与平移变换关系,共包含位置向量与旋转矩阵在内的6个位姿量,在自动驾驶、工业智能机器人以及AR等应用领域中起到至关重要的作用。相关技术可以通过采集目标对象对应的点云数据,来估计该目标对象的位姿量。然而,由于点云数据的质量无法保证,相关技术中对目标对象位姿量的估计准确度较低。
发明内容
有鉴于此,本公开实施例至少提供一种点云检测方法和模型训练方法、装置、设备及存储介质。
本公开实施例的技术方案是这样实现的:
一方面,本公开实施例提供一种点云检测方法,所述方法包括:
获取待处理点云数据对应的点云特征;所述待处理点云数据包括针对真实场景中至少一个物体采集的多个数据点;
基于所述点云特征,确定每一所述数据点对应的物体数据;所述物体数据包括所述数据点所属物体的至少一个维度的属性数据;
对所述点云特征进行置信度检测,得到每一所述数据点对应的置信度数据;所述置信度数据用于表征所述数据点的预测难度,且所述数据点的置信度数据与所述数据点的预测难度负相关;
基于每一所述数据点对应的物体数据和置信度数据,确定每一所述物体在至少一个所述维度的目标属性数据。
在一些实施例中,所述物体数据包括所述数据点所属物体的位置维度的位置数据;所述基于所述点云特征,确定每一所述数据点对应的物体数据,包括:对所述点云特征进行位置检测,确定每一所述数据点对应的位置数据;所述位置数据用于表征所述数据点所属物体的位置信息;
所述基于每一所述数据点对应的物体数据和置信度数据,确定每一所述物体在至少一个所述维度的目标属性数据,包括:基于预设的置信度阈值和每一所述数据点对应的置信度数据,在所述多个数据点中筛选得到多个物体数据点;基于每一所述物体数据点对应的位置数据,对所述多个物体数据点进行聚类,得到真实场景中每一所述物体对应的物体数据点集合和每一所述物体在所述位置维度的目标位置数据。
基于上述实施例,由于该物体数据包括数据点所属物体的位置维度的位置数据,在得到每一数据点对应的位置数据之后,由于该位置数据表征了数据点所属物体的位置信息,进而可以通过对每一数据点的位置信息进行聚类,实现对待处理点云数据的分割处理,得到真实场景中每一所述物体对应的物体数据点集合和每一所述物体在所述位置维度的目标位置数据;同时,由于在对待处理点云数据进行分割处理之前,先基于每一数据点对应的置信度信息对多个数据点进行过滤,得到了预测准确度较高的多个物体数据点,再基于多个物体数据点对应的位置数据进行聚类,可以得到更加准确的实例分割结果。
在一些实施例中,所述对所述点云特征进行位置检测,确定每一所述数据点对应的位置数据,包括:
基于所述点云特征,确定每一所述数据点对应的偏移数据;所述偏移数据用于表征所述数据点与所述数据点所属物体的中心点之间相对位置关系;
基于每一所述数据点对应的数据点位置和偏移数据,确定每一所述数据点对应的位置数据;所述位置数据为所述数据点所属物体的中心点的三维坐标。
在一些实施例中,所述物体数据包括所述数据点所属物体的旋转维度的旋转数据;所述基于每一所述数据点对应的物体数据和置信度数据,确定每一所述物体在至少一个所述维度的目标属性数据,还包括:
针对每一所述物体,基于所述物体对应的数据点集合中的每一物体数据点的旋转数据,确定所述物体在所述旋转维度的目标旋转数据。
基于上述实施例,在确定每一物体对应的多个物体数据点之后,基于每一数据点对应的旋转数据,确定当前物体对应的目标旋转数据。由于多个物体数据点均对应同一个物体,且置信度均高于预设置信度阈值,因此,由此得到的目标旋转数据的准确度更高。
在一些实施例中,物体数据包括所述数据点所属物体的分类维度的分类数据;所述基于每一所述数据点对应的物体数据和置信度数据,确定每一所述物体在至少一个所述维度的目标属性数据,还包括:
针对每一所述物体,基于所述物体对应的数据点集合中的每一物体数据点的分类数据,确定所述物体在所述分类维度的目标分类数据。
基于上述实施例,在确定每一物体对应的多个物体数据点之后,基于每一数据点对应的分类数据,确定当前物体对应的目标分类数据。由于多个物体数据点均对应同一个物体,且置信度均高于预设置信度阈值,因此,由此得到的目标分类数据的准确度更高。
在一些实施例中,所述获取待处理点云数据对应的点云特征,包括:
获取原始点云数据;
对所述原始点云数据进行预处理,得到针对所述至少一个物体采集的多个数据点;
对所述多个数据点进行特征提取,得到所述待处理点云数据对应的点云特征。
基于上述实施例,通过对原始点云数据进行预处理,得到针对所述至少一个物体采集的多个数据点,相比于直接对原始点云数据进行处理的方案,不仅可以减少数据计算量,还可以去除原始点云数据中的噪声数据点,提升了整体点云检测的准确度。
在一些实施例中,所述点云检测方法由点云检测模型执行,所述点云检测方法包括:
所述点云检测模型中的特征提取网络获取待处理点云数据对应的点云特征;
所述点云检测模型中的物体属性检测网络基于所述点云特征,确定每一所述数据点对应的物体数据;
所述点云检测模型中的置信度检测网络对所述点云特征进行置信度检测,得到每一所述数据点对应的置信度数据;
所述点云检测模型中的后处理网络基于每一所述数据点对应的物体数据和置信度数据,确定每一所述物体在至少一个所述维度的目标属性数据。
另一方面,本公开实施例提供一种模型训练方法,其特征在于,所述方法包括:
获取针对场景中至少一个样本物体采集的多个样本数据点和每一所述样本数据点所属物体的至少一个维度的真实属性数据;
通过初始的点云检测模型对所述多个样本数据点进行物体属性检测和置信度检测,得到每一所述样本数据点的预测置信度和每一所述样本数据点所属物体的每一所述维度的预测属性数据;
基于每一所述样本数据点所属物体的至少一个维度的真实属性数据、每一所述样本数据点的预测置信度和每一所述样本数据点所属物体的每一所述维度的预测属性数据,对所述初始的点云检测模型的模型参数进行调整,得到训练后的点云检测模型。
基于上述实施例训练得到的点云检测模型可以在对待处理点云数据进行检测的过程中,同时获取了每一数据点所属物体的属性数据和每一数据点对应的置信度数据,在确定物体的目标属性数据的过程中,可以同时考虑到数据点对应的属性数据和置信度数据,提升了检测准确度;同时由于基于点云特征确定每一所述数据点所属物体的至少一个维度的属性数据,可以得到真实场景中物体在每一所述维度的目标属性数据,提供了丰富多样的检测维度。
在一些实施例中,所述点云检测模型包括特征提取网络、置信度检测网络和至少一个维度对应的属性检测网络;
所述通过初始的点云检测模型对所述多个样本数据点进行物体属性检测和置信度检测,得到每一所述样本数据点的预测置信度和每一所述样本数据点所属物体的每一所述维度的预测属性数据,包括:
通过所述特征提取网络对所述多个样本数据点进行特征提取,得到样本点云特征;
针对每一所述维度,基于所述维度对应的属性检测网络对所述样本点云特征进行所述维度对应的物体属性检测,得到每一所述样本数据点在所述维度对应的预测属性数据;
基于所述置信度检测网络对所述样本点云特征进行置信度检测,得到每一所述样本数据点的预测置信度。
在一些实施例中,所述基于每一所述样本数据点所属物体的至少一个维度的真实属性数据、每一所述样本数据点的预测置信度和每一所述样本数据点所属物体的每一所述维度的预测属性数据,对所述初始的点云检测模型的模型参数进行调整,得到训练后的点云检测模型,包括:
针对每一所述维度,基于每一所述样本数据点在所述维度对应的预测属性数据和所述样本数据点所属物体在所述维度的真实属性数据,确定所述维度对应的损失值;基于所述维度对应的损失值,对所述初始的点云检测模型中所述维度对应的属性检测网络的模型参数进行调整,得到训练后的属性检测网络;
基于每一所述样本数据点在每一所述维度对应的损失值和每一所述样本数据点的预测置信度,确定置信度损失值;基于所述置信度损失值对所述置信度检测网络的模型参数进行调整,得到训练后的置信度检测网络;
基于所述训练后的置信度检测网络和每一所述维度对应的所述训练后的属性检测网络,得到训练后的点云检测模型。
在一些实施例中,所述基于每一所述样本数据点在每一所述维度对应的损失值和每一所述样本数据点的预测置信度,确定置信度损失值,包括:
针对每一所述样本数据点,获取所述样本数据点在每一所述维度对应的损失值;基于每一所述维度对应的损失权重,确定所述样本数据点的属性损失值;
将每一所述样本数据点的属性损失值和每一所述样本数据点的预测置信度输入至预设的置信度损失函数,得到所述置信度损失值;
其中,所述置信度损失函数包括第一损失项和第二损失项,所述第一损失项与所述预测置信度和所述属性损失值正相关,所述第二损失项与所述预测置信度负相关;在所述置信度损失函数收敛的情况下,多个所述样本数据点的属性损失值与所述置信度检测网络输出的多个所述样本数据点的预测置信度负相关。
基于上述实施例,在对置信度检测网络进行训练的过程中,由于该置信度损失函数同时与该样本数据点的属性损失值和样本数据点的属性损失值相关,且在所述置信度损失函数收敛的情况下,多个所述样本数据点的属性损失值与所述置信度检测网络输出的多个所述样本数据点的预测置信度负相关,可以使得训练后的置信度检测网络可以针对不同预测难度的数据点,得到与该预测难度负相关的置信度,进而可以在基于每一所述数据点对应的物体数据和置信度数据,确定每一所述物体在至少一个所述维度的目标属性数据的过程中,提升目标属性数据的准确度。
再一方面,本公开实施例提供一种点云检测装置,所述装置包括:
第一获取模块,用于获取待处理点云数据对应的点云特征;所述待处理点云数据包括针对真实场景中至少一个物体采集的多个数据点;
第一确定模块,用于基于所述点云特征,确定每一所述数据点对应的物体数据;所述物体数据包括所述数据点所属物体的至少一个维度的属性数据;
第一检测模块,用于对所述点云特征进行置信度检测,得到每一所述数据点对应的置信度数据;所述置信度数据用于表征所述数据点的预测难度,且所述数据点的置信度数据与所述数据点的预测难度负相关;
第二确定模块,用于基于每一所述数据点对应的物体数据和置信度数据,确定每一所述物体在至少一个所述维度的目标属性数据。
又一方面,本公开实施例提供一种模型训练装置,所述装置包括:
第二获取模块,用于获取针对场景中至少一个样本物体采集的多个样本数据点和每一所述样本数据点所属物体的至少一个维度的真实属性数据;
第二检测模块,通过初始的点云检测模型对所述多个样本数据点进行物体属性检测和置信度检测,得到每一所述样本数据点的预测置信度和每一所述样本数据点所属物体的每一所述维度的预测属性数据;
参数调整模块,用于基于每一所述样本数据点所属物体的至少一个维度的真实属性数据、每一所述样本数据点的预测置信度和每一所述样本数据点所属物体的每一所述维度的预测属性数据,对所述初始的点云检测模型的模型参数进行调整,得到训练后的点云检测模型。
再一方面,本公开实施例提供一种计算机设备,包括存储器和处理器,所述存储器存储有可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述方法中的部分或全部步骤。
又一方面,本公开实施例提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述方法中的部分或全部步骤。
又一方面,本公开实施例提供一种计算机程序,包括计算机可读代码,当所述计算机可读代码在计算机设备中运行时,所述计算机设备中的处理器执行用于实现上述方法中的部分或全部步骤。
又一方面,本公开实施例提供一种计算机程序产品,所述计算机程序产品包括存储了计算机程序的非瞬时性计算机可读存储介质,所述计算机程序被计算机读取并执行时,实现上述方法中的部分或全部步骤。
基于上述实施例,由于在对待处理点云数据进行检测的过程中,不仅获取了每一数据点所属物体的属性数据,还获取了每一数据点对应的置信度数据,在确定物体的目标属性数据的过程中,可以同时考虑到数据点对应的属性数据和置信度数据,提升了检测准确度;同时由于基于点云特征确定每一所述数据点所属物体的至少一个维度的属性数据,可以得到真实场景中物体在每一所述维度的目标属性数据,提供了丰富多样的检测维度。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,而非限制本公开的技术方案。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,这些附图示出了符合本公开的实施例,并与说明书一起用于说明本公开的技术方案。
图1为本公开实施例提供的一种点云检测方法的实现流程示意图;
图2为本公开实施例提供的另一种点云检测方法的实现流程示意图;
图3为本公开实施例提供的又一种点云检测方法的实现流程示意图;
图4为本公开实施例提供的再一种点云检测方法的实现流程示意图;
图5为本公开实施例提供的一种模型训练方法的实现流程示意图;
图6为本公开实施例提供的另一种模型训练方法的实现流程示意图;
图7为本公开实施例提供的又一种模型训练方法的实现流程示意图;
图8为本公开实施例提供的一种深度神经网络的网络结构示意图;
图9为本公开实施例提供的一种点云检测装置的组成结构示意图;
图10为本公开实施例提供的一种模型训练装置的组成结构示意图;
图11为本公开实施例提供的一种计算机设备的硬件实体示意图。
具体实施方式
为了使本公开的目的、技术方案和优点更加清楚,下面结合附图和实施例对本公开的技术方案进一步详细阐述,所描述的实施例不应视为对本公开的限制,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本公开保护的范围。
在以下的描述中,涉及到“一些实施例”,其描述了所有可能实施例的子集,但是可以理解,“一些实施例”可以是所有可能实施例的相同子集或不同子集,并且可以在不冲突的情况下相互结合。所涉及的术语“第一/第二/第三”仅仅是区别类似的对象,不代表针对对象的特定排序,可以理解地,“第一/第二/第三”在允许的情况下可以互换特定的顺序或先后次序,以使这里描述的本公开实施例能够以除了在这里图示或描述的以外的顺序实施。
除非另有定义,本文所使用的所有的技术和科学术语与属于本公开的技术领域的技术人员通常理解的含义相同。本文中所使用的术语只是为了描述本公开的目的,不是旨在限制本公开。
本公开实施例提供一种点云检测方法,该方法可以由计算机设备的处理器执行。其中,计算机设备指的可以是服务器、笔记本电脑、平板电脑、台式计算机、智能电视、机顶盒、移动设备(例如移动电话、便携式视频播放器、个人数字助理、专用消息设备、便携式游戏设备)、处理器等具备数据处理能力的设备。图1为本公开实施例提供的一种点云检测方法的实现流程示意图,如图1所示,该方法包括如下步骤S101至步骤S103:
步骤S101、获取待处理点云数据对应的点云特征;所述待处理点云数据包括针对真实场景中至少一个物体采集的多个数据点。
在一些实施例中,该待处理点云数据包括针对真实场景中至少一个物体采集的多个数据点。其中,该点云数据可以以点云图像的形式获取。示例性的,可以通过在真实场景中部署点云采集组件,通过该点云采集组件对当前场景进行扫描,得到该待处理点云数据。该点云采集组件一般由激光发射机、光学接收机、转台和信息处理系统等组成,激光发射机将电信号变成激光信号发射出去,光学接收机再把从目标反射回来的激光信号还原成电信号,送到信息处理系统。激光发射机在发射激光信号时,转台转动实现激光扫描。信息处理系统将光学接收机接收到的从目标反射回来的激光信号与激光发射机发射的激光信号进行比较,作适当处理后,就可获得点云图像,点云图像包括每一数据点的三维坐标、反射强度等等。该点云采集组件可以为激光雷达装置、毫米波雷达装置以及超声波雷达装置等,在此不做具体限定。
在一些实施例中,基于该多个数据点中每一数据点的位置信息,可以通过预设的特征提取网络获取该待处理点云数据对应的点云特征。该特征提取网络包括但不限于Pointnet、Pointnet++、PointSIFT等能够实现上述点云特征提取的提取网络。
步骤S102、基于所述点云特征,确定每一所述数据点对应的物体数据;所述物体数据包括所述数据点所属物体的至少一个维度的属性数据。
在一些实施例中,上述维度可以包括以下至少之一:位置维度、旋转维度和分类维度。在基于所述点云特征确定每一数据点对应的至少一个维度的属性数据的过程中,针对每一维度,可以基于该维度对应的属性检测网络,对该点云特征进行检测,得到每一数据点在该维度的属性数据。
其中,位置维度的属性检测网络为位置检测网络,该位置检测网络用于检测多个数据点中每一数据点的位置数据,该位置数据用于表征该数据点所属物体的位置信息;旋转维度的属性检测网络为旋转检测网络,该旋转检测网络用于检测多个数据点中每一数据点的旋转数据,该旋转数据用于表征该数据点所属物体的旋转信息;分类维度的属性检测网络为分类检测网络,该分类检测网络用于检测多个数据点中每一数据点的分类数据,该分类数据用于表征该数据点所属物体的分类信息。
其中,在所述属性检测网络包括位置维度的属性检测网络的情况下,可以得到每一数据点在位置维度的位置数据;在所述属性检测网络包括旋转维度的属性检测网络的情况下,可以得到每一数据点在旋转维度的旋转数据;在所述属性检测网络包括分类维度的属性检测网络的情况下,可以得到每一数据点在分类维度的分类数据。
步骤S103、对所述点云特征进行置信度检测,得到每一所述数据点对应的置信度数据;所述置信度数据用于表征所述数据点的预测难度,且所述数据点的置信度数据与所述数据点的预测难度负相关。
在一些实施例中,可以通过训练好的置信度检测网络对该点云特征进行置信度检测,该置信度检测网络用于估计每一数据点的预测难易程度,即,可以得到每一所述数据点的置信度。其中,数据点的预测难度越大,置信度越低;数据点的预测难度越小,置信度越高。
需要说明的是,步骤S102和步骤S103可以是同时执行,也可以是先执行步骤S102后执行步骤S103,还可以是先执行步骤S103后执行步骤S102,本公开对此不作限定。
步骤S104、基于每一所述数据点对应的物体数据和置信度数据,确定每一所述物体在至少一个所述维度的目标属性数据。
在一些实施例中,在得到每一数据点对应的物体数据和置信度数据后,可以基于预设的置信度阈值对多个数据点进行筛选,去除置信度低于该置信度阈值的数据点,基于剩下的数据点确定真实场景中每一物体在至少一个所述维度的目标属性数据。
在一些实施例中,以真实场景中包括一个物体为例,针对物体数据中的任意一个维度,统计该物体在维度的至少一类属性数据,基于每一类属性数据对应的数据点数量或置信度数据,确定该维度对应的目标属性数据。
示例性的,以真实场景包括一个物体,且上述至少一个维度仅包括分类维度为例,若存在数据点P1至P6共6个数据点,且检测结果包括:P1为类别T1且置信度为0.2、P2为类别T1且置信度为0.8、P3为类别T1且置信度为0.7、P4为类别T2且置信度为0.4、P5为类别T2且置信度为0.5、P6为类别T2且置信度为0.4。在置信度阈值为0.3的情况下,可以去除P1,剩下P2至P6共5个数据点。在基于每一类属性数据对应的数据点数量的情况下,类别T1对应的数据点数量为2个,类别T2对应的数据点数量为3个,则判定该分类维度对应的目标属性数据为类别T2;在基于每一类属性数据对应的置信度数据的情况下,类别T1对应的置信度和为1.5,类别T2对应的置信度和为1.3,则判定该分类维度对应的目标属性数据为类别T1。
基于上述实施例,由于在对待处理点云数据进行检测的过程中,不仅获取了每一数据点所属物体的属性数据,还获取了每一数据点对应的置信度数据,在确定物体的目标属性数据的过程中,可以同时考虑到数据点对应的属性数据和置信度数据,提升了检测准确度;同时由于基于点云特征确定每一所述数据点所属物体的至少一个维度的属性数据,可以得到真实场景中物体在每一所述维度的目标属性数据,提供了丰富多样的检测维度。
图2是本公开实施例提供的点云检测方法的一个可选的流程示意图,该方法可以由计算机设备的处理器执行。基于图1,所述物体数据包括所述数据点所属物体的位置维度的位置数据,图1中的S102可以更新为S201,S104可以更新为S202至S203,将结合图2示出的步骤进行说明。
步骤S201、对所述点云特征进行位置检测,确定每一所述数据点对应的位置数据;所述位置数据用于表征所述数据点所属物体的位置信息。
在一些实施例中,该位置数据可以为该数据点相对于该数据点所属物体的中心点的位置坐标(三维坐标)。上述步骤S201可以通过预设的位置检测网络对该点云特征进行位置检测,得到每一数据点对应的位置数据。其中,该位置检测网络的训练过程可以包括:获取多个样本数据点对应的样本点云特征和每一所述样本数据点对应的真实位置数据;将样本点云特征输入至初始的位置检测网络,得到每一所述样本数据点对应的预测位置数据;基于每一所述样本数据点对应的真实位置数据和预测位置数据对位置检测网络的网络参数进行调整,直至达到预设的第一收敛条件,输出训练后的位置检测网络。其中,该样本数据点对应的真实位置数据为该样本数据点所属物体的中心点的位置坐标;该第一收敛条件包括以下至少之一:基于该真实位置数据和预测位置数据确定的损失值小于预设的第一收敛阈值;相邻两次迭代之间的网络参数变化量小于预设的第一参数阈值;达到预设的第一迭代次数。
在另一些实施例中,上述步骤S201可以通过预设的偏移检测网络对该点云特征进行偏移检测,得到每一数据点对应的偏移数据;基于每一数据点对应的数据点位置和每一数据点的偏移数据,可以得到每一所述数据点对应的位置数据。
其中,该偏移检测网络的训练过程可以包括:获取多个样本数据点对应的样本点云特征和每一所述样本数据点对应的真实偏移数据;将样本点云特征输入至初始的偏移检测网络,得到每一所述样本数据点对应的预测偏移数据;基于每一所述样本数据点对应的真实偏移数据和预测偏移数据对偏移检测网络的网络参数进行调整,直至达到预设的第二收敛条件,输出训练后的偏移检测网络。其中,该样本数据点对应的真实偏移数据表征该样本数据点与该样本数据点所属物体的中心点之间相对位置关系;该第二收敛条件包括以下至少之一:基于该真实偏移数据和预测偏移数据确定的损失值小于预设的第二收敛阈值;相邻两次迭代之间的网络参数变化量小于预设的第二参数阈值;达到预设的第二迭代次数。
在一些实施例中,可以通过以下方式实现上述步骤S201:基于所述点云特征,确定每一所述数据点对应的偏移数据;所述偏移数据用于表征所述数据点与所述数据点所属物体的中心点之间相对位置关系;基于每一所述数据点对应的数据点位置和偏移数据,确定每一所述数据点对应的位置数据;所述位置数据为所述数据点所属物体的中心点的三维坐标。
其中,该数据点的偏移数据表征该数据点与该数据点所属物体的中心点之间相对位置关系,示例性的,该偏移数据可以为三维向量的形式,该三维向量可以是由数据点指向该数据点所属物体的中心点,也可以是该数据点所属物体的中心点指向该数据点。在得到数据点对应的偏移数据的情况下,可以基于该数据点对应的数据点位置和偏移数据(三维向量)确定该数据点所属物体的中心点的三维坐标。
步骤S202、基于预设的置信度阈值和每一所述数据点对应的置信度数据,在所述多个数据点中筛选得到多个物体数据点。
在一些实施例中,在得到该待处理点云数据中每一数据点对应的置信度之后,可以获取预设的置信度阈值;基于该置信度阈值,对待处理点云数据中各数据点进行筛选,将小于该置信度阈值的数据点去除,将大于或等于该置信度阈值的数据点作为物体数据点,得到多个物体数据点。
步骤S203、基于每一所述物体数据点对应的位置数据,对所述多个物体数据点进行聚类,得到真实场景中每一所述物体对应的物体数据点集合和每一所述物体在所述位置维度的目标位置数据。
在一些实施例中,针对筛选后得到的多个物体数据点,可以基于每一物体数据点对应的位置数据,对物体数据点进行聚类,得到每一所述物体对应的物体数据点集合。其中,每一物体数据点集合分别对应一个实例(物体),进而完成针对多个物体数据点的实例分割。也就是说,通过聚类可以知道哪些点属于同一个实例。对物体数据点进行聚类的算法可以是mean-shift聚类算法或者k邻近聚类算法等。
在一些实施例中,针对任意一个物体对应的物体数据点集合,可以通过该物体数据点集合中多个物体数据点的位置数据得到该物体在位置维度的目标位置数据。示例性的,存在一个物体对应的物体数据点集合包括N1(位置数据为P1)、N2(位置数据为P2)和N3(位置数据为P3)共三个物体数据点,该物体对应的目标位置数据可以为(P1+P2+P3)/3。
在另一些实施例中,针对任意一个物体对应的物体数据点集合,可以通过该物体数据点集合中多个物体数据点的位置数据和置信度数据,得到该物体在位置维度的目标位置数据。示例性的,存在一个物体对应的物体数据点集合包括N1(置信度数据为K1、位置数据为P1)、N2(置信度数据为K2、位置数据为P2)和N3(置信度数据为K3、位置数据为P3)共三个物体数据点,该物体对应的目标位置数据可以为(K1P1+K2P2+K3P3)/3(K1+K2+K3)。
基于上述实施例,由于该物体数据包括数据点所属物体的位置维度的位置数据,在得到每一数据点对应的位置数据之后,由于该位置数据表征了数据点所属物体的位置信息,进而可以通过对每一数据点的位置信息进行聚类,实现对待处理点云数据的分割处理,得到真实场景中每一所述物体对应的物体数据点集合和每一所述物体在所述位置维度的目标位置数据;同时,由于在对待处理点云数据进行分割处理之前,先基于每一数据点对应的置信度信息对多个数据点进行过滤,得到了预测准确度较高的多个物体数据点,再基于多个物体数据点对应的位置数据进行聚类,可以得到更加准确的实例分割结果。
图3是本公开实施例提供的点云检测方法的一个可选的流程示意图,该方法可以由计算机设备的处理器执行。基于图2,所述物体数据还包括所述数据点所属物体的旋转维度的旋转数据、和/或所述数据点所属物体的分类维度的分类数据,在图2中的S203之后,还可以包括S301和/或S302,将结合图3示出的步骤进行说明。
步骤S301、针对每一所述物体,基于所述物体对应的数据点集合中的每一物体数据点的旋转数据,确定所述物体在所述旋转维度的目标旋转数据。
示例性的,存在一个物体对应的物体数据点集合包括N1(旋转数据为R1)、N2(旋转数据为R2)和N3(旋转数据为R3)共三个物体数据点,该物体对应的目标旋转数据可以为(R1+R2+R3)/3。
在另一些实施例中,可以基于所述物体对应的数据点集合中的每一物体数据点的旋转数据和置信度数据,确定所述物体在所述旋转维度的目标旋转数据。
示例性的,存在一个物体对应的物体数据点集合包括N1(置信度数据为K1、旋转数据为R1)、N2(置信度数据为K2、旋转数据为R2)和N3(置信度数据为K3、旋转数据为R3)共三个物体数据点,该物体对应的目标旋转数据可以为(K1R1+K2R2+K3R3)/3(K1+K2+K3)。
基于上述实施例,在确定每一物体对应的多个物体数据点之后,基于每一数据点对应的旋转数据,确定当前物体对应的目标旋转数据。由于多个物体数据点均对应同一个物体,且置信度均高于预设置信度阈值,因此,由此得到的目标旋转数据的准确度更高。
步骤S302、针对每一所述物体,基于所述物体对应的数据点集合中的每一物体数据点的分类数据,确定所述物体在所述分类维度的目标分类数据。
示例性的,存在一个物体对应的物体数据点集合包括N1(分类数据为T1)、N2(分类数据为T2)和N3(分类数据为T1)共三个物体数据点,其中,表征该物体属于T1的物体数据点有2个,表征该物体属于T2的物体数据点有1个;进而确定该物体对应的目标分类数据为T1。
在另一些实施例中,可以基于所述物体对应的数据点集合中的每一物体数据点的分类数据和置信度数据,确定所述物体在所述分类维度的目标分类数据。
示例性的,存在一个物体对应的物体数据点集合包括N1(置信度数据为K1、分类数据为T1)、N2(置信度数据为K2、分类数据为T2)和N3(置信度数据为K3、分类数据为T1)共三个物体数据点,表征该物体属于T1的投票结果为K1T1+K3T1,表征该物体属于T2投票结果为K2T2;在K1T1+K3T1大于或等于K2T2的情况下,该物体对应的目标分类数据为T1;在K1T1+K3T1小于K2T2的情况下,该物体对应的目标分类数据为T2。
基于上述实施例,在确定每一物体对应的多个物体数据点之后,基于每一数据点对应的分类数据,确定当前物体对应的目标分类数据。由于多个物体数据点均对应同一个物体,且置信度均高于预设置信度阈值,因此,由此得到的目标分类数据的准确度更高。
图4是本公开实施例提供的点云检测方法的一个可选的流程示意图,该方法可以由计算机设备的处理器执行。基于上述实施例,以基于图1为例,图1中的S101可以更新为S401至S403,将结合图4示出的步骤进行说明。
步骤S401、获取原始点云数据。
在一些实施例中,可以由设置在真实场景中的点云采集组件对该真实场景中至少一个物体进行扫描,得到该原始点云数据。该点云采集组件可以包括一个或多个激光点云扫描器。激光点云扫描器可以激光雷达或深度相机。
步骤S402、对所述原始点云数据进行预处理,得到针对所述至少一个物体采集的多个数据点。
在一些实施例中,该预处理可以包括采样处理,该采样处理用于降低原始点云数据的密集程度。从数据点间距角度来说,在原始点云数据中相邻数据点的距离为第一距离的情况下,可以对该原始点云数据进行采样处理,经过采样处理后的原始点云数据中相邻数据点的距离为第二距离,该第二距离大于第一距离;从数据点数量来说,经过采样处理后的原始点云数据的数据点数量小于原始点云数据。
在一些实施例中,该预处理可以包括噪声点过滤处理,该噪声点为所述原始点云数据中不属于该至少一个物体的数据点。其中,在利用上述点云采集组件对真实场景中至少一个物体进行采集的过程中,不可避免的会采集到其他物体或背景对应的点云数据。示例性的,该其他物体可以为放置至少一个物体的桌面、也可以是该至少一个物体所处的房间的墙壁等。基于上述情况,可以通过噪声点过滤处理将所述原始点云数据中不属于该至少一个物体的数据点滤除。
在一些实施例中,可以先获取环境点云数据,该环境点云数据为针对不包括至少一个物体的真实场景采集的点云数据;基于该环境点云数据对该原始点云数据进行过滤。示例性的,以上述至少一个物体为桌面上摆放的多个目标物体为例,可以在桌面上放置多个目标物体之前,先基于设置于当前场景中的点云采集组件对当前场景进行采集,得到该环境点云数据,在不改变真实场景布局和点云采集组件的配置参数的情况下,将多个目标物体放置于桌面上,再采集原始点云数据。这样,可以基于环境点云数据对该原始点云数据进行过滤。
在预处理同时包括采样处理和噪声点过滤处理的情况下,可以先对原始点云数据进行采样处理,再对采样处理后的原始点云数据进行噪声点过滤处理,得到针对所述至少一个物体采集的多个数据点;还可以先对原始点云数据进行噪声点过滤处理,再对噪声点过滤处理后的原始点云数据进行采样处理,得到针对所述至少一个物体采集的多个数据点。
步骤S403、对所述多个数据点进行特征提取,得到所述待处理点云数据对应的点云特征。
其中,基于该多个数据点中每一数据点的位置信息,可以通过预设的特征提取网络获取该待处理点云数据对应的点云特征。该特征提取网络包括但不限于Pointnet、Pointnet++、PointSIFT等能够实现上述点云特征提取的提取网络。
基于上述实施例,通过对原始点云数据进行预处理,得到针对所述至少一个物体采集的多个数据点,相比于直接对原始点云数据进行处理的方案,不仅可以减少数据计算量,还可以去除原始点云数据中的噪声数据点,提升了整体点云检测的准确度。
上述公开实施例提供的点云检测方法可以由经过训练的点云检测模型执行,该点云检测模型可以包括特征提取网络、物体属性检测网络、置信度检测网络和后处理网络。基于此,本公开实施例的点云检测方法可包括:
所述点云检测模型中的特征提取网络获取待处理点云数据对应的点云特征。
其中,所述待处理点云数据包括针对真实场景中至少一个物体采集的多个数据点;
所述点云检测模型中的物体属性检测网络基于所述点云特征,确定每一所述数据点对应的物体数据。
其中,所述物体数据包括所述数据点所属物体的至少一个维度的属性数据。
所述点云检测模型中的置信度检测网络对所述点云特征进行置信度检测,得到每一所述数据点对应的置信度数据。
其中,所述置信度数据用于表征所述数据点的预测难度,且所述数据点的置信度数据与所述数据点的预测难度负相关。
所述点云检测模型中的后处理网络基于每一所述数据点对应的物体数据和置信度数据,确定每一所述物体在至少一个所述维度的目标属性数据。
在一些实施例中,该物体属性检测网络包括位置检测网络,所述位置检测网络对所述点云特征进行位置检测,确定每一所述数据点对应的位置数据;所述位置数据用于表征所述数据点所属物体的位置信息;所述后处理网络基于预设的置信度阈值和每一所述数据点对应的置信度数据,在所述多个数据点中筛选得到多个物体数据点;基于每一所述物体数据点对应的位置数据,对所述多个物体数据点进行聚类,得到真实场景中每一所述物体对应的物体数据点集合和每一所述物体在所述位置维度的目标位置数据。
在一些实施例中,所述位置检测网络基于所述点云特征,确定每一所述数据点对应的偏移数据;所述偏移数据用于表征所述数据点与所述数据点所属物体的中心点之间相对位置关系;基于每一所述数据点对应的数据点位置和偏移数据,确定每一所述数据点对应的位置数据;所述位置数据为所述数据点所属物体的中心点的三维坐标。
在一些实施例中,该物体属性检测网络包括旋转检测网络,所述旋转检测网络用于基于所述点云特征,确定每一所述数据点对应的旋转数据;针对每一所述物体,上述后处理网络基于所述物体对应的数据点集合中的每一物体数据点的旋转数据,确定所述物体在所述旋转维度的目标旋转数据。
在一些实施例中,该物体属性检测网络包括分类检测网络,所述分类检测网络用于基于所述点云特征,确定每一所述数据点对应的分类数据;针对每一所述物体,上述后处理网络基于所述物体对应的数据点集合中的每一物体数据点的分类数据,确定所述物体在所述分类维度的目标分类数据。
在一些实施例中,所述点云检测模型还包括前处理网络,所述点云检测模型中的前处理网络获取原始点云数据,并对所述原始点云数据进行预处理,得到针对所述至少一个物体采集的多个数据点。
上述公开实施例提供的点云检测模型可以基于图5提供的模型训练方法进行训练,请参阅图5,图5是本公开实施例提供的模型训练方法的一个可选的流程示意图,该方法可以由计算机设备的处理器执行。将结合图5示出的步骤进行说明。
步骤S501、获取针对场景中至少一个样本物体采集的多个样本数据点和每一所述样本数据点所属物体的至少一个维度的真实属性数据。
其中,该场景可以为真实场景,也可以为仿真场景,本公开实施例对此不作限定。该仿真场景对应的样本数据点为点云仿真软件随机生成的,该点云仿真软件可以根据输入的至少一个样本物体的三维信息、三维相机的参数信息以及至少一个样本物体的位姿信息产生对应多个样本数据点的软件工具。
在一些实施例中,在该场景为真实场景的情况下,上述至少一个样本物体为真实场景中的真实物体,通过部署于真实场景的点云采集组件对该至少一个样本物体进行扫描,得到多个样本数据点。之后,可采用人工标注或神经网络识别等方式,对每一样本数据点添加对应的真实属性数据。
在一些实施例中,在该场景为仿真场景的情况下,可以将每一样本物体的三维信息、三维相机的参数信息以及至少一个样本物体的位姿信息输入至该点云仿真软件中,得到上述多个样本数据点,同时,由于上述多个样本数据点是基于已知数据生成的,因此,每一所述样本数据点的真实属性数据可以基于该点云仿真软件的输入数据直接获得。基于上述实施例,相对于相关技术中从真实场景中采集样本数据点并人工标注的方案,从仿真场景中的获取样本数据点和真实属性数据的方案不仅可以省去人工标注的成本,还保证了针对样本数据点标注的准确度,而且可以通过仿真场景方便快速模拟得到丰富的数据,有助于节省数据采集时间和成本。
步骤S502、通过初始的点云检测模型对所述多个样本数据点进行物体属性检测和置信度检测,得到每一所述样本数据点的预测置信度和每一所述样本数据点所属物体的每一所述维度的预测属性数据。
在一些实施例中,该点云检测模型包括特征提取网络、置信度检测网络和物体属性检测网络,该特征提取网络可以对多个样本数据点进行特征提取,得到样本点云特征;该置信度检测网络可以基于该样本点云特征,确定每一样本数据点的预测置信度;该物体属性检测网络可以基于该样本点云特征,确定每一样本数据点的每一所述维度的预测属性数据。
步骤S503、基于每一所述样本数据点所属物体的至少一个维度的真实属性数据、每一所述样本数据点的预测置信度和每一所述样本数据点所属物体的每一所述维度的预测属性数据,对所述初始的点云检测模型的模型参数进行调整,得到训练后的点云检测模型。
在一些实施例中,可以基于每一所述样本数据点所属物体的每一所述维度的预测属性数据、和每一所述样本数据点所属物体的至少一个维度的真实属性数据,确定物体属性检测网络对应的损失值,基于该损失值对上述物体属性检测网络的网络参数进行调整;同时,由于该置信度用于表征样本数据点的预测难度,即该置信度与预测难度负相关,因此,可以基于该物体属性检测网络对应的损失值和每一所述样本数据点的预测置信度对该置信度检测网络的网络参数进行调整。在满足预设收敛条件的情况下,得到该训练后的点云检测模型,该点云检测模型包括调整网络参数后的物体属性检测网络和调整网络参数后的置信度检测网络。
基于上述实施例训练得到的点云检测模型可以在对待处理点云数据进行检测的过程中,同时获取了每一数据点所属物体的属性数据和每一数据点对应的置信度数据,在确定物体的目标属性数据的过程中,可以同时考虑到数据点对应的属性数据和置信度数据,提升了检测准确度;同时由于基于点云特征确定每一所述数据点所属物体的至少一个维度的属性数据,可以得到真实场景中物体在每一所述维度的目标属性数据,提供了丰富多样的检测维度。
图6是本公开实施例提供的模型训练方法的一个可选的流程示意图,该方法可以由计算机设备的处理器执行。基于图5,图5中的S502可以更新为S601至S603,将结合图6示出的步骤进行说明。
步骤S601、通过所述特征提取网络对所述多个样本数据点进行特征提取,得到样本点云特征。
在一些实施例中,该特征提取网络包括但不限于Pointnet、Pointnet++、PointSIFT等能够实现上述点云特征提取的提取网络。
步骤S602、针对每一所述维度,基于所述维度对应的属性检测网络对所述样本点云特征进行所述维度对应的物体属性检测,得到每一所述样本数据点在所述维度对应的预测属性数据。
在一些实施例中,上述维度可以包括以下至少之一:位置维度、旋转维度和分类维度。其中,位置维度的属性检测网络为位置检测网络,该位置检测网络用于检测多个样本数据点中每一样本数据点的位置数据,该位置数据用于表征该样本数据点所属物体的位置信息;旋转维度的属性检测网络为旋转检测网络,该旋转检测网络用于检测多个样本数据点中每一样本数据点的旋转数据,该旋转数据用于表征该样本数据点所属物体的旋转信息;分类维度的属性检测网络为分类检测网络,该分类检测网络用于检测多个样本数据点中每一样本数据点的分类数据,该分类数据用于表征该样本数据点所属物体的分类信息。
其中,在所述属性检测网络包括位置维度的属性检测网络的情况下,可以得到每一样本数据在位置维度的预测位置数据;在所述属性检测网络包括旋转维度的属性检测网络的情况下,可以得到每一样本数据在旋转维度的预测旋转数据;在所述属性检测网络包括分类维度的属性检测网络的情况下,可以得到每一样本数据在分类维度的预测分类数据。
步骤S603、基于所述置信度检测网络对所述样本点云特征进行置信度检测,得到每一所述样本数据点的预测置信度。
在一些实施例中,该置信度检测网络用于估计每一样本数据点的预测难易程度,即可以得到每一所述样本数据点的预测置信度。其中,样本数据点的预测难度越大,预测置信度越低;样本数据点的预测难度越小,预测置信度越高。
图7是本公开实施例提供的模型训练方法的一个可选的流程示意图,该方法可以由计算机设备的处理器执行。基于图5,图5中的S503可以更新为S701至S704,将结合图7示出的步骤进行说明。
步骤S701、针对每一所述维度,基于每一所述样本数据点在所述维度对应的预测属性数据和所述样本数据点所属物体在所述维度的真实属性数据,确定所述维度对应的损失值;基于所述维度对应的损失值,对所述初始的点云检测模型中所述维度对应的属性检测网络的模型参数进行调整,得到训练后的属性检测网络。
在一些实施例中,针对位置维度,上述预测属性数据为预测位置数据,上述真实属性数据为真实位置数据。基于该预测位置数据和真实位置数据可以确定该位置维度对应的损失值;基于该位置维度对应的损失值可以对初始的位置检测网络的模型参数进行调整,得到调整后的位置检测网络。
在一些实施例中,针对旋转维度,上述预测属性数据为预测旋转数据,上述真实属性数据为真实旋转数据。基于该预测旋转数据和真实旋转数据可以确定该旋转维度对应的损失值;基于该旋转维度对应的损失值可以对初始的旋转检测网络的模型参数进行调整,得到调整后的旋转检测网络。
在一些实施例中,针对分类维度,上述预测属性数据为预测分类数据,上述真实属性数据为真实分类数据。基于该预测分类数据和真实分类数据可以确定该分类维度对应的损失值;基于该分类维度对应的损失值可以对初始的分类检测网络的模型参数进行调整,得到调整后的分类检测网络。
步骤S702、基于每一所述样本数据点在每一所述维度对应的损失值和每一所述样本数据点的预测置信度,确定置信度损失值。
在一些实施例中,可以将每一所述样本数据点在每一所述维度对应的损失值的平均值,作为每一所述样本数据点的属性预测损失值,该属性预测损失值越大,表示属性检测网络对当前样本数据点的预测准确率越低,相应地,该样本数据点对应的预测置信度应该也越低,基于上述关系,可以基于属性预测损失值和预测置信度,确定置信度损失值。
在一些实施例中,可以通过步骤S7021至步骤S7022实现上述基于每一所述样本数据点在每一所述维度对应的损失值和每一所述样本数据点的预测置信度,确定置信度损失值。
步骤S7021、针对每一所述样本数据点,获取所述样本数据点在每一所述维度对应的损失值;基于每一所述维度对应的损失权重,确定所述样本数据点的属性损失值。
在一些实施例中,可以为每一所述维度设置对应的损失权重,即不同的维度可以设置不同的损失权重。在确定样本数据点的属性损失值的过程中,可以基于每一维度对应的损失权重,对每一维度对应的损失值进行加权求和,得到样本数据点的属性损失值。
步骤S7022、将每一所述样本数据点的属性损失值和每一所述样本数据点的预测置信度输入至预设的置信度损失函数,得到所述置信度损失值。
其中,该置信度损失函数同时与该样本数据点的属性损失值和样本数据点的属性损失值相关。
在一些实施例中,所述置信度损失函数包括第一损失项和第二损失项,所述第一损失项与所述预测置信度和所述属性损失值正相关,所述第二损失项与所述预测置信度负相关;在所述置信度损失函数收敛的情况下,多个所述样本数据点的属性损失值与所述置信度检测网络输出的多个所述样本数据点的预测置信度负相关。
在一些实施例中,该预设的置信度损失函数可以表示为公式(1):
其中,该第一损失项与所述预测置信度和所述属性损失值正相关;该第二损失项()与所述预测置信度负相关。在所述置信度损失函数收敛的情况下,多个所述样本数据点的属性损失值越大,所述置信度检测网络输出的多个所述样本数据点的预测置信度越低;多个所述样本数据点的属性损失值越小,所述置信度检测网络输出的多个所述样本数据点的预测置信度越高。
步骤S703、基于所述置信度损失值对所述置信度检测网络的模型参数进行调整,得到训练后的置信度检测网络。
步骤S704、基于所述训练后的置信度检测网络和每一所述维度对应的所述训练后的属性检测网络,得到训练后的点云检测模型。
基于上述实施例,在对置信度检测网络进行训练的过程中,由于该置信度损失函数同时与该样本数据点的属性损失值和样本数据点的属性损失值相关,且在所述置信度损失函数收敛的情况下,多个所述样本数据点的属性损失值与所述置信度检测网络输出的多个所述样本数据点的预测置信度负相关,可以使得训练后的置信度检测网络可以针对不同预测难度的数据点,得到与该预测难度负相关的置信度,进而可以在基于每一所述数据点对应的物体数据和置信度数据,确定每一所述物体在至少一个所述维度的目标属性数据的过程中,提升目标属性数据的准确度。
下面说明本公开实施例提供的点云检测方法在实际场景中的应用。
本公开实施例在仿真数据采集系统中进行数据采集和数据标注。然后使用采集的仿真数据训练深度神经网络(如Point-wise Pose Regression Network,ppr-net),通过有监督学习获得预测物体位姿的能力,通过自监督学习置信度获得预测成功率(对应上述实施例中的置信度)的能力。
其中,在仿真环境中采集训练数据时,记录当前场景的点云数据以及点云数据对应的标注信息作为仿真数据。在训练过程中,使用这些仿真数据训练ppr-net。在推理场景中,深度神经网络能够以真实场景的点云数据作为输入,预测输出高精度的点云实例分割结果(对应上述实施例中的每一所述物体对应的物体数据点集合)和6D位姿估计结果(对应上述实施例中的每一物体的位置数据和旋转数据)。
在一些实施例中,在仿真环境中生成标注信息的方法包括:对于仿真环境中点云数据中的属于物体的每一个数据点,可以为数据点添加3类标签,包括位置标签、旋转标签和类别标签。其中,该位置标签为该数据点到所属物体中心点的偏移量(label_location=location-center),该偏移量可以理解为一个表征数据点(location)与物体中心点(center)之间相对位置关系的三维向量;该旋转标签为该数据点所属物体的旋转量(label_rotation=rotation);该类别标签为该数据点所属物体的类别。
请参阅图8,其示出了深度神经网络的一个网络结构示意图。
其中,点云数据801可以为真实场景中采集的原始点云数据,也可以是仿真场景中采集的原始点云数据;
前处理模块802用于对该原始点云数据进行处理,得到待估计点云数据,该待估计点云数据为该原始点云数据中的部分点云数据,相应地,该前处理模块802用于从该原始点云数据中滤除其他点云数据,得到该待估计点云数据。
其中,该前处理模块802可以先获取当前场景对应的场景点云数据,在得到当前场景对应的原始点云数据之后,可以从原始点云数据中去除与场景点云数据相关的数据,将经过去除处理的原始点云数据作为该待估计点云数据。在另一些实施例中,为了减少计算量,还可以对经过去除处理的原始点云数据进行采样处理,将经过采样处理的原始点云数据作为该待估计点云数据。
该特征提取模块803用于提取待估计点云数据的点云特征,在将该待估计点云数据输入至该特征提取模块803之后,可以得到包括该待估计点云数据中每一数据点的数据点特征的点云特征。其中,该特征提取模块可以基于pointnet++网络实现。
在一些实施例中,在得到该待估计点云数据对应的点云特征之后,可以分别输入至位置预测模块804(对应上述实施例中的位置检测网络)、旋转预测模块805(对应上述实施例中的旋转检测网络)、分类预测模块806(对应上述实施例中的分类检测网络)和置信度预测模块807(对应上述实施例中的置信度检测网络)。其中,该点云特征包括N个数据点中每一数据点对应的数据点特征。
其中,该位置预测模块804可以基于该点云特征得到每一数据点对应的偏移数据;该旋转预测模块805可以基于该点云特征得到每一数据点对应的旋转数据;该分类预测模块806可以基于该点云特征得到每一数据点对应的分类数据;该置信度预测模块807可以基于该点云特征得到每一数据点对应的置信度数据。
在训练场景中,即通过样本点云数据和该样本点云数据对应的标签数据,对该位置预测模块804、旋转预测模块805、分类预测模块806和置信度预测模块807进行训练。
其中,对该位置预测模块804、旋转预测模块805和分类预测模块806的训练过程属于有监督训练过程,相应地,在对位置预测模块804进行训练的过程中,该样本点云数据对应的标签数据为上述位置标签;在对旋转预测模块805进行训练的过程中,该样本点云数据对应的标签数据为上述旋转标签;在对分类预测模块806进行训练的过程中,该样本点云数据对应的标签数据为上述类别标签。
其中,对置信度预测模块807的训练过程属于无监督训练过程,相应地,可以直接基于样本点云数据对应的点云特征对该置信度预测模块进行训练,训练过程中的损失函数如公式(2);
其中,N为样本点云数据中数据点的数量,i为样本点云数据中的第i个数据点,针对第i个数据点,为第i个数据点的置信度,为预设系数,为第i个数据点的其他损失值,该其他损失值与以下模块对应损失值的至少之一相关:位置预测模块804、旋转预测模块805和分类预测模块806。
在一些实施例中,该其他损失值与位置预测模块804的损失值、旋转预测模块805的损失值和分类预测模块806的损失值同时相关,请参阅公式(3):
需要说明的是,当C较大时,损失函数的第一项的值会比较大;当C比较小时,损失函数第二项的值会比较大。经过优化后,损失函数会呈现出大的时候C比较小,小的时候C比较大的结果,由于表征偏移数据、旋转数据、分类数据的差异情况,在差异大的情况下,C越小,在差异小的情况下,C越大,因此C可以很好的表征置信度这一概念。
在推理场景中,可以将位置预测模块804输出的每一数据点对应的偏移数据、该旋转预测模块805输出的每一数据点对应的旋转数据、该分类预测模块806输出的每一数据点对应的分类数据和置信度预测模块807输出的每一数据点对应的置信度数据,一起输入至该后处理模块808。
该后处理模块808,用于基于每一数据点对应的偏移数据、旋转数据、分类数据和置信度数据,确定该原始点云数据(或待估计点云数据)对应的物体分割结果和物体对应的6D位姿估计结果809。其中,物体分割结果包括每一物体对应的数据点集合;该物体对应的6D位姿估计结果包括每一物体对应的旋转矩阵(对应上述实施例中的旋转数据)和平移向量(对应上述实施例中的位置数据)。
在一些实施例中,针对待估计点云数据中的每一数据点,可以获取预设的置信度阈值,基于该置信度阈值对该待估计点云数据的数据点进行筛选,得到多个目标数据点(对应上述实施例中的物体数据点)。基于得到的多个目标数据点,针对每一目标数据点,获取该目标数据点对应的偏移数据,基于该目标数据点的原始位置和偏移数据,可以得到该目标数据点所述物体的中心点位置。对每一目标数据点对应的中心点位置进行聚类,可以得到N个物体中每一个物体的中心点位置,进而可以得到每一个物体对应的平移向量,和每一物体对应的每一目标数据点,其中,该平移向量是坐标系原点(点云数据所在坐标系)指向物体中心点的向量。
在一些实施例中,在确定每一物体包括的目标数据点之后,针对任意一个物体,可以获取该物体对应的每一目标数据点的旋转数据;基于每一目标数据点的旋转数据的平均值,确定该物体对应的旋转矩阵。
在一些实施例中,针对任意一个物体,可以获取该物体对应的每一目标数据点的类别数据;基于每一目标数据点的类别数据,对该物体的类别进行投票,得到物体的类别。
相关技术中直接根据每个数据点的预测值去投票得到位置/旋转/类别。但是,在实际应用中,点云上的每个点由于其所处位置不同,会带来不同的学习难度,其预测的结果也会有不同的置信度,不应该采信所有的点的预测值。基于此,上述实施例可以为每个数据点赋予自学习的不等价的权重,根据这个权重进行加权投票,取得了更好的效果,使得点云实例分割和6D位姿估计结果更精准。
示例性的,本公开实施例提供的点云检测方法可以用于机械臂抓取物料的工业场景中。在该工业场景中,可以获取针对物料区域采集的点云数据,基于该点云数据可以对物料区域中堆叠的物料进行实例分割,并得到每一个物料的6D位姿,基于得到的各物料的6D位姿,可以自适应的调整机械臂的抓取角度,进而实现任意位姿的物料抓取,不仅可以提高抓取的准确性,还可以提升物料抓取效率。
示例性的,本公开实施例提供的点云检测方法还可以用于电路板质检场景中。在该质检场景中,可以获取针对电路板采集的点云数据,基于该点云数据,可以对电路板中各个电路元件进行实例分割,得到每一个电路元件的6D位姿,基于得到的各电路元件的6D位姿,和预设的质检条件进行比较,进而实现对该电路板进行质检,并定位缺陷位置的效果,相比于人工质检的方案,提高了质检效率,降低了不良品率。
基于前述的实施例,本公开实施例提供一种点云检测装置,该装置包括所包括的各单元、以及各单元所包括的各模块,可以通过计算机设备中的处理器来实现;当然也可通过具体的逻辑电路实现;在实施的过程中,处理器可以为中央处理器(Central ProcessingUnit,CPU)、微处理器(Microprocessor Unit,MPU)、数字信号处理器(Digital SignalProcessor,DSP)或现场可编程门阵列(Field Programmable Gate Array,FPGA)等。
图9为本公开实施例提供的一种点云检测装置的组成结构示意图,如图9所示,点云检测装置900包括:第一获取模块901、第一确定模块902、第一检测模块903和第二确定模块904,其中:
第一获取模块901,用于获取待处理点云数据对应的点云特征;所述待处理点云数据包括针对真实场景中至少一个物体采集的多个数据点;
第一确定模块902,用于基于所述点云特征,确定每一所述数据点对应的物体数据;所述物体数据包括所述数据点所属物体的至少一个维度的属性数据;
第一检测模块903,用于对所述点云特征进行置信度检测,得到每一所述数据点对应的置信度数据;所述置信度数据用于表征所述数据点的预测难度,且所述数据点的置信度数据与所述数据点的预测难度负相关;
第二确定模块904,用于基于每一所述数据点对应的物体数据和置信度数据,确定每一所述物体在至少一个所述维度的目标属性数据。
在一些实施例中,所述物体数据包括所述数据点所属物体的位置维度的位置数据;所述第一确定模块902,还用于:对所述点云特征进行位置检测,确定每一所述数据点对应的位置数据;所述位置数据用于表征所述数据点所属物体的位置信息;
所述第一检测模块903,还用于:基于预设的置信度阈值和每一所述数据点对应的置信度数据,在所述多个数据点中筛选得到多个物体数据点;基于每一所述物体数据点对应的位置数据,对所述多个物体数据点进行聚类,得到真实场景中每一所述物体对应的物体数据点集合和每一所述物体在所述位置维度的目标位置数据。
在一些实施例中,所述第一确定模块902,还用于:基于所述点云特征,确定每一所述数据点对应的偏移数据;所述偏移数据用于表征所述数据点与所述数据点所属物体的中心点之间相对位置关系;
基于每一所述数据点对应的数据点位置和偏移数据,确定每一所述数据点对应的位置数据;所述位置数据为所述数据点所属物体的中心点的三维坐标。
在一些实施例中,所述物体数据包括所述数据点所属物体的旋转维度的旋转数据;所述第二确定模块904,还用于:
针对每一所述物体,基于所述物体对应的数据点集合中的每一物体数据点的旋转数据,确定所述物体在所述旋转维度的目标旋转数据。
在一些实施例中,物体数据包括所述数据点所属物体的分类维度的分类数据;所述第二确定模块904,还用于:
针对每一所述物体,基于所述物体对应的数据点集合中的每一物体数据点的分类数据,确定所述物体在所述分类维度的目标分类数据。
在一些实施例中,所述第一获取模块901,还用于:
获取原始点云数据;
对所述原始点云数据进行预处理,得到针对所述至少一个物体采集的多个数据点;
对所述多个数据点进行特征提取,得到所述待处理点云数据对应的点云特征。
在一些实施例中,所述第一获取模块901,用于通过所述点云检测模型中的特征提取网络获取待处理点云数据对应的点云特征;
所述第一确定模块902,用于通过所述点云检测模型中的物体属性检测网络基于所述点云特征,确定每一所述数据点对应的物体数据;
所述第一检测模块903,用于通过所述点云检测模型中的置信度检测网络对所述点云特征进行置信度检测,得到每一所述数据点对应的置信度数据;
所述第二确定模块904,用于通过所述点云检测模型中的后处理网络基于每一所述数据点对应的物体数据和置信度数据,确定每一所述物体在至少一个所述维度的目标属性数据。
图10为本公开实施例提供的一种模型训练装置的组成结构示意图,如图10所示,模型训练装置1000包括:第二获取模块1001、第二检测模块1002和参数调整模块1003,其中:
第二获取模块1001,用于获取针对场景中至少一个样本物体采集的多个样本数据点和每一所述样本数据点所属物体的至少一个维度的真实属性数据;
第二检测模块1002,用于通过初始的点云检测模型对所述多个样本数据点进行物体属性检测和置信度检测,得到每一所述样本数据点的预测置信度和每一所述样本数据点所属物体的每一所述维度的预测属性数据;
参数调整模块1003,用于基于每一所述样本数据点所属物体的至少一个维度的真实属性数据、每一所述样本数据点的预测置信度和每一所述样本数据点所属物体的每一所述维度的预测属性数据,对所述初始的点云检测模型的模型参数进行调整,得到训练后的点云检测模型。
在一些实施例中,所述点云检测模型包括特征提取网络、置信度检测网络和至少一个维度对应的属性检测网络;所述第二检测模块1002,还用于:
通过所述特征提取网络对所述多个样本数据点进行特征提取,得到样本点云特征;
针对每一所述维度,基于所述维度对应的属性检测网络对所述样本点云特征进行所述维度对应的物体属性检测,得到每一所述样本数据点在所述维度对应的预测属性数据;
基于所述置信度检测网络对所述样本点云特征进行置信度检测,得到每一所述样本数据点的预测置信度。
在一些实施例中,所述参数调整模块1003,还用于:
针对每一所述维度,基于每一所述样本数据点在所述维度对应的预测属性数据和所述样本数据点所属物体在所述维度的真实属性数据,确定所述维度对应的损失值;基于所述维度对应的损失值,对所述初始的点云检测模型中所述维度对应的属性检测网络的模型参数进行调整,得到训练后的属性检测网络;
基于每一所述样本数据点在每一所述维度对应的损失值和每一所述样本数据点的预测置信度,确定置信度损失值;基于所述置信度损失值对所述置信度检测网络的模型参数进行调整,得到训练后的置信度检测网络;
基于所述训练后的置信度检测网络和每一所述维度对应的所述训练后的属性检测网络,得到训练后的点云检测模型。
在一些实施例中,所述参数调整模块1003,还用于:
针对每一所述样本数据点,获取所述样本数据点在每一所述维度对应的损失值;基于每一所述维度对应的损失权重,确定所述样本数据点的属性损失值;
将每一所述样本数据点的属性损失值和每一所述样本数据点的预测置信度输入至预设的置信度损失函数,得到所述置信度损失值;
其中,所述置信度损失函数包括第一损失项和第二损失项,所述第一损失项与所述预测置信度和所述属性损失值正相关,所述第二损失项与所述预测置信度负相关;在所述置信度损失函数收敛的情况下,多个所述样本数据点的属性损失值与所述置信度检测网络输出的多个所述样本数据点的预测置信度负相关。
以上装置实施例的描述,与上述方法实施例的描述是类似的,具有同方法实施例相似的有益效果。在一些实施例中,本公开实施例提供的装置具有的功能或包含的模块可以用于执行上述方法实施例描述的方法,对于本公开装置实施例中未披露的技术细节,请参照本公开方法实施例的描述而理解。
需要说明的是,本公开实施例中,如果以软件功能模块的形式实现上述的点云检测方法,并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。基于这样的理解,本公开实施例的技术方案本质上或者说对相关技术做出贡献的部分可以以软件产品的形式体现出来,该软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机、服务器、或者网络设备等)执行本公开各个实施例所述方法的全部或部分。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read OnlyMemory,ROM)、磁碟或者光盘等各种可以存储程序代码的介质。这样,本公开实施例不限制于任何特定的硬件、软件或固件,或者硬件、软件、固件三者之间的任意结合。
本公开实施例提供一种计算机设备,包括存储器和处理器,所述存储器存储有可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述方法中的部分或全部步骤。
本公开实施例提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述方法中的部分或全部步骤。所述计算机可读存储介质可以是瞬时性的,也可以是非瞬时性的。
本公开实施例提供一种计算机程序,包括计算机可读代码,在所述计算机可读代码在计算机设备中运行的情况下,所述计算机设备中的处理器执行用于实现上述方法中的部分或全部步骤。
本公开实施例提供一种计算机程序产品,所述计算机程序产品包括存储了计算机程序的非瞬时性计算机可读存储介质,所述计算机程序被计算机读取并执行时,实现上述方法中的部分或全部步骤。该计算机程序产品可以具体通过硬件、软件或其结合的方式实现。在一些实施例中,所述计算机程序产品具体体现为计算机存储介质,在另一些实施例中,计算机程序产品具体体现为软件产品,例如软件开发包(Software Development Kit,SDK)等等。
这里需要指出的是:上文对各个实施例的描述倾向于强调各个实施例之间的不同之处,其相同或相似之处可以互相参考。以上设备、存储介质、计算机程序及计算机程序产品实施例的描述,与上述方法实施例的描述是类似的,具有同方法实施例相似的有益效果。对于本公开设备、存储介质、计算机程序及计算机程序产品实施例中未披露的技术细节,请参照本公开方法实施例的描述而理解。
图11为本公开实施例提供的一种计算机设备的硬件实体示意图,如图11所示,该计算机设备1100的硬件实体包括:处理器1101和存储器1102,其中,存储器1102存储有可在处理器1101上运行的计算机程序,处理器1101执行程序时实现上述任一实施例的方法中的步骤。
存储器1102存储有可在处理器上运行的计算机程序,存储器1102配置为存储由处理器1101可执行的指令和应用,还可以缓存待处理器1101以及计算机设备1100中各模块待处理或已经处理的数据(例如,图像数据、音频数据、语音通信数据和视频通信数据),可以通过闪存(FLASH)或随机访问存储器(Random Access Memory,RAM)实现。
处理器1101执行程序时实现上述任一项的点云检测方法或模型训练方法的步骤。处理器1101通常控制计算机设备1100的总体操作。
本公开实施例提供一种计算机存储介质,计算机存储介质存储有一个或者多个程序,该一个或者多个程序可被一个或者多个处理器执行,以实现如上任一实施例的点云检测方法或模型训练方法的步骤。
这里需要指出的是:以上存储介质和设备实施例的描述,与上述方法实施例的描述是类似的,具有同方法实施例相似的有益效果。对于本公开存储介质和设备实施例中未披露的技术细节,请参照本公开方法实施例的描述而理解。
上述处理器可以为目标用途集成电路(Application Specific IntegratedCircuit,ASIC)、数字信号处理器(Digital Signal Processor,DSP)、数字信号处理装置(Digital Signal Processing Device,DSPD)、可编程逻辑装置(Programmable LogicDevice,PLD)、现场可编程门阵列(Field Programmable Gate Array,FPGA)、中央处理器(Central Processing Unit,CPU)、控制器、微控制器、微处理器中的至少一种。可以理解地,实现上述处理器功能的电子器件还可以为其它,本公开实施例不作具体限定。
上述计算机存储介质/存储器可以是只读存储器(Read Only Memory,ROM)、可编程只读存储器(Programmable Read-Only Memory,PROM)、可擦除可编程只读存储器(Erasable Programmable Read-Only Memory,EPROM)、电可擦除可编程只读存储器(Electrically Erasable Programmable Read-Only Memory,EEPROM)、磁性随机存取存储器(Ferromagnetic Random Access Memory,FRAM)、快闪存储器(Flash Memory)、磁表面存储器、光盘、或只读光盘(Compact Disc Read-Only Memory,CD-ROM)等存储器;也可以是包括上述存储器之一或任意组合的各种终端,如移动电话、计算机、平板设备、个人数字助理等。
应理解,说明书通篇中提到的“一个实施例”或“一实施例”意味着与实施例有关的特定特征、结构或特性包括在本公开的至少一个实施例中。因此,在整个说明书各处出现的“在一个实施例中”或“在一实施例中”未必一定指相同的实施例。此外,这些特定的特征、结构或特性可以任意适合的方式结合在一个或多个实施例中。应理解,在本公开的各种实施例中,上述各步骤/过程的序号的大小并不意味着执行顺序的先后,各步骤/过程的执行顺序应以其功能和内在逻辑确定,而不应对本公开实施例的实施过程构成任何限定。上述本公开实施例序号仅仅为了描述,不代表实施例的优劣。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
在本公开所提供的几个实施例中,应该理解到,所揭露的设备和方法,可以通过其它的方式实现。以上所描述的设备实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,如:多个单元或组件可以结合,或可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的各组成部分相互之间的耦合、或直接耦合、或通信连接可以是通过一些接口,设备或单元的间接耦合或通信连接,可以是电性的、机械的或其它形式的。
上述作为分离部件说明的单元可以是、或也可以不是物理上分开的,作为单元显示的部件可以是、或也可以不是物理单元;既可以位于一个地方,也可以分布到多个网络单元上;可以根据实际的需要选择其中的部分或全部单元来实现本实施例方案的目的。
另外,在本公开各实施例中的各功能单元可以全部集成在一个处理单元中,也可以是各单元分别单独作为一个单元,也可以两个或两个以上单元集成在一个单元中;上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:移动存储设备、只读存储器(Read Only Memory,ROM)、磁碟或者光盘等各种可以存储程序代码的介质。
或者,本公开上述集成的单元如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。基于这样的理解,本公开的技术方案本质上或者说对相关技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机、服务器、或者网络设备等)执行本公开各个实施例所述方法的全部或部分。而前述的存储介质包括:移动存储设备、ROM、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本公开的实施方式,但本公开的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本公开揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本公开的保护范围之内。
Claims (13)
1.一种点云检测方法,其特征在于,所述方法包括:
获取待处理点云数据对应的点云特征;所述待处理点云数据包括针对真实场景中至少一个物体采集的多个数据点;
基于所述点云特征,确定每一所述数据点对应的物体数据;所述物体数据包括所述数据点所属物体的至少一个维度的属性数据;
对所述点云特征进行置信度检测,得到每一所述数据点对应的置信度数据;所述置信度数据用于表征所述数据点的预测难度,且所述数据点的置信度数据与所述数据点的预测难度负相关;
基于每一所述数据点对应的物体数据和置信度数据,确定每一所述物体在至少一个所述维度的目标属性数据;
其中,所述物体数据还包括所述数据点所属物体的位置维度的位置数据;所述基于每一所述数据点对应的物体数据和置信度数据,确定每一所述物体在至少一个所述维度的目标属性数据,包括:
基于预设的置信度阈值和每一所述数据点对应的置信度数据,在所述多个数据点中筛选得到多个物体数据点;基于每一所述物体数据点对应的位置数据,对所述多个物体数据点进行聚类,得到真实场景中每一所述物体对应的物体数据点集合和每一所述物体在所述位置维度的目标位置数据。
2.根据权利要求1所述的方法,其特征在于,所述基于所述点云特征,确定每一所述数据点对应的物体数据,包括:对所述点云特征进行位置检测,确定每一所述数据点对应的位置数据;所述位置数据用于表征所述数据点所属物体的位置信息。
3.根据权利要求1所述的方法,其特征在于,所述物体数据包括所述数据点所属物体的旋转维度的旋转数据;所述基于每一所述数据点对应的物体数据和置信度数据,确定每一所述物体在至少一个所述维度的目标属性数据,还包括:
针对每一所述物体,基于所述物体对应的数据点集合中的每一物体数据点的旋转数据,确定所述物体在所述旋转维度的目标旋转数据。
4.根据权利要求1至3任一项所述的方法,其特征在于,所述物体数据包括所述数据点所属物体的分类维度的分类数据;所述基于每一所述数据点对应的物体数据和置信度数据,确定每一所述物体在至少一个所述维度的目标属性数据,还包括:
针对每一所述物体,基于所述物体对应的数据点集合中的每一物体数据点的分类数据,确定所述物体在所述分类维度的目标分类数据。
5.根据权利要求1所述的方法,其特征在于,所述获取待处理点云数据对应的点云特征,包括:
获取原始点云数据;
对所述原始点云数据进行预处理,得到针对所述至少一个物体采集的多个数据点;
对所述多个数据点进行特征提取,得到所述待处理点云数据对应的点云特征。
6.根据权利要求1所述的方法,其特征在于,所述点云检测方法由点云检测模型执行,所述点云检测方法包括:
所述点云检测模型中的特征提取网络获取待处理点云数据对应的点云特征;
所述点云检测模型中的物体属性检测网络基于所述点云特征,确定每一所述数据点对应的物体数据;
所述点云检测模型中的置信度检测网络对所述点云特征进行置信度检测,得到每一所述数据点对应的置信度数据;
所述点云检测模型中的后处理网络基于每一所述数据点对应的物体数据和置信度数据,确定每一所述物体在至少一个所述维度的目标属性数据。
7.一种模型训练方法,其特征在于,所述方法包括:
获取针对场景中至少一个样本物体采集的多个样本数据点和每一所述样本数据点所属物体的至少一个维度的真实属性数据;
通过初始的点云检测模型对所述多个样本数据点进行物体属性检测和置信度检测,得到每一所述样本数据点的预测置信度和每一所述样本数据点所属物体的每一所述维度的预测属性数据;
针对每一所述样本数据点,获取所述样本数据点在每一所述维度对应的损失值;基于每一所述维度对应的损失权重,确定所述样本数据点的属性损失值;
将每一所述样本数据点的属性损失值和每一所述样本数据点的预测置信度输入至预设的置信度损失函数,得到置信度损失值;
基于每一所述维度对应的损失值和所述置信度损失值对所述初始的点云检测模型的模型参数进行调整,得到训练后的点云检测模型;
其中,所述置信度损失函数包括第一损失项和第二损失项,所述第一损失项与所述预测置信度和所述属性损失值正相关,所述第二损失项与所述预测置信度负相关;在所述置信度损失函数收敛的情况下,多个所述样本数据点的属性损失值与置信度检测网络输出的多个所述样本数据点的预测置信度负相关。
8.根据权利要求7所述的方法,其特征在于,所述点云检测模型包括特征提取网络、置信度检测网络和至少一个维度对应的属性检测网络;
所述通过初始的点云检测模型对所述多个样本数据点进行物体属性检测和置信度检测,得到每一所述样本数据点的预测置信度和每一所述样本数据点所属物体的每一所述维度的预测属性数据,包括:
通过所述特征提取网络对所述多个样本数据点进行特征提取,得到样本点云特征;
针对每一所述维度,基于所述维度对应的属性检测网络对所述样本点云特征进行所述维度对应的物体属性检测,得到每一所述样本数据点在所述维度对应的预测属性数据;
基于所述置信度检测网络对所述样本点云特征进行置信度检测,得到每一所述样本数据点的预测置信度。
9.根据权利要求8所述的方法,其特征在于,所述基于每一所述维度对应的损失值和所述置信度损失值对所述初始的点云检测模型的模型参数进行调整,得到训练后的点云检测模型,包括:
针对每一所述维度,基于所述维度对应的损失值,对所述初始的点云检测模型中所述维度对应的属性检测网络的模型参数进行调整,得到训练后的属性检测网络;
基于所述置信度损失值对所述置信度检测网络的模型参数进行调整,得到训练后的置信度检测网络;
基于所述训练后的置信度检测网络和每一所述维度对应的所述训练后的属性检测网络,得到训练后的点云检测模型。
10.一种点云检测装置,其特征在于,包括:
第一获取模块,用于获取待处理点云数据对应的点云特征;所述待处理点云数据包括针对真实场景中至少一个物体采集的多个数据点;
第一确定模块,用于基于所述点云特征,确定每一所述数据点对应的物体数据;所述物体数据包括所述数据点所属物体的至少一个维度的属性数据;
第一检测模块,用于对所述点云特征进行置信度检测,得到每一所述数据点对应的置信度数据;所述置信度数据用于表征所述数据点的预测难度,且所述数据点的置信度数据与所述数据点的预测难度负相关;
第二确定模块,用于基于每一所述数据点对应的物体数据和置信度数据,确定每一所述物体在至少一个所述维度的目标属性数据;
其中,所述物体数据还包括所述数据点所属物体的位置维度的位置数据;所述第一检测模块,还用于:基于预设的置信度阈值和每一所述数据点对应的置信度数据,在所述多个数据点中筛选得到多个物体数据点;基于每一所述物体数据点对应的位置数据,对所述多个物体数据点进行聚类,得到真实场景中每一所述物体对应的物体数据点集合和每一所述物体在所述位置维度的目标位置数据。
11.一种模型训练装置,其特征在于,包括:
第二获取模块,用于获取针对场景中至少一个样本物体采集的多个样本数据点和每一所述样本数据点所属物体的至少一个维度的真实属性数据;
第二检测模块,通过初始的点云检测模型对所述多个样本数据点进行物体属性检测和置信度检测,得到每一所述样本数据点的预测置信度和每一所述样本数据点所属物体的每一所述维度的预测属性数据;
参数调整模块,用于针对每一所述维度,基于每一所述样本数据点在所述维度对应的预测属性数据和所述样本数据点所属物体在所述维度的真实属性数据,确定所述维度对应的损失值;将每一所述样本数据点的属性损失值和每一所述样本数据点的预测置信度输入至预设的置信度损失函数,得到置信度损失值;基于每一所述维度对应的损失值和所述置信度损失值对所述初始的点云检测模型的模型参数进行调整,得到训练后的点云检测模型;
其中,所述置信度损失函数包括第一损失项和第二损失项,所述第一损失项与所述预测置信度和所述属性损失值正相关,所述第二损失项与所述预测置信度负相关;在所述置信度损失函数收敛的情况下,多个所述样本数据点的属性损失值与置信度检测网络输出的多个所述样本数据点的预测置信度负相关。
12.一种计算机设备,包括存储器和处理器,所述存储器存储有可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现权利要求1至6任一项所述方法、或权利要求7至9任一项所述方法中的步骤。
13.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至6任一项所述方法、或权利要求7至9任一项所述方法中的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210879332.6A CN114937265B (zh) | 2022-07-25 | 2022-07-25 | 点云检测方法和模型训练方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210879332.6A CN114937265B (zh) | 2022-07-25 | 2022-07-25 | 点云检测方法和模型训练方法、装置、设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114937265A CN114937265A (zh) | 2022-08-23 |
CN114937265B true CN114937265B (zh) | 2022-10-28 |
Family
ID=82867902
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210879332.6A Active CN114937265B (zh) | 2022-07-25 | 2022-07-25 | 点云检测方法和模型训练方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114937265B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116168366B (zh) * | 2023-01-19 | 2023-12-05 | 北京百度网讯科技有限公司 | 点云数据生成方法、模型训练方法、目标检测方法和装置 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109816050A (zh) * | 2019-02-23 | 2019-05-28 | 深圳市商汤科技有限公司 | 物体位姿估计方法及装置 |
CN111968133A (zh) * | 2020-07-31 | 2020-11-20 | 上海交通大学 | 自动驾驶场景下的三维点云数据实例分割方法及系统 |
CN112873212A (zh) * | 2021-02-25 | 2021-06-01 | 深圳市商汤科技有限公司 | 抓取点检测方法及装置、电子设备和存储介质 |
CN114029941A (zh) * | 2021-09-22 | 2022-02-11 | 中国科学院自动化研究所 | 一种机器人抓取方法、装置、电子设备及计算机介质 |
CN114509785A (zh) * | 2022-02-16 | 2022-05-17 | 中国第一汽车股份有限公司 | 三维物体检测方法、装置、存储介质、处理器及系统 |
CN114723949A (zh) * | 2022-04-18 | 2022-07-08 | 北京百度网讯科技有限公司 | 三维场景分割方法和用于训练分割模型的方法 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20220164700A1 (en) * | 2020-11-25 | 2022-05-26 | UiPath, Inc. | Robotic process automation architectures and processes for hosting, monitoring, and retraining machine learning models |
CN113822910A (zh) * | 2021-09-30 | 2021-12-21 | 上海商汤临港智能科技有限公司 | 多目标跟踪方法、装置、电子设备及存储介质 |
CN114638954B (zh) * | 2022-02-22 | 2024-04-19 | 深圳元戎启行科技有限公司 | 点云分割模型的训练方法、点云数据分割方法及相关装置 |
-
2022
- 2022-07-25 CN CN202210879332.6A patent/CN114937265B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109816050A (zh) * | 2019-02-23 | 2019-05-28 | 深圳市商汤科技有限公司 | 物体位姿估计方法及装置 |
CN111968133A (zh) * | 2020-07-31 | 2020-11-20 | 上海交通大学 | 自动驾驶场景下的三维点云数据实例分割方法及系统 |
CN112873212A (zh) * | 2021-02-25 | 2021-06-01 | 深圳市商汤科技有限公司 | 抓取点检测方法及装置、电子设备和存储介质 |
CN114029941A (zh) * | 2021-09-22 | 2022-02-11 | 中国科学院自动化研究所 | 一种机器人抓取方法、装置、电子设备及计算机介质 |
CN114509785A (zh) * | 2022-02-16 | 2022-05-17 | 中国第一汽车股份有限公司 | 三维物体检测方法、装置、存储介质、处理器及系统 |
CN114723949A (zh) * | 2022-04-18 | 2022-07-08 | 北京百度网讯科技有限公司 | 三维场景分割方法和用于训练分割模型的方法 |
Non-Patent Citations (6)
Title |
---|
Domain centralization and cross-modal reinforcement learning for vision-based robotic manipulation;Hui Cheng等;《Int J Precis Agric Aviat》;20200630;第3卷(第2期);第48-55页 * |
Learning Affordance Space in Physical World for Vision-based Robotic Object Manipulation;Huadong Wu等;《2020 IEEE International Conference on Robotics and Automation (ICRA)》;20200915;第4652-4658页 * |
基于K-means聚类方法的三维点云模型分割;孙红岩等;《计算机工程与应用》;20060401(第10期);第42-45页 * |
基于点云的聚类(障碍物分割)方法;无偏估计;《https://zhuanlan.zhihu.com/p/497930938》;20220413;第1页 * |
基于迭代式自主学习的三维目标检测;王康如等;《光学学报》;20200510;第40卷(第9期);第133-145页 * |
室外场景三维点云数据分割分类算法研究;安陆;《中国优秀硕士学位论文全文数据库信息科技辑》;20200515(第5期);第I138-235页 * |
Also Published As
Publication number | Publication date |
---|---|
CN114937265A (zh) | 2022-08-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9142011B2 (en) | Shadow detection method and device | |
WO2022166400A1 (zh) | 一种处理三维点云的方法、装置、设备以及存储介质 | |
CN106557778B (zh) | 通用物体检测方法和装置、数据处理装置和终端设备 | |
CN109815770B (zh) | 二维码检测方法、装置及系统 | |
CN109492577B (zh) | 一种手势识别方法、装置及电子设备 | |
CN110826476A (zh) | 识别目标物体的图像检测方法、装置、电子设备和存储介质 | |
CN106133756A (zh) | 用于过滤、分割并且识别无约束环境中的对象的系统 | |
CN112634340A (zh) | 基于点云数据确定bim模型的方法、装置、设备和介质 | |
Patterson et al. | Object detection from large-scale 3d datasets using bottom-up and top-down descriptors | |
CN114937265B (zh) | 点云检测方法和模型训练方法、装置、设备及存储介质 | |
Khurana et al. | A survey on object recognition and segmentation techniques | |
CN107272899B (zh) | 一种基于动态手势的vr交互方法、装置及电子设备 | |
CN112802126A (zh) | 一种标定方法、装置、计算机设备和存储介质 | |
CN107480627B (zh) | 行为识别方法、装置、存储介质和处理器 | |
CN113947613B (zh) | 目标区域检测方法、装置、设备及存储介质 | |
CN115527050A (zh) | 图像特征匹配方法、计算机设备和可读存储介质 | |
CN116543261A (zh) | 用于图像识别的模型训练方法、图像识别方法设备及介质 | |
CN116229189A (zh) | 基于荧光内窥镜的图像处理方法、装置、设备及存储介质 | |
CN111144425A (zh) | 检测拍屏图片的方法、装置、电子设备及存储介质 | |
US11816857B2 (en) | Methods and apparatus for generating point cloud histograms | |
CN113205139A (zh) | 一种基于密度聚类的无人艇水上球体检测方法 | |
Tombari et al. | Online learning for automatic segmentation of 3D data | |
CN111179218A (zh) | 传送带物料检测方法、装置、存储介质及终端设备 | |
Promsuk et al. | Numerical Reader System for Digital Measurement Instruments Embedded Industrial Internet of Things. | |
Secord et al. | Tree detection in aerial lidar and image data |
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 |