CN108960036B - 三维人体姿态预测方法、装置、介质及设备 - Google Patents
三维人体姿态预测方法、装置、介质及设备 Download PDFInfo
- Publication number
- CN108960036B CN108960036B CN201810395266.9A CN201810395266A CN108960036B CN 108960036 B CN108960036 B CN 108960036B CN 201810395266 A CN201810395266 A CN 201810395266A CN 108960036 B CN108960036 B CN 108960036B
- Authority
- CN
- China
- Prior art keywords
- human
- human body
- neural network
- depth
- 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.)
- Active
Links
Images
Classifications
-
- 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
- G06V40/103—Static body considered as a whole, e.g. static pedestrian or occupant recognition
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- General Engineering & Computer Science (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Biomedical Technology (AREA)
- Life Sciences & Earth Sciences (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Human Computer Interaction (AREA)
- Multimedia (AREA)
- Image Analysis (AREA)
- Image Processing (AREA)
Abstract
本申请的实施方式公开了一种三维人体姿态预测方法、神经网络训练方法、装置、电子设备、计算机可读存储介质及计算机程序,其中的三维人体姿态预测方法主要包括:获取待处理图像中的人体关键点信息以及人体关键点的深度前后关系;将所述人体关键点信息和人体关键点的深度前后关系提供给第一神经网络,经由所述第一神经网络执行三维人体姿态预测处理,以获取三维人体姿态预测结果;其中,所述人体关键点的深度前后关系用于表示人体关键点之间的深度位置相对关系。本申请提供的技术方案有利于提高三维人体姿态预测的准确性,从而有利于避免由于三维人体姿态预测错误而对互动娱乐以及行为分析等产生不良影响。
Description
技术领域
本申请涉及计算机视觉技术,尤其是涉及一种三维人体姿态预测方法、三维人体姿态预测装置、神经网络训练方法、神经网络训练装置、电子设备、计算机可读存储介质以及计算机程序。
背景技术
三维人体姿态预测在互动娱乐以及行为分析等技术领域中,发挥着一定的作用。
在三维人体姿态预测过程中,往往会存在预测错误,例如,手臂应该位于身体前侧,而预测的结果包括:手臂位于身体后侧。三维人体姿态预测错误会对互动娱乐以及行为分析等产生不良影响。如何提高三维人体姿态预测的准确性,是一个值得关注的技术问题。
发明内容
本申请实施方式提供一种三维人体姿态预测以及训练神经网络的技术方案。
根据本申请实施方式其中一个方面,提供一种三维人体姿态预测方法,所述方法包括:获取待处理图像中的人体关键点信息以及人体关键点的深度前后关系;将所述人体关键点信息和人体关键点的深度前后关系提供给第一神经网络,经由所述第一神经网络执行三维人体姿态预测处理,以获取三维人体姿态预测结果;其中,所述人体关键点的深度前后关系用于表示人体关键点之间的深度位置相对关系。
在本申请一实施方式中,所述人体关键点信息包括:人体关键点在待处理图像中的二维坐标。
在本申请又一实施方式中,所述人体关键点的深度前后关系包括:表征一个人体关键点位于另一个人体关键点之前或之后的信息。
在本申请再一实施方式中,所述人体关键点的深度前后关系包括:人体关键点的深度前后关系矩阵;其中,所述矩阵的行数和列数为人体关键点的数量,所述矩阵的第n行表示第n个人体关键点,所述矩阵的第m列表示第m个人体关键点,所述矩阵第n行第m列的数值表示第n个人体关键点在第m个人体关键点之前或之后的概率值。
在本申请再一实施方式中,所述人体关键点的深度前后关系的获取过程包括:将所述待处理图像提供给第二神经网络,经由所述第二神经网络执行人体关键点的深度前后关系预测处理,以获取人体关键点的深度前后关系。
在本申请再一实施方式中,所述执行三维人体姿态预测处理包括:根据人体关键点的深度前后关系信息预测人体关键点深度值;根据人体关键点深度值和人体关键点信息预测三维人体姿态。
在本申请再一实施方式中,所述三维人体姿态预测结果包括:人体关键点在三维空间中的坐标。
在本申请再一实施方式中,所述第一神经网络是利用多条包含有人体关键点样本信息以及人体关键点的深度前后关系样本信息的数据样本训练而成的。
根据本申请实施方式的其中再一个方面,提供一种神经网络的训练方法,用于训练神经网络的数据样本包括:人体关键点样本信息、人体关键点的深度前后关系样本信息以及用于监督的标注信息,所述训练方法包括:将数据样本中的人体关键点样本信息以及人体关键点的深度前后关系样本信息,提供给待训练的第一神经网络,经由所述待训练的第一神经网络执行三维人体姿态预测处理;利用所述数据样本中的标注信息对所述待训练的第一神经网络进行监督学习。
在本申请一实施方式中,所述将数据样本中的人体关键点样本信息以及人体关键点的深度前后关系样本信息,提供给待训练的第一神经网络,经由所述待训练的第一神经网络执行三维人体姿态预测处理包括:将数据样本中的人体关键点的深度前后关系样本信息提供给待训练的第一神经网络中的第一神经网络单元,经由所述第一神经网络单元执行人体关键点深度预测处理;将第一神经网络单元输出的人体关键点深度值与数据样本中的人体关键点在待处理图像中的二维坐标样本信息,作为人体关键点张量,提供给待训练的第一神经网络中的第二神经网络单元,经由所述第二神经网络单元执行三维人体姿态预测处理。
在本申请一又实施方式中,所述利用所述数据样本中的标注信息对所述待训练的第一神经网络进行监督学习包括:利用所述数据样本中的人体关键点深度标注值对第一神经网络单元输出的人体关键点深度值进行监督,并利用所述数据样本中的人体关键点在三维空间中的坐标标注信息对第二神经网络单元输出的人体关键点在三维空间中的坐标进行监督。
在本申请再一实施方式中,所述数据样本中的人体关键点深度标注值,是利用数据样本中的人体关键点在三维空间中的坐标标注信息形成的。
在本申请再一实施方式中,至少一个所述数据样本中的人体关键点在三维空间中的坐标标注信息是经过了基于标准差的标准化处理的坐标标注信息。
在本申请再一实施方式中,在训练所述第一神经网络之前,所述方法还包括:根据训练数据集中的数据样本,基于随机选取虚拟摄像装置的方式,获得新的数据样本;所述新的数据样本被添加在所述训练数据集中。
根据本申请实施方式其中再一个方面,提供一种三维人体姿态预测装置,所述装置包括:获取信息模块,用于获取待处理图像中的人体关键点信息以及人体关键点的深度前后关系信息;包含有第一神经网络的三维人体姿态预测模块,用于将所述人体关键点信息和人体关键点的深度前后关系信息提供给第一神经网络,经由所述第一神经网络执行三维人体姿态预测处理,以获取三维人体姿态预测结果。
在本申请一实施方式中,所述人体关键点信息包括:人体关键点在待处理图像中的二维坐标。
在本申请又一实施方式中,所述人体关键点的深度前后关系包括:表征一个人体关键点位于另一个人体关键点之前或之后的信息。
在本申请再一实施方式中,所述人体关键点的深度前后关系包括:人体关键点的深度前后关系矩阵;其中,所述矩阵的行数和列数为人体关键点的数量,所述矩阵的第n行表示第n个人体关键点,所述矩阵的第m列表示第m个人体关键点,所述矩阵第n行第m列的数值表示第n个人体关键点在第m个人体关键点之前或之后的概率值。
在本申请再一实施方式中,所述获取信息模块包括:获取前后关系模块,用于将所述待处理图像提供给第二神经网络,经由所述第二神经网络执行人体关键点的深度前后关系预测处理,以获取人体关键点的深度前后关系。
在本申请再一实施方式中,所述第一神经网络包括:第一神经网络单元,用于根据人体关键点的深度前后关系信息预测人体关键点深度值;第二神经网络单元,用于根据人体关键点深度值和人体关键点信息预测三维人体姿态。
在本申请再一实施方式中,所述三维人体姿态预测模块进一步用于:将所述人体关键点深度值与人体关键点在待处理图像中的二维坐标,作为人体关键点张量,提供给第二神经网络单元,经由所述第二神经网络单元执行三维人体姿态预测处理。
在本申请再一实施方式中,所述第一神经网络单元包括:至少一个残差网络模块。
在本申请再一实施方式中,在所述第一神经网络单元包括:至少两个残差网络模块的情况下,所述第一神经网络单元所包括的各残差网络模块串接,且串接中的前一个残差网络模块的输入和输出合并后,作为后一个残差网络模块的输入。
在本申请再一实施方式中,所述第二神经网络单元包括:至少一个残差网络模块。
在本申请再一实施方式中,在所述第二神经网络单元包括:至少两个残差网络模块的情况下,所述第二神经网络单元所包括的各残差网络模块串接,且串接中的前一个残差网络模块的输入和输出合并后,作为后一个残差网络模块的输入。
在本申请再一实施方式中,所述第二神经网络单元包括:至少两个阶段网络,每一阶段网络均包括:至少两个串接的残差网络模块,前一阶段网络的输出和前一阶段网络中的一个残差网络模块的输入,均被提供给后一阶段网络。
根据本申请实施方式的其中再一方面,提供一种神经网络的训练装置,用于训练神经网络的数据样本包括:人体关键点样本信息、人体关键点的深度前后关系样本信息以及用于监督的标注信息,所述装置包括:包含有待训练的第一神经网络的样本预测模块,用于将数据样本中的人体关键点样本信息以及人体关键点的深度前后关系样本信息,提供给待训练的第一神经网络,经由所述待训练的第一神经网络执行三维人体姿态预测处理;监督模块,用于利用所述数据样本中的标注信息对所述待训练的第一神经网络进行监督学习。
在本申请一实施方式中,所述样本预测模块还包括:第一子模块,用于将数据样本中的人体关键点的深度前后关系样本信息提供给待训练的第一神经网络中的第一神经网络单元,经由所述第一神经网络单元执行人体关键点深度预测处理;第二子模块,用于将第一神经网络单元输出的人体关键点深度值与数据样本中的人体关键点在待处理图像中的二维坐标样本信息,作为人体关键点张量,提供给待训练的第一神经网络中的第二神经网络单元,经由所述第二神经网络单元执行三维人体姿态预测处理。
在本申请又一实施方式中,所述监督模块进一步包括:第一监督单元,用于利用所述数据样本中的人体关键点深度标注值对第一神经网络单元输出的人体关键点深度值进行监督;第二监督单元,用于利用所述数据样本中的人体关键点在三维空间中的坐标标注信息对第二神经网络单元输出的人体关键点在三维空间中的坐标进行监督。
在本申请再一实施方式中,所述装置还包括:标注模块,用于利用数据样本中的人体关键点在三维空间中的坐标标注信息,形成数据样本中的人体关键点深度标注值。
在本申请再一实施方式中,所述装置还包括:标准化处理模块,用于对至少一个所述数据样本中的人体关键点在三维空间中的坐标标注信息进行基于标准差的标准化处理。
在本申请再一实施方式中,所述装置还包括:数据样本生成模块,用于根据训练数据集中的数据样本,基于随机选取虚拟摄像装置的方式,获得新的数据样本;其中,所述新的数据样本被添加在所述训练数据集中。
根据本申请实施方式再一方面,提供一种电子设备,包括:存储器,用于存储计算机程序;处理器,用于执行所述存储器中存储的计算机程序,且所述计算机程序被执行时,实现本申请任一方法实施方式。
根据本申请实施方式再一个方面,提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时,实现本申请任一方法实施方式。
根据本申请实施方式的再一个方面,提供一种计算机程序,包括计算机指令,当所述计算机指令在设备的处理器中运行时,实现本申请任一方法实施方式。
基于本申请提供的三维人体姿态预测方法、三维人体姿态预测装置、神经网络训练方法、神经网络训练装置、电子设备、计算机可读存储介质及计算机程序,本申请通过将人体关键点信息以及人体关键点的深度前后关系,均提供给第一神经网络,使第一神经网络可以在参照人体关键点的深度前后关系的基础上,进行三维人体姿态预测,从而有利于避免三维人体姿态预测过程中,存在的预测错误的现象。由此可知,本申请提供的技术方案有利于提高三维人体姿态预测的准确性,从而有利于避免由于三维人体姿态预测错误而对互动娱乐以及行为分析等产生不良影响。
下面通过附图和实施方式,对本申请的技术方案做进一步的详细描述。
附图说明
构成说明书的一部分的附图描述了本申请的实施方式,并且连同描述一起用于解释本申请的原理。
参照附图,根据下面的详细描述,可以更加清楚地理解本申请,其中:
图1为本申请的三维人体姿态预测方法一个实施方式的流程图;
图2为本申请的一个待处理图像的示意图;
图3为本申请的图2所示的待处理图像的人体关键点的一个实施方式的示意图;
图4为本申请的人体关键点的深度前后关系矩阵的一个实施方式的示意图;
图5为本申请的针对图4所示的待处理图像进行三维人体姿态预测一个实施方式的示意图;
图6为本申请的第一神经网络单元的一个实施方式的结构示意图;
图7为本申请的第二神经网络单元的一个实施方式的结构示意图;
图8为本申请的第一神经网络的一个实施方式的结构示意图;
图9为本申请的神经网络的训练方法一个实施方式的流程图;
图10为本申请的三维人体姿态预测装置一个实施方式的结构示意图;
图11为本申请的神经网络的训练装置一个实施方式的结构示意图;
图12为实现本申请实施方式的一示例性设备的框图。
具体实施方式
现在将参照附图来详细描述本申请的各种示例性实施例。应注意到:除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对布置、数字表达式和数值不限制本申请的范围。
同时,应当明白,为了便于描述,附图中所示出的各个部分的尺寸并不是按照实际的比例关系绘制的。
以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本申请及其应用或使用的任何限制。
对于相关领域普通技术人员已知的技术、方法以及设备可能不作详细讨论,但在适当情况下,所述技术、方法和设备应当被视为说明书的一部分。
应当注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步讨论。
本申请实施例可以应用于终端设备、计算机系统及服务器等电子设备,其可与众多其它通用或者专用的计算系统环境或者配置一起操作。适于与终端设备、计算机系统以及服务器等电子设备一起使用的众所周知的终端设备、计算系统、环境和/或配置的例子,包括但不限于:个人计算机系统、服务器计算机系统、瘦客户机、厚客户机、手持或膝上设备、基于微处理器的系统、机顶盒、可编程消费电子产品、网络个人电脑、小型计算机系统、大型计算机系统和包括上述任何系统的分布式云计算技术环境,等等。
终端设备、计算机系统以及服务器等电子设备可以在由计算机系统执行的计算机系统可执行指令(诸如程序模块)的一般语境下描述。通常,程序模块可以包括例程、程序、目标程序、组件、逻辑以及数据结构等等,它们执行特定的任务或者实现特定的抽象数据类型。计算机系统/服务器可以在分布式云计算环境中实施,分布式云计算环境中,任务是由通过通信网络链接的远程处理设备执行的。在分布式云计算环境中,程序模块可以位于包括存储设备的本地或远程计算系统存储介质上。
示例性实施例
图1为本申请的三维人体姿态预测方法一个实施例的流程图。
如图1所示,该实施例方法主要包括:步骤S100以及步骤S110。本申请中的步骤S100以及步骤S110具体为:
S100、获取待处理图像中的人体关键点信息以及人体关键点的深度前后关系。
S110、将人体关键点信息以及人体关键点的深度前后关系,提供给第一神经网络,经由第一神经网络执行三维人体姿态预测处理,以获取三维人体姿态预测结果。
在一个可选示例中,本申请中的待处理图像可以为原始待处理图像,也可以为原始待处理图像中的包含有人体的局部图像。另外,本申请中的待处理图像还可以为通过针对原始待处理图像中的包含有人体的局部图像进行处理,而得到的图像。另外,本申请中的待处理图像可以为呈现静态的图片或照片等图像,也可以为呈现动态的视频中的视频帧。本申请中的待处理图像的一个具体例子如图2所示。
在一个可选示例中,本申请的待处理图像所包含的人体可以是完整的人体(例如,图2所示的待处理图像包含有完整的人体)。待处理图像所包含的人体也可以是由于遮挡或者取景角度等原因而造成的局部人体。本申请不限制待处理图像中的人体的具体表现形态。
在一个可选示例中,本申请中的待处理图像的人体关键点的数量至少为两个。在通常情况下,待处理图像的人体关键点的数量为多个,例如,待处理图像的12个或者14个或者16个人体关键点等。本申请中的待处理图像的人体关键点的数量可以以基本上能够描述出人体姿态为原则来确定。本申请不限制待处理图像的人体关键点的具体数量。
在一个可选示例中,本申请中的人体关键点信息通常包括:人体关键点的二维坐标(x,y)。本申请中的人体关键点的二维坐标可以具体为:人体关键点在待处理图像中的二维坐标。在待处理图像为原始待处理图像中的局部图像的情况下,本申请中的人体关键点的二维坐标也可以为:人体关键点在原始待处理图像中的二维坐标。另外,本申请中的人体关键点信息还可以包括:人体关键点标识。人体关键点标识可以具体为:人体关键点编号,例如,针对图2所示的待处理图像,在利用16个人体关键点来人体的情况下,图3中的0-15即为这16个人体关键点的编号。本申请不限制人体关键点的二维坐标以及人体关键点标识的具体表现形式。
在一个可选示例中,本申请可以通过现有的用于检测人体关键点的神经网络(下述称为人体关键点检测神经网络),来获得待处理图像的人体关键点信息。例如,将待处理图像提供给人体关键点检测神经网络,经由人体关键点检测神经网络执行人体关键点检测处理,从而根据该人体关键点检测神经网络输出的信息,可以获得各人体关键点标识以及各人体关键点的二维坐标。
在一个可选示例中,本申请中的人体关键点检测神经网络可以包括但不限于:卷积层、非线性Relu层、池化层以及全连接层等,该人体关键点检测神经网络所包含的层数越多,则网络越深;再例如,本申请的该人体关键点检测神经网络的网络结构可以采用但不限于ALexNet、深度残差网络(Deep Residual Network,ResNet)或VGGnet(Visual GeometryGroup Network,视觉几何组网络)等神经网络所采用的网络结构。本申请中的人体关键点检测神经网络通常是利用带有人体关键点标注信息的图像样本训练获得的。该人体关键点检测神经网络的网络结构以及训练过程,在此不再纤细说明。
在一个可选示例中,本申请中的人体关键点的深度前后关系通常包括:多个基于两个人体关键点的深度前后关系而产生的信息。具体而言,本申请中的人体关键点的深度前后关系包括:对于任意两个人体关键点而言,用于表征其中一个人体关键点位于其中另一个人体关键点之前或之后的信息。例如,人体关键点的深度前后关系可以包括:所有人体关键点中的所有的两两关键点各自对应的用于表征其中一个人体关键点位于其中另一个人体关键点之前或之后的信息。
在一个可选示例中,本申请中的人体关键点的深度前后关系可以为:人体关键点的深度前后关系矩阵;其中,该矩阵所包括的行数以及列数均为人体关键点的数量,例如,在人体关键点的数量为整数A的情况下,该矩阵可以为一个A×A的矩阵。该矩阵的第n行表示第n个人体关键点(例如,编号为n的人体关键点),该矩阵的第m列表示第m个人体关键点(例如,编号为m的人体关键点)。该矩阵中的第n行第m列的值表示:第n个人体关键点在第m个人体关键点之前或之后的概率值。该概率值的取值范围通常可以为0-1。本申请中的人体关键点的深度前后关系也可以采用数组等其他形式来表示,本申请不限制人体关键点的深度前后关系的具体表现形式。
本申请的人体关键点的深度前后关系矩阵的一个可选例子如图4所示。图4示出了一个16行×16列的矩阵,也就是说,人体关键点的数量为16个。图4所示的矩阵包括16×16个数值,矩阵中的每一个数值均属于0-1。例如,图4所示的矩阵中的第0行第2列的数值为0.2,表示图3中编号为0的人体关键点位于图3中编号为2的人体关键点之前的概率值为0.2。再例如,图4所示的矩阵中的第1行第15列的数值为0.3,表示图3中编号为1的人体关键点位于图3中编号为15的人体关键点之前的概率值为0.3。需要说明的是,图4所示的矩阵中第n行第n列的值均被设置为0.5,表示图3中编号为n的人体关键点位于其自身之前的概率值为0.5。另外,在本段的描述中,“之前”也可以替换为“之后”。
在一个可选示例中,本申请可以通过用于对人体关键点进行深度前后关系处理的第二神经网络(可以称为深度前后关系神经网络),来获得待处理图像中的人体关键点的深度前后关系。例如,将待处理图像提供给深度前后关系神经网络,以经由深度前后关系神经网络执行人体关键点的深度前后关系预测处理,从而基于该深度前后关系神经网络输出的信息,可以获得人体关键点的深度前后关系(如所有人体关键点中的任意两个人体关键点所对应的概率值,该概率值表示一个人体关键点位于另一个人体关键点之前或之后的概率值)。再例如,将待处理图像以及待处理图像的所有人体关键点的特征图均提供给深度前后关系神经网络,以经由深度前后关系神经网络执行人体关键点的深度前后关系预测处理,从而基于该深度前后关系神经网络输出的信息,可以获得人体关键点的深度前后关系(如所有人体关键点中的任意两个人体关键点所对应的概率值,同样的,该概率值表示一个人体关键点位于另一个人体关键点之前或之后的概率值)。本申请可以基于深度前后关系神经网络输出的信息获得人体关键点的深度前后关系矩阵。
在一个可选示例中,本申请可以获取待处理图像的至少两个人体关键点的特征图(例如,所有人体关键点的特征图),并将待处理图像以及人体关键点的特征图提供给深度前后关系神经网络。其中的人体关键点的特征图可以为人体关键点的热点图。深度前后关系神经网络可以根据待处理图像以及人体关键点的特征图,形成至少两个人体关键点的特征值(例如,所有人体关键点的特征值),并获取特征值之间的差值,深度前后关系神经网络基于其获得的差值形成人体关键点的深度前后关系。可选的,深度前后关系神经网络可以基于其获得的差值,利用下述公式(1)形成人体关键点的深度前后关系(即上述概率值):
在上述公式(2)中,Pij表示概率值,取值范围为0-1;Fij表示第i个人体关键点的特征值Fi与第j个人体关键点的特征值Fj之间的差值。
在一个可选示例中,本申请中的深度前后关系神经网络可以包括:残差网络单元、向量差值计算单元以及前后关系形成单元,这三部分。由这三部分实现人体关键点的深度前后关系的预测。
深度前后关系神经网络中的残差网络单元用于根据待处理图像,或者根据待处理图像以及人体关键点的热点图,形成至少两个人体关键点的特征值。本申请可以对待处理图像以及至少一个人体关键点的特征图(例如,所有人体关键点的特征图)进行合并处理,形成输入张量,并将输入张量提供给深度前后关系神经网络中的残差网络单元,由残差网络单元针对输入张量形成多个特征值(也可以称为特征向量)。
深度前后关系神经网络中的向量差值计算单元用于,针对残差网络单元输出的特征值(例如,所有特征值,如上述16维的特征向量)中的两特征值(例如,所有特征值中的所有两两特征值),执行特征值差值计算,并输出其计算出的差值,例如,所有特征值中的所有两两特征值的差值。
深度前后关系神经网络中的前后关系形成单元用于,将向量差值计算单元输出的差值转换为人体关键点的深度前后关系。例如,前后关系形成单元将向量差值计算单元输出的所有差值分别转换为0-1之间的概率值(如Pij),从而本申请可以获得人体关键点的深度前后关系矩阵(如图4所示的矩阵)。
在一个可选示例中,本申请中的深度前后关系神经网络是利用多条设置有人体关键点的深度前后关系标注信息的图像样本预先训练而成的;其中的人体关键点的深度前后关系标注信息表示人体关键点之间的深度位置相对关系。
在一个可选示例中,训练深度前后关系神经网络的过程可以为:
首先,获取图像样本,或者获取图像样本以及图像样本的至少两个人体关键点的特征图;
其次,将图像样本提供给待训练的深度前后关系神经网络,或者,将图像样本以及人体关键点的特征图提供给待训练的深度前后关系神经网络,经由待训练的深度前后关系神经网络执行人体关键点的深度前后关系预测处理,以获取人体关键点的深度前后关系;
最后,利用图像样本的人体关键点的深度前后关系标注信息对人体关键点的深度前后关系进行监督,以使待训练的深度前后关系神经网络进行监督学习。
在一个可选示例中,本申请中的图像样本的人体关键点的深度前后关系标注信息,可以是利用图像样本的人体关键点在三维空间中的坐标标注信息形成的。本申请中的图像样本的人体关键点的深度前后关系标注信息,也可以是通过人工标注形成的。图像样本的人体关键点的深度前后关系标注信息包括:表征一个人体关键点位于另一个人体关键点之前或之后的标注信息。例如,表征一个人体关键点位于另一个人体关键点之前或之后的概率标注值。
在一个可选示例中,本申请中的人体关键点的深度前后关系标注信息包括:人体关键点的深度前后关系标注矩阵;其中,标注矩阵的行数和列数为人体关键点的数量,标注矩阵的第n行表示第n个人体关键点,标注矩阵的第m列表示第m个人体关键点,标注矩阵第n行第m列的标注值表示第n个人体关键点在第m个人体关键点之前或之后的概率标注值。
在一个可选示例中,概率标注值的取值可以为第一标注值或者第二标注值或者第三标注值。其中的第一标注值表示一个人体关键点在三维空间中的深度坐标标注信息大于,另一个人体关键点在三维空间中的深度坐标标注信息与预定值之和。其中的第二标注值表示一个人体关键点在三维空间中的深度坐标标注信息小于,另一个人体关键点在三维空间中的深度坐标标注信息与预定值之差。其中的第三标注值表示一个人体关键点在三维空间中的深度坐标标注信息与另一个人体关键点在三维空间中的深度坐标标注信息之差的绝对值,不超过预定值。
在一个可选示例中,第一标注值的取值可以为1,第一标注值也可以称为第一标注概率值;第二标注值的取值可以为0,第二标注值也可以称为第二标注概率值;第三标注值的取值可以为0.5,第三标注值也可以称为第三标注概率值。预定值的大小可以根据实际应用确定。
在一个可选示例中,本申请利用第一神经网络获得三维人体姿态预测结果的一个实施方式如图5所示。本申请可以将图5左上角所示的人体关键点信息(例如,人体关键点的编号以及人体关键点的二维坐标)以及图5左下角所示的人体关键点的深度前后关系(例如,人体关键点的深度前后关系矩阵),合并在一起(即连接在一起),提供给第一神经网络(即图5的中间部分的虚线框DPNet),DPNet根据合并后的人体关键点信息以及人体关键点的深度前后关系,进行三维人体姿态预测处理,从而本申请可以根据DPNet输出的信息获得三维人体姿态预测结果,例如,获得所有人体关键点各自在三维空间(例如,真实世界的三维空间)中的坐标(x’,y’,z’)。本申请获得的所有人体关键点各自在三维空间中的坐标(x’,y’,z’)可以被可视化表示为如图5右侧所示的三维人体姿态。
在一个可选示例中,本申请所获得的所有人体关键点各自在三维空间中的坐标(x’,y’,z’)可以是基于以人体关键点中的盆骨关键点为坐标原点的三维空间坐标系中的坐标。
在一个可选示例中,本申请中的第一神经网络(例如,图5所示的DPNet)可以包括两部分,其中一部分为用于根据人体关键点的深度前后关系,预测人体关键点深度值的第一神经网络单元,例如,图5虚线框中的DepthNet(深度网络);其中另一部分为用于根据人体关键点信息以及上述获得的人体关键点深度值预测三维人体姿态的第二神经网络单元,例如,图5虚线框中的PoseNet(姿态网络)。
在一个可选示例中,本申请可以将人体关键点的深度前后关系提供给第一神经网络单元,以经由第一神经网络单元根据人体关键点的深度前后关系执行人体关键点深度值预测处理(例如,执行针对各人体关键点的深度值的回归处理),从而本申请可以根据第一神经网络单元的输出,获得各人体关键点深度值。之后,本申请可以将人体关键点深度值以及人体关键点的二维坐标(如人体关键点在待处理图像中的二维坐标)进行合并(即连接在一起),从而形成人体关键点张量,通过将人体关键点张量提供给第二神经网络单元,可以经由第二神经网络单元根据人体关键点张量,执行三维人体姿态预测处理,从而本申请可以根据第二神经网络单元输出的信息,获得三维人体姿态预测结果,例如,获得所有人体关键点各自在真实世界的三维空间中的坐标。
在一个可选示例中,本申请中的第一神经网络单元可以包括至少一个残差网络模块。一个残差网络模块可以包括:至少一层线性层(Linear Layer,例如,全连接层)、至少一层BN+ReLU(Batch Normalization+Rectified Linear Unit,批规范化+修正线性单元)层以及至少一层Dropout层。可以认为,在训练第一神经网络单元的过程中,第一神经网络单元所包含的残差网络模块中的Dropout层被开启/被添加,而在非训练过程中(例如,在测试过程中以及在实际应用过程中),第一神经网络单元所包含的残差网络模块中的Dropout层被关闭/被删除。在第一神经网络单元包括:至少两个残差网络模块的情况下,第一神经网络单元所包括的各残差网络模块采用串接的方式连接,且串接中的前一个残差网络模块的输入和输出,在合并后,被作为后一个残差网络模块的输入。
在一个可选示例中,本申请的第一神经网络单元如图6所示。图6中的第一神经网络单元包括两个残差网络模块。图6中的M表示第一神经网络单元的输入数据,即人体关键点的深度前后关系,例如,图4所示的人体关键点的深度前后关系矩阵(注:图4所示的人体关键点的深度前后关系矩阵即为图5中左下角所示的人体关键点的深度前后关系矩阵)。图6中的深灰色的长条表示线性层,浅灰色的长条(位于深灰色的长条的后面)表示BN+ReLU层,带有浅灰色横条纹的长条(位于浅灰色的长条的后面)表示Dropout层,即BN+ReLU层位于线性层和Dropout层之间。第一神经网络单元中的每一个残差网络模块均分别包括:两层线性层、两层BN+ReLU层以及两层Dropout层。Dropout层会在第一神经网络单元的训练过程中,被开启。
图6中的第一神经网络单元的输入数据M在经过一线性层和一BN+ReLU层的处理后,被作为输入提供给第一个残差网络模块,第一个残差网络模块的输入在与第一个残差网络模块的输出合并后,被作为输入提供给第二个残差网络模块,第二个残差网络模块的输入在与第二个残差网络模块的输出合并后(例如,1024维的向量),被提供给一线性层进行处理,从而该线性层的输出即为第一神经网络单元的输出数据0,第一神经网络单元的输出数据0即为人体关键点深度值,例如,16个人体关键点深度值(即16维的向量)。第一神经网络单元输出的人体关键点深度值可以称为人体关键点初始深度值。
在一个可选示例中,第一神经网络单元输出的人体关键点深度值可以具体为表示人体关键点在三维空间中的实际深度的数值,例如,16个人体关键点深度值可以分别为:第0个人体关键点深度值是20、第1个人体关键点深度值是17、……、以及第15个人体关键点深度值是18。第一神经网络单元输出的人体关键点深度值也可以具体为人体关键点在三维空间中的深度序列号,例如,16个人体关键点深度值可以分别为:第0个人体关键点深度值是15、第1个人体关键点深度值是14、……、以及第15个人体关键点深度值是13。本申请不限制人体关键点深度值的具体表现形式。
在一个可选示例中,本申请中的第二神经网络单元可以包括:至少一个残差网络模块。同样的,一个残差网络模块可以包括:至少一层线性层、至少一层BN+ReLU层以及至少一层Dropout层。可以认为,在训练第二神经网络单元的过程中,第二神经网络单元所包含的残差网络模块中的Dropout层被开启/被添加,而在非训练过程中(例如,在测试过程中和在实际应用过程中),第二神经网络单元所包含的残差网络模块中的Dropout层被关闭/被删除。
在一个可选示例中,本申请中的第一神经网络单元和第二神经网络单元通常一起训练。在第二神经网络单元包括:至少两个残差网络模块的情况下,第二神经网络单元所包括的各残差网络模块采用串接的方式连接,且串接中的前一个残差网络模块的输入和输出,在合并后(即连接在一起),被作为后一个残差网络模块的输入。
在一个可选示例中,本申请中的第二神经网络单元可以被划分为至少两个阶段网络。每一阶段网络均可以包括:至少两个串接的残差网络模块,各阶段网络的网络结构通常基本相同。不同阶段网络串接,且前一个阶段网络的输出以及前一个阶段网络中的任一个残差网络模块(例如,前一个阶段网络中的第一个残差网络模块)的输入,在合并后,被提供给后一个阶段网络。例如,在前一个阶段网络的输出被作为后一个阶段网络的输入数据的情况下,前一个阶段网络中的第一个残差网络模块的输入在与后一个阶段网络中的第一个残差网络模块的输入合并后,被作为后一个阶段网络中的第一个残差网络模块的输入。再例如,在前一个阶段网络的输出被作为后一个阶段网络的输入数据的情况下,前一个阶段网络中的第二个残差网络模块的输入在与后一个阶段网络中的第一个残差网络模块的输入合并后,被作为后一个阶段网络中的第一个残差网络模块的输入。
在一个可选示例中,本申请的第二神经网络单元如图7所示。图7中的第二神经网络单元包括两个阶段网络,每一个阶段网络均包括:两个残差网络模块。图7中的C3D表示第二神经网络单元的输入数据。该输入数据即第一神经网络单元输出的人体关键点深度值与人体关键点的二维坐标S2D合并后所形成的人体关键点张量C3D。例如,本申请可以将图3所示的16个人体关键点的二维坐标(注:图3所示的人体关键点的二维坐标即为图5中左上角所示的人体关键点的二维坐标),与第一神经网络单元针对图4所示的人体关键点的深度前后关系矩阵进行处理而形成的16个人体关键点深度值0,进行合并处理(即连接处理),从而形成人体关键点张量C3D,并将该人体关键点张量C3D作为第二神经网络单元的输入数据。第二神经网络单元的输入数据C3D即为第二神经网络单元中的第一阶段网络的输入数据。
图7中的深灰色的长条表示线性层,浅灰色的长条(位于深灰色的长条的后面)表示BN+ReLU层,带有浅灰色横条纹的长条(位于浅灰色的长条的后面)表示Dropout层,即BN+ReLU层位于线性层和Dropout层之间。第二神经网络单元中的每一个残差网络模块均分别包括:两层线性层、两层BN+ReLU层以及两层Dropout层。Dropout层会在第二神经网络单元的训练过程中,被开启。
图7中的输入数据C3D在经过第二神经网络单元的第一阶段网络中的一线性层以及一BN+ReLU层的处理后,被作为输入提供给第一阶段网络中的第一个残差网络模块,第一阶段网络中的第一个残差网络模块的输入在与第一个残差网络模块的输出合并后,被作为输入提供给第一阶段网络中的第二个残差网络模块。第一阶段网络中的第二个残差网络模块的输入在与第一阶段网络中的第二个残差网络模块的输出合并后,被提供给第一阶段网络中的一线性层进行处理,从而该线性层的输出即为第二神经网络单元的第一阶段网络的输出数据S3D。第二神经网络单元中的第一阶段网络的输出数据S3D即为各人体关键点各自在三维空间中的坐标(x′,y′,z′),例如,S3D为16个人体关键点各自在三维空间中的坐标,即(x0′,y0′,z0′)、(x1′,y1′,z1′)、(x2′,y2′,z2′)、(x3′,y3′,z3′)……以及(x15′,y15′,z15′)。第二神经网络单元的第一阶段网络的输出数据S3D可以称为初始输出数据。
图7中的第二神经网络单元的第一阶段网络的输出数据S3D以及第二神经网络单元的第一阶段网络中的第一个残差网络模块的输入,分别被提供给第二阶段网络。具体的,第二神经网络单元的第一阶段网络的输出数据S3D在经过第二阶段网络中的一线性层以及一BN+ReLU层的处理后,与第二神经网络单元的第一阶段网络中的第一个残差网络模块的输入合并,合并后的数据被作为输入提供给第二阶段网络中的第一个残差网络模块,第二阶段网络中的第一个残差网络模块的输入在与第二阶段网络中的第一个残差网络模块的输出,合并后(即连接在一起),被作为输入提供给第二阶段网络中的第二个残差网络模块。第二阶段网络中的第二个残差网络模块的输入在与第二个残差网络模块的输出合并后,被提供给第二阶段网络中的一线性层进行处理,从而该线性层的输出即为第二神经网络单元的第二阶段网络的输出数据S3D。第二神经网络单元中的第二阶段网络的输出数据S3D即为各人体关键点各自在三维空间中的最终坐标(x″,y″,z″),例如,第二神经网络单元中的第二阶段网络的输出数据S3D为16个人体关键点各自在三维空间中的最终坐标(x0″,y0″,z0″)、(x1″,y1″,z1″)、(x2″,y2″,z2″)、(x3″,y3″,z3″)……以及(x15″,y15″,z15″)。第二神经网络单元的第二阶段网络的输出数据S3D可以称为最终输出数据。
在一个可选示例中,本申请的用于预测三维人体姿态的第一神经网络的一个具体结构如图8所示。图8所示的第一神经网络包括:DepthNet(即第一神经网络单元)以及PoseNet(即第二神经网络单元)。其中的DepthNet包括两个残差网络模块。其中的PoseNet包括两个阶段网络,且每个阶段网络都各自包括两个残差网络模块。上述获取到的人体关键点的深度前后关系M被作为输入,提供给DepthNet,DepthNet通过对人体关键点的深度前后关系进行深度值预测处理,输出人体关键点深度值0,本申请通过将人体关键点深度值0与人体关键点的二维坐标S2D进行合并(即连接),形成人体关键点张量C3D。人体关键点张量C3D被作为输入,提供给PoseNet。本申请中的PoseNet通过对人体关键点张量C3D进行三维人体姿态预测处理,输出最终的三维人体姿态预测结果S3D,如各人体关键点各自在三维空间中的坐标。
本申请的三维人体姿态预测技术方案具有较为广泛的应用。例如,在行为分析应用中,本申请的三维人体姿态预测技术可以为行为分析提供更为准确的基础数据,从而有利于提高行为分析的准确性。再例如,在健身应用中,本申请的三维人体姿态预测技术可以用于纠正健身者的错误动作,从而有利于提高健身效果。再例如,在舞蹈教学应用中,本申请的三维人体姿态预测技术可以对舞蹈者的动作进行逐帧分解,从而有利于提高舞蹈教学的效果。再例如,在体育比赛技术领域中,本申请的三维人体姿态预测技术可以用于对体育运动员的动作进行技术分析,从而有利于提高体育比赛的公正性。另外,本申请的三维人体姿态预测技术有利于降低对动作捕捉工具的依赖,可以针对普通摄像装置所摄取的图像,实现三维人体姿态预测,从而不仅有利于降低三维人体姿态预测的实现成本,而且有利于提高三维人体姿态预测的应用范围。
在一个可选示例中,本申请中的用于预测三维人体姿态的第一神经网络是利用多条数据样本训练而成的,且每一个数据样本通常均包含有:人体关键点样本信息、人体关键点的深度前后关系样本信息以及标注信息。人体关键点样本信息可以包括:人体关键点的二维坐标样本信息。另外,人体关键点样本信息还可以包括:人体关键点标识样本信息。人体关键点标识样本信息可以具体为:人体关键点编号。人体关键点的二维坐标样本信息可以具体为:人体关键点在图像样本中的二维坐标。在图像样本为原始图像样本中的局部图像的情况下,本申请中的人体关键点的二维坐标样本信息也可以为:人体关键点在原始图像样本中的二维坐标样本信息。数据样本中的标注信息用于对待训练的第一神经网络进行监督学习。数据样本中的标注信息具体包括的内容,通常与对待训练的第一神经网络进行监督学习的具体监督点相关。
图9为本申请训练神经网络的一个实施例的流程图。如图9所示,该实施例方法包括:步骤S900以及步骤S910。本申请中的步骤S900以及步骤S910具体为:
S900、将数据样本中的人体关键点样本信息以及人体关键点的深度前后关系样本信息,提供给待训练的第一神经网络,经由待训练的第一神经网络执行三维人体姿态预测处理。
S910、利用数据样本中的标注信息对待训练的第一神经网络进行监督学习。
在一个可选示例中,本申请可以从训练数据集中读取数据样本,并获取数据样本中的人体关键点样本信息(例如,人体关键点在图像样本中的二维坐标样本信息)以及人体关键点的深度前后关系样本信息(例如,人体关键点的深度前后关系矩阵样本),以便于提供给待训练的第一神经网络。本申请中的训练数据集中包括多条用于训练第一神经网络的数据样本,通常情况下,每一个数据样本均包括人体关键点样本信息、人体关键点的深度前后关系样本信息以及用于监督的标注信息。其中的标注信息可以包括:人体关键点深度标注值以及人体关键点在三维空间中的坐标标注信息(例如,人体关键点在真实世界三维空间中的坐标标注信息)。本申请可以按照随机读取方式或者按照数据样本排列次序顺序读取方式,一次从训练数据集中读取一条或者多条数据样本。
在一个可选示例中,本申请的标注信息中的人体关键点深度标注值通常为人体关键点在三维空间中的深度序列号,例如,16个人体关键点深度标注值可以分别为:第0个人体关键点深度标注值是15、第1个人体关键点深度标注值是14、……、以及第15个人体关键点深度标注值是13。当然,本申请也不排除人体关键点深度标注值具体为表示人体关键点在三维空间中的实际深度的数值的可能性,例如,16个人体关键点深度标注值可以分别为:第0个人体关键点深度标注值是21、第1个人体关键点深度标注值是16、……、以及第15个人体关键点深度标注值是17。本申请不限制人体关键点深度标注值的具体表现形式。
在一个可选示例中,在本申请中的待训练的第一神经网络包括:待训练的第一神经网络单元以及待训练的第二神经网络单元的情况下,本申请可以将数据样本中的人体关键点的深度前后关系样本信息提供给待训练的第一神经网络中的第一神经网络单元,经由第一神经网络单元执行人体关键点深度预测处理,从而可以获得针对人体关键点的深度前后关系样本信息的人体关键点深度值;然后,本申请将待训练的第一神经网络单元输出的人体关键点深度值与输入的数据样本中的人体关键点在待处理图像中的二维坐标样本信息合并(即连接在一起),形成人体关键点张量,并将人体关键点张量提供给待训练的第一神经网络中的第二神经网络单元,经由待训练的第二神经网络单元执行三维人体姿态预测处理,从而可以获得人体关键点在三维空间中的坐标。
在一个可选示例中,本申请对待训练的第一神经网络进行监督学习的监督点可以包括两个,其中一个是待训练的第一神经网络单元的输出,其中另一个是待训练的第二神经网络单元的输出。也就是说,本申请可以利用数据样本中的人体关键点深度标注值对待训练的第一神经网络单元输出的人体关键点深度值进行监督,同时,利用该数据样本中的人体关键点在三维空间中的坐标标注信息对待训练的第二神经网络单元输出的人体关键点在三维空间中的坐标进行监督,从而实现对待训练的第一神经网络进行监督学习。
在一个可选示例中,本申请可以以待训练的第一神经网络单元输出的人体关键点深度值与相应数据样本的人体关键点深度标注值之间的差异、以及待训练的第二神经网络单元输出的人体关键点在三维空间中的坐标与相应数据样本的人体关键点在三维空间中的坐标标注信息之间的差异为指导信息,以减小差异为目的,利用相应的损失函数,对待训练的第一神经网络单元和待训练的第二神经网络单元进行监督学习。
在一个可选示例中,在针对待训练的第一神经网络的训练达到预定迭代条件时,本次训练过程结束。本申请中的预定迭代条件可以包括:待训练的第一神经网络单元输出的人体关键点深度值与相应数据样本的人体关键点深度标注值之间的差异满足第一预定差异要求、以及待训练的第二神经网络单元输出的人体关键点在三维空间中的坐标与相应数据样本的人体关键点在三维空间中的坐标标注信息之间的差异满足第二预定差异要求。在两个差异分别满足第一预定差异要求和第二预定差异要求的情况下,本次对待训练的第一神经网络成功训练完成。本申请中的预定迭代条件也可以包括:对该待训练的第一神经网络进行训练,所使用的数据样本的数量达到预定数量要求等。在使用的数据样本的数量达到预定数量要求,然而,两个差异并未分别满足第一预定差异要求和第二预定差异要求的情况下,本次对待训练的第一神经网络并未训练成功。成功训练完成的第一神经网络可以用于对待处理图像进行三维人体姿态预测处理。
在一个可选示例中,本申请中的数据样本的生成方式可以为:针对训练数据集中的一数据样本(下述称为原数据样本,该原数据样本通常对应一图像样本),基于选取(例如,全空间随机选取)虚拟摄像装置的方式,形成新的数据样本。例如,针对一原数据样本,通过全空间随机选取虚拟摄像装置,一方面,原数据样本中的人体关键点在三维空间中的坐标会以不同于原投影角度的另一种方式投影角度投影在二维平面中,从而可以形成新的图像样本以及新的图像样本的二维坐标样本信息;另一方面,原数据样本中的人体关键点的深度前后关系样本信息以及人体关键点深度标注值会随之发生变化,从而形成新的数据样本的人体关键点的深度前后关系样本信息以及人体关键点深度标注值。本申请中的三维空间的坐标系可以以人体关键点中的盆骨关键点为坐标原点的三维坐标系。当然,三维空间的坐标系的坐标原点也可以设置于其他人体关键点处或者设置于除人体关键点之外的其他地方。
本申请通过选取(例如,全空间随机选取)虚拟摄像装置,会使原数据样中的人体关键点在三维空间中的坐标标注信息发生变化,从而形成新的数据样本的人体关键点在三维空间中的坐标标注信息。本申请可以根据新的二维坐标样本信息、新的人体关键点的深度前后关系样本信息、新的人体关键点深度标注值以及新的人体关键点在三维空间中的坐标标注信息,形成新的数据样本。
本申请通过采用选取(如全空间随机选取)虚拟摄像装置的方式产生新的数据样本,有利于增广数据样本,从而有利于第一神经网络的训练。
在一个可选示例中,本申请的数据样本中的人体关键点深度标注值,可以是利用该数据样本中的人体关键点在三维空间中的坐标标注信息而形成的。例如,本申请可以针对数据样本中的各人体关键点在三维空间中的坐标标注信息中的z坐标标注信息,进行排序,从而获得各人体关键点的排序编号,本申请可以将各人体关键点的排序编号作为各人体关键点深度标注值。再例如,本申请可以针对数据样本中的各人体关键点在三维空间中的坐标标注信息中的z坐标标注信息,进行归一化处理,从而获得各人体关键点的归一化处理后的数值,本申请可以将各人体关键点的归一化处理后的数值作为各人体关键点深度标注值。本申请不限制形成数据样本中的人体关键点深度标注值的具体实现方式。
在一个可选示例中,本申请的至少一个数据样本(例如,所有数据样本)中的人体关键点在三维空间中的坐标标注信息是经过了基于标准差的标准化处理(也可以称为标准差标准化处理)的坐标标注信息。例如,首先,计算训练数据集中的所有数据样本中的人体关键点在三维空间中的坐标标注信息的均值以及方差,其次,针对每一个数据样本而言,分别计算数据样本中的人体关键点在三维空间中的坐标标注信息与上述均值的差值,再计算该差值与方差的商,从而形成经过了基于标准差的标准化处理的坐标标注信息。本申请通过对数据样本中的人体关键点在三维空间中的坐标标注信息进行基于标准差的标准化处理,可以使数据样本中的人体关键点在三维空间中的坐标标注信息呈现标准高斯分布,从而有利于提高成功训练后的第一神经网络的三维人体姿态预测性能的准确性。
图10为本申请的三维人体姿态预测装置一个实施例的结构示意图。图10所示的装置主要包括:获取信息模块1000和三维人体姿态预测模块1010。可选的,该预测装置还可以包括:样本预测模块1100、监督模块1110、标注模块1120、标准化处理模块1130、数据样本生成模块1140。
获取信息模块1000用于获取待处理图像中的人体关键点信息以及人体关键点的深度前后关系信息。
三维人体姿态预测模块1010包含有第一神经网络。三维人体姿态预测模块1010用于将人体关键点信息和人体关键点的深度前后关系信息提供给第一神经网络,经由第一神经网络执行三维人体姿态预测处理,以获取三维人体姿态预测结果。
在一个可选示例中,本申请中的人体关键点信息包括:人体关键点在待处理图像中的二维坐标。本申请中的人体关键点的深度前后关系包括:表征一个人体关键点位于另一个人体关键点之前或之后的信息。可选的,本申请中的人体关键点的深度前后关系可以为人体关键点的深度前后关系矩阵;其中,矩阵的行数和列数为人体关键点的数量,矩阵的第n行表示第n个人体关键点,矩阵的第m列表示第m个人体关键点,矩阵第n行第m列的数值表示第n个人体关键点在第m个人体关键点之前或之后的概率值。
在一个可选示例中,本申请中的获取信息模块1000包括:获取前后关系模块,用于将待处理图像提供给第二神经网络,经由第二神经网络执行人体关键点的深度前后关系预测处理,以获取人体关键点的深度前后关系。
在一个可选示例中,获取前后关系模块可以将待处理图像以及待处理图像的至少两个人体关键点的特征图提供给第二神经网络。本申请中的人体关键点的特征图可以包括:人体关键点的热点图。
在一个可选示例中,本申请的第二神经网络可以包括:第一单元、第二单元以及第三单元。其中的第一单元用于根据待处理图像以及人体关键点的特征图,形成至少两个人体关键点的特征值。其中的第二单元用于获取特征值之间的差值。其中的第三单元用于基于差值形成人体关键点的深度前后关系。
在一个可选示例中,第一单元可以具体为残差网络单元。第二单元可以为向量差值计算单元。该向量差值计算单元用于针对多个人体关键点的特征值中的两两特征值,执行特征值差值计算,以获得两两特征值之间的差值。第三单元可以为前后关系形成单元。该前后关系形成单元用于根据至少一个差值,形成人体关键点的深度前后关系。
在一个可选示例中,本申请中的第一神经网络包括:第一神经网络单元和第二神经网络单元。其中的第一神经网络单元用于根据人体关键点的深度前后关系信息预测人体关键点深度值。其中的第二神经网络单元用于根据人体关键点深度值和人体关键点信息预测三维人体姿态。在第一神经网络包括:第一神经网络单元和第二神经网络单元的情况下,三维人体姿态预测模块1010进一步用于将人体关键点深度值与人体关键点在待处理图像中的二维坐标,作为人体关键点张量,提供给第二神经网络单元,经由第二神经网络单元执行三维人体姿态预测处理。
在一个可选示例中,本申请中的第一神经网络单元包括:至少一个残差网络模块。在第一神经网络单元包括:至少两个残差网络模块的情况下,第一神经网络单元所包括的各残差网络模块串接,且串接中的前一个残差网络模块的输入和输出合并后,作为后一个残差网络模块的输入。
在一个可选示例中,本申请中的第二神经网络单元包括:至少一个残差网络模块。在第二神经网络单元包括:至少两个残差网络模块的情况下,第二神经网络单元所包括的各残差网络模块串接,且串接中的前一个残差网络模块的输入和输出合并后,作为后一个残差网络模块的输入。
在一个可选示例中,本申请中的第二神经网络单元包括:至少两个阶段网络,每一阶段网络均包括:至少两个串接的残差网络模块,前一阶段网络的输出和前一阶段网络中的一个残差网络模块的输入,均被提供给后一阶段网络。
样本预测模块1100和监督模块1110所执行的具体操作,可以参见上述方法实施方式中针对图1中的各步骤的描述。而样本预测模块1100、监督模块1110、标注模块1120、标准化处理模块1130以及数据样本生成模块1140所执行的具体操作,可以参见下述装置实施方式中针对图11的描述。在此均不再详细说明。
图11为本申请的神经网络的训练装置一个实施例的结构示意图。图11所示的装置主要包括:样本预测模块1100和监督模块1110。可选的,该训练装置还可以包括:标注模块1120、标准化处理模块1130以及数据样本生成模块1140。
样本预测模块1100包含有待训练的第一神经网络。样本预测模块1100用于将数据样本中的人体关键点样本信息以及人体关键点的深度前后关系样本信息,提供给待训练的第一神经网络,经由待训练的第一神经网络执行三维人体姿态预测处理;用于训练第一神经网络的数据样本包括:人体关键点样本信息、人体关键点的深度前后关系样本信息以及用于监督的标注信息。
监督模块1110用于利用数据样本中的标注信息对待训练的第一神经网络进行监督学习。
在一个可选示例中,本申请中的样本预测模块1100还包括:第一子模块和第二子模块。其中的第一子模块用于将数据样本中的人体关键点的深度前后关系样本信息提供给待训练的第一神经网络中的第一神经网络单元,经由第一神经网络单元执行人体关键点深度预测处理。其中的第二子模块用于将第一神经网络单元输出的人体关键点深度值与数据样本中的人体关键点在待处理图像中的二维坐标样本信息,作为人体关键点张量,提供给待训练的第一神经网络中的第二神经网络单元,经由所述第二神经网络单元执行三维人体姿态预测处理。
在一个可选示例中,本申请中的监督模块1110包括:第一监督单元和第二监督单元。其中的第一监督单元用于利用数据样本中的人体关键点深度标注值对第一神经网络单元输出的人体关键点深度值进行监督。其中的第二监督单元用于利用数据样本中的人体关键点在三维空间中的坐标标注信息对第二神经网络单元输出的人体关键点在三维空间中的坐标进行监督。
标注模块1120用于利用数据样本中的人体关键点在三维空间中的坐标标注信息,形成数据样本中的人体关键点深度标注值。
标准化处理模块1130用于对至少一个数据样本中的人体关键点在三维空间中的坐标标注信息进行基于标准差的标准化处理。
数据样本生成模块1140用于根据训练数据集中的数据样本,基于随机选取虚拟摄像装置的方式,获得新的数据样本;其中,新的数据样本被添加在训练数据集中。
样本预测模块1100、监督模块1110、标注模块1120、标准化处理模块1130以及数据样本生成模块1140所执行的具体操作,可以参见上述方法实施方式中针对图9中的各步骤的描述。在此不再重复说明。
在一个可选示例中,本申请中的训练装置还可以包括:第一模块、第二模块、第三模块、第四模块以及第五模块。第一模块、第二模块、第三模块、第四模块以及第五模块用于对待训练的第二神经网络进行训练。
第一模块用于获取图像样本。
第二模块包含有待训练的第二神经网络。第二模块用于将图像样本提供给待训练的第二神经网络,经由待训练的第二神经网络执行人体关键点的深度前后关系预测处理,以获取人体关键点的深度前后关系。
第三模块用于利用图像样本的人体关键点的深度前后关系标注信息对人体关键点的深度前后关系进行监督,以使待训练的第二神经网络进行监督学习。
在一个可选示例中,第一模块可以获取图像样本以及图像样本的至少两个人体关键点的特征图。在该情况下,第二模块可以将图像样本以及人体关键点的特征图提供给待训练的第二神经网络。
第四模块用于利用图像样本的人体关键点在三维空间中的坐标标注信息,形成图像样本的人体关键点的深度前后关系标注信息。
第五模块用于提供人工标注界面,根据基于人工标注界面接收的信息,形成图像样本的人体关键点的深度前后关系标注信息。
在一个可选示例中,本申请中的图像样本的人体关键点的深度前后关系标注信息可以包括:表征一个人体关键点位于另一个人体关键点之前或之后的标注信息。可选的,表征一个人体关键点位于另一个人体关键点之前或之后的标注信息可以包括:表征一个人体关键点位于另一个人体关键点之前或之后的概率标注值。可选的,人体关键点的深度前后关系标注信息可以包括:人体关键点的深度前后关系标注矩阵。其中的标注矩阵的行数和列数为人体关键点的数量,且标注矩阵的第n行表示第n个人体关键点,标注矩阵的第m列表示第m个人体关键点,标注矩阵第n行第m列的标注值表示第n个人体关键点在第m个人体关键点之前或之后的概率标注值。
在一个可选示例中,本申请中的概率标注值可以为:第一标注值、第二标注值或者第三标注值。第一标注值表示一个人体关键点在三维空间中的深度坐标标注信息大于,另一个人体关键点在三维空间中的深度坐标标注信息与预定值之和。第二标注值表示一个人体关键点在三维空间中的深度坐标标注信息小于,另一个人体关键点在三维空间中的深度坐标标注信息与预定值之差。第三标注值,表示一个人体关键点在三维空间中的深度坐标标注信息与另一个人体关键点在三维空间中的深度坐标标注信息之差的绝对值,不超过预定值。
示例性设备
图12示出了适于实现本申请的示例性设备1200,设备1200可以是汽车中配置的控制系统/电子系统、移动终端(例如,智能移动电话等)、个人计算机(PC,例如,台式计算机或者笔记型计算机等)、平板电脑以及服务器等。图12中,设备1200包括一个或者多个处理器、通信部等,所述一个或者多个处理器可以为:一个或者多个中央处理单元(CPU)1201,和/或,一个或者多个利用第一神经网络进行三维人体姿态预测的图像处理器(GPU)1213等,处理器可以根据存储在只读存储器(ROM)1202中的可执行指令或者从存储部分1208加载到随机访问存储器(RAM)1203中的可执行指令而执行各种适当的动作和处理。通信部1212可以包括但不限于网卡,所述网卡可以包括但不限于IB(Infiniband)网卡。处理器可与只读存储器1202和/或随机访问存储器1203中通信以执行可执行指令,通过总线1204与通信部1212相连、并经通信部1212与其他目标设备通信,从而完成本申请中的相应步骤。
上述各指令所执行的操作可以参见上述方法实施例中的相关描述,在此不再详细说明。此外,在RAM 1203中,还可以存储有装置操作所需的各种程序以及数据。CPU1201、ROM1202以及RAM1203通过总线1204彼此相连。
在有RAM1203的情况下,ROM1202为可选模块。RAM1203存储可执行指令,或在运行时向ROM1202中写入可执行指令,可执行指令使中央处理单元1201执行上述物体分割方法所包括的步骤。输入/输出(I/O)接口1205也连接至总线1204。通信部1212可以集成设置,也可以设置为具有多个子模块(例如,多个IB网卡),并分别与总线连接。
以下部件连接至I/O接口1205:包括键盘、鼠标等的输入部分1206;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分1207;包括硬盘等的存储部分1208;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分1209。通信部分1209经由诸如因特网的网络执行通信处理。驱动器1210也根据需要连接至I/O接口1205。可拆卸介质1211,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器1210上,以便于从其上读出的计算机程序根据需要被安装在存储部分1208中。
需要特别说明的是,如图12所示的架构仅为一种可选实现方式,在具体实践过程中,可根据实际需要对上述图12的部件数量和类型进行选择、删减、增加或替换;在不同功能部件设置上,也可采用分离设置或集成设置等实现方式,例如,GPU和CPU可分离设置,再如理,可将GPU集成在CPU上,通信部可分离设置,也可集成设置在CPU或GPU上等。这些可替换的实施方式均落入本申请的保护范围。
特别地,根据本申请的实施方式,下文参考流程图描述的过程可以被实现为计算机软件程序,例如,本申请实施方式包括一种计算机程序产品,其包含有形地包含在机器可读介质上的计算机程序,计算机程序包含用于执行流程图所示的步骤的程序代码,程序代码可包括对应执行本申请提供的方法中的步骤对应的指令。
在这样的实施方式中,该计算机程序可以通过通信部分1209从网络上被下载及安装,和/或从可拆卸介质1211被安装。在该计算机程序被中央处理单元(CPU)1201执行时,执行本申请中记载的实现上述相应步骤的指令。
在一个或多个可选实施方式中,本公开实施例还提供了一种计算机程序产品,用于存储计算机可读指令,所述指令被执行时使得计算机执行上述任意实施例中所述的三维人体姿态预测方法或者神经网络的训练方法或者图像处理方法。
该计算机程序产品可以具体通过硬件、软件或其结合的方式实现。在一个可选例子中,所述计算机程序产品具体体现为计算机存储介质,在另一个可选例子中,所述计算机程序产品具体体现为软件产品,例如软件开发包(Software Development Kit,SDK)等等。
在一个或多个可选实施方式中,本公开实施例还提供了另一种三维人体姿态预测方法和神经网络的训练方法及其对应的装置和电子设备、计算机存储介质、计算机程序以及计算机程序产品,其中的方法包括:第一装置向第二装置发送三维人体姿态预测指示或者训练神经网络指示或者图像处理指示,该指示使得第二装置执行上述任一可能的实施例中的三维人体姿态预测方法或者训练神经网络方法或者图像处理方法;第一装置接收第二装置发送的三维人体姿态预测结果或者神经网络训练结果或者图像处理结果。
在一些实施例中,该三维人体姿态预测指示或者训练神经网络指示可以具体为调用指令,第一装置可以通过调用的方式指示第二装置执行三维人体姿态预测操作或者训练神经网络操作或者图像处理操作,相应地,响应于接收到调用指令,第二装置可以执行上述三维人体姿态预测方法或者训练神经网络的方法或者图像处理方法中的任意实施例中的步骤和/或流程。
应理解,本公开实施例中的“第一”、“第二”等术语仅仅是为了区分,而不应理解成对本公开实施例的限定。还应理解,在本公开中,“多个”可以指两个或两个以上,“至少一个”可以指一个、两个或两个以上。还应理解,对于本公开中提及的任一部件、数据或结构,在没有明确限定或者在前后文给出相反启示的情况下,一般可以理解为一个或多个。还应理解,本公开对各个实施例的描述着重强调各个实施例之间的不同之处,其相同或相似之处可以相互参考,为了简洁,不再一一赘述。
可能以许多方式来实现本申请的方法和装置、电子设备以及计算机可读存储介质。例如,可通过软件、硬件、固件或者软件、硬件、固件的任何组合来实现本申请的方法和装置、电子设备以及计算机可读存储介质。用于方法的步骤的上述顺序仅是为了进行说明,本申请的方法的步骤不限于以上具体描述的顺序,除非以其它方式特别说明。此外,在一些实施方式中,还可将本申请实施为记录在记录介质中的程序,这些程序包括用于实现根据本申请的方法的机器可读指令。因而,本申请还覆盖存储用于执行根据本申请的方法的程序的记录介质。
本申请的描述,是为了示例和描述起见而给出的,而并不是无遗漏的或者将本申请限于所公开的形式。很多修改和变化对于本领域的普通技术人员而言,是显然的。选择和描述实施方式是为了更好说明本申请的原理以及实际应用,并且使本领域的普通技术人员能够理解本申请实施例可以从而设计适于特定用途的带有各种修改的各种实施方式。
Claims (30)
1.一种三维人体姿态预测方法,其特征在于,包括:
获取待处理图像中的人体关键点信息以及人体关键点的深度前后关系;所述人体关键点的深度前后关系由用于对人体关键点进行深度前后关系处理的第二神经网络预测得到;
将所述人体关键点信息和人体关键点的深度前后关系提供给第一神经网络,经由所述第一神经网络执行三维人体姿态预测处理,以获取三维人体姿态预测结果;
其中,所述执行三维人体姿态预测处理包括:
根据人体关键点的深度前后关系信息预测人体关键点深度值;
根据人体关键点深度值和人体关键点信息预测三维人体姿态;
其中,所述人体关键点的深度前后关系用于表示人体关键点之间的深度位置相对关系,所述人体关键点的深度前后关系包括:多个人体关键点中任意两个人体关键点中用于表征其中一个人体关键点位于其中另一个人体关键点之前或之后的信息。
2.根据权利要求1所述的方法,其特征在于,所述人体关键点信息包括:人体关键点在待处理图像中的二维坐标。
3.根据权利要求1或2所述的方法,其特征在于,所述人体关键点的深度前后关系包括:
人体关键点的深度前后关系矩阵;
其中,所述矩阵的行数和列数为人体关键点的数量,所述矩阵的第n行表示第n个人体关键点,所述矩阵的第m列表示第m个人体关键点,所述矩阵第n行第m列的数值表示第n个人体关键点在第m个人体关键点之前或之后的概率值。
4.根据权利要求1或2所述的方法,其特征在于,所述人体关键点的深度前后关系的获取过程包括:
将所述待处理图像提供给第二神经网络,经由所述第二神经网络执行人体关键点的深度前后关系预测处理,以获取人体关键点的深度前后关系。
5.根据权利要求1或2所述的方法,其特征在于,所述三维人体姿态预测结果包括:人体关键点在三维空间中的坐标。
6.根据权利要求1或2所述的方法,其特征在于,所述第一神经网络是利用多条包含有人体关键点样本信息以及人体关键点的深度前后关系样本信息的数据样本训练而成的。
7.一种神经网络的训练方法,其特征在于,用于训练神经网络的数据样本包括:人体关键点样本信息、人体关键点的深度前后关系样本信息以及用于监督的标注信息,所述人体关键点的深度前后关系样本信息由用于对人体关键点进行深度前后关系处理的第二神经网络预测得到,所述人体关键点的深度前后关系样本信息用于表示人体关键点之间的深度位置相对关系,所述人体关键点的深度前后关系样本信息包括:多个人体关键点中任意两个人体关键点中用于表征其中一个人体关键点位于其中另一个人体关键点之前或之后的信息,所述训练方法包括:
将数据样本中的人体关键点样本信息以及人体关键点的深度前后关系样本信息,提供给待训练的第一神经网络,经由所述待训练的第一神经网络执行三维人体姿态预测处理;
所述将数据样本中的人体关键点样本信息以及人体关键点的深度前后关系样本信息,提供给待训练的第一神经网络,经由所述待训练的第一神经网络执行三维人体姿态预测处理包括:
将数据样本中的人体关键点的深度前后关系样本信息提供给待训练的第一神经网络中的第一神经网络单元,经由所述第一神经网络单元执行人体关键点深度预测处理后,经由第一神经网络中的第二神经网络单元执行三维人体姿态预测处理;
利用所述数据样本中的标注信息对所述待训练的第一神经网络进行监督学习。
8.根据权利要求7所述的方法,其特征在于,所述经由所述第一神经网络单元执行人体关键点深度预测处理后,经由第一神经网络中的第二神经网络单元执行三维人体姿态预测处理包括:
将第一神经网络单元输出的人体关键点深度值与数据样本中的人体关键点在待处理图像中的二维坐标样本信息,作为人体关键点张量,提供给待训练的第一神经网络中的第二神经网络单元,经由所述第二神经网络单元执行三维人体姿态预测处理。
9.根据权利要求8所述的方法,其特征在于,所述利用所述数据样本中的标注信息对所述待训练的第一神经网络进行监督学习包括:
利用所述数据样本中的人体关键点深度标注值对第一神经网络单元输出的人体关键点深度值进行监督,并利用所述数据样本中的人体关键点在三维空间中的坐标标注信息对第二神经网络单元输出的人体关键点在三维空间中的坐标进行监督。
10.根据权利要求9所述的方法,其特征在于,所述数据样本中的人体关键点深度标注值,是利用数据样本中的人体关键点在三维空间中的坐标标注信息形成的。
11.根据权利要求9或10所述的方法,其特征在于,至少一个所述数据样本中的人体关键点在三维空间中的坐标标注信息是经过了基于标准差的标准化处理的坐标标注信息。
12.根据权利要求7至10中任一项所述的方法,其特征在于,在训练所述第一神经网络之前,所述方法还包括:根据训练数据集中的数据样本,基于随机选取虚拟摄像装置的方式,获得新的数据样本;
所述新的数据样本被添加在所述训练数据集中。
13.一种三维人体姿态预测装置,其特征在于,包括:
获取信息模块,用于获取待处理图像中的人体关键点信息以及人体关键点的深度前后关系信息;所述人体关键点的深度前后关系由用于对人体关键点进行深度前后关系处理的第二神经网络预测得到;
包含有第一神经网络的三维人体姿态预测模块,用于将所述人体关键点信息和人体关键点的深度前后关系信息提供给第一神经网络,经由所述第一神经网络执行三维人体姿态预测处理,以获取三维人体姿态预测结果;
其中,所述第一神经网络包括:
第一神经网络单元,用于根据人体关键点的深度前后关系信息预测人体关键点深度值;
第二神经网络单元,用于根据人体关键点深度值和人体关键点信息预测三维人体姿态;
其中,所述人体关键点的深度前后关系用于表示人体关键点之间的深度位置相对关系,所述人体关键点的深度前后关系包括:多个人体关键点中任意两个人体关键点中用于表征其中一个人体关键点位于其中另一个人体关键点之前或之后的信息。
14.根据权利要求13所述的装置,其特征在于,所述人体关键点信息包括:人体关键点在待处理图像中的二维坐标。
15.根据权利要求13或14所述的装置,其特征在于,所述人体关键点的深度前后关系包括:
人体关键点的深度前后关系矩阵;
其中,所述矩阵的行数和列数为人体关键点的数量,所述矩阵的第n行表示第n个人体关键点,所述矩阵的第m列表示第m个人体关键点,所述矩阵第n行第m列的数值表示第n个人体关键点在第m个人体关键点之前或之后的概率值。
16.根据权利要求13或14所述的装置,其特征在于,所述获取信息模块包括:
获取前后关系模块,用于将所述待处理图像提供给第二神经网络,经由所述第二神经网络执行人体关键点的深度前后关系预测处理,以获取人体关键点的深度前后关系。
17.根据权利要求16所述的装置,其特征在于,所述三维人体姿态预测模块进一步用于:
将所述人体关键点深度值与人体关键点在待处理图像中的二维坐标,作为人体关键点张量,提供给第二神经网络单元,经由所述第二神经网络单元执行三维人体姿态预测处理。
18.根据权利要求16所述的装置,其特征在于,所述第一神经网络单元包括:至少一个残差网络模块。
19.根据权利要求18所述的装置,其特征在于,在所述第一神经网络单元包括:至少两个残差网络模块的情况下,所述第一神经网络单元所包括的各残差网络模块串接,且串接中的前一个残差网络模块的输入和输出合并后,作为后一个残差网络模块的输入。
20.根据权利要求16所述的装置,其特征在于,所述第二神经网络单元包括:至少一个残差网络模块。
21.根据权利要求20所述的装置,其特征在于,在所述第二神经网络单元包括:至少两个残差网络模块的情况下,所述第二神经网络单元所包括的各残差网络模块串接,且串接中的前一个残差网络模块的输入和输出合并后,作为后一个残差网络模块的输入。
22.根据权利要求20所述的装置,其特征在于,所述第二神经网络单元包括:
至少两个阶段网络,每一阶段网络均包括:至少两个串接的残差网络模块,前一阶段网络的输出和前一阶段网络中的一个残差网络模块的输入,均被提供给后一阶段网络。
23.一种神经网络的训练装置,其特征在于,用于训练神经网络的数据样本包括:人体关键点样本信息、人体关键点的深度前后关系样本信息以及用于监督的标注信息,所述人体关键点的深度前后关系样本信息由用于对人体关键点进行深度前后关系处理的第二神经网络预测得到,所述人体关键点的深度前后关系样本信息用于表示人体关键点之间的深度位置相对关系,所述人体关键点的深度前后关系样本信息包括:多个人体关键点中任意两个人体关键点中用于表征其中一个人体关键点位于其中另一个人体关键点之前或之后的信息,所述装置包括:
包含有待训练的第一神经网络的样本预测模块,用于将数据样本中的人体关键点样本信息以及人体关键点的深度前后关系样本信息,提供给待训练的第一神经网络,经由所述待训练的第一神经网络执行三维人体姿态预测处理;
所述样本预测模块包括:
第一子模块,用于将数据样本中的人体关键点的深度前后关系样本信息提供给待训练的第一神经网络中的第一神经网络单元,经由所述第一神经网络单元执行人体关键点深度预测处理,并将预测的人体关键点深度值提供给第二子模块;
第二子模块,用于执行三维人体姿态预测处理;
监督模块,用于利用所述数据样本中的标注信息对所述待训练的第一神经网络进行监督学习。
24.根据权利要求23所述的装置,其特征在于,所述第二子模块具体用于:
用于将第一神经网络单元输出的人体关键点深度值与数据样本中的人体关键点在待处理图像中的二维坐标样本信息,作为人体关键点张量,提供给待训练的第一神经网络中的第二神经网络单元,经由所述第二神经网络单元执行三维人体姿态预测处理。
25.根据权利要求24所述的装置,其特征在于,所述监督模块进一步包括:
第一监督单元,用于利用所述数据样本中的人体关键点深度标注值对第一神经网络单元输出的人体关键点深度值进行监督;
第二监督单元,用于利用所述数据样本中的人体关键点在三维空间中的坐标标注信息对第二神经网络单元输出的人体关键点在三维空间中的坐标进行监督。
26.根据权利要求24所述的装置,其特征在于,所述装置还包括:
标注模块,用于利用数据样本中的人体关键点在三维空间中的坐标标注信息,形成数据样本中的人体关键点深度标注值。
27.根据权利要求24至26中任一项所述的装置,其特征在于,所述装置还包括:
标准化处理模块,用于对至少一个所述数据样本中的人体关键点在三维空间中的坐标标注信息进行基于标准差的标准化处理。
28.根据权利要求23至26中任一项所述的装置,其特征在于,所述装置还包括:
数据样本生成模块,用于根据训练数据集中的数据样本,基于随机选取虚拟摄像装置的方式,获得新的数据样本;
其中,所述新的数据样本被添加在所述训练数据集中。
29.一种电子设备,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述存储器中存储的计算机程序,且所述计算机程序被执行时,实现上述权利要求1-12中任一项所述的方法。
30.一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时,实现上述权利要求1-12中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810395266.9A CN108960036B (zh) | 2018-04-27 | 2018-04-27 | 三维人体姿态预测方法、装置、介质及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810395266.9A CN108960036B (zh) | 2018-04-27 | 2018-04-27 | 三维人体姿态预测方法、装置、介质及设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108960036A CN108960036A (zh) | 2018-12-07 |
CN108960036B true CN108960036B (zh) | 2021-11-09 |
Family
ID=64499553
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810395266.9A Active CN108960036B (zh) | 2018-04-27 | 2018-04-27 | 三维人体姿态预测方法、装置、介质及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108960036B (zh) |
Families Citing this family (25)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109840500B (zh) * | 2019-01-31 | 2021-07-02 | 深圳市商汤科技有限公司 | 一种三维人体姿态信息检测方法及装置 |
CN109785322B (zh) * | 2019-01-31 | 2021-07-02 | 北京市商汤科技开发有限公司 | 单眼人体姿态估计网络训练方法、图像处理方法和装置 |
CN109859296B (zh) * | 2019-02-01 | 2022-11-29 | 腾讯科技(深圳)有限公司 | Smpl参数预测模型的训练方法、服务器及存储介质 |
CN110211670B (zh) * | 2019-05-14 | 2022-06-03 | 广州虎牙信息科技有限公司 | 指标预测方法、装置、电子设备及存储介质 |
CN110321795B (zh) * | 2019-05-24 | 2024-02-23 | 平安科技(深圳)有限公司 | 用户姿态识别方法、装置、计算机装置及计算机存储介质 |
CN110348524B (zh) * | 2019-07-15 | 2022-03-04 | 深圳市商汤科技有限公司 | 一种人体关键点检测方法及装置、电子设备和存储介质 |
WO2021098543A1 (zh) * | 2019-11-20 | 2021-05-27 | Oppo广东移动通信有限公司 | 一种姿势识别方法及装置、存储介质 |
CN111079570B (zh) * | 2019-11-29 | 2024-01-26 | 北京奇艺世纪科技有限公司 | 一种人体关键点识别方法、装置及电子设备 |
CN111144547A (zh) * | 2019-12-11 | 2020-05-12 | 支付宝(杭州)信息技术有限公司 | 基于可信执行环境的神经网络模型预测方法及装置 |
CN111046825A (zh) * | 2019-12-19 | 2020-04-21 | 杭州晨鹰军泰科技有限公司 | 人体姿态识别方法、装置、系统及计算机可读存储介质 |
CN111179419B (zh) * | 2019-12-31 | 2023-09-05 | 北京奇艺世纪科技有限公司 | 三维关键点预测及深度学习模型训练方法、装置及设备 |
CN111291729B (zh) * | 2020-03-26 | 2023-09-01 | 北京百度网讯科技有限公司 | 一种人体姿态估计方法、装置、设备及存储介质 |
CN111523485A (zh) * | 2020-04-24 | 2020-08-11 | 浙江商汤科技开发有限公司 | 位姿识别方法及装置、电子设备和存储介质 |
CN111582204A (zh) * | 2020-05-13 | 2020-08-25 | 北京市商汤科技开发有限公司 | 姿态检测方法、装置、计算机设备及存储介质 |
CN111639574B (zh) * | 2020-05-22 | 2023-09-26 | 广东小天才科技有限公司 | 坐姿纠正方法及电子设备、存储介质 |
CN111666917A (zh) * | 2020-06-19 | 2020-09-15 | 北京市商汤科技开发有限公司 | 姿态检测及视频处理方法、装置、电子设备和存储介质 |
EP4172938A4 (en) * | 2020-06-26 | 2024-04-03 | Intel Corp | DEVICE AND METHOD FOR THREE-DIMENSIONAL POSE ESTIMATION |
US11715213B2 (en) | 2020-06-26 | 2023-08-01 | Intel Corporation | Apparatus and methods for determining multi-subject performance metrics in a three-dimensional space |
US11508080B2 (en) | 2020-09-15 | 2022-11-22 | Toyota Research Institute, Inc. | Systems and methods for generic visual odometry using learned features via neural camera models |
US11321862B2 (en) | 2020-09-15 | 2022-05-03 | Toyota Research Institute, Inc. | Systems and methods for multi-camera modeling with neural camera networks |
US11494927B2 (en) | 2020-09-15 | 2022-11-08 | Toyota Research Institute, Inc. | Systems and methods for self-supervised depth estimation |
US11615544B2 (en) | 2020-09-15 | 2023-03-28 | Toyota Research Institute, Inc. | Systems and methods for end-to-end map building from a video sequence using neural camera models |
CN112270711B (zh) * | 2020-11-17 | 2023-08-04 | 北京百度网讯科技有限公司 | 模型训练以及姿态预测方法、装置、设备以及存储介质 |
CN112528831B (zh) * | 2020-12-07 | 2023-11-24 | 深圳市优必选科技股份有限公司 | 多目标姿态估计方法、多目标姿态估计装置及终端设备 |
CN114283228A (zh) * | 2021-11-16 | 2022-04-05 | 清华大学 | 一种基于单目彩色相机的虚拟人物驱动方法及系统 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107622257A (zh) * | 2017-10-13 | 2018-01-23 | 深圳市未来媒体技术研究院 | 一种神经网络训练方法及三维手势姿态估计方法 |
-
2018
- 2018-04-27 CN CN201810395266.9A patent/CN108960036B/zh active Active
Non-Patent Citations (1)
Title |
---|
Monocular 3D Human Pose Estimation by Predicting Depth on Joints;Bruce Xiaohan Nie等;《2017 IEEE International Conference on Computer Vision (ICCV)》;20171225;第3447-3455页 * |
Also Published As
Publication number | Publication date |
---|---|
CN108960036A (zh) | 2018-12-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108960036B (zh) | 三维人体姿态预测方法、装置、介质及设备 | |
CN108460338B (zh) | 人体姿态估计方法和装置、电子设备、存储介质、程序 | |
CN111328396B (zh) | 用于图像中的对象的姿态估计和模型检索 | |
CN108427927B (zh) | 目标再识别方法和装置、电子设备、程序和存储介质 | |
CN108229478B (zh) | 图像语义分割及训练方法和装置、电子设备、存储介质和程序 | |
US10121099B2 (en) | Information processing method and system | |
WO2018121737A1 (zh) | 关键点预测、网络训练及图像处理方法和装置、电子设备 | |
US11380017B2 (en) | Dual-view angle image calibration method and apparatus, storage medium and electronic device | |
CN109325972B (zh) | 激光雷达稀疏深度图的处理方法、装置、设备及介质 | |
CN108229296B (zh) | 人脸皮肤属性识别方法和装置、电子设备、存储介质 | |
US9349076B1 (en) | Template-based target object detection in an image | |
CN111709409A (zh) | 人脸活体检测方法、装置、设备及介质 | |
US20230070008A1 (en) | Generating three-dimensional object models from two-dimensional images | |
US11501110B2 (en) | Descriptor learning method for the detection and location of objects in a video | |
CN111680678A (zh) | 目标区域识别方法、装置、设备及可读存储介质 | |
CN108229494B (zh) | 网络训练方法、处理方法、装置、存储介质和电子设备 | |
Dave et al. | Simulation of analytical chemistry experiments on augmented reality platform | |
CN108830139A (zh) | 人体关键点的深度前后关系预测方法、装置、介质及设备 | |
CN116189269A (zh) | 一种多任务人脸检测方法、装置、电子设备及存储介质 | |
CN114005169A (zh) | 人脸关键点检测方法、装置、电子设备及存储介质 | |
CN112862840B (zh) | 图像分割方法、装置、设备及介质 | |
EP4040346A1 (en) | Learning system, learning method, and program | |
JP6663838B2 (ja) | 法線推定装置、法線推定方法、及び法線推定プログラム | |
CN109978067A (zh) | 一种基于卷积神经网络与尺度不变特征变换的商标检索方法以及装置 | |
CN115115851B (zh) | 一种商品姿态估计的方法、装置及存储介质 |
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 |