一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

三维姿态的确定方法、装置、电子设备及存储介质与流程

2022-02-19 00:16:33 来源:中国专利 TAG:


1.本技术涉及动作捕捉技术领域,尤其涉及一种三维姿态的确定方法、装置、电子设备及存储介质。


背景技术:

2.动作捕捉是指,对运动物体的关键部位的位置进行捕捉,来确定运动物体的动作。在捕捉到运动物体的动作后,可以应用在动画制作、步态分析、生物力学或人机工程等领域。比如在直播娱乐、人机交互和虚拟内容制作等领域,可以通过动作捕捉来驱动虚拟角色进行直播。在捕捉到运动物体的动作后,可以根据捕捉到的动作来确定运动物体的三维姿态。
3.相关技术中,常用的动作捕捉方法是利用单个彩色相机进行动作捕捉,但是,该方法中,主要针对全身场景,这样就要求用户距离相机较远,使用不够便利。而在短视频或直播等领域,用户通常仅上半身入画,并且随着相机姿态或者用户动作的变化,上半身身体关节会频繁地出画入画,造成捕捉效果较差。


技术实现要素:

4.本技术实施例提供一种三维姿态的确定方法、装置、电子设备及存储介质,用以提高动作捕捉效果,进而提高三维姿态确定的准确性。
5.第一方面,本技术一实施例提供了一种三维姿态的确定方法,包括:
6.识别待处理视频帧中包含对象的图像;
7.确定所述图像中包括的部位关键点的置信度,并获取所述对象的三维姿态模型的第一参数值;
8.根据所述部位关键点的置信度对所述对象的姿态信息进行处理,以确定各个第一姿态约束项,其中,所述第一姿态约束项表征所述第一参数值的基础姿态约束;
9.将各个所述第一姿态约束项加和,确定姿态优化项;
10.确定所述姿态优化项取最小值时的所述对象的三维姿态模型的第二参数值;其中,所述第二参数值表征所述对象的三维姿态。
11.在一些示例性的实施方式中,通过如下方式确定各个部位关键点的置信度:确定所述图像中包括的部位关键点的二维热力图;
12.针对每一个部位关键点,根据所述二维热力图的分辨率以及像素点的灰度值确定所述部位关键点的置信度,其中,所述置信度表征所述图像包含对应所述部位关键点的概率。
13.在一些示例性的实施方式中,所述根据所述二维热力图的分辨率以及像素点的灰度值确定所述部位关键点的置信度,包括:
14.根据所述二维热力图的像素点的灰度值和所述二维热力图的分辨率确定所述二维热力图的像素特征;
15.应用设定概率算法对所述像素特征进行变换,得到所述部位关键点的置信度。
16.在一些示例性的实施方式中,还包括:
17.根据获取到的对象模型参数确定各个第二姿态约束项,其中,所述第二姿态约束项表征第一参数值的姿态调整约束;
18.将各个所述第二姿态约束项和所述姿态优化项加和,确定更新后的姿态优化项;
19.确定所述更新后的姿态优化项取最小值时的所述对象的三维姿态模型的第二参数值。
20.在一些示例性的实施方式中,所述第一姿态约束项包括二维投影约束项、三维约束项和骨骼朝向约束项中的至少一项;所述第二姿态约束项包括姿态先验约束项和姿态正则约束项中的至少一项。
21.在一些示例性的实施方式中,通过如下方式确定所述二维投影约束项:
22.根据预先设定的投影约束项权重、每个所述部位关键点的置信度、根据对象的模型参数确定的每个部位关键点的三维位置信息,以及各个所述部位关键点的二维位置信息,确定所述二维投影约束项。
23.在一些示例性的实施方式中,应用如下公式确定所述二维投影约束项:
[0024][0025]
其中,e
2d
表示所述二维投影约束项,ω
2d
表示所述预先设定的投影约束项权重,c
n
表示第n个部位关键点的置信度,n表示所述部位关键点的总数,k表示投影矩阵,p
n
(θ,β)为根据对象的模型参数确定的每个部位关键点的三维位置信息,θ为所述对象模型参数中的骨骼旋转角度参数;β所述对象模型参数中的对象体型参数;t为所述对象模型参数中的对象的预设部位关键点的位置参数;为获取到的第n个部位关键点的二维位置信息。
[0026]
在一些示例性的实施方式中,通过如下方式确定所述三维约束项:
[0027]
根据预先设定的三维部位关键点位置约束项权重、每个所述部位关键点的置信度、根据对象的模型参数确定的每个部位关键点的三维位置信息,以及各个所述部位关键的三维位置信息,确定所述三维约束项。
[0028]
在一些示例性的实施方式中,应用如下公式确定所述三维约束项:
[0029][0030]
其中,e
3d
表示所述三维投影约束项,ω
3d
表示所述预先设定的三维部位关键点位置约束项权重,c
n
表示第n个部位关键点的置信度,n表示所述部位关键点的总数,p
n
(θ,β)为根据对象的模型参数确定的第n个部位关键点的三维位置信息,θ为所述对象模型参数中的骨骼旋转角度参数;β为所述对象模型参数中的对象体型参数;为获取到的第n个部位关键点的三维位置信息。
[0031]
在一些示例性的实施方式中,通过如下方式确定所述骨骼朝向约束项:
[0032]
根据预先设定的骨骼朝向约束项权重、根据所述置信度确定的每个骨骼的置信
度、每个骨骼的朝向和根据所述对象模型参数确定的每个骨骼的朝向,确定所述骨骼朝向约束项。
[0033]
在一些示例性的实施方式中,应用如下公式确定所述骨骼朝向约束项:
[0034][0035]
其中,e
bone
表示所述骨骼朝向约束项,ω
bone
表示预先设定的骨骼朝向约束项权重,b
r
表示第r个骨骼的置信度,d
r
(θ,β)表示所述对象模型参数确定的每个骨骼的朝向,d
r
为通过构成所述骨骼的两个部位关键点确定的第r个骨骼的朝向。
[0036]
在一些示例性的实施方式中,通过下列方式确定每个所述骨骼的置信度:
[0037]
基于构成所述骨骼的两个部位关键点中包含的有效部位关键点的数量,确定所述骨骼的置信度,其中所述骨骼的置信度表征所述骨骼包含所述有效部位关键点的概率;所述有效部位关键点为置信度大于预设置信度阈值的部位关键点。
[0038]
在一些示例性的实施方式中,通过如下方式确定每个所述骨骼的朝向:
[0039]
基于构成所述骨骼的两个部位关键点中包含的有效部位关键点的数量,确定所述骨骼朝向。
[0040]
在一些示例性的实施方式中,通过如下方式确定所述姿态先验约束项:
[0041]
根据预先设定的所述姿态先验约束权重、预先设定的协方差矩阵、预先设定的骨骼旋转参数均值和所述对象模型参数中的骨骼旋转角度参数,确定所述姿态先验约束项。
[0042]
在一些示例性的实施方式中,应用如下公式确定所述姿态先验约束项:
[0043]
e
prior
=ω
prior
‖a1(θ

b1)‖2[0044]
其中,e
prior
表示所述姿态先验约束项,ω
prior
表示所述预先设定的所述姿态先验约束权重,a1表示预先设定的协方差矩阵,b1表示预先设定的骨骼旋转参数均值,θ为所述对象模型参数中的骨骼旋转角度参数。
[0045]
在一些示例性的实施方式中,通过如下方式确定所述姿态正则约束项:
[0046]
根据预先设定的姿态回归权重、预先设定的体型回归权重、所述对象模型参数中的骨骼旋转角度参数、所述对象模型参数中的对象体型参数、所述对象的骨骼的初始旋转角度值、所述对象的体型的初始系数值,确定所述姿态正则约束项。
[0047]
在一些示例性的实施方式中,应用如下公式确定所述姿态正则约束项:
[0048]
e
reg
=ω
pose,reg
‖θ

θ
init
‖2 ω
shape,reg
‖β

