APP下载

基于关键点注意力的轻量级坐姿识别

2023-05-14余承健洪洲刘沛贤

计算机时代 2023年5期

余承健 洪洲 刘沛贤

摘  要: 提出了基于关键点注意力的轻量级坐姿识别算法。该算法从网络结构轻量化进行设计,融入了空洞卷积和残差注意力模块,并设计了关键点注意力模块,利用空间信息增强上下肢之间对应关键点的特征关联。本文结合关键点空间距离规则,提出了一种坐姿评价规则对不同坐姿进行评分。实验结果表明,本文算法mAP达到了73.2%,参数量缩小76%,能够对不同坐姿给予正确的评分。

关键词: 姿态估计; 空洞卷积; 残差网络; 坐姿评价; 关键点注意力

中图分类号:TP391          文献标识码:A     文章编号:1006-8228(2023)05-72-05

Lightweight sitting posture recognition algorithm based on key point attention

Yu Chengjian1, Hong Zhou2, Liu Peixian3

(1. Guangzhou City Polytechnic, Academic Affairs Office, Guangzhou, Guangdong 510408, China;

2. School of Information Engineering, Guangdong Polytechnic College; 3.Guangdong Jinritoutiao Network Technology Co., Ltd)

Abstract: In this paper, a lightweight sitting posture recognition algorithm based on key point attention is proposed. The algorithm is designed from the lightweight network structure, the atrous convolution and residual attention module are incorporated, and the key point attention module is designed, which uses the spatial information to enhance the feature association of the corresponding key points between the upper and lower limbs. Combined with the key point space distance rule, a sitting posture evaluation rule is proposed to score different sitting posture. The experimental results show that the mAP of the proposed algorithm reaches 73.2%, the number of parameters is reduced by 76%, and it can give correct scores for different sitting postures.

Key words: posture estimation; atrous convolution; residual network; sitting posture evaluation; key point attention

0 引言

青少年的坐姿习惯在其成长过程中应引起重视。长期不正确的坐姿会对身体造成一定的伤害[1],例如眼睛离桌子过近会对眼球造成过度负担,易导致近视;弯腰伏桌会改变原有的颈椎弧度,造成椎骨不必要的受力而诱发肩膀痛;长期趴桌子导致肋骨架空间被压缩,氧气吸入量减少等等。目前,市场上出现了一些青少年坐姿矫正设备[2],但无法从根本上解决问题,应当从纠正坐姿习惯为切入点进行预防。

坐姿识别方法可以分为基于传感器的坐姿识别方法和基于图像的坐姿识别方法[3-4]。基于传感器的坐姿识别方法,需要借助陀螺仪、磁力针、气压计等硬件设备,存在外置设备穿戴步骤较为繁琐的缺点。基于图像的坐姿识别方法的原理为对输入图像中的目标对象进行姿态估计,主要有基于传统的姿态估计方法与基于深度学习的姿态估计方法。本文聚焦于自底向上的姿态估计算法研究。OpenPose算法[5]是自底向上方法的主要代表之一,该算法包含多个阶段,每个阶段都通过生成关键点位置热力图进行定位,并使用关键点之间的关系向量图来对位置点配对分组。该算法为了保持高精度估计,存在运算量过大的缺点,本文将对此进行轻量化设计。此外,本文基于二维空间关键点的距离关系设计坐姿评分方法,对评分过低的坐姿予以提醒。

1 轻量级坐姿识别算法

本文利用二维图像姿态识别和坐姿评分方法进行坐姿识别算法的设计,其中姿态识别算法使用OpenPose模型进行自底向上的关键点预测及归类。

1.1 原生OpenPose模型

