CN116957991A - 三维模型补全方法以及三维模型补全模型的生成方法 - Google Patents

三维模型补全方法以及三维模型补全模型的生成方法 Download PDF

Info

Publication number
CN116957991A
CN116957991A CN202311206432.3A CN202311206432A CN116957991A CN 116957991 A CN116957991 A CN 116957991A CN 202311206432 A CN202311206432 A CN 202311206432A CN 116957991 A CN116957991 A CN 116957991A
Authority
CN
China
Prior art keywords
model
initial
data
dimensional model
complement
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.)
Granted
Application number
CN202311206432.3A
Other languages
English (en)
Other versions
CN116957991B (zh
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.)
Beijing Xuanguang Technology Co ltd
Original Assignee
Beijing Xuanguang Technology Co ltd
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 Beijing Xuanguang Technology Co ltd filed Critical Beijing Xuanguang Technology Co ltd
Priority to CN202311206432.3A priority Critical patent/CN116957991B/zh
Publication of CN116957991A publication Critical patent/CN116957991A/zh
Application granted granted Critical
Publication of CN116957991B publication Critical patent/CN116957991B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • 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/10Constructive solid geometry [CSG] using solid primitives, e.g. cylinders, cubes
    • 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/20Finite element generation, e.g. wire-frame surface description, tesselation
    • 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/74Image or video pattern matching; Proximity measures in feature spaces
    • G06V10/75Organisation of the matching processes, e.g. simultaneous or sequential comparisons of image or video features; Coarse-fine approaches, e.g. multi-scale approaches; using context analysis; Selection of dictionaries
    • 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
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2200/00Indexing scheme for image data processing or generation, in general
    • G06T2200/04Indexing scheme for image data processing or generation, in general involving 3D image data
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Geometry (AREA)
  • Computer Graphics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Computing Systems (AREA)
  • Databases & Information Systems (AREA)
  • Evolutionary Computation (AREA)
  • General Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Multimedia (AREA)
  • Processing Or Creating Images (AREA)

Abstract

本申请公开了一种三维模型补全方法、三维模型补全模型的生成方法、存储介质、计算机设备,该三维模型补全方法包括:获取待补全的初始三维模型数据;将所述初始三维模型数据输入至预训练的三维模型补全模型中,得到补全后的目标三维模型数据,所述三维模型补全模型包括编码器、模型补全网络和解码器,通过所述编码器对所述初始三维模型数据进行编码,通过所述模型补全网络对编码得到的残缺模型数据进行补全,并通过所述解码器对补全得到的完整模型数据进行解码得到所述目标三维模型数据。本申请通过部分人工建模融合部分智能补全的方式,减少了建模人员的工作量、节约了建模时间、提升了三维模型的建模精度。

Description

