一种人体模型的构建方法、装置、电子设备及存储介质与流程

文档序号:32069989发布日期:2022-11-05 02:00阅读:65来源:国知局
一种人体模型的构建方法、装置、电子设备及存储介质与流程

1.本发明属于三维重建技术领域,具体涉及一种人体模型的构建方法、装置、电子设备及存储介质。


背景技术:

2.目前,重建人体三维模型的方法主要有以下几种:(1)设备扫描重建方法,该方法主要是靠设备采集深度信息来重建人体模型,例如通过rgbd摄像头或者结构光来重建人体模型;(2)双目/多目视觉重建方法,这种方法是靠两个摄像头形成视觉差,从而通过算法计算深度信息,以重建深度图来构建人体模型;(3)单帧图像重建方法,此方法是利用深度学习算法从图像中获取体型等参数信息,从而利用参数修正已有的标准化人体模型,以此来实现人体模型的重建。
3.但是,前述三种方法各自存在以下不足,分别为:设备扫描重建方法虽然重建效果较好,但是明显的缺点是设备搭建成本高,并且扫描得到的三维模型多需要后期修正才可以使用;双目/多目视觉的重建精度较差,且双目/多目摄像机无法广泛推广,计算出的模型也需要修正后才能使用;单帧图像重建是参数化方法,具有标准化人体,因此,并不需要后期修正,但是由于缺少了深度信息,和其它两种技术相比也是精度最低的;因此,提供一种成本低,易实现,并且精度较高的人体模型重建方法迫在眉睫。


技术实现要素:

4.本发明的目的是提供一种人体模型的构建方法、装置、电子设备及存储介质,用以解决现有技术中所存在的成本高、无法广泛推广以及精度较差的问题。
5.为了实现上述目的,本发明采用以下技术方案:
6.第一方面,提供了一种人体模型的构建方法,包括:
7.获取目标人物的人体二维图像,其中,人体二维图像包括人体正面图像以及人体侧面图像;
8.对所述人体二维图像进行轮廓识别,得到人体正面轮廓图像以及人体侧面轮廓图像;
9.将所述人体正面轮廓图像以及所述人体侧面轮廓图像输入至人体参数识别模型中,分别得到所述人体正面图像对应的第一人体体型参数,以及所述人体侧面图像对应的第二人体体型参数,其中,第一人体体型参数和第二人体体型参数均用于表征目标人物的身体形态数据;
10.基于所述第一人体体型参数和所述第二人体体型参数,得到目标人物的标定体型参数;
11.获取初始人体三维模型,并基于所述标定体型参数,调整所述初始人体三维模型,以在调整后,得到所述目标人物的人体模型。
12.基于上述公开的内容,本发明先获取人体二维的正面图像以及侧面图像,然后对
获取的二维图像进行轮廓识别,分别得到人体的正面轮廓图像和侧面轮廓图像;接着,将正面轮廓图像和侧面轮廓图像输入至人体参数识别模型中,得到人体正面图像对应的第一人体体型参数,以及人体侧面图像对应的第二人体体型参数,前述体型参数用于表征人体的各种身体形态数据,如身高、腰围、胸围、臀围、肩宽、臂长和腿长等数据,因此,该步骤相当于得到了目标人物在正面以及侧面时的各种身体形态数据;然后,本发明再基于正面以及侧面对应的人体体型参数,来计算得到最贴切目标人物身体形态的标定体型参数,最后,利用该标定体型参数来调整初始人体三维模型的身体形态数据,调整完成后,即可完成目标人物的模型重建,得到目标人物对应的人体模型。
13.通过上述设计,本发明在进行人体模型重建时,无需采集人体的深度图像,也无需计算人体的深度信息,因此,相比于设备扫描重建方法以及双目/多目视觉重建方法,本发明的成本低、方式简便且不依赖设备,更便于广泛推广;同时,生成的三维模型不需要算法连续性修正就可以直接使用,使用起来更加方便;另外,相比于单帧图像重建算法,本发明将正侧两张照片对应的轮廓图像输入至人体参数识别模型中进行体型参数的回归,避免了单张图像缺失部分特征的问题,进而大幅提高了模型的构建精度。
14.在一个可能的设计中,对所述人体二维图像进行轮廓识别,得到人体正面轮廓图像以及人体侧面轮廓图像,包括:
15.将所述人体二维图像输入至训练后的语义分割深度神经网络中进行轮廓识别,得到人体正面初始轮廓图像以及人体侧面初始轮廓图像;
16.对所述人体正面初始轮廓图像和所述人体侧面初始轮廓图像进行掩码顶格处理,得到处理后的人体正面初始轮廓图像以及处理后的人体侧面初始轮廓图像;
17.对所述处理后的人体正面初始轮廓图像以及所述处理后的人体侧面初始轮廓图像进行边界填充处理,以在填充后,得到所述人体正面轮廓图像以及所述人体侧面轮廓图像。
18.基于上述公开的内容,本发明公开了轮廓识别的具体识别过程,即先使用训练后的语义分割神经网络对人体正面以及侧面图像进行轮廓识别,得到人体正面初始轮廓图像以及人体侧面初始轮廓图像;然后,为避免在拍摄时,相机距离对目标人物体型参数的影响,本发明通过对识别出的初始正面以及初始侧面轮廓图像进行掩码顶格处理,从而消除相机远近对身体轮廓的影响,进而在后续体型识别过程中,排除相机远近对人体体型参数的不利影响;最后,再将掩码处理后的轮廓图像进行缩放处理,以保证输入至模型的图像,满足模型对图像的尺寸要求;由此,进行缩放处理后的轮廓图像,则是最终的人体正面轮廓图像以及人体侧面轮廓图像。
19.在一个可能的设计中,对所述人体正面初始轮廓图像进行掩码顶格处理,得到处理后的人体正面初始轮廓图像,包括:
20.将所述人体正面初始轮廓图像进行掩码处理,得到人体正面轮廓掩码图像;
21.基于所述人体正面轮廓掩码图像,得到目标点的坐标信息,其中,所述目标点的坐标信息包括目标点的最小横坐标、最大横坐标、最小纵坐标以及最大纵坐标,且所述目标点为所述人体正面轮廓掩码图像中像素值为255的像素点;
22.利用所述坐标信息,确定出目标图像区域的切割坐标,其中,所述目标图像区域为所述人体正面轮廓掩码图像中,所述目标人物的正面轮廓对应的图像区域;
23.基于所述切割坐标,从所述人体正面轮廓掩码图像中,截取出所述目标图像区域,以将截取出的目标图像区域,作为所述处理后的人体正面初始轮廓图像。
24.基于上述公开的内容,本发明公开了掩码顶格处理的具体过程,以人体正面初始轮廓图像为例,先将该图像进行掩码处理,即将该图像变为一二值化图像,然后,再获取掩码图像中像素值为255的像素点对应的最大、最小横纵坐标;接着,即可基于前述4个坐标,来组成4个坐标点,从而将组合得到的4个坐标点作为切割点,从掩码图像切割出4个坐标点所围成的图像区域,最后,即可将切割出的图像区域作为掩码顶格处理后的人体正面初始轮廓图像。
25.在一个可能的设计中,对所述处理后的人体正面初始轮廓图像进行边界填充处理,以在填充后,得到所述人体正面轮廓图像,包括:
26.获取标准图像高度以及所述处理后的人体正面初始轮廓图像的实际高度,并基于所述标准图像高度和所述实际高度,计算得到图像缩放比例;
27.按照所述图像缩放比例,对所述处理后的人体正面初始轮廓图像进行缩放处理,得到缩放后的人体正面初始轮廓图像;
28.按照标准图像尺寸,扩充所述缩放后的人体正面初始轮廓图像的边界,以在扩充后,得到所述人体正面轮廓图像。
29.在一个可能的设计中,所述第一人体体型参数包括多个第一参数,所述第二人体体型参数包括多个第二参数;
30.其中,基于所述第一人体体型参数和所述第二人体体型参数,得到目标人物的标定体型参数,包括:
31.对于所述第一人体体型参数中的各个第一参数,从所述第二人体体型参数中,匹配出与各个第一参数相对应的第二参数,其中,任一第一参数相对应的第二参数,为与所述任一第一参数表征同一身体形态数据的第二参数;
32.将各个第一参数,与各个第一参数对应的第二参数相加,得到各个第一参数的参数值,并计算每个参数值的均值,以便将每个参数值的均值,作为每个第一参数对应身体形态数据的标定值;
33.利用每个第一参数对应身体形态数据的标定值,组成所述标定体型参数;
34.相应的,基于所述标定体型参数,调整所述初始人体三维模型,以在调整后,得到所述目标人物的人体模型,包括:
35.为所述初始人体三维模型中的每种人体体型参数配置一blendshape调整组件,其中,所述初始人体三维模型中的人体体型参数与所述标定体型参数一一对应;
36.基于所述标定体型参数中各个标定体型参数的参数值,调整各个标定体型参数对应人体体型参数的blendshape调整组件的参数值,以在调整后,得到所述目标人物的人体模型。
37.基于上述公开的内容,本发明公开了人体体型参数的标定化过程,其实质就是求取第一人体体型参数中各个第一参数,与其对应第二参数的平均值,从而将平均值作为标定体型参数,如假设第一参数a1对应的身体形态数据为身高,那么,则在第二人体体型参数中,筛选出表示身高这一身体形态数据的第二参数(假设为第二参数b1),作为第一参数a1对应的第二参数,最后,将第一参数a1和第二参数b1的平均值,作为身高这一身体形态数据
的标定体型参数,以前述同样的方法,将第一和第二人体体型参数中相对应的参数求平均后,即可组成目标人物的标定体型参数;而在进行人体模型重建时,只需要依据标定体型参数中的各个参数,来调整对应人体体型参数的blendshape调整组件的参数值,调整完成后,即可得到目标人物的人体模型。
38.在一个可能的设计中,在获取目标人物的人体二维图像前,所述方法还包括:
39.获取人体样本图像集,其中,所述人体样本图像集包括人体样本三维图像、多张人体样本正面图像以及多张人体样本侧面图像,且每张人体样本正面图像以及每张人体样本侧面图像均为二维图像;
40.对所述人体样本三维图像进行pca降维处理,得到人体样本体型参数;
41.对所述每张人体样本正面图像以及所述每张人体样本侧面图像分别进行轮廓识别,得到多张人体样本正面轮廓图像以及多张人体样本侧面轮廓图像;
42.以人体样本体型参数、多张人体样本正面轮廓图像以及多张人体样本侧面轮廓图像为输入,每张人体样本正面图像和每张人体样本侧面图像的人体体型参数为输出,训练神经网络模型,以在训练后,得到所述人体参数识别模型。
43.在一个可能的设计中,在训练所述神经网络模型时,所述方法包括:
44.对每张人体样本正面图像以及每张人体样本侧面图像进行人体关键点检测,得到每张人体样本正面图像对应的骨骼关键点信息,以及每张人体样本侧面图像对应的骨骼关键点信息;
45.基于每张人体样本正面图像以及每张人体样本侧面图像对应的骨骼关键点信息,得到标定骨骼关键点信息;
46.记录所述神经网络模型输出的每一人体检测体型参数,并基于记录的每一人体检测体型参数,调整所述初始人体三维模型,并在调整后,截取调整后的初始人体三维模型的正面图像,以得到多张检测正面图像;
47.对每张检测正面图像进行人体关键点检测,得到多组人体检测骨骼点信息;
48.对于每组人体检测骨骼点信息,基于所述标定骨骼关键点信息,计算每组人体检测骨骼点信息中的每个检测骨骼点,与标定骨骼关键点信息中对应的标定骨骼关键点之间的欧氏距离;
49.将每组人体检测骨骼点信息中各个检测骨骼点对应的欧氏距离求和,并取求和结果的均值,以基于多个均值确定出神经网络模型输出各个人体检测体型参数时的模型权重评估值;
50.将多个模型权重评估值中最小的模型权重评估值对应的神经网络模型,作为所述人体参数识别模型。
51.基于上述公开的内容,本发明为保证人体体型参数识别模型的精度,在训练时,利用模型训练时输出的各个检测体型参数来修正初始人体三维模型,从而得到各个检测体型参数对应的人体模型,接着,再拍摄各个检测体型参数对应人体模型的正面照片,并进行骨骼关键点检测,以得到多组人体检测骨骼点信息,即每组人体检测骨骼信息对应一人体检测体型参数,相当于每组人体检测骨骼点信息也对应着一神经网络模型的网络参数;然后,再计算每组人体检测骨骼点信息中的人体检测骨骼点,与标定骨骼关键点之间的欧式距离,并求取每组人体检测骨骼点信息中各个人体检测骨骼点对应欧氏距离的总和的均值,
最后,将每组人体检测骨骼点信息对应的均值,作为神经网络模型输出各个人体检测体型参数时的模型权重评估值,因此,在训练结束后,只需选取评估值最小的模型,即可作为人体参数识别模型。
52.第二方面,提供了一种人体模型的构建装置,包括:
53.获取单元,用于获取目标人物的人体二维图像,其中,人体二维图像包括人体正面图像以及人体侧面图像;
54.轮廓识别单元,用于对所述人体二维图像进行轮廓识别,得到人体正面轮廓图像以及人体侧面轮廓图像;
55.人体参数识别单元,用于将所述人体正面轮廓图像以及所述人体侧面轮廓图像输入至人体参数识别模型中,分别得到所述人体正面图像对应的第一人体体型参数,以及所述人体侧面图像对应的第二人体体型参数,其中,第一人体体型参数和第二人体体型参数均用于表征目标人物的身体形态数据;
56.标定单元,用于基于所述第一人体体型参数和所述第二人体体型参数,得到目标人物的标定体型参数;
57.建模单元,用于获取初始人体三维模型,并基于所述标定体型参数,调整所述初始人体三维模型,以在调整后,得到所述目标人物的人体模型。
58.第三方面,提供了另一种人体模型的构建装置,以装置为电子设备为例,包括依次通信相连的存储器、处理器和收发器,其中,所述存储器用于存储计算机程序,所述收发器用于收发消息,所述处理器用于读取所述计算机程序,执行如第一方面或第一方面中任意一种可能设计的所述人体模型的构建方法。
59.第四方面,提供了一种存储介质,所述存储介质上存储有指令,当所述指令在计算机上运行时,执行如第一方面或第一方面中任意一种可能设计的所述人体模型的构建方法。
60.第五方面,提供了一种包含指令的计算机程序产品,当所述指令在计算机上运行时,使所述计算机执行如第一方面或第一方面中任意一种可能设计的所述人体模型的构建方法。
61.有益效果:
62.(1)本发明在进行人体模型重建时,无需采集人体的深度图像,也无需计算人体的深度信息,因此,相比于设备扫描重建方法以及双目/多目视觉重建方法,本发明的成本低、方式简便且不依赖设备,更便于广泛推广;同时,生成的三维模型不需要算法连续性修正就可以直接使用,使用起来更加方便;另外,相比于单帧图像重建算法,本发明将正侧两张照片对应的轮廓图像输入至人体参数识别模型中进行体型参数的回归,避免了单张图像缺失部分特征的问题,进而大幅提高了模型的构建精度。
附图说明
63.图1为本发明实施例提供的人体模型的构建方法的步骤流程示意图;
64.图2为本发明实施例提供的人体正面轮廓图像的对比图;
65.图3为本发明实施例提供的物体的人体模型的构建装置的结构示意图;
66.图4为本发明实施例提供的电子设备的结构示意图。
具体实施方式
67.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将结合附图和实施例或现有技术的描述对本发明作简单地介绍,显而易见地,下面关于附图结构的描述仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在此需要说明的是,对于这些实施例方式的说明用于帮助理解本发明,但并不构成对本发明的限定。
68.应当理解,尽管本文可能使用术语第一、第二等等来描述各种单元,但是这些单元不应当受到这些术语的限制。这些术语仅用于区分一个单元和另一个单元。例如可以将第一单元称作第二单元,并且类似地可以将第二单元称作第一单元,同时不脱离本发明的示例实施例的范围。
69.应当理解,对于本文中可能出现的术语“和/或”,其仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,单独存在b,同时存在a和b三种情况;对于本文中可能出现的术语“/和”,其是描述另一种关联对象关系,表示可以存在两种关系,例如,a/和b,可以表示:单独存在a,单独存在a和b两种情况;另外,对于本文中可能出现的字符“/”,一般表示前后关联对象是一种“或”关系。
70.实施例:
71.参见图1所示,本实施例第一方面所提供的人体模型的构建方法,无需采集人体的深度图像,也无需计算人体的深度信息,同时,本发明使用正侧两种轮廓图像进行人体体型参数的识别,因此,相比于现有人体模型重建方法,本发明的成本低、方式简便、不依赖设备,且精度更高,更便于广泛应用与推广;其中,本实施例所提供的方法可以但不限于在三维重建端侧运行,可选的,所述三维重建端可以但不限于是个人电脑(personal computer,pc)、平板电脑、智能手机或个人数字助理(personal digital assistant,pda)等,可以理解的,前述执行主体并不构成对本技术实施例的限定,相应的,本方法的运行步骤可以但不限于如下述步骤s1~s5所示。
72.s1.获取目标人物的人体二维图像,其中,人体二维图像包括人体正面图像以及人体侧面图像;具体应用时,可以但不限于使用相机拍摄目标人物的身体正面照片以及侧面照片,从而得到人体正面图像以及人体侧面图像,可选的,在拍摄时,相机拍摄角度应与目标人物的腰部齐平,且垂直于地面;同时,目标人物用于表征需要进行人体模型构建的人员,可以但不限于在实际构建时具体设定。
73.在得到目标人物的人体二维图像后,即可进行目标人物的正侧面的轮廓识别,以便后续基于识别的正面轮廓图像以及侧面轮廓图像进行人体体型参数的提取,其中,轮廓识别过程如下述步骤s2所示。
74.s2.对所述人体二维图像进行轮廓识别,得到人体正面轮廓图像以及人体侧面轮廓图像;具体应用时,本实施例使用训练后的语义分割深度神经网络进行轮廓识别,并在识别后,对轮廓图像进行掩码顶格处理,以避免拍摄时,相机与目标人物之间的距离,影响目标人物的身体轮廓大小,进而避免后续基于轮廓图像来进行体型参数识别时,对体型参数识别的不利影响,可选的,轮廓识别和掩码顶格处理过程如下述步骤s21~s23所示。
75.s21.将所述人体二维图像输入至训练后的语义分割深度神经网络中进行轮廓识别,得到人体正面初始轮廓图像以及人体侧面初始轮廓图像;具体应用时,采用人体二维照
片以及标注好的人体轮廓信息组成的训练数据集,来训练语义分割深度神经网络,同时,该网络采用u-net的网络架构,且在训练时,进行多次迭代,直到损失函数的值不再变化时为止;当然,还可使用其余神经网络进行轮廓识别,如训练后的cnn(convolutional neural network)卷积神经网络、fcn(全连接神经网络)等等,在此不作具体限定。
76.在得到人体正面初始轮廓图像以及人体侧面初始轮廓图像后,即可进行掩码顶格处理,以避免相机距离对身体轮廓的大小影响,从而消除相机距离对体型参数识别的影响,其中,掩码顶格处理如下述步骤s22所示。
77.s22.对所述人体正面初始轮廓图像和所述人体侧面初始轮廓图像进行掩码顶格处理,得到处理后的人体正面初始轮廓图像以及处理后的人体侧面初始轮廓图像;具体实施时,人体正面初始轮廓图像和人体侧面初始轮廓图像的掩码顶格处理过程相同,下述以人体正面初始轮廓图像为例,来进行掩码顶格处理的详细阐述,其处理过程可以但不限于如下述步骤s22a~s22d所示。
78.s22a.将所述人体正面初始轮廓图像进行掩码处理,得到人体正面轮廓掩码图像;具体应用时,掩码处理实质是将轮廓图像变换为一幅二值化图像,即相当于是二值化过程,也就是先设定一阈值,然后将人体正面初始轮廓图像中像素值大于该阈值的像素点的像素值变为255(即变为黑色),小于该阈值的变为0(即变为白色),由此,即可得到人体正面轮廓掩码图像。
79.在得到人体正面轮廓掩码图像后,即可将在掩码图像中确出包含有目标人物正面轮廓的图像区域,以便将该图像区域进行截取,从而得到只含有正面轮廓的图像,进而消除相机远近对轮廓大小的影响,其中,图像截取过程如下述步骤s22b~s22d所示。
80.s22b.基于所述人体正面轮廓掩码图像,得到目标点的坐标信息,其中,所述目标点的坐标信息包括目标点的最小横坐标、最大横坐标、最小纵坐标以及最大纵坐标,且所述目标点为所述人体正面轮廓掩码图像中像素值为255的像素点;具体应用时,步骤s22b相当于是在人体正面轮廓掩码图像中,获取像素值为255的像素点的最大和最小的横纵坐标,同时,该坐标对应的坐标系是以人体正面轮廓掩码图像的左下角为原点,图像宽度和高度为x轴和y轴的坐标系。
81.在得到目标点的坐标信息后,即可利用该坐标信息来确定出4个切割点,以便将4个切割点围成的区域,作为截取区域,如下述步骤s22c所示。
82.s22c.利用所述坐标信息,确定出目标图像区域的切割坐标,其中,所述目标图像区域为所述人体正面轮廓掩码图像中,所述目标人物的正面轮廓对应的图像区域;具体应用时,假设目标点的最大横坐标为xmax,最小横坐标为xmin,最大纵坐标为ymax,最小纵坐标为ymin,那么即可利用前述4个坐标值,组成4个切割坐标,分别为:(xmin,ymin),(xmax,ymin),(xmin,ymax),(xmax,ymax),即目标人物的人体一定在由(xmin,ymin),(xmax,ymin),(xmin,ymax),(xmax,ymax)这四个切割坐标对应点所围成的矩形区域中;因此,即可基于前述4个切割坐标,来完成图像的分割,如下述步骤s22d所示。
83.s22d.基于所述切割坐标,从所述人体正面轮廓掩码图像中,截取出所述目标图像区域,以将截取出的目标图像区域,作为所述处理后的人体正面初始轮廓图像;具体应用时,即是将前述4个切割坐标所围成的矩形区域,作为掩码顶格处理后的人体正面初始轮廓图像;参见图2所示,图2(a)为人体正面初始轮廓图像,图2(b)为经过掩码顶格处理得到的
人体正面初始轮廓图像,可以看出,经过掩码顶格处理后,明显排除了相机远近对轮廓大小的影响;另外,在本实施例中,人体侧面初始轮廓图像进行掩码顶格处理的流程可参见前述人体正面初始轮廓图像的掩码顶格处理流程,于此不再赘述。
84.通过前述步骤s22a~s22d,本发明通过对识别出的初始正面以及侧面轮廓图像进行掩码顶格处理,从而消除相机远近对身体轮廓的影响,进而在后续体型识别过程中,排除相机远近对人体体型参数的不利影响,由此,可提高利用人体体型参数构建的模型的精度。
85.另外,为满足后续在体型参数识别过程中,输入模型的图像在尺寸上满足模型要求,在得到掩码顶格处理后的人体正面初始轮廓图像以及人体侧面初始轮廓图像后,还需对前述图像进行缩放处理,以改变图像的尺寸,其中,缩放处理过程如下述步骤s23所示。
86.s23.对所述处理后的人体正面初始轮廓图像以及所述处理后的人体侧面初始轮廓图像进行边界填充处理,以在填充后,得到所述人体正面轮廓图像以及所述人体侧面轮廓图像;具体应用时,本实施例是先确定缩放比例,然后按照缩放比例对前述图像进行缩放后,再进行边界扩充,扩充完成后,即可得到人体正面轮廓图像以及人体侧面轮廓图像;可选的,下述以人体正面初始轮廓图像为例,详细阐述缩放处理过程,如下述步骤s23a~s23c。
87.s23a.获取标准图像高度以及所述处理后的人体正面初始轮廓图像的实际高度,并基于所述标准图像高度和所述实际高度,计算得到图像缩放比例;具体应用时,举例标准图像的尺寸为224*224,因此,标准图像高度为224,同时,处理后的人体初始轮廓图像的图像大小为x*y,其中,x=xmax-xmin,y=ymax-ymin,且根据先验知识,且在通常情况下,人体的身高尺寸大于宽度尺寸,此时,y》x,由此,图像缩放比例可确定为:224/y。
88.在得到图像缩放比例后,即可按照计算出的比例,对处理后的人体正面初始轮廓图像进行缩放,从而得到缩放后的图像,如下述步骤s23c所示。
89.s23b.按照所述图像缩放比例,对所述处理后的人体正面初始轮廓图像进行缩放处理,得到缩放后的人体正面初始轮廓图像;在实际应用时,缩放后的人体正面初始轮廓图像,其尺寸是小于224*224的,因此,为满足模型对图像的尺寸需求,需要将其扩展至224*224,如下述步骤s23c所示。
90.s23c.按照标准图像尺寸,扩充所述缩放后的人体正面初始轮廓图像的边界,以在扩充后,得到所述人体正面轮廓图像;具体应用时,由于前述就已说明,经过掩码处理后的图像为一二值化图像,即白色为人体区域,黑色为背景区域,因此,在进行边界扩充时,直接将缩放后的人体正面初始轮廓图像的黑边扩充至224,即可得到人体正面轮廓图像;同理,使用前述相同步骤,对处理后的人体侧面初始轮廓图像进行缩放处理,即可得到人体侧面轮廓图像。
91.在得到人体正面轮廓图像和人体侧面轮廓图像后,即可将二者输入至人体参数识别模型中,进行体型参数的识别,以便后续基于识别得到的体型参数进行模型的构建,其中,体型参数识别过程如下述步骤s3所示。
92.s3.将所述人体正面轮廓图像以及所述人体侧面轮廓图像输入至人体参数识别模型中,分别得到所述人体正面图像对应的第一人体体型参数,以及所述人体侧面图像对应的第二人体体型参数,其中,第一人体体型参数和第二人体体型参数均用于表征目标人物的身体形态数据;具体应用时,步骤s3相当于得到了目标人物在正面以及侧面时的各种身
体形态数据,可选的,举例身体形态数据可以但不限于包括身高、腰围、胸围、臀围、肩宽、臂长、腿长、上臂围、大腿围、小腿围、大腿围臀比、肩宽胸比、胸身高比、腰身高比和肩宽胸比等,而基于身体形态数据,即可确定出目标人物的体型,从而完成模型的构建。
93.在得到人体正面图像对应的第一人体体型参数和人体侧面图像对应的第二人体体型参数后,即可基于前述两人体体型参数,来确定出最贴合目标人物身体形态的标定体型参数,其中,标定体型参数的确定过程如下述步骤s4所示。
94.s4.基于所述第一人体体型参数和所述第二人体体型参数,得到目标人物的标定体型参数;具体应用时,举例所述第一人体体型参数包括多个第一参数,所述第二人体体型参数包括多个第二参数,因此,人体体型参数的标定化过程,其实质就是求取两个人体体型参数中用于表征同一身体形态数据的参数的平均值,从而将平均值作为该身体形态数据的标定数据,其中,两个人体体型参数平均化的过程如下述步骤s41~s43所示。
95.s41.对于所述第一人体体型参数中的各个第一参数,从所述第二人体体型参数中,匹配出与各个第一参数相对应的第二参数,其中,任一第一参数相对应的第二参数,为与所述任一第一参数表征同一身体形态数据的第二参数。
96.s42.将各个第一参数,与各个第一参数对应的第二参数相加,得到各个第一参数的参数值,并计算每个参数值的均值,以便将每个参数值的均值,作为每个第一参数对应身体形态数据的标定值。
97.s43.利用每个第一参数对应身体形态数据的标定值,组成所述标定体型参数。
98.下述以一个实例来阐述前述步骤s41~s43:
99.假设第一人体体型参数中的各个第一参数分别为:身高=a1、腰围=a2、胸围=a3、臀围=a4、肩宽=a5、臂长=a6和腿长=a7,同理,第二人体体型参数中的各个第二参数分别为:身高=b1、腰围=b2、胸围=b3、臀围=b4、肩宽=b5、臂长=b6和腿长=b7,那么,第一参数a1对应的身体形态数据为身高,那么其对应的第二参数为b1,因此,身高这一身体形态数据的标定体型参数为(a1+b1)/2,接着,按照前述方法,计算出其余各个第一参数与其对应第二参数的平均值,计算完毕后,即可得到标定体型参数,即标定体型参数为:身高=(a1+b1)/2、腰围=(a2+b2)/2、胸围=(a3+b3)/2、臀围=(a4+b4)/2、肩宽=(a5+b5)/2、臂长=(a6+b6)/2和腿长=(a7+b7)/2。
100.在得到目标人物的标定体型参数后,即可基于该标定体型参数,来调整初始人体三维模型的身体形态,从而在调整完整后,得到目标人物的人体模型,其中,调整过程如下述步骤s5所示。
101.s5.获取初始人体三维模型,并基于所述标定体型参数,调整所述初始人体三维模型,以在调整后,得到所述目标人物的人体模型;具体应用时,初始人体三维模型为预先存储在三维重建端,可以但不限于由建模软件得出;同时,本实施例是为初始人体三维模型中的每种身体形态配置一blendshape调整组件(其为建模软件(如3dmax)中常用的一种模型形态调整组件),并基于标定体型参数,来得出初始人体三维模型中的各个身体形态对应blendshape调整组件的调整值,从而基于blendshape调整组件来实现初始人体三维模型的调整,其中,调整过程如下述步骤s51和步骤s52所示。
102.s51.为所述初始人体三维模型中的每种人体体型参数配置一blendshape调整组件,其中,所述初始人体三维模型中的人体体型参数与所述标定体型参数一一对应。
103.s52.基于所述标定体型参数中各个标定体型参数的参数值,调整各个标定体型参数对应人体体型参数的blendshape调整组件的参数值,以在调整后,得到所述目标人物的人体模型;具体应用时,则是根据标定体型参数,来确定出初始人体三维模型中各个身体形态对应blendshape调整组件的参数值,如,标定体型参数中身高这一身体形态数据为180,那么,则将初始人体三维模型中表示身高的blendshape调整组件的参数调整为180,从而完成初始人体三维模型身高的调整,同理,以前述相同流程调整其余blendshape调整组件的参数值,调整完整后,即可得到目标人物的人体模型。
104.由此通过前述步骤s1~s5所详细描述的人体模型的构建方法,本发明在进行人体模型重建时,无需采集人体的深度图像,也无需计算人体的深度信息,同时,本发明使用正侧两种轮廓图像进行人体体型参数的识别,因此,相比于现有人体模型重建方法,本发明的成本低、方式简便、不依赖设备,且精度更高,更便于广泛应用与推广。
105.在一个可能的设计中,本实施例第二方面在实施例第一方面的基础上,公开人体参数识别模型的具体训练过程,如下述步骤s01~s04所示。
106.在本实施例中,举例人体参数识别模型可以但不限于为训练后的深度神经网络,如cnn(convolutional neural networks,卷积神经网络)网络或rnn(recurrent neural networks,循环神经网络)网络等,可选的,模型的训练过程如下述步骤所示。
107.s01.获取人体样本图像集,其中,所述人体样本图像集包括人体样本三维图像、多张人体样本正面图像以及多张人体样本侧面图像,且每张人体样本正面图像以及每张人体样本侧面图像均为二维图像。
108.s02.对所述人体样本三维图像进行pca降维处理,得到人体样本体型参数;具体应用时,pca降维处理是求解图像的协方差矩阵的特征向量的过程,其结果是协方差矩阵中特征值最大的前k位的特征向量,其中,举例pca降维处理过程可以但不限于如下述步骤s02a~s02e所示。
109.s02a.利用人体样本三维图像中各个点云数据的三维坐标,按列组成3行m列的点云矩阵;具体应用时,举例矩阵的第一行表示三维坐标中的横坐标,第二行表示三维坐标中的纵坐标,而第三行则表示三维坐标中的z轴坐标。
110.s02b.将点云矩阵中的每一行进行零均值化,得到均值化点云矩阵;具体应用时,对于点云矩阵中的任一行,则是计算任一行中所有元素的总和的平均值,然后用每个元素减去该平均值,计算完毕后,则可完成任一行的零均值化;当然,其余两行的零均值化处理过程与前述举例一致,于此不再赘述。
111.s02c.计算均值化点云矩阵的协方差矩阵;具体实施时,举例可以但不限于按照如下公式来计算得出均值化点云矩阵的协方差矩阵:
[0112][0113]
上述式中,c表示协方差矩阵,m表示人体样本三维图像中点云的总个数,x表示均值化点云矩阵,x
t
表示均值化点云矩阵的转置矩阵。
[0114]
在得到均值化点云矩阵的协方差矩阵后,即可求解协方差矩阵的特征向量和特征值,从而根据特征值,来得出人体样本三维图像的人体样本体型参数,如下述步骤s02d和步骤s02e所示。
[0115]
s02d.计算协方差矩阵的特征值和特征向量。
[0116]
s02e.按照特征值从高到低的顺序对特征向量排序,并选取排序前k位的特征向量组成一个k行的形态参数矩阵,以便基于形态参数矩阵得到人体样本三维图像的人体样本体型参数;具体应用时,k可以但不限于为20,同时,形态参数矩阵中每一行均表示一种身体形态数据,如身高、腰围等等,且每一行向量的特征值,则作为该身体形态数据的参数值,因此,人体样本体型参数实质为形态参数矩阵中各个行向量的特征值。
[0117]
在得到人体样本三维图像的样本体型参数后,还需对人体样本正面图像以及人体样本侧面图像分别进行轮廓识别,以得出多张人体样本正面轮廓图像以及多张人体样本侧面轮廓图像,其中,轮廓识别过程如下述步骤s03所述。
[0118]
s03.对所述每张人体样本正面图像以及所述每张人体样本侧面图像分别进行轮廓识别,得到多张人体样本正面轮廓图像以及多张人体样本侧面轮廓图像;具体应用时,轮廓识别过程可参见前述步骤s21~s23,于此不再赘述。
[0119]
在得到人体样本三维图像的样本体型参数,以及多张人体样本正面轮廓图像以及多张人体样本侧面轮廓图像后,即可以前述数据组成训练集进行模型的训练,如下述步骤s04所示。
[0120]
s04.以人体样本体型参数、多张人体样本正面轮廓图像以及多张人体样本侧面轮廓图像为输入,每张人体样本正面图像和每张人体样本侧面图像的人体体型参数为输出,训练神经网络模型,以在训练后,得到所述人体参数识别模型;在具体训练过程中,本实施例在模型每输出一人体检测体型参数后,会基于该检测体型参数来调整初始人体三维模型,并拍摄调整后模型的正面照片,作为检测正面照片,然后对检测正面照片进行骨骼点检测,从而得到人体检测骨骼点信息,最后,本实施例将人体检测骨骼点与标定骨骼点进行相似度对比,并将相似度对比结果作为模型评估指标,从而来选取体型参数识别效果最好的模型作为人体参数识别模型。
[0121]
可选的,利用骨骼点进行模型评估的过程如下述步骤s04a~s04g所示。
[0122]
s04a.对每张人体样本正面图像以及每张人体样本侧面图像进行人体关键点检测,得到每张人体样本正面图像对应的骨骼关键点信息,以及每张人体样本侧面图像对应的骨骼关键点信息;具体应用时,可以但不限于使用深度残差网络resnet-50,来实现人体关键点检测,同时,检测得到的骨骼关键点信息则包括骨骼关键点的坐标信息,且可以但不限于检测出基于halpe数据集的标准全身136个骨骼关键点。
[0123]
在得到每张人体样本正面图像以及每张人体样本侧面图像对应的骨骼关键点信息后,即可基于前述得到的骨骼关键点信息,来确定出标定骨骼关键点信息,如下述步骤s04b所示。
[0124]
s04b.基于每张人体样本正面图像以及每张人体样本侧面图像对应的骨骼关键点信息,得到标定骨骼关键点信息;具体应用时,则是计算多个骨骼关键点对应坐标的平均值;如,检测得到6组骨骼关键点信息(包括3张人体样本正面图像和3张人体样本侧面图像对应的骨骼关键点信息),那么,则在6组骨骼关键点信息中,计算表征同一骨骼点的坐标的平均值,更进一步的,假设骨骼关键点包括头顶点、左上颈点、左下颈点和右上颈点等,那么则计算6个表征头顶点的坐标的平均值,作为头顶点的标定坐标,同理,再计算6个表征左上颈点的坐标的平均值,作为左上颈点的标定坐标,以上述相同方法计算出所有骨骼关键点
的标定坐标后,即可得到标定骨骼关键点信息。
[0125]
在得到标定骨骼关键点信息后,即可在模型训练时,基于训练得到的人体检测体型参数,来调整初始人体三维模型,以便基于调整后的初始人体三维模型,来得出各个检测体型参数对应的检测正面照片,其中,调整过程如下述步骤s04c所示。
[0126]
s04c.记录所述神经网络模型输出的每一人体检测体型参数,并基于记录的每一人体检测体型参数,调整所述初始人体三维模型,并在调整后,截取调整后的初始人体三维模型的正面图像,以得到多张检测正面图像;具体应用时,步骤s04c的模型调整原理流程可参见步骤s5及其子步骤,于此不再赘述。
[0127]
在得到每个检测体型参数对应的检测正面图像后,即可进行骨骼点的识别,以便后续进行对比,其中,骨骼点识别过程如下述步骤s04d所示。
[0128]
s04d.对每张检测正面图像进行人体关键点检测,得到多组人体检测骨骼点信息;具体应用时,步骤s04d的识别过程可参见前述步骤s04a,于此不再赘述。
[0129]
在得到出每张检测正面图像对应的人体检测骨骼点信息后,即可进行骨骼点的相似度对比,如下述步骤s04e所示。
[0130]
s04e.对于每组人体检测骨骼点信息,基于所述标定骨骼关键点信息,计算每组人体检测骨骼点信息中的每个检测骨骼点,与标定骨骼关键点信息中对应的标定骨骼关键点之间的欧氏距离;具体应用时,假设得到3组人体检测骨骼信息(分别为p1、p2和p3),那么,则计算每组人体检测骨骼信息中各个检测骨骼点,与对应的标定骨骼关键点之间的欧氏距离,如检测骨骼点为头顶点,那么则计算其与标定骨骼点关键信息中的头顶点之间的欧式距离,且距离计算采用坐标距离计算公式,因此,以同样流程,即可计算出各个检测骨骼点,与对应的标定骨骼关键点之间的欧氏距离,从而得到人体检测骨骼信息p1中各个检测骨骼点的欧式距离,人体检测骨骼信息p2中各个检测骨骼点的欧式距离,人体检测骨骼信息p3中各个检测骨骼点的欧式距离。
[0131]
在得到各组人体检测骨骼点信息中各个检测骨骼点的欧式距离后,即可计算欧式距离的总和,并取均值,以便基于均值来得出模型权重评估值,如下述步骤s04f所示。
[0132]
s04f.将每组人体检测骨骼点信息中各个检测骨骼点对应的欧氏距离求和,并取求和结果的均值,以基于多个均值确定出所述神经网络模型输出各个人体检测体型参数时的模型权重评估值;具体应用时,假设人体检测骨骼信息p1对应的检测正面图像为p11,检测正面图像对应的人体检测体型参数为p111,而输出人体检测体型参数p111的神经网络模型为第3次训练后的模型,同时,p1中包括132个检测骨骼点,那么,则对应有132个欧式距离,因此,则计算132个欧式距离的总和,然后取总和的均值,即可作为第3次训练后的模型的模型权重评估值;同理,以前述方法计算其余各组人体检测骨骼关键信息的欧氏距离的均值,即可得到神经网络模型输出各个人体检测体型参数时的模型权重评估值。
[0133]
在得到模型输出各个人体检测体型参数时的模型权重评估值后,即可基于模型权重评估值的大小,来选择最优的模型,如下述步骤s04g所示。
[0134]
s04g.将多个模型权重评估值中最小的模型权重评估值对应的神经网络模型,作为所述人体参数识别模型;具体应用时,假设有6个模型权重评估值(依次为q1-q6),且分别对应第1-6次训练后的模型,假设q2的值最小,那么则选择第2次训练后的模型,作为人体参数识别模型。
[0135]
由此通过前述步骤s01~s04,即可训练得到人体参数识别模型,以便在模型重建时,基于人体参数识别模型,提取出目标人物的体型参数,从而基于提取出的体型参数,来完成模型的重建。
[0136]
如图3所示,本实施例第三方面提供了一种实现实施例第一方面和第二方面中所述的人体模型的构建方法的硬件装置,包括:
[0137]
获取单元,用于获取目标人物的人体二维图像,其中,人体二维图像包括人体正面图像以及人体侧面图像。
[0138]
轮廓识别单元,用于对所述人体二维图像进行轮廓识别,得到人体正面轮廓图像以及人体侧面轮廓图像。
[0139]
人体参数识别单元,用于将所述人体正面轮廓图像以及所述人体侧面轮廓图像输入至人体参数识别模型中,分别得到所述人体正面图像对应的第一人体体型参数,以及所述人体侧面图像对应的第二人体体型参数,其中,第一人体体型参数和第二人体体型参数均用于表征目标人物的身体形态数据。
[0140]
标定单元,用于基于所述第一人体体型参数和所述第二人体体型参数,得到目标人物的标定体型参数。
[0141]
建模单元,用于获取初始人体三维模型,并基于所述标定体型参数,调整所述初始人体三维模型,以在调整后,得到所述目标人物的人体模型。
[0142]
本实施例提供的装置的工作过程、工作细节和技术效果,可以参见实施例第一方面和第二方面,于此不再赘述。
[0143]
如图4所示,本实施例第四方面提供了另一种人体模型的构建装置,以装置为电子设备为例,包括:依次通信相连的存储器、处理器和收发器,其中,所述存储器用于存储计算机程序,所述收发器用于收发消息,所述处理器用于读取所述计算机程序,执行如实施例第一方面和/或第二方面所述的人体模型的构建方法。
[0144]
具体举例的,所述存储器可以但不限于包括随机存取存储器(random access memory,ram)、只读存储器(read only memory,rom)、闪存(flash memory)、先进先出存储器(first input first output,fifo)和/或先进后出存储器(first in last out,filo)等等;具体地,处理器可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器可以采用dsp(digital signal processing,数字信号处理)、fpga(field-programmable gate array,现场可编程门阵列)、pla(programmable logic array,可编程逻辑阵列)中的至少一种硬件形式来实现,同时,处理器也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称cpu(central processing unit,中央处理器);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。
[0145]
在一些实施例中,处理器可以在集成有gpu(graphics processing unit,图像处理器),gpu用于负责显示屏所需要显示的内容的渲染和绘制,例如,所述处理器可以不限于采用型号为stm32f105系列的微处理器、精简指令集计算机(reduced instruction set computer,risc)微处理器、x86等架构处理器或集成嵌入式神经网络处理器(neural-network processing units,npu)的处理器;所述收发器可以但不限于为无线保真(wifi)无线收发器、蓝牙无线收发器、通用分组无线服务技术(general packet radio service,gprs)无线收发器、紫蜂协议(基于ieee802.15.4标准的低功耗局域网协议,zigbee)无线收
发器、3g收发器、4g收发器和/或5g收发器等。此外,所述装置还可以但不限于包括有电源模块、显示屏和其它必要的部件。
[0146]
本实施例提供的电子设备的工作过程、工作细节和技术效果,可以参见实施例第一方面,和第二方面于此不再赘述。
[0147]
本实施例第五方面提供了一种存储包含有实施例第一方面和/或第二方面所述的人体模型的构建方法的指令的存储介质,即所述存储介质上存储有指令,当所述指令在计算机上运行时,执行如第一方面和/或第二方面所述的人体模型的构建方法。
[0148]
其中,所述存储介质是指存储数据的载体,可以但不限于包括软盘、光盘、硬盘、闪存、优盘和/或记忆棒(memory stick)等,所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。
[0149]
本实施例提供的存储介质的工作过程、工作细节和技术效果,可以参见实施例第一方面和第二方面,于此不再赘述。
[0150]
本实施例第六方面提供了一种包含指令的计算机程序产品,当所述指令在计算机上运行时,使所述计算机执行如实施例第一方面和/或第二方面所述的人体模型的构建方法,其中,所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。
[0151]
最后应说明的是:以上所述仅为本发明的优选实施例而已,并不用于限制本发明的保护范围。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1