基于改进OpenPose的视频动作评分方法研究

基于改进OpenPose的视频动作评分方法研究


2024年5月3日发(作者:)

基于改进OpenPose的视频动作评分方法研

作者:苏波 柴自强 王莉

来源:《软件工程》2022年第09期

摘 要:針对人体姿态估计模型OpenPose计算量大、检测速度慢等问题,提出了一种改进

OpenPose模型,替换其主干网络为八度卷积与MobileNet融合而成的Oct-MobileNet,并优化

缩减预测阶段的重复分支。实验表明,改进模型的计算量降低为原来的12%且检测速度提升

300%。应用改进OpenPose模型提取标准视频与测试视频的姿态向量时间序列,其中姿态向量

由关键点坐标经归一化处理后组合得到。采用姿态向量之间的余弦距离表征单帧动作相似度,

通过动态时间规整算法计算标准序列与测试序列之间的累积距离作为序列整体相似度。该评分

方法计算复杂度低且适用于视频时长不一致的情况,在八段锦健身动作评估中取得了较好应用

效果,具有一定的推广应用价值。

关键词:姿态估计;八度卷积;余弦相似度;动态时间规整;动作评分

中图分类号:TP391 文献标识码:A

Research on Video Action Scoring Method based on Improved OpenPose

SU Bo, CHAI Ziqiang, WANG Li

(School of Electrical Engineering and Automation, Henan Polytechnic University, Jiaozuo

454000, China)

************.cn;188****************;**************.cn

Abstract: Aiming at the problems of large amount of calculation and slow detection speed of

the human body posture estimation model OpenPose, this paper proposes an improved OpenPose

model, the backbone network of which is replaced with Oct-MobileNet, a fusion of octave

convolution and MobileNet. The duplicative branches in the prediction stage are optimized and

reduced. Experimental results show that the calculation amount of the improved model is reduced to

12% and the detection speed increases by 300%. The improved OpenPose is used to extract the pose

vector time series of standard video and test video, in which the pose vector is obtained by

combining the key point coordinates after normalization. The cosine distance between the pose

vectors is used to characterize the action similarity of a single frame, and the cumulative distance

between the standard sequence and the test sequence is calculated by the dynamic time warping

algorithm as the overall similarity of the sequence. The proposed scoring method has low

computational complexity and is suitable for the case of inconsistent video duration. It has achieved

good application results in the evaluation of Baduanjin fitness movements, and has certain

promotion and application value.

Keywords: pose estimation; octave convolution; cosine similarity; dynamic time warping;

action scoring

1 引言(Introduction)

动作评估与反馈可有效辅助健身运动练习者提高锻炼收益,而实现自动量化评估可以减少

主观评价带来的误差并节省人力资源。人体姿态估计根据获取数据方式不同分为基于传感器与

基于图像的方法。薛智宏等[1]设计了原地太极拳辅助训练系统,通过深度相机采集的坐标计

算关节角度、瞬时速度进行评估;徐言东等[2]利用Kinect相机采集人体数据并开发了康复训练

系统,通过运动干预来提高患者康复效果;HASEGAWA等[3]采用惯性传感器检测轮椅左右轴

角速度,并以此对轮椅篮球的手法进行质量评估。这些方法都依赖硬件传感器,其设备较为昂

贵,不易普及。随着计算机视觉的发展,通过视频图像获取信息更为便捷。QIAO等[4]提出一

种基于单目图像的人体姿态分级系统,通过计算标准与实时姿势间的离散弗雷歇距离来进行评

分;杨君等[5]通过计算两幅图像中肢体关节角度偏差来进行动作对比;PARMAR等[6]利用三维

卷积神经网络提取跳水、跳马视频中的时空特征,并通过支持向量回归机(Support Vector

Regression, SVR)进行分数回归,但前者方法忽略了动作快慢因素或者只针对单幅图像,后

者深度学习方法需要大量标注数据且训练时间长,模型泛化能力较弱。

针对上述问题,提出一种基于视觉的动作评估方法,首先采用改进OpenPose算法获取人

体关键点坐标位置,根据关键点信息计算测试动作与标准动作的相似度,以此对视频动作进行

评估。

2 OpenPose算法(OpenPose algorithm)

基于深度学习的人体姿态估计方法分为自顶向下和自底向上,自顶向下是先检测图中的每

个人,再对每个人进行关键点检测,典型算法如RMPE[7]、CPN[8];自底向上则先检测图中所