三维模型补全方法以及三维模型补全模型的生成方法
技术领域
本申请涉及三维建模技术领域,尤其是涉及到一种三维模型补全方法、三维模型补全模型的生成方法、存储介质、计算机设备。
背景技术
在电影、游戏、元宇宙、数字人等行业中,三维模型创作过程是非常耗时的,占据了项目大部分成本。目前的三维建模工作中,基本上完全依靠人工来完成三维建模,工作量巨大,建模效率低,并且模型好坏取决于建模人员的经验和审美,模型质量也难以保证。
发明内容
有鉴于此,本申请提供了一种三维模型补全方法、三维模型补全模型的生成方法、存储介质、计算机设备,三维模型补全模型可以对人工建模的残缺模型、粗略模型等不够完善的三维模型进行模型补全,相比于目前完全依赖人工建模的方式,通过部分人工建模融合部分智能补全的方式,减少了建模人员的工作量、节约了建模时间、提升了三维模型的建模精度。
根据本申请的一个方面,提供了一种三维模型补全方法,所述方法包括:
获取待补全的初始三维模型数据;
将所述初始三维模型数据输入至预训练的三维模型补全模型中,得到补全后的目标三维模型数据,其中,所述三维模型补全模型包括编码器、模型补全网络和解码器,通过所述编码器对所述初始三维模型数据进行编码,通过所述模型补全网络对编码得到的残缺模型数据进行补全,并通过所述解码器对补全得到的完整模型数据进行解码得到所述目标三维模型数据。
可选地,所述三维模型补全模型还包括第一分类器,所述编码器和所述解码器均与所述第一分类器对应的第一分类类型匹配,所述第一分类类型包括点云类型、体素类型、网格类型以及符号距离函数类型中至少两种;
所述将所述初始三维模型数据输入至预训练的三维模型补全模型中,得到补全后的目标三维模型数据,包括:
通过所述第一分类器对所述初始三维模型数据进行分类,确定所述初始三维模型数据的第一数据类型;
将所述初始三维模型数据输入至与所述第一数据类型对应的编码器中得到所述残缺模型数据,通过所述模型补全网络对所述残缺模型数据进行补全得到所述完整模型数据,并将所述完整模型数据输入至与所述第一数据类型对应的解码器中得到所述目标三维模型数据。
可选地,所述三维模型补全模型还包括第二分类器,所述模型补全网络与所述第二分类器对应的第二分类类型匹配,所述第二分类类型包括点云类型、体素类型、网格类型以及符号距离函数类型中至少两种;
所述将所述初始三维模型数据输入至预训练的三维模型补全模型中,得到补全后的目标三维模型数据,包括:
通过所述第二分类器对所述初始三维模型数据进行分类,确定所述初始三维模型数据的第二数据类型;
通过所述编码器对所述初始三维模型数据进行编码得到所述残缺模型数据,将所述残缺模型数据输入至与所述第二数据类型对应的模型补全网络中得到所述完整模型数据,并通过所述解码器对所述完整模型数据进行解码得到所述目标三维模型数据。
可选地,所述获取待补全的初始三维模型数据之前,所述方法还包括:
建立初始三维模型补全模型,其中,所述初始三维模型补全模型包括初始编码器、数据遮罩器、初始模型补全网络和初始解码器,所述数据遮罩器用于随机或按预设规则对所述初始编码器的输出数据进行遮罩;
构建所述初始编码器与所述初始解码器对应的第一损失函数、以及所述初始模型补全网络的第二损失函数,并基于所述第一损失函数和所述第二损失函数确定所述初始三维模型补全模型的损失函数,其中,所述第一损失函数用于计算所述初始解码器的输出数据与所述初始编码器的输入数据之间的损失值,所述第二损失函数用于计算所述初始模型补全网络的输出数据与所述数据遮罩器的输入数据之间的损失值;
获取完整三维模型样本,并基于所述完整三维模型样本和所述损失函数,对所述初始编码器、所述初始模型补全网络和所述初始解码器进行训练,以得到所述三维模型补全模型。
可选地,所述数据遮罩器用于按照至少一种数据遮罩比例,随机或按预设规则对所述初始编码器的输出数据进行遮罩。
可选地,所述完整三维模型样本包括至少两种数据类型,所述初始三维模型补全模型还包括初始第一分类器,所述初始编码器和所述初始解码器均与所述数据类型匹配,所述初始模型补全网络为唯一;
所述基于所述完整三维模型样本和所述损失函数,对所述初始编码器、所述初始模型补全网络和所述初始解码器进行训练,以得到所述三维模型补全模型,包括:
基于各数据类型的完整三维模型样本,对所述初始第一分类器进行训练,得到第一分类器;
利用各数据类型的完整三维模型样本和所述损失函数,对所述初始编码器、所述初始模型补全网络和所述初始解码器进行训练,以得到第一中间三维模型补全模型,其中,所述第一中间三维模型补全模型包括与每种数据类型对应的编码器和解码器以及唯一的模型补全网络;
将所述第一分类器和所述第一中间三维模型补全模型进行拼接,得到所述三维模型补全模型。
可选地,所述完整三维模型样本包括至少两种数据类型,所述初始三维模型补全模型还包括初始第二分类器,所述初始模型补全网络与所述数据类型匹配,所述初始编码器和所述初始解码器均为唯一;
所述基于所述完整三维模型样本和所述损失函数,对所述初始编码器、所述初始模型补全网络和所述初始解码器进行训练,以得到所述三维模型补全模型,包括:
基于各数据类型的完整三维模型样本,对所述初始第二分类器进行训练,得到第二分类器;
利用各数据类型的完整三维模型样本和所述损失函数,对所述初始编码器、所述初始模型补全网络和所述初始解码器进行训练,以得到第二中间三维模型补全模型,其中,所述第二中间三维模型补全模型包括与每种数据类型对应的模型补全网络以及唯一的编码器和唯一的解码器;
将所述第二分类器和所述第二中间三维模型补全模型进行拼接,得到所述三维模型补全模型。
可选地,所述基于所述完整三维模型样本和所述损失函数对所述初始编码器、所述初始模型补全网络和所述初始解码器进行训练,包括:
分别将每个所述完整三维模型样本缩放至预设尺寸,并基于预设分块数量,对缩放后的完整三维模型样本进行分块;
根据分块得到的各块三维模型样本确定训练样本数据,并基于所述训练样本数据和所述损失函数对所述初始编码器、所述初始模型补全网络和所述初始解码器进行训练。
根据本申请的另一方面,提供了一种三维模型补全模型的生成方法,所述方法包括:
建立初始三维模型补全模型,其中,所述初始三维模型补全模型包括初始编码器、数据遮罩器、初始模型补全网络和初始解码器,所述数据遮罩器用于随机或按预设规则对所述初始编码器的输出数据进行遮罩;
构建所述初始编码器与所述初始解码器对应的第一损失函数、以及所述初始模型补全网络的第二损失函数,并基于所述第一损失函数和所述第二损失函数确定所述初始三维模型补全模型的损失函数,其中,所述第一损失函数用于计算所述初始解码器的输出数据与所述初始编码器的输入数据之间的第一损失值,所述第二损失函数用于计算所述初始模型补全网络的输出数据与所述数据遮罩器的输入数据之间的第二损失值;
获取完整三维模型样本,并基于所述完整三维模型样本和所述损失函数,对所述初始编码器、所述初始模型补全网络和所述初始解码器进行训练,以得到三维模型补全模型,其中,所述三维模型补全模型包括编码器、模型补全网络和解码器;
其中,所述三维模型补全模型用于:通过所述编码器对初始三维模型数据进行编码,通过所述模型补全网络对编码得到的残缺模型数据进行补全,并通过所述解码器对补全得到的完整模型数据进行解码得到目标三维模型数据。
可选地,所述数据遮罩器用于按照至少一种数据遮罩比例,随机或按预设规则对所述初始编码器的输出数据进行遮罩。
可选地,所述完整三维模型样本包括点云类型、体素类型、网格类型以及符号距离函数类型中至少两种数据类型,所述初始三维模型补全模型还包括初始第一分类器,所述初始编码器和所述初始解码器均与所述数据类型匹配,所述初始模型补全网络为唯一;
所述基于所述完整三维模型样本和所述损失函数,对所述初始编码器、所述初始模型补全网络和所述初始解码器进行训练,以得到所述三维模型补全模型,包括:
基于各数据类型的完整三维模型样本,对所述初始第一分类器进行训练,得到第一分类器;
利用各数据类型的完整三维模型样本和所述损失函数,对所述初始编码器、所述初始模型补全网络和所述初始解码器进行训练,以得到第一中间三维模型补全模型,其中,所述第一中间三维模型补全模型包括与每种数据类型对应的编码器和解码器以及唯一的模型补全网络;
将所述第一分类器和所述第一中间三维模型补全模型进行拼接,得到所述三维模型补全模型;
其中,所述三维模型补全模型用于:通过所述第一分类器对所述初始三维模型数据进行分类,确定所述初始三维模型数据的第一数据类型;将所述初始三维模型数据输入至与所述第一数据类型对应的编码器中得到所述残缺模型数据,通过所述模型补全网络对所述残缺模型数据进行补全得到所述完整模型数据,并将所述完整模型数据输入至与所述第一数据类型对应的解码器中得到所述目标三维模型数据。
可选地,所述完整三维模型样本包括点云类型、体素类型、网格类型以及符号距离函数类型中至少两种数据类型,所述初始三维模型补全模型还包括初始第二分类器,所述初始模型补全网络与所述数据类型匹配,所述初始编码器和所述初始解码器均为唯一;
所述基于所述完整三维模型样本和所述损失函数,对所述初始编码器、所述初始模型补全网络和所述初始解码器进行训练,以得到所述三维模型补全模型,包括:
基于各数据类型的完整三维模型样本,对所述初始第二分类器进行训练,得到第二分类器;
利用各数据类型的完整三维模型样本和所述损失函数,对所述初始编码器、所述初始模型补全网络和所述初始解码器进行训练,以得到第二中间三维模型补全模型,其中,所述第二中间三维模型补全模型包括与每种数据类型对应的模型补全网络以及唯一的编码器和唯一的解码器;
将所述第二分类器和所述第二中间三维模型补全模型进行拼接,得到所述三维模型补全模型;
其中,所述三维模型补全模型用于:通过所述第二分类器对所述初始三维模型数据进行分类,确定所述初始三维模型数据的第二数据类型;通过所述编码器对所述初始三维模型数据进行编码得到所述残缺模型数据,将所述残缺模型数据输入至与所述第二数据类型对应的模型补全网络中得到所述完整模型数据,并通过所述解码器对所述完整模型数据进行解码得到所述目标三维模型数据。
可选地,所述基于所述完整三维模型样本和所述损失函数对所述初始编码器、所述初始模型补全网络和所述初始解码器进行训练,包括:
分别将每个所述完整三维模型样本缩放至预设尺寸,并基于预设分块数量,对缩放后的完整三维模型样本进行分块;
根据分块得到的各块三维模型样本确定训练样本数据,并基于所述训练样本数据和所述损失函数对所述初始编码器、所述初始模型补全网络和所述初始解码器进行训练。
根据本申请的另一方面,提供了一种三维模型补全装置,所述装置包括:
数据获取模块,用于获取待补全的初始三维模型数据;
模型补全模块,用于将所述初始三维模型数据输入至预训练的三维模型补全模型中,得到补全后的目标三维模型数据,其中,所述三维模型补全模型包括编码器、模型补全网络和解码器,通过所述编码器对所述初始三维模型数据进行编码,通过所述模型补全网络对编码得到的残缺模型数据进行补全,并通过所述解码器对补全得到的完整模型数据进行解码得到所述目标三维模型数据。
可选地,所述三维模型补全模型还包括第一分类器,所述编码器和所述解码器均与所述第一分类器对应的第一分类类型匹配,所述第一分类类型包括点云类型、体素类型、网格类型以及符号距离函数类型中至少两种;
所述模型补全模块,还用于:
通过所述第一分类器对所述初始三维模型数据进行分类,确定所述初始三维模型数据的第一数据类型;
将所述初始三维模型数据输入至与所述第一数据类型对应的编码器中得到所述残缺模型数据,通过所述模型补全网络对所述残缺模型数据进行补全得到所述完整模型数据,并将所述完整模型数据输入至与所述第一数据类型对应的解码器中得到所述目标三维模型数据。
可选地,所述三维模型补全模型还包括第二分类器,所述模型补全网络与所述第二分类器对应的第二分类类型匹配,所述第二分类类型包括点云类型、体素类型、网格类型以及符号距离函数类型中至少两种;
所述模型补全模块,还用于:
通过所述第二分类器对所述初始三维模型数据进行分类,确定所述初始三维模型数据的第二数据类型;
通过所述编码器对所述初始三维模型数据进行编码得到所述残缺模型数据,将所述残缺模型数据输入至与所述第二数据类型对应的模型补全网络中得到所述完整模型数据,并通过所述解码器对所述完整模型数据进行解码得到所述目标三维模型数据。
可选地,所述装置还包括:
模型构建模块,用于建立初始三维模型补全模型,其中,所述初始三维模型补全模型包括初始编码器、数据遮罩器、初始模型补全网络和初始解码器,所述数据遮罩器用于随机或按预设规则对所述初始编码器的输出数据进行遮罩;
损失函数构建模块,用于构建所述初始编码器与所述初始解码器对应的第一损失函数、以及所述初始模型补全网络的第二损失函数,并基于所述第一损失函数和所述第二损失函数确定所述初始三维模型补全模型的损失函数,其中,所述第一损失函数用于计算所述初始解码器的输出数据与所述初始编码器的输入数据之间的损失值,所述第二损失函数用于计算所述初始模型补全网络的输出数据与所述数据遮罩器的输入数据之间的损失值;
模型训练模块,用于获取完整三维模型样本,并基于所述完整三维模型样本和所述损失函数,对所述初始编码器、所述初始模型补全网络和所述初始解码器进行训练,以得到所述三维模型补全模型。
可选地,所述数据遮罩器用于按照至少一种数据遮罩比例,随机或按预设规则对所述初始编码器的输出数据进行遮罩。
可选地,所述完整三维模型样本包括至少两种数据类型,所述初始三维模型补全模型还包括初始第一分类器,所述初始编码器和所述初始解码器均与所述数据类型匹配,所述初始模型补全网络为唯一;
所述模型训练模块,还用于:
基于各数据类型的完整三维模型样本,对所述初始第一分类器进行训练,得到第一分类器;
利用各数据类型的完整三维模型样本和所述损失函数,对所述初始编码器、所述初始模型补全网络和所述初始解码器进行训练,以得到第一中间三维模型补全模型,其中,所述第一中间三维模型补全模型包括与每种数据类型对应的编码器和解码器以及唯一的模型补全网络;
将所述第一分类器和所述第一中间三维模型补全模型进行拼接,得到所述三维模型补全模型。
可选地,所述完整三维模型样本包括至少两种数据类型,所述初始三维模型补全模型还包括初始第二分类器,所述初始模型补全网络与所述数据类型匹配,所述初始编码器和所述初始解码器均为唯一;
所述模型训练模块,还用于:
基于各数据类型的完整三维模型样本,对所述初始第二分类器进行训练,得到第二分类器;
利用各数据类型的完整三维模型样本和所述损失函数,对所述初始编码器、所述初始模型补全网络和所述初始解码器进行训练,以得到第二中间三维模型补全模型,其中,所述第二中间三维模型补全模型包括与每种数据类型对应的模型补全网络以及唯一的编码器和唯一的解码器;
将所述第二分类器和所述第二中间三维模型补全模型进行拼接,得到所述三维模型补全模型。
可选地,所述模型训练模块,还用于:
分别将每个所述完整三维模型样本缩放至预设尺寸,并基于预设分块数量,对缩放后的完整三维模型样本进行分块;
根据分块得到的各块三维模型样本确定训练样本数据,并基于所述训练样本数据和所述损失函数对所述初始编码器、所述初始模型补全网络和所述初始解码器进行训练。
根据本申请的另一方面,提供了一种三维模型补全模型的生成装置,所述装置包括:
模型构建模块,用于建立初始三维模型补全模型,其中,所述初始三维模型补全模型包括初始编码器、数据遮罩器、初始模型补全网络和初始解码器,所述数据遮罩器用于随机或按预设规则对所述初始编码器的输出数据进行遮罩;
损失函数构建模块,用于构建所述初始编码器与所述初始解码器对应的第一损失函数、以及所述初始模型补全网络的第二损失函数,并基于所述第一损失函数和所述第二损失函数确定所述初始三维模型补全模型的损失函数,其中,所述第一损失函数用于计算所述初始解码器的输出数据与所述初始编码器的输入数据之间的第一损失值,所述第二损失函数用于计算所述初始模型补全网络的输出数据与所述数据遮罩器的输入数据之间的第二损失值;
模型训练模块,用于获取完整三维模型样本,并基于所述完整三维模型样本和所述损失函数,对所述初始编码器、所述初始模型补全网络和所述初始解码器进行训练,以得到三维模型补全模型,其中,所述三维模型补全模型包括编码器、模型补全网络和解码器;
其中,所述三维模型补全模型用于:通过所述编码器对初始三维模型数据进行编码,通过所述模型补全网络对编码得到的残缺模型数据进行补全,并通过所述解码器对补全得到的完整模型数据进行解码得到目标三维模型数据。
可选地,所述数据遮罩器用于按照至少一种数据遮罩比例,随机或按预设规则对所述初始编码器的输出数据进行遮罩。
可选地,所述完整三维模型样本包括至少两种数据类型,所述初始三维模型补全模型还包括初始第一分类器,所述初始编码器和所述初始解码器均与所述数据类型匹配,所述初始模型补全网络为唯一;
所述模型训练模块,还用于:
基于各数据类型的完整三维模型样本,对所述初始第一分类器进行训练,得到第一分类器;
利用各数据类型的完整三维模型样本和所述损失函数,对所述初始编码器、所述初始模型补全网络和所述初始解码器进行训练,以得到第一中间三维模型补全模型,其中,所述第一中间三维模型补全模型包括与每种数据类型对应的编码器和解码器以及唯一的模型补全网络;
将所述第一分类器和所述第一中间三维模型补全模型进行拼接,得到所述三维模型补全模型;
其中,所述三维模型补全模型用于:通过所述第一分类器对所述初始三维模型数据进行分类,确定所述初始三维模型数据的第一数据类型;将所述初始三维模型数据输入至与所述第一数据类型对应的编码器中得到所述残缺模型数据,通过所述模型补全网络对所述残缺模型数据进行补全得到所述完整模型数据,并将所述完整模型数据输入至与所述第一数据类型对应的解码器中得到所述目标三维模型数据。
可选地,所述完整三维模型样本包括至少两种数据类型,所述初始三维模型补全模型还包括初始第二分类器,所述初始模型补全网络与所述数据类型匹配,所述初始编码器和所述初始解码器均为唯一;
所述模型训练模块,还用于:
基于各数据类型的完整三维模型样本,对所述初始第二分类器进行训练,得到第二分类器;
利用各数据类型的完整三维模型样本和所述损失函数,对所述初始编码器、所述初始模型补全网络和所述初始解码器进行训练,以得到第二中间三维模型补全模型,其中,所述第二中间三维模型补全模型包括与每种数据类型对应的模型补全网络以及唯一的编码器和唯一的解码器;
将所述第二分类器和所述第二中间三维模型补全模型进行拼接,得到所述三维模型补全模型;
其中,所述三维模型补全模型用于:通过所述第二分类器对所述初始三维模型数据进行分类,确定所述初始三维模型数据的第二数据类型;通过所述编码器对所述初始三维模型数据进行编码得到所述残缺模型数据,将所述残缺模型数据输入至与所述第二数据类型对应的模型补全网络中得到所述完整模型数据,并通过所述解码器对所述完整模型数据进行解码得到所述目标三维模型数据。
可选地,所述模型训练模块,还用于:
分别将每个所述完整三维模型样本缩放至预设尺寸,并基于预设分块数量,对缩放后的完整三维模型样本进行分块;
根据分块得到的各块三维模型样本确定训练样本数据,并基于所述训练样本数据和所述损失函数对所述初始编码器、所述初始模型补全网络和所述初始解码器进行训练。
依据本申请又一个方面,提供了一种存储介质,其上存储有计算机程序,所述程序被处理器执行时实现上述三维模型补全方法。
依据本申请又一个方面,提供了一种存储介质,其上存储有计算机程序,所述程序被处理器执行时实现上述三维模型补全模型的生成方法。
依据本申请再一个方面,提供了一种计算机设备,包括存储介质、处理器及存储在存储介质上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述三维模型补全方法。
依据本申请再一个方面,提供了一种计算机设备,包括存储介质、处理器及存储在存储介质上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述三维模型补全模型的生成方法。
借由上述技术方案,本申请提供的一种三维模型补全方法、三维模型补全模型的生成方法、存储介质、计算机设备,构建初始三维模型补全模型和损失函数,初始三维模型补全模型包括初始编码器、数据遮罩器、初始模型补全网络和初始解码器,利用完整三维模型样本和损失函数进行模型训练,训练过程中,编码器进行样本数据编码后,通过数据遮罩器对完整的编码数据进行遮罩,遮罩后的残缺数据再经过模型补全网络进行补全,通过解码器对补全后的数据进行解码,通过不断的迭代训练模型中编码器、模型补全网络以及解码器的参数,最终将训练完成的编码器、模型补全网络和解码器作为最终的三维模型补全模型。本申请的三维模型补全模型可以对人工建模的残缺模型、粗略模型等不够完善的三维模型进行模型补全,相比于目前完全依赖人工建模的方式,通过部分人工建模融合部分智能补全的方式,减少了建模人员的工作量、节约了建模时间、提升了三维模型的建模精度。
上述说明仅是本申请技术方案的概述,为了能够更清楚了解本申请的技术手段,而可依照说明书的内容予以实施,并且为了让本申请的上述和其它目的、特征和优点能够更明显易懂,以下特举本申请的具体实施方式。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1(a)示出了本申请实施例提供的一种三维模型补全模型的生成方法的流程示意图;
图1(b)示出了本申请实施例提供的一种三维模型补全模型的训练流程示意图;
图1(c)示出了本申请实施例提供的一种三维模型补全的流程示意图;
图2示出了本申请实施例提供的一种三维模型补全方法的流程示意图;
图3示出了本申请实施例提供的一种三维模型补全模型的生成装置的结构示意图;
图4示出了本申请实施例提供的一种三维模型补全装置的结构示意图;
图5示出了本申请实施例提供的一种计算机设备的装置结构示意图。
具体实施方式
下文中将参考附图并结合实施例来详细说明本申请。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
在本实施例中提供了一种三维模型补全模型的生成方法,如图1(a)所示,该方法包括:
步骤101,建立初始三维模型补全模型,其中,所述初始三维模型补全模型包括初始编码器、数据遮罩器、初始模型补全网络和初始解码器,所述数据遮罩器用于随机或按预设规则对所述初始编码器的输出数据进行遮罩。
步骤102,构建所述初始编码器与所述初始解码器对应的第一损失函数、以及所述初始模型补全网络的第二损失函数,并基于所述第一损失函数和所述第二损失函数确定所述初始三维模型补全模型的损失函数,其中,所述第一损失函数用于计算所述初始解码器的输出数据与所述初始编码器的输入数据之间的第一损失值,所述第二损失函数用于计算所述初始模型补全网络的输出数据与所述数据遮罩器的输入数据之间的第二损失值。
步骤103,获取完整三维模型样本,并基于所述完整三维模型样本和所述损失函数,对所述初始编码器、所述初始模型补全网络和所述初始解码器进行训练,以得到三维模型补全模型,其中,所述三维模型补全模型包括编码器、模型补全网络和解码器;所述三维模型补全模型用于:通过所述编码器对初始三维模型数据进行编码,通过所述模型补全网络对编码得到的残缺模型数据进行补全,并通过所述解码器对补全得到的完整模型数据进行解码得到目标三维模型数据。
在上述实施例中,首先,构建初始三维模型补全模型,包括初始编码器、数据遮罩器、初始模型补全网络以及初始解码器,其中数据遮罩器仅在模型训练阶段使用,在完成模型训练的三维模型补全模型中仅包括训练好的编码器、模型补全网络和解码器,而不包括数据遮罩器。编码器可以将特定类型的数据编码为向量,解码器将向量解码为特定类型。在本申请实施例中,编码器和解码器具体可以选择生成模型VQ-VAE(vector quantised-variational autoencoder),并增加一个模型输入维度,模型补全网络具体可以选择Transformer机器学习模型,当然也可以选择其他能够实现本申请功能的模型、算法,上述两种模型仅作为举例,具体选择何种模型作为编码器、解码器以及模型补全网络本申请实施例在此不做限定。
其次,构建模型的损失函数,模型的损失函数由两部分组成,一部分为用于评价编码器和解码器的第一损失函数,另一部分为用于评价模型补全网络的第二损失函数。具体地,第一损失函数用来计算解码器的输出数据和编码器的输入数据之间的损失,第二损失函数用来计算初始模型补全网络的输出数据和数据遮罩器的输入数据之间的损失。以上述模型类型为例,模型的总体损失是VQ-VAE的损失 + Transformer的损失。
最后,利用完整三维模型样本和损失函数进行模型训练,在模型的训练阶段,样本数据输入到模型中后,依次通过编码器、数据遮罩器、模型补全网络和解码器,其中,如图1(b)所示,编码器进行数据编码后,通过数据遮罩器对完整的编码数据进行遮罩,遮罩后的残缺数据再经过模型补全网络进行补全,通过解码器对补全后的数据进行解码,得到模型补全结果。完成一次的样本补全后,利用第一损失函数对初始编码器的输入数据和初始解码器输出的模型补全结果计算第一损失值,利用第二损失函数对数据遮罩器的输入数据和初始模型补全网络输出的补全后数据计算第二损失值,经过不断的代入完整三维模型样本和损失函数计算,根据计算的损失值调整模型中编码器、模型补全网络和解码器的参数,最终得到训练后的三维模型补全模型。该三维模型补全模型中包含编码器、模型补全网络以及解码器,而数据遮罩器仅在模型训练阶段使用,并不是最终需要的三维模型补全模型的一部分。
进一步,模型完成训练后,可以利用训练好的模型进行三维模型的补全,具体地,可以由建模人员人工的建立部分三维模型,然后利用训练好的三维模型补全模型对人工建立的部分三维模型进行智能补全,减少建模人员的工作量、节约建模时间、提升三维模型的建模精度。在模型的使用阶段,如图1(c)所示,对于需要进行补全的初始三维模型数据,将该数据输入到训练好的三维模型补全模型中,数据输入模型后,先经过编码器对初始三维模型数据进行编码得到残缺模型数据,在经过模型补全网络对残缺模型数据进行数据补全得到完整模型数据,最后经过解码器对完整模型数据进行解码,得到最终的补全后的目标三维模型数据。
通过应用本实施例的技术方案,构建初始三维模型补全模型和损失函数,初始三维模型补全模型包括初始编码器、数据遮罩器、初始模型补全网络和初始解码器,利用完整三维模型样本和损失函数进行模型训练,训练过程中,编码器进行样本数据编码后,通过数据遮罩器对完整的编码数据进行遮罩,遮罩后的残缺数据再经过模型补全网络进行补全,通过解码器对补全后的数据进行解码,通过不断的迭代训练模型中编码器、模型补全网络以及解码器的参数,最终将训练完成的编码器、模型补全网络和解码器作为最终的三维模型补全模型。本申请实施例的三维模型补全模型可以对人工建模的残缺模型、粗略模型等不够完善的三维模型进行模型补全,相比于目前完全依赖人工建模的方式,通过部分人工建模融合部分智能补全的方式,减少了建模人员的工作量、节约了建模时间、提升了三维模型的建模精度。
在本申请实施例中,可选地,所述数据遮罩器用于按照至少一种数据遮罩比例,随机或按预设规则对所述初始编码器的输出数据进行遮罩。
在该实施例中,模型训练阶段,数据遮罩器进行数据遮罩时,可以选择多种数据遮罩比例对编码器的输出数据进行遮罩,例如15%、45%、85%等等,训练时尽可能采用多种数据遮罩比例都进行训练,以满足不同缺失程度的模型的补全。进一步,可以按比例进行随机遮罩或者按设定的预设规则进行遮罩,例如针对模型某个部分的数据全部遮罩,针对模型多个部分都进行部分遮罩等。
在本申请实施例中,可选地,所述基于所述完整三维模型样本和所述损失函数对所述初始编码器、所述初始模型补全网络和所述初始解码器进行训练,包括:分别将每个所述完整三维模型样本缩放至预设尺寸,并基于预设分块数量,对缩放后的完整三维模型样本进行分块;根据分块得到的各块三维模型样本确定训练样本数据,并基于所述训练样本数据和所述损失函数对所述初始编码器、所述初始模型补全网络和所述初始解码器进行训练。
在该实施例中,如果完整三维模型样本的模型尺寸不统一,还可以在训练之前进行缩放,以使三维模型样本的包围盒尽量靠近预设尺寸,另外,还可以将模型数据进行分块处理以提升模型的数据处理效率。以预设分块数量为512,分块结构为8*8*8为例,可以按照以下方法进行分块。方法一:按照8*8*8对包围盒进行拆分;方法二:先用64*64*64对三维模型包围盒进行拆分,删除无效分块,然后相邻8个分块合并成一个最终的分块,外层不够8个的,需要自动补全,最终形成512个分块。方法三:先用1个大的包围盒,把三维物体包裹起来,然后拆分成8块,删除无用分块;然后每块再拆分成8块,删除无用分块;然后每块再拆分成8块,删除无用分块;然后每块再拆分成8块,删除无用分块;然后再向上合并,相邻8块合并成一块,不够的需要填补进来,最终形成8*8*8的结构,一共512块。
在本申请实施例中,可选地,所述完整三维模型样本包括至少两种数据类型,所述初始三维模型补全模型还包括初始第一分类器,所述初始编码器和所述初始解码器均与所述数据类型匹配,所述初始模型补全网络为唯一;
所述基于所述完整三维模型样本和所述损失函数,对所述初始编码器、所述初始模型补全网络和所述初始解码器进行训练,以得到所述三维模型补全模型,包括:基于各数据类型的完整三维模型样本,对所述初始第一分类器进行训练,得到第一分类器;利用各数据类型的完整三维模型样本和所述损失函数,对所述初始编码器、所述初始模型补全网络和所述初始解码器进行训练,以得到第一中间三维模型补全模型,其中,所述第一中间三维模型补全模型包括与每种数据类型对应的编码器和解码器以及唯一的模型补全网络;将所述第一分类器和所述第一中间三维模型补全模型进行拼接,得到所述三维模型补全模型;
其中,所述三维模型补全模型用于:通过所述第一分类器对所述初始三维模型数据进行分类,确定所述初始三维模型数据的第一数据类型;将所述初始三维模型数据输入至与所述第一数据类型对应的编码器中得到所述残缺模型数据,通过所述模型补全网络对所述残缺模型数据进行补全得到所述完整模型数据,并将所述完整模型数据输入至与所述第一数据类型对应的解码器中得到所述目标三维模型数据。
在该实施例中,由于三维模型数据可以是不同类型的,例如点云类型、体素类型、网格类型以及符号距离函数类型等。为了适应于不同类型的模型补全,还可以通过添加分类器的方式使得三维模型补全模型能够适用于更多类型的模型数据补全。在一种实施方式中,可以构建模型唯一的初始模型补全网络、以及与每种数据类型对应的初始编码器和初始解码器。进行训练时,可以将对第一分类器的训练和对其他部分的训练分开进行。第一分类器训练部分,利用各数据类型的完整三维模型样本进行常规的训练即可。其他部分的训练,对于任意一种数据类型的完整三维模型样本,使用与该数据类型对应的编码器和解码器、以及唯一的模型补全网络进行训练,可以理解的是,训练出的各数据类型的编码器和解码器适用于特定的数据类型,而模型补全网络适用于全部数据类型的模型数据补全。
在本申请实施例中,可选地,所述完整三维模型样本包括至少两种数据类型,所述初始三维模型补全模型还包括初始第二分类器,所述初始模型补全网络与所述数据类型匹配,所述初始编码器和所述初始解码器均为唯一;
所述基于所述完整三维模型样本和所述损失函数,对所述初始编码器、所述初始模型补全网络和所述初始解码器进行训练,以得到所述三维模型补全模型,包括:基于各数据类型的完整三维模型样本,对所述初始第二分类器进行训练,得到第二分类器;利用各数据类型的完整三维模型样本和所述损失函数,对所述初始编码器、所述初始模型补全网络和所述初始解码器进行训练,以得到第二中间三维模型补全模型,其中,所述第二中间三维模型补全模型包括与每种数据类型对应的模型补全网络以及唯一的编码器和唯一的解码器;将所述第二分类器和所述第二中间三维模型补全模型进行拼接,得到所述三维模型补全模型;
其中,所述三维模型补全模型用于:通过所述第二分类器对所述初始三维模型数据进行分类,确定所述初始三维模型数据的第二数据类型;通过所述编码器对所述初始三维模型数据进行编码得到所述残缺模型数据,将所述残缺模型数据输入至与所述第二数据类型对应的模型补全网络中得到所述完整模型数据,并通过所述解码器对所述完整模型数据进行解码得到所述目标三维模型数据。
在该实施例中,在另一种添加分类器的模型中,可以构建模型唯一的初始编码器和唯一的初始解码器、以及与每种数据类型对应的初始模型补全网络。进行训练时,可以将对第二分类器的训练和对其他部分的训练分开进行。第二分类器训练部分,利用各数据类型的完整三维模型样本进行常规的训练即可。其他部分的训练,对于任意一种数据类型的完整三维模型样本,使用唯一的模型补全网络、以及与该数据类型对应的编码器和解码器进行训练,可以理解的是,训练出的各数据类型的模型补全网络适用于特定的数据类型,而编码器和解码器适用于全部数据类型的模型数据补全。
能够理解的是,本申请实施例也可以针对每种数据类型分别训练一个专门适用于该数据类型的模型补全的三维模型补全模型,在此不做限定。但通过本申请实施例上述的添加分类器的方式,只需要一个三维模型补全模型就能够实现对不同数据类型的模型补全,能够减少补全模型的数据量,提升补全模型整体训练效率。
在本实施例中提供了一种三维模型补全模型的生成方法,如图2所示,该方法包括:
步骤201,获取待补全的初始三维模型数据。
步骤202,将所述初始三维模型数据输入至预训练的三维模型补全模型中,得到补全后的目标三维模型数据,其中,所述三维模型补全模型包括编码器、模型补全网络和解码器,通过所述编码器对所述初始三维模型数据进行编码,通过所述模型补全网络对编码得到的残缺模型数据进行补全,并通过所述解码器对补全得到的完整模型数据进行解码得到所述目标三维模型数据。
通过应用本实施例的技术方案,可以由建模人员人工的建立部分三维模型,然后利用训练好的三维模型补全模型对人工建立的部分三维模型进行智能补全,减少建模人员的工作量、节约建模时间、提升三维模型的建模精度。在模型的使用阶段,对于需要进行补全的初始三维模型数据,将该数据输入到训练好的三维模型补全模型中,数据输入模型后,先经过编码器对初始三维模型数据进行编码得到残缺模型数据,在经过模型补全网络对残缺模型数据进行数据补全得到完整模型数据,最后经过解码器对完整模型数据进行解码,得到最终的补全后的目标三维模型数据。本申请实施例的三维模型补全模型可以对人工建模的残缺模型、粗略模型等不够完善的三维模型进行模型补全,相比于目前完全依赖人工建模的方式,通过部分人工建模+部分智能补全的方式,减少了建模人员的工作量、节约了建模时间、提升了三维模型的建模精度。
在本申请实施例中,可选地,所述三维模型补全模型还包括第一分类器,所述编码器和所述解码器均与所述第一分类器对应的第一分类类型匹配,所述第一分类类型包括点云类型、体素类型、网格类型以及符号距离函数类型中至少两种;所述将所述初始三维模型数据输入至预训练的三维模型补全模型中,得到补全后的目标三维模型数据,包括:通过所述第一分类器对所述初始三维模型数据进行分类,确定所述初始三维模型数据的第一数据类型;将所述初始三维模型数据输入至与所述第一数据类型对应的编码器中得到所述残缺模型数据,通过所述模型补全网络对所述残缺模型数据进行补全得到所述完整模型数据,并将所述完整模型数据输入至与所述第一数据类型对应的解码器中得到所述目标三维模型数据。
在本申请实施例中,可选地,所述三维模型补全模型还包括第二分类器,所述模型补全网络与所述第二分类器对应的第二分类类型匹配,所述第二分类类型包括点云类型、体素类型、网格类型以及符号距离函数类型中至少两种;所述将所述初始三维模型数据输入至预训练的三维模型补全模型中,得到补全后的目标三维模型数据,包括:通过所述第二分类器对所述初始三维模型数据进行分类,确定所述初始三维模型数据的第二数据类型;通过所述编码器对所述初始三维模型数据进行编码得到所述残缺模型数据,将所述残缺模型数据输入至与所述第二数据类型对应的模型补全网络中得到所述完整模型数据,并通过所述解码器对所述完整模型数据进行解码得到所述目标三维模型数据。
在本申请实施例中,可选地,所述获取待补全的初始三维模型数据之前,所述方法还包括:
建立初始三维模型补全模型,其中,所述初始三维模型补全模型包括初始编码器、数据遮罩器、初始模型补全网络和初始解码器,所述数据遮罩器用于随机或按预设规则对所述初始编码器的输出数据进行遮罩;
构建所述初始编码器与所述初始解码器对应的第一损失函数、以及所述初始模型补全网络的第二损失函数,并基于所述第一损失函数和所述第二损失函数确定所述初始三维模型补全模型的损失函数,其中,所述第一损失函数用于计算所述初始解码器的输出数据与所述初始编码器的输入数据之间的损失值,所述第二损失函数用于计算所述初始模型补全网络的输出数据与所述数据遮罩器的输入数据之间的损失值;
获取完整三维模型样本,并基于所述完整三维模型样本和所述损失函数,对所述初始编码器、所述初始模型补全网络和所述初始解码器进行训练,以得到所述三维模型补全模型。
在本申请实施例中,可选地,所述数据遮罩器用于按照至少一种数据遮罩比例,随机或按预设规则对所述初始编码器的输出数据进行遮罩。
在本申请实施例中,可选地,所述完整三维模型样本包括至少两种数据类型,所述初始三维模型补全模型还包括初始第一分类器,所述初始编码器和所述初始解码器均与所述数据类型匹配,所述初始模型补全网络为唯一;所述基于所述完整三维模型样本和所述损失函数,对所述初始编码器、所述初始模型补全网络和所述初始解码器进行训练,以得到所述三维模型补全模型,包括:基于各数据类型的完整三维模型样本,对所述初始第一分类器进行训练,得到第一分类器;利用各数据类型的完整三维模型样本和所述损失函数,对所述初始编码器、所述初始模型补全网络和所述初始解码器进行训练,以得到第一中间三维模型补全模型,其中,所述第一中间三维模型补全模型包括与每种数据类型对应的编码器和解码器以及唯一的模型补全网络;将所述第一分类器和所述第一中间三维模型补全模型进行拼接,得到所述三维模型补全模型。
在本申请实施例中,可选地,所述完整三维模型样本包括至少两种数据类型,所述初始三维模型补全模型还包括初始第二分类器,所述初始模型补全网络与所述数据类型匹配,所述初始编码器和所述初始解码器均为唯一;所述基于所述完整三维模型样本和所述损失函数,对所述初始编码器、所述初始模型补全网络和所述初始解码器进行训练,以得到所述三维模型补全模型,包括:基于各数据类型的完整三维模型样本,对所述初始第二分类器进行训练,得到第二分类器;利用各数据类型的完整三维模型样本和所述损失函数,对所述初始编码器、所述初始模型补全网络和所述初始解码器进行训练,以得到第二中间三维模型补全模型,其中,所述第二中间三维模型补全模型包括与每种数据类型对应的模型补全网络以及唯一的编码器和唯一的解码器;将所述第二分类器和所述第二中间三维模型补全模型进行拼接,得到所述三维模型补全模型。
在本申请实施例中,可选地,所述基于所述完整三维模型样本和所述损失函数对所述初始编码器、所述初始模型补全网络和所述初始解码器进行训练,包括:分别将每个所述完整三维模型样本缩放至预设尺寸,并基于预设分块数量,对缩放后的完整三维模型样本进行分块;根据分块得到的各块三维模型样本确定训练样本数据,并基于所述训练样本数据和所述损失函数对所述初始编码器、所述初始模型补全网络和所述初始解码器进行训练。
进一步的,作为图1方法的具体实现,本申请实施例提供了一种三维模型补全模型的生成装置,如图3所示,该装置包括:
模型构建模块,用于建立初始三维模型补全模型,其中,所述初始三维模型补全模型包括初始编码器、数据遮罩器、初始模型补全网络和初始解码器,所述数据遮罩器用于随机或按预设规则对所述初始编码器的输出数据进行遮罩;
损失函数构建模块,用于构建所述初始编码器与所述初始解码器对应的第一损失函数、以及所述初始模型补全网络的第二损失函数,并基于所述第一损失函数和所述第二损失函数确定所述初始三维模型补全模型的损失函数,其中,所述第一损失函数用于计算所述初始解码器的输出数据与所述初始编码器的输入数据之间的第一损失值,所述第二损失函数用于计算所述初始模型补全网络的输出数据与所述数据遮罩器的输入数据之间的第二损失值;
模型训练模块,用于获取完整三维模型样本,并基于所述完整三维模型样本和所述损失函数,对所述初始编码器、所述初始模型补全网络和所述初始解码器进行训练,以得到三维模型补全模型,其中,所述三维模型补全模型包括编码器、模型补全网络和解码器;
其中,所述三维模型补全模型用于:通过所述编码器对初始三维模型数据进行编码,通过所述模型补全网络对编码得到的残缺模型数据进行补全,并通过所述解码器对补全得到的完整模型数据进行解码得到目标三维模型数据。
可选地,所述数据遮罩器用于按照至少一种数据遮罩比例,随机或按预设规则对所述初始编码器的输出数据进行遮罩。
可选地,所述完整三维模型样本包括至少两种数据类型,所述初始三维模型补全模型还包括初始第一分类器,所述初始编码器和所述初始解码器均与所述数据类型匹配,所述初始模型补全网络为唯一;
所述模型训练模块,还用于:基于各数据类型的完整三维模型样本,对所述初始第一分类器进行训练,得到第一分类器;利用各数据类型的完整三维模型样本和所述损失函数,对所述初始编码器、所述初始模型补全网络和所述初始解码器进行训练,以得到第一中间三维模型补全模型,其中,所述第一中间三维模型补全模型包括与每种数据类型对应的编码器和解码器以及唯一的模型补全网络;将所述第一分类器和所述第一中间三维模型补全模型进行拼接,得到所述三维模型补全模型;
其中,所述三维模型补全模型用于:通过所述第一分类器对所述初始三维模型数据进行分类,确定所述初始三维模型数据的第一数据类型;将所述初始三维模型数据输入至与所述第一数据类型对应的编码器中得到所述残缺模型数据,通过所述模型补全网络对所述残缺模型数据进行补全得到所述完整模型数据,并将所述完整模型数据输入至与所述第一数据类型对应的解码器中得到所述目标三维模型数据。
可选地,所述完整三维模型样本包括至少两种数据类型,所述初始三维模型补全模型还包括初始第二分类器,所述初始模型补全网络与所述数据类型匹配,所述初始编码器和所述初始解码器均为唯一;
所述模型训练模块,还用于:基于各数据类型的完整三维模型样本,对所述初始第二分类器进行训练,得到第二分类器;利用各数据类型的完整三维模型样本和所述损失函数,对所述初始编码器、所述初始模型补全网络和所述初始解码器进行训练,以得到第二中间三维模型补全模型,其中,所述第二中间三维模型补全模型包括与每种数据类型对应的模型补全网络以及唯一的编码器和唯一的解码器;将所述第二分类器和所述第二中间三维模型补全模型进行拼接,得到所述三维模型补全模型;
其中,所述三维模型补全模型用于:通过所述第二分类器对所述初始三维模型数据进行分类,确定所述初始三维模型数据的第二数据类型;通过所述编码器对所述初始三维模型数据进行编码得到所述残缺模型数据,将所述残缺模型数据输入至与所述第二数据类型对应的模型补全网络中得到所述完整模型数据,并通过所述解码器对所述完整模型数据进行解码得到所述目标三维模型数据。
可选地,所述模型训练模块,还用于:分别将每个所述完整三维模型样本缩放至预设尺寸,并基于预设分块数量,对缩放后的完整三维模型样本进行分块;根据分块得到的各块三维模型样本确定训练样本数据,并基于所述训练样本数据和所述损失函数对所述初始编码器、所述初始模型补全网络和所述初始解码器进行训练。
进一步的,作为图2方法的具体实现,本申请实施例提供了一种三维模型补全装置,如图4所示,该装置包括:
数据获取模块,用于获取待补全的初始三维模型数据;
模型补全模块,用于将所述初始三维模型数据输入至预训练的三维模型补全模型中,得到补全后的目标三维模型数据,其中,所述三维模型补全模型包括编码器、模型补全网络和解码器,通过所述编码器对所述初始三维模型数据进行编码,通过所述模型补全网络对编码得到的残缺模型数据进行补全,并通过所述解码器对补全得到的完整模型数据进行解码得到所述目标三维模型数据。
可选地,所述三维模型补全模型还包括第一分类器,所述编码器和所述解码器均与所述第一分类器对应的第一分类类型匹配,所述第一分类类型包括点云类型、体素类型、网格类型以及符号距离函数类型中至少两种;
所述模型补全模块,还用于:通过所述第一分类器对所述初始三维模型数据进行分类,确定所述初始三维模型数据的第一数据类型;将所述初始三维模型数据输入至与所述第一数据类型对应的编码器中得到所述残缺模型数据,通过所述模型补全网络对所述残缺模型数据进行补全得到所述完整模型数据,并将所述完整模型数据输入至与所述第一数据类型对应的解码器中得到所述目标三维模型数据。
可选地,所述三维模型补全模型还包括第二分类器,所述模型补全网络与所述第二分类器对应的第二分类类型匹配,所述第二分类类型包括点云类型、体素类型、网格类型以及符号距离函数类型中至少两种;
所述模型补全模块,还用于:通过所述第二分类器对所述初始三维模型数据进行分类,确定所述初始三维模型数据的第二数据类型;通过所述编码器对所述初始三维模型数据进行编码得到所述残缺模型数据,将所述残缺模型数据输入至与所述第二数据类型对应的模型补全网络中得到所述完整模型数据,并通过所述解码器对所述完整模型数据进行解码得到所述目标三维模型数据。
可选地,所述装置还包括:
模型构建模块,用于建立初始三维模型补全模型,其中,所述初始三维模型补全模型包括初始编码器、数据遮罩器、初始模型补全网络和初始解码器,所述数据遮罩器用于随机或按预设规则对所述初始编码器的输出数据进行遮罩;
损失函数构建模块,用于构建所述初始编码器与所述初始解码器对应的第一损失函数、以及所述初始模型补全网络的第二损失函数,并基于所述第一损失函数和所述第二损失函数确定所述初始三维模型补全模型的损失函数,其中,所述第一损失函数用于计算所述初始解码器的输出数据与所述初始编码器的输入数据之间的损失值,所述第二损失函数用于计算所述初始模型补全网络的输出数据与所述数据遮罩器的输入数据之间的损失值;
模型训练模块,用于获取完整三维模型样本,并基于所述完整三维模型样本和所述损失函数,对所述初始编码器、所述初始模型补全网络和所述初始解码器进行训练,以得到所述三维模型补全模型。
可选地,所述数据遮罩器用于按照至少一种数据遮罩比例,随机或按预设规则对所述初始编码器的输出数据进行遮罩。
可选地,所述完整三维模型样本包括至少两种数据类型,所述初始三维模型补全模型还包括初始第一分类器,所述初始编码器和所述初始解码器均与所述数据类型匹配,所述初始模型补全网络为唯一;
所述模型训练模块,还用于:基于各数据类型的完整三维模型样本,对所述初始第一分类器进行训练,得到第一分类器;利用各数据类型的完整三维模型样本和所述损失函数,对所述初始编码器、所述初始模型补全网络和所述初始解码器进行训练,以得到第一中间三维模型补全模型,其中,所述第一中间三维模型补全模型包括与每种数据类型对应的编码器和解码器以及唯一的模型补全网络;将所述第一分类器和所述第一中间三维模型补全模型进行拼接,得到所述三维模型补全模型。
可选地,所述完整三维模型样本包括至少两种数据类型,所述初始三维模型补全模型还包括初始第二分类器,所述初始模型补全网络与所述数据类型匹配,所述初始编码器和所述初始解码器均为唯一;
所述模型训练模块,还用于:基于各数据类型的完整三维模型样本,对所述初始第二分类器进行训练,得到第二分类器;利用各数据类型的完整三维模型样本和所述损失函数,对所述初始编码器、所述初始模型补全网络和所述初始解码器进行训练,以得到第二中间三维模型补全模型,其中,所述第二中间三维模型补全模型包括与每种数据类型对应的模型补全网络以及唯一的编码器和唯一的解码器;将所述第二分类器和所述第二中间三维模型补全模型进行拼接,得到所述三维模型补全模型。
可选地,所述模型训练模块,还用于:分别将每个所述完整三维模型样本缩放至预设尺寸,并基于预设分块数量,对缩放后的完整三维模型样本进行分块;根据分块得到的各块三维模型样本确定训练样本数据,并基于所述训练样本数据和所述损失函数对所述初始编码器、所述初始模型补全网络和所述初始解码器进行训练。
需要说明的是,本申请实施例提供的三维模型补全装置和三维模型补全模型的生成装置所涉及各功能单元的其他相应描述,可以参考图1至图2方法中的对应描述,在此不再赘述。
本申请实施例还提供了一种计算机设备,具体可以为个人计算机、服务器、网络设备等,如图5所示,该计算机设备包括总线、处理器、存储器和通信接口,还可以包括输入输出接口和显示设备。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质和内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储位置信息。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现各方法实施例中的步骤。
本领域技术人员可以理解,图5中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种计算机可读存储介质,所述计算机可读存储介质可以是非易失性,也可以是易失性,其上存储有计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。
在一个实施例中,提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。
需要说明的是,本申请所涉及的用户信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于分析的数据、存储的数据、展示的数据等),均为经用户授权或者经过各方充分授权的信息和数据。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-OnlyMemory,ROM)、磁带、软盘、闪存、光存储器、高密度嵌入式非易失性存储器、阻变存储器(ReRAM)、磁变存储器(Magnetoresistive Random Access Memory,MRAM)、铁电存储器(Ferroelectric Random Access Memory,FRAM)、相变存储器(Phase Change Memory,PCM)、石墨烯存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器等。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic RandomAccess Memory,DRAM)等。本申请所提供的各实施例中所涉及的数据库可包括关系型数据库和非关系型数据库中至少一种。非关系型数据库可包括基于区块链的分布式数据库等,不限于此。本申请所提供的各实施例中所涉及的处理器可为通用处理器、中央处理器、图形处理器、数字信号处理器、可编程逻辑器、基于量子计算的数据处理逻辑器等,不限于此。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请的保护范围应以所附权利要求为准。

