CN115937406A - 三维重建方法、装置、设备及存储介质 - Google Patents
三维重建方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN115937406A CN115937406A CN202211213323.XA CN202211213323A CN115937406A CN 115937406 A CN115937406 A CN 115937406A CN 202211213323 A CN202211213323 A CN 202211213323A CN 115937406 A CN115937406 A CN 115937406A
- Authority
- CN
- China
- Prior art keywords
- dimensional
- feature
- coding sequence
- target
- sequence
- 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.)
- Pending
Links
Images
Landscapes
- Image Processing (AREA)
Abstract
本申请提供了一种三维重建方法、装置、设备及存储介质,其中,该方法包括:对二维图像进行特征提取得到特征图,对多张特征图进行多视角特征融合和跨视角对齐,得到对齐后的具有全局信息的特征编码序列,并根据对齐后的特征编码序列得到三维关键点,根据特征编码序列、三维关键点和预设的三维模型顶点集合进行拼接,得到输入序列,并根据输入序列得到目标对象在目标视角下的三维模型。多视角特征融合可以使生成的特征编码序列具备全局上下文信息,跨视角对齐可以保证得到的特征编码序列与目标对象强相关,降低无关噪声的占比,确保各个视角下的特征编码的语义一致性,实现不同视角下的模型的准确转化,从而提高三维建模的效率。
Description
技术领域
本申请涉及三维模型重建技术领域,具体而言,涉及一种三维重建方法、装置、设备及存储介质。
背景技术
人机交互技术在智能化的场景中已经得到了很多应用,而基于图像的三维人体重建作为人机交互行为感知中的关键一环也成为了近年来研究的热点,该任务的主要目的是通过视觉感知设备采集的图像数据对人体进行三维建模,获取目标主体的数字化表示,进而交由下游任务进行分析和处理。
目前已经出现了基于图像进行三维人体建模的方法,但是由于三维姿态的多解性,导致模型难以取得符合现实的重建结果,且真实场景复杂、人体姿态多样,例如普遍存在的人像遮挡现象,也对三维人体重建方法造成了巨大的困扰。
因此,现有的三维人体建模方法存在准确率和效率较低的问题。
发明内容
本申请的目的在于,针对上述现有技术中的不足,提供一种三维重建方法、装置、设备及存储介质,以解决现有技术中三维人体建模方法存在准确率和效率较低的问题。
为实现上述目的,本申请实施例采用的技术方案如下:
第一方面,本申请一实施例提供了一种三维重建方法,所述方法包括:
获取目标对象在多个视角下的二维图像;
将所述多个视角下的二维图像输入预先训练得到的三维重建网络模型,在所述三维重建网络模型中对各所述二维图像进行特征提取,得到各所述二维图像对应的特征图;
对各所述特征图进行多视角特征融合,得到特征编码序列;
对所述特征编码序列进行跨视角对齐,得到对齐后的特征编码序列,所述对齐后的特征编码序列为目标视角对应的特征编码序列;
根据所述对齐后的特征编码序列,得到所述目标视角下的三维关键点;
将所述特征编码序列、所述三维关键点和预设的三维模型顶点集合进行拼接,得到输入序列,并根据所述输入序列得到所述目标对象在所述目标视角下的三维模型顶点集合,所述目标对象在所述目标视角下的三维模型顶点集合作为所述目标对象在所述目标视角下的三维模型进行输出。
可选的,所述三维重建网络模型中包括:多头注意力机制模块以及特征细化模块;
所述对各所述特征图进行多视角特征融合,得到特征编码序列,包括:
由所述多头注意力机制模块对各所述特征图中的上下文关系信息进行建模,得到具有上下文信息的编码序列;
将所述具有上下文信息的编码序列输入所述特征细化模块中进行标准化处理,得到所述特征编码序列。
可选的,所述对所述特征编码序列进行跨视角对齐,得到对齐后的特征编码序列,包括:
对所述特征编码序列中的关键点信息进行对齐,得到所述对齐后的特征编码序列。
可选的,所述将所述特征编码序列、所述三维关键点和预设顶点集合拼接,得到输入序列,包括:
将所述三维关键点和预设顶点集合拼接,得到初始输入序列;
将所述特征编码序列与所述初始输入序列拼接,得到所述输入序列。
可选的,根据所述输入序列得到所述目标对象在所述目标视角下的三维模型顶点集合,包括:
基于预设的中转超参数,对所述输入序列中的三维空间坐标进行上采样处理,得到所述目标对象在所述目标视角下的三维模型顶点集合。
可选的,所述方法还包括:
获取至少一个视角对应的相机的参数,并根据各所述参数确定各所述相机之间的转换矩阵;
根据所述转换矩阵将所述目标视角下的三维模型转换成所述转换矩阵对应的视角下的三维模型。
可选的,所述方法还包括:
基于目标损失函数以及预设的样本对初始模型进行训练,得到所述三维重建网络模型,其中,所述目标损失函数包括:第一子函数、第二子函数、第三子函数以及第四子函数,所述第一子函数、第二子函数、第三子函数以及所述第四子函数通过对应的权重进行叠加得到所述目标损失函数,所述第一子函数用于计算关键点的损失,所述第二子函数用于计算三维模型顶点的损失,所述第三子函数用于计算跨视角对齐的损失,所述第四子函数用于计算三维模型表面平滑度的损失。
第二方面,本申请另一实施例提供了一种三维重建装置,所述装置包括:
获取模块,用于:获取目标对象在多个视角下的二维图像;
特征提取模块,用于:将所述多个视角下的二维图像输入预先训练得到的三维重建网络模型,在所述三维重建网络模型中对各所述二维图像进行特征提取,得到各所述二维图像对应的特征图;
特征融合模块,用于:对各所述特征图进行多视角特征融合,得到特征编码序列;
跨视角对齐模块,用于:对所述特征编码序列进行跨视角对齐,得到对齐后的特征编码序列,所述对齐后的特征编码序列为目标视角对应的特征编码序列;
生成模块,用于:根据所述对齐后的特征编码序列,得到所述目标视角下的三维关键点;
输出模块,用于:将所述特征编码序列、所述三维关键点和预设的三维模型顶点集合进行拼接,得到输入序列,并根据所述输入序列得到所述目标对象在所述目标视角下的三维模型顶点集合,所述目标对象在所述目标视角下的三维模型顶点集合作为所述目标对象在所述目标视角下的三维模型进行输出。
可选的,所述三维重建网络模型中包括:多头注意力机制模块以及特征细化模块;
所述特征融合模块还用于:
由所述多头注意力机制模块对各所述特征图中的上下文关系信息进行建模,得到具有上下文信息的编码序列;
将所述具有上下文信息的编码序列输入所述特征细化模块中进行标准化处理,得到所述特征编码序列。
可选的,所述跨视角对齐模块,还用于:
对所述特征编码序列中的关键点信息进行对齐,得到所述对齐后的特征编码序列。
可选的,所述输出模块,还用于:
将所述三维关键点和预设顶点集合拼接,得到初始输入序列;
将所述特征编码序列与所述初始输入序列拼接,得到所述输入序列。
可选的,所述输出模块,还用于:
基于预设的中转超参数,对所述输入序列中的三维空间坐标进行上采样处理,得到所述目标对象在所述目标视角下的三维模型顶点集合。
第三方面,本申请另一实施例提供了一种电子设备,包括:处理器、存储介质和总线,所述存储介质存储有所述处理器可执行的机器可读指令,当电子设备运行时,所述处理器与所述存储介质之间通过总线通信,所述处理器执行所述机器可读指令,以执行如上述三维重建方法的步骤。
第四方面,本申请另一实施例提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器运行时执行如上述三维重建方法的步骤。
本申请的有益效果是:通过对多个视角下的图像进行特征提取和多视角特征融合,可以使生成的特征编码序列具备全局上下文信息,通过获取多视角的图像,可以提高生成的三维模型的准确率,通过跨视角对齐可以将各视角下的目标对象的关键点信息对齐,从而保证得到的特征编码序列与目标对象强相关,降低无关噪声的占比,确保各个视角下的特征编码的语义一致性,实现不同视角下的模型的准确转化,从而提高三维建模的效率。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1示出了本申请实施例提供的一种应用场景的示意图;
图2示出了本申请实施例提供的一种三维重建方法的流程图;
图3示出了本申请实施例提供的一种三维重建网络模型工作的示意图;
图4示出了本申请实施例提供的一种得到特征编码序列的流程图;
图5示出了本申请实施例提供的一种得到输入序列的流程图;
图6示出了本申请实施例提供的又一种三维重建方法的流程图;
图7示出了本申请实施例提供的一种三维重建装置的结构示意图;
图8示出了本申请实施例提供的一种电子设备的结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,应当理解,本申请中附图仅起到说明和描述的目的,并不用于限定本申请的保护范围。另外,应当理解,示意性的附图并未按实物比例绘制。本申请中使用的流程图示出了根据本申请的一些实施例实现的操作。应该理解,流程图的操作可以不按顺序实现,没有逻辑的上下文关系的步骤可以反转顺序或者同时实施。此外,本领域技术人员在本申请内容的指引下,可以向流程图添加一个或多个其他操作,也可以从流程图中移除一个或多个操作。
另外,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
需要说明的是,本申请实施例中将会用到术语“包括”,用于指出其后所声明的特征的存在,但并不排除增加其它的特征。
随着人工智能领域中计算机视觉的迅速发展,如何利用计算机视觉实现高质量的人机交互已经成为了研究的热点,基于图像的三维人体重建技术是通过视觉感知设备采集的图像数据对人体进行三维建模,获取目标主体的数字化表示,进而交由下游任务进行分析和处理。
目前已经出现了基于图像进行三维人体建模的方法,但是由于三维姿态的多解性,导致模型难以取得符合现实的重建结果,且真实场景复杂、人体姿态多样,例如普遍存在的人像遮挡现象,也对三维人体重建方法造成了巨大的困扰。
因此,如何从图像中稳定且准确地重建出三维人体模型是实现高交互性智能体的关键问题之一。
基于上述问题,本申请提出一种三维重建方法,可以应用于三维人体重建场景下的三维重建网络模型中,执行主体例如可以是电子设备,通过对多视角的图像进行分析建模,将二维图像到三维建模的多解性和自然场景的复杂性对模型性能的影响尽可能降低,从而提高模型建模的效率和准确率。
图1是本申请给出的一种应用场景的示意图,如图1所示,用户可以将同一时刻不同视角下目标对象的多张二维图像输入三维重建网络模型中,三维重建网络模型中可以根据多张输入图像分析重建,得到目标对象在指定视角下的三维模型。
接下来结合图2,对本申请的三维重建方法作进一步说明,如图2所示,该方法包括:
S201:获取目标对象在多个视角下的二维图像。
可选的,目标对象可以是需要进行三维建模的人,或是其他生物或非生物,本申请实施例中以对人体进行三维建模作为示例,但不应以此为限制,本申请的三维重建方法可以应用于任何需要进行三维建模的对象。
可选的,可以在目标对象周围部署多个相机以获取目标对象同一时刻下多个视角的二维图像。
S202:将多个视角下的二维图像输入预先训练得到的三维重建网络模型,在三维重建网络模型中对各二维图像进行特征提取,得到各二维图像对应的特征图。
可选的,预先训练得到的三维重建网络模型可以根据多张二维图像进行图像中目标物体的三维建模,技术人员可以预先根据大量样本对该模型进行训练,以提高模型使用时的可靠度。
可选的,三维重建网络模型可以对输入的多张二维图像进行特征提取,示例性的,可以采用特征提取网络对多张输入的二维图像进行特征提取,得到多张二维图像一一对应的特征图。
S203:对各特征图进行多视角特征融合,得到特征编码序列。
可选的,三维重建网络模型可以对各特征图进行多视角特征融合,得到特征编码序列。
可选的,目标对象为人体时,多视角特征融合可以对上述S202步骤得到的多张特征图进行处理,得到含有全局视角信息和人体语义信息的特征编码序列。
可选的,特征编码序列可以表征目标对象在多个视角下的图像特征,并且该特征编码序列中可以包括目标对象的特征,以人体建模为例,该特征编码序列可以表征不同视角下的图像特征,且特征编码序列中可以包括人体的姿态和体型信息。
S204:对特征编码序列进行跨视角对齐,得到对齐后的特征编码序列,对齐后的特征编码序列为目标视角对应的特征编码序列。
需要说明的是,上述S203步骤中得到的目标对象的特征编码序列还只是对多视角图像的整合,缺少足够的约束以保证建模的关注点集中在目标对象上,而不是背景或其他与目标对象无关的区域,因此直接采用上述特征编码序列进行建模会存在很大的噪声,导致建模精确度低,由此,本步骤中通过跨视角对齐这一中间任务来降低建模过程中无关信息的占比。
可选的,跨视角对齐可以是将特征编码序列中各个视角下的目标对象对齐,使得每个视角下模型关注的重点都在目标对象上,并基于对齐后的各视角下的特征图得到对齐后的特征编码序列。
可选的,目标视角可以是用户确定的多个视角中的任一视角,对齐后的特征编码序列可以是用户指定的任一视角下的对齐后的特征编码序列。
S205:根据对齐后的特征编码序列,得到目标视角下的三维关键点。
可选的,三维重建网络模型可以根据对齐后的目标视角下的特征编码序列,得到目标视角下的目标对象的三维关键点。
可选的,三维关键点可以是表征目标对象姿态的多个三维关键点。
示例性的,当目标对象为人体时,三维关键点可以是人体骨骼点模型中指定的关键点的三维坐标,例如可以包括人体肘关节、膝关节等描述人体姿态的关键点。
可选的,根据对齐后的特征编码序列,得到目标视角下的三维关键点,例如可以是将对齐后的特征编码序列输入一个全连接网络,对该序列进行层次化降维,直至输出关键点的三维坐标。
S206:将特征编码序列、三维关键点和预设的三维模型顶点集合进行拼接,得到输入序列,并根据输入序列得到目标对象在目标视角下的三维模型顶点集合,目标对象在目标视角下的三维模型顶点集合作为目标对象在目标视角下的三维模型进行输出。
可选的,预设的三维模型顶点集合可以是目标对象的预设的顶点模型,示例性的,目标对象为人体时,预设的三维模型顶点集合可以是人体静默状态下的431顶点模型。
可选的,目标对象在目标视角下的三维模型顶点集合例如可以是指定视角下的人体表面顶点集合。
可选的,特征编码序列可以是目标视角对应的特征编码序列,三维重建网络模型可以将特征编码序列、三维关键点和预设的三维模型顶点集合进行拼接,得到输入序列,该输入序列中可以包括目标对象的三维空间位置信息,根据输入序列可以得到目标对象在目标视角下的三维模型顶点集合,三维重建网络模型对该三维模型顶点集合进行显示可以得到目标对象在指定视角下的三维模型。
需要注意的是,上述S202-S206步骤都可以是在三维重建网络模型中进行。
在本申请实施例中,三维重建网络模型可以对目标对象在同一时刻不同视角下的二维图像进行特征提取,得到特征图,对多张特征图进行多视角特征融合和跨视角对齐,得到具有全局信息的目标视角下对齐后的特征编码序列,并根据对齐后的特征编码序列得到三维关键点,最后根据特征编码序列、三维关键点和预设的三维模型顶点集合进行拼接,得到输入序列,并根据输入序列得到目标对象在目标视角下的三维模型。通过对多个视角下的图像进行特征提取和多视角特征融合,可以使生成的特征编码序列具备全局上下文信息,通过获取多视角的图像,可以提高生成的三维模型的准确率,通过跨视角对齐可以将各视角下的目标对象的关键点信息对齐,从而保证得到的特征编码序列与目标对象强相关,降低无关噪声的占比,确保各个视角下的特征编码的语义一致性,实现不同视角下的模型的准确转化,从而提高三维建模的效率。
如图3所示,是本申请实施例给出的一种三维重建网络模型工作的示意图,其中,三维重建网络模型302中包括多视角特征编码器、多视角特征解码器以及转换编码器,图中301部分的多视角特征编码器和多视角特征解码器用于进行多视角特征融合,上述三维重建网络模型中可以包括:多头注意力机制模块以及特征细化模块,多头注意力机制模块和特征细化模块可以都存在于多视角特征编码器和多视角特征解码器中。
接下来对上述对各特征图进行多视角特征融合,得到特征编码序列的步骤进行说明,如图4所示,上述S203步骤包括:
S401:由多头注意力机制模块对各特征图中的上下文关系信息进行建模,得到具有上下文信息的编码序列。
可选的,多头注意力机制模块可以是包括多头注意力机制的转换编码器和转换解码器,参照图3,例如可以是包括多头注意力机制的多视角特征编码器和多视角特征解码器。
多视角特征编码器可以将输入的特征图编码建立关联,与之对应的还有多视角特征解码器,可以将建立关联的特征图输出为编码序列。
以下是对由多头注意力机制模块对各特征图中的上下文信息建模得到编码序列的举例说明。
示例性的,特征提取网络输出的各特征图可以输入多头注意力机制模块生成编码序列,在多视角特征编码器中通过多头注意力机制对图像特征上下文关系进行建模。需要注意的是,由于特征图原始通道数过高,会造成巨大的计算量,进而影响模型训练和运行效率,因此可以先通过全连接层对其维度和形状进行调整,该过程可由下式(1)表示:
X=Reshape(F) WX={x1,x2,…,xL} (1)
其中F为调整前的图像特征编码序列,X为维度调整后的图像特征编码序列,由L个Token构成,其中每个Token的维度为d,Token即式中的x,是可以人为设置的超参数。通过这一投影过程,不仅能够有效降低模型的计算量,也在编码序列变换的过程中增强了模型的表达能力。
接下来,序列X可以通过与一个可学习的参数矩阵相乘来实现线性变换,从而得到注意力机制中最为重要的三元组(Q,K,V),分别为查询序列、键序列和值序列。该三元组可以会作为转换编码器或转换解码器的输入,用于完成序列的变换过程。需要注意的是,本申请采用了多头注意力机制来进行上下文关系的提取。以三元组中的查询序列Q为例,其形式化表示可以如下式(2)所示:
其中,Q为三元组中的查询序列,h为特征维度的子集个数,L为上式(1)中的Token个数,d为每个Token的维度,根据上式(2)可知,多头注意力机制实际上就是把传统注意力机制中的特征维度拆分为h个子集。对于序列中的每一个子集,依旧是通过对输入序列X进行线性变换得到的,该过程和由序列F得到序列X的方式相仿,同样可以按照下式(3)进行计算。
上述映射关系能够让模型从X所对应的特征空间扩展到三元组对应的更大的特征空间,从而提高模型的拟合能力。并且,多头注意力机制将特征进行拆分的操作能够让多视角特征编码器和多视角特征解码器从输入序列的不同子空间中提取特征,进而获得更加准确的关系建模结果。
在得到三元组(Q,K,V)作为正式的输入序列后,多头注意力机制可以在其上使用点乘来进行“查询-匹配-取值”的操作,然后将不同子空间的计算结果拼接起来,最终输出具有上下文信息的特征编码序列Z。该过程可以通过下式(4)进行表示。
S402:将具有上下文信息的编码序列输入特征细化模块中进行标准化处理,得到特征编码序列。
可选的,在得到具有上下文信息的编码序列后,三维重建网络模型可以将该序列输入特征细化模块中,对编码序列中的特征信息作进一步的细化,具体的流程可以如下式(5)所示。
其中LayerNorm(·)可以对序列内部的特征维度进行标准化,让模型输出值保持在激活函数中梯度变化较大的区域。Dropout(·)可以在三维重建网络模型训练过程中对刻意按照一定的比例让某些神经元失效,从而增强模型的鲁棒性,在测试时能够拥有更加稳定和优异的性能表现。
值得注意的是,上述多头注意力机制模块和特征细化模块可以存在于图3中的多视角特征编码器和多视角特征解码器中,在多视角特征编码器中,序列X可以是由图像特征编码变换得到,在多视角特征解码器中,序列X可以是人为设定的可学习参数。
在本申请实施例中,通过对多视角的特征图采用多头注意力机制进行上下文信息的建模,并对得到的具有上下文信息的编码序列进行标准化处理,使得得到的特征编码序列具有上下文的信息,从而提高后续根据该序列建模的准确率。
继续参照图4,在进行多视角特征融合之后,多视角特征解码器后面还可以包括一个转换编码器,用于根据输入序列、预设顶点集合以及三维关键点进行三维建模,得到目标对象在目标视角下的三维模型。
上述S204步骤中,对特征编码序列进行跨视角对齐,得到对齐后的特征编码序列,包括:
对特征编码序列中的关键点信息进行对齐,得到对齐后的特征编码序列。
可选的,三维重建网络模型可以根据特征编码序列得到其中的关键点信息,关键点信息例如可以是人体的骨骼点,或是预设的关键点。
需要说明的是,特征编码序列中包括多个视角下的关键点信息,但由于目标对象在多视角下的特征图中位置可能并不相同,因此可以通过跨视角对齐,将各个特征图中的关键点信息对齐,可以理解为将各个视角下的特征图中模型重点关注的部分都对齐到目标对象上,从而得到对齐后的特征图,基于对齐后的特征图,模型就可以获知对齐后的编码序列。
值得注意的是,此处对齐后的特征编码序列可以是任一指定视角下的特征编码序列。
接下来对上述将特征编码序列、三维关键点和预设顶点集合拼接,得到输入序列的步骤进行说明,如图5所示,上述S206步骤包括:
S501:将三维关键点和预设顶点集合拼接,得到初始输入序列。
可选的,预设顶点集合例如可以是静默状态下的人体431顶点模型,三维关键点可以是上述S205步骤得到的目标视角下的三维关键点,将三维关键点和预设顶点集合拼接,可以是将三维关键点的坐标与顶点模型的顶点坐标在数量维度上进行连接,作为输入序列的基本模板,即初始输入序列。
S502:将特征编码序列与初始输入序列拼接,得到输入序列。
可选的,特征编码序列可以是对齐后的目标视角下的特征编码序列,将特征编码序列与初始输入序列拼接,可以是将上述S501步骤得到的初始输入序列与特征编码序列在通道数维度上进行拼接,得到的输入序列。
示例性的,上述构造输入序列的步骤可以由下式(6)表示:
其中即为三维关键点与预设顶点集合中的顶点坐标,为线性变换后的特征编码序列,特征编码序列的长度和人体表面顶点的个数可能并不一致,因此可以对其进行线性变换,以使得特征编码序列的长度和人体表面顶点的个数对齐。
在本申请实施例中,通过将三维关键点与预设顶点集合进行拼接,再将拼接后得到的初始输入序列和特征编码序列进行拼接,可以增强目标对象的姿态信息,提高后续建模的准确性。
以下是对上述根据输入序列得到目标对象在目标视角下的三维模型顶点集合的步骤说明,上述S206步骤包括:
基于预设的中转超参数,对输入序列中的三维空间坐标进行上采样处理,得到目标对象在目标视角下的三维模型顶点集合。
可选的,输入序列中可以得到目标对象在目标视角下的顶点坐标,需要明确的是,输入序列表征的只是目标对象的表面顶点子集,对输入序列进行上采样处理,可以得到目标对象表面顶点的全集,从而得到目标对象在目标视角下的三维模型。
可选的,在得到具有三维空间位置信息的输入序列之后,模型可以通过一个含有全连接网络的多层Transformer Encoder对具有几何信息的输入序列不断进行细化,得到目标对象表面顶点子集的三维空间坐标。随后通过上采样操作将其恢复到完整的表面顶点集合,即可得到指定主视角下的三维人体模型作为预测结果。
可选的,预设的中转超参数可以在上采样过程中将预测出的目标对象表面顶点子集平滑的过渡到全体顶点集合,从而提高生成的模型的质量。
本申请实施例中,在得到目标视角下的三维模型之后,还可以根据目标视角的三维模型得到任一视角下的三维模型,如图6所示,本申请的三维重建方法还包括:
S601:获取至少一个视角对应的相机的参数,并根据各参数确定各相机之间的转换矩阵。
可选的,在上述S201步骤获取多视角的输入图像之前,可以先对相机进行相机标定,从而获取各视角的相机参数,并确定每个相机与其他相机之间的转换矩阵。
S602:根据转换矩阵将目标视角下的三维模型转换成转换矩阵对应的视角下的三维模型。
可选的,三维重建网络模型可以根据相机之间的转换矩阵,将目标视角下的三维模型转换成转换矩阵对应的视角下的三维模型。
获取相机参数之后,本申请实施例中,三维重建网络模型还可以对各视角下的相机内参进行预测,从而实现三维关键点到二维关键点的转换,转换的过程可以如下式(7)所示。
其中Π表示3D空间向2D平面变化的投影映射,在本课题中采用的是弱透视投影模型;Ki则表示第i个视角所对应相机的内参;Ri是该相机标定时确定的旋转矩阵,是三维关键点,值得注意的是,在一些情况下,由于数据预处理时为了使目标对象位于图像正中,会对图像进行裁剪,因此会导致相机内参失效,但图像预处理并不会影响到相机外参的正确性,因此,本申请实施例可以采用相机外参来进行不同视角下的目标对象的模型转换。
在三维重建网络模型的训练阶段,本申请的三维重建方法还包括:
基于目标损失函数以及预设的样本对初始模型进行训练,得到三维重建网络模型,其中,目标损失函数包括:第一子函数、第二子函数、第三子函数以及第四子函数,第一子函数、第二子函数、第三子函数以及第四子函数通过对应的权重进行叠加得到目标损失函数,第一子函数用于计算关键点的损失,第二子函数用于计算三维模型顶点的损失,第三子函数用于计算跨视角对齐的损失,第四子函数用于计算三维模型表面平滑度的损失。
可选的,预设的样本例如可以是不同时刻各视角下的已标注的二维图像。
示例性的,目标损失函数的形式化表达例如可以是:
其中可以是上述的第一子函数,表示模型预测的人体关键点位置和真实值之间的偏差;可以是上述的第二子函数,用于表示预测的三维人体表面顶点和其在空间中真实位置之间的偏差;可以是上述的第三子函数,是跨视角对齐这一中间任务为模型设置的几何约束的数值化表示;可以是上述的第四子函数,是为了提高非参数化方法所输出人体三维体积模型表面平滑度而设计的正则项;其余的系数四元组(α,β,γ,μ)可以理解为来自以上四个方面的损失值对模型参数的约束力度。
可选的,第一子函数可以用于计算模型预测的关键点和样本标注的真实关键点之间的损失值,示例性的,损失值例如可以是模型预测关键点和数据集标注的真实关键点之间的平均一阶距离。
示例性的,第一子函数的计算过程可以如下式(8)所示:
其中均为模型的预测值,而则是预设的样本中标注的真实值,K为关键点的个数。在计算关键点损失函数时,因为预测关键点和真实关键点之间的一阶距离总和与关键点数量是成正比的,所以可以首先确定关键点个数,然后再求出均值作为最终的损失值。
可选的,第二子函数可以用于计算计算模型预测的顶和样本标注的真实顶点之间的损失值。
示例性的,第二子函数的计算过程可以如下式(9)所示:
可选的,第三子函数用于计算跨视角对齐的损失,也是对具有上下文信息的特征编码序列进行约束,具体的约束可以分为以下三方面:
对三维重建网络模型训练阶段生成的三维模型表面的各个子三角面方向进行约束,计算所有预测得到三角面在朝向上是否符合预期,如果不符合预期,则将其误差值计入损失值来对模型参数进行优化。
对三维重建网络模型训练阶段生成的三维模型表面顶点之间所有的连接边的大小进行约束。
基于拉普拉斯损失构造的一致性约束,即计算顶点与其真实值之间的偏差,并根据偏差超出预期的顶点与其真实值之间的误差值对三维重建网络模型进行优化。
可选的,第四子函数用于计算三维模型表面平滑度的损失,示例性的,第四子函数可以是预设的正则项。
基于同一发明构思,本申请实施例中还提供了与三维重建方法对应的三维重建装置,由于本申请实施例中的装置解决问题的原理与本申请实施例上述三维重建方法相似,因此装置的实施可以参见方法的实施,重复之处不再赘述。
参照图7所示,为本申请实施例提供的一种三维重建装置的示意图,所述装置包括:获取模块701、特征提取模块702、特征融合模块703、跨视角对齐模块704、生成模块705以及输出模块706,其中:
获取模块701,用于:获取目标对象在多个视角下的二维图像;
特征提取模块702,用于:将多个视角下的二维图像输入预先训练得到的三维重建网络模型,在三维重建网络模型中对各二维图像进行特征提取,得到各二维图像对应的特征图;
特征融合模块703,用于:对各特征图进行多视角特征融合,得到特征编码序列;
跨视角对齐模块704,用于:对特征编码序列进行跨视角对齐,得到对齐后的特征编码序列,对齐后的特征编码序列为目标视角对应的特征编码序列;
生成模块705,用于:根据对齐后的特征编码序列,得到目标视角下的三维关键点;
输出模块706,用于:将特征编码序列、三维关键点和预设的三维模型顶点集合进行拼接,得到输入序列,并根据输入序列得到目标对象在目标视角下的三维模型顶点集合,目标对象在目标视角下的三维模型顶点集合作为目标对象在目标视角下的三维模型进行输出。
可选的,三维重建网络模型中包括:多头注意力机制模块以及特征细化模块;
可选的,特征融合模块703还用于:
由多头注意力机制模块对各特征图中的上下文关系信息进行建模,得到具有上下文信息的编码序列;
将具有上下文信息的编码序列输入特征细化模块中进行标准化处理,得到特征编码序列。
可选的,跨视角对齐模块704,还用于:
对特征编码序列中的关键点信息进行对齐,得到对齐后的特征编码序列。
可选的,输出模块706,还用于:
将三维关键点和预设顶点集合拼接,得到初始输入序列;
将特征编码序列与初始输入序列拼接,得到输入序列。
可选的,输出模块706,还用于:
基于预设的中转超参数,对输入序列中的三维空间坐标进行上采样处理,得到目标对象在目标视角下的三维模型顶点集合。
可选的,三维重建装置还可以包括转换模块,转换模块用于:
获取至少一个视角对应的相机的参数,并根据各参数确定各相机之间的转换矩阵;
根据转换矩阵将目标视角下的三维模型转换成转换矩阵对应的视角下的三维模型。
可选的,三维重建装置中还可以包括训练模块,训练模块用于:
基于目标损失函数以及预设的样本对初始模型进行训练,得到三维重建网络模型,其中,目标损失函数包括:第一子函数、第二子函数、第三子函数以及第四子函数,第一子函数、第二子函数、第三子函数以及第四子函数通过对应的权重进行叠加得到目标损失函数,第一子函数用于计算关键点的损失,第二子函数用于计算三维模型顶点的损失,第三子函数用于计算跨视角对齐的损失,第四子函数用于计算三维模型表面平滑度的损失。
关于装置中的各模块的处理流程、以及各模块之间的交互流程的描述可以参照上述方法实施例中的相关说明,这里不再详述。
本申请实施例中,三维重建网络模型可以对目标对象在同一时刻不同视角下的二维图像进行特征提取,得到特征图,对多张特征图进行多视角特征融合和跨视角对齐,得到具有全局信息的目标视角下对齐后的特征编码序列,并根据对齐后的特征编码序列得到三维关键点,最后根据特征编码序列、三维关键点和预设的三维模型顶点集合进行拼接,得到输入序列,并根据输入序列得到目标对象在目标视角下的三维模型。通过对多个视角下的图像进行特征提取和多视角特征融合,可以使生成的特征编码序列具备全局上下文信息,通过获取多视角的图像,可以提高生成的三维模型的准确率,通过跨视角对齐可以将各视角下的目标对象的关键点信息对齐,从而保证得到的特征编码序列与目标对象强相关,降低无关噪声的占比,确保各个视角下的特征编码的语义一致性,实现不同视角下的模型的准确转化,从而提高三维建模的效率。
本申请实施例还提供了一种电子设备,如图8所示,为本申请实施例提供的电子设备结构示意图,包括:处理器81、存储器82、和总线。所述存储器82存储有所述处理器81可执行的机器可读指令(比如,图7中的装置中获取模块701、特征提取模块702、特征融合模块703、跨视角对齐模块704、生成模块705以及输出模块706对应的执行指令等),当计算机设备运行时,所述处理器81与所述存储器82之间通过总线通信,所述机器可读指令被所述处理器61执行时执行上述三维重建方法的处理。
本申请实施例还提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行上述三维重建方法的步骤。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统和装置的具体工作过程,可以参考方法实施例中的对应过程,本申请中不再赘述。在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个模块或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或模块的间接耦合或通信连接,可以是电性,机械或其它的形式。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,RandomAccess Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。
Claims (10)
1.一种三维重建方法,其特征在于,包括:
获取目标对象在多个视角下的二维图像;
将所述多个视角下的二维图像输入预先训练得到的三维重建网络模型,在所述三维重建网络模型中对各所述二维图像进行特征提取,得到各所述二维图像对应的特征图;
对各所述特征图进行多视角特征融合,得到特征编码序列;
对所述特征编码序列进行跨视角对齐,得到对齐后的特征编码序列,所述对齐后的特征编码序列为目标视角对应的特征编码序列;
根据所述对齐后的特征编码序列,得到所述目标视角下的三维关键点;
将所述特征编码序列、所述三维关键点和预设的三维模型顶点集合进行拼接,得到输入序列,并根据所述输入序列得到所述目标对象在所述目标视角下的三维模型顶点集合,所述目标对象在所述目标视角下的三维模型顶点集合作为所述目标对象在所述目标视角下的三维模型进行输出。
2.根据权利要求1所述的方法,其特征在于,所述三维重建网络模型中包括:多头注意力机制模块以及特征细化模块;
所述对各所述特征图进行多视角特征融合,得到特征编码序列,包括:
由所述多头注意力机制模块对各所述特征图中的上下文关系信息进行建模,得到具有上下文信息的编码序列;
将所述具有上下文信息的编码序列输入所述特征细化模块中进行标准化处理,得到所述特征编码序列。
3.根据权利要求1所述的方法,其特征在于,所述对所述特征编码序列进行跨视角对齐,得到对齐后的特征编码序列,包括:
对所述特征编码序列中的关键点信息进行对齐,得到所述对齐后的特征编码序列。
4.根据权利要求1所述的方法,其特征在于,所述将所述特征编码序列、所述三维关键点和预设顶点集合拼接,得到输入序列,包括:
将所述三维关键点和预设顶点集合拼接,得到初始输入序列;
将所述特征编码序列与所述初始输入序列拼接,得到所述输入序列。
5.根据权利要求1所述的方法,其特征在于,根据所述输入序列得到所述目标对象在所述目标视角下的三维模型顶点集合,包括:
基于预设的中转超参数,对所述输入序列中的三维空间坐标进行上采样处理,得到所述目标对象在所述目标视角下的三维模型顶点集合。
6.根据权利要求1所述的方法,其特征在于,所述方法还包括:
获取至少一个视角对应的相机的参数,并根据各所述参数确定各所述相机之间的转换矩阵;
根据所述转换矩阵将所述目标视角下的三维模型转换成所述转换矩阵对应的视角下的三维模型。
7.根据权利要求1-6任一项所述的方法,其特征在于,所述方法还包括:
基于目标损失函数以及预设的样本对初始模型进行训练,得到所述三维重建网络模型,其中,所述目标损失函数包括:第一子函数、第二子函数、第三子函数以及第四子函数,所述第一子函数、第二子函数、第三子函数以及所述第四子函数通过对应的权重进行叠加得到所述目标损失函数,所述第一子函数用于计算关键点的损失,所述第二子函数用于计算三维模型顶点的损失,所述第三子函数用于计算跨视角对齐的损失,所述第四子函数用于计算三维模型表面平滑度的损失。
8.一种三维重建装置,其特征在于,包括:
获取模块,用于:获取目标对象在多个视角下的二维图像;
特征提取模块,用于:将所述多个视角下的二维图像输入预先训练得到的三维重建网络模型,在所述三维重建网络模型中对各所述二维图像进行特征提取,得到各所述二维图像对应的特征图;
特征融合模块,用于:对各所述特征图进行多视角特征融合,得到特征编码序列;
跨视角对齐模块,用于:对所述特征编码序列进行跨视角对齐,得到对齐后的特征编码序列,所述对齐后的特征编码序列为目标视角对应的特征编码序列;
生成模块,用于:根据所述对齐后的特征编码序列,得到所述目标视角下的三维关键点;
输出模块,用于:将所述特征编码序列、所述三维关键点和预设的三维模型顶点集合进行拼接,得到输入序列,并根据所述输入序列得到所述目标对象在所述目标视角下的三维模型顶点集合,所述目标对象在所述目标视角下的三维模型顶点集合作为所述目标对象在所述目标视角下的三维模型进行输出。
9.一种电子设备,其特征在于,包括:处理器、存储介质和总线,所述存储介质存储有所述处理器可执行的程序指令,当电子设备运行时,所述处理器与所述存储介质之间通过总线通信,所述处理器执行所述程序指令,以执行时执行如权利要求1至7任一所述的三维重建方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器运行时执行如权利要求1至7任一所述的三维重建方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211213323.XA CN115937406A (zh) | 2022-09-29 | 2022-09-29 | 三维重建方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211213323.XA CN115937406A (zh) | 2022-09-29 | 2022-09-29 | 三维重建方法、装置、设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115937406A true CN115937406A (zh) | 2023-04-07 |
Family
ID=86653213
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211213323.XA Pending CN115937406A (zh) | 2022-09-29 | 2022-09-29 | 三维重建方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115937406A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116129228A (zh) * | 2023-04-19 | 2023-05-16 | 中国科学技术大学 | 图像匹配模型的训练方法、图像匹配方法及其装置 |
CN117315152A (zh) * | 2023-09-27 | 2023-12-29 | 杭州一隅千象科技有限公司 | 双目立体成像方法及其系统 |
-
2022
- 2022-09-29 CN CN202211213323.XA patent/CN115937406A/zh active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116129228A (zh) * | 2023-04-19 | 2023-05-16 | 中国科学技术大学 | 图像匹配模型的训练方法、图像匹配方法及其装置 |
CN117315152A (zh) * | 2023-09-27 | 2023-12-29 | 杭州一隅千象科技有限公司 | 双目立体成像方法及其系统 |
CN117315152B (zh) * | 2023-09-27 | 2024-03-29 | 杭州一隅千象科技有限公司 | 双目立体成像方法及其系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111047548B (zh) | 姿态变换数据处理方法、装置、计算机设备和存储介质 | |
CN115937406A (zh) | 三维重建方法、装置、设备及存储介质 | |
CN110599395B (zh) | 目标图像生成方法、装置、服务器及存储介质 | |
EP3674984A1 (en) | Set of neural networks | |
CN111583399B (zh) | 图像处理方法、装置、设备、介质和电子设备 | |
CN113379646B (zh) | 一种利用生成对抗网络进行稠密点云补全的算法 | |
US20230206603A1 (en) | High-precision point cloud completion method based on deep learning and device thereof | |
CN112950775A (zh) | 一种基于自监督学习的三维人脸模型重建方法及系统 | |
CN114049435A (zh) | 一种基于Transformer模型的三维人体重建方法及系统 | |
WO2024060395A1 (zh) | 一种基于深度学习的高精度点云补全方法及装置 | |
Li et al. | Semantic point cloud upsampling | |
WO2023207416A1 (zh) | 图像补全方法、装置、设备及存储介质 | |
CN115222917A (zh) | 三维重建模型的训练方法、装置、设备及存储介质 | |
CN115457197A (zh) | 基于素描草图的人脸三维重建模型训练方法、重建方法及装置 | |
CN114612902A (zh) | 图像语义分割方法、装置、设备、存储介质及程序产品 | |
CN114723884A (zh) | 三维人脸重建方法、装置、计算机设备及存储介质 | |
CN113516693A (zh) | 一种快速通用的图像配准方法 | |
CN116740290B (zh) | 基于可变形注意力的三维交互双手重建方法及系统 | |
CN117094895B (zh) | 图像全景拼接方法及其系统 | |
Liu et al. | Concise and effective network for 3D human modeling from orthogonal silhouettes | |
CN113538662A (zh) | 一种基于rgb数据的单视角三维物体重建方法及装置 | |
CN117152630A (zh) | 一种基于深度学习的光学遥感图像变化检测方法 | |
CN116958958A (zh) | 基于图卷积双流形状先验自适应类别级物体姿态估计方法 | |
CN116704554A (zh) | 一种基于深度学习的手姿估计与识别的方法、设备及介质 | |
CN113593007B (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 |