有人的关键点,再将关键点分配给每个人,典型算法为OpenPose[9-10]。由于后者有较好的鲁

棒性,因此本文采用OpenPose作为姿态检测算法。算法流程如图1所示,网络结构如图2所

示。输入图像首先经过VGG19网络得到深层特征,然后将特征经过多阶段网络,前四个阶段

用来预测人体部件亲和场(Part Affinity Fields, PAFs),它是一组包含x、y方向的二维向量

场,用于表征人体关键点之间的关联度;后两个阶段用来预测人体关键点热度图(18 个

Heatmaps),通过多阶段的迭代来不断细化和提纯预测结果,最后通过二分匹配将关键点正确

分配给每一个人并连接生成人体骨架图。

传统OpenPose模型以VGG19作为特征提取部分,整体网络结构深且模型参数量较大,对

计算机硬件设备要求较高,很难实时检测。因此,本文对网络结构进行改进,更换特征提取网

络并减少预测部分的重复阶段数,使模型轻量化从而提高系统运行速度,达到实时检测的效

果。

3 基于Oct-MobileNet的改进OpenPose模型(Improved OpenPose model based on Oct-

MobileNet)

3.1 八度卷积与Oct-MobileNet

在自然图像中,高频信息构成图像的边缘和细节,而低频信息主要构成图像灰度等级,对

图像结构的决定作用较小。同样,卷积层的输入、输出通道也存在高、低频分量。八度卷积

OctConv[11]的思想就是将卷积特征图进行分频表示,并将低频特征图大小减半,从而有效减

少存储和计算量。

八度卷积中的输入、输出通道特征以及卷积核都被分解为高频部分XH、YH、WH和低频

部分XL、YL、WL;超参数α表示低频信息通道占比,且αin=αout。如图3所示,高频输出

YH=f(XH;WH→H)+upsample(f(XL;WL→H),2),低频输出

YL=f(XL;WL→L)+f(pool(XH,2);WH→L)。其中,YH→H是高频输入XH卷积

得到的部分高频输出,由于低频与高频通道尺寸不同,另一部分高频输出YL→H需要低频输

入XL先卷积再进行二倍上采样后得到,最后两者融合得到整体高频输出YH。同理,YL为

YH→L与YL→L的融合,其中高频输入到低频输出先进行平均池化再卷积。这些融合过程保

证了高频与低频特征之间的信息交换,目的是进一步优化最后的高频输出。

以深度可分离卷积为核心的移动端轻量级网络MobileNet,是将一个标准卷积操作分成了

逐通道卷积(Depthwise, DW)和逐点卷积(Pointwise, PW),相比于VGGNet,在精度上

略微降低但模型参数量大幅减少,运算成本更低[12]。因此,本文将八度卷积与MobileNet进

行有机结合,结构设计如图4所示。为了得到与VGG19输出相同的维度特征,只选用

MobileNet V1的前十层并加入两层降维卷积,将所有深度可分离卷积里的DW卷积和PW卷积

融入OctaveConv模块,使网络进一步降低参数量,在减少低频信息冗余的同时更注重高频信

息,使提取的深层特征中包含更多有效信息。网络具体参数如表1所示,其中第一层卷积为普

通卷积,第二层开始为深度可分离卷积,并且在第一个OctaveConv模块中设置αin=0、

αout=0.5,即关闭低频输入通道,只保留由高频输入产生的两条路径;最后一个OctaveConv模

块设置αin=0.5、αout=0,关闭低频输出通道,使多频特征表示恢复成正常大小的高频特征;中

间的模块则设置αin=αout=0.5,保证提升精度与降低参数两者平衡。

3.2 改進OpenPose整体结构及特征可视化

本文将Oct-MobileNet作为改进OpenPose的主干特征提取网络,改进结构如图5所示。在

外部结构上,将原来四个阶段PAFs预测减至三个阶段,预测Heatmaps减至一个阶段,降低整

体冗余。在内部细节中,原先预测PAFs与Heatmaps中前五个卷积块是由三个3×3标准卷积构

成的,现将第一个3×3卷积变为1×1卷积,第三个3×3卷积变为膨胀系数为2的空洞卷积,使

其保留与原先相同的感受野并进一步降低卷积核参数量;五个卷积块依次连接,块内的卷积再

残差相连,使整体获得增大感受野,提升捕获远程信息的能力[13]。