Claims (10)

1.一种三维模型补全方法,其特征在于,所述方法包括:
获取待补全的初始三维模型数据;
将所述初始三维模型数据输入至预训练的三维模型补全模型中,得到补全后的目标三维模型数据,其中,所述三维模型补全模型包括编码器、模型补全网络和解码器,通过所述编码器对所述初始三维模型数据进行编码,通过所述模型补全网络对编码得到的残缺模型数据进行补全,并通过所述解码器对补全得到的完整模型数据进行解码得到所述目标三维模型数据。
2.根据权利要求1所述的方法,其特征在于,所述三维模型补全模型还包括第一分类器,所述编码器和所述解码器均与所述第一分类器对应的第一分类类型匹配,所述第一分类类型包括点云类型、体素类型、网格类型以及符号距离函数类型中至少两种;
所述将所述初始三维模型数据输入至预训练的三维模型补全模型中,得到补全后的目标三维模型数据,包括:
通过所述第一分类器对所述初始三维模型数据进行分类,确定所述初始三维模型数据的第一数据类型;
将所述初始三维模型数据输入至与所述第一数据类型对应的编码器中得到所述残缺模型数据,通过所述模型补全网络对所述残缺模型数据进行补全得到所述完整模型数据,并将所述完整模型数据输入至与所述第一数据类型对应的解码器中得到所述目标三维模型数据。
3.根据权利要求1所述的方法,其特征在于,所述三维模型补全模型还包括第二分类器,所述模型补全网络与所述第二分类器对应的第二分类类型匹配,所述第二分类类型包括点云类型、体素类型、网格类型以及符号距离函数类型中至少两种;
所述将所述初始三维模型数据输入至预训练的三维模型补全模型中,得到补全后的目标三维模型数据,包括:
通过所述第二分类器对所述初始三维模型数据进行分类,确定所述初始三维模型数据的第二数据类型;
通过所述编码器对所述初始三维模型数据进行编码得到所述残缺模型数据,将所述残缺模型数据输入至与所述第二数据类型对应的模型补全网络中得到所述完整模型数据,并通过所述解码器对所述完整模型数据进行解码得到所述目标三维模型数据。
4.根据权利要求1至3中任一项所述的方法,其特征在于,所述获取待补全的初始三维模型数据之前,所述方法还包括:
建立初始三维模型补全模型,其中,所述初始三维模型补全模型包括初始编码器、数据遮罩器、初始模型补全网络和初始解码器,所述数据遮罩器用于按照至少一种数据遮罩比例,随机或按预设规则对所述初始编码器的输出数据进行遮罩;
构建所述初始编码器与所述初始解码器对应的第一损失函数、以及所述初始模型补全网络的第二损失函数,并基于所述第一损失函数和所述第二损失函数确定所述初始三维模型补全模型的损失函数,其中,所述第一损失函数用于计算所述初始解码器的输出数据与所述初始编码器的输入数据之间的损失值,所述第二损失函数用于计算所述初始模型补全网络的输出数据与所述数据遮罩器的输入数据之间的损失值;
获取完整三维模型样本,并基于所述完整三维模型样本和所述损失函数,对所述初始编码器、所述初始模型补全网络和所述初始解码器进行训练,以得到所述三维模型补全模型。
5.根据权利要求4所述的方法,其特征在于,所述完整三维模型样本包括至少两种数据类型,所述初始三维模型补全模型还包括初始第一分类器,所述初始编码器和所述初始解码器均与所述数据类型匹配,所述初始模型补全网络为唯一;
所述基于所述完整三维模型样本和所述损失函数,对所述初始编码器、所述初始模型补全网络和所述初始解码器进行训练,以得到所述三维模型补全模型,包括:
基于各数据类型的完整三维模型样本,对所述初始第一分类器进行训练,得到第一分类器;
利用各数据类型的完整三维模型样本和所述损失函数,对所述初始编码器、所述初始模型补全网络和所述初始解码器进行训练,以得到第一中间三维模型补全模型,其中,所述第一中间三维模型补全模型包括与每种数据类型对应的编码器和解码器以及唯一的模型补全网络;
将所述第一分类器和所述第一中间三维模型补全模型进行拼接,得到所述三维模型补全模型。
6.根据权利要求4所述的方法,其特征在于,所述完整三维模型样本包括至少两种数据类型,所述初始三维模型补全模型还包括初始第二分类器,所述初始模型补全网络与所述数据类型匹配,所述初始编码器和所述初始解码器均为唯一;
所述基于所述完整三维模型样本和所述损失函数,对所述初始编码器、所述初始模型补全网络和所述初始解码器进行训练,以得到所述三维模型补全模型,包括:
基于各数据类型的完整三维模型样本,对所述初始第二分类器进行训练,得到第二分类器;
利用各数据类型的完整三维模型样本和所述损失函数,对所述初始编码器、所述初始模型补全网络和所述初始解码器进行训练,以得到第二中间三维模型补全模型,其中,所述第二中间三维模型补全模型包括与每种数据类型对应的模型补全网络以及唯一的编码器和唯一的解码器;
将所述第二分类器和所述第二中间三维模型补全模型进行拼接,得到所述三维模型补全模型。
7.根据权利要求4所述的方法,其特征在于,所述基于所述完整三维模型样本和所述损失函数对所述初始编码器、所述初始模型补全网络和所述初始解码器进行训练,包括:
分别将每个所述完整三维模型样本缩放至预设尺寸,并基于预设分块数量,对缩放后的完整三维模型样本进行分块;
根据分块得到的各块三维模型样本确定训练样本数据,并基于所述训练样本数据和所述损失函数对所述初始编码器、所述初始模型补全网络和所述初始解码器进行训练。
8.一种三维模型补全模型的生成方法,其特征在于,所述方法包括:
建立初始三维模型补全模型,其中,所述初始三维模型补全模型包括初始编码器、数据遮罩器、初始模型补全网络和初始解码器,所述数据遮罩器用于随机或按预设规则对所述初始编码器的输出数据进行遮罩;
构建所述初始编码器与所述初始解码器对应的第一损失函数、以及所述初始模型补全网络的第二损失函数,并基于所述第一损失函数和所述第二损失函数确定所述初始三维模型补全模型的损失函数,其中,所述第一损失函数用于计算所述初始解码器的输出数据与所述初始编码器的输入数据之间的第一损失值,所述第二损失函数用于计算所述初始模型补全网络的输出数据与所述数据遮罩器的输入数据之间的第二损失值;
获取完整三维模型样本,并基于所述完整三维模型样本和所述损失函数,对所述初始编码器、所述初始模型补全网络和所述初始解码器进行训练,以得到三维模型补全模型,其中,所述三维模型补全模型包括编码器、模型补全网络和解码器;
其中,所述三维模型补全模型用于:通过所述编码器对初始三维模型数据进行编码,通过所述模型补全网络对编码得到的残缺模型数据进行补全,并通过所述解码器对补全得到的完整模型数据进行解码得到目标三维模型数据。
9.一种存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至8中任一项所述的方法。
10.一种计算机设备,包括存储介质、处理器及存储在存储介质上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至8中任一项所述的方法。
CN202311206432.3A 2023-09-19 2023-09-19 三维模型补全方法 Active CN116957991B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311206432.3A CN116957991B (zh) 2023-09-19 2023-09-19 三维模型补全方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311206432.3A CN116957991B (zh) 2023-09-19 2023-09-19 三维模型补全方法

