当前位置: 首页 > 专利查询>清华大学专利>正文

用于三维模型构建的三维点云模型训练方法技术

技术编号:21364360 阅读:45 留言:0更新日期:2019-06-15 09:58
本申请提出用于三维模型构建的三维点云模型训练方法和装置,其中,方法包括:获取训练集合,将训练集合中每组三维点云数据划分为第一集合和第二集合,将第一集合中的点数据输入预设三维点云模型得到第一预测集合,将第一预测集合中的预测点数据输入同一个模型得到第二预测集合,根据预设的第一损失函数获取第一损失函数值,根据预设的第二损失函数获取第二损失函数值,对第一损失函数值和第二损失函数值计算获取每组点云数据对应的第三损失函数值,根据多组三维点云数据对应的多个第三损失函数值训练预设三维点云模型,以便于根据训练后的预设三维点云模型进行三维模型的构建。由此,训练后的预设三维点云模型提高了点云数据特征学习的效果。

Training Method of Three-dimensional Point Cloud Model for Three-dimensional Model Construction

This application proposes a training method and apparatus for three-dimensional point cloud model for three-dimensional model construction. The method includes acquiring training set, dividing each set of three-dimensional point cloud data into the first set and the second set, inputting the point data in the first set into the preset three-dimensional point cloud model to obtain the first prediction set, and inputting the predicted point data in the first prediction set into the same set. A model obtains the second prediction set, obtains the first loss function value according to the presupposed first loss function, obtains the second loss function value according to the presupposed second loss function, calculates the first loss function value and the second loss function value to obtain the third loss function value corresponding to each set of point cloud data, and trains the third loss function value corresponding to multiple sets of three-dimensional point cloud data. Presupposed three-dimensional point cloud model, so as to facilitate the construction of three-dimensional model according to the training presupposed three-dimensional point cloud model. Therefore, the preset three-dimensional point cloud model after training improves the effect of feature learning of point cloud data.