β
ibit
‖2[0049]
其中,e
reg
表示所述姿态正则约束项,ω
pose,reg
表示预先设定的姿态回归权重,ω
shape,reg
表示预先设定的体型回归权重,θ表示所述对象模型参数中的骨骼旋转角度参数,θ
init
表示所述对象的骨骼的初始旋转角度值,β表示所述对象模型参数中的对象体型参数,β
init
表示所述对象的体型的初始系数值。
[0050]
在一些示例性的实施方式中,所述确定所述图像中包括的部位关键点的二维热力图,包括:
[0051]
将所述待处理视频中包含对象的图像作为二维部位关键点网络模型的输入,以得到所述部位关键点的二维热力图。
[0052]
在一些示例性的实施方式中,通过如下方式确定所述部位关键点的三维位置信
息:
[0053]
将所述待处理视频帧中包含对象的图像作为三维部位关键点网络模型的输入,以得到所述部位关键点的三维热力图;
[0054]
根据所述三维热力图,确定所述部位关键点的三维位置信息。
[0055]
第二方面,本技术一实施例提供了一种三维姿态的确定装置,包括:
[0056]
图像识别单元,被配置为执行识别待处理视频帧中包含对象的图像;
[0057]
置信度确定单元,被配置为执行确定所述图像中包括的部位关键点的置信度,并获取所述对象的三维姿态模型的第一参数值;
[0058]
基础约束项确定单元,被配置为执行根据所述部位关键点的置信度对所述对象的姿态信息进行处理,以确定各个第一姿态约束项,其中,所述第一姿态约束项表征所述第一参数值的基础姿态约束;
[0059]
姿态优化项确定单元,被配置为执行将各个所述第一姿态约束项加和,确定姿态优化项;
[0060]
姿态确定单元被配置为执行确定所述姿态优化项取最小值时的所述对象的三维姿态模型的第二参数值;其中,所述第二参数值表征所述对象的三维姿态。
[0061]
在一些示例性的实施方式中,所述置信度确定单元具体被配置为执行:
[0062]
确定所述图像中包括的部位关键点的二维热力图;
[0063]
针对每一个部位关键点,根据所述二维热力图的分辨率以及像素点的灰度值确定所述部位关键点的置信度,其中,所述置信度表征所述图像包含对应所述部位关键点的概率。
[0064]
在一些示例性的实施方式中,所述置信度确定单元被配置为执行:
[0065]
根据所述二维热力图的像素点的灰度值和所述二维热力图的分辨率确定所述二维热力图的像素特征;
[0066]
应用设定概率算法对所述像素特征进行变换,得到所述部位关键点的置信度。
[0067]
在一些示例性的实施方式中,还包括更新单元,所述更新单元被配置为执行:
[0068]
根据获取到的对象模型参数确定各个第二姿态约束项,其中,所述第二姿态约束项表征第一参数值的姿态调整约束;
[0069]
将各个所述第二姿态约束项和所述姿态优化项加和,确定更新后的姿态优化项;
[0070]
确定所述更新后的姿态优化项取最小值时的所述对象三维姿态的目标模型的第二参数值。
[0071]
在一些示例性的实施方式中,所述第一姿态约束项包括二维投影约束项、三维约束项和骨骼朝向约束项中的至少一项;所述第二姿态约束项包括姿态先验约束项和姿态正则约束项中的至少一项。
[0072]
在一些示例性的实施方式中,所述姿态确定单元被配置为执行通过如下方式确定所述二维投影约束项:
[0073]
根据预先设定的投影约束项权重、每个所述部位关键点的概率参数、根据对象的模型参数确定的每个部位关键点的三维位置信息,以及各个所述部位关键点的二维位置信息,确定所述二维投影约束项。
[0074]
在一些示例性的实施方式中,所述姿态确定单元被配置为执行应用如下方式确定
所述二维投影约束项:
[0075][0076]
其中,e
2d
表示所述二维投影约束项,ω
2d
表示所述预先设定的投影约束项权重,c
n
表示第n个部位关键点的置信度,n表示所述部位关键点的总数,k表示投影矩阵,p
n
(θ,β))为根据对象的模型参数确定的每个部位关键点的三维位置信息,θ为所述对象模型参数中的骨骼旋转角度参数;β所述对象模型参数中的对象体型参数;t为所述对象模型参数中的对象的预设部位关键点的位置参数;为获取到的第n个部位关键点的二维位置信息。
[0077]
在一些示例性的实施方式中,所述姿态确定单元被配置为执行通过如下方式确定所述三维约束项:
[0078]
根据预先设定的三维部位关键点位置约束项权重、每个所述部位关键点的置信度、根据对象的模型参数确定的每个部位关键点的三维位置信息,以及各个所述部位关键的三维位置信息,确定所述三维约束项。
[0079]
在一些示例性的实施方式中,所述姿态确定单元被配置为执行应用如下公式确定所述三维约束项:
[0080][0081]
其中,e
3d
表示所述三维投影约束项,ω
3d
表示所述预先设定的三维部位关键点位置约束项权重,c
n
表示第n个部位关键点的置信度,n表示所述部位关键点的总数,p
n
(θ,β))为根据对象的模型参数确定的第n个部位关键点的三维位置信息,θ为所述对象模型参数中的骨骼旋转角度参数;β为所述对象模型参数中的对象体型参数;为获取到的第n个部位关键点的三维位置信息。
[0082]
在一些示例性的实施方式中,所述姿态确定单元被配置为执行通过如下方式确定所述骨骼朝向约束项:
[0083]
根据预先设定的骨骼朝向约束项权重、根据所述置信度确定的每个骨骼的置信度、每个骨骼的朝向和根据所述对象模型参数确定的每个骨骼的朝向,确定所述骨骼朝向约束项。
[0084]
在一些示例性的实施方式中,所述姿态确定单元被配置为执行应用如下公式确定所述骨骼朝向约束项:
[0085][0086]
其中,e
bone
表示所述骨骼朝向约束项,ω
bone
表示预先设定的骨骼朝向约束项权重,b
r
表示第r个骨骼的置信度,d
r
(θ,β)表示所述对象模型参数确定的每个骨骼的朝向,d
r
为通过构成所述骨骼的两个部位关键点确定的第r个骨骼的朝向。
[0087]
在一些示例性的实施方式中,所述姿态确定单元被配置为执行通过下列方式确定
每个所述骨骼的置信度:
[0088]
基于构成所述骨骼的两个部位关键点中包含的有效部位关键点的数量,确定所述骨骼的置信度,其中所述骨骼的置信度表征所述骨骼包含所述有效部位关键点的置信度;所述有效部位关键点为置信度大于预设置信度阈值的部位关键点。
[0089]
在一些示例性的实施方式中,所述姿态确定单元被配置为执行通过如下方式确定每个所述骨骼的朝向:
[0090]
基于构成所述骨骼的两个部位关键点中包含的有效部位关键点的数量,确定所述骨骼朝向。
[0091]
在一些示例性的实施方式中,所述姿态确定单元被配置为执行通过如下方式确定所述姿态先验约束项:
[0092]
根据预先设定的所述姿态先验约束权重、预先设定的协方差矩阵、预先设定的骨骼旋转参数均值和所述对象模型参数中的骨骼旋转角度参数,确定所述姿态先验约束项。
[0093]
在一些示例性的实施方式中,所述姿态确定单元被配置为执行应用如下公式确定所述姿态先验约束项:
[0094]
e
prior
=ω
prior
‖a1(θ

b1)‖2[0095]
其中,e
prior
表示所述姿态先验约束项,ω
prior
表示所述预先设定的所述姿态先验约束权重,a1表示预先设定的协方差矩阵,b1表示预先设定的骨骼旋转参数均值,θ为所述对象模型参数中的骨骼旋转角度参数。
[0096]
在一些示例性的实施方式中,所述姿态确定单元被配置为执行通过如下方式确定所述姿态正则约束项:
[0097]
根据预先设定的姿态回归权重、预先设定的体型回归权重、所述对象模型参数中的骨骼旋转角度参数、所述对象模型参数中的对象体型参数、所述对象的骨骼的初始旋转角度值、所述对象的体型的初始系数值,确定所述姿态正则约束项。
[0098]
在一些示例性的实施方式中,所述姿态确定单元被配置为执行应用如下公式确定所述姿态正则约束项:
[0099]
e
reg
=ω
pose,reg
‖θ