Publications (2)

Publication Number Publication Date
CN116957991A true CN116957991A (zh) 2023-10-27
CN116957991B CN116957991B (zh) 2023-12-15

Family

ID=88454895

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311206432.3A Active CN116957991B (zh) 2023-09-19 2023-09-19 三维模型补全方法

Country Status (1)

Country Link
CN (1) CN116957991B (zh)

Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110443842A (zh) * 2019-07-24 2019-11-12 大连理工大学 基于视角融合的深度图预测方法
CN111897955A (zh) * 2020-07-13 2020-11-06 广州视源电子科技股份有限公司 基于编解码的评语生成方法、装置、设备和存储介质
CN113204977A (zh) * 2021-04-29 2021-08-03 北京有竹居网络技术有限公司 信息翻译方法、装置、设备和存储介质
CN113850916A (zh) * 2021-09-26 2021-12-28 浪潮电子信息产业股份有限公司 模型训练、点云缺失补全方法、装置、设备及介质
WO2022000522A1 (zh) * 2020-07-01 2022-01-06 北京大学深圳研究生院 基于显著性特征的模拟残缺点云的遮罩生成方法
CN114119697A (zh) * 2021-11-24 2022-03-01 华东师范大学 基于pic的3d人脸模型面部纹理多样性补全方法
CN114386067A (zh) * 2022-01-06 2022-04-22 承德石油高等专科学校 一种基于人工智能的设备生产数据安全传输方法及系统
CN115098717A (zh) * 2022-05-11 2022-09-23 清华大学 三维模型检索方法、装置、电子设备及存储介质
WO2023044605A1 (zh) * 2021-09-22 2023-03-30 深圳先进技术研究院 极端环境下脑结构的三维重建方法、装置及可读存储介质
CN116188690A (zh) * 2023-02-24 2023-05-30 北京工业大学 一种基于空间骨架信息的手绘草图三维模型重建方法
CN116386669A (zh) * 2023-04-14 2023-07-04 上海师范大学 基于分组自动编码器的机器运行声学状态监测方法和系统

