CN113486708B - 人体姿态预估方法、模型训练方法、电子设备和存储介质 - Google Patents
人体姿态预估方法、模型训练方法、电子设备和存储介质 Download PDFInfo
- Publication number
- CN113486708B CN113486708B CN202110567479.7A CN202110567479A CN113486708B CN 113486708 B CN113486708 B CN 113486708B CN 202110567479 A CN202110567479 A CN 202110567479A CN 113486708 B CN113486708 B CN 113486708B
- Authority
- CN
- China
- Prior art keywords
- feature
- human body
- module
- local
- estimation
- 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
- 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
- G06N3/0455—Auto-encoder networks; Encoder-decoder 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/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/04—Architecture, e.g. interconnection topology
- G06N3/0464—Convolutional networks [CNN, ConvNet]
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/77—Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
- G06V10/80—Fusion, i.e. combining data from various sources at the sensor level, preprocessing level, feature extraction level or classification level
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/82—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
-
- 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/044—Recurrent networks, e.g. Hopfield networks
- G06N3/0442—Recurrent networks, e.g. Hopfield networks characterised by memory or gating, e.g. long short-term memory [LSTM] or gated recurrent units [GRU]
-
- 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/0499—Feedforward networks
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Software Systems (AREA)
- Computing Systems (AREA)
- Biophysics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- Computational Linguistics (AREA)
- Mathematical Physics (AREA)
- Biomedical Technology (AREA)
- Molecular Biology (AREA)
- Multimedia (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Databases & Information Systems (AREA)
- Medical Informatics (AREA)
- Human Computer Interaction (AREA)
- Image Analysis (AREA)
Abstract
本申请公开了一种人体姿态预估方法、模型训练方法、电子设备和存储介质,该方法包括:利用特征提取模块对人体图像进行特征提取,以获得整体特征图和多个局部特征图;基于整体特征图和多个局部特征图构造多个特征序列;利用Transformer模块对每个特征序列进行关系提取,以获得特征序列中的特征点之间的依赖关系和至少部分特征序列之间的依赖关系;利用预估模块基于依赖关系和所有特征序列进行姿态预估,以获得人体图像中人体姿态的预估结果。通过上述方式,本申请能够提高人体姿态预估的准确性。
Description
技术领域
本申请涉及计算机视觉技术领域,特别是涉及一种人体姿态预估方法、模型训练方法、电子设备和存储介质。
背景技术
人体姿态预估是计算机视觉领域一个非常有价值的研究方向,其预估结果可应用于多种不同的实际场景中,如:人机交互、运动分析、增强现实、虚拟现实、医疗健康等。
但是,当人体被其它物体遮挡以及当人体被自身的身体部位遮挡时,现有技术中关于人体姿态预估的方法在遮挡场景下进行人体姿态预估时性能却较差,预估结果不准确。有鉴于此,如何提高人体姿态预估的准确性成为亟待解决的问题。
发明内容
本申请主要解决的技术问题是提供一种人体姿态预估方法、模型训练方法、电子设备和存储介质,能够提高人体姿态预估的准确性。
为解决上述技术问题,本申请第一方面提供一种人体姿态预估方法,包括:利用特征提取模块对人体图像进行特征提取,以获得整体特征图和多个局部特征图;基于所述整体特征图和多个所述局部特征图构造多个特征序列;利用Transformer模块对每个所述特征序列进行关系提取,以获得所述特征序列中的特征点之间的依赖关系和至少部分所述特征序列之间的依赖关系;利用预估模块基于所述依赖关系和所有所述特征序列进行姿态预估,以获得所述人体图像中人体姿态的预估结果。
为解决上述技术问题,本申请第二方面提供一种人体姿态预估模型训练方法,包括:利用特征提取模块对人体图像进行特征提取,以获得整体特征图和多个局部特征图;基于所述整体特征图和多个所述局部特征图构造多个特征序列;利用Transformer模块对每个所述特征序列进行关系提取,以获得所述特征序列中的特征点之间的依赖关系和至少部分所述特征序列之间的依赖关系;利用预估模块基于所述依赖关系和所有所述特征序列进行姿态预估,以获得所述人体图像中人体姿态的预估结果;基于所述预估结果与所述人体图像中人体姿态的实际结果之间的损失,对所述特征提取模块、所述Transformer模块和所述预估模块进行迭代优化。
为解决上述技术问题,本申请第三方面提供一种电子设备,该电子设备包括:相互耦接的存储器和处理器,其中,所述存储器存储有程序数据,所述处理器调用所述程序数据以执行上述第一方面或上述第二方面所述的方法。
为解决上述技术问题,本申请第四方面提供一种计算机可读存储介质,其上存储有程序数据,所述程序数据被处理器执行时实现上述第一方面或上述第二方面所述的方法。
本申请的有益效果是:本申请对人体图像进行特征提取,以获得整体特征图和多个局部特征图,进而构造生成多个特征序列,利用Transformer模块对每个特征序列进行关系提取,以获得特征序列中的特征点之间的依赖关系和至少部分特征序列之间的依赖关系,从而获取人体图像中的关键点之间的依赖关系,利用预估模块基于上述依赖关系和所有特征序列进行姿态预估时,即使人体图像处于遮挡场景中,基于依赖关系可更加准确地根据未被遮挡的部分关键点对所有关键点进行预估以获得人体姿态的预估结果,从而提高人体姿态预估的准确性。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。其中:
图1是本申请人体姿态预估方法一实施方式的流程示意图;
图2是本申请人体姿态预估方法另一实施方式的流程示意图;
图3是本申请人体姿态预估方法一实施方式的拓扑结构示意图;
图4是本申请图2中步骤S204对应的一实施方式拓扑结构示意图;
图5是本申请人体姿态预估模型训练方法一实施方式的流程示意图;
图6是本申请电子设备一实施方式的结构示意图;
图7是本申请计算机可读存储介质一实施方式的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性的劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本文中术语“***”和“网络”在本文中常被可互换使用。本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。此外,本文中的“多”表示两个或者多于两个。
请参阅图1,图1是本申请人体姿态预估方法一实施方式的流程示意图,该方法包括:
S101:利用特征提取模块对人体图像进行特征提取,以获得整体特征图和多个局部特征图。
具体地,获取到人体图像,该人体图像可以是训练用的人体图像也可以是从视频图像帧中提取的人体图像框,利用特征提取模块对人体图像进行特征提取,以获得人体图像对应的整体特征图和人体图像上多个局部区域对应的多个局部特征图。
在一应用方式中,特征提取模块包括多层卷积核,当人体图像输入至特征提取模块后,人体图像经过多层卷积核后输出整体特征图,将同一张人体图像上的不同部位提取出来,以获得多个局部区域的局部图像,当局部图像输入至特征提取模块后,多个局部图像分别经过多层卷积核后输出多个局部特征图。
在一具体应用场景中,当获取到人体图像后,将同一人体图像分别送入特征提取模块和目标检测模块,人体图像经过特征提取模块输出整体特征图,目标检测模块将人体图像分为多个预设区域,预设区域包括头部区域、躯干区域和腿部区域。其中,头部区域的关键点包括鼻子、左眼、右眼、左耳、右耳;躯干区域的关键点包括左肩、右肩、左臂肘、右臂肘、左手腕、右手腕;腿部区域的关键点包括左臀、右臀、左膝、右膝、左脚踝、右脚踝。头部区域、躯干区域和腿部区域对应的局部图像经过特征提取模块后输出对应的局部特征图。
S102:基于整体特征图和多个局部特征图构造多个特征序列。
具体地,获取整体特征图的尺寸和通道数,假设整体特征图的宽为W1、整体特征图的高度为H1、整体特征图的通道数为d,在整体特征图的基础上直接构造由W1*H1个d维特征点组成的特征序列S1。获取局部特征图的尺寸和通道数,假设局部特征图的宽为W2、局部特征图的高度为H2、局部特征图的通道数为d,在局部特征图的基础上直接构造由W2*H2个d维特征点组成的特征序列SN。其中,整体特征图和局部特征图经过同一特征提取模块,两者的通道数相同。
进一步地,获取多个局部特征图的数值,记为第一数值,在多个局部特征图的基础上,构造第一数值个(W2*H2*d)维特征点组成的特征序列SN+1。其中,第一数值个特征点与局部特征图一一对应。
S103:利用Transformer模块对每个特征序列进行关系提取,以获得特征序列中的特征点之间的依赖关系和至少部分特征序列之间的依赖关系。
具体地,利用Transformer模块对每个特征序列进行关系提取,从而获取每个特征序列中的特征点之间的依赖关系,也就是将特征序列S1-SN+1分别输入Transformer模块,以分别获得特征序列S1-SN+1中的特征点之间的依赖关系。
进一步地,特征序列S1基于整体特征图构造,特征序列S1中的特征点之间的依赖关系即为整体特征图中像素点之间的依赖关系,且整体特征图中像素点之间的依赖关系中包括整体特征图中关键点之间的依赖关系。特征序列S2-SN基于局部特征图构造,特征序列S2-SN中的特征点之间的依赖关系即为每个局部特征图中像素点之间的依赖关系,且局部特征图中像素点之间的依赖关系中包括局部特征图中关键点之间的依赖关系。特征序列SN+1基于多个局部特征图构造,特征序列SN+1中的特征点与局部特征图之间一一对应,则特征序列SN+1中的特征点之间的依赖关系即为每个局部特征图之间的依赖关系,也即每个局部特征序列之间的依赖关系。
S104:利用预估模块基于依赖关系和所有特征序列进行姿态预估,以获得人体图像中人体姿态的预估结果。
具体地,将所有特征序列进行融合以获得融合热力图,利用预估模块对融合热力图进行姿态预估以获得原始的人体图像中人体姿态的预估结果。
进一步地,当融合热力图中人体中部分关键点被遮挡时可基于依赖关系,对被遮挡的部分关键点的位置进行预估,从而获得遮挡场景下人体姿态的预估结果,提升各类场景的人体姿态估计性能,使姿态预估结果更准确。当融合热力图中人体中关键点未被遮挡时可基于依赖关系对初始的预估结果进行修正,以获得更准确的姿态预估结果。
上述方案,对人体图像进行特征提取,以获得整体特征图和多个局部特征图,进而构造生成多个特征序列,利用Transformer模块对每个特征序列进行关系提取,以获得特征序列中的特征点之间的依赖关系和至少部分特征序列之间的依赖关系,从而获取人体图像中的关键点之间的依赖关系,利用预估模块基于上述依赖关系和所有特征序列进行姿态预估时,即使人体图像处于遮挡场景中,基于依赖关系可更加准确地根据未被遮挡的部分关键点对所有关键点进行预估以获得人体姿态的预估结果,从而提高人体姿态预估的准确性。
请参阅图2,图2是本申请人体姿态预估方法另一实施方式的流程示意图,该方法包括:
S201:利用特征提取模块对人体图像进行特征提取,以获得整体特征图和多个局部特征图。
请参阅图3,图3是本申请人体姿态预估方法一实施方式的拓扑结构示意图,本实施例中将人体图像分成3个局部图像为例进行说明,在其他实施例中可将人体图像分成其他若干个局部图像进行姿态预估,在此不做具体限制。
在一应用方式中,利用特征提取模块对人体图像进行整体特征提取以获得整体特征图;利用目标检测模块提取人体图像上多个预设区域分别对应的局部图像,利用特征提取模块对局部图像进行局部特征提取以获得多个局部特征图。
具体地,特征提取模块为卷积神经网络(Convolutional Neural Networks,CNN)模块,特征提取模块包含一系列的“卷积+BN归一化+ReLu激活”操作,将人体图像输入至特征提取模块后获得整体特征图,整体特征图可视作尺寸为W1*H1*d的特征矩阵F0,其中,W1为整体特征图的宽、H1为整体特征图的高度、d为整体特征图的通道数。整体特征图为后续Transformer模块提供了原始数据,为获得整体特征图内像素点之间的依赖关系提供了基础。
此外,将人体图像输入至目标检测模块,利用目标检测模块分别对输入的人体图像的头部区域、躯干区域和腿部区域这三部分进行检测,得到目标检测框B_head、B_trunk、B_legs。其中,对人体图像上的局部区域进行检测为后续Transformer模块提供了原始数据,为获得局部特征图内像素点之间和局部特征图之间的依赖关系提供了基础。
进一步地,得到B_head、B_trunk、B_legs之后,先对这些目标检测框进行预处理,以使B_head、B_trunk、B_legs的尺寸一致,进而将预处理之后的B_head、B_trunk、B_legs通过与前述一致的CNN特征提取操作,得到多个局部特征图,局部特征图可视作尺寸为W2*H2*d的特征矩阵F1、F2、F3。其中,W2为局部特征图的宽、H2为局部特征图的高度、d为局部特征图的通道数。
S202:基于整体特征图构造多个特征点组成的第一特征序列、以及基于每个局部特征图分别构造多个特征点组成的第二特征序列。
具体地,请继续参阅图3,在F0的基础上直接构造由W1*H1个d维特征点组成的第一特征序列S0,即:S0的长度为W1*H1,并且S0中的每个元素都是d维向量。在F1、F2、F3的基础上,分别构造由W2*H2个d维特征点组成的第二特征序列S1、S2、S3,即:S1、S2、S3的长度都为W2*H2,并且其中的每个元素也都是d维向量。
S203:对所有局部特征图进行整平操作,基于整平操作后的局部特征图,构造与整平操作后的局部特征图一一对应的特征点组成的第三特征序列。
具体地,将F1、F2、F3进行Flatten操作,然后构造由3个(W2*H2*d)维的特征向量组成的第三特征序列S4,即:S4长度为3,其中每个元素(这里的元素指:将F1、F2、F3进行Flatten之后的结果)为W2*H2*d维向量,因此,每个特征点与局部特征图一一对应。
进一步地,先经过CNN特征提取模块不仅能对输入图像进行降采样,从而降低特征图的尺度,加快处理的效率,也能提取更深层次、隐含的图像信息,再通过构造特征序列使得特征图中的像素点进行依次排列,进而将特征序列输入至后续的Transformer模块中,能够更高效地获取不同的特征序列中特征点之间的依赖关系。
S204:利用Transformer模块对每个特征序列进行关系提取,以获得特征序列中的特征点之间的依赖关系和至少部分特征序列之间的依赖关系。
具体地,利用Transformer模块分别对第一特征序列、第二特征序列和第三特征序列进行关系提取,以获得第一特征序列中的特征点之间的第一依赖关系,以及第二特征序列中的特征点之间的第二依赖关系和第三特征序列中的特征点之间的第三依赖关系。其中,第三特征序列中的特征点与局部特征图一一对应,因此,第三特征序列中的特征点之间的第三依赖关系,即为局部特征图对应的特征序列之间的依赖关系。
在一应用方式中,在获得了特征序列S0、S1、S2、S3、S4之后,利用不同的Transformer模块分支来提取不同的特征序列中特征点之间的依赖关系。
具体地,利用全局Transformer模块分支来提取F0特征点之间的全局依赖关系,也即第一依赖关系。利用局部Transformer模块分支来提取F1、F2、F3的全局依赖关系同时也是F0的局部依赖关系,也即第二依赖关系,由于F1、F2、F3都是F0的局部区域,对F0来说,局部Transformer模块分支提取的是F0的局部依赖关系,但是对于F1、F2、F3本身来说,提取的是F1、F2、F3自身特征点的全局依赖关系。利用交叉Transformer模块分支来提取F1、F2、F3这三者之间的依赖关系,也即第三依赖关系。
其中,将S0作为全局Transformer模块分支的输入,而将S1、S2、S3作为3个局部Transformer模块分支的输入。全局Transformer模块分支能够提取F0特征点之间的全局依赖,即W1*H1*d维的特征图中每一个d维特征点和其它特征点之间的依赖关系,该全局依赖关系以(W1*H1)*(W1*H1)的矩阵A0进行表征;局部Transformer模块分支能够提取F0特征点之间的局部依赖,即W2*H2*d维的特征图中每一个d维特征点和其它特征点之间的依赖关系,该局部依赖关系以(W2*H2)*(W2*H2)的矩阵Ai(i=1、2、3)进行表征;交叉Transformer模块分支能够提取F1、F2、F3这三个局部区域之间的依赖关系,即3*(W2*H2*d)维的特征图中每一个(W2*H2*d)维的特征点和其它特征点之间的依赖关系,该局部关系以3*3的矩阵A4进行表征。
可以理解的是,将上述所有依赖关系匹配至原始的人体图像而言,第一特征序列S0对应的第一依赖关系即为人体图像上像素点/关键点之间的依赖关系,第二特征序列S1、S2、S3对应的第二依赖关系即为人体图像上不同区域内的局部图像上像素点/关键点之间的依赖关系,第三特征序列S4对应的第三依赖关系,即为人体图像上不同区域内的局部图像之间的依赖关系,从而获取到对于人体图像上不同区域不同像素点/关节点之间的所有依赖关系,对于人体图像上部分像素点/关键点被遮挡的场景,在进行人体姿态预估时基于上述所有依赖关系,可提高姿态预估的准确性和鲁棒性。
在一具体应用场景中,利用Transformer模块分别对第一特征序列、第二特征序列和第三特征序列进行关系提取的步骤,包括:将任一特征序列中的特征点分别与其对应的位置编码向量相加,以获得融合特征点;其中,位置编码向量基于特征点在对应的特征序列中的位置生成;利用Transformer模块分别对第一特征序列、第二特征序列和第三特征序列中的融合特征点进行关系提取。
具体地,请参阅图4,图4是本申请图2中步骤S204对应的一实施方式拓扑结构示意图,Transformer模块分支都包括自注意力层(Self-Attention)和前馈神经网络层(FeedForward),其中自注意力层是对输入特征序列进行注意力操作,获取特征序列中不同元素之间的依赖关系,前馈神经网络层是全连接前馈网络,它由两层全连接和ReLU激活函数构成,进行维度变换操作,使得Transformer模块分支的输入输出维度一致。其中位置编码都采用sin-cos规则,具体计算公式如下:
PE(pos,2i)=sin(pos/10002i/d) (1)
PE(pos,2i+1)=cos(pos/10002i/d) (2)
其中,pos表示特征序列中每个元素在特征序列中的位置,2i和2i+1表示位置编码的维度,i的取值范围为[0,d/2],偶数行采用sin函数编码,奇数行采用cos函数编码。通过添加位置编码,引入了每个特征点的位置信息,进而能够更有效地获得不同特征点之间的依赖关系。
进一步地,将特征序列和位置编码向量相加后,输入自注意力层,自注意力层提取特征序列中不同特征点之间的依赖关系,将依赖关系输入到前馈神经网络输出Transformer模块分支的输出结果Yi。上述过程利用公式表示如下:
Q=(Si+PEi)Wq (3)
K=(Si+PEi)Wk (4)
V=(Si+PEi)Wv (5)
Yi=FFN(Zi) (7)
其中,输入特征序列Si(i=0、1、2...N)和位置编码向量相加,得到自注意力层输入Si+PEi,然后定义三个可学习矩阵Wq、Wk、Wv,之后将Si+PEi和矩阵Wq、Wk、Wv相乘,得到Q、K、V,这里Q、K、V和输入特征序列Si的维度一致;然后将Q和K的转置进行点乘计算向量相似性;之后采用softmax转换为概率分布,在进行softmax转换时便获取了不同元素之间的依赖关系;然后将概率分布和V进行加权求和即可以得到自注意力层的输出Zi,然后将Zi输入到前馈神经网络中输出Transformer模块分支的输出结果Yi,Yi的维度和输入特征序列的维度一致。
S205:统一所有特征序列的尺寸,获取每一特征序列分别对应的权重。
具体地,Y0的尺寸为W1*H1*d,而Y1、Y2、Y3的尺寸为W2*H2*d,将Y1、Y2、Y3先沿着“高度”维度进行融合操作,其中W2和d不变,得到尺寸为W2*(3H2)*d的组合结果,之后再进行池化操作,最终得到尺寸同样为W1*H1*d的局部输出结果Yconcate。Y4的尺寸为3*(W2*H2*d),先将Y4进行可视操作得到尺寸为W2*(3H2)*d的组合结果,之后同样进行池化操作,得到尺寸也为W1*H1*d的输出结果Ycross。之后获取预先为不同的特征序列分配的权重值,也就是为Y0、Yconcate和Ycross分别设置了不同的权重值α,β,γ。
S206:对统一尺寸后的特征序列进行加权求和,以获得融合特征图。
具体地,基于为不同特征序列匹配的权重值,对统一尺寸后的特征序列进行加权求和,从而获得融合特征图Yadd。上述过程利用公式表示如下:
Yadd=αY0+βYconcate+γYcross (8)
其中,α为第一特征序列的权重值,β为第二特征序列的权重值,γ为第三特征序列的权重值,Y0为第一特征序列经过Transformer模块后的输出,Yconcate为第二特征序列经过Transformer模块后合成所得的输出,Ycross为第三特征序列经过Transformer模块后转换后获得的输出。
S207:利用预估模块基于依赖关系对融合特征图进行姿态预估,以获得人体图像中人体姿态的预估结果。
具体地,通过不同的权重值表征不同分支的重要性程度,将添加了权重参数之后的Y0、Yconcate和Ycross进行特征点层面上的add操作获得融合特征图Yadd,进而将Yadd输入到预估模块预估人体关键点的位置,从而获得人体图像中人体姿态的预估结果。
在一应用方式中,利用预估模块将融合特征图进行尺寸转换为对应的热度图,在热度图上基于依赖关系标注出人体图像中关键点的位置,以获得人体图像中人体姿态的预估结果。
具体地,该预估模块可以是Head模块,Head模块主要包括shape操作以及1*1卷积操作,其中,shape操作的目的是将W*H的尺寸转为Wheat*Hheat的热度图,shape操作可以为卷积操作,也可以是反卷积操作,具体操作取决于最终需要预估的热度图尺寸大小。假设需要对人体图像中K个关键点进行预估,那么经过Head模块之后在热度图上标注出预测出的K个关键点的位置,就可以得到最终的人体关键点预估结果。通过预估模块将融合特征图的尺寸进行转换以满足最终需要预估的热度图尺寸大小,并基于热度图和关键点之间的依赖关系标注出关键点的位置,对于遮挡场景下的人体姿态预估能够获得更准确的关键点对应的位置。
本实施例所提供的人体姿态预估方法,通过构造特征提取模块、Transformer模块和预估模块对人体姿态进行预估,分别基于整体特征图构造多个特征点组成的第一特征序列、基于每个局部特征图分别构造多个特征点组成的第二特征序列,基于整平操作后的局部特征图,构造与整平操作后的局部特征图一一对应的特征点组成的第三特征序列,通过Transformer模块提取特征序列中特征点的依赖关系,获取人体图像上像素点/关键点之间的依赖关系、人体图像上不同区域内的局部图像上像素点/关键点之间的依赖关系和人体图像上不同区域内的局部图像之间的依赖关系,基于上述依赖关系利用预估模块对人体姿态进行预估,提高姿态预估的准确性和鲁棒性。
请参阅图5,图5是本申请人体姿态预估模型训练方法一实施方式的流程示意图,该方法包括:
S501:利用特征提取模块对人体图像进行特征提取,以获得整体特征图和多个局部特征图。
S502:基于整体特征图和多个局部特征图构造多个特征序列。
S503:利用Transformer模块对每个特征序列进行关系提取,以获得特征序列中的特征点之间的依赖关系和至少部分特征序列之间的依赖关系。
S504:利用预估模块基于依赖关系和所有特征序列进行姿态预估,以获得人体图像中人体姿态的预估结果。
具体地,上述步骤S501-S504与上述实施例相似,相关内容的说明请参见上述任一实施例的详细描述,在此不再赘叙。
S505:基于预估结果与人体图像中人体姿态的实际结果之间的损失,对特征提取模块、Transformer模块和预估模块进行迭代优化。
具体地,当获取到预估结果后,基于预估结果对应的热度图的尺寸,将原始的人体图像转换为与热度图相同的尺寸,进而计算预估结果与实际结果之间的损失,基于训练阶段不断获取到的预估结果与实际结果之间的损失,对特征提取模块、Transformer模块和预估模块进行迭代优化,从而在不断优化后获得更准确的姿态预估结果。
在一应用方式中,将人体图像的尺寸转换为与预估结果对应的热度图相同的尺寸,以获得人体图像中人体姿态的实际结果;利用损失函数模块进行损失计算,以获得预估结果与实际结果之间的损失;基于损失对特征提取模块、Transformer模块和预估模块中的参数进行迭代优化。
具体地,获取到预估结果对应的尺寸为Wheat*Hheat的热度图,利用现有的图像像素转换方法,将人体图像的尺寸也转换为Wheat*Hheat,以使计算损失前预估结果和实际结果的尺寸相同,利用损失函数模块对预估结果与实际结果之间的损失进行计算,上述过程利用公式表示如下:
其中,pj和pj′分别表示第j个关键点的实际和预估结果,最终的损失函数为每个人体关键点均方差损失和的均值。
进一步地,基于损失函数模块计算的结果,对特征提取模块、Transformer模块和预估模块进行迭代优化,从而在不断优化后获得更准确的姿态预估结果。
进一步地,利用特征提取模块对人体图像进行特征提取,以获得整体特征图和多个局部特征图的步骤之前,还包括:响应于获取到包含人体的第一图像,利用目标检测模块提取第一图像上的人体框,以获得人体图像框;对人体图像框进行数据拓展操作,以获得同一人体图像框对应的多个可用于训练的人体图像。
具体地,获取包含人体的第一图像的方式可包括:从公开的数据集(COCO、MPII、CrowdHuman等)中进行筛选或人工采集。进而,采用目标检测模型对数据集中人体进行检测,提取得到人体图像框,此处的目标检测模型包括但不限于YoloV3模型。
进一步地,对人体框样本利用多种数据拓展方法进行初步的数据样本扩充,从而丰富训练用的人体图像。
在一应用方式中,为了不破坏人体关键点之间的空间关系,利用Albumentations数据拓展工具实现人体框样本的数据拓展,具体数据拓展方法包括:使用随机大小的模糊核对人体框样本进行模糊、调整人体框样本色调、饱和度、值变化参数实现人体框样本变换、将人体框样本从RGB颜色空间转换到另一颜色空间,增加或减少颜色参数后返回RGB颜色空间、利用自适应直方图均衡化对输入人体框样本进行增强中的一种方式或几种方式。通过以上数据拓展操作,扩充人体框数据集,从而增加训练用的人体图像。
进一步地,对同一第一图像生成的多个人体图像进行预估的预估结果进行比对,计算不同模糊程度的人体图像对应的预估结果之间的损失,从而对特征提取模块、Transformer模块和预估模块进行迭代优化,以使模型对不同模糊程度的同一图像的预估结果接近,提高预估的准确率。
上述方案,利用特征提取模块对人体图像进行特征提取,以获得整体特征图和多个局部特征图,进而构造生成多个特征序列,利用Transformer模块对每个特征序列进行关系提取,以获得特征序列中的特征点之间的依赖关系和至少部分特征序列之间的依赖关系,从而获取人体图像中的关键点之间的依赖关系,利用预估模块基于上述依赖关系和所有特征序列进行姿态预估,基于预估结果与实际结果之间的损失对特征提取模块、Transformer模块和预估模块不断迭代进行训练优化,以使训练完成后的模型,对于不同应用场景下的人体姿态的预估结果更具鲁棒性,尤其是人体图像处于遮挡场景中,基于依赖关系可更加准确地根据未被遮挡的部分关键点对所有关键点进行预估以获得人体姿态的预估结果,从而提高人体姿态预估的准确性。
请参阅图6,图6是本申请电子设备一实施方式的结构示意图,该电子设备60包括相互耦接的存储器601和处理器602,其中,存储器601存储有程序数据(图未示),处理器602调用程序数据以实现上述任一实施例中的人体姿态预估方法或人体姿态预估模型训练方法,相关内容的说明请参见上述方法实施例的详细描述,在此不再赘叙。
请参阅图7,图7是本申请计算机可读存储介质一实施方式的结构示意图,该计算机可读存储介质70存储有程序数据700,该程序数据700被处理器执行时实现上述任一实施例中的人体姿态预估方法或人体姿态预估模型训练方法,相关内容的说明请参见上述方法实施例的详细描述,在此不再赘叙。
需要说明的是,作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施方式方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本申请各个实施方式方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅为本申请的实施方式,并非因此限制本申请的专利范围,凡是利用本申请说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本申请的专利保护范围内。
Claims (12)
1.一种人体姿态预估方法,其特征在于,所述方法包括:
利用特征提取模块对人体图像进行特征提取,以获得整体特征图和多个局部特征图;其中,所述人体图像对应所述整体特征图,所述人体图像上多个局部区域对应所述多个局部特征图;
基于所述整体特征图和多个所述局部特征图构造多个特征序列;
利用Transformer模块对每个所述特征序列进行关系提取,以获得所述特征序列中的特征点之间的依赖关系和至少部分所述局部特征图对应的所述特征序列之间的依赖关系;
利用预估模块基于所述依赖关系和所有所述特征序列进行姿态预估,以获得所述人体图像中人体姿态的预估结果。
2.根据权利要求1所述的人体姿态预估方法,其特征在于,所述基于所述整体特征图和多个所述局部特征图构造多个特征序列的步骤,包括:
基于所述整体特征图构造多个特征点组成的第一特征序列、以及基于每个所述局部特征图分别构造多个特征点组成的第二特征序列;
对所有所述局部特征图进行整平操作,基于所述整平操作后的局部特征图,构造与所述整平操作后的局部特征图一一对应的特征点组成的第三特征序列。
3.根据权利要求2所述的人体姿态预估方法,其特征在于,所述利用Transformer模块对每个所述特征序列进行关系提取,以获得所述特征序列中的特征点之间的依赖关系和至少部分所述特征序列之间的依赖关系的步骤,包括:
利用所述Transformer模块分别对所述第一特征序列、所述第二特征序列和所述第三特征序列进行关系提取,以获得所述第一特征序列中的特征点之间的第一依赖关系,以及所述第二特征序列中的特征点之间的第二依赖关系和所述第三特征序列中的特征点之间的第三依赖关系。
4.根据权利要求3所述的人体姿态预估方法,其特征在于,所述利用所述Transformer模块分别对所述第一特征序列、所述第二特征序列和所述第三特征序列进行关系提取的步骤,包括:
将任一特征序列中的特征点对应的元素分别与特征点对应的位置编码向量相加,以获得融合特征点;其中,所述位置编码向量基于所述特征点在对应的所述特征序列中的位置生成;
利用所述Transformer模块分别对所述第一特征序列、所述第二特征序列和所述第三特征序列中的所述融合特征点进行关系提取。
5.根据权利要求1所述的人体姿态预估方法,其特征在于,所述利用预估模块基于所述依赖关系和所有所述特征序列进行姿态预估,以获得所述人体图像中人体姿态的预估结果的步骤,包括:
统一所有所述特征序列的尺寸,获取每一所述特征序列分别对应的权重;
对统一尺寸后的所述特征序列进行加权求和,以获得融合特征图;
利用所述预估模块基于所述依赖关系对所述融合特征图进行姿态预估,以获得所述人体图像中人体姿态的预估结果。
6.根据权利要求5所述的人体姿态预估方法,其特征在于,所述利用所述预估模块基于所述依赖关系对所述融合特征图进行姿态预估,以获得所述人体图像中人体姿态的预估结果的步骤,包括:
利用所述预估模块将所述融合特征图进行尺寸转换为对应的热度图,在所述热度图上基于所述依赖关系标注出所述人体图像中关键点的位置,以获得所述人体图像中人体姿态的预估结果。
7.根据权利要求1所述的人体姿态预估方法,其特征在于,所述利用特征提取模块对人体图像进行特征提取,以获得整体特征图和多个局部特征图的步骤,包括:
利用所述特征提取模块对所述人体图像进行整体特征提取以获得所述整体特征图;
利用目标检测模块提取所述人体图像上多个预设区域分别对应的局部图像,利用所述特征提取模块对所述局部图像进行局部特征提取以获得多个局部特征图。
8.一种人体姿态预估模型训练方法,其特征在于,所述方法包括:
利用特征提取模块对人体图像进行特征提取,以获得整体特征图和多个局部特征图;其中,所述人体图像对应所述整体特征图,所述人体图像上多个局部区域对应所述多个局部特征图;
基于所述整体特征图和多个所述局部特征图构造多个特征序列;
利用Transformer模块对每个所述特征序列进行关系提取,以获得所述特征序列中的特征点之间的依赖关系和至少部分所述局部特征图对应的所述特征序列之间的依赖关系;
利用预估模块基于所述依赖关系和所有所述特征序列进行姿态预估,以获得所述人体图像中人体姿态的预估结果;
基于所述预估结果与所述人体图像中人体姿态的实际结果之间的损失,对所述特征提取模块、所述Transformer模块和所述预估模块进行迭代优化。
9.根据权利要求8所述的人体姿态预估模型训练方法,其特征在于,所述利用特征提取模块对人体图像进行特征提取,以获得整体特征图和多个局部特征图的步骤之前,还包括:
响应于获取到包含人体的第一图像,利用目标检测模块提取所述第一图像上的人体框,以获得人体图像框;
对所述人体图像框进行数据拓展操作,以获得同一所述人体图像框对应的多个可用于训练的所述人体图像。
10.根据权利要求8所述的人体姿态预估模型训练方法,其特征在于,所述基于所述预估结果与所述人体图像中人体姿态的实际结果之间的损失,对所述特征提取模块、所述Transformer模块和所述预估模块进行迭代优化的步骤,包括:
将所述人体图像的尺寸转换为与预估结果对应的热度图相同的尺寸,以获得所述人体图像中人体姿态的实际结果;
利用损失函数模块进行损失计算,以获得所述预估结果与所述实际结果之间的损失;
基于所述损失对所述特征提取模块、所述Transformer模块和所述预估模块中的参数进行迭代优化。
11.一种电子设备,其特征在于,包括:相互耦接的存储器和处理器,其中,所述存储器存储有程序数据,所述处理器调用所述程序数据以执行如权利要求1-7或8-10中任一项所述的方法。
12.一种计算机可读存储介质,其上存储有程序数据,其特征在于,所述程序数据被处理器执行时实现如权利要求1-7或8-10中任一项所述的方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110567479.7A CN113486708B (zh) | 2021-05-24 | 2021-05-24 | 人体姿态预估方法、模型训练方法、电子设备和存储介质 |
PCT/CN2021/128377 WO2022247147A1 (en) | 2021-05-24 | 2021-11-03 | Methods and systems for posture prediction |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110567479.7A CN113486708B (zh) | 2021-05-24 | 2021-05-24 | 人体姿态预估方法、模型训练方法、电子设备和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113486708A CN113486708A (zh) | 2021-10-08 |
CN113486708B true CN113486708B (zh) | 2022-03-25 |
Family
ID=77933029
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110567479.7A Active CN113486708B (zh) | 2021-05-24 | 2021-05-24 | 人体姿态预估方法、模型训练方法、电子设备和存储介质 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN113486708B (zh) |
WO (1) | WO2022247147A1 (zh) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113486708B (zh) * | 2021-05-24 | 2022-03-25 | 浙江大华技术股份有限公司 | 人体姿态预估方法、模型训练方法、电子设备和存储介质 |
CN113673489B (zh) * | 2021-10-21 | 2022-04-08 | 之江实验室 | 一种基于级联Transformer的视频群体行为识别方法 |
CN114550305B (zh) * | 2022-03-04 | 2022-10-18 | 合肥工业大学 | 一种基于Transformer的人体姿态估计方法及*** |
CN116110076B (zh) * | 2023-02-09 | 2023-11-07 | 国网江苏省电力有限公司苏州供电分公司 | 基于混合粒度网络的输电高空作业人员身份重识别方法和*** |
CN116028663B (zh) * | 2023-03-29 | 2023-06-20 | 深圳原世界科技有限公司 | 三维数据引擎平台 |
CN116524548B (zh) * | 2023-07-03 | 2023-12-26 | 中国科学院自动化研究所 | 血管结构信息提取方法、装置及存储介质 |
CN116580444A (zh) * | 2023-07-14 | 2023-08-11 | 广州思林杰科技股份有限公司 | 基于多天线射频识别技术的长跑计时的测试方法和设备 |
CN117643252B (zh) * | 2024-01-12 | 2024-05-24 | 西藏田硕农业科技有限公司 | 一种克服半夏连作障碍的设施栽培方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8861870B2 (en) * | 2011-02-25 | 2014-10-14 | Microsoft Corporation | Image labeling with global parameters |
CN110532873A (zh) * | 2019-07-24 | 2019-12-03 | 西安交通大学 | 一种联合人体检测与姿态估计的深度网络学习方法 |
CN110781736A (zh) * | 2019-09-19 | 2020-02-11 | 杭州电子科技大学 | 基于双流网络将姿态和注意力相结合的行人重识别方法 |
CN112200165A (zh) * | 2020-12-04 | 2021-01-08 | 北京软通智慧城市科技有限公司 | 模型训练方法、人体姿态估计方法、装置、设备及介质 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6613876B2 (ja) * | 2015-12-24 | 2019-12-04 | トヨタ自動車株式会社 | 姿勢推定装置、姿勢推定方法、およびプログラム |
EP3726468A4 (en) * | 2017-12-14 | 2020-12-16 | Fujitsu Limited | PROGRAM DETECTION PROGRAM, PROCEDURE DETECTION METHOD, AND PROCEDURE DETECTION SYSTEM |
CN108573231B (zh) * | 2018-04-17 | 2021-08-31 | 中国民航大学 | 基于运动历史点云生成的深度运动图的人体行为识别方法 |
JP7138931B2 (ja) * | 2018-09-28 | 2022-09-20 | 株式会社Axive | 姿勢解析装置、姿勢解析方法、及びプログラム |
CN112819852A (zh) * | 2019-11-15 | 2021-05-18 | 微软技术许可有限责任公司 | 对基于姿态的运动进行评估 |
CN112052886B (zh) * | 2020-08-21 | 2022-06-03 | 暨南大学 | 基于卷积神经网络的人体动作姿态智能估计方法及装置 |
CN113486708B (zh) * | 2021-05-24 | 2022-03-25 | 浙江大华技术股份有限公司 | 人体姿态预估方法、模型训练方法、电子设备和存储介质 |
-
2021
- 2021-05-24 CN CN202110567479.7A patent/CN113486708B/zh active Active
- 2021-11-03 WO PCT/CN2021/128377 patent/WO2022247147A1/en active Application Filing
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8861870B2 (en) * | 2011-02-25 | 2014-10-14 | Microsoft Corporation | Image labeling with global parameters |
CN110532873A (zh) * | 2019-07-24 | 2019-12-03 | 西安交通大学 | 一种联合人体检测与姿态估计的深度网络学习方法 |
CN110781736A (zh) * | 2019-09-19 | 2020-02-11 | 杭州电子科技大学 | 基于双流网络将姿态和注意力相结合的行人重识别方法 |
CN112200165A (zh) * | 2020-12-04 | 2021-01-08 | 北京软通智慧城市科技有限公司 | 模型训练方法、人体姿态估计方法、装置、设备及介质 |
Non-Patent Citations (2)
Title |
---|
Human Posture Recognition and Estimation Method Based on 3D Multiview Basketball Sports Dataset;Xuhui Song etal.;《Complexity》;20210303;第2021卷;全文 * |
姿态特征与深度特征在图像动作识别中的混合应用;钱银中等;《自动化学报》;20190331;第45卷(第3期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN113486708A (zh) | 2021-10-08 |
WO2022247147A1 (en) | 2022-12-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113486708B (zh) | 人体姿态预估方法、模型训练方法、电子设备和存储介质 | |
CN108460338B (zh) | 人体姿态估计方法和装置、电子设备、存储介质、程序 | |
CN110705448B (zh) | 一种人体检测方法及装置 | |
CN111091045B (zh) | 一种基于时空注意力机制的手语识别方法 | |
CN111310707B (zh) | 基于骨骼的图注意力网络动作识别方法及*** | |
CN110929637B (zh) | 一种图像识别方法、装置、电子设备及存储介质 | |
CN111191622A (zh) | 基于热力图和偏移向量的姿态识别方法、***及存储介质 | |
WO2019136591A1 (zh) | 基于弱监督时空级联神经网络的显著目标检测方法及*** | |
CN113313173B (zh) | 基于图表示和改进Transformer的人体解析方法 | |
CN109977912B (zh) | 视频人体关键点检测方法、装置、计算机设备和存储介质 | |
WO2020233427A1 (zh) | 目标的特征的确定方法和装置 | |
CN112419153A (zh) | 图像超分辨率重建方法、装置、计算机设备和存储介质 | |
CN112200157A (zh) | 一种降低图像背景干扰的人体3d姿态识别方法及其*** | |
CN112183506A (zh) | 一种人体姿态生成方法及其*** | |
Zhang et al. | Perspective-adaptive convolutions for scene parsing | |
CN111462274A (zh) | 一种基于smpl模型的人体图像合成方法及*** | |
CN111833400B (zh) | 一种相机位姿定位方法 | |
CN115083015A (zh) | 一种3d人体姿态估计数据标注方式和对应的模型构建方法 | |
Li et al. | Self-supervised coarse-to-fine monocular depth estimation using a lightweight attention module | |
CN113158970B (zh) | 一种基于快慢双流图卷积神经网络的动作识别方法与*** | |
CN114494543A (zh) | 动作生成方法及相关装置、电子设备和存储介质 | |
CN113538402A (zh) | 一种基于密度估计的人群计数方法及*** | |
CN112417991A (zh) | 基于沙漏胶囊网络的双注意力人脸对齐方法 | |
CN111311732A (zh) | 3d人体网格获取方法及装置 | |
CN112560712B (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 |