人体三维模型的建立方法、装置、电子设备及存储介质与流程

文档序号:29028341发布日期:2022-02-24 10:45阅读:220来源:国知局
人体三维模型的建立方法、装置、电子设备及存储介质与流程

1.本公开涉及计算机视觉和计算机图形学技术领域,尤其涉及人体三维模型的建立方法、装置、电子设备及存储介质。


背景技术:

2.人体三维模型的建立是计算机视觉和计算机图形学技术领域的重点问题。高质量的人体三维模型在影视娱乐、人口数据统计分析等领域有着广泛的应用前景和重要的应用价值。
3.目前,高质量人体三维模型的建立通常依靠价格昂贵的激光扫描仪或者多相机阵列系统来实现,此种人体三维模型的建立方法通用性差适用场景受限,建模花费的时间较长。利用深度神经网络根据单张图像进行人体三维模型的重建速度快,通用性强,但是建立的人体三维模型的精度低。


技术实现要素:

4.本公开提供一种人体三维模型的建立方法、装置、电子设备及存储介质,以解决当前利用深度神经网络根据单张图像建立的人体三维模型的精度低的问题。
5.本公开的技术方案如下:
6.根据本公开实施例的第一方面,本公开实施例提供一种人体三维模型的建立方法,该方法包括:获取包括人体的待处理图像;将待处理图像输入神经网络模型分别得到第一中间特征图和待处理图像中人体的二维关键点的位置;第一中间特征图用于表征待处理图像中人体在待处理图像中的表面结构信息;对第一中间特征图和人体的二维关键点的位置进行融合处理,得到融合特征图;将融合特征图输入图卷积神经网络,得到人体的位姿参数;将融合特征图输入参数提取网络,得到人体形态参数以及相机参数;根据位姿参数、人体形态参数以及相机参数,建立人体的人体三维模型。
7.本公开实施例通过对包括人体的待处理图像进行处理,得到第一中间特征图和待处理图像中人体的二维关键点的位置,对第一中间特征图和人体的二维关键点的位置进行融合处理,得到融合特征图,将融合特征图输入图卷积神经网络得到人体的位姿参数,由于人体的关节点天然具有连接关系,因此使用图卷积神经网络得到的人体的位姿参数更准确。而将第一中间特征图与人体的二维关键点的位置融合得到的融合特征图,丰富了图卷积神经网络的输入,进一步提高了预测得到的人体的位姿参数的准确性。使得利用本技术得到的人体的位姿参数、人体形态参数以及相机参数建立的人体三维模型的精度更高。
8.在一种可能的实现方式中,上述将融合特征图输入参数提取网络,得到人体形态参数以及相机参数,包括:将融合特征图输入参数提取网络,融合融合特征图、初始人体形态参数以及预设相机参数,得到预设维度的特征图;将预设维度的特征图输入参数提取网络中的第一全连接层,得到人体形态参数;将预设维度的特征图输入参数提取网络中的第二全连接层,得到相机参数。
9.在另一种可能的实现方式中,上述将融合特征图输入图卷积神经网络,得到人体的位姿参数,包括:将融合特征图调整为预设尺寸;将调整后的融合特征图以及预设邻接矩阵输入图卷积神经网络,得到人体的位姿参数;其中,预设邻接矩阵用于表征人体的二维关键点之间的位置关系。
10.在另一种可能的实现方式中,预设邻接矩阵的行数与列数均等于人体的二维关键点的数量;该方法还包括:对于预设邻接矩阵中的每个元素均执行下列操作以确定预设邻接矩阵中每个元素的数值:当预设邻接矩阵中元素所在的行对应的关键点与该元素所在的列对应的关键点相邻时,确定该元素的数值为第一数值;当预设邻接矩阵中元素所在的行对应的关键点与该元素所在的列对应的关键点不相邻时,确定该元素的数值为第二数值。
11.在另一种可能的实现方式中,上述对第一中间特征图和人体二维关键点位置进行融合处理,得到融合特征图,包括:将第一中间特征图和人体二维关键点位置输入融合网络,对第一中间特征图、人体二维关键点位置和融合网络中预设的三维权重矩阵进行相乘,并将相乘得到的乘积与融合网络中预设偏移矩阵进行相加,得到融合特征图。
12.根据本公开实施例的第二方面,提供一种人体三维模型的建立装置,包括:获取模块,被配置为获取包括人体的待处理图像;预处理模块,被配置为将待处理图像输入神经网络模型分别得到第一中间特征图和待处理图像中人体的二维关键点的位置;第一中间特征图用于表征待处理图像中人体在待处理图像中的表面结构信息;融合模块,被配置为对第一中间特征图和人体的二维关键点位置进行融合处理,得到融合特征图;参数提取模块,被配置为将融合特征图输入图卷积神经网络,得到人体的位姿参数;将融合特征图输入参数提取网络,得到人体形态参数以及相机参数;建立模块,被配置为根据位姿参数、人体形态参数以及相机参数,建立人体的人体三维模型。
13.在一种可能的实现方式中,上述参数提取模块具体被配置为:将融合特征图输入参数提取网络,融合融合特征图、初始人体形态参数以及预设相机参数,得到预设维度的特征图;将预设维度的特征图输入参数提取网络中的第一全连接层,得到人体形态参数;将预设维度的特征图输入参数提取网络中的第二全连接层,得到相机参数。
14.在另一种可能的实现方式中,上述参数提取模块还被配置为:将融合特征图调整为预设尺寸;将调整后的融合特征图以及预设邻接矩阵输入图卷积神经网络,得到人体的位姿参数;其中,预设邻接矩阵用于表征人体的二维关键点之间的位置关系。
15.在另一种可能的实现方式中,预设邻接矩阵的行数与列数均等于人体的二维关键点的数量;建立模块还被配置为:对于预设邻接矩阵中的每个元素均执行下列操作以确定预设邻接矩阵中每个元素的数值:当预设邻接矩阵中元素所在的行对应的关键点与该元素所在的列对应的关键点相邻时,确定该元素的数值为第一数值;当预设邻接矩阵中元素所在的行对应的关键点与该元素所在的列对应的关键点不相邻时,确定该元素的数值为第二数值。
16.在另一种可能的实现方式中,融合模块,具体被配置为:将第一中间特征图和人体二维关键点位置输入融合网络,对第一中间特征图、人体二维关键点位置和融合网络中预设的三维权重矩阵进行相乘,并将相乘得到的乘积与融合网络中预设偏移矩阵进行相加,得到融合特征图。
17.根据本公开实施例的第三方面,提供一种电子设备,包括:处理器;用于存储处理
器可执行指令的存储器。其中,处理器被配置为执行所述指令,以实现上述第一方面以及第一方面的任一种可能的实现方式所示的人体三维模型的建立方法。
18.根据本公开实施例的第四方面,提供一种计算机可读存储介质,当该存储介质中的指令由电子设备的处理器执行时,使得电子设备能够执行如第一方面以及第一方面的任一种可能的实现方式所示的人体三维模型的建立方法。
19.根据本公开实施例的第五方面,提供一种计算机程序产品,可直接加载到计算机的内部存储器中,并含有软件代码,该计算机程序经由计算机载入并执行后能够实现第一方面以及第一方面的任一种可能的实现方式所示的人体三维模型的建立方法。
20.上述提供的任一种人体三维模型的建立装置、电子设备或计算机可读存储介质或计算机程序产品用于执行上文所提供的对应的方法,因此,其所能达到的有益效果可参考上文提供的对应的方法中对应方案的有益效果,此处不再赘述。
21.应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
22.此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开实施例,并与说明书一起用于解释本公开的原理,并不构成对本公开的不当限定。
23.图1是根据一示例性实施例示出的包括24个人体关键点的图片;
24.图2是根据一示例性实施例示出的一种人体三维模型的建立方法的流程示意图;
25.图3是根据一示例性实施例示出的一种应用场景示意图;
26.图4是根据一示例性实施例示出的一种人体三维模型的建立装置框图;
27.图5是根据一示例性实施例示出的一种电子设备的框图。
具体实施方式
28.为了方便理解,下面对本公开的实施例中涉及的名词进行说明。
29.1)多人线性蒙皮(skinned multi-person linear,smpl)模型
30.一种参数化的人体三维重建模型,该模型由smpl参数驱动,smpl参数中包括形态(shape)参数β以及姿态(pose)参数θ。其中,形态参数包含表征人体的高矮胖瘦、头身比例等10个参数;姿态(pose)参数包含24个关节点对应的72个参数(每个关节点对应的参数使用一个三维旋转向量表示,因此共包含24
×
3个参数)。
31.2)相机参数
32.本公开实施例中的相机参数指相机的外参矩阵:包括旋转矩阵和平移矩阵。旋转矩阵和平移矩阵共同描述了如何把点从世界坐标系转换到相机坐标系。
33.3)形态参数以及相机参数预测模型
34.一种用于预测图片中人体形态以及图片相机参数的神经网络模型,该模型的模型输入为图片,模型输出为10维的形态参数以及3维的相机参数。
35.4)人体关键点
36.人体关键点是指人体的各个部位的关键位置点,人体关键点对于描述人体姿态,预测人体行为至关重要。人体关键点主要包括左、右手臂的三个点(手腕、手肘、肩膀),左、
右腿的三个点(脚腕、膝盖、胯骨),髋、臀部点以及头部点(眼睛,下巴,头顶)等。
37.如图1所示为包括24个人体关键点的图片。
38.5)其他
[0039]“示例性的”或者“例如”等词用于表示作例子、例证或说明。本公开实施例中被描述为“示例性的”或者“例如”的任何实施例或设计方案不应被解释为比其它实施例或设计方案更优选或更具优势。确切而言,使用“示例性的”或者“例如”等词旨在以具体方式呈现相关概念。
[0040]
需要说明的是,本公开的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本公开的实施例能够以除了在这里图示或描述的那些以外的顺序实施。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
[0041]
在本公开实施例中,“至少一个”是指一个或多个。“多个”是指两个或两个以上。
[0042]
在本公开实施例中,“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。
[0043]
如图2所示为根据一示例性实施例示出的一种人体三维模型的建立方法的流程示意图。可以应用于计算机设备,图2所示的方法可以包括以下步骤:
[0044]
s100:获取包括人体的待处理图像。
[0045]
本公开实施例对待处理图像的获取方式不进行限定。在一种可能的实现方式中,计算机设备通过摄像头获取待处理图像。在另一种可能的实现方式中,计算机设备根据接收到的用户选择指令,从存储的图像中选择该用户选择指令所指示的待处理图像。其中,用户选择指令可以是待处理图像接收用户通过输入单元发出的用户选择指令。
[0046]
可选的,对待处理图像进行预处理,使得待处理图像符合后续处理中的模型输入要求。其中,预处理方式包括裁剪和尺寸缩放。比如,预处理后待处理图像的尺寸为256
×
256
×
3。
[0047]
在一个示例中,当用户在使用计算机设备中的应用程序时,计算机设备接收用户选择的应用程序中“将待处理图像中的人体进行人体三维建模”的图像处理指令。其中,待处理图像为该计算机设备的摄像头实时获取的图像。
[0048]
s101:将待处理图像输入神经网络模型分别得到第一中间特征图和待处理图像中人体的二维关键点的位置。其中,第一中间特征图用于表征待处理图像中人体在待处理图像中的表面结构信息。
[0049]
在一种可能的实现方式中,神经网络模型通过如下步骤对待处理图像进行处理分别得到第一中间特征图和待处理图像中人体的二维关键点的位置:
[0050]
步骤一:对待处理图像进行卷积操作、池化操作以及全连接操作,得到第一中间特征图。
[0051]
步骤二:根据待处理图像确定人体关键点的位置。
[0052]
具体的,对待处理图像进行卷积操作、上采样操作以及卷积操作得到人体关键点
热点图(heatmap),并对得到的人体关键点热点图在宽维度和高维度上进行平滑(softmax)处理,以获取人体的二维关键点的位置。
[0053]
示例性的,对待处理图像进行卷积操作得到(8
×8×
n)输出图i2;将输出图i2进行卷积操作和上采样操作得到64
×
64
×
256的输出图i3,并对输出图i3进行卷积操作得到64
×
64
×
14的人体关键点热点图h,之后对h在宽维度与高纬度求期望获取人体的二维关键点的位置。
[0054]
s102:对第一中间特征图和人体的二维关键点位置进行融合处理,得到融合特征图;
[0055]
在一种可能的实现方式中,计算机设备将第一中间特征图和人体二维关键点位置输入融合网络,对第一中间特征图、人体二维关键点位置和融合网络中预设的三维权重矩阵进行相乘,并将相乘得到的乘积与融合网络中预设偏移矩阵进行相加,得到融合特征图。
[0056]
这样,融合特征图结合了待处理图像高维特征信息以及人体的二维关键点位置信息,丰富了图卷积神经网络的输入。进一步提升了图卷积神经网络预测位姿参数的精度。
[0057]
其中,预设的三维权重矩阵以及预设偏移矩阵都可以在训练融合网络时训练得到。融合网络可以是基于融合函数bilinear的神经网络。
[0058]
示例性的,该融合函数可以通过如下公式来表征:
[0059]
kps*w*f1+bias(480)
[0060]
其中,kps用于表征人体二维关键点,f1为第一中间特征图。w为一个三维权重矩阵,bias为预设偏移矩阵。w与bias是可以通过网络模型的学习获取的参数。该融合函数的作用是通过三维权重矩阵w分别与人体二维关键点和第一中间特征图进行矩阵乘,得到维度为480的新特征信息。
[0061]
s103:将融合特征图输入图卷积神经网络,得到人体的位姿参数。其中,位姿参数用于表征待处理图像中人体的人体姿态。
[0062]
在一种可能的实现方式中,计算机设备通过如下步骤得到人体的位姿参数:
[0063]
步骤一:计算机设备将融合特征图调整为预设尺寸,预设尺寸符合图卷积神经网络的输入要求。示例性的,将第一特征图处理为24
×
20的图像。
[0064]
步骤二:计算机设备将调整后的融合特征图以及预设邻接矩阵输入图卷积神经网络,得到人体的位姿参数。其中,预设邻接矩阵用于表征人体的二维关键点之间的位置关系。预设邻接矩阵可以基于人体关节点的位置关系确定。示例性的,预设邻接矩阵的行数与列数均等于人体的二维关键点的数量。对于预设邻接矩阵中每个元素:若该元素所在的行对应的关键点与该元素所在的列对应的关键点相邻,则设定该元素的数值为1,若不相邻,则设定该元素的数值为0,从而构建得到预设邻接矩阵。
[0065]
具体的,图卷积神经网络包括:输入层、隐藏层以及输出层。图卷积神经网络对调整后的融合特征图进行如下步骤的处理,得到人体的位姿参数:
[0066]
步骤一:将调整后的融合特征图以及预设邻接矩阵输入输入层,得到第一输出中间图。
[0067]
示例性的,第一输出中间图的尺寸为24
×
256。
[0068]
步骤二:将第一输出中间图输入隐藏层,进行预设次数的图卷积操作,得到融合图像。
[0069]
示例性的,隐藏层包括四个卷积层,第一输出中间图经过该四个卷积层的处理,得到融合图像的尺寸为24
×
256。
[0070]
步骤三:将融合图像输入输出层进行图卷积操作得到人体的位姿参数。
[0071]
这样,本公开实施例所使用的图卷积神经网络预测人体的位姿参数,一方面能够很好的利用人体关节点的连接特性,提升利用图卷积神经网络预测位姿参数的精度。另一方面,图卷积神经网络的计算量与参数量都比神经网络的线性回归少,从而有利于神经网络在不同的平台之间的移植。
[0072]
示例性的,人体的位姿参数尺寸为24
×
3。图卷积神经网络输出的位姿参数为72维参数,用于指示人体24个关节点的旋转向量。
[0073]
s104:将融合特征图输入参数提取网络,得到人体形态参数以及相机参数。
[0074]
具体的,参数提取网络通过如下步骤得到人体形态参数以及相机参数:
[0075]
步骤一:参数提取网络融合该融合特征图、初始人体形态参数以及预设相机参数,得到预设维度的特征图。其中,初始人体形态参数、预设相机参数以及预设维度可以根据经验设定。这样,预设维度的特征图融合了该融合特征图的特征、初始人体形态参数的特征以及预设相机参数的特征,丰富了后续第一全连接层以及第二全连接层的输入,提高了预测人体形态参数以及相机参数的精度。
[0076]
步骤二:参数提取网络将预设维度的特征图输入参数提取网络中的第一全连接层进行全连接处理,得到人体形态参数。其中,第一全连接层的输出参数个数为10。
[0077]
步骤三:参数提取网络将预设维度的特征图输入参数提取网络中的第二全连接层进行全连接处理,得到相机参数。其中,第二全连接层的输出参数个数为3。
[0078]
示例性的,参数提取网络基于简化的视觉几何组(visual geometry group,vgg)网络构建。
[0079]
s105:根据获取的位姿参数、人体形态参数以及相机参数,建立待处理图像中人体的人体三维模型。
[0080]
在一种实现方式中计算机设备根据获取的位姿参数、人体形态参数以及相机参数,通过smpl模型构建待处理图像中人体的人体三维模型。
[0081]
本公开实施例中,一方面,由于人体关键点信息本身具有图数据的特征,因此利用图卷积神经网络预测位姿参数的情况下能够提高得到的位姿参数的精度。另外,图卷积神经网络的计算量与参数量都比神经网络的线性回归少,从而有利于神经网络在不同的平台之间的移植。另一方面,本公开中第一中间特征图与人体的二维关键点位置融合得到的融合特征图弥补了原图像从二维回归得到三维信息的过程中缺失的原图像的空间信息,比如,待处理图像中关节点相互的遮挡信息。使得输入图卷积神经网络更加丰富,进一步提升了图卷积神经网络预测位姿参数的精度。从而使得本公开实施例提高了建立待处理图像中人体的人体三维模型的精度。
[0082]
需要说明的是,本公开实施例的执行主体可以是终端设备也可以是服务器。其中,其中,终端设备包括但不限于手机、平板电脑、笔记本电脑、掌上电脑、车载终端等。服务器可以为一台服务器,或者,也可以为由多台服务器组成的服务器集群,本公开对此不做限定。
[0083]
在一种可能的应用场景下,如图3所示,终端设备301将包含人体图像的图片上传
至服务器302。服务器302接收到图片后,执行上述s101~s104以获取位姿参数、人体形态参数以及相机参数,并将位姿参数、人体形态参数以及相机参数发送给终端设备301。终端设备301接收到位姿参数、人体形态参数以及相机参数后,即通过smpl模型建立待处理图像中人体的人体三维模型,并进行显示。当然,若终端设备301也可以自己执行上述s100~s105的步骤完成待处理图像中人体的人体三维模型的建立,而无需借助服务器302。
[0084]
在其他可能的应用场景下,虚拟现实(virtual reality,vr)设备通过摄像头采集到包含玩家人体的图像后,通过本公开的实施例所提供的方法建立玩家人体三维模型,并将玩家人体三维模型实时显示在vr画面中,从而增加玩家使用vr设备时的沉浸感。当然,本公开实施例还可以用于其它基于单张图片(包含人体)或视频(视频帧中包含连续的人体)重建人体三维模型的应用场景,本公开实施例对此不做限定。
[0085]
上述主要从方法的角度对本公开实施例提供的方案进行了介绍。为了实现上述功能,其包含了执行各个功能相应的硬件结构和/或软件模块。本领域技术人员应该很容易意识到,结合本文中所公开的实施例描述的各示例的方法步骤,本公开能够以硬件或硬件和计算机软件的结合形式来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本公开的范围。
[0086]
本公开实施例可以根据上述方法示例对计算机设备进行功能模块的划分,例如可以对应各个功能划分各个功能模块,也可以将两个或两个以上的功能集成在一个处理模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。需要说明的是,本公开实施例中对模块的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
[0087]
图4是根据一示例性实施例示出的一种人体三维模型的建立装置框图。参照图4,该人体三维模型的建立装置20包括获取模块201、预处理模块202、融合模块203、参数提取模块204和建立模块205。获取模块201,被配置为获取包括人体的待处理图像;预处理模块202,被配置为将待处理图像输入神经网络模型分别得到第一中间特征图和待处理图像中人体的二维关键点的位置;第一中间特征图用于表征待处理图像中人体在待处理图像中的表面结构信息;融合模块203,被配置为对第一中间特征图和人体的二维关键点位置进行融合处理,得到融合特征图;参数提取模块204,被配置为将融合特征图输入图卷积神经网络,得到人体的位姿参数;将融合特征图输入参数提取网络,得到人体形态参数以及相机参数;建立模块205,被配置为根据位姿参数、人体形态参数以及相机参数,建立人体的人体三维模型。例如:结合图2,获取模块201可以被配置为用于执行s100。预处理模块202可以被配置为用于执行s101。融合模块203,可以被配置为用于执行s102,参数提取模块204可以被配置为用于执行s103~s104。建立模块205可以被配置为用于执行s105。
[0088]
可选的,参数提取模块204具体被配置为:将融合特征图输入参数提取网络,融合该融合特征图、初始人体形态参数以及预设相机参数,得到预设维度的特征图;将预设维度的特征图输入参数提取网络中的第一全连接层,得到人体形态参数;将预设维度的特征图输入参数提取网络中的第二全连接层,得到相机参数。
[0089]
可选的,参数提取模块204还被配置为:将融合特征图调整为预设尺寸;将调整后的融合特征图以及预设邻接矩阵输入图卷积神经网络,得到人体的位姿参数;其中,预设邻
line,dsl))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可以用介质集成的服务器、数据中心等数据存储设备。可用介质可以是磁性介质(例如,软盘、硬盘、磁带),光介质(例如,dvd)、或者半导体介质(例如固态硬盘(solid state disk,ssd))等。
[0099]
应注意,本公开实施例提供的上述用于存储计算机指令或者计算机程序的器件,例如但不限于,上述存储器、计算机可读存储介质和通信芯片等,均具有非易失性(non-transitory)。
[0100]
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本公开旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求指出。
[0101]
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1