Patent Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110443842A (zh) * 2019-07-24 2019-11-12 大连理工大学 基于视角融合的深度图预测方法
WO2022000522A1 (zh) * 2020-07-01 2022-01-06 北京大学深圳研究生院 基于显著性特征的模拟残缺点云的遮罩生成方法
CN111897955A (zh) * 2020-07-13 2020-11-06 广州视源电子科技股份有限公司 基于编解码的评语生成方法、装置、设备和存储介质
CN113204977A (zh) * 2021-04-29 2021-08-03 北京有竹居网络技术有限公司 信息翻译方法、装置、设备和存储介质
WO2023044605A1 (zh) * 2021-09-22 2023-03-30 深圳先进技术研究院 极端环境下脑结构的三维重建方法、装置及可读存储介质
CN113850916A (zh) * 2021-09-26 2021-12-28 浪潮电子信息产业股份有限公司 模型训练、点云缺失补全方法、装置、设备及介质
WO2023045252A1 (zh) * 2021-09-26 2023-03-30 浪潮电子信息产业股份有限公司 模型训练、点云缺失补全方法、装置、设备及介质
CN114119697A (zh) * 2021-11-24 2022-03-01 华东师范大学 基于pic的3d人脸模型面部纹理多样性补全方法
CN114386067A (zh) * 2022-01-06 2022-04-22 承德石油高等专科学校 一种基于人工智能的设备生产数据安全传输方法及系统
CN115098717A (zh) * 2022-05-11 2022-09-23 清华大学 三维模型检索方法、装置、电子设备及存储介质
CN116188690A (zh) * 2023-02-24 2023-05-30 北京工业大学 一种基于空间骨架信息的手绘草图三维模型重建方法
CN116386669A (zh) * 2023-04-14 2023-07-04 上海师范大学 基于分组自动编码器的机器运行声学状态监测方法和系统

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
刘钢 等: "基于改进的稀疏降噪自编码网络的三维模型识别方法", 吉林大学学报(理学版), no. 03 *

