Nothing Special   »   [go: up one dir, main page]

CN115862149A - 一种生成3d人体骨骼关键点数据集的方法及系统 - Google Patents

一种生成3d人体骨骼关键点数据集的方法及系统 Download PDF

Info

Publication number
CN115862149A
CN115862149A CN202211721504.3A CN202211721504A CN115862149A CN 115862149 A CN115862149 A CN 115862149A CN 202211721504 A CN202211721504 A CN 202211721504A CN 115862149 A CN115862149 A CN 115862149A
Authority
CN
China
Prior art keywords
model
smpl
human body
parameters
key point
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202211721504.3A
Other languages
English (en)
Other versions
CN115862149B (zh
Inventor
李观喜
张磊
郑娃龙
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Guangzhou Ziweiyun Technology Co ltd
Original Assignee
Guangzhou Ziweiyun Technology Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Guangzhou Ziweiyun Technology Co ltd filed Critical Guangzhou Ziweiyun Technology Co ltd
Priority to CN202211721504.3A priority Critical patent/CN115862149B/zh
Publication of CN115862149A publication Critical patent/CN115862149A/zh
Application granted granted Critical
Publication of CN115862149B publication Critical patent/CN115862149B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Processing Or Creating Images (AREA)

Abstract

本发明提供了一种生成3D人体骨骼关键点数据集的方法及系统,S1,获取包含有骨架边缘之间深度顺序的标注信息的2D姿态数据;S2,利用SMPLify模型以及迭代优化算法获取所述2D姿态数据中每个标注对象的最优的模型,获取重建后人体模型的3D骨骼关键点数据和json文件标注文件。本发明通过使用关节边缘的深度顺序标注信息以及深度顺序惩罚优化项,可以最大限度地减少了同一个2D关键点标注信息对应多个3D身体姿势这种歧义,极大的提升了优化精度降低优化损失。

Description

一种生成3D人体骨骼关键点数据集的方法及系统
技术领域
本发明涉及计算机视觉领域,具体来说,涉及一种生成3D人体骨骼关键点的方法及系统。
背景技术
人体骨骼关键点检测是诸多计算机视觉任务的基础,例如动作分类,行为识别,以及无人驾驶等等。同时在当前元宇宙相关技术的迅速发展大背景下,人机交互相关技术,虚拟数字人驱动等技术在实际工程中应用也越来越广。人作为人机交互的本体,其动作姿态的识别准确度直接影响交互的用户体验。人体3D骨骼关键点检测算法相较于2D骨骼关键点算法多了一维深度信息,能够提高姿态识别的精度,是目前进行人体姿态识别的主要方法。因此提升人体3D骨骼关键点检测算法的精度是重中之重。而数据作为算法的基石,直接影响到算法的精度与泛化能力。
构建人体3D骨骼关键点算法模型的关键挑战是获得逼真的、自然环境下的3D关键点数据,与可以通过人工标注获得的2D关键点数据相比,准确的手动3D关键点标注成为一项独特的具有挑战性的任务。
现有的人体3D关键点数据主要为合成数据以及在实验室环境下得到的数据(代表的数据集有CMU Panoptic Dataset以及Human3.6M)。对于纯合成数据来说,通过3D渲染引擎合成的数据由于人体皮肤以及穿着打扮与真实的人体之间存在较大差异,因此引入了域适应现实世界图片的另一个挑战,导致基于合成数据集训练得到的算法对真实的人体检测效果较差。对于在实验室环境得到数据,需要实验室设置以及带有用于3D扫描的深度传感器的专用硬件一一这就给数据带来了其他额外的限制:例如该数据集不能保持良好的人类和环境多样性水平。因此创造能够快速生成环境多样,人多样的3D人体骨骼关键点数据的方法及系统对基于3D关键点数据的算法研究具有重要的实用价值与现实意义。
本文提供的背景描述用于总体上呈现本公开的上下文的目的。除非本文另外指示,在该章节中描述的资料不是该申请的权利要求的现有技术并且不要通过包括在该章节内来承认其成为现有技术。
发明内容
针对相关技术中的上述技术问题,本发明提出一种生成3D人体骨骼关键点数据集的方法,
S1,获取包含有骨架边缘之间深度顺序的标注信息的2D姿态数据;
S2,利用SMPLify模型以及迭代优化算法获取所述2D姿态数据中每个标注对象的最优的模型,获取重建后人体模型的3D骨骼关键点数据和json文件标注文件;其中所述SMPLify的迭代优化算法优化项为:
Etotal=EJ(β,θ;K,Jest,Jdepth)+λθEθ(θ)+λaEa(θ)+λspEsp(θ;β)+λβEβ(β)
其中EJ代表2D和3D关键点重投影误差,Jdepth为2D关节边缘的深度顺序标注信息;Ea为姿态惩罚项,Eθ为姿态先验项,Esp为碰撞项,Eβ为身份约束项,在每一项中对应的β,θ分别代表人体形态参数和人体关节角度参数。
具体的,所述方法还包括步骤S3,对重建后人体模型的3D模型的关键参数进行微调,使其达到预设精度要求,并获取对应的关节点坐标数据以生成3D骨骼关键点数据。
具体的,所述步骤S3还包括:
S31、将SMPL三维模型导入Unity场景中;
S32、根据步骤S2中获取的SMPL的β,θ以及(s,R,t)参数实时渲染效果SMPL三维模型,其中β,θ分别代表人体形态参数和人体关节角度参数,s,R,t代表弱透视投影的缩放,旋转以及平移参数;
S33、调整所述β,θ以及(s,R,t)参数使得SMPL模型拟合2D图片人物的动作的精度达到预设要求;
S34、获取精度达标的SMPL模型其关节点坐标数据,自动生成标准的json文件标注文件。
具体的,所述步骤S31为:
将SMPL三维模型导入Unity场景中,并且在操作面板上暴露SMPL模型可调整的β,θ以及(s,R,t)参数。
具体的,所述步骤S32为:将步骤S2中得到的SMPL的β,θ以及(s,R,t)参数通过Socket通信实时传给Unity,Unity接收上述参数,实时渲染效果SMPL三维模型,更新场景中的SMPL模型显示结果。
第二方面,本发明的另一个实施例公开了一种生成3D人体骨骼关键点数据集的系统,其包括如下单元:
2D数据标注单元,用于获取包含有骨架边缘之间深度顺序的标注信息的2D姿态数据;
3D人体重建及骨骼关键点数据获取单元,用于利用SMPLify模型以及迭代优化算法获取所述2D姿态数据中每个标注对象的最优的模型,获取重建后人体模型3D骨骼关键点数据;其中所述SMPLify的迭代优化算法优化项为:
Etotal=EJ(β,θ;K,Jest,Jdepth)+λθEθ(θ)+λaEa(θ)+λspEsp(θ;β)+λβEβ(β)
其中EJ代表2D和3D关键点重投影误差,Jdepth为2D关节边缘的深度顺序标注信息;Ea为姿态惩罚项,Eθ为姿态先验项,Esp为碰撞项,Eβ为身份约束项,在每一项中对应的β,θ分别代表人体形态参数和人体关节角度参数。
具体的,所述系统还包括:3D模型微调单元,用于对重建后人体模型的3D模型的关键参数进行微调,使其达到预设精度要求,并获取对应的关节点坐标数据以生成3D骨骼关键点数据。
具体的,所述3D模型微调单元还包括:
三维模型导入单元、用于将SMPL三维模型导入Unity场景中;
三维模型渲染单元、用于根据3D人体重建及骨骼关键点数据获取单元中获取的SMPL的β,θ以及(s,R,t)参数实时渲染效果SMPL三维模型;
参数微调单元、调整所述β,θ以及(s,R,t)参数使得SMPL模型拟合2D图片人物的动作的精度达到预设要求;
关节点坐标数据获取单元、用于获取精度达标的SMPL模型其关节点坐标数据,自动生成标准的json文件标注文件。
具体的,所述三维模型导入单元为:
将SMPL三维模型导入Unity场景中,并且在操作面板上暴露SMPL模型可调整的β,θ以及(s,R,t)参数。
具体的,所述三维模型渲染单元为:将3D人体重建及骨骼关键点数据获取单元中得到的SMPL的β,θ以及(s,R,t)参数通过Socket通信实时传给Unity,Unity接收上述参数,实时渲染效果SMPL三维模型,更新场景中的SMPL模型显示结果。
本发明通过使用关节边缘的深度顺序标注信息以及深度顺序惩罚优化项,可以最大限度地减少了同一个2D关键点标注信息对应多个3D身体姿势这种歧义,极大的提升了优化精度降低优化损失,实验数据显示加入深度顺序标注信息后,重建误差从25%降至3%。进一步的,本发明还通过数据微调标注单元,使得可以针对重建误差较大的人体进行人工微调,在增加数据多样性的同时也提高了数据的准确性与可靠性。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的一种生成3D人体骨骼关键点数据集的方法流程图;
图2是本发明实施例提供的2D关键点原始标注与增加深度顺序标注的示意图;
图3是本发明实施例提供的手部关键点在空间以及时间上的关系图;
图4是本发明实施例提供的结合SMPLify获取3D关键点坐标流程示意图;
图5是本发明实施例提供的调节系统的工作流程示意图;
图6是本发明实施例提供的微调系统实时渲染画面与参数调节面板示意图;
图7是本发明实施例提供的微调前后变化图示意图;
图8本发明实施例提供的一种生成3D人体骨骼关键点数据集系统的示意图;
图9本发明实施例提供的一种生成3D人体骨骼关键点数据集设备的示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员所获得的所有其他实施例,都属于本发明保护的范围。
实施例一
参考图1,本实施例公开了一种生成3D人体骨骼关键点数据集的方法,
S1,获取包含有骨架边缘之间深度顺序的标注信息的2D姿态数据;
目前公开的2D关键点数据集例如COCO,MPII包含丰富的背景以及场景信息,可训练高质量的2D关键点检测算法。但是在人体3D关键点算法任务中,其数据集目前绝大部分都为背景场景单一的实验室场景的数据。因此如果可将2D关键点数据集用于3D关键点算法任务,可以直接提高3D关键点算法的精度以及鲁棒性。当前SMPLify模型可直接从RGB图像和对应的人体2D关键点信息中重建出对象的人体模型。但是该方法对于稍微复杂动作的重建效果并不理想。
针对这种情况,本实施例在2D关键点标注的基础上增加确定的姿势骨架边缘之间的深度顺序。如图3所示,左边为原始2D关键点标注信息图,右边为增加了骨架边缘深度顺序标注信息图。在右图中较宽的边缘角表示更靠近相机的关节(示例中,人的膝关节比髋关节更靠近相机)。这项标注任务与标注真实深度信息相比更加简单,能够直接有效地提高人体重建算法的精度。
S2,利用SMPLify模型以及迭代优化算法获取所述2D姿态数据中每个标注对象的最优的模型,获取重建后人体模型3D骨骼关键点数据和json文件标注文件;其中所述SMPLify的迭代优化算法优化项为:
Etotal=EJ(β,θ;K,Jest,Jdepth)+λθEθ(θ)+λaEa(θ)+λspEsp(θ;β)+λβEβ(β)
其中EJ代表2D和3D关键点重投影误差,Jdepth为2D关节边缘的深度顺序标注信息;Ea为姿态惩罚项,Eθ为姿态先验项,Esp为碰撞项,Eβ为身份约束项,在每一项中对应的β,θ分别代表人体形态参数和人体关节角度参数。
SMPL模型其全称是Skinned Multi-Person Linear(SMP)Model。是一种裸体的(skinned),基于顶点(vertex-based)的人体三维模型,能够精确地表示人体的不同形状(shape)和姿态(pose)。同时SMPL是一种可学习的模型,通过训练可以更好地拟合人体的形状和不同姿态下的形变。
SMPL将身体形状分为identity-dependent shape和non-rigid pose-dependentshape。人体可以理解为是一个基础模型和在该模型基础上进行形变的总和,在形变基础上进行PCA,得到刻画形状的低维度形状(shape)参数;同时,使用运动树表示人体的姿势,即运动树每个关节点和父节点的旋转关系,该关系可以表示为三维向量,最终每个关节点的局部旋转向量构成了SPML模型的姿势(pose)参数。
因此利用SMPL获取3D数据的整体步骤为:
a)、首先定义一个平均人体(mean template shape)如图3(a)所示,它仅包括
Figure BDA0004028552350000071
和ω;
b)、引入人体形状变形器参数(shape blend shape)如图3(b)所示,利用该参数重新计算人体3D模型顶点
Figure BDA0004028552350000081
与关节关键点坐标
Figure BDA0004028552350000082
的位置;
c)、在步骤b)的基础上引入人体动作变形器(pose blend shape)如图3(c)所示,结合步骤2中的计算结果,再次计算人体3D模型顶点的位置,如公式(1);
Figure BDA0004028552350000083
d)、将步骤1~3的计算结果输入到blend skinning函数W中实现人体模型的变形,见图3(d)。利用变形后的模型可得到3D模型所有顶点的坐标
Figure BDA0004028552350000084
e)、根据最终变形后的人体模型顶点分布,可以得到人体表面的dense landmark坐标;
在上述的公式中,各参数代表含义见下:
Figure BDA0004028552350000085
表示三维顶点参数
·ω表示混合蒙皮权重函数包含6890×24个参数,定义了顶点受每个旋转矩阵影响的权重
·β表示体型参数,即每个人对应的高矮胖瘦等参数
●Bs表示体型参数到shape blend shape的映射关系;
·J表示体型参数到关节点的映射关系;
·θ表示姿势参数,即每个关节的旋转角度;
·BP表示姿势参数到pose blend shape的映射关系;
·W表示blend skinning函数(可为LBS或DQBS)混合蒙皮函数
在SMPL获取人体3D关键点的过程了解到一个人体模型可以通过人体形状变形器参数(shape blend shape),人体动作变形器参数(pose blend shape)以及相机模型参数参数(camera parameter)重建回来。因此算法端如果能够得到2D姿态数据集中每个人体对应的形状变形器参数(shape blend shape),动作变形器参数(pose blend shape)以及相机参数(camera parameter)即可获取当前2D姿态数据集中对应人体的3D坐标。
现有的人体重建算法主要实现方案有两种:第一种是通过控制迭代次数与迭代精度的迭代优化的方式进行重建,代表算法有SMPLify。另外一种是直接利用深度学习算法回归参数的方式进行重建,代表算法有SPIN,VIBE,HMR等。
本实施例选择基于SMPLify的迭代优化算法的方式,通过改进迭代优化目标能够比原始算法获取误差更小的重建结果。
原始SMPLify的迭代优化算法优化项为
Etotal=EJ(β,θ;K,Jest)+λθEθ(θ)+λaEa(θ)+λspEsp(θ;β)+λβEβ(β)
其中EJ代表2D和3D关键点重投影误差,本实施例在EJ项中增加2D关节边缘的深度顺序标注信息优化惩罚项后整体的优化项表达式为
Etotal=EJ(β,θ;K,Jest,Jdepth)+λθEθ(θ)+λaEa(θ)+λspEsp(θ;β)+λβEβ(β)
本实施例通过使用关节边缘的深度顺序标注信息以及深度顺序惩罚优化项,可以最大限度地减少了同一个2D关键点标注信息对应多个3D身体姿势这种歧义,极大的提升了优化精度降低优化损失,实验数据显示加入深度顺序标注信息后,重建误差从25%降至3%。
图4展示的是如何利用人体重建算法计算SMPL模型相关参数并且获取3D关键点的流程。从图中可以看出人体重建算法与人体3D数学模型任务是级联分离的,因此本实施例可以集成任何先进的基于人体重建的算法,而不需要太多修改与优化。
本实施例的一种生成3D人体骨骼关键点数据集的方法,在2D关键点标注的基础上,增加确定的姿势骨架边缘之间的深度顺序,可以最大限度地减少了同一个2D关键点标注信息对应多个3D身体姿势这种歧义,极大的提升了优化精度降低优化损失;进一步的在2D姿态数据中增加确定的姿势骨架边缘之间的深度顺序的方式与真实深度注释相比更加简单,并能够有效地提高人体重建算法的精度。在人体重建算法中增加姿势骨架边缘之间的深度顺序作为惩罚损失项,有效提高了基于2D图片进行人体3D重建的算法精度,从而提高3D关键点数据精度。
本实施例使用添加了骨架边缘深度顺序的2D姿态数据集,利用优化拟合的方式进行人体重建,可快速准确地生成2D姿态数据集对应的3D骨骼关键点数据。解决了数据集环境,人体以及域迁移的算法差距问题。
进一步的,本实施例还包括步骤S3,对重建后人体模型的3D模型的关键参数进行微调,使其达到预设精度要求,并获取对应的关节点坐标数据以生成3D骨骼关键点数据。
由于3D到2D投影的性质,3D中的多个点可以在2D中具有相同的投影(即X和Y相同但Z不同)。因此,对一个给定的2D姿态数据,通过人体重建算法生成的3D模型可能产生误差,影响模型最终的精度。因此在算法将2D身体姿势进行重建之外,为了提高数据的质量,减少重建算法的误差,我们要求对SMPL的β,θ以及(s,R,t)几个参数进行微调,以满足最终的数据精度要求。
因此本实施例在利用算法生成2D姿态数据集对应的3D模型的后,还设计了一个参数微调系统对模型重建的结果进行实时可视化调整,在增加人体重建精度的同时提高系统的可操作性以减少人工成本。调节系统的整个工作流程如图5。在微调满足精度要求后,即可获取最终的精准的3D人体骨骼关键点数据。
其微调系统具体过程主要分为4个步骤:
S31、将SMPL三维模型导入Unity场景中;
具体的,本步骤将SMPL三维模型导入Unity场景中,并且在操作面板上暴露SMPL模型可调整的β,θ以及(s,R,t)参数,调整上述参数可以对场景中的模型进行渲染可视化,实时渲染效果如图6所示。
S32、根据步骤S2中获取的SMPL的β,θ以及(s,R,t)参数实时渲染效果SMPL三维模型;
具体的,本实施例根据步骤S2中得到的SMPL的β,θ以及(s,R,t)参数通过Socket通信实时传给Unity,Unity接收上述参数,实时渲染效果SMPL三维模型,更新场景中的SMPL模型显示结果。
S33、调整所述β,θ以及(s,R,t)参数使得SMPL模型拟合2D图片人物的动作的精度达到预设要求;
具体的,本步骤通过Unity实时渲染可视化如果发现此时算法得到参数精度不能满足要求,此时利用步骤S31描述的操作面板手动调整对应参数,精细调整重建效果,使其SMPL模型完全拟合2D图片人物的动作。如图7所示。
S34、获取精度达标的SMPL模型其关节点坐标数据,自动生成标准的json文件标注文件。
本实施例还通过数据微调标注系统,使得可以针对重建误差较大的人体进行人工微调,在增加数据多样性的同时也提高了数据的准确性与可靠性。由于人工只需要微调数量不多的重建参数,因此对于从零开始标注人体3D关键点数据而言,本实施例大大减少了人工成本。
实施例二
参考图8,本实施例公开了一种生成3D人体骨骼关键点数据集的系统,其包括如下单元:
2D数据标注单元,用于获取包含有骨架边缘之间深度顺序的标注信息的2D姿态数据;
目前公开的2D关键点数据集例如COCO,MPII包含丰富的背景以及场景信息,可训练高质量的2D关键点检测算法。但是在人体3D关键点算法任务中,其数据集目前绝大部分都为背景场景单一的实验室场景的数据。因此如果可将2D关键点数据集用于3D关键点算法任务,可以直接提高3D关键点算法的精度以及鲁棒性。当前SMPLify模型可直接从RGB图像和对应的人体2D关键点信息中重建出对象的人体模型。但是该方法对于稍微复杂动作的重建效果并不理想。
针对这种情况,本实施例在2D关键点标注的基础上增加确定的姿势骨架边缘之间的深度顺序。如图3所示,左边为原始2D关键点标注信息图,右边为增加了骨架边缘深度顺序标注信息图。在右图中较宽的边缘角表示更靠近相机的关节(示例中,人的膝关节比髋关节更靠近相机)。这项标注任务与标注真实深度信息相比更加简单,能够直接有效地提高人体重建算法的精度。
3D人体重建及骨骼关键点数据获取单元,用于利用SMPLify模型以及迭代优化算法获取所述2D姿态数据中每个标注对象的最优的模型,获取重建后人体模型3D骨骼关键点数据和json文件标注文件;其中所述SMPLify的迭代优化算法优化项为:
Etotal=EJ(β,θ;K,Jest,Jdepth)+λθEθ(θ)+λaEa(θ)+λspEsp(θ;β)+λβEβ(β)
其中EJ代表2D和3D关键点重投影误差,Jdepth为2D关节边缘的深度顺序标注信息;Ea为姿态惩罚项,Eθ为姿态先验项,Esp为碰撞项,Eβ为身份约束项,在每一项中对应的β,θ分别代表人体形态参数和人体关节角度参数。
SMPL模型其全称是Skinned Multi-Person Linear(SMP)Model。是一种裸体的(skinned),基于顶点(vertex-based)的人体三维模型,能够精确地表示人体的不同形状(shape)和姿态(pose)。同时SMPL是一种可学习的模型,通过训练可以更好地拟合人体的形状和不同姿态下的形变。
SMPL将身体形状分为identity-dependent shape和non-rigid pose-dependentshape。人体可以理解为是一个基础模型和在该模型基础上进行形变的总和,在形变基础上进行PCA,得到刻画形状的低维度形状(shape)参数;同时,使用运动树表示人体的姿势,即运动树每个关节点和父节点的旋转关系,该关系可以表示为三维向量,最终每个关节点的局部旋转向量构成了SPML模型的姿势(pose)参数。
因此利用SMPL获取3D数据的整体步骤为:
a)、首先定义一个平均人体(mean template shape)如图3(a)所示,它仅包括
Figure BDA0004028552350000131
和ω;
b)、引入人体形状变形器参数(shape blend shape)如图3(b)所示,利用该参数重新计算人体3D模型顶点
Figure BDA0004028552350000132
与关节关键点坐标
Figure BDA0004028552350000133
的位置;
c)、在步骤b)的基础上引入人体动作变形器(pose blend shape)如图3(c)所示,结合步骤2中的计算结果,再次计算人体3D模型顶点的位置,如公式(1);
Figure BDA0004028552350000134
d)、将步骤1~3的计算结果输入到blend skinning函数W中实现人体模型的变形,见图3(d)。利用变形后的模型可得到3D模型所有顶点的坐标
Figure BDA0004028552350000141
e)、根据最终变形后的人体模型顶点分布,可以得到人体表面的dense landmark坐标;
在上述的公式中,各参数代表含义见下:
Figure BDA0004028552350000142
表示三维顶点参数
·ω表示混合蒙皮权重函数包含6890×24个参数,定义了顶点受每个旋转矩阵影响的权重
·β表示体型参数,即每个人对应的高矮胖瘦等参数
●Bs表示体型参数到shape blend shape的映射关系;
●J表示体型参数到关节点的映射关系;
·θ表示姿势参数,即每个关节的旋转角度;
●BP表示姿势参数到pose blend shape的映射关系;
●W表示blend skinning函数(可为LBS或DQBS)混合蒙皮函数
在SMPL获取人体3D关键点的过程了解到一个人体模型可以通过人体形状变形器参数(shape blend shape),人体动作变形器参数(pose blend shape)以及相机模型参数参数(camera parameter)重建回来。因此算法端如果能够得到2D姿态数据集中每个人体对应的形状变形器参数(shape blend shape),动作变形器参数(pose blend shape)以及相机参数(camera parameter)即可获取当前2D姿态数据集中对应人体的3D坐标。
现有的人体重建算法主要实现方案有两种:第一种是通过控制迭代次数与迭代精度的迭代优化的方式进行重建,代表算法有SMPLify。另外一种是直接利用深度学习算法回归参数的方式进行重建,代表算法有SPIN,VIBE,HMR等。
本实施例选择基于SMPLify的迭代优化算法的方式,通过改进迭代优化目标能够比原始算法获取误差更小的重建结果。
原始SMPLify的迭代优化算法优化项为
Etotal=EJ(β,θ;K,Jest)+λθEθ(θ)+λaEa(θ)+λspEsp(θ;β)+λβEβ(β)
其中EJ代表2D和3D关键点重投影误差,本实施例在EJ项中增加2D关节边缘的深度顺序标注信息优化惩罚项后整体的优化项表达式为
Etotal=EJ(β,θ;K,Jest,Jdepth)+λθEθ(θ)+λaEa(θ)+λspEsp(θ;β)+λβEβ(β)
本实施例通过使用关节边缘的深度顺序标注信息以及深度顺序惩罚优化项,可以最大限度地减少了同一个2D关键点标注信息对应多个3D身体姿势这种歧义,极大的提升了优化精度降低优化损失,实验数据显示加入深度顺序标注信息后,重建误差从25%降至3%。
图4展示的是如何利用人体重建算法计算SMPL模型相关参数并且获取3D关键点的流程。从图中可以看出人体重建算法与人体3D数学模型任务是级联分离的,因此本实施例可以集成任何先进的基于人体重建的算法,而不需要太多修改与优化。
本实施例的一种生成3D人体骨骼关键点数据集的方法,在2D关键点标注的基础上,增加确定的姿势骨架边缘之间的深度顺序,可以最大限度地减少了同一个2D关键点标注信息对应多个3D身体姿势这种歧义,极大的提升了优化精度降低优化损失;进一步的在2D姿态数据中增加确定的姿势骨架边缘之间的深度顺序的方式与真实深度注释相比更加简单,并能够有效地提高人体重建算法的精度。在人体重建算法中增加姿势骨架边缘之间的深度顺序作为惩罚损失项,有效提高了基于2D图片进行人体3D重建的算法精度,从而提高3D关键点数据精度。
本实施例使用添加了骨架边缘深度顺序的2D姿态数据集,利用优化拟合的方式进行人体重建,可快速准确地生成2D姿态数据集对应的3D骨骼关键点数据。解决了数据集环境,人体以及域迁移的算法差距问题。
进一步的,本实施例还包括3D模型微调单元,用于对重建后人体模型的3D模型的关键参数进行微调,使其达到预设精度要求,并获取对应的关节点坐标数据以生成3D骨骼关键点数据。
由于3D到2D投影的性质,3D中的多个点可以在2D中具有相同的投影(即X和Y相同但Z不同)。因此,对一个给定的2D姿态数据,通过人体重建算法生成的3D模型可能产生误差,影响模型最终的精度。因此在算法将2D身体姿势进行重建之外,为了提高数据的质量,减少重建算法的误差,我们要求对SMPL的β,θ以及(s,R,t)几个参数进行微调,以满足最终的数据精度要求。
因此本实施例在利用算法生成2D姿态数据集对应的3D模型的后,还设计了一个3D模型微调单元对模型重建的结果进行实时可视化调整,在增加人体重建精度的同时提高系统的可操作性以减少人工成本。3D模型微调单元的整个工作流程如图5。在微调满足精度要求后,即可获取最终的精准的3D人体骨骼关键点数据。
其参数微调单元包括:
三维模型导入单元、用于将SMPL三维模型导入Unity场景中;
具体的,本步骤将SMPL三维模型导入Unity场景中,并且在操作面板上暴露SMPL模型可调整的β,θ以及(s,R,t)参数,调整上述参数可以对场景中的模型进行渲染可视化,实时渲染效果如图6所示。
三维模型渲染单元、用于根据3D人体重建及骨骼关键点数据获取单元中获取的SMPL的β,θ以及(s,R,t)参数实时渲染效果SMPL三维模型;
具体的,本实施例根据步骤S2中得到的SMPL的β,θ以及(s,R,t)参数通过Socket通信实时传给Unity,Unity接收上述参数,实时渲染效果SMPL三维模型,更新场景中的SMPL模型显示结果。
参数微调单元、调整所述β,θ以及(s,R,t)参数使得SMPL模型拟合2D图片人物的动作的精度达到预设要求;
具体的,本步骤通过Unity实时渲染可视化如果发现此时算法得到参数精度不能满足要求,此时利用步骤S31描述的操作面板手动调整对应参数,精细调整重建效果,使其SMPL模型完全拟合2D图片人物的动作。如图7所示。
关节点坐标数据获取单元、用于获取精度达标的SMPL模型其关节点坐标数据,自动生成标准的json文件标注文件。
本实施例还通过数据微调标注单元,使得可以针对重建误差较大的人体进行人工微调,在增加数据多样性的同时也提高了数据的准确性与可靠性。由于人工只需要微调数量不多的重建参数,因此对于从零开始标注人体3D关键点数据而言,本实施例大大减少了人工成本。
实施例三
参考图9,图9是本实施例的一种生成3D人体骨骼关键点数据集的设备的结构示意图。该实施例的生成3D人体骨骼关键点数据集的设备20包括处理器21、存储器22以及存储在所述存储器22中并可在所述处理器21上运行的计算机程序。所述处理器21执行所述计算机程序时实现上述方法实施例中的步骤。或者,所述处理器21执行所述计算机程序时实现上述各装置实施例中各模块/单元的功能。
示例性的,所述计算机程序可以被分割成一个或多个模块/单元,所述一个或者多个模块/单元被存储在所述存储器22中,并由所述处理器21执行,以完成本发明。所述一个或多个模块/单元可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述所述计算机程序在所述生成3D人体骨骼关键点数据集的设备20中的执行过程。例如,所述计算机程序可以被分割成实施例二中的各个模块,各模块具体功能请参考上述实施例所述的装置的工作过程,在此不再赘述。
所述生成3D人体骨骼关键点数据集的设备20可包括,但不仅限于,处理器21、存储器22。本领域技术人员可以理解,所述示意图仅仅是生成3D人体骨骼关键点数据集的设备20的示例,并不构成对生成3D人体骨骼关键点数据集的设备20的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如所述生成3D人体骨骼关键点数据集的设备20还可以包括输入输出设备、网络接入设备、总线等。
所述处理器21可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等,所述处理器21是所述生成3D人体骨骼关键点数据集的设备20的控制中心,利用各种接口和线路连接整个生成3D人体骨骼关键点数据集的设备20的各个部分。
所述存储器22可用于存储所述计算机程序和/或模块,所述处理器21通过运行或执行存储在所述存储器22内的计算机程序和/或模块,以及调用存储在存储器22内的数据,实现所述生成3D人体骨骼关键点数据集的设备20的各种功能。所述存储器22可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据手机的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器22可以包括高速随机存取存储器,还可以包括非易失性存储器,例如硬盘、内存、插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)、至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
其中,所述生成3D人体骨骼关键点数据集的设备20集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器21执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。
需说明的是,以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。另外,本发明提供的装置实施例附图中,模块之间的连接关系表示它们之间具有通信连接,具体可以实现为一条或多条通信总线或信号线。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (10)