【技术实现步骤摘要】
用于三维模型构建的三维点云模型训练方法
本申请涉及计算机视觉与机器学习
,尤其涉及一种用于三维模型构建的三维点云模型训练方法。
技术介绍
三维点云数据随着深度扫描设备的发展而逐渐增多。相比较二维图像的扁平空间,三维点云数据包含有更多的空间结构信息,其结构的不规则和空间上的可变换等特性造成了分析上具有更大的难度,需要更全面的方式对于三维的点云空间信息进行进一步处理和理解。随着深度学习在多项视觉分析领域取得了突破性的进展,许多学者通过深度学习的方法对于三维点云进行处理和特征提取分析。首先处理三维点云的深度学习方法是基于监督学习的方法,例如PointNet和PointNet++。然而这种基于监督学习的点云特征提取算法需要消耗大量的人力物力对于数据进行完全标注,严重受到可用的数据量的限制。随后一系列的改进算法中提出以重构等任务的方式,通过编码-译码的方式对于无标注点云进行无监督学习,从而获取点云特征。该方法能够很大程度上减少标注的人力物力消耗,但是它们并不能够对于点云的所有特征进行更有效的理解。但是,在重构的过程中使用的点-点距离作为损失函数使得神经网络对于随机表面采样的训练集中的点会产生一定过拟合,使得网络不能够在空间结构层面上更有效理解三维点云的全部信息。
技术实现思路
本申请旨在至少在一定程度上解决相关技术中的技术问题之一。为此,本申请提出一种用于三维模型构建的三维点云模型训练方法,以解决了现有技术中通过计算预测点数据与目标点数据之间距离来计算损失函数的方式,导致三维点云模型产生的点出现过拟合的现象的技术问题。本申请一方面实施例提出了一种用于三维模型构建的三维点云模型训练方法,包括:获取训练集合,其中,所述训练集合中包含了多组三维点云数据,每组三维点云数据是通过对同一个训练物品进行三维扫描得到的,所述每组点云数据中包括预设个数的点数据,其中,所述预设个数为预设阈值的两倍;将所述每组三维点云数据划分为第一集合和第二集合,其中,所述第一集合和所述第二集合中包含的点数据的个数为所述预设阈值;将所述第一集合中的点数据输入预设三维点云模型的编码器,得到第一特征集合,并将所述第一特征集合输入所述预设三维点云模型的译码器得到第一预测集合,其中,所述第一预测集合中包含了与所述第二集合中的点数据对应的预测点数据;将所述第一预测集合中的预测点数据输入所述预设三维点云模型的编码器,得到第二特征集合,并将所述第二特征集合输入所述预设三维点云模型的译码器得到第二预测集合,其中,所述第二预测集合中包含了与所述第一集合中的点数据对应的预测点数据;根据预设的第一损失函数获取所述第一预测集合与所述第二集合的第一损失函数值,并根据所述预设的第二损失函数获取所述第二预测集合与所述第一集合的第二损失函数值;根据预设的第三损失函数对所述第一损失函数值和所述第二损失函数值计算获取所述每组点云数据对应的第三损失函数值;根据所述多组三维点云数据对应的多个第三损失函数值训练所述预设三维点云模型,以便于根据训练后的所述预设三维点云模型进行三维模型的构建。本申请实施例的用于三维模型构建的三维点云模型训练方法,通过获取训练集合,将训练集合中每组三维点云数据划分为第一集合和第二集合,将第一集合中的点数据输入预设三维点云模型得到第一预测集合,将第一预测集合中的预测点数据输入同一个模型得到第二预测集合,根据预设的第一损失函数获取第一损失函数值,根据预设的第二损失函数获取第二损失函数值,对第一损失函数值和第二损失函数值计算获取每组点云数据对应的第三损失函数值,根据多组三维点云数据对应的多个第三损失函数值训练预设三维点云模型,以便于根据训练后的预设三维点云模型进行三维模型的构建。由此,训练后的预设三维点云模型提高了点云数据特征学习的效果。本申请另一方面实施例提出了一种用于三维模型构建的三维点云模型训练装置,包括:获取模块,用于获取训练集合,其中,所述训练集合中包含了多组三维点云数据,每组三维点云数据是通过对同一个训练物品进行三维扫描得到的,所述每组点云数据中包括预设个数的点数据,其中,所述预设个数为预设阈值的两倍;划分模块,用于将所述每组三维点云数据划分为第一集合和第二集合,其中,所述第一集合和所述第二集合中包含的点数据的个数为所述预设阈值;第一处理模块,用于将所述第一集合中的点数据输入预设三维点云模型的编码器,得到第一特征集合,并将所述第一特征集合输入所述预设三维点云模型的译码器得到第一预测集合,其中,所述第一预测集合中包含了与所述第二集合中的点数据对应的预测点数据;第二处理模块,用于将所述第一预测集合中的预测点数据输入所述预设三维点云模型的编码器,得到第二特征集合,并将所述第二特征集合输入所述预设三维点云模型的译码器得到第二预测集合,其中,所述第二预测集合中包含了与所述第一集合中的点数据对应的预测点数据;第一计算模块,用于根据预设的第一损失函数获取所述第一预测集合与所述第二集合的第一损失函数值,并根据所述预设的第二损失函数获取所述第二预测集合与所述第一集合的第二损失函数值;第二计算模块,用于根据预设的第三损失函数对所述第一损失函数值和所述第二损失函数值计算获取所述每组点云数据对应的第三损失函数值;训练模块,用于根据所述多组三维点云数据对应的多个第三损失函数值训练所述预设三维点云模型,以便于根据训练后的所述预设三维点云模型进行三维模型的构建。本申请实施例的用于三维模型构建的三维点云模型训练装置,通过获取训练集合,将训练集合中每组三维点云数据划分为第一集合和第二集合,将第一集合中的点数据输入预设三维点云模型得到第一预测集合,将第一预测集合中的预测点数据输入同一个模型得到第二预测集合,根据预设的第一损失函数获取第一损失函数值,根据预设的第二损失函数获取第二损失函数值,对第一损失函数值和第二损失函数值计算获取每组点云数据对应的第三损失函数值,根据多组三维点云数据对应的多个第三损失函数值训练预设三维点云模型,以便于根据训练后的预设三维点云模型进行三维模型的构建。由此,训练后的预设三维点云模型提高了点云数据特征学习的效果。本申请附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本申请的实践了解到。附图说明本申请上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:图1为本申请实施例提供的一种用于三维模型构建的三维点云模型训练方法的流程示意图;图2为本申请实施例提供的一种预设三维点云模型结构示意图;图3为本申请实施例中提供的一种计算点面距离的结构示意图;图4为本申请实施例提供的一种用于三维模型构建的三维点云模型训练装置的结构示意图。具体实施方式下面详细描述本申请的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本申请,而不能理解为对本申请的限制。下面参考附图描述本申请实施例的用于三维模型构建的三维点云模型训练方法和装置。图1为本申请实施例提供的一种用于三维模型构建的三维点云模型训练方法的流程示意图。如图1所示,该用于三维模型构建的三维点云模型训练方法包括以下步骤:步骤S101,获取训练集本文档来自技高网...