为了验证八度卷积对深层特征及预测阶段效果是否产生增益,对改进OpenPose特征提取

阶段、预测阶段PAFs 3及Heatmaps 1进行特征可视化,分析Oct-MobileNet与普通MobileNet

的效果。如图6所示,融合了八度卷积的MobileNet网络提取的深层特征对人体轮廓这些高频

特征分量更重视,对其他低频分量则起到抑制作用,证明了八度卷积模块融入深度可分离卷积

可以产生互补,对后续预测阶段的效果也能带来进一步的提升。

3.3 模型性能对比分析

实验在Windows 10系统下进行,深度学习框架为Pytorch,硬件配置为:Inter Core i7-

****************,GPU为RTX2060,显存6 GB,RAM为8 GB。训练与测试采用

COCO2017数据集,实验中模型优化器为Adam,训练迭代次数为3×105 次,学习率为4×10-

4。实验对比结果如表2所示,其中前两行为原论文中的数据,mAP代表模型的检测精

度;FLOPs是卷积时发生的浮点运算次数,代表模型的计算量,且1×GFLOPs=109×FLOPs。

针对上述问题,提出一种基于视觉的动作评估方法,首先采用改进OpenPose算法获取人

体关键点坐标位置,根据关键点信息计算测试动作与标准动作的相似度,以此对视频动作进行

评估。

2 OpenPose算法(OpenPose algorithm)

基于深度学习的人体姿态估计方法分为自顶向下和自底向上,自顶向下是先检测图中的每

个人,再对每个人进行关键点检测,典型算法如RMPE[7]、CPN[8];自底向上则先检测图中所

有人的关键点,再将关键点分配给每个人,典型算法为OpenPose[9-10]。由于后者有较好的鲁

棒性,因此本文采用OpenPose作为姿态检测算法。算法流程如图1所示,网络结构如图2所

示。输入图像首先经过VGG19网络得到深层特征,然后将特征经过多阶段网络,前四个阶段

用来预测人体部件亲和场(Part Affinity Fields, PAFs),它是一组包含x、y方向的二维向量

场,用于表征人体关键点之间的关联度;后两个阶段用来预测人体关键点热度图(18 个

Heatmaps),通过多阶段的迭代来不断细化和提纯预测结果,最后通过二分匹配将关键点正确

分配给每一个人并连接生成人体骨架图。

传统OpenPose模型以VGG19作为特征提取部分,整体网络结构深且模型参数量较大,对

计算机硬件设备要求较高,很难实时检测。因此,本文对网络结构进行改进,更换特征提取网

络并减少预测部分的重复阶段数,使模型轻量化从而提高系统运行速度,达到实时检测的效

果。

3 基于Oct-MobileNet的改进OpenPose模型(Improved OpenPose model based on Oct-

MobileNet)

3.1 八度卷积与Oct-MobileNet

在自然图像中,高频信息构成图像的边缘和细节,而低频信息主要构成图像灰度等级,对

图像结构的决定作用较小。同样,卷积层的输入、输出通道也存在高、低频分量。八度卷积

OctConv[11]的思想就是将卷积特征图进行分频表示,并将低频特征图大小减半,从而有效减

少存储和计算量。

八度卷积中的输入、输出通道特征以及卷积核都被分解为高频部分XH、YH、WH和低频

部分XL、YL、WL;超参数α表示低频信息通道占比,且αin=αout。如图3所示,高频输出

YH=f(XH;WH→H)+upsample(f(XL;WL→H),2),低频输出

YL=f(XL;WL→L)+f(pool(XH,2);WH→L)。其中,YH→H是高频输入XH卷积

得到的部分高频输出,由于低频与高频通道尺寸不同,另一部分高频输出YL→H需要低频输

入XL先卷积再进行二倍上采样后得到,最后两者融合得到整体高频输出YH。同理,YL为

YH→L与YL→L的融合,其中高频输入到低频输出先进行平均池化再卷积。这些融合过程保

证了高频与低频特征之间的信息交换,目的是进一步优化最后的高频输出。

以深度可分离卷积为核心的移动端轻量级网络MobileNet,是将一个标准卷积操作分成了

逐通道卷积(Depthwise, DW)和逐点卷积(Pointwise, PW),相比于VGGNet,在精度上

略微降低但模型参数量大幅减少,运算成本更低[12]。因此,本文将八度卷积与MobileNet进

行有机结合,结构设计如图4所示。为了得到与VGG19输出相同的维度特征,只选用