θ
init
‖2 ω
shape,reg
‖β

β
init
‖2[0100]
其中,e
reg
表示所述姿态正则约束项,ω
pose,reg
表示预先设定的姿态回归权重,ω
shape,reg
表示预先设定的体型回归权重,θ表示所述对象模型参数中的骨骼旋转角度参数,θ
init
表示所述对象的骨骼的初始旋转角度值,β表示所述对象模型参数中的对象体型参数,β
init
表示所述对象的体型的初始系数值。
[0101]
在一些示例性的实施方式中,所述置信度确定单元被配置为执行:
[0102]
将所述待处理视频中包含对象的图像作为二维部位关键点网络模型的输入,以得到所述部位关键点的二维热力图。
[0103]
在一些示例性的实施方式中,还包括三维位置信息确定单元,所述三维位置信息确定单元被配置为通过如下方式确定所述部位关键点的三维位置信息:
[0104]
将所述待处理视频帧中包含对象的图像作为三维部位关键点网络模型的输入,以得到所述部位关键点的三维热力图;
[0105]
根据所述三维热力图,确定所述部位关键点的三维位置信息。
[0106]
第三方面,本技术一实施例提供了一种电子设备,包括:
[0107]
处理器;
[0108]
用于存储所述处理器可执行指令的存储器;
[0109]
其中,所述处理器被配置为执行所述指令,以实现上述三维姿态的确定方法中的任意一种方法。
[0110]
第四方面,本技术一实施例提供了一种计算机可读存储介质,当所述计算机可读存储介质中的指令由电子设备的处理器执行时,使得电子设备能够执行上述三维姿态的确定方法中的任意一种方法。
[0111]
第五方面,本技术一实施例提供了一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现上述三维姿态的确定方法中的任意一种方法。
[0112]
本技术的实施例提供的技术方案至少带来以下有益效果:
[0113]
通过识别待处理视频帧中包含对象的图像,可以得到图像中包括的各个部位关键点的置信度,该置信度表征图像包含对应的部位关键点的概率;这样,可以确定各个部位关键点与图像的包含关系,以直播为例,若图像包含部位关键点,表明该部位关键点没有出画,否则表明该部位关键点出画,因此,确定对象的三维姿态时,根据部位关键点的置信度对对象的姿态信息进行处理来确定各个第一姿态约束项,并将各个第一姿态约束项加和,确定姿态优化项;进而将姿态优化项取最小值时的对象的三维姿态模型的第二参数值作为表征对象的三维姿态的参数。这样,在反解姿态优化项时,考虑了表征部位关键点和图像的包含关系。这样,与现有技术相比,可以解决比如直播等领域中上半身身体关节频繁出画的问题,提高了动作捕捉的效果,最终确定的对象的三维姿态更准确。
[0114]
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
[0115]
为了更清楚地说明本技术实施例的技术方案,下面将对本技术实施例中所需要使用的附图作简单地介绍,显而易见地,下面所介绍的附图仅仅是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0116]
图1为本技术一实施例提供的一种直播过程的显示界面图;
[0117]
图2为本技术一实施例提供另一种直播过程的显示界面图;
[0118]
图3为本技术一实施例提供一种三维姿态的确定的应用场景的示意图;
[0119]
图4为本技术一实施例提供一种三维姿态的确定方法的流程图;
[0120]
图5为本技术一实施例提供一种骨骼朝向的热力图的示意图;
[0121]
图6为本技术一实施例提供的一种三维姿态的确定装置的结构示意图;
[0122]
图7为本技术一实施例提供的一种电子设备的结构示意图。
具体实施方式
[0123]
为使本技术实施例的目的、技术方案和优点更加清楚,下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述。
[0124]
需要说明的是,本技术的说明书和权利要求书及上述附图中的术语“第一”、“第
二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应理解这样使用的数据在适当情况下可以互换,以便这里描述的本技术的实施例能够以除了在这里图示或描述的那些以外的顺序实施。以下示例性实施例中所描述的实施方式并不代表与本技术相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本技术的一些方面相一致的装置和方法的例子。
[0125]
以下,对本技术实施例中的部分用语进行解释说明,以便于本领域技术人员理解。
[0126]
(1)本技术实施例中术语“多个”是指两个或两个以上,其它量词与之类似。
[0127]
(2)“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。
[0128]
(3)服务器,是为终端服务的,服务的内容诸如向终端提供资源,保存终端数据;服务器是与终端上安装的应用程序相对应的,与终端上的应用程序配合运行。
[0129]
(4)终端设备,既可以指软件类的app(application,应用程序),也可以指客户端。它具有可视的显示界面,能与用户进行交互;是与服务器相对应,为客户提供本地服务。针对软件类的应用程序,除了一些只在本地运行的应用程序之外,一般安装在普通的客户终端上,需要与服务端互相配合运行。因特网发展以后,较常用的应用程序包括了如收寄电子邮件时的电子邮件客户端,以及即时通讯的客户端等。对于这一类应用程序,需要网络中有相应的服务器和服务程序来提供相应的服务,如数据库服务,配置参数服务等,这样在客户终端和服务器端,需要建立特定的通信连接,来保证应用程序的正常运行。
[0130]
(5)模型参数,以人为例,则模型参数为人体模型参数,本技术中,可以使用smpl(skinned multi

person linear,不考虑皮肤的多人线性)模型是一种参数化人体模型,该方法可以进行任意的人体建模和动画驱动。提出的人体姿态影像体表形貌的方法,可以模拟人的肌肉在肢体运动过程中的凸起和凹陷。因此可以避免人体在运动过程中的表面失真,可以精准的刻画人的肌肉拉伸以及收缩运动的形貌。该模型中包含了24个人体骨骼的旋转和长度为10的人体体型系数,将骨骼旋转表示为矩阵其中第m行θ
m
表示第m个骨骼的旋转(轴角形式),人体体型系数表示为由于在本技术实施例的应用场景中,通常为上半身入画,因此,考虑上半身的12个人体骨骼(可以根据实际需求确定保留哪些骨骼),仍使用矩阵表示。
[0131]
(6)部位关键点,以人为例,部位关键点即为人体上半身各个部位的部位关键点,比如胯、肩膀、手肘、手腕、眼睛、鼻子等上半身常见部位关键点。
[0132]
(7)出画:以直播为例,主播的身体的某个部位关键点(比如手)离开画面,不在画面内。
[0133]
(8)入画:以直播为例,主播的身体的某个部位关键点(比如手)进入画面,在画面内。
[0134]
在具体实践过程中,以短视频或者直播为例,直播间中,通常设置至少一个相机,主播通常上半身入画,并且随着相机姿态或者用户动作的变化,上半身关节会频繁的出画入画,造成动作捕捉效果不佳。在一个具体的例子中,图1示出了一种直播过程的显示界面图,图2示出了另一种直播过程的显示界面图,其中,图1中,主播上半身入画,11为手;当主
播移动后,可能造成图2的效果,比如主播的右手出画,12为出画未能显示在画面中的右手。如果此时应用右手的姿态信息来确定主播的三维姿态,造成动作捕捉的效果较差,确定的主播的三维姿态准确定较低。
[0135]
为此,本技术提供了一种三维姿态确定方法,识别待处理视频帧中包含对象的图像;确定图像中包括的部位关键点的置信度,并获取对象的三维姿态模型的第一参数值;根据部位关键点的置信度对对象的姿态信息进行处理,以确定各个第一姿态约束项,其中,第一姿态约束项表征第一参数值的基础姿态约束;将各个第一姿态约束项加和,确定姿态优化项;确定姿态优化项取最小值时的对象的三维姿态模型的第二参数值;其中,第二参数值表征对象的三维姿态。提高了动作捕捉效果,进而提高确定对象的三维姿态的准确性。
[0136]
在介绍完本技术实施例的设计思想之后,下面对本技术实施例的技术方案能够适用的应用场景做一些简单介绍,需要说明的是,以下介绍的应用场景仅用于说明本技术实施例而非限定。在具体实施时,可以根据实际需要灵活地应用本技术实施例提供的技术方案。
[0137]
在介绍完本技术实施例的设计思想之后,下面对本技术实施例的技术方案能够适用的应用场景做一些简单介绍,需要说明的是,以下介绍的应用场景仅用于说明本技术实施例而非限定。在具体实施时,可以根据实际需要灵活地应用本技术实施例提供的技术方案。
[0138]
参考图3,其为本技术实施例提供的三维姿态的确定方法的应用场景示意图。该应用场景包括多个终端设备301(包括终端设备301

1、终端设备301

2、
……
终端设备301

n)、三维姿态确定服务器302。其中,终端设备301、三维姿态确定服务器302之间通过无线或有线网络连接,终端设备301包括但不限于桌面计算机、移动电话、移动电脑、平板电脑、媒体播放器、智能可穿戴设备、智能电视等电子设备。三维姿态确定服务器302可以是一台服务器、若干台服务器组成的服务器集群或云计算中心。三维姿态确定服务器302可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、cdn、以及大数据和人工智能平台等基础云计算服务的云服务器。
[0139]
不同主播分别通过各自对应的终端设备301将待处理的视频帧发送至服务器中,以主播1对应的终端设备301