1.一种生成3D人体骨骼关键点数据集的方法,
S1,获取包含有骨架边缘之间深度顺序的标注信息的2D姿态数据;
S2,利用SMPLify模型以及迭代优化算法获取所述2D姿态数据中每个标注对象的最优的模型,获取重建后人体模型的3D骨骼关键点数据和json文件标注文件;其中所述SMPLify的迭代优化算法优化项为:
Etotal=EJ(β,θ;K,Jest,Jdepth)+λθEθ(θ)+λaEa(θ)+λspEsp(θ;β)+λβEβ(β)
其中EJ代表2D和3D关键点重投影误差,Jdepth为2D关节边缘的深度顺序标注信息;Ea为姿态惩罚项,Eθ为姿态先验项,Esp为碰撞项,Eβ为身份约束项,在每一项中对应的β,θ分别代表人体形态参数和人体关节角度参数。
2.根据所述权利要求1所述的方法,所述方法还包括步骤S3,对重建后人体模型的3D模型的关键参数进行微调,使其达到预设精度要求,并获取对应的关节点坐标数据以生成3D骨骼关键点数据。
3.根据权利要求2所述的方法,所述步骤S3还包括:
S31、将SMPL三维模型导入Unity场景中;
S32、根据步骤S2中获取的SMPL的β,θ以及(s,R,t)参数实时渲染效果SMPL三维模型,其中β,θ分别代表人体形态参数和人体关节角度参数,s,R,t代表弱透视投影的缩放,旋转以及平移参数;
S33、调整所述β,θ以及(s,R,t)参数使得SMPL模型拟合2D图片人物的动作的精度达到预设要求;
S34、获取精度达标的SMPL模型其关节点坐标数据,自动生成标准的json文件标注文件。
4.根据权利要求3所述的方法,所述步骤S31为:
将SMPL三维模型导入Unity场景中,并且在操作面板上暴露SMPL模型可调整的β,θ以及(s,R,t)参数。
5.根据权利要求3所述的方法,所述步骤S32为:将步骤S2中得到的SMPL的β,θ以及(s,R,t)参数通过Socket通信实时传给Unity,Unity接收上述参数,实时渲染效果SMPL三维模型,更新场景中的SMPL模型显示结果。
6.一种生成3D人体骨骼关键点数据集的系统,其包括如下单元:
2D数据标注单元,用于获取包含有骨架边缘之间深度顺序的标注信息的2D姿态数据;
3D人体重建及骨骼关键点数据获取单元,用于利用SMPLify模型以及迭代优化算法获取所述2D姿态数据中每个标注对象的最优的模型,获取重建后人体模型3D骨骼关键点数据;其中所述SMPLify的迭代优化算法优化项为:
Etotal=EJ(β,θ;K,Jest,Jdepth)+λθEθ(θ)+λaEa(θ)+λspEsp(θ;β)+λβEβ(β)
其中EJ代表2D和3D关键点重投影误差,Jdepth为2D关节边缘的深度顺序标注信息;Ea为姿态惩罚项,Eθ为姿态先验项,Esp为碰撞项,Eβ为身份约束项,在每一项中对应的β,θ分别代表人体形态参数和人体关节角度参数。
7.根据所述权利要求6所述的系统,所述系统还包括:3D模型微调单元,用于对重建后人体模型的3D模型的关键参数进行微调,使其达到预设精度要求,并获取对应的关节点坐标数据以生成3D骨骼关键点数据。
8.根据权利要求7所述的系统,所述3D模型微调单元还包括:
三维模型导入单元、用于将SMPL三维模型导入Unity场景中;
三维模型渲染单元、用于根据3D人体重建及骨骼关键点数据获取单元中获取的SMPL的β,θ以及(s,R,t)参数实时渲染效果SMPL三维模型;
参数微调单元、调整所述β,θ以及(s,R,t)参数使得SMPL模型拟合2D图片人物的动作的精度达到预设要求;
关节点坐标数据获取单元、用于获取精度达标的SMPL模型其关节点坐标数据,自动生成标准的json文件标注文件。
9.根据权利要求8所述的系统,所述三维模型导入单元为:
将SMPL三维模型导入Unity场景中,并且在操作面板上暴露SMPL模型可调整的β,θ以及(s,R,t)参数。
10.根据权利要求8所述的系统,所述三维模型渲染单元为:将3D人体重建及骨骼关键点数据获取单元中得到的SMPL的β,θ以及(s,R,t)参数通过Socket通信实时传给Unity,Unity接收上述参数,实时渲染效果SMPL三维模型,更新场景中的SMPL模型显示结果。
CN202211721504.3A 2022-12-30 2022-12-30 一种生成3d人体骨骼关键点数据集的方法及系统 Active CN115862149B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211721504.3A CN115862149B (zh) 2022-12-30 2022-12-30 一种生成3d人体骨骼关键点数据集的方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211721504.3A CN115862149B (zh) 2022-12-30 2022-12-30 一种生成3d人体骨骼关键点数据集的方法及系统