【技术保护点】
1.一种用于三维模型构建的三维点云模型训练方法,其特征在于,所述方法包括以下步骤:获取训练集合,其中,所述训练集合中包含了多组三维点云数据,每组三维点云数据是通过对同一个训练物品进行三维扫描得到的,所述每组点云数据中包括预设个数的点数据,其中,所述预设个数为预设阈值的两倍;将所述每组三维点云数据划分为第一集合和第二集合,其中,所述第一集合和所述第二集合中包含的点数据的个数为所述预设阈值;将所述第一集合中的点数据输入预设三维点云模型的编码器,得到第一特征集合,并将所述第一特征集合输入所述预设三维点云模型的译码器得到第一预测集合,其中,所述第一预测集合中包含了与所述第二集合中的点数据对应的预测点数据;将所述第一预测集合中的预测点数据输入所述预设三维点云模型的编码器,得到第二特征集合,并将所述第二特征集合输入所述预设三维点云模型的译码器得到第二预测集合,其中,所述第二预测集合中包含了与所述第一集合中的点数据对应的预测点数据;根据预设的第一损失函数获取所述第一预测集合与所述第二集合的第一损失函数值,并根据所述预设的第二损失函数获取所述第二预测集合与所述第一集合的第二损失函数值;根据预设的第三损失函数对所述第一损失函数值和所述第二损失函数值计算获取所述每组点云数据对应的第三损失函数值;根据所述多组三维点云数据对应的多个第三损失函数值训练所述预设三维点云模型,以便于根据训练后的所述预设三维点云模型进行三维模型的构建。...