OpenPose模型包含多个递进的推导阶段,各个阶段的结构相同,前一个阶段为后一个阶段提供输入,使得后期推导阶段的准确率逐步增加。每个阶段都包含关键点检测和局部亲和力表示两个分支,其中局部亲和力表示将关键点进行关联分组。不同阶段的结构如图1所示。单个阶段的前馈传播方案为双分支结构,其中一个分支用于生成二维的身体部位热力图,另外一个分支用于生成一组身体部位亲和力的二维向量场。此处定义[S]和[L]两個集合,分别表示两个分支生成的热力图和二维向量场,公式如下:

[S=(S1,S2,…,SJ)]  ⑴

[L=(L1,L2,…,LC)]  ⑵

其中,集合[S]是关键点检测的热力图,[J]和[C]分别表示热力图和二维向量场个数,[Sj∈Rw×h],[j∈{1…J}]。OpenPose模型包含多个阶段,分别记第一个阶段的关键点检测和局部亲和力表示分支结果为[S1=ρ1(F)]和[L1=?1(F)],其中[ρ1]和[?1]分别表示第一阶段的推导,[F]为特征图输入。从第二个阶段开始,阶段[t]的分支生成结果为:

[St=ρtF,St-1,Lt-1,   ?t≥2]  ⑶

[Lt=?tF,St-1,Lt-1,   ?t≥2]  ⑷

1.2 改进的OpenPose算法

本文對双分支结构进行改进,降低参数量和计算量,从而提升模型的推理效率。为了生成关键点热力图和二维向量场,原有模型使用了两个预测分支进行推导,造成了特征提取的冗余计算。因此,本文将两个分支的前半部分进行合并,在单个阶段内的前期特征提取过程中使用相同的共享参数。不同阶段前馈传播结构如图2所示,改进后的阶段[t]仍以阶段[t-1]的输出进行深层特征的迭代学习,但每个阶段中使用合并分支作为双分支的前置结构,减少网络深度及单次卷积的覆盖范围,以减少计算量。其中[ρt]和[?t]的计算量与图1相比大幅减少,部分头部结构由[ωt]进行权重共享,且在[ωt]中引入空间卷积和残差模块提高感受野和特征复用能力。为减少轻量级姿态估计模型与原生模型相比带来的特征采样范围缺失,本文使用空洞卷积代替传统卷积[6],以缩小两者特征信息利用范围之间的差异。该类卷积用扩张率来表示增加孔洞多寡,过程可以表示为:

[y[i]=k=1Kxi+r×k×w[k]]  ⑸

其中,[y[i]]表示位置[i]的特征输出,扩张率为[r],[w[k]]表示滤波器,[K]为滤波器尺寸,[x[i]]为原始输入。修改后的第一阶段的关键点热力图和局部亲和力表示分支结果分别为[S1=ρ1(ω1(F))]和[L1=ρ1(ω1(F))],其中[ω1]表示主分支的共享参数过程。后续阶段[t]([t≥2])的特征提取过程为:

[St=ρtωt(F,St-1,Lt-1),   ?t≥2]  ⑹

[Lt=?tωt(F,St-1,Lt-1),   ?t≥2]  ⑺

其中,[ωt]表示后续阶段[t]([t≥2])主分支的共享参数过程。为了将最大限度地计算非局部特征,本文在主分支使用多个连续空洞卷积扩大感受野,将连续叠加后的特征提取范围与原始输入的分辨率保持一致,从而将全局信息作为后续细化分支的参考。虽然空洞卷积能够大幅提高感受野,但长距离间隔采样的做法在移动滑动窗口的过程中会漏掉某些关键点,造成特征信息参考的缺失。因此本文将对关键点检测分支和二维向量场分支提供了残差模块[7],该计算过程可表示为:

[y=Fx,Wi+x]  ⑻

其中,函数[Fx,Wi]表示要学习的残差映射,[y]和[x]分别表示特征输出和输入。

1.3 关键点注意力模块

对于关键点检测分支的监督条件,需要将标注关键点进行二维高斯建模生成置信度图,每个置信度图代表某个特定身体部位的像素位置。若图像中出现多个个体,则对于个体[k]的置信度图标签,记其关键点[j]的置信度图为[S*j,k],则置信度图上的任一位置p的值表示为:

[S*j,k(p)=exp-||p-xj,k||22σ2]  ⑼

其中,[xj,k∈R2]表示身体部位的标签位置,[σ]用于控制高斯建模的峰值。模型要预测身体部位的置信度标签是多个个体集合的最大值,如下式所示。

[S*j(p)=maxkS*j,k(p)]  ⑽

对于多峰的高斯混合模型,[S*j(p)]取每个峰的最大值而非平均值,以此保留显著性。本文关注于单人坐姿判断,上下肢之间对应的关键点应有更强的特征关联。因此本文设计了关键点注意力模块以提取非局部特征,并融合到关键点分支[St(t≥1)]的末端输出,对手臂、手腕、眼睛、肩膀等部位的权重予以增强。上半身关键点的区分依赖于下半身关键点的空间信息,例如左手臂与左腿在同一侧,眼睛通常位于左右身体两侧的中间。关键点注意力模块如图3所示,本文通过卷积层生成双通道特征图,并进行宽、高两个维度的排序,得到关键点选取坐标。图中[g1]和[g2]表示按下标进行特征点索引分配的函数,绿色特征图为单通道特征,通过排序算法输入归一化后的特征图以获得不同维度的索引。关键点注意力模块的关键在于位置下标信息的学习,该过程表示为:

[y[i]=g2(h2,g1(h1,x[i]))]  ⑾

其中,[h1]和[h2]分别表示排序后的信息下标,[g1]和[g2]表示两个维度上的索引分配函数。由于第二个维度的信息分配是在第一个维度的特征点移动结果上进行,因此每个特征点都可以移动到任意区域。通过信息下标学习,原有位置上的特征点可以与卷积学习生成的其他特征点进行关联,从而获得空间上的注意力信息。

在模型推理过程中,关键点检测分支使用非极大值抑制生成多个候选部位。每个阶段的关键点检测分支都使用L2范式度量预测值与标签值之间的差异,并进行反向传播,如下式所示。其中[W]是一个二进制掩码,且关键点部位的标签缺失时有[Wp=0],避免预测过程中对正向的预测做出错误惩罚。

[ftS=j=1JpWp·||Stj(p)-S*j(p)||22]  ⑿

2 評价规则

本文根据同一个体不同关键点的二维位置,从单侧距离评价及双侧对称损失的角度出发,对坐姿评分规则进行设计。分别记[El]、[Wr]、[S]和[Ey]为手肘、手腕、肩膀和眼睛关键点位置,设关键点位置集合[P={El,Wr,S,Ey}],对[|El-Wr|]以及未检测出的关键点进行惩罚,对[|Wr-S|]、[|El-S|]、[|Ey-S|]给予奖励,将各个部位关键点的水平高度对齐,这一过程可表示为:

[gPH=β1gdstPH-β2i=1Igper(Pi)]  ⒀

其中,[H={L,R}]表示为身体对侧,总评分为两侧分数相加,[β1]和[β2]为可调节系数,[I]为关键点个数。[gdst(PH)]表示身体部位的奖励及惩罚项,表示为:

[gdstPH=α1(||WrH-SH||2+ElH-SH2]

[+EyH-SH2)-α2||ElH-WrH||2]  ⒁

其中,[α1]和[α2]是调节系数。[gper(Pi)]表示为对齐惩罚和关键点缺失惩罚,如下式所示,其中[γ]表示调节参数。当且仅当关键点缺失的时候,有[Wp=0]。

[gperPi=Wp·Pi+γ||PRi-PLi||2]  ⒂

3 实验分析

3.1 MSCOCO数据集上的性能对比

