CN112233222A - 基于神经网络关节点估计的人体参数化三维模型变形方法 - Google Patents
基于神经网络关节点估计的人体参数化三维模型变形方法 Download PDFInfo
- Publication number
- CN112233222A CN112233222A CN202011046379.1A CN202011046379A CN112233222A CN 112233222 A CN112233222 A CN 112233222A CN 202011046379 A CN202011046379 A CN 202011046379A CN 112233222 A CN112233222 A CN 112233222A
- Authority
- CN
- China
- Prior art keywords
- target
- dimensional
- joint point
- dimensional object
- model
- 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
- 238000000034 method Methods 0.000 title claims abstract description 47
- 238000013528 artificial neural network Methods 0.000 title claims abstract description 26
- 238000001514 detection method Methods 0.000 claims abstract description 76
- 238000013507 mapping Methods 0.000 claims abstract description 15
- 238000003860 storage Methods 0.000 claims abstract description 13
- 238000012549 training Methods 0.000 claims description 70
- 239000013598 vector Substances 0.000 claims description 54
- 238000010586 diagram Methods 0.000 claims description 33
- 238000004590 computer program Methods 0.000 claims description 13
- 238000000605 extraction Methods 0.000 claims description 10
- 230000000877 morphologic effect Effects 0.000 claims description 8
- 230000001131 transforming effect Effects 0.000 claims description 4
- 210000003414 extremity Anatomy 0.000 description 148
- 230000036544 posture Effects 0.000 description 42
- 238000003062 neural network model Methods 0.000 description 8
- 238000004891 communication Methods 0.000 description 6
- 238000013527 convolutional neural network Methods 0.000 description 6
- 238000009877 rendering Methods 0.000 description 6
- 230000006870 function Effects 0.000 description 5
- 238000004364 calculation method Methods 0.000 description 4
- 230000000694 effects Effects 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 210000001503 joint Anatomy 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 241001465754 Metazoa Species 0.000 description 3
- 210000000988 bone and bone Anatomy 0.000 description 3
- 210000002310 elbow joint Anatomy 0.000 description 3
- 210000000245 forearm Anatomy 0.000 description 3
- 210000002478 hand joint Anatomy 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 210000000323 shoulder joint Anatomy 0.000 description 3
- 210000000689 upper leg Anatomy 0.000 description 3
- 230000009471 action Effects 0.000 description 2
- 244000309466 calf Species 0.000 description 2
- 238000009795 derivation Methods 0.000 description 2
- 210000003108 foot joint Anatomy 0.000 description 2
- 210000004394 hip joint Anatomy 0.000 description 2
- 210000000629 knee joint Anatomy 0.000 description 2
- 238000002372 labelling Methods 0.000 description 2
- 210000002414 leg Anatomy 0.000 description 2
- 238000005259 measurement Methods 0.000 description 2
- 239000000126 substance Substances 0.000 description 2
- NAWXUBYGYWOOIX-SFHVURJKSA-N (2s)-2-[[4-[2-(2,4-diaminoquinazolin-6-yl)ethyl]benzoyl]amino]-4-methylidenepentanedioic acid Chemical compound C1=CC2=NC(N)=NC(N)=C2C=C1CCC1=CC=C(C(=O)N[C@@H](CC(=C)C(O)=O)C(O)=O)C=C1 NAWXUBYGYWOOIX-SFHVURJKSA-N 0.000 description 1
- 238000010146 3D printing Methods 0.000 description 1
- ORILYTVJVMAKLC-UHFFFAOYSA-N Adamantane Natural products C1C(C2)CC3CC1CC2C3 ORILYTVJVMAKLC-UHFFFAOYSA-N 0.000 description 1
- 230000037237 body shape Effects 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 238000011478 gradient descent method Methods 0.000 description 1
- 210000001624 hip Anatomy 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
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
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T13/00—Animation
- G06T13/20—3D [Three Dimensional] animation
- G06T13/40—3D [Three Dimensional] animation of characters, e.g. humans, animals or virtual beings
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/10—Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Multimedia (AREA)
- Computer Graphics (AREA)
- Geometry (AREA)
- Software Systems (AREA)
- Image Analysis (AREA)
Abstract
本申请涉及一种基于神经网络关节点估计的人体参数化三维模型变形方法、装置、计算机设备和存储介质。该方法包括:对目标三维对象模型进行二维图像提取,得到目标二维对象图像集合;利用目标二维关节点检测模型对目标二维对象图像集合中的目标二维对象图像进行二维关节点检测,得到各个目标二维对象图像分别对应的目标二维关节点集合;根据目标二维对象图像分别对应的目标二维关节点集合中,各个目标二维关节点分别对应的空间映射关系,得到目标二维关节点对应的目标三维关节点;利用各个目标二维关节点分别对应的目标三维关节点进行对象拟合,得到目标三维对象模型对应的拟合三维对象模型。采用本方法能够提高人体参数化模型的准确度。
Description
技术领域
本申请涉及计算机技术领域,特别是涉及一种基于神经网络关节点估计的人体参数化三维模型变形方法、装置、计算机设备和存储介质。
背景技术
随着计算机技术的发展,出现了3D(three dimensional,三维)技术,人体三维模型在3D打印、服装定制、虚拟试衣以及动画制作等方面的应用不断被探索。例如,可以利用与真人相似的人体参数化模型,实现虚拟走秀。因此,在3D应用中,如何获取与真人相似的人体参数化模型尤为重要。
目前,通常采用深度相机等设备对人体进行测量,从而得到人体参数化模型,然而这种方法容易受到被测量人体的运动速度等因素的影响,导致不能得到的与真实人体十分相似的人体参数化模型的,即得到的人体参数化模型的准确度低。
发明内容
基于此,有必要针对上述得到的人体参数化模型的准确度低的技术问题,提供一种能够提高人体参数化模型的准确度的基于神经网络关节点估计的人体参数化三维模型变形方法、装置、计算机设备和存储介质。
一种基于神经网络关节点估计的人体参数化三维模型变形方法,所述方法包括:获取目标三维对象模型,对所述目标三维对象模型进行二维图像提取,得到目标二维对象图像集合,所述目标三维对象模型通过对目标对象进行扫描得到;获取目标二维关节点检测模型,利用所述目标二维关节点检测模型对所述目标二维对象图像集合中的目标二维对象图像进行二维关节点检测,得到各个所述目标二维对象图像分别对应的目标二维关节点集合;根据所述目标二维对象图像分别对应的目标二维关节点集合中,各个目标二维关节点分别对应的空间映射关系,得到所述目标二维关节点对应的目标三维关节点;利用各个所述目标二维关节点分别对应的目标三维关节点进行对象拟合,得到所述目标三维对象模型对应的拟合三维对象模型,以控制所述拟合三维对象模型进行运动。
在一些实施例中,所述获取目标二维关节点检测模型包括:获取初始二维关节点检测模型以及训练二维对象图像;确定所述训练二维对象图像对应的图像训练标签,所述图像训练标签根据所述训练二维对象图像对应的标注二维关节点集合中的标注二维关节点确定;根据所述训练二维对象图像以及所述训练二维对象图像对应的图像训练标签,对所述初始二维关节点检测模型进行训练,得到所述目标二维关节点检测模型。
在一些实施例中,所述图像训练标签包括所述标注二维关节点集合中各个标注二维关节点分别对应的置信图;所述方法还包括:根据所述标注二维关节点对应的特征信息,确定所述标注二维关节点对应的目标特征点的目标特征位置;获取所述目标特征点对应的关联特征点的关联特征位置,根据所述目标特征位置与所述关联特征位置之间的差异,确定所述标注二维关节点对应的置信图。
在一些实施例中,所述图像训练标签包括目标肢体对应的肢体向量图,所述目标肢体对应的关节点为所述标注二维关节点集合中的标注二维关节点;所述方法还包括:获取所述目标肢体对应的目标肢体向量,所述目标肢体向量根据所述目标肢体对应的关节点的位置确定;根据所述目标肢体向量确定所述目标肢体上的目标肢体点对应的目标点向量;根据各个所述目标肢体点分别对应的目标点向量,得到所述目标肢体对应的肢体向量图。
在一些实施例中,所述利用各个所述目标二维关节点分别对应的目标三维关节点进行对象拟合,得到所述目标三维对象模型对应的拟合三维对象模型包括:获取标准三维对象模型以及所述标准三维对象模型对应的标准三维关节点集合;所述标准三维关节点集合包括多个标准三维关节点;获取目标关节点约束项,所述目标关节点约束项包括肢体长度调整项与目标肢体长度的差异,所述肢体长度调整项为第一关节点调整项与第二关节点调整项的差异结果;所述第一关节点调整项为第一标准三维关节点的位置与形态调整参数之间运算的结果,所述第二关节点调整项为第二标准三维关节点的位置与所述形态调整参数之间运算的结果;所述第一标准三维关节点以及所述第二标准三维关节点对应目标肢体类型,所述目标肢体长度为所述目标肢体类型对应的第一目标三维关节点与对应的第二目标三维关节点之间的位置差异;确定所述目标关节点约束项满足最小化约束条件时,所述形态调整参数对应的数值,得到目标位置调整因子;利用所述目标位置调整因子对所述标准三维对象模型的关节点进行位置调整,得到所述拟合三维对象模型。
在一些实施例中,所述目标关节点约束项还包括所述第一标准三维关节点对应的第三关节点调整项,与所述第一目标三维关节点的位置之间的差异,所述第三关节点调整项为姿态调整参数以及所述第一关节点调整项进行运算的结果;所述第一目标三维关节点与所述第一标准三维关节点的关节点类型一致。
在一些实施例中,所述确定所述目标关节点约束项满足最小化约束条件时,所述形态调整参数对应的数值,得到目标位置调整因子包括:确定所述目标关节点约束项满足最小化约束条件时,所述形态调整参数对应的数值以及所述姿态调整参数对应的数值,得到所述目标位置调整因子。
一种基于神经网络关节点估计的人体参数化三维模型变形装置,所述装置包括:目标二维对象图像集合得到模块,用于获取目标三维对象模型,对所述目标三维对象模型进行二维图像提取,得到目标二维对象图像集合,所述目标三维对象模型通过对目标对象进行扫描得到;目标二维关节点集合得到模块,用于获取目标二维关节点检测模型,利用所述目标二维关节点检测模型对所述目标二维对象图像集合中的目标二维对象图像进行二维关节点检测,得到各个所述目标二维对象图像分别对应的目标二维关节点集合;目标三维关节点得到模块,用于根据所述目标二维对象图像分别对应的目标二维关节点集合中,各个目标二维关节点分别对应的空间映射关系,得到所述目标二维关节点对应的目标三维关节点;拟合三维对象模型得到模块,用于利用各个所述目标二维关节点分别对应的目标三维关节点进行对象拟合,得到所述目标三维对象模型对应的拟合三维对象模型,以控制所述拟合三维对象模型进行运动。
一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述基于神经网络关节点估计的人体参数化三维模型变形方法的步骤。
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述基于神经网络关节点估计的人体参数化三维模型变形方法的步骤。
上述基于神经网络关节点估计的人体参数化三维模型变形方法、装置、计算机设备和存储介质,获取目标三维对象模型,对目标三维对象模型进行二维图像提取,得到目标二维对象图像集合,获取目标二维关节点检测模型,利用目标二维关节点检测模型对目标二维对象图像集合中的目标二维对象图像进行二维关节点检测,得到各个目标二维对象图像分别对应的目标二维关节点集合,根据目标二维对象图像分别对应的目标二维关节点集合中,各个目标二维关节点分别对应的空间映射关系,得到目标二维关节点对应的目标三维关节点,利用各个目标二维关节点分别对应的目标三维关节点进行对象拟合,得到目标三维对象模型对应的拟合三维对象模型。从而通过二维对象图像的二维关节点准确的得到了三维对象模型的三维关节点,提高了三维关节点的准确度,从而可以提高拟合三维对象模型与目标三维对象模型之间的相似度,从而提高了拟合三维对象模型的准确度。另外,根据目标三维关节点对拟合三维对象模型进行控制,可以使得拟合三维对象模型以目标三维对象模型的形态进行运动,从而模拟真实人体的动作。
附图说明
图1为一些实施例中基于神经网络关节点估计的人体参数化三维模型变形方法的应用环境图;
图2为一些实施例中基于神经网络关节点估计的人体参数化三维模型变形方法的流程示意图;
图3为一些实施例中目标三维对象模型的示意图;
图4为一些实施例中二维对象图像的示意图;
图5为一些实施例中根据二维关节点得到三维关节点的示意图;
图6为一些实施例中目标三维对象模型和标准三维对象模型的示意图;
图7为一些实施例中通过初配以及非刚体配准得到拟合三维对象模型的原理图;
图8为一些实施例中初配后的三维对象模型以及非刚体配准三维对象模型的示意图;
图9为一些实施例中获取目标二维关节点检测模型的步骤的流程示意图;
图10为一些实施例中二维关节点检测模型的示意图;
图11为一些实施例中参数化模型的示意图;
图12为一些实施例中在三维人体模型中标注的三维关节点的示意图;
图13为一些实施例中得到拟合三维对象模型的步骤的流程示意图;
图14为一些实施例中形态调整的效果图以及姿态调整的效果图;
图15为一些实施例中初配三维对象模型和非刚体配准三维对象模型的示意图;
图16为一些实施例中非刚体配准的流程示意图;
图17为一些实施例中基于神经网络关节点估计的人体参数化三维模型变形装置的结构框图;
图18为一些实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请提供的基于神经网络关节点估计的人体参数化三维模型变形方法,可以应用于如图1所示的应用环境中。该应用环境包括扫描设备102以及终端设备104。其中,扫描设备102可以通过有线或者无线通信方式与终端设备104进行通信。
具体地,扫描设备102可以对对象进行扫描,得到扫描后的三维(3D,threedimensional)对象模型。终端设备104可以从扫描设备102获取扫描后的三维对象模型,例如可以从扫描设备102获取对目标对象进行扫描得到的目标三维对象模型。终端设备104可以对目标三维对象模型进行二维(2D,two dimensional)图像提取,得到目标二维对象图像集合;终端设备104可以获取目标二维关节点检测模型,利用目标二维关节点检测模型对目标二维对象图像集合中的目标二维对象图像进行二维关节点检测,得到各个目标二维对象图像分别对应的目标二维关节点集合;终端设备104可以根据目标二维对象图像分别对应的目标二维关节点集合中,各个目标二维关节点分别对应的空间映射关系,得到目标二维关节点对应的目标三维关节点;终端设备104可以利用各个目标二维关节点分别对应的目标三维关节点进行对象拟合,得到目标三维对象模型对应的拟合三维对象模型,并且可以根据目标三维关节点控制拟合三维对象模型进行运动。
其中,扫描设备102可以但不限于是各种可以进行人体三维模型扫描的设备。例如可以是激光扫描仪。终端设备104可以但不限于是各种个人计算机和笔记本电脑。
可以理解,上述应用场景仅是一种示例,并不构成对本申请实施例提供的方法的限定,本申请实施例提供的方法还可以应用在其他场景中,例如,本申请提供的基于神经网络关节点估计的人体参数化三维模型变形方法可以由服务器设备执行。其中,服务器设备可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
在一些实施例中,如图2所示,提供了一种基于神经网络关节点估计的人体参数化三维模型变形方法,以该方法应用于图1中的终端设备104为例进行说明,包括以下步骤:
S202,获取目标三维对象模型,对目标三维对象模型进行二维图像提取,得到目标二维对象图像集合,目标三维对象模型通过对目标对象进行扫描得到。
具体地,对象可以包括人或动物中的至少一种。目标对象是与目标三维对象模型对应的对象。当目标对象为人时,目标三维对象模型可以称为目标三维人体模型,当目标对象为动物时,目标三维对象模型可以称为目标三维动物体模型。目标三维对象模型可以是通过点云扫描设备对目标对象进行扫描得到的三维对象点云模型,例如可以是三维人体点云模型。如图3所示,展示了一个目标三维对象模型。
目标二维对象图像集合可以包括多个目标二维对象图像。目标二维对象图像为目标三维对象模型对应的二维对象图像。对目标三维对象模型进行二维图像提取可以包括对目标三维对象模型进行投影,即目标二维对象图像可以是通过对目标三维对象模型进行投影得到的,例如目标二维对象图像集合中的各个目标二维对象图像可以是目标三维对象模型在不同方向的投影得到的各个二维图像。
在一些实施例中,目标二维对象图像也可以是通过对目标三维对象模型进行二维图像渲染得到的,例如可以是渲染得到的RGB图像。终端设备可以通过openGL对目标三维对象模型进行二维图像渲染,得到多个角度下的目标二维对象图像,例如0度下的目标二维对象图像和180度下的目标二维对象图像。当0度下的目标二维对象图像为正面人体图像时,180度下的目标二维对象图像为背面人体图像。如图4所示,展示了渲染得到的二维对象图像。
S204,获取目标二维关节点检测模型,利用目标二维关节点检测模型对目标二维对象图像集合中的目标二维对象图像进行二维关节点检测,得到各个目标二维对象图像分别对应的目标二维关节点集合。
具体地,关节点也可以称为关键点,关节点的类型可以包括头关节点、脖子关节点、左手关节点、左肘关节点、左肩关节点、右手关节点、右肘关节点、右肩关节点、盆骨关节点、左脚关节点、左膝关节点、左臀关节点、右脚关节点、右膝关节点以及右臀关节点等。
二维关节点检测模型指的是对二维对象图像进行二维关节点检测的模型。二维关节点检测模型的输入为二维对象图像,二维关节点检测模型的输出可以包括二维关节点和二维关节点对应的置信图中的至少一种。每一类关节点可以对应一种置信图,置信图可以是以关节点为中心的高斯分布图。目标二维关节点检测模型是通过二维对象图像进行训练后得到的已训练的二维关节点检测模型。关节点在某一位置坐标上的置信度越大,则该关节点就越可能位于该位置坐标处,因此终端设备可以选取置信图中置信度最大的位置,得到关节点所在的位置。
目标二维关节点集合可以包括多个目标二维关节点。目标二维关节点可以对应有关节点的类型以及关节点在目标二维对象图像中的位置信息。目标二维关节点是根据目标二维关节点检测模型输出的结果得到的,例如目标二维关节点可以是目标二维关节点检测模型输出的二维关节点,也可以是通过对目标二维关节点检测模型输出的置信图得到的关节点,还可以是对目标二维关节点检测模型输出的二维关节点或输出的置信图得到的关节点中的至少一种进行处理后得到的关节点,例如可以是对目标二维关节点检测模型输出的各个二维关节点进行缺失或对称判断中的至少一种处理得到的。
在一些实施例中,当目标二维关节点检测模型的输出结果为二维关节点时,终端设备可以将目标二维对象图像输入到目标二维关节点检测模型中,得到模型输出的二维关节点、二维关节点的类型或二维关节点在目标二维对象图像中的位置中的至少一种。当目标二维关节点检测模型的输出结果为二维关节点对应的置信图时,终端设备可以根据目标二维关节点检测模型输出的置信图确定对应的关节点的类型以及在目标二维对象图像中的位置。
S206,根据目标二维对象图像分别对应的目标二维关节点集合中,各个目标二维关节点分别对应的空间映射关系,得到目标二维关节点对应的目标三维关节点。
具体地,空间映射关系可以是自定义的,也可以是预先设置的,指的是二维关节点的位置与对应的三维关节点的位置之间的对应关系,可以通过空间映射关系由二维关节点的位置得到三维关节点的位置,也可以根据空间映射关系由三维关节点的位置得到二维关节点的位置。
在一些实施例中,终端设备可以根据相机的参数,确定三维关节点与二维关节点之间的关节点空间映射关系。相机的参数可以包括相机的内参和外参。例如可以利用OpenGL以及相机的参数确定空间映射关系。如图5,展示了根据二维关节点得到三维关节点的示意图,首先根据三维人体模型,得到正面和背面的二维渲染图,然后利用目标二维关节点检测模型对正面和背面的二维渲染图进行二维关节点的检测,得到正面和背面的二维渲染图的二维关节点,然后根据正面和背面的二维渲染图的二维关节点得到三维人体模型的三维关节点。
S208,利用各个目标二维关节点分别对应的目标三维关节点进行对象拟合,得到目标三维对象模型对应的拟合三维对象模型,以控制拟合三维对象模型进行运动。
具体地,拟合三维对象模型可以是通过目标三维关节点以及标准三维对象模型进行拟合得到的,拟合可以包括通过目标三维关节点对标准三维对象模型中的形态或者姿态进行调整,例如可以根据目标三维关节点对标准三维对象模型的顶点的位置或关节点的位置中的至少一种进行调整,实现拟合,还可以通过现有的方法实现姿态和形态的调整,例如可以通过LBS(Linear Blend Skinning,线性混合蒙皮)方法。拟合过程还可以包括通过目标三维对象模型对应的顶点位置,对标准三维对象模型的顶点位置进行调整。其中,对形态和姿态的调整的阶段可以称为初配阶段,对顶点调整的阶段可以称为非刚体配准阶段。
标准三维对象模型还可以称为标准参数化模型,当对象为人时,也可以称为标准三维人体模型。标准三维对象模型指的是具有明确的顶点和关节点,并且顶点的位置以及关节点的位置可以被调整的参数化模型,可以是自定义的三维对象模型,也可以是现有的三维对象模型,例如可以是makehuman参数化模型。如图6所示,图6(a)中的2个人体模型分别为目标三维对象模型的示意图,图6(b)中的2个人体模型分别为标准三维对象模型的示意图。
在一些实施例中,三维对象模型的差异主要体现在形态和姿态两个方面。终端设备可以利用目标三维关节点对标准三维对象模型的形态进行调整,优化标准三维对象模型的四肢和躯干的长度,得到拟合三维对象模型,以使得拟合三维对象模型与目标三维对象模型(即实际对象模型)拥有同样长度的四肢和躯干。例如,终端设备可以根据各个目标三维关节点估计出人体肢体的长度,通过估计出的人体肢体长度调整标准三维对象模型的关节点的位置。终端设备还可以利用目标三维关节点对标准三维对象模型或形态调整后的标准三维对象模型的姿态进行调整,得到拟合三维对象模型,以使得拟合三维对象模型与目标三维对象模型拥有相同的姿态,例如终端设备可以根据目标三维对象模型的旋转角度,优化标准三维对象模型的骨骼旋转角度。
在一些实施例中,终端设备还可以对初配阶段得到的三维对象模型的顶点的位置进行调整,完成非刚体配准,得到拟合三维对象模型,以使得拟合三维对象模型与目标三维对象模型拥有相同的身体外形,例如手臂粗细长度一致,腰围尺寸一致。如图7所示,展示了通过初配以及非刚体配准得到拟合三维对象模型的示意图。如图8所示,图8(a)中左边的图对应目标三维对象模型,图8(a)中左边的图对应标准三维对象模型,图8(b)对应初配后的三维对象模型,图8(c)对应非刚体配准三维对象模型。
在一些实施例中,终端设备可以对拟合三维对象模型的尺寸进行计算,根据拟合三维对象模型的尺寸,估计出目标对象的尺寸,从而可以自动的完成对象尺寸的测量,可以自动对人体尺寸进行测量,从而提高了人体尺寸测量的效率以及准确度。终端设备还可以控制拟合三维对象模型的关节点的位置,使得拟合三维对象模型根据真实人体的运动而运动。
在一些实施例中,终端设备可以通过公式(1)实现对标准三维对象模型的姿态和形态进行调整。
M(β,θ)=W(T(β),J(β),θ,w) (1)
其中,β为形态参数(也可以称为形态调整参数),θ为姿态参数(也可以称为姿态调整参数),T为标准三维对象模型,T(β)为标准姿态下的形态模型,T(β)是在T的基础上施加若干偏移量B(β)得到。不同的形态参数β构成不同的偏移量,体现不同的形态模型,M(β,θ)是给定标准姿态下的模型T(β)一个姿态所得到的,该姿态由姿态参数θ控制,M(β,θ)可以理解为人体模型绕各个关节点J(β)旋转角度θ。J(β)为标准姿态下的关节位置,受形态参数β的影响。可以通过形态调整参数可以控制人体不同部位的长度,例如控制臂长和腿长。
通常情况下,一个参数化模型确定下来之后,相应的T、形态基地Sn、骨骼权重w(例如LBS骨骼权重)是已知的。因此要确定一个人体模型,可以通过估计出参数β和θ得到拟合后的参数化模型。
在一些实施例中,拟合的过程可以分为两步:构建误差方程和最小化误差方程。终端设备可以根据拟合目标构建误差方程,拟合目标例如可以是人体模型的点云。例如误差方程可以表示为公式(5)。
E(β,θ)=∑||M(β,θ)i-Vcorr(i)||2+Ereg (5)
其中,M(β,θ)i表示模型M(β,θ)上的某一点,Vcorr(i)表示人体点云模型上与M(β,θ)i对应的点,coor(i)表示动态变化的对应关系,Ereg表示正则项。最小化误差方程可以表示为公式(6)
上述基于神经网络关节点估计的人体参数化三维模型变形方法中,获取目标三维对象模型,对目标三维对象模型进行二维图像提取,得到目标二维对象图像集合,获取目标二维关节点检测模型,利用目标二维关节点检测模型对目标二维对象图像集合中的目标二维对象图像进行二维关节点检测,得到各个目标二维对象图像分别对应的目标二维关节点集合,根据目标二维对象图像分别对应的目标二维关节点集合中,各个目标二维关节点分别对应的空间映射关系,得到目标二维关节点对应的目标三维关节点,利用各个目标二维关节点分别对应的目标三维关节点进行对象拟合,得到目标三维对象模型对应的拟合三维对象模型。从而通过二维对象图像的二维关节点准确的得到了三维对象模型的三维关节点,提高了三维关节点的准确度,从而可以提高拟合三维对象模型与目标三维对象模型之间的相似度,从而提高了拟合三维对象模型的准确度。另外,根据目标三维关节点对拟合三维对象模型进行控制,可以使得拟合三维对象模型以目标三维对象模型的形态进行运动,从而模拟真实人体的动作。
在一些实施例中,如图9所示,步骤S204中的获取目标二维关节点检测模型包括:
S902,获取初始二维关节点检测模型以及训练二维对象图像。
具体地,训练二维对象图像可以是对训练三维对象模型进行二维图像提取得到的。训练三维对象模型可以是通过对训练对象进行扫描得到的,训练对象可以是实际的人体,可以是对具有特定姿势的人体进行扫描得到的,也可以是对具有任意姿势的人体进行扫描得到的,特定姿势例如可以是A Pose姿势。训练三维对象模型可以是固定姿势,也可以是任意姿势的。在对人体进行扫描时,为了保证扫描得到的模型的准确性,可以选择身穿紧身衣的人体进行扫描,并且可以选择多种形态的人体进行扫描,例如可以选择不同身高或者不同胖瘦的人体进行扫描。在对同一训练对象进行扫描时,可以通过改变训练对象的姿势,扫描得到多个模型,从而即能得到较多的数据,又可以避免数据重复。例如,在对人体进行扫描时,可以使得人体保持A Pose姿势,并可以改变人体手臂的张开程度,从而避免数据重复。
初始二维关节点检测模型指的是未训练的二维关节点检测模型,可以是自定义的神经网络模型,也可以是现有的神经网路模型,或者现有神经网路模型的变形。例如可以是卷积神经网路模型,具体可以是图10中展示的神经网路模型(记作神经网路模型A)。神经网路模型A包括一个基准网路和多个任务模块。其中,任务模块指的是图中的Stage1(阶段1)~Staget(阶段t),t≥2。基准网路可以是现有网络模型的变形,例如可以是VGG19(VisualGeometry Group 19)的前10层。每个Stage(阶段)包括两个分支,即Branch1和Branch2,Branch1用于预测每个关节点对应的置信图,Branch2用于预设亲和度向量。基准网路的输入包括训练二维对象图像,基准网路的输出包括图像特征,即图中的F,Stage1的输入为F,Stage2~Staget的输入包括F以及前一任务模块的输出,例如,Stage2的输入包括F以及Stage1的输出。每个Stage的输出包括对应的Branch1和Branch2的输出,例如Stage1的输出,包括对应的Branch1的输出S1和对应的Branch2的输出L1。S1表示置信图,可以表示为S1=ρ1(F),L1表示亲和度向量,可以表示为L1=φ1(F),其中,ρ1表示Stage1中的Branch1对应的CNN(Convolutional Neural Networks,卷积神经网络)结构,φ1表示Stage1中的Branch2对应的CNN结构。ρt表示Staget中的Branch1对应的CNN,φt表示Staget中的Branch2对应的CNN结构。ρt的输出可以表示为St=ρt(F,St-1,Lt-1),φt的输出可以表示为Lt=φt(F,St-1,Lt-1)。每个Stage对应两个损失函数,Staget对应的损失函数例如为公式(7)和公式(8)。其中,表示真实的置信图(也称作热点图),表示真实的身体关节连接向量(也称为亲和度向量),J代表关节点的个数,j代表第j个关节点,C代表肢体的个数,c代表第c个肢体。P表示图像中的点。一个肢体对应两个关节点。神经网络模型A的整体的损失函数可以表示为公式(9)。
S904,确定训练二维对象图像对应的图像训练标签,图像训练标签根据训练二维对象图像对应的标注二维关节点集合中的标注二维关节点确定。
具体地,图像训练标签为训练二维对象图像对应的标签。图像训练标签可以包括标注二维关节点集合中各个标注二维关节点分别对应的置信图,还可以包括目标肢体对应的肢体向量图,目标肢体对应的关节点为标注二维关节点集合中的标注二维关节点。肢体由人体的两个关节点以及关节点之间的部位组成的,一个肢体对应两个关节点。肢体类型可以包括小腿、大腿、小手臂以及大手臂等。目标肢体可以根据需要选定的,可以有多个,可以包括不同类型的肢体。
标注二维关节点集合可以包括多个标注二维关节点。标注二维关节点可以是对训练二维对象图像进行关节点标注得到的,也可以是通过训练三维对象模型对应的标注三维关节点得到的,标注二维关节点是对训练三维对象模型进行关节点标注得到的,训练三维对象模型可以是对真实人体进行扫描得到的三维人体点云模型。各个标注二维关节点以及各个标注三维关节点的种类可以是自定义的,也可以是根据现有参数化模型的各个关节点确定的,例如可以为makehuman参数化模型对应的各个关节点。如图11所示,展示了makehuman参数化模型对应的关节点。如图12所示,展示了在三维人体模型中标注的三维关节点。
在一些实施例中,终端设备可以根据标注二维关节点对应的特征信息,确定标注二维关节点对应的目标特征点的目标特征位置,获取目标特征点对应的关联特征点的关联特征位置,根据目标特征位置与关联特征位置之间的差异,确定标注二维关节点对应的置信图。其中,关联特征点可以是与目标特征点在位置上相邻的特征点,也可以是与目标特征点之间的距离小于特征距离阈值的特征点。特征距离阈值可以根据需要进行设置。标注二维对象图像可以对应有多个特征点。特征位置可以包括横向坐标位置以及纵向坐标位置。标注二维关节点对应的置信图可以为目标特征位置与关联特征位置之间的差异,也可以为目标特征位置与关联特征位置之间的差异的平方,也可以是根据目标特征位置与关联特征位置之间的差异以及预设公式计算得到的,例如可以是根据目标特征位置与关联特征位置之间的差异以及二维高斯函数计算得到的。
在一些实施例中,获取目标肢体对应的目标肢体向量,目标肢体向量根据目标肢体对应的关节点的位置确定;根据目标肢体向量确定目标肢体上的目标肢体点对应的目标点向量;根据各个目标肢体点分别对应的目标点向量,得到目标肢体对应的肢体向量图。其中,肢体对应的是一段区域,肢体向量用于表示肢体的方向,可以根据肢体对应的关节点的位置确定,例如,肢体向量的起点和终点可以分别为对应肢体的关节点。目标肢体向量为目标肢体对应的肢体向量。肢体点为肢体上的点,例如肢体上的像素点,一个肢体可以包括多个肢体点。点向量指的是肢体点对应的向量。点向量可以为对应的肢体向量,也可以是根据肢体向量计算得到的,例如可以是肢体向量对应的单位向量。肢体向量图可以包括各个目标点向量,肢体向量图可以包括横向图和纵向图,其中横向图包括各个目标点向量分别对应的横向坐标信息,纵向图包括各个目标点向量分别对应的纵向坐标信息。肢体向量图也可以称为关节连接向量图或亲和度向量图。
S906,根据训练二维对象图像以及训练二维对象图像对应的图像训练标签,对初始二维关节点检测模型进行训练,得到目标二维关节点检测模型。
具体地,终端设备可以将训练二维对象图像输入到初始二维关节点检测模型中,得到模型输出的结果,根据图像训练标签与模型输出结果之间的差异,计算得到初始二维关节点检测模型对应的模型损失值,根据模型损失值调整初始二维关节点检测模型的参数,得到目标二维关节点检测模型。例如,终端设备可以利用梯度下降方法朝着模型损失值下降的方向调整初始二维关节点检测模型的参数,将调整参数后的初始二维关节点检测模型作为目标二维关节点检测模型。其中,训练时Batchsize参数可以设置为10,初始学习率可以设置为0.001,随着训练的迭代记性指数衰减,衰减系数可以设置为0.96,优化器可以采用Adam。其中,模型输出结果与图像训练标签的类型一致,例如当与图像训练标签为二维关节点时,模型输出结果也是二维关节点。当图像训练标签为置信图时,模型输出结果也是置信图。
上述实施例中,根据训练二维对象图像以及训练二维对象图像对应的图像训练标签,对初始二维关节点检测模型进行训练,得到目标二维关节点检测模型,由于图像训练标签根据训练二维对象图像对应的标注二维关节点集合中的标注二维关节点确定,因此可以使得模型输出结果与二维关节点相关,从而可以利用训练后的初始二维关节点检测模型对二维关节点以及二维关节点向相关信息进行预测。
在一些实施例中,如图13所示,步骤S208利用各个目标二维关节点分别对应的目标三维关节点进行对象拟合,得到目标三维对象模型对应的拟合三维对象模型包括:
S1302,获取标准三维对象模型以及标准三维对象模型对应的标准三维关节点集合,标准三维关节点集合包括多个标准三维关节点。
具体地,标准三维关节点集合可以包括多个标准三维关节点,标准三维关节点指的是标准三维对象模型的关节点。标准三维关节点的数量可以与目标三维关节点的数量一致,例如均为16个关节点,标准三维关节点的类型可以与目标三维关节点的类型一致,例如均为头关节点、脖子关节点、左手关节点、左肘关节点和左肩关节点。标准三维关节点集合中的各个标准三维关节点的位置是已知的。
S1304,获取目标关节点约束项,目标关节点约束项包括肢体长度调整项与目标肢体长度的差异,肢体长度调整项为第一关节点调整项与第二关节点调整项的差异结果;第一关节点调整项为第一标准三维关节点的位置与形态调整参数之间运算的结果,第二关节点调整项为第二标准三维关节点的位置与形态调整参数之间运算的结果;第一标准三维关节点以及第二标准三维关节点对应目标肢体类型,目标肢体长度为目标肢体类型对应的第一目标三维关节点与对应的第二目标三维关节点之间的位置差异。
具体地,形态调整参数指的是对标准三维对象模型的形态进行调整的参数。形态调整参数可以实现对一个或者多个标准三维关节点的位置的调整,从而实现对形态的调整,例如可以调整同一肢体对应的关节点之间的位置关系,还可以调整不同肢体对应的关节点之间的位置关系。形态调整参数可以是独立的参数,也可以是包括多个不同功能的子参数,各个子参数可以是分别调整不同的关节点与同一关节点之间的距离的子参数。例如可以包括调整标准三维关节点A与标准三维关节点B之间的距离的子参数,还可以包括调整标准三维关节点A与标准三维关节点C之间的距离的子参数。通过形态调整参数可以控制人体不同部位的长度,例如控制臂长和腿长。
肢体类型可以包括左小手臂、右小手臂、左大手臂、右大手臂、左小腿、右小腿、左大腿和右大腿等,目标肢体类型可以是任意的肢体类型,例如可以是左小手臂。目标肢体类型可以有多个。第一标准三维关节点以及第二标准三维关节点为标准三维关节点集合中目标肢体类型对应的关节点。第一目标三维关节点以及第二目标三维关节点为目标三维对象模型上目标肢体类型对应的关节点。
第一目标三维关节点与第二目标三维关节点之间的位置差异(即目标肢体长度),可以是第一目标三维关节点与第二目标三维关节点之间的距离,也可以是第一目标三维关节点与第二目标三维关节点之间的距离的平方。第一关节点调整项可以是第一标准三维关节点的位置与形态调整参数之间进行线性运算或者非线性运算中的至少一种运算得到的,线性运算例如可以是加法运算和乘积运算。第二关节点调整项可以是第二标准三维关节点的位置与形态调整参数之间进行线性运算或者非线性运算中的至少一种运算得到的。每个标准三维关节点可以分别对应有关节点调整项,标准三维关节点对应的关节点调整项为该标准三维关节点的位置与形态调整参数之间运算的结果。各个标准三维关节点对应同一个形态调整参数。
第一关节点调整项与第二关节点调整项的差异结果(即肢体长度调整项),可以是对第一关节点调整项与第二关节点调整项相减得到的结果进行绝对值或者平方(例如范数平方)中的至少一种运算得到的结果。肢体长度调整项与目标肢体长度的差异,可以是对肢体长度调整项与目标肢体长度相减得到的结果进行绝对值或者平方(例如范数平方)中的至少一种运算得到的结果。肢体长度调整项与目标肢体长度的差异(记作肢体长度差异),与目标关节点约束项成正相关关系。
在一些实施例中,不同的目标肢体类型可以分别对应有肢体长度调整项以及目标肢体长度。终端设备可以计算不同的目标肢体类型分别对应的肢体长度调整项与对应的目标肢体长度的差异,得到各个目标肢体类型分别对应的肢体长度差异,根据各个目标肢体类型分别对应的肢体长度差异,得到目标关节点约束项。终端设备可以根据各个目标肢体类型分别对应的肢体长度差异的统计结果,得到目标关节点约束项。
在一些实施例中,终端设备可以通过计算各个目标肢体类型分别对应的肢体长度差异的统计值对应的最小化结果,确定形态调整因子。例如,终端设备可以利用公式(10)中的式子确定形态调整因子。其中,||J(β)i-J(β)j||2表示肢体长度调整项,表示目标肢体长度,表示肢体长度差异,表示肢体长度差异的统计值。其中,i和j表示属于同一个肢体的两个不同的关节点。J(β)i和J(β)j对应的是标准三维对象模型中的关节点,和指的是目标三维对象模型中的关节点。公式(10)也可以称为能量方程。
S1306,确定目标关节点约束项满足最小化约束条件时,形态调整参数对应的数值,得到目标位置调整因子。
具体地,最小化约束条件可以包括取值小于预设数值或者取值等于固定数值中的至少一种。预设数值可以根据需要进行设置,例如为0.2,固定数值可以根据需要进行设置,例如可以是0.1。当形态调整参数对应的数值发生变化时,目标关节点约束项对应的数值随之发生变化。终端设备可以确定目标关节点约束项满足最小化约束条件时,形态调整参数对应的数值,作为形态调整因子。目标位置调整因子可以是根据形态调整因子得到的,例如目标位置调整因子可以为形态调整因子,或者目标位置调整因子是根据形态调整因子以及其他调整因子得到的,其他调整因子例如可以是姿态调整因子。
在一些实施例中,终端设备可以将目标关节点约束项中的形态调整参数设置为具体的数值进行计算,得到计算结果,当计算结果满足最小化约束条件时,将对应的具体的数值作为形态调整因子,根据形态调整因子得到目标位置调整因子。
S1308,利用目标位置调整因子对标准三维对象模型的关节点进行位置调整,得到拟合三维对象模型。
具体地,终端设备可以根据形态调整因子和姿态调整因子中的至少一个对标准三维对象模型的关节点的位置进行调整,得到拟合三维对象模型。其中,可以先利用形态调整因子进行调整,再利用姿态调整因子进行调整,也可以先利用姿态调整因子进行调整,再利用形态调整因子进行调整,还可以同时利用形态调整因子以及姿态调整因子进行调整。
在一些实施例中,终端设备可以将各个标准三维关节点分别对应的关节点调整项中的形态调整参数设置为形态调整因子,得到各个标准三维关节点分别对应的关节点调整值,将关节点调整值对应的位置作为标准三维关节点的更新位置,将标准三维对象模型中的各个标准三维关节点调整到对应的更新位置处,得到拟合三维对象模型。由于肢体长度差异与目标关节点约束项成正相关关系,目标关节点约束项的结果越小,则肢体长度差异越小,即肢体长度调整项与目标肢体长度的差异越小,则肢体长度调整项对应的肢体的长度与目标肢体长度对应的肢体长度差异越小。因此,将标准三维对象模型中的各个标准三维关节点调整到对应的更新位置处,可以使得调整后的标准三维对象模型的肢体长度与目标三维对象模型的肢体长度一致,使得拟合三维对象模型与目标三维对象模型的姿态一致。
上述实施例中,利用目标位置调整因子对标准三维对象模型的关节点进行位置调整,得到拟合三维对象模型,使得拟合三维对象模型与目标三维对象模型的姿态一致,提高了拟合三维对象模型的准确度。
在一些实施例中,目标关节点约束项还包括第一标准三维关节点对应的第三关节点调整项,与第一目标三维关节点的位置之间的差异,第三关节点调整项为姿态调整参数以及第一关节点调整项进行运算的结果;第一目标三维关节点与第一标准三维关节点的关节点类型一致。
具体地,姿态调整参数指的是对标准三维对象模型的姿态进行调整的参数。姿态调整参数可以实现对一个或者多个标准三维关节点的位置的调整,从而可以实现对姿态的调整。第三关节点调整项可以是姿态调整参数与第一关节点调整项进行线性运算或者非线性运算中的至少一种运算得到的结果,例如可以是姿态调整参数与第一关节点调整项相乘之后的结果。第一目标三维关节点与第一标准三维关节点的关节点类型一致指的是两者为相同类型的关节点,例如第一目标三维关节点与第一标准三维关节点均为左手关节点。第三关节点调整项与第一目标三维关节点的位置之间的差异,可以是对第三关节点调整项与第一目标三维关节点的位置相减后的结果进行绝对值、平方或者范数等中的只少一种计算得到的结果。
在一些实施例中,终端设备可以计算目标关节点类型对应的第一标准三维关节点对应的第三关节点调整项,与第一目标三维关节点的位置之间的差异(记作关节点位置差异),得到目标关节点类型对应的关节点位置差异,根据各个目标关节点类型分别对应的关节点位置差异的统计结果,得到目标关节点约束项,即目标关节点约束项可以包括不同关节点类型分别对应的关节点位置差异的统计结果。目标关节点约束项与关节点位置差异之间成正相关关系。其中,目标关节点类型可以是根据需要确定的,也可以是任意的关节点类型。例如,终端设备可以根据公式(11)确定形态调整参数对应的数值以及姿态调整参数对应的数值,得到目标位置调整因子。其中,R(θ)为姿态调整因子对应的旋转平移矩阵。
在一些实施例中,终端设备可以根据各个目标关节点类型分别对应的关节点位置差异的统计结果,以及各个目标肢体类型分别对应的肢体长度差异的统计结果,得到目标关节点约束项。
在一些实施例中,步骤S1306确定目标关节点约束项满足最小化约束条件时,形态调整参数对应的数值,得到目标位置调整因子包括:确定目标关节点约束项满足最小化约束条件时,形态调整参数对应的数值以及姿态调整参数对应的数值,得到目标位置调整因子。
具体地,终端设备可以确定目标关节点约束项满足最小化约束条件时,形态调整参数对应的数值,记作形态调整因子,以及姿态调整参数对应的数值,记作姿态调整因子,将形态调整因子以及姿态调整因子作为目标位置调整因子。由于目标关节点约束项与关节点位置差异之间成正相关关系,因此确定目标关节点约束项满足最小化约束条件时,形态调整参数对应的数值以及姿态调整参数对应的数值,可以使得得到关节点位置差异以及肢体长度差异两者整体满足最小化的目标位置调整因子,从而能够得到使得拟合三维对象模型的肢体长度与目标三维对象模型的肢体长度相同的形态调整因子,以及使得拟合三维对象模型与目标三维对象模型之间同类型的关节点的位置尽量一致的姿态调整因子,即得到能够使得拟合三维对象模型与目标三维对象模型的姿态和形态保持一致的目标位置调整因子。
在一些实施例中,终端设备可以根据得到的形态调整因子对标准三维对象模型进行形态调整,再通过姿态调整因子对形态调整后的三维对象模型进行姿态调整,得到目标位置调整因子调整后的三维对象模型(记作初配三维对象模型),根据初配三维对象模型得到目标三维对象模型对应的拟合三维对象模型。具体地,终端设备可以将第三关节点调整项中的姿态调整参数设置为姿态调整因子,将其中的形态调参数设置为形态调整因子,得到第三关节点调整项对应的结果,将标准三维对象模型中对应关节点调整到第三关节点调整项对应的结果所代表为位置处,得到拟合三维对象模型。
如图14所示,图14(a)为形态调整的效果图,图14(b)为姿态调整的效果图。终端设备可以根据目标三维对象模型的顶点位置,对初配三维对象模型的顶点位置进行调整,得到非刚体配准三维对象模型,作为目标三维对象模型对应的拟合三维对象模型。如图15所示,图15(a)为初配三维对象模型的示意图,图15(b)为非刚体配准三维对象模型的示意图。如图16所示,展示了非刚体配准的流程示意图。
上述实施例中,确定目标关节点约束项满足最小化约束条件时,形态调整参数对应的数值以及姿态调整参数对应的数值,可以得到使得关节点位置差异以及肢体长度差异两者整体满足最小化的目标位置调整因子,即能够得到使得拟合三维对象模型与目标三维对象模型的姿态和形态保持一致的目标位置调整因子。
应该理解的是,虽然上述各实施例的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,上述各实施例的流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
在一些实施例中,如图17所示,提供了一种基于神经网络关节点估计的人体参数化三维模型变形装置,包括:目标二维对象图像集合得到模块1702、目标二维关节点集合得到模块1704、目标三维关节点得到模块1706和拟合三维对象模型得到模块1708,其中:
目标二维对象图像集合得到模块1702,用于获取目标三维对象模型,对目标三维对象模型进行二维图像提取,得到目标二维对象图像集合,目标三维对象模型通过对目标对象进行扫描得到。
目标二维关节点集合得到模块1704,用于获取目标二维关节点检测模型,利用目标二维关节点检测模型对目标二维对象图像集合中的目标二维对象图像进行二维关节点检测,得到各个目标二维对象图像分别对应的目标二维关节点集合。
目标三维关节点得到模块1706,用于根据目标二维对象图像分别对应的目标二维关节点集合中,各个目标二维关节点分别对应的空间映射关系,得到目标二维关节点对应的目标三维关节点。
拟合三维对象模型得到模块1708,用于利用各个目标二维关节点分别对应的目标三维关节点进行对象拟合,得到目标三维对象模型对应的拟合三维对象模型,以控制拟合三维对象模型进行运动。
在一些实施例中,目标二维关节点集合得到模块1704包括:
初始二维关节点检测模型获取单元,用于获取初始二维关节点检测模型以及训练二维对象图像。
图像训练标签确定单元,用于确定训练二维对象图像对应的图像训练标签,图像训练标签根据训练二维对象图像对应的标注二维关节点集合中的标注二维关节点确定。
目标二维关节点检测模型得到单元,用于根据训练二维对象图像以及训练二维对象图像对应的图像训练标签,对初始二维关节点检测模型进行训练,得到目标二维关节点检测模型。
在一些实施例中,图像训练标签包括标注二维关节点集合中各个标注二维关节点分别对应的置信图;该装置还包括:
目标特征位置获取模块,用于根据标注二维关节点对应的特征信息,确定标注二维关节点对应的目标特征点的目标特征位置。
置信图确定模块,用于获取目标特征点对应的关联特征点的关联特征位置,根据目标特征位置与关联特征位置之间的差异,确定标注二维关节点对应的置信图。
在一些实施例中,图像训练标签包括目标肢体对应的肢体向量图,目标肢体对应的关节点为标注二维关节点集合中的标注二维关节点;该装置还包括:
目标肢体向量获取模块,用于获取目标肢体对应的目标肢体向量,目标肢体向量根据目标肢体对应的关节点的位置确定。
目标点向量确定模块,用于根据目标肢体向量确定目标肢体上的目标肢体点对应的目标点向量。
肢体向量图确定模块,用于根据各个目标肢体点分别对应的目标点向量,得到目标肢体对应的肢体向量图。
在一些实施例中,拟合三维对象模型得到模块1708包括:
标准三维关节点集合获取单元,用于获取标准三维对象模型以及标准三维对象模型对应的标准三维关节点集合;标准三维关节点集合包括多个标准三维关节点。
目标关节点约束项获取单元,用于获取目标关节点约束项,目标关节点约束项包括肢体长度调整项与目标肢体长度的差异,肢体长度调整项为第一关节点调整项与第二关节点调整项的差异结果;第一关节点调整项为第一标准三维关节点的位置与形态调整参数之间运算的结果,第二关节点调整项为第二标准三维关节点的位置与形态调整参数之间运算的结果;第一标准三维关节点以及第二标准三维关节点对应目标肢体类型,目标肢体长度为目标肢体类型对应的第一目标三维关节点与对应的第二目标三维关节点之间的位置差异。
目标位置调整因子得到单元,用于确定目标关节点约束项满足最小化约束条件时,形态调整参数对应的数值,得到目标位置调整因子。
拟合三维对象模型得到单元,用于利用目标位置调整因子对标准三维对象模型的关节点进行位置调整,得到拟合三维对象模型。
在一些实施例中,目标关节点约束项还包括第一标准三维关节点对应的第三关节点调整项,与第一目标三维关节点的位置之间的差异,第三关节点调整项为姿态调整参数以及第一关节点调整项进行运算的结果;第一目标三维关节点与第一标准三维关节点的关节点类型一致。
在一些实施例中,目标位置调整因子得到单元,还用于确定目标关节点约束项满足最小化约束条件时,形态调整参数对应的数值以及姿态调整参数对应的数值,得到目标位置调整因子。
关于基于神经网络关节点估计的人体参数化三维模型变形装置的具体限定可以参见上文中对于基于神经网络关节点估计的人体参数化三维模型变形方法的限定,在此不再赘述。上述基于神经网络关节点估计的人体参数化三维模型变形装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一些实施例中,提供了一种计算机设备,该计算机设备可以是终端,其内部结构图可以如图18所示。该计算机设备包括通过系统总线连接的处理器、存储器、通信接口、显示屏和输入装置。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的通信接口用于与外部的终端进行有线或无线方式的通信,无线方式可通过WIFI、运营商网络、NFC(近场通信)或其他技术实现。该计算机程序被处理器执行时以实现一种基于神经网络关节点估计的人体参数化三维模型变形方法。该计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
本领域技术人员可以理解,图18中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一些实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现上述基于神经网络关节点估计的人体参数化三维模型变形方法的步骤。
在一些实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述基于神经网络关节点估计的人体参数化三维模型变形方法的步骤。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-Only Memory,ROM)、磁带、软盘、闪存或光存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic Random Access Memory,DRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。
Claims (10)
1.一种基于神经网络关节点估计的人体参数化三维模型变形方法,其特征在于,所述方法包括:
获取目标三维对象模型,对所述目标三维对象模型进行二维图像提取,得到目标二维对象图像集合,所述目标三维对象模型通过对目标对象进行扫描得到;
获取目标二维关节点检测模型,利用所述目标二维关节点检测模型对所述目标二维对象图像集合中的目标二维对象图像进行二维关节点检测,得到各个所述目标二维对象图像分别对应的目标二维关节点集合;
根据所述目标二维对象图像分别对应的目标二维关节点集合中,各个目标二维关节点分别对应的空间映射关系,得到所述目标二维关节点对应的目标三维关节点;
利用各个所述目标二维关节点分别对应的目标三维关节点进行对象拟合,得到所述目标三维对象模型对应的拟合三维对象模型,以控制所述拟合三维对象模型进行运动。
2.根据权利要求1所述的方法,其特征在于,所述获取目标二维关节点检测模型包括:
获取初始二维关节点检测模型以及训练二维对象图像;
确定所述训练二维对象图像对应的图像训练标签,所述图像训练标签根据所述训练二维对象图像对应的标注二维关节点集合中的标注二维关节点确定;
根据所述训练二维对象图像以及所述训练二维对象图像对应的图像训练标签,对所述初始二维关节点检测模型进行训练,得到所述目标二维关节点检测模型。
3.根据权利要求2所述的方法,其特征在于,所述图像训练标签包括所述标注二维关节点集合中各个标注二维关节点分别对应的置信图;所述方法还包括:
根据所述标注二维关节点对应的特征信息,确定所述标注二维关节点对应的目标特征点的目标特征位置;
获取所述目标特征点对应的关联特征点的关联特征位置,根据所述目标特征位置与所述关联特征位置之间的差异,确定所述标注二维关节点对应的置信图。
4.根据权利要求2至3中任意一项所述的方法,其特征在于,所述图像训练标签包括目标肢体对应的肢体向量图,所述目标肢体对应的关节点为所述标注二维关节点集合中的标注二维关节点;所述方法还包括:
获取所述目标肢体对应的目标肢体向量,所述目标肢体向量根据所述目标肢体对应的关节点的位置确定;
根据所述目标肢体向量确定所述目标肢体上的目标肢体点对应的目标点向量;
根据各个所述目标肢体点分别对应的目标点向量,得到所述目标肢体对应的肢体向量图。
5.根据权利要求1所述的方法,其特征在于,所述利用各个所述目标二维关节点分别对应的目标三维关节点进行对象拟合,得到所述目标三维对象模型对应的拟合三维对象模型包括:
获取标准三维对象模型以及所述标准三维对象模型对应的标准三维关节点集合;所述标准三维关节点集合包括多个标准三维关节点;
获取目标关节点约束项,所述目标关节点约束项包括肢体长度调整项与目标肢体长度的差异,所述肢体长度调整项为第一关节点调整项与第二关节点调整项的差异结果;所述第一关节点调整项为第一标准三维关节点的位置与形态调整参数之间运算的结果,所述第二关节点调整项为第二标准三维关节点的位置与所述形态调整参数之间运算的结果;所述第一标准三维关节点以及所述第二标准三维关节点对应目标肢体类型,所述目标肢体长度为所述目标肢体类型对应的第一目标三维关节点与对应的第二目标三维关节点之间的位置差异;
确定所述目标关节点约束项满足最小化约束条件时,所述形态调整参数对应的数值,得到目标位置调整因子;
利用所述目标位置调整因子对所述标准三维对象模型的关节点进行位置调整,得到所述拟合三维对象模型。
6.根据权利要求5所述的方法,其特征在于,所述目标关节点约束项还包括所述第一标准三维关节点对应的第三关节点调整项,与所述第一目标三维关节点的位置之间的差异,所述第三关节点调整项为姿态调整参数以及所述第一关节点调整项进行运算的结果;所述第一目标三维关节点与所述第一标准三维关节点的关节点类型一致。
7.根据权利要求6所述的方法,其特征在于,所述确定所述目标关节点约束项满足最小化约束条件时,所述形态调整参数对应的数值,得到目标位置调整因子包括:
确定所述目标关节点约束项满足最小化约束条件时,所述形态调整参数对应的数值以及所述姿态调整参数对应的数值,得到所述目标位置调整因子。
8.一种基于神经网络关节点估计的人体参数化三维模型变形装置,其特征在于,所述装置包括:
目标二维对象图像集合得到模块,用于获取目标三维对象模型,对所述目标三维对象模型进行二维图像提取,得到目标二维对象图像集合,所述目标三维对象模型通过对目标对象进行扫描得到;
目标二维关节点集合得到模块,用于获取目标二维关节点检测模型,利用所述目标二维关节点检测模型对所述目标二维对象图像集合中的目标二维对象图像进行二维关节点检测,得到各个所述目标二维对象图像分别对应的目标二维关节点集合;
目标三维关节点得到模块,用于根据所述目标二维对象图像分别对应的目标二维关节点集合中,各个目标二维关节点分别对应的空间映射关系,得到所述目标二维关节点对应的目标三维关节点;
拟合三维对象模型得到模块,用于利用各个所述目标二维关节点分别对应的目标三维关节点进行对象拟合,得到所述目标三维对象模型对应的拟合三维对象模型,以控制所述拟合三维对象模型进行运动。
9.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至7中任一项所述的方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011046379.1A CN112233222A (zh) | 2020-09-29 | 2020-09-29 | 基于神经网络关节点估计的人体参数化三维模型变形方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011046379.1A CN112233222A (zh) | 2020-09-29 | 2020-09-29 | 基于神经网络关节点估计的人体参数化三维模型变形方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112233222A true CN112233222A (zh) | 2021-01-15 |
Family
ID=74120605
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011046379.1A Pending CN112233222A (zh) | 2020-09-29 | 2020-09-29 | 基于神经网络关节点估计的人体参数化三维模型变形方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112233222A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113096235A (zh) * | 2021-03-09 | 2021-07-09 | 北京达佳互联信息技术有限公司 | 一种虚拟对象的控制方法、装置、电子设备及存储介质 |
CN113837005A (zh) * | 2021-08-20 | 2021-12-24 | 广州杰赛科技股份有限公司 | 一种人体跌倒的检测方法、装置、存储介质及终端设备 |
CN114066986A (zh) * | 2022-01-11 | 2022-02-18 | 南昌虚拟现实研究院股份有限公司 | 三维坐标的确定方法、装置、电子设备及存储介质 |
CN114663552A (zh) * | 2022-05-25 | 2022-06-24 | 武汉纺织大学 | 一种基于2d图像的虚拟试衣方法 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108898063A (zh) * | 2018-06-04 | 2018-11-27 | 大连大学 | 一种基于全卷积神经网络的人体姿态识别装置及方法 |
CN109191593A (zh) * | 2018-08-27 | 2019-01-11 | 百度在线网络技术(北京)有限公司 | 虚拟三维模型的运动控制方法、装置及设备 |
CN109377513A (zh) * | 2018-09-20 | 2019-02-22 | 浙江大学 | 一种针对两视图的全局三维人体姿态可信估计方法 |
CN109949368A (zh) * | 2019-03-14 | 2019-06-28 | 郑州大学 | 一种基于图像检索的人体三维姿态估计方法 |
CN110633005A (zh) * | 2019-04-02 | 2019-12-31 | 北京理工大学 | 一种光学式无标记的三维人体动作捕捉方法 |
US20200082553A1 (en) * | 2018-09-07 | 2020-03-12 | Baidu Online Network Technology (Beijing) Co., Ltd. | Method and apparatus for generating three-dimensional data, device, and storage medium |
CN111539288A (zh) * | 2020-04-16 | 2020-08-14 | 中山大学 | 一种双手姿势的实时检测方法 |
-
2020
- 2020-09-29 CN CN202011046379.1A patent/CN112233222A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108898063A (zh) * | 2018-06-04 | 2018-11-27 | 大连大学 | 一种基于全卷积神经网络的人体姿态识别装置及方法 |
CN109191593A (zh) * | 2018-08-27 | 2019-01-11 | 百度在线网络技术(北京)有限公司 | 虚拟三维模型的运动控制方法、装置及设备 |
US20200082553A1 (en) * | 2018-09-07 | 2020-03-12 | Baidu Online Network Technology (Beijing) Co., Ltd. | Method and apparatus for generating three-dimensional data, device, and storage medium |
CN109377513A (zh) * | 2018-09-20 | 2019-02-22 | 浙江大学 | 一种针对两视图的全局三维人体姿态可信估计方法 |
CN109949368A (zh) * | 2019-03-14 | 2019-06-28 | 郑州大学 | 一种基于图像检索的人体三维姿态估计方法 |
CN110633005A (zh) * | 2019-04-02 | 2019-12-31 | 北京理工大学 | 一种光学式无标记的三维人体动作捕捉方法 |
CN111539288A (zh) * | 2020-04-16 | 2020-08-14 | 中山大学 | 一种双手姿势的实时检测方法 |
Non-Patent Citations (2)
Title |
---|
余光亮;余静;: "单目视频图像序列中的运动目标的三维姿态重建", 网络安全技术与应用, no. 06, 15 June 2017 (2017-06-15) * |
潘春洪, 马颂德: "基于多约束融合的人手臂三维运动分析", 中国图象图形学报, no. 11, 25 November 2001 (2001-11-25) * |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113096235A (zh) * | 2021-03-09 | 2021-07-09 | 北京达佳互联信息技术有限公司 | 一种虚拟对象的控制方法、装置、电子设备及存储介质 |
CN113096235B (zh) * | 2021-03-09 | 2024-03-19 | 北京达佳互联信息技术有限公司 | 一种虚拟对象的控制方法、装置、电子设备及存储介质 |
CN113837005A (zh) * | 2021-08-20 | 2021-12-24 | 广州杰赛科技股份有限公司 | 一种人体跌倒的检测方法、装置、存储介质及终端设备 |
CN114066986A (zh) * | 2022-01-11 | 2022-02-18 | 南昌虚拟现实研究院股份有限公司 | 三维坐标的确定方法、装置、电子设备及存储介质 |
CN114663552A (zh) * | 2022-05-25 | 2022-06-24 | 武汉纺织大学 | 一种基于2d图像的虚拟试衣方法 |
CN114663552B (zh) * | 2022-05-25 | 2022-08-16 | 武汉纺织大学 | 一种基于2d图像的虚拟试衣方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10679046B1 (en) | Machine learning systems and methods of estimating body shape from images | |
CN109636831B (zh) | 一种估计三维人体姿态及手部信息的方法 | |
CN112233222A (zh) | 基于神经网络关节点估计的人体参数化三维模型变形方法 | |
CN108475439B (zh) | 三维模型生成系统、三维模型生成方法和记录介质 | |
CN106164978B (zh) | 使用参数化可变形网状物来构造个性化具体化的方法和系统 | |
Wuhrer et al. | Estimating 3D human shapes from measurements | |
US11315313B2 (en) | Methods, devices and computer program products for generating 3D models | |
CN111862299A (zh) | 人体三维模型构建方法、装置、机器人和存储介质 | |
CN111553284A (zh) | 人脸图像处理方法、装置、计算机设备和存储介质 | |
Li et al. | In-home application (App) for 3D virtual garment fitting dressing room | |
KR20230004837A (ko) | 생성형 비선형 인간 형상 모형 | |
CN109655011B (zh) | 一种人体建模维度测量的方法及系统 | |
CN111815768B (zh) | 三维人脸重建方法和装置 | |
CN113593001A (zh) | 目标对象三维重建方法、装置、计算机设备和存储介质 | |
CN112233223A (zh) | 基于三维点云的人体参数化模型自动变形方法和装置 | |
Dong et al. | A recognizable expression line portrait synthesis method in portrait rendering robot | |
Xie et al. | Hmdo: Markerless multi-view hand manipulation capture with deformable objects | |
Yu et al. | A framework for automatic and perceptually valid facial expression generation | |
Straka et al. | Rapid skin: estimating the 3D human pose and shape in real-time | |
Garcia-D’Urso et al. | Accurate estimation of parametric models of the human body from 3D point clouds | |
CN115049764B (zh) | Smpl参数预测模型的训练方法、装置、设备及介质 | |
Starck et al. | Animated statues | |
Wuhrer et al. | Human shape correspondence with automatically predicted landmarks | |
Zeitvogel et al. | Towards end-to-end 3D human avatar shape reconstruction from 4D data | |
Capell et al. | Physically based rigging for deformable characters |
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 |