1将待处理的视频帧发送至服务器302为例进行说明。待处理的视频帧为主播直播过程中当前时刻的一帧视频帧,服务器302接收到该视频帧包括的对象的图像,该对象即为该示例中的主播,在实际的应用过程中,对象还可以是一只猫或者一只狗等。服务器302识别待处理视频帧中包含的主播的图像,得到部位关键点(比如胳膊、眼睛、鼻子和耳朵等)的二维热力图,然后针对每一个部位关键点,根据二维热力图的分辨率以及像素点的灰度值确定部位关键点对应的置信度,置信度表征图像包含对应部位关键点的概率,也即,有的部位关键点不在图像内,有的部位关键点在图像内,这样,在确定主播的三维姿态时,根据部位关键点的置信度对对象的姿态信息进行处理,来确定各个第一姿态约束项,并将各个第一姿态约束项加和,确定姿态优化项;最后反解姿态优化项,确定姿态优化项取最小值时的对象的三维姿态模型的第二参数值。最后,将确定的第二参数值作为主播展示时候最终的三维姿态参数通过终端设备301

1进行显示。
[0140]
其中,终端设备301

1可以是参与主播的相机,该相机可以执行上述三维姿态的确
定方法,无需将待处理的视频帧发送至服务器进行处理。
[0141]
当然,本技术实施例提供的方法并不限用于图3所示的应用场景中,还可以用于其它可能的应用场景,本技术实施例并不进行限制。对于图3所示的应用场景的各个设备所能实现的功能将在后续的方法实施例中一并进行描述,在此先不过多赘述。
[0142]
为进一步说明本技术实施例提供的技术方案,下面结合附图以及具体实施方式对此进行详细的说明。虽然本技术实施例提供了如下述实施例或附图所示的方法操作步骤,但基于常规或者无需创造性的劳动在方法中可以包括更多或者更少的操作步骤。在逻辑上不存在必要因果关系的步骤中,这些步骤的执行顺序不限于本技术实施例提供的执行顺序。
[0143]
下面结合图4所示的应用场景,对本技术实施例提供的技术方案进行说明。
[0144]
参考图4,本技术实施例提供一种三维姿态的确定方法,包括以下步骤:
[0145]
s401、识别待处理视频帧中包含对象的图像。
[0146]
s402、确定图像中包括的部位关键点的置信度,并获取对象的三维姿态模型的第一参数值。
[0147]
s403、根据部位关键点的置信度对对象的姿态信息进行处理,以确定各个第一姿态约束项,其中,第一姿态约束项表征第一参数值的基础姿态约束。
[0148]
s404、将各个第一姿态约束项加和,确定姿态优化项。
[0149]
s405、确定姿态优化项取最小值时的对象的三维姿态模型的第二参数值;其中,第二参数值表征对象的三维姿态。
[0150]
本技术实施例中,通过识别待处理视频帧中包含对象的图像,可以得到图像中包括的各个部位关键点的置信度,该置信度表征图像包含对应的部位关键点的概率;这样,可以确定各个部位关键点与图像的包含关系,以直播为例,若图像包含部位关键点,表明该部位关键点没有出画,否则表明该部位关键点出画,因此,确定对象的三维姿态时,根据部位关键点的置信度对对象的姿态信息进行处理来确定各个第一姿态约束项,并将各个第一姿态约束项加和,确定姿态优化项;进而将姿态优化项取最小值时的对象的三维姿态模型的第二参数值作为表征对象的三维姿态的参数。这样,在反解姿态优化项时,考虑了表征部位关键点和图像的包含关系。这样,与现有技术相比,可以解决比如直播等领域中上半身身体关节频繁出画的问题,提高了动作捕捉的效果,最终确定的对象的三维姿态更准确。
[0151]
涉及到s401,该待处理视频可以是相机拍摄的彩色视频,可以是预先拍摄的,比如短视频,还可以是直播过程中的实时的视频流。针对待处理视频中的当前时刻的视频帧对应的图像,再对该图像进行裁剪,将与对象无关的部分去掉,得到包括对象的图像,该对象以人(主播或者短视频中出现的人)为例,对裁剪过程进行说明。比如,利用剪裁框获取图像中人体的位置,并对图像进行剪裁,剪裁框可以使用人体检测算法获得,比如faster