为了验证基于关键点注意力的轻量级坐姿识别算法的有效性,本文在MSCOCO数据集上进行对比实验,将所提算法与ArtTrack[8]、原生OpenPose模型[5]在准确率和耗时上进行对比。本文使用的CPU为Intel i7-9700K,GPU型号为NVIDIA GeForce RTX 2080 Ti。性能对比结果如表1所示。在计算量(Params)和推理速度(FPS)上相比,本文算法与ArtTrack[8]及原生OpenPose模型[5]具有明显优势。而在准确率上,本文算法合并分支的做法虽然减少了对图像特征细节的提取能力,但借助于空洞卷积的感受野提升以及残差结构的特征复用,姿态估计的精度仍维持在高水准。

3.2 本文算法的消融实验对比

为了验证空洞卷积及残差注意力能够在增加感受野的同时引入低层特征信息,本文设计了相应的消融实验,结果如表2所示。其中实验组1仅使用合并分支结构而未引入额外的注意力方法。组2和组3的结果优于组1,说明额外方法可以提升特征提取能力,将更多的特征纳入考虑范畴。组2的结果略优于组3,说明空洞卷积感受野的提升有利于更大范围的信息采样,长距离特征可以使网路考虑当前维度的不同信息。组4优于组2和组3,说明残差注意力能够与空洞卷积组合,一定程度上消除间隔采样导致的部分信息缺失,提高整体准确率。

3.3 坐姿评价可视化实验

本文选取了托腮、身体前倾、侧身、双手离开桌面等多个不同坐姿图像进行评分测试,以此验证评价规则的有效性。实验结果如图4所示。图(a)和图(b)等正确坐姿获得了较高的评分,说明本文所提评价规则能够对正确姿态做出正面评价。图(c)、图(d)和图(e)亦获得了不错的评分,说明评价规则对于青少年学习过程中可能出现的挠头思考、适当前倾等行为具备一定的兼容性。此外,评价规则对于图(f)、图(g)和图(h)等包含驼背、过度前倾、向前侧倾等不良坐姿给出了较低的评分,验证了该规则对负样本评价的有效性。

4 结束语

针对青少年不良坐姿问题,本文提出了基于关键点注意力的轻量级坐姿识别算法。该算法通过合并关键点提取分支降低了推理耗时,同时引入空洞卷积提高感受野,最大限度地计算非局部特征,并利用残差结构进行特征复用。此外,本文在关键点分支中设计了卷积层生成关键点的注意力模块,让网络关注于特定部位。最后,本文在姿态估计结果的基础上提出了一种坐姿评价规则。实验结果表明,本文所提算法及评价规则能够高效地对提取图像特征及姿态估计,对不同坐姿的评分结果也验证了所提规则的有效性。

参考文献(References):

[1] 陈广智.要重视体育在青少年发育时期的重要作用[J].内蒙古科技与经济,2002(9):136

[2] 吴沛雯,张畅.可纠正青少年坐姿的平衡椅设计研究[J].家具,2018,39(4):58-61

[3] 姚俊豪.基于薄膜压力传感器组的人体坐姿识别方法研究[D].硕士,沈阳大学,2021

[4] 曾星.基于深度图像的坐姿识别技术及应用研究[D].硕士,国防科技大学,2017

[5] Qiao S, Wang Y, Li J. Real-time human gesture gradingbased on OpenPose[C]//2017 10th International Congress on Image and Signal Processing, BioMedical Engineering and Informatics (CISP-BMEI).IEEE,2017:1-6

[6] Yu F, Koltun V. Multi-scale context aggregation by dilatedconvolutions[J]. arXiv preprint arXiv:1511.07122,2015

[7] He K, Zhang X, Ren S, et al. Deep residual learning forimage recognition[C]//Proceedings of the IEEE conference on computer vision and pattern recognition,2016:770-778

[8] Insafutdinov E, Andriluka M, Pishchulin L, et al. Arttrack:Articulated multi-person tracking in the wild[C]//Proceedings of the IEEE conference on computer vision and pattern recognition,2017:6457-6465