Publications (2)

Publication Number Publication Date
CN115862149A true CN115862149A (zh) 2023-03-28
CN115862149B CN115862149B (zh) 2024-03-22

Family

ID=85656275

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211721504.3A Active CN115862149B (zh) 2022-12-30 2022-12-30 一种生成3d人体骨骼关键点数据集的方法及系统

Country Status (1)

Country Link
CN (1) CN115862149B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117095131A (zh) * 2023-10-16 2023-11-21 广州紫为云科技有限公司 物体运动关键点的三维重建方法、设备及存储介质

Citations (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109636831A (zh) * 2018-12-19 2019-04-16 安徽大学 一种估计三维人体姿态及手部信息的方法
CN111339903A (zh) * 2020-02-21 2020-06-26 河北工业大学 一种多人人体姿态估计方法
CN111582036A (zh) * 2020-04-09 2020-08-25 天津大学 可穿戴设备下基于形状和姿态的跨视角人物识别方法
CN111738220A (zh) * 2020-07-27 2020-10-02 腾讯科技(深圳)有限公司 三维人体姿态估计方法、装置、设备及介质
US20210049811A1 (en) * 2019-08-13 2021-02-18 Texel Llc Method and System for Remote Clothing Selection
CN112750199A (zh) * 2021-01-13 2021-05-04 电子科技大学 一种基于能量优化的大熊猫三维模型重建方法
CN114119907A (zh) * 2020-08-27 2022-03-01 北京陌陌信息技术有限公司 一种人体模型的拟合方法、设备和存储介质
CN114119911A (zh) * 2020-08-27 2022-03-01 北京陌陌信息技术有限公司 一种人体模型神经网络训练方法、设备和存储介质
CN114202629A (zh) * 2020-08-27 2022-03-18 北京陌陌信息技术有限公司 一种人体模型的建立方法、系统、设备和存储介质
CN114359445A (zh) * 2021-12-29 2022-04-15 中央财经大学 人体骨骼关节点提取模型的训练数据生成方法及装置
CN114581613A (zh) * 2022-04-29 2022-06-03 杭州倚澜科技有限公司 一种基于轨迹约束的人体模型姿态和形状优化方法和系统
WO2022166412A1 (zh) * 2021-02-05 2022-08-11 中国科学院深圳先进技术研究院 基于协同分割与数据增强的自监督三维重建方法及系统
CN115083015A (zh) * 2022-06-09 2022-09-20 广州紫为云科技有限公司 一种3d人体姿态估计数据标注方式和对应的模型构建方法
CN115115776A (zh) * 2022-06-15 2022-09-27 中国科学院软件研究所 基于影子的单幅图像三维人体重建方法及装置
WO2022222091A1 (zh) * 2021-04-22 2022-10-27 浙江大学 一种基于单张照片的人物浅浮雕模型生成方法

Patent Citations (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109636831A (zh) * 2018-12-19 2019-04-16 安徽大学 一种估计三维人体姿态及手部信息的方法
US20210049811A1 (en) * 2019-08-13 2021-02-18 Texel Llc Method and System for Remote Clothing Selection
CN111339903A (zh) * 2020-02-21 2020-06-26 河北工业大学 一种多人人体姿态估计方法
CN111582036A (zh) * 2020-04-09 2020-08-25 天津大学 可穿戴设备下基于形状和姿态的跨视角人物识别方法
CN111738220A (zh) * 2020-07-27 2020-10-02 腾讯科技(深圳)有限公司 三维人体姿态估计方法、装置、设备及介质
CN114119907A (zh) * 2020-08-27 2022-03-01 北京陌陌信息技术有限公司 一种人体模型的拟合方法、设备和存储介质
CN114119911A (zh) * 2020-08-27 2022-03-01 北京陌陌信息技术有限公司 一种人体模型神经网络训练方法、设备和存储介质
CN114202629A (zh) * 2020-08-27 2022-03-18 北京陌陌信息技术有限公司 一种人体模型的建立方法、系统、设备和存储介质
CN112750199A (zh) * 2021-01-13 2021-05-04 电子科技大学 一种基于能量优化的大熊猫三维模型重建方法
WO2022166412A1 (zh) * 2021-02-05 2022-08-11 中国科学院深圳先进技术研究院 基于协同分割与数据增强的自监督三维重建方法及系统
WO2022222091A1 (zh) * 2021-04-22 2022-10-27 浙江大学 一种基于单张照片的人物浅浮雕模型生成方法
CN114359445A (zh) * 2021-12-29 2022-04-15 中央财经大学 人体骨骼关节点提取模型的训练数据生成方法及装置
CN114581613A (zh) * 2022-04-29 2022-06-03 杭州倚澜科技有限公司 一种基于轨迹约束的人体模型姿态和形状优化方法和系统
CN115083015A (zh) * 2022-06-09 2022-09-20 广州紫为云科技有限公司 一种3d人体姿态估计数据标注方式和对应的模型构建方法
CN115115776A (zh) * 2022-06-15 2022-09-27 中国科学院软件研究所 基于影子的单幅图像三维人体重建方法及装置

Non-Patent Citations (7)

* Cited by examiner, † Cited by third party
Title
LI, Z.等: ""CLIFF: Carrying Location Information in Full Frames into Human Pose and Shape Estimation"", 《COMPUTER VISION – ECCV 2022》, vol. 13665, pages 590 *
N. RÜEGG等: ""BARC: Learning to Regress 3D Dog Shape from Images by Exploiting Breed Information"", 《2022 IEEE/CVF CONFERENCE ON COMPUTER VISION AND PATTERN RECOGNITION (CVPR)》, pages 3866 - 3874 *
彭睿孜等: ""基于空洞转置卷积神经网络的人体骨骼关键点检测算法研究"", 《智能物联技术》, vol. 5, no. 1, pages 8 - 13 *
徐土豆: ""人体动作捕捉与SMPL模型 (mocap and SMPL model)"", pages 1 - 12, Retrieved from the Internet <URL:《https://zhuanlan.zhihu.com/p/158700893》> *
杨起航: ""基于深度学习的单目视频人体动作捕捉研究"", 《中国优秀硕士学位论文全文数据库 信息科技辑》, no. 3, pages 138 - 1715 *
林之钊等: ""从单幅图像生成人物三维动画"", 《计算机辅助设计与图形学学报》, vol. 34, no. 9, pages 1341 - 1350 *
陈秋敏: ""基于深度学习的多视图物体三维重建研究"", 《中国优秀硕士学位论文全文数据库信息科技辑》, no. 7, pages 138 - 1237 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117095131A (zh) * 2023-10-16 2023-11-21 广州紫为云科技有限公司 物体运动关键点的三维重建方法、设备及存储介质
CN117095131B (zh) * 2023-10-16 2024-02-06 广州紫为云科技有限公司 物体运动关键点的三维重建方法、设备及存储介质

Also Published As

Publication number Publication date
CN115862149B (zh) 2024-03-22

Similar Documents

Publication Publication Date Title
US6532011B1 (en) Method of creating 3-D facial models starting from face images
Zhou et al. Parametric reshaping of human bodies in images
JP2023526566A (ja) 高速で深い顔面変形
US11587288B2 (en) Methods and systems for constructing facial position map
US20080204457A1 (en) Rig Baking
CN104123749A (zh) 一种图像处理方法及系统
Han et al. Exemplar-based 3d portrait stylization
WO2022197431A1 (en) Methods and systems for personalized 3d head model deformation
CN113593001A (zh) 目标对象三维重建方法、装置、计算机设备和存储介质
CN110751733A (zh) 用于将3d扫描对象转换为化身的方法和装置
KR20230110787A (ko) 개인화된 3d 머리 및 얼굴 모델들을 형성하기 위한 방법들 및 시스템들
WO2022197429A1 (en) Methods and systems for extracting color from facial image
CN115862149B (zh) 一种生成3d人体骨骼关键点数据集的方法及系统
US20230306686A1 (en) Three-dimensional mesh generator based on two-dimensional image
CN115661367B (zh) 基于照片采集的动态混合变形的建模方法及系统
CN115972202B (zh) 控制机械臂操作的方法、机器人、设备、介质和产品
CN116766596A (zh) 人物模型打印方法、装置、电子设备及存储介质
CN116452715A (zh) 动态人手渲染方法、装置及存储介质
Zhang et al. CreatureShop: Interactive 3D Character Modeling and Texturing From a Single Color Drawing
EP4111420A1 (en) Face mesh deformation with detailed wrinkles
CN110751710A (zh) 用于将附件对象拟合到化身的方法和装置
CN116912433B (zh) 三维模型骨骼绑定方法、装置、设备及存储介质
Straka Introduction to Deep Learning
Kazmi Efficient sketch-based 3D character modelling.
Hennessey Assistive visual content creation tools via multimodal correlation analysis

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