CN116721221B - 基于多模态的三维内容生成方法、装置、设备及存储介质 - Google Patents
基于多模态的三维内容生成方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN116721221B CN116721221B CN202310987823.7A CN202310987823A CN116721221B CN 116721221 B CN116721221 B CN 116721221B CN 202310987823 A CN202310987823 A CN 202310987823A CN 116721221 B CN116721221 B CN 116721221B
- Authority
- CN
- China
- Prior art keywords
- data
- point cloud
- target
- text
- training
- 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
- 238000000034 method Methods 0.000 title claims abstract description 95
- 238000012549 training Methods 0.000 claims abstract description 194
- 238000009792 diffusion process Methods 0.000 claims description 65
- 230000006870 function Effects 0.000 claims description 57
- 239000013598 vector Substances 0.000 claims description 36
- 238000012986 modification Methods 0.000 claims description 24
- 230000004048 modification Effects 0.000 claims description 24
- 230000008569 process Effects 0.000 claims description 22
- 230000004044 response Effects 0.000 claims description 12
- 230000000153 supplemental effect Effects 0.000 claims description 12
- 238000004590 computer program Methods 0.000 claims description 10
- 230000004927 fusion Effects 0.000 claims description 7
- 238000005070 sampling Methods 0.000 claims description 5
- 238000003062 neural network model Methods 0.000 claims description 4
- 238000000605 extraction Methods 0.000 claims description 3
- 238000006243 chemical reaction Methods 0.000 description 61
- 238000010586 diagram Methods 0.000 description 24
- 238000005259 measurement Methods 0.000 description 21
- 238000012216 screening Methods 0.000 description 16
- 238000002372 labelling Methods 0.000 description 9
- 230000000694 effects Effects 0.000 description 8
- 230000003993 interaction Effects 0.000 description 8
- 238000011524 similarity measure Methods 0.000 description 8
- 238000013507 mapping Methods 0.000 description 6
- 235000019580 granularity Nutrition 0.000 description 4
- 239000000243 solution Substances 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 239000000284 extract Substances 0.000 description 3
- 238000010606 normalization Methods 0.000 description 3
- 238000011176 pooling Methods 0.000 description 3
- 238000007781 pre-processing Methods 0.000 description 3
- 238000012795 verification Methods 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 2
- 230000009193 crawling Effects 0.000 description 2
- 238000002790 cross-validation Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 235000013601 eggs Nutrition 0.000 description 2
- 235000013305 food Nutrition 0.000 description 2
- 239000000463 material Substances 0.000 description 2
- 235000013372 meat Nutrition 0.000 description 2
- 239000000203 mixture Substances 0.000 description 2
- 235000012149 noodles Nutrition 0.000 description 2
- 230000011218 segmentation Effects 0.000 description 2
- 235000019587 texture Nutrition 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- 241001465754 Metazoa Species 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000013145 classification model Methods 0.000 description 1
- 230000002708 enhancing effect Effects 0.000 description 1
- 230000002349 favourable effect Effects 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 239000004615 ingredient Substances 0.000 description 1
- 238000002347 injection Methods 0.000 description 1
- 239000007924 injection Substances 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
- G06N3/0455—Auto-encoder networks; Encoder-decoder networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—2D [Two Dimensional] image generation
- G06T11/60—Editing figures and text; Combining figures or text
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T19/00—Manipulating 3D models or images for computer graphics
- G06T19/20—Editing of 3D images, e.g. changing shapes or colours, aligning objects or positioning parts
-
- 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/80—Fusion, i.e. combining data from various sources at the sensor level, preprocessing level, feature extraction level or classification level
- G06V10/806—Fusion, i.e. combining data from various sources at the sensor level, preprocessing level, feature extraction level or classification level of extracted 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/82—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Evolutionary Computation (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- Artificial Intelligence (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Medical Informatics (AREA)
- General Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Computer Graphics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Molecular Biology (AREA)
- Mathematical Physics (AREA)
- Geometry (AREA)
- Architecture (AREA)
- Computer Hardware Design (AREA)
- Processing Or Creating Images (AREA)
Abstract
本发明公开了一种基于多模态的三维内容生成方法、装置、设备及存储介质,属于三维内容生成领域,用于实现基于多模态的数据生成三维内容,解决了只能基于文本数据生成三维内容的技术问题。本发明预先获取若干文本数据以及与文本数据一一对应的描述同一对象的目标模态数据,作为训练数据集,然后基于训练数据集、文本数据编码器以及目标模态数据编码器,对目标模态数据编码器进行训练,使得目标模态数据编码器提取出的目标模态数据的数据特征与文本数据提取出的文本数据的数据特征位于同一目标语义空间,如此一来,便可以将目标模态数据位于目标语义空间的数据特征转换为三维内容,满足了用户将多模态数据转换为三维内容的需求,提升了用户体验。
Description
技术领域
本发明涉及三维内容生成领域,特别是涉及一种基于多模态的三维内容生成方法,本发明还涉及一种基于多模态的三维内容生成装置、设备、服务器、服务器集群及计算机可读存储介质。
背景技术
三维内容的生成技术已经应用于多个领域,例如零件、汽车、飞机以及建筑设计等领域,相关技术中在生成三维内容时,需要基于用户提供的文本数据生成对应的三维内容,但是也仅仅能够将文本数据转换为三维内容,也就是说,用户无法将除文本数据之外的其他模态的数据转换为三维内容,难以满足用户多样化的需求,降低了用户体验。
因此,如何提供一种解决上述技术问题的方案是本领域技术人员目前需要解决的问题。
发明内容
本发明的目的是提供一种基于多模态的三维内容生成方法,可以将目标模态数据位于目标语义空间的数据特征转换为三维内容,满足了用户将多模态数据转换为三维内容的需求,提升了用户体验;本发明的另一目的是提供一种基于多模态的三维内容生成装置、设备、服务器、服务器集群及计算机可读存储介质,可以将目标模态数据位于目标语义空间的数据特征转换为三维内容,满足了用户将多模态数据转换为三维内容的需求,提升了用户体验。
为解决上述技术问题,本发明提供了一种基于多模态的三维内容生成方法,包括:
获取若干文本数据以及与所述文本数据一一对应的描述同一对象的目标模态数据,作为训练数据集;
基于所述训练数据集、文本数据编码器以及目标模态数据编码器,对所述目标模态数据编码器进行训练,以便所述目标模态数据编码器提取出的目标模态数据的数据特征与所述文本数据提取出的文本数据的数据特征位于同一目标语义空间;
通过训练后的所述目标模态数据编码器对目标模态的待处理数据进行编码,得到待处理数据特征;
根据所述待处理数据特征生成与所述待处理数据对应的三维内容;
其中,所述目标模态数据包括语音数据以及点云数据,所述目标模态数据编码器包括语音数据编码器以及点云数据编码器。
另一方面,当所述目标模态数据为语音数据时,所述基于所述训练数据集、文本数据编码器以及目标模态数据编码器,对所述目标模态数据编码器进行训练具体为:
基于所述训练数据集、文本数据编码器以及语音数据编码器以及文本与语音模态的第一对比损失函数,对所述语音数据编码器进行训练;
当所述目标模态数据为点云数据时,所述基于所述训练数据集、文本数据编码器以及目标模态数据编码器,对所述目标模态数据编码器进行训练具体为:
将所述训练数据集中的目标文本数据输入文本编码器,得到所述文本数据对应的文本数据特征;
将所述训练数据集中与所述目标文本数据对应的目标点云数据输入点云数据编码器,得到所述目标点云数据对应的点云数据特征;
基于文本与点云模态的第二对比损失函数,通过所述目标点云数据对应的点云数据特征的自身内部对比,以及所述目标点云数据对应的点云数据特征与所述文本数据特征间的外部对比,对所述点云数据编码器进行训练。
另一方面,所述基于文本与点云模态的第二对比损失函数,通过所述目标点云数据对应的点云数据特征的自身内部对比,以及所述目标点云数据对应的点云数据特征与所述文本数据特征间的外部对比,对所述点云数据编码器进行训练包括:
通过多层感知器对所述目标点云数据对应的点云数据特征进行多次不同的信息丢弃,得到多个所述目标点云数据对应的经过不同信息丢弃的多个点云数据特征;
基于文本与点云模态的第二对比损失函数,通过所述目标点云数据对应的点云数据特征的自身内部对比,以及所述目标点云数据对应的点云数据特征与所述文本数据特征间的外部对比,对所述点云数据编码器进行训练;
其中,所述内部对比为:将同一所述目标点云数据对应的经过不同信息丢弃的多个点云数据特征作为正样本,将不同所述目标点云数据对应的所述点云数据特征作为负样本,对所述目标点云数据对应的点云数据特征的自身内部对比。
另一方面,所述第一对比损失函数包括:
;
其中,S表示文本模态,A表示语音模态,为文本模态与语音模态的数据对比损失,/>表示为文本模态的第i个样本提取的特征,/>表示语音模态的第j个样本提取的特征,Sim表示两个向量的cosine相似度,N为单一批次内的样本数量,τ为预定义的超参数,为语音模态的第i个样本提取的特征。
另一方面,所述第二对比损失函数包括:
;
;
;
其中,P代表点云模态,为文本模态与点云模态的数据对比损失,/>为所述目标点云数据对应的点云数据特征的自身内部对比的对比损失,/>为所述目标点云数据对应的点云数据特征与所述文本数据特征间的外部对比的对比损失,/>和/>是点云样本i经过两次不同的信息丢弃得到的特征向量,/>和/>是点云样本j经过两次不同的信息丢弃得到的特征向量,/>表示为文本模态的第i个样本提取的特征,λ为预设系数,N为单一批次内的样本数量,τ为预定义的超参数。
另一方面,所述文本数据编码器包括基于对比文本-图像对的预训练模型。
另一方面,所述语音数据编码器包括预训练的音频神经网络模型。
另一方面,所述通过训练后的所述目标模态数据编码器对目标模态的待处理数据进行编码,得到待处理数据特征之后,所述根据所述待处理数据特征生成与所述待处理数据对应的三维内容之前,该基于多模态的三维内容生成方法还包括:
将指定模态的待编码数据位于所述目标语义空间的数据特征作为输入,将与所述待编码数据描述同一对象的点云数据特征作为输出,通过指定模态特征与点云特征之间的第一损失函数,对第一目标扩散模型进行训练,以便将所述目标语义空间的数据特征直接映射至点云数据特征;
将所述待处理数据特征输入经过训练的所述第一目标扩散模型,得到位于所述目标语义空间的与所述待处理数据对应的目标点云特征;
所述根据所述待处理数据特征生成与所述待处理数据对应的三维内容包括:
根据所述目标点云特征生成与所述待处理数据对应的三维内容。
另一方面,所述将指定模态的待编码数据位于所述目标语义空间的数据特征作为输入,将与所述待编码数据描述同一对象的点云数据特征作为输出,通过指定模态特征与点云特征之间的第一损失函数,对第一目标扩散模型进行训练,以便将所述目标语义空间的数据特征直接映射至点云数据特征包括:
获取指定模态的待编码数据位于所述目标语义空间的数据特征、与所述待编码数据描述同一对象的点云数据特征以及与所述待编码数据描述同一对象的图像数据;
判断随机生成的随机概率是否大于预设阈值;
若大于,将所述指定模态的待编码数据位于所述目标语义空间的数据特征作为输入,将与所述待编码数据描述同一对象的点云数据特征作为输出;
若不大于,将与所述待编码数据描述同一对象的图像数据位于所述目标语义空间的数据特征,和所述指定模态的待编码数据位于所述目标语义空间的数据特征进行融合得到融合输入特征作为输入,将与所述待编码数据描述同一对象的点云数据特征作为输出;
根据确定出的输入以及输出对第一目标扩散模型进行训练,并根据指定模态特征与点云特征之间的第一损失函数判断是否所述第一目标扩散模型是否收敛;
若收敛,则训练完成;
若不收敛,执行所述获取指定模态的待编码数据位于所述目标语义空间的数据特征、与所述待编码数据描述同一对象的点云数据特征以及与所述待编码数据描述同一对象的图像数据的步骤。
另一方面,所述与所述待编码数据描述同一对象的图像数据包括:
与所述待编码数据描述同一对象的多个视角的图像数据。
另一方面,所述指定模态包括文本数据。
另一方面,所述第一损失函数包括:
;
其中,L p1为与所述待编码数据描述同一对象的点云数据特征与所述第一目标扩散模型预测的点云数据特征间的损失,t表示时间扩散第t步,Et为第t个时间扩散步的期望,T为时间扩散步的总数预设值,f prior为第一目标扩散模型,ztext表示指定模态的待编码数据位于所述目标语义空间的数据特征,z f 表示所述多视角图像对应的数据特征,zp表示与所述待编码数据描述同一对象的所述点云数据特征,表示第t个时间步加噪声的所述点云数据特征。
另一方面,所述根据所述目标点云特征生成与所述待处理数据对应的三维内容包括:
通过预先训练的点云生成网络,根据所述目标点云特征生成与所述待处理数据对应的三维内容;
其中,所述点云生成网络的预训练过程包括:
将基于训练后的所述第一目标扩散模型提取的点云特征、时间步特征以及带噪点的训练用点云特征作为输入,通过第二损失函数对第二目标扩散模型进行训练,得到点云生成网络。
另一方面,所述第二损失函数包括:
;
其中,L p2为所述训练用点云特征与所述第二目标扩散模型预测的点云数据特征间的损失,zg为基于训练后的所述第一目标扩散模型提取的点云特征,t为所述时间步特征,为所述训练用点云特征,/>为所述带噪点的所述训练用点云特征,t表示时间扩散第t步,Concat()表示向量拼接操作,Et为第t个时间扩散步的期望,T为时间扩散步的总数预设值,F为第二目标扩散模型。
另一方面,所述根据所述待处理数据特征生成与所述待处理数据对应的三维内容之后,该基于多模态的三维内容生成方法还包括:
通过上采样模型扩充得到的所述三维内容中的点云数量。
另一方面,所述根据所述目标点云特征生成与所述待处理数据对应的三维内容之后,该基于多模态的三维内容生成方法还包括:
将当前的所述目标点云特征记录为所述待处理数据对应的三维内容的历史点云特征;
响应于对于所述三维内容的修改指令,确定所述修改指令指定的补充数据;
基于经过训练的所述第一目标扩散模型,将所述补充数据位于所述目标语义空间的数据特征转换为点云数据特征;
根据所述补充数据对应的点云数据特征与所述三维内容的历史点云特征的融合数据特征,生成三维内容。
另一方面,所述响应于对于所述三维内容的修改指令,确定所述修改指令指定的补充数据包括:
响应于对于所述三维内容的修改指令,判断所述三维内容是否被锁定;
若未被锁定,则确定所述修改指令指定的补充数据;
若被锁定,控制提示器提示所述三维内容被锁定;
该基于多模态的三维内容生成方法还包括:
根据锁操作指令对所述三维内容进行锁定或解锁操作。
为解决上述技术问题,本发明还提供了一种基于多模态的三维内容生成装置,包括:
获取模块,用于获取若干文本数据以及与所述文本数据一一对应的描述同一对象的目标模态数据,作为训练数据集;
训练模块,用于基于所述训练数据集、文本数据编码器以及目标模态数据编码器,对所述目标模态数据编码器进行训练,以便所述目标模态数据编码器提取出的目标模态数据的数据特征与所述文本数据提取出的文本数据的数据特征位于同一目标语义空间;
编码模块,用于通过训练后的所述目标模态数据编码器对目标模态的待处理数据进行编码,得到待处理数据特征;
生成模块,用于根据所述待处理数据特征生成与所述待处理数据对应的三维内容;
其中,所述目标模态数据包括语音数据以及点云数据,所述目标模态数据编码器包括语音数据编码器以及点云数据编码器。
为解决上述技术问题,本发明还提供了一种基于多模态的三维内容生成设备,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如上所述基于多模态的三维内容生成方法的步骤。
为解决上述技术问题,本发明还提供了一种服务器,包括如上所述的基于多模态的三维内容生成设备。
为解决上述技术问题,本发明还提供了一种服务器集群,包括至少一台如上所述的服务器。
为解决上述技术问题,本发明还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上所述基于多模态的三维内容生成方法的步骤。
有益效果:本发明提供了一种基于多模态的三维内容生成方法,考虑到针对语音与点云模态的数据均容易得到对应的文本数据,因此本发明中可以预先获取若干文本数据以及与文本数据一一对应的描述同一对象的目标模态数据,作为训练数据集,然后基于训练数据集、文本数据编码器以及目标模态数据编码器,对目标模态数据编码器进行训练,使得目标模态数据编码器提取出的目标模态数据的数据特征与文本数据提取出的文本数据的数据特征位于同一目标语义空间,如此一来,便可以将目标模态数据位于目标语义空间的数据特征转换为三维内容,满足了用户将多模态数据转换为三维内容的需求,提升了用户体验。
本发明还提供了一种基于多模态的三维内容生成装置、设备、服务器、服务器集群以及计算机可读存储介质,具有如上基于多模态的三维内容生成方法相同的有益效果。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对相关技术和实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明提供的一种基于多模态的三维内容生成方法的流程示意图;
图2为本发明提供的一种多模态语义空间模型结构图;
图3为本发明提供的一种双分支文本点云对比学习网络的结构示意图;
图4为本发明提供的一种文本语音对比学习网络的结构示意图;
图5为本发明提供的一种点云先验扩散模型的结构示意图;
图6为本发明提供的一种点云数据特征的生成流程图;
图7为本发明提供的一种点云生成网络的结构示意图;
图8为本发明提供的一种点云编辑网络的结构示意图;
图9为本发明提供的一种基于多模态的三维内容生成装置的结构示意图;
图10为本发明提供的一种基于多模态的三维内容生成设备的结构示意图;
图11为本发明提供的一种计算机可读存储介质的结构示意图;
图12为本发明提供的一种数据对获取方法的流程示意图;
图13为本发明提供的一种第一相似度度量模型的结构示意图;
图14为本发明提供的一种第二相似度度量模型的结构示意图;
图15为本发明提供的一种点云-文本转换模型的结构示意图。
具体实施方式
本发明的核心是提供一种基于多模态的三维内容生成方法,可以将目标模态数据位于目标语义空间的数据特征转换为三维内容,满足了用户将多模态数据转换为三维内容的需求,提升了用户体验;本发明的另一核心是提供一种基于多模态的三维内容生成装置、设备、服务器、服务器集群及计算机可读存储介质,可以将目标模态数据位于目标语义空间的数据特征转换为三维内容,满足了用户将多模态数据转换为三维内容的需求,提升了用户体验。
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参考图1,图1为本发明提供的一种基于多模态的三维内容生成方法的流程示意图,该基于多模态的三维内容生成方法包括:
S101:获取若干文本数据以及与文本数据一一对应的描述同一对象的目标模态数据,作为训练数据集;
具体的,考虑到如上背景技术中的技术问题,又结合考虑到文本数据特征与图像数据特征本身较为近似,但是语音数据特征以及点云数据特征与其他两种模态数据特征的差别较大,因此无法直接基于目前的语音数据特征以及点云数据特征生成三维内容,而考虑到文本数据作为一种桥梁模态,与其成对的多模态数据较容易获得,例如可以针对任一模态的数据生成与其描述同一对象的文本数据,从而构成两种模态的数据对,通过该方法可以得到训练数据集,以便对指定模态数据的编码器进行训练,使得指定模态数据的编码器能够编码得到与文本数据特征位于同一目标语义空间的数据特征,因此本发明实施例中首先可以获取若干文本数据以及与文本数据一一对应的描述同一对象的目标模态数据,作为训练数据集。
其中,目标模态可以为多种类型,本发明实施例在此不做限定。
S102:基于训练数据集、文本数据编码器以及目标模态数据编码器,对目标模态数据编码器进行训练,以便目标模态数据编码器提取出的目标模态数据的数据特征与文本数据提取出的文本数据的数据特征位于同一目标语义空间;
具体的,在得到训练数据集后,便可以结合文本数据编码器以及目标模态数据编码器,对目标模态数据编码器进行训练,以便目标模态数据编码器提取出的目标模态数据的数据特征与文本数据提取出的文本数据的数据特征位于同一目标语义空间,由于目前已经可以基于文本数据特征生成三维内容,那么在得到目标模态数据的位于目标语义空间的特征之后,同样可以基于该特征生成三维内容。
S103:通过训练后的目标模态数据编码器对目标模态的待处理数据进行编码,得到待处理数据特征;
具体的,在训练完成后,便可以通过训练后的目标模态数据编码器对目标模态的待处理数据进行编码,得到待处理数据特征,该待处理数据特征与文本数据特征位于同一目标语义空间,位于同一目标语义空间内的特征距离较近。
S104:根据待处理数据特征生成与待处理数据对应的三维内容;
其中,目标模态数据包括语音数据以及点云数据,目标模态数据编码器包括语音数据编码器以及点云数据编码器。
具体的,正是由于目前已经可以针对目标语义空间内的文本数据特征生成三维内容,因此在得到同样位于目标语义空间的待处理数据特征后,便可以根据待处理数据特征生成与待处理数据对应的三维内容,从而满足了用户基于多种模态数据生成三维内容的需求,提升了用户体验。
为了更好的对本发明实施例进行说明,请参考图2,图2为本发明提供的一种多模态语义空间模型结构图,考虑到语音数据特征以及点云数据特征与其他两种模态数据特征的差别较大,因此需要对语音编码器以及点云编码器进行训练,使得这两种编码器编码得到的数据特征与文本数据特征位于同一语义空间,图2中的文本-语音数据以及文本-点云数据分别为训练数据集,对比损失1则表示第一对比损失函数的运用,而对比损失2则表示第二对比损失函数的运用。
当然,除了这两种模态外,其他模态的数据同样可以作为目标模态,本发明实施例在此不做限定。
本发明提供了一种基于多模态的三维内容生成方法,考虑到针对语音与点云模态的数据均容易得到对应的文本数据,因此本发明中可以预先获取若干文本数据以及与文本数据一一对应的描述同一对象的目标模态数据,作为训练数据集,然后基于训练数据集、文本数据编码器以及目标模态数据编码器,对目标模态数据编码器进行训练,使得目标模态数据编码器提取出的目标模态数据的数据特征与文本数据提取出的文本数据的数据特征位于同一目标语义空间,如此一来,便可以将目标模态数据位于目标语义空间的数据特征转换为三维内容,满足了用户将多模态数据转换为三维内容的需求,提升了用户体验。
在上述实施例的基础上:
作为一种实施例,当目标模态数据为语音数据时,基于训练数据集、文本数据编码器以及目标模态数据编码器,对目标模态数据编码器进行训练具体为:
基于训练数据集、文本数据编码器以及语音数据编码器以及文本与语音模态的第一对比损失函数,对语音数据编码器进行训练;
当目标模态数据为点云数据时,基于训练数据集、文本数据编码器以及目标模态数据编码器,对目标模态数据编码器进行训练具体为:
将训练数据集中的目标文本数据输入文本编码器,得到文本数据对应的文本数据特征;
将训练数据集中与目标文本数据对应的目标点云数据输入点云数据编码器,得到目标点云数据对应的点云数据特征;
基于文本与点云模态的第二对比损失函数,通过目标点云数据对应的点云数据特征的自身内部对比,以及目标点云数据对应的点云数据特征与文本数据特征间的外部对比,对点云数据编码器进行训练。
具体的,为了更好地对语音数据编码器以及点云数据编码器进行训练,本发明实施例中分别为两种模态的数据编码器设置了对应的对比损失函数,分别为第一对比损失函数以及第二对比损失函数。
具体的,为了更好地对本发明实施例进行说明,请参考图3,图3为本发明提供的一种双分支文本点云对比学习网络的结构示意图,对于文本点云对比学习模块来说,由于文本-点云模态间的差异相对较大,训练过程中本方案创新性在点云模态加入了无监督相似性对比学习分支用于增强点云模态语义编码能力,也即本发明实施例中可以通过目标点云数据对应的点云数据特征的自身内部对比,以及目标点云数据对应的点云数据特征与文本数据特征间的外部对比,对点云数据编码器进行训练,有利于提升训练得到的点云数据编码器的精度。
作为一种实施例,基于文本与点云模态的第二对比损失函数,通过目标点云数据对应的点云数据特征的自身内部对比,以及目标点云数据对应的点云数据特征与文本数据特征间的外部对比,对点云数据编码器进行训练包括:
通过多层感知器对目标点云数据对应的点云数据特征进行多次不同的信息丢弃,得到多个目标点云数据对应的经过不同信息丢弃的多个点云数据特征;
基于文本与点云模态的第二对比损失函数,通过目标点云数据对应的点云数据特征的自身内部对比,以及目标点云数据对应的点云数据特征与文本数据特征间的外部对比,对点云数据编码器进行训练;
其中,内部对比为:将同一目标点云数据对应的经过不同信息丢弃的多个点云数据特征作为正样本,将不同目标点云数据对应的点云数据特征作为负样本,对目标点云数据对应的点云数据特征的自身内部对比。
具体的,在图3中,“一辆小型私人飞机”为示例的文本数据,左侧的飞机图案代表输入至点云编码器的点云数据,点云经过点云编码器得到编码后的特征,随后经过两次MLP(Multi-Layer Perceptron,多层感知器)网络,这里两次采用不同的dropout(信息丢弃),得到两个不同的特征向量。在一个batch(批次)里面,每一个样本经过不同dropout得到的两个向量(两个实心圆)是正样本(如图中上面分支的实线箭头所示),不同样本之间的向量(位于不同行的圆)是负样本(如图中上面分支的虚线箭头所示),这一部分由于并没有样本标签,因此是无监督相似性对比学习。下面分支则是采用和文本-语音学习相同的对比损失函数。通过双分支的文本点云对比学习网络能够提升训练效果。
其中,对于点云数据进行信息丢弃的次数可以进行自主设定,例如可以为图3所示的两次等,本发明实施例在此不做限定。
作为一种实施例,第一对比损失函数包括:
;
其中,S表示文本模态,A表示语音模态,为文本模态与语音模态的数据对比损失,/>表示为文本模态的第i个样本提取的特征,/>表示语音模态的第j个样本提取的特征,Sim表示两个向量的cosine相似度,N为单一批次内的样本数量,τ为预定义的超参数,为语音模态的第i个样本提取的特征。
具体的,采用该损失函数能够提升训练精度。
具体的,为了更好的对本发明实施例进行说明,请参考图4,图4为本发明提供的一种文本语音对比学习网络的结构示意图。
当然,除了该具体形式外,第一对比损失函数还可以为其他具体形式,本发明实施例在此不做限定。
作为一种实施例,第二对比损失函数包括:
;
;
;
其中,P代表点云模态,为文本模态与点云模态的数据对比损失,/>为目标点云数据对应的点云数据特征的自身内部对比的对比损失,/>为目标点云数据对应的点云数据特征与文本数据特征间的外部对比的对比损失,/>和/>是点云样本i经过两次不同的信息丢弃得到的特征向量,/>和/>是点云样本j经过两次不同的信息丢弃得到的特征向量,/>表示为文本模态的第i个样本提取的特征,λ为预设系数,N为单一批次内的样本数量,τ为预定义的超参数。
具体的,采用该损失函数能够提升训练精度。
当然,除了该具体形式外,第二对比损失函数还可以为其他具体形式,本发明实施例在此不做限定。
作为一种实施例,文本数据编码器包括基于对比文本-图像对的预训练模型。
具体的,CLIP(Contrastive Language-Image Pre-training,基于对比文本-图像对的预训练模型)具有编码精度高以及速度快等优点。
当然,除了CLIP外,文本数据编码器还可以为其他多种类型,本发明实施例在此不做限定。
作为一种实施例,语音数据编码器包括预训练的音频神经网络模型。
具体的,PANNs(Pretrained Audio Neural Networks,预训练的音频神经网络模型)具有编码精度高以及速度快等优点。
当然,除了PANNs外,语音数据编码器还可以为其他多种类型,本发明实施例在此不做限定。
另外,值得一提的是,文本-语音对数据及文本-点云对数据分别可以为多种来源,例如其中文本-点云对数据采用预先自主收集得到的文本-点云数据;文本-语音对数据采用各种公开数据集,例如采用AudioSet,AudioCaps, Freesound 500K,BBC Sound Effect的组合等,本发明实施例在此不做限定。
作为一种实施例,通过训练后的目标模态数据编码器对目标模态的待处理数据进行编码,得到待处理数据特征之后,根据待处理数据特征生成与待处理数据对应的三维内容之前,该基于多模态的三维内容生成方法还包括:
将指定模态的待编码数据位于目标语义空间的数据特征作为输入,将与待编码数据描述同一对象的点云数据特征作为输出,通过指定模态特征与点云特征之间的第一损失函数,对第一目标扩散模型进行训练,以便将目标语义空间的数据特征直接映射至点云数据特征;
将待处理数据特征输入经过训练的第一目标扩散模型,得到位于目标语义空间的与待处理数据对应的目标点云特征;
根据待处理数据特征生成与待处理数据对应的三维内容包括:
根据目标点云特征生成与待处理数据对应的三维内容。
具体的,经过上述对于语音编码器以及点云编码器的训练,我们可以将多模态(文本、图像、语音、点云)空间映射到一个公共的目标语义空间,尽管四种数据提取的数据特征能够位于目标语义空间,但是点云数据特征在目标语义空间中与其他三种模态数据特征的距离较远,因此直接基于文本、图像、语音的任一种模态数据的特征生成点云特征的效果较差,因此在训练具体的多模态生成点云模型之前,我们添加了一个点云先验扩散模型,完成了目标语义空间的特征到点云特征的直接映射,也即拉近了点云数据特征与其他三种模态数据特征的距离,能够提升生成三维内容的精度。
具体的,为了更好地对本发明实施例进行说明,请参考图5,图5为本发明提供的一种点云先验扩散模型的结构示意图,在图5中我们可以将文本数据作为指定模态,也即将文本数据特征作为第一目标扩散模型的输入,将与待编码数据描述同一对象的点云数据特征作为输出,通过指定模态特征与点云特征之间的第一损失函数,对第一目标扩散模型进行训练,以便将目标语义空间的数据特征直接映射至点云数据特征,训练完成后,便可以将待处理数据特征输入经过训练的第一目标扩散模型,得到位于目标语义空间的与待处理数据对应的目标点云特征,然后便可以基于目标点云特征生成更加精确的三维内容。
当然,除了文本数据为,指定模态还可以为其他类型,本发明实施例在此不做限定。
作为一种实施例,将指定模态的待编码数据位于目标语义空间的数据特征作为输入,将与待编码数据描述同一对象的点云数据特征作为输出,通过指定模态特征与点云特征之间的第一损失函数,对第一目标扩散模型进行训练,以便将目标语义空间的数据特征直接映射至点云数据特征包括:
获取指定模态的待编码数据位于目标语义空间的数据特征、与待编码数据描述同一对象的点云数据特征以及与待编码数据描述同一对象的图像数据;
判断随机生成的随机概率是否大于预设阈值;
若大于,将指定模态的待编码数据位于目标语义空间的数据特征作为输入,将与待编码数据描述同一对象的点云数据特征作为输出;
若不大于,将与待编码数据描述同一对象的图像数据位于目标语义空间的数据特征,和指定模态的待编码数据位于目标语义空间的数据特征进行融合得到融合输入特征作为输入,将与待编码数据描述同一对象的点云数据特征作为输出;
根据确定出的输入以及输出对第一目标扩散模型进行训练,并根据指定模态特征与点云特征之间的第一损失函数判断是否第一目标扩散模型是否收敛;
若收敛,则训练完成;
若不收敛,执行获取指定模态的待编码数据位于目标语义空间的数据特征、与待编码数据描述同一对象的点云数据特征以及与待编码数据描述同一对象的图像数据的步骤。
具体的,为了进一步提升训练效果以及训练速度,考虑到基于点云数据得到的图像数据携带有点云数据较多的特征,因此本发明实施例中可以概率性的将基于点云数据得到的图像数据加入第一目标扩散模型的输入数据。
具体的,参考图5可见,右上角的车辆图案为点云数据,一方面可以输入点云编码器得到点云数据特征,另一方方面则可以经过K视角投影得到多视角图像,然后听过图像编码器得到图像数据特征,经过如上训练过程可以高效准确地完成对于第一目标扩散模型的训练。
其中,预设阈值可以进行自主设定,例如可以设置为0.2等,本发明实施例在此不做限定。
具体的,输入文本经过冻结的CLIP文本编码器提取特征ztext(N*L*d,这里N表示的是batch size(批次尺寸),L表示的是文本编码器提取的数据特征长度,本方案中可以为L=256,d表示的是文本编码器提取到的特征维度,CLIP文本编码器提取的是768维)。输入点云经过冻结的点云编码器提取得到特征z p (N*L*d,这里N表示的是batch size,L表示的是点云编码器提取的特征长度,本方案中L=256,d表示的是点云编码器提取到的特征维度,点云编码器提取到的特征维度是768维)。
本模块先验扩散模型fprior希望是从ztext直接映射得到z p ,这里采用了一个点云先验模块来完成这个映射过程,这里为了进一步减少特征ztext映射到z p 的映射难度,训练时我们随机加入点云多视角渲染图片特征。具体操作如下:随机化初始概率p,如果p>0.2,直接将ztext输入到点云先验网络fprior,如果p<0.2,执行下一步。原始点云数据经过多视角投影后可以映射得到K个视角下的投影图片,这里的K可以根据需求自行设置,本方案这里采用K=10。经过图像编码器得到多视角编码特征(N*K*d),多视角编码特征经过视角池化层得到融合特征z f (N*d),这里的视角池化层采用的是均值池化方式。最后将特征z f 与ztext相加,然后输入到点云先验网络fprior。经过点云先验网络fprior之后的特征为zg,我们希望zg与z p 越接近越好。这里的点云先验网络可以选择任意一种网络架构,本方案采用基于Transformer的扩散模型。
当然,除了该训练过程外,第一目标扩散模型还可以通过其他方式训练,本发明实施例在此不做限定。
作为一种实施例,与待编码数据描述同一对象的图像数据包括:
与待编码数据描述同一对象的多个视角的图像数据。
具体的,通过多个视角的图像数据生成图像数据特征,可以进一步提升第一目标扩散模型的训练精度与效率。
作为一种实施例,指定模态包括文本数据。
具体的,考虑到文本数据为较为容易获得的一种与点云数据对应的数据模态,因此本发明实施例中将文本数据作为指定模态,可以较为容易的获得大量的训练数据对。
当然,除了文本数据外,指定模态还可以为其他类型,本发明实施例在此不做限定。
作为一种实施例,第一损失函数包括:
;
其中,L p1为与待编码数据描述同一对象的点云数据特征与第一目标扩散模型预测的点云数据特征间的损失,t表示时间扩散第t步,Et为第t个时间扩散步的期望,T为时间扩散步的总数预设值,f prior为第一目标扩散模型,ztext表示指定模态的待编码数据位于目标语义空间的数据特征,z f 表示多视角图像对应的数据特征,zp表示与待编码数据描述同一对象的点云数据特征,表示第t个时间步加噪声的点云数据特征。
具体的,采用该损失函数能够提升训练精度。
当然,除了该具体形式外,第一损失函数还可以为其他具体形式,本发明实施例在此不做限定。
作为一种实施例,根据目标点云特征生成与待处理数据对应的三维内容包括:
通过预先训练的点云生成网络,根据目标点云特征生成与待处理数据对应的三维内容;
其中,点云生成网络的预训练过程包括:
将基于训练后的第一目标扩散模型提取的点云特征、时间步特征以及带噪点的训练用点云特征作为输入,通过第二损失函数对第二目标扩散模型进行训练,得到点云生成网络。
具体的,为了更好地对本发明实施例进行说明,请参考图6,图6为本发明提供的一种点云数据特征的生成流程图。
其中,多模态编码器可以将语音、文本、图像模态特征转化到和点云模态相近的公共空间,经过点云先验网络可以进一步将多模态特征映射为点云特征,经过点云生成网络便可以将点云特征生成具体的三维点云。
作为一种实施例,第二损失函数包括:
;
其中,L p2为训练用点云特征与第二目标扩散模型预测的点云数据特征间的损失,zg为基于训练后的第一目标扩散模型提取的点云特征,t为时间步特征,为训练用点云特征,/>为带噪点的训练用点云特征,t表示时间扩散第t步,Concat()表示向量拼接操作,Et为第t个时间扩散步的期望,T为时间扩散步的总数预设值,F为第二目标扩散模型。
具体的,采用该损失函数能够提升训练精度。
具体的,为了更好地对本发明实施例进行说明,请参考图7,图7为本发明提供的一种点云生成网络的结构示意图,基于提取到的点云特征、时间步特征、带噪点云特征预测点云特征便可以展开对于点云生成网络的训练,对于一个点云文件,首先它是由多个三维点信息组成,每个点信息包含6个信息,(x,y,z,r,g,b),其中xyz表示三维坐标,rgb表示三维点的颜色三通道信息。首先可以从多个三维点信息中均匀采样1024个点,这样获得了N*1024*6的特征向量,将上述特征向量经过一个MLP网络转化成N*1024*768的特征向量,此特征向量就是原始点云特征(也即训练用点云特征)p f 。这里的输入由先验网络提取得到点云特征zg、时间步特征t及带噪点云特征组成。提取点云特征(N*L*d,这里N表示batchsize,L表示特征长度,L=256,d表示特征维度,d=768),时间步特征为扩散模型注入的时间步序列特征(特征为度为N*1*256),带噪点云特征表示t时间步上对原始点云特征p f 加入噪声获得的特征。这里原始点云特征的维度为(N*1024*768)。输入特征经过一个浅层的Transformer架构就可以得到预测的点云特征。
当然,除了该具体形式外,第二损失函数还可以为其他具体形式,本发明实施例在此不做限定。
作为一种实施例,根据待处理数据特征生成与待处理数据对应的三维内容之后,该基于多模态的三维内容生成方法还包括:
通过上采样模型扩充得到的三维内容中的点云数量。
具体的,考虑到经过点云扩散模型,得到的点云较为稀疏,例如可以得到一个1024*6的稀疏点云,后续再经过任意一个点云上采样模型便可以得到稠密的三维点云。
作为一种实施例,根据目标点云特征生成与待处理数据对应的三维内容之后,该基于多模态的三维内容生成方法还包括:
将当前的目标点云特征记录为待处理数据对应的三维内容的历史点云特征;
响应于对于三维内容的修改指令,确定修改指令指定的补充数据;
基于经过训练的第一目标扩散模型,将补充数据位于目标语义空间的数据特征转换为点云数据特征;
根据补充数据对应的点云数据特征与三维内容的历史点云特征的融合数据特征,生成三维内容。
为了更好的对本发明实施例进行说明,请参考图8,图8为本发明提供的一种点云编辑网络的结构示意图,经过前述方案,我们可以得到输入为文本、语音、图像任意一种模态生成三维点云的一个模型。然而在具体实现过程中,我们还需要对相应的点云文件进行二次加工,也即对点云文件加入其他的可控条件进行二次编辑操作。这里我们设计了一套可控编辑模型系统,能够将用户反馈转化为多模态编辑条件,完成对点云模型的可控编辑。如图8所示,用户初始输入:生成一辆小轿车。此时输入是一段文本,经过多模态编码器中的文本编码器提取特征,然后经过点云先验模型转化为点云特征(此时记为f0),输入到点云扩散模型产生初始点云。此时用户反馈想要给轿车加入颜色,比如采用文本输入“我想要红色的小汽车”或者给出一张有红色汽车的参考图片,此时编辑系统就将对应的模态输入到对应的多模态编码器中。文本输入“我想要红色的小汽车”用文本编码器,红色汽车的参考图片用图像编码器,然后将对应编码得到的特征进过点云先验模型映射为点云特征fe,此时再将初始状态得到的f0作为历史特征,新的特征计算公式如下(λ=0.1):
f1= f0+λfe;
此时再将f1输入到点云生成网络,产生新的点云,完成初始点云的编辑修改。
如若不满意生成点云,可继续上述流程,直至用户满意为止。特征更新公式为:
fn= f(n-1)+λfe。
作为一种实施例,响应于对于三维内容的修改指令,确定修改指令指定的补充数据包括:
响应于对于三维内容的修改指令,判断三维内容是否被锁定;
若未被锁定,则确定修改指令指定的补充数据;
若被锁定,控制提示器提示三维内容被锁定;
该基于多模态的三维内容生成方法还包括:
根据锁操作指令对三维内容进行锁定或解锁操作。
具体的,考虑到某些情况下用户需要禁止或者允许对三维内容的更改,因此本发明实施例中提供了对三维内容进行锁定或解锁的功能,可以根据锁操作指令对三维内容进行锁定或解锁操作,那么响应于对于三维内容的修改指令,便可以判断三维内容是否被锁定;若未被锁定,则确定修改指令指定的补充数据;若被锁定,控制提示器提示三维内容被锁定。
请参考图9,图9为本发明提供的一种基于多模态的三维内容生成装置的结构示意图,该基于多模态的三维内容生成装置包括:
获取模块91,用于获取若干文本数据以及与文本数据一一对应的描述同一对象的目标模态数据,作为训练数据集;
训练模块92,用于基于训练数据集、文本数据编码器以及目标模态数据编码器,对目标模态数据编码器进行训练,以便目标模态数据编码器提取出的目标模态数据的数据特征与文本数据提取出的文本数据的数据特征位于同一目标语义空间;
编码模块93,用于通过训练后的目标模态数据编码器对目标模态的待处理数据进行编码,得到待处理数据特征;
生成模块94,用于根据待处理数据特征生成与待处理数据对应的三维内容;
其中,目标模态数据包括语音数据以及点云数据,目标模态数据编码器包括语音数据编码器以及点云数据编码器。
对于本发明实施例提供的基于多模态的三维内容生成装置的介绍请参照前述的基于多模态的三维内容生成方法的实施例,本发明实施例在此不再赘述。
请参考图10,图10为本发明提供的一种基于多模态的三维内容生成设备的结构示意图,该基于多模态的三维内容生成设备包括:
存储器101,用于存储计算机程序;
处理器102,用于执行计算机程序时实现如前述实施例中基于多模态的三维内容生成方法的步骤。
对于本发明实施例提供的基于多模态的三维内容生成设备的介绍请参照前述的基于多模态的三维内容生成方法的实施例,本发明实施例在此不再赘述。
本发明还提供了一种服务器,包括如前述实施例中的基于多模态的三维内容生成设备。
对于本发明实施例提供的服务器的介绍请参照前述的基于多模态的三维内容生成方法的实施例,本发明实施例在此不再赘述。
本发明还提供了一种服务器集群,包括至少一台如前述实施例中的服务器。
对于本发明实施例提供的服务器集群的介绍请参照前述的基于多模态的三维内容生成方法的实施例,本发明实施例在此不再赘述。
请参考图11,图11为本发明提供的一种计算机可读存储介质的结构示意图,计算机可读存储介质110上存储有计算机程序111,计算机程序111被处理器102执行时实现如前述实施例中基于多模态的三维内容生成方法的步骤。
对于本发明实施例提供的计算机可读存储介质的介绍请参照前述的基于多模态的三维内容生成方法的实施例,本发明实施例在此不再赘述。
另外,请参考图12,图12为本发明提供的一种数据对获取方法的流程示意图,该数据对获取方法包括:
S201:通过预训练的点云-文本转换模型,转换得到预先采集的多类对象的点云数据对应的文本描述;
具体的,考虑到如上背景技术中的技术问题,又结合考虑到基于现有少量数据对训练的点云-文本转换模型的预测精度较差,又结合考虑到通过多维度的相似度度量可以准确的分析模型预测得到的点云文本数据对并完成数据筛选,因此本发明欲针对经过预训练的点云-文本转换模型再次进行训练,而再次训练所用到的训练数据集可以基于点云-文本转换模型生成,而考虑到基于点云-文本转换模型直接生成的点云文本数据对的精度较差,因此后续加入了筛选策略对点云-文本转换模型直接生成的点云文本数据进行了筛选,从而有利于提升最终训练得到的点云-文本转换模型的精度,而本步骤中首先可以通过预训练的点云-文本转换模型,转换得到预先采集的多类对象的点云数据对应的文本描述,以便将其作为后续步骤的数据基础。
其中,点云文本数据对指的就是点云数据与其对应的描述同一对象的文本描述。
具体的,值得一提的是,本文在介绍基于多模态的三维内容生成方法与数据对获取方法时可能采用了相同的词语,相同的词语在两个方法中应独立看待,互不关联,如预设数量等。
具体的,点云-文本转换模型的预训练过程可以有多种,例如可以利用人工标注的数据集进行预训练等,本发明实施例在此不做限定。
其中,为了更好地提升模型性能,本发明中可以生成多类对象的点云文本数据对,因此可以通过预训练的点云-文本转换模型,转换得到预先采集的多类对象的点云数据对应的文本描述,其中的多类对象的具体类别可以进行自主选择,例如可以包括交通工具、食物、服装、动物以及植物等,本发明实施例在此不做限定。
具体的,文本描述的含义为:针对对应的点云数据指代的对象,通过文本模态的数据做出的特点描述,文本描述可以基于不同的预设粒度。预设粒度可以自主设置,例如针对食物类对象的文本描述的预设粒度设置可以设置的比较细致,细致到颜色、材料、成分、纹理、口味等细节,例如针对一碗面的3D模型的文本描述可以为“含有鸡蛋及肉的麻辣味拉面”等,本发明实施例在此不做限定。
S202:通过第一相似度度量以及第二相似度度量,筛选出与对应的文本描述的相似度满足预设标准的点云数据;第一相似度度量为点云数据与对应文本描述的相似度度量,第二相似度度量为点云数据对应的文本描述与点云数据对应的图像数据的相似度度量;
具体的,在得到预先采集的点云数据对应的文本描述后,考虑到预训练模型的精度较低,因此得到的点云文本数据对的精度也较差,不适合直接作为训练数据集对模型再次进行训练,因此需要进行筛选剔除,而为了提升筛选的效果,本发明实施例中考虑从“点云与文本”以及“点云对应的图像与文本”两个维度,对获得的点云文本数据对进行相似度度量,从而筛选出与对应的文本描述的相似度满足预设标准的点云数据,由于通过多维度进行了相似度度量,因此最终筛选得到的点云文本数据对的精度较高,也即点云文本数据对中的点云数据与文本描述大概率会准确的描述同一对象。
其中,筛选得到的点云文本数据对可以作为后续步骤的数据基础。
S203:将筛选得到的点云数据与对应的文本描述作为点云-文本转换模型的训练数据集,对点云-文本转换模型进行训练;
具体的,在筛选得到点云数据与对应的文本描述后,由于此时的点云文本数据对具备较高的精度,因此通过其对模型进行训练便可以具有较好的效果,因此本发明实施例中可以将筛选得到的点云数据与对应的文本描述作为点云-文本转换模型的训练数据集,对点云-文本转换模型进行训练。
S204:在接收到对象的待标注点云数据时,通过训练完成的点云-文本转换模型获取待标注点云数据对应的文本描述。
具体的,训练完成后,由于模型精度得到提升,因此便可以通过模型对无标注的待标注点云数据进行标注,从而得到点云文本数据对,节省了成本且提升了效率。
其中,待标注点云数据也是针对对象而言,也即待标注点云数据是某一对象的三维数据,该对象的类别可以为多种,本发明实施例在此不再赘述。
本发明提供了一种数据对获取方法,考虑到基于现有少量数据对训练的点云-文本转换模型的预测精度较差,又结合考虑到通过多维度的相似度度量可以准确的分析模型预测得到的点云文本数据对并完成数据筛选,因此本发明中可以通过点云与文本的第一相似度度量以及图像与文本的第二相似度度量这两种维度,对由预训练的点云-文本转换模型预测得到的点云文本数据对进行筛选,并通过筛选后的点云数据及其对应的文本描述继续对模型进行训练从而提高模型精度,最终便可以通过训练好的模型获得大量的点云文本数据对,节省了人力成本的同时提升了工作效率。
作为一种实施例,通过第一相似度度量以及第二相似度度量,筛选出与对应的文本描述的相似度满足预设标准的点云数据包括:
通过第一相似度度量模型,确定出各个点云数据与对应文本描述间的第一相似度;
将第一相似度大于第一阈值的点云数据划分至第一点云集合,将第一相似度不大于第一阈值的点云数据划分至第二点云集合;
通过第二相似度度量模型,确定出各个点云数据对应的文本描述与图像数据间的第二相似度;
将第一点云集合中,第二相似度大于第二阈值的点云数据划分至第一点云子集合,第二相似度不大于第二阈值的点云数据划分至第二点云子集合;
其中,第一点云子集合中的点云数据为对应的文本描述的相似度满足预设标准的点云数据。
具体的,为了更好地展开两个维度的相似度度量,本发明实施例中采用了两个相似度度量模型,第一相似度度量模型可以确定出各个点云数据与对应文本描述间的第一相似度,而第二相似度度量模型可以确定出各个点云数据对应的文本描述与图像数据间的第二相似度,考虑到在评估点云数据与对应文本描述间的相似度时,点云数据与对应文本描述间的第一相似度最为重要,而点云数据对应的文本描述与图像数据间的第二相似度可以作为辅助参考,因此本发明实施例中首先可以将第一相似度大于第一阈值的点云数据划分至第一点云集合,将第一相似度不大于第一阈值的点云数据划分至第二点云集合,然后利用第二相似度辅助对第一点云集合进行再分割,得到第一点云子集合以及第二点云子集合,实现了对于点云数据的三份划分,按照其中的点云数据与文本描述的相似度从高到低的排序依次为第一点云子集合>第二点云子集合>第二点云集合。
其中,第一阈值以及第二阈值均可以自主设定,例如第一阈值为0.4,第二阈值为0.2等,本发明实施例在此不做限定。
当然,除了上述的筛选方式外,通过第一相似度度量以及第二相似度度量,筛选出与对应的文本描述的相似度满足预设标准的点云数据的具体方式还可以为其他多种类型,本发明实施例在此不做限定。
具体的,为了更好地对本发明实施例进行说明,请参考图13以及图14,图13为本发明提供的一种第一相似度度量模型的结构示意图;图14为本发明提供的一种第二相似度度量模型的结构示意图,具体的,在图13中,离散点云VAE(Variational Autoencoders,变分自编码器)模型是已经训练好的模型权重,该网络模型将VAE应用到点云领域,对于任意输入点云,可以完成整体点云到局部点云词汇的编码。具体如图13所示,一个点云通过点云采样可以分为N个局部点云(也即编码器输入端的4个空心矩形),对每一个局部点云,我们通过离散点云VAE模型的分词器将其编码成为一个离散编码,该离散编码则代表局部点云的具体语义,比如“5”表示车头,“7”表示车后备箱等等。点云编码器还设置了CLS(Classification,分类)可学习参数向量。CLS向量同离散点云VAE模型提取的特征拼接在一起,经过和文本编码器网络架构一致的编码器得到点云的编码特征。取点云编码特征CLS位置上对应的特征与文本编码器特征进行余弦相似度度量,点云及预打标数据的相似度打分。
具体的,在图14中,可以采用带有提示词的分类模型对下载下来的所有缩略图进行打分,图像经过patchembed(补丁嵌入)预处理操作,然后经过图像编码器得到图像编码向量,文本编码器经过提示词预处理及词嵌入操作,再经过文本编码器得到文本编码向量(注意此时(预先采集的点云对象所属的预设对象类别范围)每个类别都产生一个文本编码向量,因此对一张图像来说就产生了1200个文本向量),最后用图像编码向量和文本编码向量计算余弦相似度,计算相似度最大的值便可以得到对应图片的预打标类别,同时将该类别对应的相似度及类别更新到设置的字典中:“缩略图名称”:对应缩略图名称,“URL(Uniform Resource Locator,统一资源定位符)”:网址,“分类类别”:类别,“相似度”:分类相似度。
其中,图14中输入的各个对象类别即为预先采集的点云数据所属的预设对象类别范围中所有的对象类别,文本编码向量即为与各个输入的对象类别对应的特征编码。
当然,除了以上两种具体结构外,第一相似度度量模型以及第二相似度度量模型还可以为其他具体结构,本发明实施例在此不做限定。
作为一种实施例,将第一相似度大于第一阈值的点云数据划分至第一点云集合,将第一相似度不大于第一阈值的点云数据划分至第二点云集合之后,将筛选得到的点云数据与对应的文本描述作为点云-文本转换模型的训练数据集,对点云-文本转换模型进行训练之前,该数据对获取方法还包括:
响应于通过人机交互装置接收到的,对位于第二点云集合中的点云数据的标注指令,对第二点云集合中的各个点云数据对应的文本描述进行更新;
将筛选得到的点云数据与对应的文本描述作为点云-文本转换模型的训练数据集,对点云-文本转换模型进行训练包括:
将第一点云子集合以及更新后的第二点云集合中的数据,作为点云-文本转换模型的训练数据集,对点云-文本转换模型进行训练。
具体的,考虑到虽然第二点云集合中的点云文本数据对的准确性较差,但是毕竟点云数据的获取也耗费了成本,因此可以采用人工标注的方式对第二点云集合中的点云数据进行文本描述的标注,从而得到精准的点云文本数据对,也扩充了训练数据集的数据量,提升了模型精度。
其中,标注粒度可以自主设置,可以设置的比较细致,例如可以细致到颜色、材料、成分、纹理、口味等细节,例如针对一碗面的3D模型的文本描述可以为“含有鸡蛋及肉的麻辣味拉面”。
作为一种实施例,将第一点云子集合以及更新后的第二点云集合中的数据,作为点云-文本转换模型的训练数据集,对点云-文本转换模型进行训练包括:
在点云-文本转换模型训练过程的第一阶段,将第一点云子集合以及更新后的第二点云集合中的数据,作为点云-文本转换模型的训练数据集,对点云-文本转换模型进行训练;
在点云-文本转换模型训练过程的第二阶段,将第二点云子集合中的数据作为点云-文本转换模型的训练数据集,对点云-文本转换模型进行训练;
其中,第一阶段为训练总时长中位于前序的第一子时长,第二阶段为训练总时长中位于后序的第二子时长,第一子时长与第二子时长之和为训练总时长。
具体的,考虑到模型训练过程中,随着模型的成熟度不断提升,其学习能力也不断增长,因此若在模型训练过程靠后的时间段加入精度较低的训练数据,则反而有利于提升模型精度,因此本发明实施例中可以在点云-文本转换模型训练过程的第一阶段,将第一点云子集合以及更新后的第二点云集合中的数据,作为点云-文本转换模型的训练数据集,对点云-文本转换模型进行训练,而在点云-文本转换模型训练过程的第二阶段,将第二点云子集合中的数据作为点云-文本转换模型的训练数据集,对点云-文本转换模型进行训练,从而进一步提升了模型精度。
其中,第一子时长以及第二子时长的具体数值可以自主设定,本发明实施例在此不做限定。
作为一种实施例,将筛选得到的点云数据与对应的文本描述作为点云-文本转换模型的训练数据集,对点云-文本转换模型进行训练之后,该数据对获取方法还包括:
判断是否达到预设的迭代终止条件;
若未达到,执行通过预训练的点云-文本转换模型,转换得到预先采集的多类对象的点云数据对应的文本描述的步骤;
若达到,则结束。
具体的,为了提升训练得到的模型精度,本发明实施例可以反复对模型进行训练以及训练数据集的扩充,而为了权衡时间成本与训练效果,本发明实施例中预设了迭代终止条件,可以在对点云-文本转换模型进行训练之后,判断是否达到预设的迭代终止条件,若未达到,则可以执行通过预训练的点云-文本转换模型,转换得到预先采集的多类对象的点云数据对应的文本描述的步骤。
作为一种实施例,预设的迭代终止条件包括预设迭代总次数。
具体的,将迭代总次数作为预设的迭代终止条件可以平衡训练效果与耗时。
当然,除了预设迭代总次数外,预设的迭代终止条件还可以包括其他内容,本发明实施例在此不做限定。
作为一种实施例,点云-文本转换模型的预训练包括:
获取若干属于预设对象类别范围的原始点云数据;
响应于通过人机交互装置接收到的标注指令,为各个原始点云数据标注对应的描述同一对象的文本描述;
将各个原始点云数据及其对应的文本描述作为训练数据对点云-文本转换模型进行训练。
具体的,为了提升模型泛化能力,本发明实施例中可以对原始点云数据的类别进行设定,尽量设置较大范围的预设对象类别范围,而获取若干属于预设对象类别范围的原始点云数据的方式可以为多种,例如可以从互联网爬取等,本发明实施例在此不做限定。
其中,人机交互装置可以为多种类型,例如可以为人机交互界面等,本发明实施例在此不做限定。
作为一种实施例,获取若干属于预设对象类别范围的原始点云数据包括:
获取若干原始点云数据及其对应描述同一对象的缩略图;
根据对应的缩略图判断各个原始点云数据是否属于预设对象类别范围;
若属于,将原始点云数据保留;
若不属于,丢弃原始点云数据。
具体的,考虑到获取的原始点云数据所属的对象类别不容易把控,因此本发明实施例中欲通过点云数据对应描述同一对象的缩略图把控原始点云数据的对象类别,因此本发明实施例中可以获取若干原始点云数据及其对应描述同一对象的缩略图,然后根据对应的缩略图判断各个原始点云数据是否属于预设对象类别范围,如果不属于则可以丢弃掉该原始点云数据,属于的话则可以保留,通过该方式可以高效快捷的获取到大量属于预设对象类别范围的原始点云数据。
作为一种实施例,根据对应的缩略图判断各个原始点云数据是否属于预设对象类别范围包括:
确定出每张缩略图对应的图像编码向量分别与预设对象类别范围中各个对象类别的文本编码向量之间的相似度;
将对应的最高相似度的文本编码向量所属的对象类别,作为缩略图的对象类别;
判断每张缩略图对应的最高相似度,在缩略图所在的对象类别中由大到小的数值排序是否大于第四阈值;
若不大于,则判定缩略图对应的原始点云数据属于预设对象类别范围;
若大于,则判定缩略图对应的原始点云数据不属于预设对象类别范围。
具体的,考虑到缩略图属于图像,而预设对象类别范围中的各个对象类别则属于文本数据,因此可以通过图像与文本的相似度分析来确定缩略图对应的对象类别,因此本发明实施例中可以确定出每张缩略图对应的图像编码向量分别与预设对象类别范围中各个对象类别的文本编码向量之间的相似度,然后将对应的最高相似度的文本编码向量所属的对象类别,作为缩略图的对象类别,同时为了进一步提升类别的精度,本发明实施例中可以判断每张缩略图对应的最高相似度,在缩略图所在的对象类别中由大到小的数值排序是否大于第四阈值,如果不大于,则判定缩略图对应的原始点云数据属于预设对象类别范围,若大于,则判定缩略图对应的原始点云数据不属于预设对象类别范围,例如某张缩略图对应的最高相似度为0.5,该张缩略图所在的对象类别A中存在100张缩略图,0.5在对象类别A中所有缩略图的最高相似度排序中,排名第30位,而假设此时的第四阈值为25,那么由于30大于25,则判定该张缩略图对应的原始点云数据不属于预设对象类别范围。
具体的,第四阈值可以进行自主设定,例如可以为25,本发明实施例在此不做限定。
其中,本发明实施例中的各个阈值都可以进行自主设定,本发明实施例在此不做限定。
作为一种实施例,确定出每张缩略图对应的图像编码向量分别与预设对象类别范围中各个对象类别的文本编码向量之间的相似度包括:
通过图像编码器确定出每张缩略图对应的图像编码向量;
通过文本编码器确定出预设对象类别范围中各个对象类别的文本编码向量;
确定出每张缩略图对应的图像编码向量分别与预设对象类别范围中各个对象类别的文本编码向量之间的相似度;
其中,图像编码器具备多层归一化层。
具体的,请参考图14,图14中左侧的图像编码器具备多层归一化层,这里图像编码器的架构为transformer架构,其与传统的ViT(Vision Transformer,视觉变换器)的架构不同,这里的架构为了能够适配transformer层数较深的情形,采用了两层LayerNorm(归一化层)的架构,而文本编码器的架构则与传统的ViT结构相同,这里的transformer架构采用了两层LayerNorm原因是因为这样做可以扩展网络深度同时保持训练过程稳定。
其中,图14中的图像编码器以及文本编码器的数量可以进行自主设定,例如可以为48等,本发明实施例在此不做限定。
作为一种实施例,预设对象类别范围为大型实例分割数据集中包含的对象类别。
具体的,考虑到LVIS(Large Vocabulary Instance Segmentation,大型实例分割数据集)中包含的对象类别较多,且具有代表性,因此本发明实施例中的预设对象类别范围为大型实例分割数据集中包含的对象类别。
当然,除了LVIS中包含的对象类别外,预设对象类别范围还可以为其他具体类型,本发明实施例在此不做限定。
作为一种实施例,响应于通过人机交互装置接收到的标注指令,为各个原始点云数据标注对应的描述同一对象的文本描述之后,将各个原始点云数据及其对应的文本描述作为训练数据对点云-文本转换模型进行训练之前,该数据对获取方法还包括:
获取指定的公开点云数据集;
将各个原始点云数据及其对应的文本描述作为训练数据对点云-文本转换模型进行训练包括:
将各个原始点云数据及其对应的文本描述,以及指定的公开点云数据集作为训练数据对点云-文本转换模型进行训练。
具体的,考虑到某些公开点云数据集也可以扩充训练数据集用以提升模型精度,本发明实施例中可以获取指定的公开点云数据集,并将各个原始点云数据及其对应的文本描述,以及指定的公开点云数据集作为训练数据对点云-文本转换模型进行训练。
其中,公开点云数据集可以为多种类型,例如比较有代表性的是ShapeNet,PASCAL3D+。ShapeNet是一个丰富标注的大规模点云数据集,其中包含了55种常见的物品类别和513000个三维模型。PASCAL(过程式编程语言)3D+数据集包含了12种刚体分类,每一类超过了3000个实例,并且包含了对应的ImageNet(用于视觉对象识别软件研究的大型可视化数据库)中每一类的图像。
作为一种实施例,获取若干原始点云数据及其对应描述同一对象的缩略图包括:
通过爬虫方式,从互联网上爬取若干原始点云数据及其对应描述同一对象的缩略图。
具体的,通过爬虫方式可以高效的获得大量的原始点云数据及其对应描述同一对象的缩略图。
其中,在爬取到数据后,可以记录下相应缩略图对应点云的网络地址URL,这里使用一个字典保存相关信息:“缩略图名称”:对应缩略图名称,“URL”:网址。
当然,除了该种方式外,还可以通过其他方式获取若干原始点云数据及其对应描述同一对象的缩略图,本发明实施例在此不做限定。
作为一种实施例,该数据对获取方法还包括:
响应于通过人机交互装置接收到的修改指令,对第一阈值和/或第二阈值进行修改。
具体的,考虑到工作人员存在对于第一阈值和/或第二阈值的修改需求,因此本发明实施例中可以响应于通过人机交互装置接收到的修改指令,对第一阈值和/或第二阈值进行修改。
作为一种实施例,响应于通过人机交互装置接收到的,对位于第二点云集合中的点云数据的标注指令,对第二点云集合中的各个点云数据对应的文本描述进行更新之后,该数据对获取方法还包括:
将第一点云子集合以及更新后的第二点云集合中的数据进行存储,以便后续被调用。
具体的,考虑到获得的较为精确的文本点云数对可以用于模型训练等多种场合,因此本发明实施例中可以将第一点云子集合以及更新后的第二点云集合中的数据进行存储,以便后续被调用。
作为一种实施例,将筛选得到的点云数据与对应的文本描述作为点云-文本转换模型的训练数据集,对点云-文本转换模型进行训练包括:
将筛选得到的点云数据与对应的文本描述作为点云-文本转换模型的训练数据集,通过每次设置不同的随机参数,对点云-文本转换模型训练多次,得到与各个随机参数一一对应的多个点云-文本转换模型;
通过训练完成的点云-文本转换模型获取待标注点云数据对应的文本描述包括:
获取待标注点云数据的集合;
对于待标注点云数据集合中的每一个待标注点云数据,通过每个点云-文本转换模型得到对应的文本描述;
对于待标注点云数据集合中的每一个待标注点云数据,确定出每个待标注点云数据与待标注点云数据对应的各个文本描述的相似度;
确定出待标注点云数据集合中,每个待标注点云数据对应的所有相似度的相似度均值;
将相似度均值不大于第三阈值的待标注点云数据及其对应的文本描述删除,将相似度均值大于第三阈值的待标注点云数据及其对应的文本描述保留。
具体的,为了更好地对本发明实施例进行说明,请参考图15,图15为本发明提供的一种点云-文本转换模型的结构示意图,初始点云文件均匀采样1024个点,每个点包含6维信息,(x,y,z,r,g,b)分别表示三维坐标位置,颜色三通道值,每一维特征均归一化到[-1,1]。然后点云初始特征经过PointNet++网络(点云预处理层)提取点云特征,将特征维度映射到256维,随后经过6层点云编码器和一层文本解码器网络,最终和点云数据的文本描述数据进行交叉熵损失(也即图15中的损失函数)。在训练过程中右侧的文本编码器需要输入文本描述,而在推理过程中则无需输入,且推理过程中也无需通过损失函数进行损失度量。
其中,值的注意的是,这里的编码器网络层数和解码器网络层数在后续随着数据集量级的增大,相应的网络层数也随之加深。这里对于初始标注的3万对数据,采用了6层编码器和1层解码器。后续随着数据集量级增大,比如半自动标注结束获得10万对数据,便采用12层编码器及2层解码器。
具体的,为了进一步提升获得的点云文本数据对的精度,本发明实施例中可以通过每次设置不同的随机参数(也称随机种子),对点云-文本转换模型训练多次,得到与各个随机参数一一对应的多个点云-文本转换模型,然后便可以通过每个点云-文本转换模型对待标注点云数据集合中的每一个待标注点云数据进行推理得到对应的文本描述,也即每一个待标注点云数据可以得到X(得到的点云-文本转换模型的数量)个对应的文本描述,然后确定出待标注点云数据与其对应的每一个文本描述之间的相似度,从而得到每个待标注点云数据对应的所有相似度的相似度均值,然后将相似度均值不大于第三阈值的待标注点云数据及其对应的文本描述删除,将相似度均值大于第三阈值的待标注点云数据及其对应的文本描述保留,便实现了对于点云文本数据对的再次筛选,提升了点云文本数据对的精度。
其中,X的数量可以进行自主设定,例如可以为10等,本发明实施例在此不做限定。
具体的,待标注点云数据的集合也可以通过爬虫技术从互联网爬取,本发明实施例在此不做限定。
作为一种实施例,将筛选得到的点云数据与对应的文本描述作为点云-文本转换模型的训练数据集,通过每次设置不同的随机参数,对点云-文本转换模型训练多次,得到与各个随机参数一一对应的多个点云-文本转换模型包括:
将筛选得到的点云数据与对应的文本描述作为点云-文本转换模型的训练数据集,并将训练数据集均分为预设数量份;
通过每次设置不同的随机参数,且采用K折交叉验证的方式每次随机从预设数量份的训练数据集中确定出训练集与验证集,对点云-文本转换模型训练多次,得到与各个随机参数一一对应的多个点云-文本转换模型。
具体的,对于模型的训练方式可以采用K折交叉验证的方式,也即将筛选得到的点云数据与对应的文本描述作为点云-文本转换模型的训练数据集,并将训练数据集均分为预设数量份,然后每次采用随机参数进行训练的时候,便可以采用K折交叉验证的方式每次随机从预设数量份的训练数据集中确定出训练集与验证集,对点云-文本转换模型训练,便可以得到一个点云-文本转换模型,如此执行多次即可,通过该种方式可以使得筛选得到的点云数据与对应的文本描述的每个数据对均有机会作为训练数据参与模型训练,从而进一步提升模型精度。
其中,预设数量可以进行自主设定,例如可以为与X相等的数量等,本发明实施例在此不做限定。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。还需要说明的是,在本说明书中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者设备中还存在另外的相同要素。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其他实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
Claims (21)
1.一种基于多模态的三维内容生成方法,其特征在于,包括:
获取若干文本数据以及与所述文本数据一一对应的描述同一对象的目标模态数据,作为训练数据集;
基于所述训练数据集、文本数据编码器以及目标模态数据编码器,对所述目标模态数据编码器进行训练,以便所述目标模态数据编码器提取出的目标模态数据的数据特征与所述文本数据提取出的文本数据的数据特征位于同一目标语义空间;
通过训练后的所述目标模态数据编码器对目标模态的待处理数据进行编码,得到待处理数据特征;
根据所述待处理数据特征生成与所述待处理数据对应的三维内容;
其中,所述目标模态数据包括语音数据以及点云数据,所述目标模态数据编码器包括语音数据编码器以及点云数据编码器;
当所述目标模态数据为语音数据时,所述基于所述训练数据集、文本数据编码器以及目标模态数据编码器,对所述目标模态数据编码器进行训练具体为:
基于所述训练数据集、文本数据编码器以及语音数据编码器以及文本与语音模态的第一对比损失函数,对所述语音数据编码器进行训练;
当所述目标模态数据为点云数据时,所述基于所述训练数据集、文本数据编码器以及目标模态数据编码器,对所述目标模态数据编码器进行训练具体为:
将所述训练数据集中的目标文本数据输入文本编码器,得到所述文本数据对应的文本数据特征;
将所述训练数据集中与所述目标文本数据对应的目标点云数据输入点云数据编码器,得到所述目标点云数据对应的点云数据特征;
基于文本与点云模态的第二对比损失函数,通过所述目标点云数据对应的点云数据特征的自身内部对比,以及所述目标点云数据对应的点云数据特征与所述文本数据特征间的外部对比,对所述点云数据编码器进行训练。
2.根据权利要求1所述的基于多模态的三维内容生成方法,其特征在于,所述基于文本与点云模态的第二对比损失函数,通过所述目标点云数据对应的点云数据特征的自身内部对比,以及所述目标点云数据对应的点云数据特征与所述文本数据特征间的外部对比,对所述点云数据编码器进行训练包括:
通过多层感知器对所述目标点云数据对应的点云数据特征进行多次不同的信息丢弃,得到多个所述目标点云数据对应的经过不同信息丢弃的多个点云数据特征;
基于文本与点云模态的第二对比损失函数,通过所述目标点云数据对应的点云数据特征的自身内部对比,以及所述目标点云数据对应的点云数据特征与所述文本数据特征间的外部对比,对所述点云数据编码器进行训练;
其中,所述内部对比为:将同一所述目标点云数据对应的经过不同信息丢弃的多个点云数据特征作为正样本,将不同所述目标点云数据对应的所述点云数据特征作为负样本,对所述目标点云数据对应的点云数据特征的自身内部对比。
3.根据权利要求1所述的基于多模态的三维内容生成方法,其特征在于,所述第一对比损失函数包括:
;
其中,S表示文本模态,A表示语音模态,为文本模态与语音模态的数据对比损失,表示为文本模态的第i个样本提取的特征,/>表示语音模态的第j个样本提取的特征,Sim表示两个向量的cosine相似度,N为单一批次内的样本数量,τ为预定义的超参数,/>为语音模态的第i个样本提取的特征。
4.根据权利要求2所述的基于多模态的三维内容生成方法,其特征在于,所述第二对比损失函数包括:
;
;
;
其中,P代表点云模态,为文本模态与点云模态的对比损失,/>为所述目标点云数据对应的点云数据特征的自身内部对比的对比损失,/>为所述目标点云数据对应的点云数据特征与所述文本数据特征间的外部对比的对比损失,/>和/>是点云样本i经过两次不同的信息丢弃得到的特征向量,/>和/>是点云样本j经过两次不同的信息丢弃得到的特征向量,/>表示为文本模态的第i个样本提取的特征,λ为预设系数,N为单一批次内的样本数量,τ为预定义的超参数。
5.根据权利要求1所述的基于多模态的三维内容生成方法,其特征在于,所述文本数据编码器包括基于对比文本-图像对的预训练模型。
6.根据权利要求1所述的基于多模态的三维内容生成方法,其特征在于,所述语音数据编码器包括预训练的音频神经网络模型。
7.根据权利要求1所述的基于多模态的三维内容生成方法,其特征在于,所述通过训练后的所述目标模态数据编码器对目标模态的待处理数据进行编码,得到待处理数据特征之后,所述根据所述待处理数据特征生成与所述待处理数据对应的三维内容之前,该基于多模态的三维内容生成方法还包括:
将指定模态的待编码数据位于所述目标语义空间的数据特征作为输入,将与所述待编码数据描述同一对象的点云数据特征作为输出,通过指定模态特征与点云特征之间的第一损失函数,对第一目标扩散模型进行训练,以便将所述目标语义空间的数据特征直接映射至点云数据特征;
将所述待处理数据特征输入经过训练的所述第一目标扩散模型,得到位于所述目标语义空间的与所述待处理数据对应的目标点云特征;
所述根据所述待处理数据特征生成与所述待处理数据对应的三维内容包括:
根据所述目标点云特征生成与所述待处理数据对应的三维内容。
8.根据权利要求7所述的基于多模态的三维内容生成方法,其特征在于,所述将指定模态的待编码数据位于所述目标语义空间的数据特征作为输入,将与所述待编码数据描述同一对象的点云数据特征作为输出,通过指定模态特征与点云特征之间的第一损失函数,对第一目标扩散模型进行训练,以便将所述目标语义空间的数据特征直接映射至点云数据特征包括:
获取指定模态的待编码数据位于所述目标语义空间的数据特征、与所述待编码数据描述同一对象的点云数据特征以及与所述待编码数据描述同一对象的图像数据;
判断随机生成的随机概率是否大于预设阈值;
若大于,将所述指定模态的待编码数据位于所述目标语义空间的数据特征作为输入,将与所述待编码数据描述同一对象的点云数据特征作为输出;
若不大于,将与所述待编码数据描述同一对象的图像数据位于所述目标语义空间的数据特征,和所述指定模态的待编码数据位于所述目标语义空间的数据特征进行融合得到融合输入特征作为输入,将与所述待编码数据描述同一对象的点云数据特征作为输出;
根据确定出的输入以及输出对第一目标扩散模型进行训练,并根据指定模态特征与点云特征之间的第一损失函数判断是否所述第一目标扩散模型是否收敛;
若收敛,则训练完成;
若不收敛,执行所述获取指定模态的待编码数据位于所述目标语义空间的数据特征、与所述待编码数据描述同一对象的点云数据特征以及与所述待编码数据描述同一对象的图像数据的步骤。
9.根据权利要求8所述的基于多模态的三维内容生成方法,其特征在于,所述与所述待编码数据描述同一对象的图像数据包括:
与所述待编码数据描述同一对象的多个视角的图像数据。
10.根据权利要求8所述的基于多模态的三维内容生成方法,其特征在于,所述指定模态包括文本数据。
11.根据权利要求9所述的基于多模态的三维内容生成方法,其特征在于,所述第一损失函数包括:
;
其中,L p1为与所述待编码数据描述同一对象的点云数据特征与所述第一目标扩散模型预测的点云数据特征间的损失,t表示时间扩散第t步,Et为第t个时间扩散步的期望,T为时间扩散步的总数预设值,f prior为第一目标扩散模型,ztext表示指定模态的待编码数据位于所述目标语义空间的数据特征,z f 表示所述多个视角的图像数据对应的数据特征,zp表示与所述待编码数据描述同一对象的所述点云数据特征,表示第t个时间步加噪声的所述点云数据特征。
12.根据权利要求7所述的基于多模态的三维内容生成方法,其特征在于,所述根据所述目标点云特征生成与所述待处理数据对应的三维内容包括:
通过预先训练的点云生成网络,根据所述目标点云特征生成与所述待处理数据对应的三维内容;
其中,所述点云生成网络的预训练过程包括:
将基于训练后的所述第一目标扩散模型提取的点云特征、时间步特征以及带噪点的训练用点云特征作为输入,通过第二损失函数对第二目标扩散模型进行训练,得到点云生成网络。
13.根据权利要求12所述的基于多模态的三维内容生成方法,其特征在于,所述第二损失函数包括:
;
其中,L p2为所述训练用点云特征与所述第二目标扩散模型预测的点云数据特征间的损失,zg为基于训练后的所述第一目标扩散模型提取的点云特征,t为所述时间步特征,为所述训练用点云特征,/>为所述带噪点的所述训练用点云特征,t表示时间扩散第t步,Concat()表示向量拼接操作,Et为第t个时间扩散步的期望,T为时间扩散步的总数预设值,F为第二目标扩散模型。
14.根据权利要求13所述的基于多模态的三维内容生成方法,其特征在于,所述根据所述待处理数据特征生成与所述待处理数据对应的三维内容之后,该基于多模态的三维内容生成方法还包括:
通过上采样模型扩充得到的所述三维内容中的点云数量。
15.根据权利要求7至14任一项所述的基于多模态的三维内容生成方法,其特征在于,所述根据所述目标点云特征生成与所述待处理数据对应的三维内容之后,该基于多模态的三维内容生成方法还包括:
将当前的所述目标点云特征记录为所述待处理数据对应的三维内容的历史点云特征;
响应于对于所述三维内容的修改指令,确定所述修改指令指定的补充数据;
基于经过训练的所述第一目标扩散模型,将所述补充数据位于所述目标语义空间的数据特征转换为点云数据特征;
根据所述补充数据对应的点云数据特征与所述三维内容的历史点云特征的融合数据特征,生成三维内容。
16.根据权利要求15所述的基于多模态的三维内容生成方法,其特征在于,所述响应于对于所述三维内容的修改指令,确定所述修改指令指定的补充数据包括:
响应于对于所述三维内容的修改指令,判断所述三维内容是否被锁定;
若未被锁定,则确定所述修改指令指定的补充数据;
若被锁定,控制提示器提示所述三维内容被锁定;
该基于多模态的三维内容生成方法还包括:
根据锁操作指令对所述三维内容进行锁定或解锁操作。
17.一种基于多模态的三维内容生成装置,其特征在于,包括:
获取模块,用于获取若干文本数据以及与所述文本数据一一对应的描述同一对象的目标模态数据,作为训练数据集;
训练模块,用于基于所述训练数据集、文本数据编码器以及目标模态数据编码器,对所述目标模态数据编码器进行训练,以便所述目标模态数据编码器提取出的目标模态数据的数据特征与所述文本数据提取出的文本数据的数据特征位于同一目标语义空间;
编码模块,用于通过训练后的所述目标模态数据编码器对目标模态的待处理数据进行编码,得到待处理数据特征;
生成模块,用于根据所述待处理数据特征生成与所述待处理数据对应的三维内容;
其中,所述目标模态数据包括语音数据以及点云数据,所述目标模态数据编码器包括语音数据编码器以及点云数据编码器;
当所述目标模态数据为语音数据时,所述基于所述训练数据集、文本数据编码器以及目标模态数据编码器,对所述目标模态数据编码器进行训练具体为:
基于所述训练数据集、文本数据编码器以及语音数据编码器以及文本与语音模态的第一对比损失函数,对所述语音数据编码器进行训练;
当所述目标模态数据为点云数据时,所述基于所述训练数据集、文本数据编码器以及目标模态数据编码器,对所述目标模态数据编码器进行训练具体为:
将所述训练数据集中的目标文本数据输入文本编码器,得到所述文本数据对应的文本数据特征;
将所述训练数据集中与所述目标文本数据对应的目标点云数据输入点云数据编码器,得到所述目标点云数据对应的点云数据特征;
基于文本与点云模态的第二对比损失函数,通过所述目标点云数据对应的点云数据特征的自身内部对比,以及所述目标点云数据对应的点云数据特征与所述文本数据特征间的外部对比,对所述点云数据编码器进行训练。
18.一种基于多模态的三维内容生成设备,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如权利要求1至16任一项所述基于多模态的三维内容生成方法的步骤。
19.一种服务器,其特征在于,包括如权利要求18所述的基于多模态的三维内容生成设备。
20.一种服务器集群,其特征在于,包括至少一台如权利要求19所述的服务器。
21.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至16任一项所述基于多模态的三维内容生成方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310987823.7A CN116721221B (zh) | 2023-08-08 | 2023-08-08 | 基于多模态的三维内容生成方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310987823.7A CN116721221B (zh) | 2023-08-08 | 2023-08-08 | 基于多模态的三维内容生成方法、装置、设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116721221A CN116721221A (zh) | 2023-09-08 |
CN116721221B true CN116721221B (zh) | 2024-01-12 |
Family
ID=87866439
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310987823.7A Active CN116721221B (zh) | 2023-08-08 | 2023-08-08 | 基于多模态的三维内容生成方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116721221B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116932803B (zh) * | 2023-09-13 | 2024-01-26 | 浪潮(北京)电子信息产业有限公司 | 基于多模态预训练模型的数据集生成方法、训练方法 |
CN116910572B (zh) * | 2023-09-13 | 2024-02-09 | 浪潮(北京)电子信息产业有限公司 | 基于预训练语言模型的三维内容生成模型训练方法及装置 |
CN117422823A (zh) * | 2023-09-21 | 2024-01-19 | 北京智源人工智能研究院 | 三维点云表征模型构建方法、装置、电子设备和存储介质 |
CN117152363B (zh) * | 2023-10-30 | 2024-02-13 | 浪潮电子信息产业股份有限公司 | 基于预训练语言模型的三维内容生成方法、装置及设备 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112287939A (zh) * | 2020-10-29 | 2021-01-29 | 平安科技(深圳)有限公司 | 三维点云语义分割方法、装置、设备及介质 |
WO2021049199A1 (en) * | 2019-09-13 | 2021-03-18 | Mitsubishi Electric Corporation | System and method for a dialogue response generation system |
CN114723843A (zh) * | 2022-06-01 | 2022-07-08 | 广东时谛智能科技有限公司 | 多模态融合生成虚拟服装方法、装置、设备及存储介质 |
CN114998670A (zh) * | 2022-04-14 | 2022-09-02 | 哈尔滨工业大学重庆研究院 | 多模态信息预训练方法及系统 |
CN115115913A (zh) * | 2022-06-02 | 2022-09-27 | 北京科技大学 | 一种数据处理方法、装置、电子设备及存储介质 |
CN116050496A (zh) * | 2023-01-28 | 2023-05-02 | Oppo广东移动通信有限公司 | 图片描述信息生成模型的确定方法及装置、介质、设备 |
CN116152267A (zh) * | 2023-04-24 | 2023-05-23 | 中国民用航空飞行学院 | 基于对比性语言图像预训练技术的点云实例分割方法 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20220391755A1 (en) * | 2021-05-26 | 2022-12-08 | Salesforce.Com, Inc. | Systems and methods for vision-and-language representation learning |
CN114140603B (zh) * | 2021-12-08 | 2022-11-11 | 北京百度网讯科技有限公司 | 虚拟形象生成模型的训练方法和虚拟形象生成方法 |
CN114817612A (zh) * | 2022-04-29 | 2022-07-29 | 北京百度网讯科技有限公司 | 多模态数据匹配度计算和计算模型训练的方法、相关装置 |
-
2023
- 2023-08-08 CN CN202310987823.7A patent/CN116721221B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2021049199A1 (en) * | 2019-09-13 | 2021-03-18 | Mitsubishi Electric Corporation | System and method for a dialogue response generation system |
CN112287939A (zh) * | 2020-10-29 | 2021-01-29 | 平安科技(深圳)有限公司 | 三维点云语义分割方法、装置、设备及介质 |
CN114998670A (zh) * | 2022-04-14 | 2022-09-02 | 哈尔滨工业大学重庆研究院 | 多模态信息预训练方法及系统 |
CN114723843A (zh) * | 2022-06-01 | 2022-07-08 | 广东时谛智能科技有限公司 | 多模态融合生成虚拟服装方法、装置、设备及存储介质 |
CN115115913A (zh) * | 2022-06-02 | 2022-09-27 | 北京科技大学 | 一种数据处理方法、装置、电子设备及存储介质 |
CN116050496A (zh) * | 2023-01-28 | 2023-05-02 | Oppo广东移动通信有限公司 | 图片描述信息生成模型的确定方法及装置、介质、设备 |
CN116152267A (zh) * | 2023-04-24 | 2023-05-23 | 中国民用航空飞行学院 | 基于对比性语言图像预训练技术的点云实例分割方法 |
Non-Patent Citations (2)
Title |
---|
基于多特征的视频描述生成算法研究;曹磊;万旺根;侯丽;;电子测量技术(16);全文 * |
基于自编码器的语音情感识别方法研究;钟昕孜;廖闻剑;;电子设计工程(06);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN116721221A (zh) | 2023-09-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN116721221B (zh) | 基于多模态的三维内容生成方法、装置、设备及存储介质 | |
CN109918671B (zh) | 基于卷积循环神经网络的电子病历实体关系抽取方法 | |
CN109783666B (zh) | 一种基于迭代精细化的图像场景图谱生成方法 | |
WO2019237646A1 (zh) | 一种基于深度学习和语义分割的图像检索方法 | |
CN108961350B (zh) | 一种基于显著度匹配的画风迁移方法 | |
CN111291212A (zh) | 基于图卷积神经网络的零样本草图图像检索方法和系统 | |
CN112487812B (zh) | 一种基于边界识别的嵌套实体识别方法及系统 | |
CN102542302A (zh) | 基于分等级对象语义图的复杂目标自动识别方法 | |
CN109597998B (zh) | 一种视觉特征和语义表征联合嵌入的图像特征构建方法 | |
CN114821100B (zh) | 基于结构组稀疏网络的图像压缩感知重建方法 | |
CN111949824A (zh) | 基于语义对齐的视觉问答方法和系统、存储介质 | |
CN116911353A (zh) | 数据对获取方法、装置、设备、服务器及其集群、介质 | |
CN111210382A (zh) | 图像处理方法、装置、计算机设备和存储介质 | |
CN114529940A (zh) | 基于姿态引导的人体图像生成方法 | |
CN111161405A (zh) | 一种动物毛发三维重建方法 | |
CN114418030A (zh) | 图像分类方法、图像分类模型的训练方法及装置 | |
CN117033609A (zh) | 文本视觉问答方法、装置、计算机设备和存储介质 | |
CN114898775B (zh) | 一种基于跨层交叉融合的语音情绪识别方法及系统 | |
CN113747168A (zh) | 多媒体数据描述模型的训练方法和描述信息的生成方法 | |
CN111079691A (zh) | 一种基于双流网络的剪枝方法 | |
CN114581789A (zh) | 一种高光谱图像分类方法及系统 | |
CN116630482B (zh) | 一种基于多模态检索与轮廓引导的图像生成方法 | |
CN117634459A (zh) | 目标内容生成及模型训练方法、装置、系统、设备及介质 | |
CN117475228A (zh) | 一种基于双域特征学习的三维点云分类和分割方法 | |
CN115100107B (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 |