rcnn(faster

region

convolutional neural networks,快速目标检测卷积神经网络),也可以使用上一帧提取的部位关键点的位置获得,在此不赘述。
[0152]
在识别待处理视频帧中包含对象的图像,得到部位关键点的二维热力图,具体可以为,将待处理视频中包含对象的图像作为二维部位关键点网络模型的输入,以得到部位关键点的二维热力图。该二维部位关键点网格模型可以是预先训练的,该训练过程不赘述。
[0153]
涉及到s402,确定图像中包括的部位关键点的置信度,并获取对象的三维姿态模
型的第一参数值。
[0154]
具体的,由于每一个部位关键点分别可以得到一个二维热力图,因此,针对每一个部位关键点,根据相应的二维热力图的分辨率以及像素点的灰度值确定部位关键点对应的置信度,该置信度表征图像包含对应部位关键点的概率。
[0155]
这样,由于置信度表征图像包含部位关键点的概率,这样,就可以确定哪些部位关键点在图像内,以便鲁棒性地处理上半身动捕中部分肢体不在画面内的情况。
[0156]
在一个具体的例子中,假设h
n
为第n个部位关键点大小为w*h的二维热力图,其中,h为二维热力图的高度或称为列数,w为二维热力图的宽度或行数,高度和宽度的单位均可以用像素表示,首先对该二维热力图进行归一化,例如通过softmax运算实现,得到每个部位关键点在各个像素点上的概率图
[0157][0158]
其中,i表示像素点的行号,j表示像素点的列号,[h
n
]
i,j
表示第i行第j列的像素点的灰度值。
[0159]
对上述概率图加权平均后,可以得到部位关键点的归一化的二维坐标
[0160][0161][0162]
另外,根据部位关键点的二维热力图的像素点的灰度值,可以确定该部位关键点的置信度,具体的,根据二维热力图的像素点的灰度值和二维热力图的分辨率确定二维热力图的像素特征;应用设定概率算法对像素特征进行变换,得到部位关键点对应的置信度。
[0163]
在一个具体的例子中,二维热力图的高度h和宽度w表征其分辨率,可以通过如下方式确定部位关键点的置信度:
[0164][0165]
其中,c
n
为部位关键点n的置信度,为该示例中的像素特征,该示例中的像素特征为各个像素点的像素的平均值,sigmoid为设定概率算法中应用到的函数,应用该函数,得到的置信度为0或1。由于每个部位关键点对应一个二维热力图,而该二维热力图是将待处理视频中包含对象的图像作为二维部位关键点网络模型的输入得到的。
[0166]
由上述方式确定的置信度,可以更准确的确定哪些部位关键点在图像内。
[0167]
由于确定部位关键点与图像的包含关系时,是通过二维热力图来实现的,而获取二维热力图的方式是通过二维关键点网络模型获取,使获得的关键点的二维位置更准确,进而确定三维姿态更准确。
[0168]
另外,该二维部位关键点网络模型在训练的过程中,二维部位关键点的位置使用mse(mean squared error,均方误差)损失函数监督,置信度使用bce(binary classification loss,二分类损失函数)监督,即标注的部位关键点分别在图像的内和外时,置信度监督分别为1和0。因此,确定的部位关键点的置信度表征了图像包含对应部位关键点的置信度,也即,若置信度为1,则表明该部位关键点在图像内,也即短视频或者直播中的在画面内,定义其为有效部位关键点,若置信度为0,则表明该部位关键点不在图像内,也即,短视频或者直播中的出画。
[0169]
另外,为了确定最终的对象的三维姿态,也就是要确定表征其三维姿态的相关参数的取值,因此,这里需要获取到对象的三维姿态模型的这些相关参数的第一参数的第一参数值。在一个具体的例子中,第一参数值比如可以是人体上半身骨骼旋转θ、人体体型系数β和设定部位关键点的位置t的一组取值等,而这一组参数值可以是随机设定的,由于后续是对其构成的姿态约束项进行反解优化的过程,因此,其取值会影响优化结果,具体情况可以根据实际需求进行设定。
[0170]
涉及到s403,在确定了图像中包括的部位关键点的置信度后,这样就可以知道哪些部位关键点在图像中,哪些部位关键点不在图像中,这样,在确定对象的三维姿态时,一方面根据置信度,确定哪些部位关键点可用,哪些部位关键点不可用;另一方面确定应用部位关键点的哪些参数,比如位置参数,来确定对象的三维姿态。具体的,可以根据部位关键点的置信度对对象的姿态信息进行处理,以确定各个第一姿态约束项,其中,第一姿态约束项表征第一参数值的基础姿态约束。
[0171]
可选的,第一姿态约束项包括二维投影约束项、三维约束项和骨骼朝向约束项中的至少一项。
[0172]
在实际的应用过程中,姿态信息比如可以是各个部位关键点的位置参数,示例性的,部位关键点的位置参数可以包括部位关键点的二维坐标、三维坐标以及根据二维坐标和/或三维坐标确定的其他参量。其中,二维坐标可参照上述通过二维热力图的方式确定,这里不赘述。另外,确定部位关键点的三维坐标的方式和确定部位关键点的方式均为通过热力图的方式确定的,确定部位关键点的三维坐标的方式具体为,将待处理视频帧中包含对象的图像作为三维部位关键点网络模型的输入,以得到部位关键点的三维热力图;根据三维热力图,确定部位关键点的三维位置信息,也即三维坐标。
[0173]
由于置信度表征图像包含部位关键点的概率,可以将大于置信度阈值的关键点称为有效部位关键点,也即,有效部位关键点是在图像内的关键点。为了提高三维姿态确定的准确性,利用部位关键点中的有效部位关键点,对无效关键点不做处理。
[0174]
在确定有效部位关键点的三维位置信息时,应用三维热力图来实现,使获得的关键点的三维位置更准确,进而确定三维姿态更准确。
[0175]
在一个具体的例子中,同一个部位关键点,表征其位置的两个要素为二维坐标和三维坐标,在三维坐标的确定过程中,将待处理视频帧中包含对象的图像作为三维部位关键点网络模型的输入得到的是部位关键点的三维热力图。假设h1
n
为第n个部位关键点大小为w1
×
h1
×
d1的热力图,首先对热力图进行softmax运算,得到部位关键点在每个位置上的概率图如下:
[0176][0177]
对概率图加权平均后可以得到部位关键点归一化坐标为:
[0178][0179][0180][0181]
其中,h1为三维热力图的长度,w1为三维热力图的宽度,s为三维热力图的高度;i为三维热力图上的某一个像素点的长度编号,j为三维热力图上的某一个像素点的宽度编号,s为三维热力图上的某一个像素点的高度编号。
[0182]
对在确定各个部位关键点的置信度后,即可确定对象的三维姿态。示例性的,采用优化问题求解的方式来确定对象的三维姿态。
[0183]
涉及到s404,在求解优化问题时,将各个第一姿态约束项加和,确定姿态优化项。
[0184]
在一个具体的例子中,姿态优化项即为二维投影约束项、三维约束项和骨骼朝向约束项的和。
[0185]
涉及到s405,确定姿态优化项取最小值时的对象的三维姿态模型的第二参数值;其中,第二参数值表征对象的三维姿态。
[0186]
具体的,由于各个约束项中包括了多个参数,前述第一参数值可以是随机选取的,也可以是按照某种规则设置的,而对姿态优化项进行反解,就可以得到姿态优化项取最小值时的这些参数的第二参数值。由于第二参数值表征了对象的三维姿态,这样可以将第二参数值配置到三维姿态确定的系统或者设备中,实现了对三维姿态的优化。
[0187]
在一个具体的例子中,优化问题的待优化参数为人体上半身骨骼旋转θ、人体体型系数β和设定部位关键点的位置t,为了和网络预测得到的人体模型参数进行区分,网络模型预测的人体模型参数表示为θ
init
、β
init
、t
init
,在求解优化问题时作为初值。
[0188]
在优化过程中,首先确定姿态优化项,确定在姿态优化项取最小值时的对象的三维姿态的模型参数值为各个骨骼的目标旋转角度θ
fina
、人体体型系数β
fina
和设定部位关键点的位置t
fina
。也即,第二参数值。
[0189]
应用该方式确定对象的基础姿态约束加和确定的姿态优化项,在求解最后问题得到的目标模型的参数值时,在保证准确度的公式,计算量小,计算速度更快。
[0190]
在实际的应用过程中,为了提高优化过程的准确性,可以在第一姿态约束项构成的姿态优化项的基础上,引入第二姿态约束项,进而对姿态优化项进行更新。具体的,根据获取到的对象模型参数确定各个第二姿态约束项,其中,第二姿态约束项表征第一参数值的姿态调整约束;将各个第二姿态约束项和姿态优化项加和,确定更新后的姿态优化项;确定更新后的姿态优化项取最小值时的对象的三维姿态模型的第二参数值。由于第二姿态约
束表征对对象的姿态调整约束,姿态调整约束项可以对第一种方式确定对象的三维姿态中可能存在的不可实现的姿态进行矫正,提高三维姿态确定的准确度。
[0191]
示例性的,第一姿态约束项可以包括二维投影约束项、三维约束项和骨骼朝向约束项,第二姿态约束项包括姿态先验约束项和姿态正则约束项。示例性的。在确定三维姿态时,二维投影约束项、三维约束项和骨骼朝向约束项在优化问题时可以确保姿态确定的基础姿态的准确性,姿态先验约束项和姿态正则约束项在优化问题是可以对基础姿态进行矫正,进一步提高了三维姿态确定的准确性。
[0192]
下面对各个约束项的计算过程进行进行说明:
[0193]
(1)二维投影约束项:
[0194]
若第一姿态约束项为二维投影约束项,则通过如下方式确定二维投影约束项,包括:
[0195]
根据预先设定的投影约束项权重、每个部位关键点的置信度、根据对象的模型参数确定的每个部位关键点的三维位置信息,以及各个部位关键点的二维位置信息,确定二维投影约束项。
[0196]
在确定二维约束项时,考虑了各个部位关键点的置信度,也即,对部位关键点的选取带有选择性,这样使确定的二维约束项更准确。
[0197]
在一个具体的例子中,可以通过如下公式确定二维投影约束项:
[0198][0199]
其中,e
2d
表示二维投影约束项,ω
2d
表示预先设定的投影约束项权重,c
n
表示第n个部位关键点的置信度,n表示部位关键点的总数,k表示投影矩阵,p
n
(θ,β)为根据对象的模型参数确定的每个部位关键点的三维位置信息,θ为对象模型参数中的骨骼旋转角度参数;β对象模型参数中的对象体型参数;t为对象模型参数中的对象的预设部位关键点的位置参数;为获取到的第n个部位关键点的二维位置信息。
[0200]
其中,p
n
(θ,β)的确定方式中,根据smpl模型的特性,对θ和β进行设定规则的运算,得到p
n
(θ,β)。预设部位关键点可以成为根节点,比如是胯,预设部位关键点可以作为本技术实施例中的上半身与下半身的分界位置的部位关键点,当对象为上半身时,可以将胯对应的关键点作为预设部位关键点。
[0201]
有效部位关键点有效部位关键点上述示例中,通过对上述公式中的各个参数进行设置,比如自由配置投影约束项权重,提高了确定的二维投影约束项的准确度,进而使确定的姿态优化项更准确。
[0202]
(2)三维约束项:
[0203]
若第一姿态约束项为三维约束项,则通过如下方式确定三维约束项,包括:
[0204]
根据预先设定的三维部位关键点位置约束项权重、每个部位关键点的置信度、根据对象的模型参数确定的每个部位关键点的三维位置信息,以及各个部位关键的三维位置信息,确定三维约束项。
[0205]
这样,考虑了各个部位关键点的置信度,也即,对部位关键点的选取带有选择性,
这样使确定的三维约束项更准确。
[0206]
在一个具体的例子中,可以通过如下公式确定三维约束项:
[0207][0208]
其中,e
3d
表示三维投影约束项,ω
3d
表示预先设定的三维部位关键点位置约束项权重,c
n
表示第n个部位关键点的置信度,n表示部位关键点的总数,p
n
(θ,β))为根据对象的模型参数确定的第n个部位关键点的三维位置信息,θ为对象模型参数中的骨骼旋转角度参数;β为对象模型参数中的对象体型参数;为获得的第n个部位关键点的三维位置信息。可选的,表示的第n个部位关键点的三维位置信息是根据三维热力图确定的。
[0209]
上述示例中,通过对上述公式中的各个参数进行设置,比如自由配置投影约束项权重,提高了确定的三维投影约束项的准确度,进而使确定的姿态优化项更准确有效部位关键点有效部位关键点(3)骨骼朝向约束项:
[0210]
若第一姿态约束项为骨骼朝向约束项,则通过如下方式确定骨骼朝向约束项,包括:
[0211]
根据预先设定的骨骼朝向约束项权重、根据置信度确定的每个骨骼的置信度、每个骨骼的朝向和根据对象模型参数确定的每个骨骼的朝向,确定骨骼朝向约束项。
[0212]
这样,考虑了各个骨骼的置信度和骨骼的朝向,也即,对骨骼的选取带有选择性,这样使确定的骨骼朝向约束项更准确。
[0213]
在一个具体的例子中,可以通过如下公式确定骨骼朝向约束项:
[0214][0215]
其中,e
bone
表示骨骼朝向约束项,ω
bone
表示预先设定的骨骼朝向约束项权重,b
r
表示第r个骨骼的置信度,d
r
(θ,β)表示对象模型参数确定的每个骨骼的朝向,d
r
为通过构成骨骼的两个部位关键点确定的第r个骨骼的朝向。
[0216]
示例性的,可以通过如下公式确定d
j
(θ,β):
[0217][0218]
其中,p
a
(θ,β)为根据对象的模型参数确定的点a的三维位置信息,p
b
(θ,β)为根据对象的模型参数确定的点b的三维位置信息。
[0219]
基于各个部位关键点的参数,可以通过下列方式确定每个骨骼的置信度:基于构成骨骼的两个部位关键点中包含的有效部位关键点的数量,确定骨骼的置信度,其中骨骼的置信度表征骨骼包含有效部位关键点的置信度;有效部位关键点为置信度大于预设置信度阈值的部位关键点。通过构成骨骼的有效部位关键点的数量来确定骨骼的置信度,比如给包括出画的关键点构成的骨骼的置信度和包括不出画的关键点构成的置信度不同,因此,后续确定骨骼的朝向更准确。
[0220]
示例性的,若构成骨骼的两个部位关键点均为有效部位关键点或者其中之一为有效部位关键点,则该骨骼的置信度可以取值为1;若构成骨骼的两个部位关键点均不是有效部位关键点,则该骨骼的置信度可以取值为0。这样,可以根据部位关键点的置信度确定其对应骨骼的置信度,也即,考虑到了某些部位关键点出画的情况。
[0221]
基于构成骨骼的两个部位关键点中包含的有效部位关键点的数量,可以确定骨骼朝向。确定骨骼朝向的时,也考虑了有效部位关键点的数量,确定的骨骼朝向更准确。
[0222]
具体的,骨骼朝向为一些部位关键点对构成的骨骼的三维的方向,例如手肘到手腕的方向,在一个具体的例子中,可以用预先训练的骨骼朝向神经网络获得的三通道热力图的形式表示骨骼朝向。假设分别为第b个骨骼x、y、z三个通道上大小为w
×
h的热力图,该骨骼的两个端点分别为关键点a和b,其二维坐标和置信度分别为c
a
、c
b
。首先根据置信度判断两个端点是否在画面内,如果a和b均不在画面内,则判定该骨骼朝向无效。如果a和b中只有一个点在画面内,则该骨骼朝向设定为在画面内的端点处的值。以a在画面内,b不在画面内为例,该骨骼朝向为:
[0223][0224]
如果a和b均在画面内,则在a和b的连线上,均匀地采样l个点,将这l个点处获得的骨骼朝向取平均。具体来说,采样的第v(1≤v≤l)个点的坐标可以计算为同理。骨骼朝向同理。骨骼朝向同理。最后,对于骨骼朝向有效的情况,将骨骼朝向归一化到2范数为1。通过上述基于部位关键点的置信度的判断方法,可以鲁棒地处理部分关节在画面外的情况。
[0225]
上述示例中,通过对上述公式中的各个参数进行配置,确定的骨骼朝向约束项更准确,进而使确定的姿态优化项更准确。
[0226]
其中,预先训练的骨骼朝向神经网络在训练时,骨骼朝向的热力图使用mse损失函数监督。骨骼朝向的热力图的监督可以通过如下方法获得,构造端点a和b连接的矩形区域,其中矩形宽度固定为d个像素,热力图在矩形区域以内的值为监督值,以外的值为0。例如当端点a和b在下图中位置时,构造得到的骨骼朝向热力图监督,可以参考图5,其中为x方向上的骨骼朝向热力图监督,为y方向上的骨骼朝向热力图监督,为z方向上的骨骼朝向热力图监督。
[0227]
(4)姿态先验约束项:
[0228]
若第二姿态约束项为姿态先验约束项,则通过如下方式确定姿态先验约束项包括:
[0229]
根据预先设定的姿态先验约束权重、预先设定的协方差矩阵、预先设定的骨骼旋转参数均值和对象模型参数中的骨骼旋转角度参数,确定姿态先验约束项。
[0230]
上述姿态先验约束项,引入了相应的权重,并且应用相应的各个对象模型参数的初始值,这样可以保证最终确定的姿态优化项求解出来的三维姿态不扭曲。
[0231]
在一个具体的例子中,可以通过如下公式确定姿态先验约束项:
[0232]
e
prior
=ω
prior
‖a1(θ

b1)‖2[0233]
其中,e
prior
表示姿态先验约束项,ω
prior
表示预先设定的姿态先验约束权重,a1表示预先设定的协方差矩阵,b1表示预先设定的骨骼旋转参数均值,θ为对象模型参数中的骨骼旋转角度参数。
[0234]
上述实施例中,通过对上述公式中的参数进行自由配置,提高三维姿态确定的准确性。
[0235]
(5)姿态正则约束项:
[0236]
若第二姿态约束项为姿态正则约束项,则通过如下方式确定姿态正则约束项包括:
[0237]
根据预先设定的姿态回归权重、预先设定的体型回归权重、对象模型参数中的骨骼旋转角度参数、对象模型参数中的对象体型参数、对象的骨骼的初始旋转角度值、对象的体型的初始系数值,确定姿态正则约束项。
[0238]
上述姿态正则约束项,引入了相应的权重,并且应用相应的各个对象模型参数的初始值,这样可以保证最终确定的姿态优化项求解出来的三维姿态不扭曲。
[0239]
在一个具体的例子中,可以通过如下公式确定姿态正则约束项:
[0240]
e
reg
=ω
pose,reg
‖θ