MobileNet V1的前十层并加入两层降维卷积,将所有深度可分离卷积里的DW卷积和PW卷积

融入OctaveConv模块,使网络进一步降低参数量,在减少低频信息冗余的同时更注重高频信

息,使提取的深层特征中包含更多有效信息。网络具体参数如表1所示,其中第一层卷积为普

通卷积,第二层开始为深度可分离卷积,并且在第一个OctaveConv模块中设置αin=0、

αout=0.5,即关闭低频输入通道,只保留由高频输入产生的两条路径;最后一个OctaveConv模

块设置αin=0.5、αout=0,关闭低频输出通道,使多频特征表示恢复成正常大小的高频特征;中

间的模块则设置αin=αout=0.5,保证提升精度与降低参数两者平衡。

3.2 改进OpenPose整体结构及特征可视化

本文将Oct-MobileNet作为改进OpenPose的主干特征提取网络,改进结构如图5所示。在

外部结构上,将原来四个阶段PAFs预测减至三个阶段,预测Heatmaps减至一个阶段,降低整

体冗余。在内部细节中,原先预测PAFs与Heatmaps中前五个卷积块是由三个3×3标准卷积构

成的,现将第一个3×3卷积变为1×1卷积,第三个3×3卷积变为膨胀系数为2的空洞卷積,使

其保留与原先相同的感受野并进一步降低卷积核参数量;五个卷积块依次连接,块内的卷积再

残差相连,使整体获得增大感受野,提升捕获远程信息的能力[13]。

为了验证八度卷积对深层特征及预测阶段效果是否产生增益,对改进OpenPose特征提取

阶段、预测阶段PAFs 3及Heatmaps 1进行特征可视化,分析Oct-MobileNet与普通MobileNet

的效果。如图6所示,融合了八度卷积的MobileNet网络提取的深层特征对人体轮廓这些高频

特征分量更重视,对其他低频分量则起到抑制作用,证明了八度卷积模块融入深度可分离卷积

可以产生互补,对后续预测阶段的效果也能带来进一步的提升。

3.3 模型性能对比分析

实验在Windows 10系统下进行,深度学习框架为Pytorch,硬件配置为:Inter Core i7-

****************,GPU为RTX2060,显存6 GB,RAM为8 GB。训练与测试采用

COCO2017数据集,实验中模型优化器为Adam,训练迭代次数为3×105 次,学习率为4×10-

4。实验对比结果如表2所示,其中前两行为原论文中的数据,mAP代表模型的检测精

度;FLOPs是卷积时发生的浮点运算次数,代表模型的计算量,且1×GFLOPs=109×FLOPs。

针对上述问题,提出一种基于视觉的动作评估方法,首先采用改进OpenPose算法获取人

体关键点坐标位置,根据关键点信息計算测试动作与标准动作的相似度,以此对视频动作进行

评估。

2 OpenPose算法(OpenPose algorithm)

基于深度学习的人体姿态估计方法分为自顶向下和自底向上,自顶向下是先检测图中的每

个人,再对每个人进行关键点检测,典型算法如RMPE[7]、CPN[8];自底向上则先检测图中所

有人的关键点,再将关键点分配给每个人,典型算法为OpenPose[9-10]。由于后者有较好的鲁

棒性,因此本文采用OpenPose作为姿态检测算法。算法流程如图1所示,网络结构如图2所

示。输入图像首先经过VGG19网络得到深层特征,然后将特征经过多阶段网络,前四个阶段

用来预测人体部件亲和场(Part Affinity Fields, PAFs),它是一组包含x、y方向的二维向量

场,用于表征人体关键点之间的关联度;后两个阶段用来预测人体关键点热度图(18 个

Heatmaps),通过多阶段的迭代来不断细化和提纯预测结果,最后通过二分匹配将关键点正确

分配给每一个人并连接生成人体骨架图。

传统OpenPose模型以VGG19作为特征提取部分,整体网络结构深且模型参数量较大,对

计算机硬件设备要求较高,很难实时检测。因此,本文对网络结构进行改进,更换特征提取网

络并减少预测部分的重复阶段数,使模型轻量化从而提高系统运行速度,达到实时检测的效

果。

3 基于Oct-MobileNet的改进OpenPose模型(Improved OpenPose model based on Oct-

MobileNet)

3.1 八度卷积与Oct-MobileNet