Also Published As

Publication number Publication date
CN116957991B (zh) 2023-12-15

Similar Documents

Publication Publication Date Title
CN108108854B (zh) 城市路网链路预测方法、系统及存储介质
CN108230278B (zh) 一种基于生成对抗网络的图像去雨滴方法
CN110728295B (zh) 半监督式的地貌分类模型训练和地貌图构建方法
CN110021069A (zh) 一种基于网格形变的三维模型重建方法
CN111381919A (zh) 形成用于推断可编辑特征树的数据集
CN111382496A (zh) 学习用于推断可编辑特征树的神经网络
CN109345604B (zh) 图片处理方法、计算机设备和存储介质
CN114742985A (zh) 一种高光谱特征提取方法、装置及存储介质
CN115659807A (zh) 一种基于贝叶斯优化模型融合算法对人才表现预测的方法
EP4280162A1 (en) Generating prismatic cad models by machine learning
CN111914950A (zh) 基于深度对偶变分哈希的无监督跨模态检索模型训练方法
Lluch et al. Procedural multiresolution for plant and tree rendering
CN115618098A (zh) 基于知识增强与空洞卷积的冷链物流推荐方法及装置
CN114510609A (zh) 结构数据的生成方法、装置、设备、介质及程序产品
CN116957991B (zh) 三维模型补全方法
Bertram et al. Adaptive smooth scattered-data approximation for large-scale terrain visualization
CN113554549B (zh) 文本图像的生成方法、装置、计算机设备和存储介质
CN115545085A (zh) 微弱故障电流的故障类型识别方法、装置、设备和介质
CN109325140A (zh) 从图像中提取哈希码的方法、装置及图像检索方法、装置
CN114615505A (zh) 基于深度熵编码的点云属性压缩方法、装置和存储介质
Zhang et al. Fast Mesh Reconstruction from Single View Based on GCN and Topology Modification.
Vieira et al. Stellar mesh simplification using probabilistic optimization
CN117078867B (zh) 一种三维重建的方法、装置、存储介质及电子设备
CN114331827B (zh) 风格迁移方法、装置、设备和存储介质
CN117236794B (zh) 基于bim的工程监理信息管理方法、系统、介质和设备

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