θ
init
‖2 ω
shape,reg
‖β

β
init
‖2[0241]
其中,e
reg
表示姿态正则约束项,ω
pose,reg
表示预先设定的姿态回归权重,ω
shape,reg
表示预先设定的体型回归权重,θ表示对象模型参数中的骨骼旋转角度参数,θ
init
表示对象的骨骼的初始旋转角度值,β表示对象模型参数中的对象体型参数,β
init
表示对象的体型的初始系数值。示例性的,θ
init
和β
init
是根据smpl模型确定的。
[0242]
上述示例中,通过对上述公式的参数自由配置,提高三维姿态确定的准确性。
[0243]
在确定各个约束项后,将各个约束项进行加和,得到姿态优化项,以上述第二种情况为例,姿态优化项e为:
[0244]
e=e
2d
e
3d
e
bone
e
prior
e
reg
[0245]
求解该姿态优化项e,确定e取最小值时的对象三维姿态的各个骨骼的目标旋转角度θ
fina
、人体体型系数β
fina
和设定部位关键点的位置t
fina
,确定的这些参数值为对象的三维姿态相应的参数值,这样即可确定目标对象的三维姿态。
[0246]
本技术实施例中,在确定三维姿态的优化过程中,各个约束项为优化问题中的能量函数,可以配置各个能量函数的权重,提升上半身动作捕捉的效果和鲁棒性。
[0247]
另外,需要说明的是,前述应用到的各个神经网络,可以为独立的神经网络,也可以为单个多任务神经网络,其中,单个神经网络可以降低开销,提高运行速度。
[0248]
如图6所示,基于与上述三维姿态的确定方法相同的发明构思,本技术实施例还提供了一种三维姿态的确定装置,该装置包括图像识别单元601、置信度确定单元602、基础约束项确定单元603、姿态优化项确定单元604和姿态确定单元605。
[0249]
图像识别单元601,被配置为执行识别待处理视频帧中包含对象的图像;
[0250]
置信度确定单元602,被配置为执行确定图像中包括的部位关键点的置信度,并获取对象的三维姿态模型的第一参数值;
[0251]
基础约束项确定单元603,被配置为执行根据部位关键点的置信度对对象的姿态
信息进行处理,以确定各个第一姿态约束项,其中,第一姿态约束项表征第一参数值的基础姿态约束;
[0252]
姿态优化项确定单元604,被配置为执行将各个第一姿态约束项加和,确定姿态优化项;
[0253]
姿态确定单元605,被配置为执行确定姿态优化项取最小值时的对象的三维姿态模型的第二参数值;其中,第二参数值表征对象的三维姿态。
[0254]
在一些示例性的实施方式中,置信度确定单元602具体被配置为执行:
[0255]
确定图像中包括的部位关键点的二维热力图;
[0256]
针对每一个部位关键点,根据二维热力图的分辨率以及像素点的灰度值确定部位关键点的置信度,其中,置信度表征图像包含对应部位关键点的概率。
[0257]
在一些示例性的实施方式中,置信度确定单元602被配置为执行:
[0258]
根据二维热力图的像素点的灰度值和二维热力图的分辨率确定二维热力图的像素特征;
[0259]
应用设定概率算法对像素特征进行变换,得到部位关键点的置信度。
[0260]
在一些示例性的实施方式中,还包括更新单元,更新单元被配置为执行:
[0261]
根据获取到的对象模型参数确定各个第二姿态约束项,其中,第二姿态约束项表征第一参数值的姿态调整约束;
[0262]
将各个第二姿态约束项和姿态优化项加和,确定更新后的姿态优化项;
[0263]
确定更新后的姿态优化项取最小值时的对象三维姿态的目标模型的第二参数值。
[0264]
在一些示例性的实施方式中,第一姿态约束项包括二维投影约束项、三维约束项和骨骼朝向约束项中的至少一项;第二姿态约束项包括姿态先验约束项和姿态正则约束项中的至少一项。
[0265]
在一些示例性的实施方式中,姿态确定单元605被配置为执行通过如下方式确定二维投影约束项:
[0266]
根据预先设定的投影约束项权重、每个部位关键点的概率参数、根据对象的模型参数确定的每个部位关键点的三维位置信息,以及各个部位关键点的二维位置信息,确定二维投影约束项。
[0267]
在一些示例性的实施方式中,姿态确定单元605被配置为执行应用如下方式确定二维投影约束项:
[0268][0269]
其中,e
2d
表示二维投影约束项,ω
2d
表示预先设定的投影约束项权重,c
n
表示第n个部位关键点的置信度,n表示部位关键点的总数,k表示投影矩阵,p
n
(θ,β))为根据对象的模型参数确定的每个部位关键点的三维位置信息,θ为对象模型参数中的骨骼旋转角度参数;β对象模型参数中的对象体型参数;t为对象模型参数中的对象的预设部位关键点的位置参数;为获取到的第n个部位关键点的二维位置信息。
[0270]
在一些示例性的实施方式中,姿态确定单元605被配置为执行通过如下方式确定
三维约束项:
[0271]
根据预先设定的三维部位关键点位置约束项权重、每个部位关键点的置信度、根据对象的模型参数确定的每个部位关键点的三维位置信息,以及各个部位关键的三维位置信息,确定三维约束项。
[0272]
在一些示例性的实施方式中,姿态确定单元605被配置为执行应用如下公式确定三维约束项:
[0273][0274]
其中,e
3d
表示三维投影约束项,ω
3d
表示预先设定的三维部位关键点位置约束项权重,c
n
表示第n个部位关键点的置信度,n表示部位关键点的总数,p
n
(θ,β))为根据对象的模型参数确定的第n个部位关键点的三维位置信息,θ为对象模型参数中的骨骼旋转角度参数;β为对象模型参数中的对象体型参数;为获取到的第n个部位关键点的三维位置信息。
[0275]
在一些示例性的实施方式中,姿态确定单元605被配置为执行通过如下方式确定骨骼朝向约束项:
[0276]
根据预先设定的骨骼朝向约束项权重、根据置信度确定的每个骨骼的置信度、每个骨骼的朝向和根据对象模型参数确定的每个骨骼的朝向,确定骨骼朝向约束项。
[0277]
在一些示例性的实施方式中,姿态确定单元605被配置为执行应用如下公式确定骨骼朝向约束项:
[0278][0279]
其中,e
bone
表示骨骼朝向约束项,ω
bone
表示预先设定的骨骼朝向约束项权重,b
r
表示第r个骨骼的置信度,d
r
(θ,β)表示对象模型参数确定的每个骨骼的朝向,d
r
为通过构成骨骼的两个部位关键点确定的第r个骨骼的朝向。
[0280]
在一些示例性的实施方式中,姿态确定单元605被配置为执行通过下列方式确定每个骨骼的置信度:
[0281]
基于构成骨骼的两个部位关键点中包含的有效部位关键点的数量,确定骨骼的置信度,其中骨骼的置信度表征骨骼包含有效部位关键点的置信度;有效部位关键点为置信度大于预设置信度阈值的部位关键点。
[0282]
在一些示例性的实施方式中,姿态确定单元605被配置为执行通过如下方式确定每个骨骼的朝向:
[0283]
基于构成骨骼的两个部位关键点中包含的有效部位关键点的数量,确定骨骼朝向。
[0284]
在一些示例性的实施方式中,姿态确定单元605被配置为执行通过如下方式确定姿态先验约束项:
[0285]
根据预先设定的姿态先验约束权重、预先设定的协方差矩阵、预先设定的骨骼旋
转参数均值和对象模型参数中的骨骼旋转角度参数,确定姿态先验约束项。
[0286]
在一些示例性的实施方式中,姿态确定单元605被配置为执行应用如下公式确定姿态先验约束项:
[0287]
e
prior
=ω
prior
‖a1(θ

b1)‖2[0288]
其中,e
prior
表示姿态先验约束项,ω
prior
表示预先设定的姿态先验约束权重,a1表示预先设定的协方差矩阵,b1表示预先设定的骨骼旋转参数均值,θ为对象模型参数中的骨骼旋转角度参数。
[0289]
在一些示例性的实施方式中,姿态确定单元605被配置为执行通过如下方式确定姿态正则约束项:
[0290]
根据预先设定的姿态回归权重、预先设定的体型回归权重、对象模型参数中的骨骼旋转角度参数、对象模型参数中的对象体型参数、对象的骨骼的初始旋转角度值、对象的体型的初始系数值,确定姿态正则约束项。
[0291]
在一些示例性的实施方式中,姿态确定单元605被配置为执行应用如下公式确定姿态正则约束项:
[0292]
e
reg
=ω
pose,reg
‖θ