在自然图像中,高频信息构成图像的边缘和细节,而低频信息主要构成图像灰度等级,对

图像结构的决定作用较小。同样,卷积层的输入、输出通道也存在高、低频分量。八度卷积

OctConv[11]的思想就是将卷积特征图进行分频表示,并将低频特征图大小减半,从而有效减

少存储和计算量。

八度卷积中的输入、输出通道特征以及卷积核都被分解为高频部分XH、YH、WH和低频

部分XL、YL、WL;超参数α表示低频信息通道占比,且αin=αout。如图3所示,高频输出

YH=f(XH;WH→H)+upsample(f(XL;WL→H),2),低频输出

YL=f(XL;WL→L)+f(pool(XH,2);WH→L)。其中,YH→H是高频输入XH卷积

得到的部分高频输出,由于低频与高频通道尺寸不同,另一部分高频输出YL→H需要低频输

入XL先卷积再进行二倍上采样后得到,最后两者融合得到整体高频输出YH。同理,YL为

YH→L与YL→L的融合,其中高频输入到低频输出先进行平均池化再卷积。这些融合过程保

证了高频与低频特征之间的信息交换,目的是进一步优化最后的高频输出。

以深度可分离卷积为核心的移动端轻量级网络MobileNet,是将一个标准卷积操作分成了

逐通道卷积(Depthwise, DW)和逐点卷积(Pointwise, PW),相比于VGGNet,在精度上

略微降低但模型参数量大幅减少,运算成本更低[12]。因此,本文将八度卷积与MobileNet进

行有机结合,结构设计如图4所示。为了得到与VGG19输出相同的维度特征,只选用

MobileNet V1的前十层并加入两层降维卷积,将所有深度可分离卷积里的DW卷积和PW卷积

融入OctaveConv模块,使网络进一步降低参数量,在减少低频信息冗余的同时更注重高频信

息,使提取的深层特征中包含更多有效信息。网络具体参数如表1所示,其中第一层卷积为普

通卷积,第二层开始为深度可分离卷积,并且在第一个OctaveConv模块中设置αin=0、

αout=0.5,即关闭低频输入通道,只保留由高频输入产生的两条路径;最后一个OctaveConv模

块设置αin=0.5、αout=0,关闭低频输出通道,使多频特征表示恢复成正常大小的高频特征;中

间的模块则设置αin=αout=0.5,保证提升精度与降低参数两者平衡。

3.2 改进OpenPose整体结构及特征可视化

本文将Oct-MobileNet作为改进OpenPose的主干特征提取网络,改进结构如图5所示。在

外部结构上,将原来四个阶段PAFs预测减至三个阶段,预测Heatmaps减至一个阶段,降低整

体冗余。在内部细节中,原先预测PAFs与Heatmaps中前五个卷积块是由三个3×3标准卷积构

成的,现将第一个3×3卷积变为1×1卷积,第三个3×3卷积变为膨胀系数为2的空洞卷积,使

其保留与原先相同的感受野并进一步降低卷积核参数量;五个卷积块依次连接,块内的卷积再

残差相连,使整体获得增大感受野,提升捕获远程信息的能力[13]。

为了验证八度卷积对深层特征及预测阶段效果是否产生增益,对改进OpenPose特征提取

阶段、预测阶段PAFs 3及Heatmaps 1进行特征可视化,分析Oct-MobileNet与普通MobileNet

的效果。如图6所示,融合了八度卷积的MobileNet网络提取的深层特征对人体轮廓这些高频

特征分量更重视,对其他低频分量则起到抑制作用,证明了八度卷积模块融入深度可分离卷积

可以产生互补,对后续预测阶段的效果也能带来进一步的提升。

3.3 模型性能对比分析

实验在Windows 10系统下进行,深度学习框架为Pytorch,硬件配置为:Inter Core i7-

****************,GPU为RTX2060,显存6 GB,RAM为8 GB。训练与测试采用

COCO2017数据集,实验中模型优化器为Adam,训练迭代次数为3×105 次,学习率为4×10-

4。实验对比结果如表2所示,其中前两行为原论文中的数据,mAP代表模型的检测精

度;FLOPs是卷积时发生的浮点运算次数,代表模型的计算量,且1×GFLOPs=109×FLOPs。


发布者:admin,转转请注明出处:http://www.yc00.com/web/1714698302a2497951.html

相关推荐

发表回复

评论列表(0条)

  • 暂无评论

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信