【技术特征摘要】
1.一种用于三维模型构建的三维点云模型训练方法,其特征在于,所述方法包括以下步骤:获取训练集合,其中,所述训练集合中包含了多组三维点云数据,每组三维点云数据是通过对同一个训练物品进行三维扫描得到的,所述每组点云数据中包括预设个数的点数据,其中,所述预设个数为预设阈值的两倍;将所述每组三维点云数据划分为第一集合和第二集合,其中,所述第一集合和所述第二集合中包含的点数据的个数为所述预设阈值;将所述第一集合中的点数据输入预设三维点云模型的编码器,得到第一特征集合,并将所述第一特征集合输入所述预设三维点云模型的译码器得到第一预测集合,其中,所述第一预测集合中包含了与所述第二集合中的点数据对应的预测点数据;将所述第一预测集合中的预测点数据输入所述预设三维点云模型的编码器,得到第二特征集合,并将所述第二特征集合输入所述预设三维点云模型的译码器得到第二预测集合,其中,所述第二预测集合中包含了与所述第一集合中的点数据对应的预测点数据;根据预设的第一损失函数获取所述第一预测集合与所述第二集合的第一损失函数值,并根据所述预设的第二损失函数获取所述第二预测集合与所述第一集合的第二损失函数值;根据预设的第三损失函数对所述第一损失函数值和所述第二损失函数值计算获取所述每组点云数据对应的第三损失函数值;根据所述多组三维点云数据对应的多个第三损失函数值训练所述预设三维点云模型,以便于根据训练后的所述预设三维点云模型进行三维模型的构建。2.根据权利要求1中所述的模型训练方法,其特征在于,所述将所述每组点云数据划分为第一集合和第二集合,包括:通过随机采样的方式在所述每组三维点云数据中选取一个目标点数据;针对所述每组三维点云数据中的其他三维点云数据与所述目标点数据的距离,按照所述距离由小到大的顺序筛选出N个相邻点数据,生成包含所述N个相邻点数据和所述目标点数据的所述第一集合;其中,N的值为所述预设阈值减一;根据所述每组三维点云数据中除所述第一集合包含的点数据之外的其他点数据生成所述第二集合。3.根据权利要求1中所述的模型训练方法,其特征在于,所述根据预设的第一损失函数获取所述第一预测集合与所述第二集合的第一损失函数值,并根据所述预设的第二损失函数获取所述第二预测集合与所述第一集合的第二损失函数值,包括:根据预设的筛选策略在所述第二集合中筛选与所述第一预测集合中每个第一预测点数据对应的三个第一相邻点数据,并根据所述预设的筛选策略在所述第一预测集合中筛选与所述第二集合中每个第一点数据对应的三个第二相邻点数据;计算所述每个第一预测点数据与对应的所述三个第一相邻点数据组成的三角形面的第一点面距离,计算所述每个第一点数据与对应的所述三个第二相邻点数据组成的三角形面的第二点面距离,并获取所述每个第一预测点数据对应的第一点面距离,和,与所述每个第一预测点数据对应的第一点数据对应的所述第二点面距离之和,计算各个第一预测点数据对应的各个距离之和的平均值获取所述第一损失函数值;根据所述预设的筛选策略在所述第一集合中筛选与所述第二预测集合中每个第二预测点数据对应的三个第二相邻点数据,并根据所述预设的筛选策略在所述第二预测集合中筛选与所述第一集合中每个第二点数据对应的三个第三相邻点数据;计算所述每个第二预测点数据与对应的所述三个第二相邻点数据组成的三角形面的第三点面距离,计算所述每个第二点数据与对应的所述三个第三相邻点数据组成的三角形面的第四点面距离,并获取所述每个第二预测点数据对应的第三点面距离,和,与所述每个第二预测点数据对应的第二点数据对应的所述第四点面距离之和,计算各个第二预测点数据对应的各个距离之和的平均值获取所述第二损失函数值。4.根据权利要求1中所述的模型训练方法,其特征在于,所述第一损失函数值的计算公式为:其中,Lr(p)为第一损失函数值,Nm为所述每组三维点云数据的数量,Pm为所述第一集合,为所述第一预测集合,pk是Pm中到点最近的k个点,是中到p点最近的k个点,θk和为距离系数,D为所述第一预测集合的预测点数据与所述第二集合的点数据间的距离。5.根据权利要求1中所述的模型训练方法,其特征在于,所述根据预设的第三损失函数对所述第一损失函数值和所述第二损失函数值计算获取所述每组点云数据对应的第三损失函数值:根据如下计算公式对所述第一损失函数和所述第二损失函数计算所述第三损失函数,其中,所述计算公式为:L(P)=Lr(P)+λLc(P)=D(F(Ps),Pm)+λD(F2(Ps),Ps)其中,L(p)为所述第三损失函数值,Lr(p)为所述第一损失函数值,Lc(p)为所述第二损失函数值,λ为超参数,D(F(Ps),Pm)为所述第一预测集合的预测点数据与所述第二集合的点数据间的距离,D(F2(Ps),Ps)为所述第二预测集合的预测点数据与...

【专利技术属性】
技术研发人员:鲁继文周杰段岳圻
申请(专利权)人:清华大学
类型:发明
国别省市:北京,11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1