θ
init
‖2 ω
shape,reg
‖β

β
init
‖2[0293]
其中,e
reg
表示姿态正则约束项,ω
pose,reg
表示预先设定的姿态回归权重,ω
shape,reg
表示预先设定的体型回归权重,θ表示对象模型参数中的骨骼旋转角度参数,θ
init
表示对象的骨骼的初始旋转角度值,β表示对象模型参数中的对象体型参数,β
init
表示对象的体型的初始系数值。
[0294]
在一些示例性的实施方式中,置信度确定单元602被配置为执行:
[0295]
将待处理视频中包含对象的图像作为二维部位关键点网络模型的输入,以得到部位关键点的二维热力图。
[0296]
在一些示例性的实施方式中,还包括三维位置信息确定单元,三维位置信息确定单元被配置为通过如下方式确定部位关键点的三维位置信息:
[0297]
将待处理视频帧中包含对象的图像作为三维部位关键点网络模型的输入,以得到部位关键点的三维热力图;
[0298]
根据三维热力图,确定部位关键点的三维位置信息。
[0299]
本技术实施例提的三维姿态的确定装置与上述三维姿态的确定方法采用了相同的发明构思,能够取得相同的有益效果,在此不再赘述。
[0300]
在一些可能的实施方式中,根据本技术的电子设备可以至少包括至少一个处理器、以及至少一个存储器。其中,存储器存储有程序代码,当程序代码被处理器执行时,使得处理器执行本说明书上述描述的根据本技术各种示例性实施方式的界面信息控制方法中的步骤。例如,处理器可以执行如界面信息控制方法中的步骤。
[0301]
下面参照图7来描述根据本技术的这种实施方式的电子设备130。图7显示的电子设备130仅仅是一个示例,不应对本技术实施例的功能和使用范围带来任何限制。
[0302]
如图7所示,电子设备130以通用电子设备的形式表现。电子设备130的组件可以包括但不限于:上述至少一个处理器131、上述至少一个存储器132、连接不同系统组件(包括存储器132和处理器131)的总线133。
[0303]
总线133表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器、
外围总线、处理器或者使用多种总线结构中的任意总线结构的局域总线。
[0304]
存储器132可以包括易失性存储器形式的可读介质,例如随机存取存储器(ram)1321和/或高速缓存存储器1322,还可以进一步包括只读存储器(rom)1323。
[0305]
存储器132还可以包括具有一组(至少一个)程序模块1324的程序/实用工具1325,这样的程序模块1324包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。
[0306]
电子设备130也可以与一个或多个外部设备134(例如键盘、指向设备等)通信,还可与一个或者多个使得用户能与电子设备130交互的设备通信,和/或与使得该电子设备130能与一个或多个其它电子设备进行通信的任何设备(例如路由器、调制解调器等等)通信。这种通信可以通过输入/输出(i/o)接口135进行。并且,电子设备130还可以通过网络适配器136与一个或者多个网络(例如局域网(lan),广域网(wan)和/或公共网络,例如因特网)通信。如图所示,网络适配器136通过总线133与用于电子设备130的其它模块通信。应当理解,尽管图中未示出,可以结合电子设备130使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理器、外部磁盘驱动阵列、raid系统、磁带驱动器以及数据备份存储系统等。
[0307]
在示例性实施例中,还提供了一种包括指令的计算机可读存储介质,例如包括指令的存储器132,上述指令可由装置600的处理器131执行以完成上述方法。可选地,计算机可读存储介质可以是rom、随机存取存储器(ram)、cd

