CN115346239A - 一种人体姿态估计方法、装置、电子设备及存储介质 - Google Patents
一种人体姿态估计方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN115346239A CN115346239A CN202210897605.XA CN202210897605A CN115346239A CN 115346239 A CN115346239 A CN 115346239A CN 202210897605 A CN202210897605 A CN 202210897605A CN 115346239 A CN115346239 A CN 115346239A
- Authority
- CN
- China
- Prior art keywords
- sample image
- training
- neural network
- human body
- loss function
- 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.)
- Pending
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/08—Learning methods
- G06N3/082—Learning methods modifying the architecture, e.g. adding, deleting or silencing nodes or connections
-
- 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
- G06V20/00—Scenes; Scene-specific elements
- G06V20/40—Scenes; Scene-specific elements in video content
- G06V20/46—Extracting features or characteristics from the video content, e.g. video fingerprints, representative shots or key frames
-
- 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/20—Movements or behaviour, e.g. gesture recognition
- G06V40/23—Recognition of whole body movements, e.g. for sport training
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Evolutionary Computation (AREA)
- Software Systems (AREA)
- Artificial Intelligence (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Computing Systems (AREA)
- Human Computer Interaction (AREA)
- Biomedical Technology (AREA)
- Medical Informatics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Databases & Information Systems (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Molecular Biology (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- Psychiatry (AREA)
- Social Psychology (AREA)
- Image Analysis (AREA)
Abstract
本发明涉及一种人体姿态估计方法、装置、电子设备及存储介质,该方法包括:获取包含人体的待识别视频;根据待识别视频,通过预先训练的姿态识别模型识别出待识别视频中人体的关节点的位置;根据待识别视频中人体的关节点的位置,确定待识别视频中人体的目标姿态;其中,姿态识别模型是通过以下方式建立的:获取训练样本;根据训练样本,通过初始神经网络模型,得到每张样本图像对应的关节点的预测位置;根据各张样本图像的标注结果和预测位置,通过初始神经网络模型的Huber损失函数,确定初始神经网络模型的总损失函数值,根据总损失函数值,完成模型的训练。通过本发明的方法,采用Huber损失函数替代MAE损失函数,可减小梯度,利于模型的学习。
Description
技术领域
本发明涉及机器学习、人工智能技术领域,具体而言,本发明涉及一种人体姿态估计方法、装置、电子设备及存储介质。
背景技术
现有技术中,基于机器学习的方式进行人体姿态估计的方案涉及的损失函数通常选用MAE损失函数,但是由于MAE损失函数对于很小的损失值,梯度也很大,这样不利于模型的学习。
发明内容
本发明所要解决的技术问题是提供了一种人体姿态估计方法、装置、电子设备及存储介质,旨在解决上述至少一个技术问题。
第一方面,本发明解决上述技术问题的技术方案如下:一种人体姿态估计方法,该方法包括:
获取包含人体的待识别视频;
根据待识别视频,通过预先训练的姿态识别模型识别出待识别视频中人体的关节点的位置;
根据待识别视频中人体的关节点的位置,确定待识别视频中人体的目标姿态;
其中,姿态识别模型是通过以下方式建立的:
获取训练样本,训练样本包括包含多种人体姿态的样本图像,每张样本图像对应一个标注结果,对于每张样本图像,标注结果表征了该张样本图像对应的人体的关节点的位置;
根据训练样本,通过初始神经网络模型,得到每张样本图像对应的关节点的预测位置;
根据各张样本图像的标注结果和预测位置,通过初始神经网络模型的Huber损失函数,确定初始神经网络模型的总损失函数值;
若总损失函数值满足预设的训练结束条件,将训练结束时的初始神经网络模型确定为姿态识别模型,若总损失函数值不满足训练结束条件,调整初始神经网络模型的模型参数,重新基于训练样本对初始神经网络模型进行训练,直到总损失函数值满足训练结束条件。
本发明的有益效果是:在训练用于确定待识别视频中人体的关节点的位置的姿态识别模型时,采用Huber损失函数替代MAE损失函数,由于Huber损失是绝对误差,在误差很小时,就变为平方误差,这样可减小梯度,利于模型的学习。
在上述技术方案的基础上,本发明还可以做如下改进。
进一步,上述根据各张样本图像的标注结果和预测位置,通过初始神经网络模型的Huber损失函数,确定初始神经网络模型的总损失函数值,包括:
对于每张样本图像,根据样本图像的标注结果和预测位置,通过初始Huber损失函数,确定样本图像对应的第一损失函数值;
根据各第一损失函数值,确定初始神经网络模型的总损失函数值;
其中,上述Huber损失函数为:
其中,b为一张样本图像的标注结果,f(a)为一张样本图像的预测位置,∈为超参数,L∈(b,f(a))为一张样本图像对应的第一损失函数值。
采用上述进一步方案的有益效果是,Huber损失是绝对误差,在误差很小时,就变为平方误差,误差降到多小时变为二次误差由超参数∈来控制,当Huber损失在[0-∈,0+∈]之间时,等价为MSE,而在[-∞,∈]和[∈,+∞]时为MAE。通过Huber损失函数可更准确的表达出标注结果和预测位置之间的损失。
进一步,上述初始神经网络模型为Higher HRNet网络结构的模型,根据训练样本,通过初始神经网络模型,得到每张样本图像对应的关节点的预测位置,包括:
对于每张样本图像,将样本图像输入至初始神经网络模型,通过以下步骤得到每张样本图像对应的关节点的预测位置,其中,以下步骤包括:
提取样本图像的不同尺度的第一特征图;
通过双线性插值方法,将样本图像的不同尺度的第一特征图上采样至样本图像的图像大小,得到多个尺度相同的第二特征图;
将样本图像对应的多个第二特征图求平均,得到样本图像对应的第三特征图;
根据样本图像对应的第三特征图,确定样本图像对应的关节点的预测位置。
采用上述进一步方案的有益效果是,本申请方案中,初始神经网络模型为HigherHRNet网络结构的模型,通过初始神经网络模型在预测阶段可将所有尺度的输出特征通过双线性插值上采样到输入图片的大小,再进行平均,得到最终预测的关节点的预测位置,能够解决自下而上的多人姿势估计中的尺度变化挑战,并能更精确地定位关节点的位置。
进一步,多张样本图像包括不同场景和不同图像大小的图像。
采用上述进一步方案的有益效果是,采用不同场景、不同图像大小和不同人体姿态的图像作为样本图像进行模型的训练,可以满足更多不同的姿态识别需求。
进一步,上述获取训练样本,包括:
获取初始训练数据,初始训练数据包括包含多种人体姿态的样本图像,每张样本图像对应一个标注结果,对于每张样本图像,标注结果表征了该张样本图像对应的人体的关节点的位置;
对初始训练数据进行数据增广处理,得到训练样本,其中,数据增广处理包括图像合成、图像镜像和添加高斯噪点中的至少一项。
采用上述进一步方案的有益效果是,对初始训练数据进行数据增广处理,可使得训练样本中的样本图像更加丰富,提高模型的训练精度。
进一步,上述根据训练样本,通过初始神经网络模型,得到每张样本图像对应的关节点的预测位置,包括:
对每张样本图像进行特征提取,通过初始神经网络模型,得到多个特征图;
对各个特征图进行归一化处理,通过初始神经网络模型,得到多个归一化后的特征图;
根据各个归一化后的特征图,通过初始神经网络模型,确定每张样本图像对应的关节点的预测位置。
采用上述进一步方案的有益效果是,对各个特征图进行归一化处理,可加快网络收敛。
进一步,上述方法还包括:
根据目标姿态和预设的标准姿态进行比较,确定待识别视频中的目标姿态是否符合规范。
采用上述进一步方案的有益效果是,在识别出目标姿态后,可基于目标姿态和预设的标准姿态进行姿态评估,满足更多的应用需求。
第二方面,本发明为了解决上述技术问题还提供了一种人体姿态估计装置,该装置包括:
视频获取模块,用于获取包含人体的待识别视频;
关节点位置确定模块,用于根据待识别视频,通过预先训练的姿态识别模型识别出待识别视频中人体的关节点的位置;
目标姿态确定模块,用于根据待识别视频中人体的关节点的位置,确定待识别视频中人体的目标姿态;
其中,上述姿态识别模型是通过以下模型训练模块建立的,模型训练模块,用于获取训练样本,训练样本包括包含多种人体姿态的样本图像,每张样本图像对应一个标注结果,对于每张样本图像,标注结果表征了该张样本图像对应的人体的关节点的位置;
根据训练样本,通过初始神经网络模型,得到每张样本图像对应的关节点的预测位置;
根据各张样本图像的标注结果和预测位置,通过初始神经网络模型的Huber损失函数,确定初始神经网络模型的总损失函数值;
若总损失函数值满足预设的训练结束条件,将训练结束时的初始神经网络模型确定为姿态识别模型,若总损失函数值不满足训练结束条件,调整初始神经网络模型的模型参数,重新基于训练样本对初始神经网络模型进行训练,直到总损失函数值满足训练结束条件。
第三方面,本发明为了解决上述技术问题还提供了一种电子设备,该电子设备包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行该计算机程序时实现本申请的人体姿态估计方法。
第四方面,本发明为了解决上述技术问题还提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器执行时实现本申请的人体姿态估计方法。
本申请附加的方面和优点将在下面的描述中部分给出,这些将从下面的描述中变得明显,或通过本申请的实践了解到。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对本发明实施例描述中所需要使用的附图作简单地介绍。
图1为本发明一个实施例提供的一种人体姿态估计方法的流程示意图;
图2为本发明一个实施例提供的一种Higher HRNet网络结构示意图;
图3为本发明一个实施例提供的一种人体16个骨点的位置标注示意图;
图4为本发明一个实施例提供的一种人体姿态估计装置的结构示意图;
图5为本发明一个实施例提供的一种电子设备的结构示意图。
具体实施方式
以下对本发明的原理和特征进行描述,所举实例只用于解释本发明,并非用于限定本发明的范围。
下面以具体实施例对本发明的技术方案以及本发明的技术方案如何解决上述技术问题进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。下面将结合附图,对本发明的实施例进行描述。
本发明实施例所提供的方案可以适用于任何需要进行人体姿态评估的应用场景中。本发明实施例所提供的方案可以由任一电子设备执行,比如,可以是用户的终端设备,上述终端设备可以是任何可以安装应用,并可通过应用进行人体姿态评估的终端设备,包括以下至少一项:智能手机、平板电脑、笔记本电脑、台式计算机、智能音箱、智能手表、智能电视、智能车载设备。
本发明实施例提供了一种可能的实现方式,如图1所示,提供了一种人体姿态估计方法的流程图,该方案可以由任一电子设备执行,例如,可以是终端设备,或者由终端设备和服务器共同执行。为描述方便,下面将以终端设备作为执行主体为例对本发明实施例提供的方法进行说明,如图1中所示的流程图,该方法可以包括以下步骤:
步骤S110,获取包含人体的待识别视频;
步骤S120,根据待识别视频,通过预先训练的姿态识别模型识别出待识别视频中人体的关节点的位置;
步骤S130,根据待识别视频中人体的关节点的位置,确定待识别视频中人体的目标姿态;
其中,姿态识别模型是通过以下方式建立的:
获取训练样本,训练样本包括包含多种人体姿态的样本图像,每张样本图像对应一个标注结果,对于每张样本图像,标注结果表征了该张样本图像对应的人体的关节点的位置;
根据训练样本,通过初始神经网络模型,得到每张样本图像对应的关节点的预测位置;
根据各张样本图像的标注结果和预测位置,通过初始神经网络模型的Huber损失函数,确定初始神经网络模型的总损失函数值;
若总损失函数值满足预设的训练结束条件,将训练结束时的初始神经网络模型确定为姿态识别模型,若总损失函数值不满足训练结束条件,调整初始神经网络模型的模型参数,重新基于训练样本对初始神经网络模型进行训练,直到总损失函数值满足训练结束条件。
通过本发明的方法,在训练用于确定待识别视频中人体的关节点的位置的姿态识别模型时,采用Huber损失函数替代MAE损失函数,由于Huber损失是绝对误差,在误差很小时,就变为平方误差,这样可减小梯度,利于模型的学习。
下面结合以下具体的实施例,对本发明的方案进行进一步的说明,在该实施例中,人体姿态估计方法可以包括以下步骤:
步骤S110,获取包含人体的待识别视频。
其中,待识别视频可以是通过图像采集设备获取的,比如,摄像头等。待识别视频中除了人之外,还可包括其他对象,不同的应用场景对应的待识别视频的视频内容可以是不同的,比如,加油站场景,待识别视频中即可包括加油站的工作人员、加油设备、加油车辆等。
步骤S120,根据待识别视频,通过预先训练的姿态识别模型识别出待识别视频中人体的关节点的位置。
上述步骤S120中,可分别对待识别视频中的各帧图像进行识别,得到每帧图像中人体的关键点的位置,然后基于各个图像中人体的关键点的位置,确定待识别视频中人体的关节点的位置。可以理解的是,一个待识别视频中可包括至少一个人,则通过姿态识别模型可识别出每个人的关节点的位置。
步骤S130,根据待识别视频中人体的关节点的位置,确定待识别视频中人体的目标姿态;
关节点的不同位置可以对应不同的姿态,姿态指的是人体的各关节点所形成的动作。
其中,姿态识别模型是通过以下方式建立的:
获取训练样本,训练样本包括包含多种人体姿态的样本图像,每张样本图像对应一个标注结果,对于每张样本图像,标注结果表征了该张样本图像对应的人体的关节点的位置;
根据训练样本,通过初始神经网络模型,得到每张样本图像对应的关节点的预测位置;
根据各张样本图像的标注结果和预测位置,通过初始神经网络模型的Huber损失函数,确定初始神经网络模型的总损失函数值;
若总损失函数值满足预设的训练结束条件,将训练结束时的初始神经网络模型确定为姿态识别模型,若总损失函数值不满足训练结束条件,调整初始神经网络模型的模型参数,重新基于训练样本对初始神经网络模型进行训练,直到总损失函数值满足训练结束条件。
可选的,上述根据各张样本图像的标注结果和预测位置,通过初始神经网络模型的Huber损失函数,确定初始神经网络模型的总损失函数值,包括:
对于每张样本图像,根据样本图像的标注结果和预测位置,通过初始Huber损失函数,确定样本图像对应的第一损失函数值;
根据各第一损失函数值,确定初始神经网络模型的总损失函数值;
其中,上述Huber损失函数为:
其中,b为一张样本图像的标注结果,f(a)为一张样本图像的预测位置,∈为超参数,L∈(b,f(a))为一张样本图像对应的第一损失函数值。
Huber损失是绝对误差,在误差很小时,就变为平方误差,误差降到多小时变为二次误差由超参数∈来控制,|b-f(a)|表示的是标注结果与预测位置之间的差异的绝对值,当Huber损失在[0-∈,0+∈]之间时,即for|b-f(a)|≤∈时,第一损失函数值等价为MSE,即1/2(b-f(a))2,而在[-∞,∈]和[∈,+∞]时,即otherwise时,第一损失函数值为MAE,即∈|b-f(a)|-1/2∈2。通过Huber损失函数可更准确的表达出标注结果和预测位置之间的损失。其中,超参数可以理解为一个阈值。
可选的,上述初始神经网络模型为Higher HRNet网络结构的模型,根据训练样本,通过初始神经网络模型,得到每张样本图像对应的关节点的预测位置,包括:
对于每张样本图像,将样本图像输入至初始神经网络模型,通过以下步骤得到每张样本图像对应的关节点的预测位置,其中,以下步骤包括:
提取样本图像的不同尺度的第一特征图;
通过双线性插值方法,将样本图像的不同尺度的第一特征图上采样至样本图像的图像大小,得到多个尺度相同的第二特征图;
将样本图像对应的多个第二特征图求平均,得到样本图像对应的第三特征图;
根据样本图像对应的第三特征图,确定样本图像对应的关节点的预测位置。
本申请方案中,初始神经网络模型为Higher HRNet网络结构的模型,如图2所示的Higher HRNet网络结构示意图,将输入图像通过stem模块分为4个子图像,每个子图像的大小为输入图像的1/4,对于每张子图像,在该子图像经过卷积(conv)、上采样(upsample)、拼接(concat)等处理后,可得到不同尺度的第一特征图,通过双线性插值方法,将样本图像的不同尺度的第一特征图上采样至样本图像的图像大小,即输入图像的1/4,得到多个尺度相同的第二特征图;然后将样本图像对应的多个第二特征图求平均,得到样本图像对应的第三特征图。其中,strided为步长。通过初始神经网络模型在预测阶段可将所有尺度的输出特征通过双线性插值上采样到输入图片的大小,再进行平均,得到最终预测的关节点的预测位置,能够解决自下而上的多人姿势估计中的尺度变化挑战,并能更精确地定位关节点的位置。
可选的,多张样本图像包括不同场景和不同图像大小的图像。采用不同场景、不同图像大小和不同人体姿态的图像作为样本图像进行模型的训练,可以满足更多不同的姿态识别需求。
可选的,上述获取训练样本,包括:
获取初始训练数据,初始训练数据包括包含多种人体姿态的样本图像,每张样本图像对应一个标注结果,对于每张样本图像,标注结果表征了该张样本图像对应的人体的关节点的位置;
对初始训练数据进行数据增广处理,得到训练样本,其中,数据增广处理包括图像合成、图像镜像和添加高斯噪点中的至少一项。
对初始训练数据进行数据增广处理,可使得训练样本中的样本图像更加丰富,提高模型的训练精度。其中,标注结果可采用人工标注的形式,参见图3,在人体16个骨点处各放置一个固定方差的高斯核,同时把关键点的空间位置关系(骨点序号)隐式的encode(编码)在heatmap(热图)中,即将各个关键点,以及各个关键点对应的骨点序号(0-15)标注子样本图像中。
可选的,上述根据训练样本,通过初始神经网络模型,得到每张样本图像对应的关节点的预测位置,包括:
对每张样本图像进行特征提取,通过初始神经网络模型,得到多个特征图;
对各个特征图进行归一化处理,通过初始神经网络模型,得到多个归一化后的特征图;
根据各个归一化后的特征图,通过初始神经网络模型,确定每张样本图像对应的关节点的预测位置。其中,对各个特征图进行归一化处理可以为将各个特征图调整到同一个维度,对各个特征图进行归一化处理,可加快网络收敛。
在姿态识别模型训练的过程中,可采用人工拍摄的方法,准备了大约20000张左右的训练数据与2000张左右的测试数据,基于训练数据进行模型的训练,基于测试数据进行模型的测试
在训练得到姿态识别模型后,还可定时测试识别精度,防止因网络过拟合导致错过最佳模型。
可选的,上述方法还包括:
根据目标姿态和预设的标准姿态进行比较,确定待识别视频中的目标姿态是否符合规范。
在识别出目标姿态后,可基于目标姿态和预设的标准姿态进行姿态评估,满足更多的应用需求。
基于与图1中所示的方法相同的原理,本发明实施例还提供了一种人体姿态估计装置20,如图4中所示,该人体姿态估计装置20可以包括视频获取模块210、关节点位置确定模块220、目标姿态确定模块230和模型训练模块240,其中:
视频获取模块210,用于获取包含人体的待识别视频;
关节点位置确定模块220,用于根据待识别视频,通过预先训练的姿态识别模型识别出待识别视频中人体的关节点的位置;
目标姿态确定模块230,用于根据待识别视频中人体的关节点的位置,确定待识别视频中人体的目标姿态;
其中,上述姿态识别模型是通过以下模型训练模块240建立的,模型训练模块240,用于获取训练样本,训练样本包括包含多种人体姿态的样本图像,每张样本图像对应一个标注结果,对于每张样本图像,标注结果表征了该张样本图像对应的人体的关节点的位置;
根据训练样本,通过初始神经网络模型,得到每张样本图像对应的关节点的预测位置;
根据各张样本图像的标注结果和预测位置,通过初始神经网络模型的Huber损失函数,确定初始神经网络模型的总损失函数值;
若总损失函数值满足预设的训练结束条件,将训练结束时的初始神经网络模型确定为姿态识别模型,若总损失函数值不满足训练结束条件,调整初始神经网络模型的模型参数,重新基于训练样本对初始神经网络模型进行训练,直到总损失函数值满足训练结束条件。
可选的,上述模型训练模块240在根据各张样本图像的标注结果和预测位置,通过初始神经网络模型的Huber损失函数,确定初始神经网络模型的总损失函数值时,具体用于:
对于每张样本图像,根据样本图像的标注结果和预测位置,通过初始Huber损失函数,确定样本图像对应的第一损失函数值;
根据各第一损失函数值,确定初始神经网络模型的总损失函数值;
其中,Huber损失函数为:
其中,b为一张样本图像的标注结果,f(a)为一张样本图像的预测位置,∈为超参数,L∈(b,f(a))为一张样本图像对应的第一损失函数值。
可选的,上述初始神经网络模型为Higher HRNet网络结构的模型,上述模型训练模块240在根据训练样本,通过初始神经网络模型,得到每张样本图像对应的关节点的预测位置时,具体用于:
对于每张样本图像,将样本图像输入至初始神经网络模型,通过以下步骤得到每张样本图像对应的关节点的预测位置,其中,以下步骤包括:
提取样本图像的不同尺度的第一特征图;
通过双线性插值方法,将样本图像的不同尺度的第一特征图上采样至样本图像的图像大小,得到多个尺度相同的第二特征图;
将样本图像对应的多个第二特征图求平均,得到样本图像对应的第三特征图;
根据样本图像对应的第三特征图,确定样本图像对应的关节点的预测位置。
可选的,多张样本图像包括不同场景和不同图像大小的图像。
可选的,上述模型训练模块240在获取训练样本时,具体用于:
获取初始训练数据,初始训练数据包括包含多种人体姿态的样本图像,每张样本图像对应一个标注结果,对于每张样本图像,标注结果表征了该张样本图像对应的人体的关节点的位置;
对初始训练数据进行数据增广处理,得到训练样本,其中,数据增广处理包括图像合成、图像镜像和添加高斯噪点中的至少一项。
可选的,上述模型训练模块240在根据训练样本,通过初始神经网络模型,得到每张样本图像对应的关节点的预测位置时,具体用于:
对每张样本图像进行特征提取,通过初始神经网络模型,得到多个特征图;
对各个特征图进行归一化处理,通过初始神经网络模型,得到多个归一化后的特征图;
根据各个归一化后的特征图,通过初始神经网络模型,确定每张样本图像对应的关节点的预测位置。
可选的,该装置还包括:
姿态评估模块,用于根据目标姿态和预设的标准姿态进行比较,确定待识别视频中的目标姿态是否符合规范。
本发明实施例的人体姿态估计装置可执行本发明实施例所提供的人体姿态估计方法,其实现原理相类似,本发明各实施例中的人体姿态估计装置中的各模块、单元所执行的动作是与本发明各实施例中的人体姿态估计方法中的步骤相对应的,对于人体姿态估计装置的各模块的详细功能描述具体可以参见前文中所示的对应的人体姿态估计方法中的描述,此处不再赘述。
其中,上述人体姿态估计装置可以是运行于计算机设备中的一个计算机程序(包括程序代码),例如该人体姿态估计装置为一个应用软件;该装置可以用于执行本发明实施例提供的方法中的相应步骤。
在一些实施例中,本发明实施例提供的人体姿态估计装置可以采用软硬件结合的方式实现,作为示例,本发明实施例提供的人体姿态估计装置可以是采用硬件译码处理器形式的处理器,其被编程以执行本发明实施例提供的人体姿态估计方法,例如,硬件译码处理器形式的处理器可以采用一个或多个应用专用集成电路(ASIC,Application SpecificIntegrated Circuit)、DSP、可编程逻辑器件(PLD,Programmable Logic Device)、复杂可编程逻辑器件(CPLD,Complex Programmable Logic Device)、现场可编程门阵列(FPGA,Field-Programmable Gate Array)或其他电子元件。
在另一些实施例中,本发明实施例提供的人体姿态估计装置可以采用软件方式实现,图4示出了存储在存储器中的人体姿态估计装置,其可以是程序和插件等形式的软件,并包括一系列的模块,包括视频获取模块210、关节点位置确定模块220、目标姿态确定模块230和模型训练模块240,用于实现本发明实施例提供的人体姿态估计方法。
描述于本发明实施例中所涉及到的模块可以通过软件的方式实现,也可以通过硬件的方式来实现。其中,模块的名称在某种情况下并不构成对该模块本身的限定。
基于与本发明的实施例中所示的方法相同的原理,本发明的实施例中还提供了一种电子设备,该电子设备可以包括但不限于:处理器和存储器;存储器,用于存储计算机程序;处理器,用于通过调用计算机程序执行本发明任一实施例所示的方法。
在一个可选实施例中提供了一种电子设备,如图5所示,图5所示的电子设备4000包括:处理器4001和存储器4003。其中,处理器4001和存储器4003相连,如通过总线4002相连。可选地,电子设备4000还可以包括收发器4004,收发器4004可以用于该电子设备与其他电子设备之间的数据交互,如数据的发送和/或数据的接收等。需要说明的是,实际应用中收发器4004不限于一个,该电子设备4000的结构并不构成对本发明实施例的限定。
处理器4001可以是CPU(Central Processing Unit,中央处理器),通用处理器,DSP(Digital Signal Processor,数据信号处理器),ASIC(Application SpecificIntegrated Circuit,专用集成电路),FPGA(Field Programmable Gate Array,现场可编程门阵列)或者其他可编程逻辑器件、晶体管逻辑器件、硬件部件或者其任意组合。其可以实现或执行结合本发明公开内容所描述的各种示例性的逻辑方框,模块和电路。处理器4001也可以是实现计算功能的组合,例如包含一个或多个微处理器组合,DSP和微处理器的组合等。
总线4002可包括一通路,在上述组件之间传送信息。总线4002可以是PCI(Peripheral Component Interconnect,外设部件互连标准)总线或EISA(ExtendedIndustry Standard Architecture,扩展工业标准结构)总线等。总线4002可以分为地址总线、数据总线、控制总线等。为便于表示,图5中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
存储器4003可以是ROM(Read Only Memory,只读存储器)或可存储静态信息和指令的其他类型的静态存储设备,RAM(Random Access Memory,随机存取存储器)或者可存储信息和指令的其他类型的动态存储设备,也可以是EEPROM(Electrically ErasableProgrammable Read Only Memory,电可擦可编程只读存储器)、CD-ROM(Compact DiscRead Only Memory,只读光盘)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。
存储器4003用于存储执行本发明方案的应用程序代码(计算机程序),并由处理器4001来控制执行。处理器4001用于执行存储器4003中存储的应用程序代码,以实现前述方法实施例所示的内容。
其中,电子设备也可以是终端设备,图5示出的电子设备仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
本发明实施例提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,当其在计算机上运行时,使得计算机可以执行前述方法实施例中相应内容。
根据本发明的另一个方面,还提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述各种实施例实现方式中提供的方法。
可以以一种或多种程序设计语言或其组合来编写用于执行本发明的操作的计算机程序代码,上述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
应该理解的是,附图中的流程图和框图,图示了按照本发明各种实施例的方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的***来实现,或者可以用专用硬件与计算机指令的组合来实现。
本发明实施例提供的计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的***、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本发明中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行***、装置或者器件使用或者与其结合使用。
上述计算机可读存储介质承载有一个或者多个程序,当上述一个或者多个程序被该电子设备执行时,使得该电子设备执行上述实施例所示的方法。
以上描述仅为本发明的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本发明中所涉及的公开范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离上述公开构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本发明中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。
Claims (10)
1.一种人体姿态估计方法,其特征在于,包括以下步骤:
获取包含人体的待识别视频;
根据所述待识别视频,通过预先训练的姿态识别模型识别出所述待识别视频中人体的关节点的位置;
根据所述待识别视频中人体的关节点的位置,确定所述待识别视频中人体的目标姿态;
其中,所述姿态识别模型是通过以下方式建立的:
获取训练样本,所述训练样本包括包含多种人体姿态的样本图像,每张所述样本图像对应一个标注结果,对于每张所述样本图像,所述标注结果表征了该张样本图像对应的人体的关节点的位置;
根据所述训练样本,通过初始神经网络模型,得到每张所述样本图像对应的关节点的预测位置;
根据各张所述样本图像的标注结果和预测位置,通过所述初始神经网络模型的Huber损失函数,确定所述初始神经网络模型的总损失函数值;
若所述总损失函数值满足预设的训练结束条件,将训练结束时的初始神经网络模型确定为所述姿态识别模型,若所述总损失函数值不满足所述训练结束条件,调整所述初始神经网络模型的模型参数,重新基于所述训练样本对所述初始神经网络模型进行训练,直到所述总损失函数值满足所述训练结束条件。
3.根据权利要求1所述的方法,其特征在于,所述初始神经网络模型为Higher HRNet网络结构的模型,所述根据所述训练样本,通过初始神经网络模型,得到每张所述样本图像对应的关节点的预测位置,包括:
对于每张所述样本图像,将所述样本图像输入至所述初始神经网络模型,通过以下步骤得到每张所述样本图像对应的关节点的预测位置,其中,所述以下步骤包括:
提取所述样本图像的不同尺度的第一特征图;
通过双线性插值方法,将所述样本图像的不同尺度的第一特征图上采样至所述样本图像的图像大小,得到多个尺度相同的第二特征图;
将所述样本图像对应的多个第二特征图求平均,得到所述样本图像对应的第三特征图;
根据所述样本图像对应的第三特征图,确定所述样本图像对应的关节点的预测位置。
4.根据权利要求1至3中任一项所述的方法,其特征在于,多张所述样本图像包括不同场景和不同图像大小的图像。
5.根据权利要求1至3中任一项所述的方法,其特征在于,所述获取训练样本,包括:
获取初始训练数据,所述初始训练数据包括包含多种人体姿态的样本图像,每张所述样本图像对应一个标注结果,对于每张所述样本图像,所述标注结果表征了该张样本图像对应的人体的关节点的位置;
对所述初始训练数据进行数据增广处理,得到训练样本,其中,所述数据增广处理包括图像合成、图像镜像和添加高斯噪点中的至少一项。
6.根据权利要求1至3中任一项所述的方法,其特征在于,所述根据所述训练样本,通过初始神经网络模型,得到每张所述样本图像对应的关节点的预测位置,包括:
对每张所述样本图像进行特征提取,通过所述初始神经网络模型,得到多个特征图;
对各个所述特征图进行归一化处理,通过所述初始神经网络模型,得到多个归一化后的特征图;
根据各个归一化后的特征图,通过所述初始神经网络模型,确定每张所述样本图像对应的关节点的预测位置。
7.根据权利要求1至3中任一项所述的方法,其特征在于,所述方法还包括:
根据所述目标姿态和预设的标准姿态进行比较,确定所述待识别视频中的目标姿态是否符合规范。
8.一种人体姿态估计装置,其特征在于,包括:
视频获取模块,用于获取包含人体的待识别视频;
关节点位置确定模块,用于根据所述待识别视频,通过预先训练的姿态识别模型识别出所述待识别视频中人体的关节点的位置;
目标姿态确定模块,用于根据所述待识别视频中人体的关节点的位置,确定所述待识别视频中人体的目标姿态;
其中,所述姿态识别模型是通过以下模型训练模块建立的,所述模型训练模块,用于获取训练样本,所述训练样本包括包含多种人体姿态的样本图像,每张所述样本图像对应一个标注结果,对于每张所述样本图像,所述标注结果表征了该张样本图像对应的人体的关节点的位置;
根据所述训练样本,通过初始神经网络模型,得到每张所述样本图像对应的关节点的预测位置;
根据各张所述样本图像的标注结果和预测位置,通过所述初始神经网络模型的Huber损失函数,确定所述初始神经网络模型的总损失函数值;
若所述总损失函数值满足预设的训练结束条件,将训练结束时的初始神经网络模型确定为所述姿态识别模型,若所述总损失函数值不满足所述训练结束条件,调整所述初始神经网络模型的模型参数,重新基于所述训练样本对所述初始神经网络模型进行训练,直到所述总损失函数值满足所述训练结束条件。
9.一种电子设备,其特征在于,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现权利要求1-7中任一项所述的方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现权利要求1-7中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210897605.XA CN115346239A (zh) | 2022-07-28 | 2022-07-28 | 一种人体姿态估计方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210897605.XA CN115346239A (zh) | 2022-07-28 | 2022-07-28 | 一种人体姿态估计方法、装置、电子设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115346239A true CN115346239A (zh) | 2022-11-15 |
Family
ID=83950616
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210897605.XA Pending CN115346239A (zh) | 2022-07-28 | 2022-07-28 | 一种人体姿态估计方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115346239A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115966016A (zh) * | 2022-12-19 | 2023-04-14 | 天翼爱音乐文化科技有限公司 | 一种跳跃状态识别方法、***、电子设备及存储介质 |
CN117726760A (zh) * | 2024-02-07 | 2024-03-19 | 之江实验室 | 一种用于视频的三维人体重建模型的训练方法及装置 |
CN118247851A (zh) * | 2024-05-28 | 2024-06-25 | 江西农业大学 | 一种端到端的手部对象交互姿态估计方法及*** |
-
2022
- 2022-07-28 CN CN202210897605.XA patent/CN115346239A/zh active Pending
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115966016A (zh) * | 2022-12-19 | 2023-04-14 | 天翼爱音乐文化科技有限公司 | 一种跳跃状态识别方法、***、电子设备及存储介质 |
CN117726760A (zh) * | 2024-02-07 | 2024-03-19 | 之江实验室 | 一种用于视频的三维人体重建模型的训练方法及装置 |
CN117726760B (zh) * | 2024-02-07 | 2024-05-07 | 之江实验室 | 一种用于视频的三维人体重建模型的训练方法及装置 |
CN118247851A (zh) * | 2024-05-28 | 2024-06-25 | 江西农业大学 | 一种端到端的手部对象交互姿态估计方法及*** |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108960090B (zh) | 视频图像处理方法及装置、计算机可读介质和电子设备 | |
CN115346239A (zh) | 一种人体姿态估计方法、装置、电子设备及存储介质 | |
CN110046600B (zh) | 用于人体检测的方法和装置 | |
CN112016475B (zh) | 一种人体检测识别方法和装置 | |
CN113408566A (zh) | 目标检测方法及相关设备 | |
CN113837257B (zh) | 一种目标检测方法及装置 | |
CN112597918A (zh) | 文本检测方法及装置、电子设备、存储介质 | |
CN111325798A (zh) | 相机模型纠正方法、装置、ar实现设备及可读存储介质 | |
CN111589138B (zh) | 动作预测方法、装置、设备及存储介质 | |
CN111950570A (zh) | 目标图像提取方法、神经网络训练方法及装置 | |
CN113793370A (zh) | 三维点云配准方法、装置、电子设备及可读介质 | |
CN114067099B (zh) | 学生图像识别网络的训练方法及图像识别方法 | |
CN117115900B (zh) | 一种图像分割方法、装置、设备及存储介质 | |
CN107729885B (zh) | 一种基于多重残差学习的人脸增强方法 | |
CN110210314B (zh) | 人脸检测方法、装置、计算机设备及存储介质 | |
CN117079305A (zh) | 姿态估计方法、姿态估计装置以及计算机可读存储介质 | |
US20230401670A1 (en) | Multi-scale autoencoder generation method, electronic device and readable storage medium | |
CN116597246A (zh) | 模型训练方法、目标检测方法、电子设备及存储介质 | |
CN115393423A (zh) | 目标检测方法和装置 | |
CN116543246A (zh) | 图像去噪模型的训练方法、图像去噪方法、装置及设备 | |
CN113205530A (zh) | 阴影区域处理方法及装置、计算机可读介质和电子设备 | |
CN112991266A (zh) | 用于小样本医疗影像的语义分割方法及*** | |
CN113128277A (zh) | 一种人脸关键点检测模型的生成方法及相关设备 | |
CN112070022A (zh) | 人脸图像识别方法、装置、电子设备和计算机可读介质 | |
CN111124862A (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 |