rom、磁带、软盘和光数据存储设备等。
[0308]
在示例性实施例中,还提供一种计算机程序产品,包括计算机程序,计算机程序被处理器131执行时实现如本技术提供的界面信息控制方法的任一方法。
[0309]
在示例性实施例中,本技术提供的一种界面信息控制方法的各个方面还可以实现为一种程序产品的形式,其包括程序代码,当程序产品在计算机设备上运行时,程序代码用于使计算机设备执行本说明书上述描述的根据本技术各种示例性实施方式的一种界面信息控制方法中的步骤。
[0310]
程序产品可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑盘只读存储器(cd

rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。
[0311]
本技术的实施方式的用于图像缩放的程序产品可以采用便携式紧凑盘只读存储器(cd

rom)并包括程序代码,并可以在电子设备上运行。然而,本技术的程序产品不限于此,在本文件中,可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
[0312]
可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括——但不限于——电磁信号、光信号或上述的任意合适的组合。可读信号介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
[0313]
可读介质上包含的程序代码可以用任何适当的介质传输,包括——但不限于——无线、有线、光缆、rf等等,或者上述的任意合适的组合。
[0314]
可以以一种或多种程序设计语言的任意组合来编写用于执行本技术操作的程序代码,程序设计语言包括面向对象的程序设计语言—诸如java、c 等,还包括常规的过程式程序设计语言—诸如“c”语言或类似的程序设计语言。程序代码可以完全地在用户电子设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户电子设备上部分在远程电子设备上执行、或者完全在远程电子设备或服务端上执行。在涉及远程电子设备的情形中,远程电子设备可以通过任意种类的网络——包括局域网(lan)或广域网(wan)—连接到用户电子设备,或者,可以连接到外部电子设备(例如利用因特网服务提供商来通过因特网连接)。
[0315]
应当注意,尽管在上文详细描述中提及了装置的若干单元或子单元,但是这种划分仅仅是示例性的并非强制性的。实际上,根据本技术的实施方式,上文描述的两个或更多单元的特征和功能可以在一个单元中具体化。反之,上文描述的一个单元的特征和功能可以进一步划分为由多个单元来具体化。
[0316]
此外,尽管在附图中以特定顺序描述了本技术方法的操作,但是,这并非要求或者暗示必须按照该特定顺序来执行这些操作,或是必须执行全部所示的操作才能实现期望的结果。附加地或备选地,可以省略某些步骤,将多个步骤合并为一个步骤执行,和/或将一个步骤分解为多个步骤执行。
[0317]
本领域内的技术人员应明白,本技术的实施例可提供为方法、系统、或计算机程序产品。因此,本技术可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本技术可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd

rom、光学存储器等)上实施的计算机程序产品的形式。
[0318]
本技术是参照根据本技术实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程图像缩放设备的处理器以产生一个机器,使得通过计算机或其他可编程图像缩放设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
[0319]
这些计算机程序指令也可存储在能引导计算机或其他可编程图像缩放设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
[0320]
这些计算机程序指令也可装载到计算机或其他可编程图像缩放设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
[0321]
尽管已描述了本技术的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优
选实施例以及落入本技术范围的所有变更和修改。
[0322]
显然,本领域的技术人员可以对本技术进行各种改动和变型而不脱离本技术的精神和范围。这样,倘若本技术的这些修改和变型属于本技术权利要求及其等同技术的范围之内,则本技术也意图包含这些改动和变型在内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献