基于空间特征的BI-LSTM 人体行为识别

2021-04-10 05:50付仔蓉吴胜昔吴潇颖顾幸生
关键词:关节点骨骼准确率

付仔蓉, 吴胜昔, 吴潇颖, 顾幸生

(华东理工大学能源化工过程智能制造教育部重点实验室,上海 200237)

人体行为动作识别是以人为中心,研究人体活动的重要分支之一。基于机器视觉的人体行为识别是自动解释图像或者视频序列中固定场景的人体正在执行什么动作或活动,如从2D 图像中提取卷积特征,利用卷积神经网络(CNN)实现自动姿势识别[1]。人体行为识别在人机交互、智能监视系统[2]、视频搜索、游戏、行人检测、医疗保健自动化系统[3]、智能驾驶和智能家居等方面具有实际的应用前景。

在过去的几十年中,研究者广泛使用彩色图像(RGB)数据来识别人体行为动作。如 Ciocca 等[4]利用输入的RGB 图像进行动作识别与跟踪,但由于其背景杂乱、身体遮挡、观察点角度不同、光线照明变化、执行率和生物特征变化等引起的一系列问题,造成行为识别困难。随着具有成本效益的深度图像(RGB-D)传感器如Microsoft Kinect 和Asus Xtion 等的开发,Liu 等[5]提出了一种多模式相关表示学习(MCRL)模型,从RGB-D 视频中识别人类动作。与传统彩色图像数据相比,深度数据具有对光线和照明变化不敏感、更容易从杂乱的背景中减去前景和提供场景的3D 几何结构信息等特点,使用深度数据的人体行为识别引起了研究人员的广泛关注。随着易于使用的深度传感器和相关算法的推进,可以从深度图像中轻松地进行高精度的关节位置的计算,从而获得骨骼关节点的3D 坐标,使得基于骨骼关节点坐标的人体行为识别获得了新的发展。Song 等[6]提出了一种多流图卷积网络(GCN)对不完整且嘈杂的骨骼数据进行行为识别并取得了较好的效果。由于骨骼关节点3D 坐标的简洁性、鲁棒性、视图独立表示和骨骼节点特征矢量运算的快速性,近几年使用骨骼关节点进行人体识别成为一个较为活跃的研究课题。

随着RGB-D 传感器的快速发展,Jamie 等[7]从单个深度图像快速准确地预测骨骼关节点的3D 坐标位置,促进了使用关节点进行人体行为识别的研究。Vantigodi 等[8]使用3D 骨架关节坐标提取每个关节的时间方差及其时间加权方差作为分类的特征,基于SVM 在人体动作检测数据集(MHAD)上的识别准确率达到了96.06%,充分展示了利用3D 关节点位置数据进行人体行为识别的可行性。从3D 关节点位置提取出重要的特征来进行人体行为动作分类十分关键。Ahmed 等[9]采用关节相对距离(Joint Relative Distance,JRD)和关节相对角度(Joint Relative Angle,JRA)来编码不同骨骼关节的时空运动模式,有效地提高了整体识别准确率;Liu 等[10]将骨骼关节点的所有坐标转换为距离矩阵进行视图不变下的动作识别,表明关节之间的距离包含了身体的全局结构信息,关节之间的角度信息可以明显描述出局部动态变化,两者结合可以有效地区分人体行为。随着人工智能的发展,深度学习在计算机视觉方面取得了显著的成功,基于递归神经网络(RNN)在语音、文本和图像识别中被广泛使用,其在人体行为识别方面也不甘落后。Sharma 等[11]提出了一种建立在多层RNN之上的LSTM 模型,选择性地关注部分动作视频帧,并拍摄一些动作视频后对其进行分类;Zhu 等[12]使用改进RNN 的端对端深LSTM 网络,基于骨骼关节点坐标来进行行为识别,在数据集HDM05 上达到了97.25%的识别准确率;Kwon 等[13]通过双向长短期记忆网络(Bi-LSTM)学习更重要和全面的空间和时间信息来对人体行为进行划分。

视图变化带来了严重的运动和外观变化,这使得相同类型的不同动作难以区分,因此在任意视图下的人体动作识别仍然是一个挑战。针对这一问题,本文从3D 骨骼节点数据中提取视图和尺度不变的欧式距离特征,以及关节点之间的相对角度特征,组合构成特征集合来进行人体行为划分。近来深度学习方法在各种计算机视觉方面表现出优异的效果,其中LSTM 模型可以更好地获取较长距离数据间的依赖关系,在行为识别等时域序列上取得了优异的效果。然而传统的LSTM 从单一方向进行学习,忽略了未来的上下文信息。人类行为动作是由一系列动作组成,一些不同的动作在开始时可能具有类似的动作,但最终动作结果却完全不同。在LSTM 基础上改进的BI-LSTM 模型可以学习双向空间和时间信息,模拟动作的时空信息,从而对类似动作进行更准确的划分。本文采用BI-LSTM 模型加强上下双向时间信息,同时对距离和角度空间信息进行互补,在标准数据集上的识别准确率达到了97.8%,取得了良好的识别效果。

1 BI-LSTM 人体行为识别流程

选取从深度相机Kinectv2 获得的25 个骨骼关节点中较为活跃的20 个关节点,以减少干扰和计算量,计算其相对参考点的视图和尺度不变特性的距离和角度特征集合。利用BI-LSTM 挖掘出更深层次的较长骨骼序列中上下文的时间信息,与空间特征相结合对人体行为进行区分。总体流程如图1 所示。

图1人体行为识别总体流程图Fig.1Overall frame of human action recognition

利用深度相机获取人体关节的三维坐标,分为训练数据集和测试数据集两部分。训练数据集用于模型构建和参数调整,训练完成后利用测试数据集测试模型性能。本文使用标准数据集UTKinect-Action3D。

2 骨骼空间特征提取

2.1 相对距离特征

在人体骨骼中,各个关节点之间的相对距离特征具有良好的视图和尺度不变特性,可以描述出人体运动时局部感兴趣区域的特征,而且对光线的明暗程度和视角的微小变化具有很强的适应性,因此本文采用关节点的相对距离作为人体行为划分的特征。人体在运动时,各个关节点的活跃程度是有差异的,例如手部和脚部的位置在不同动作下有较为明显的差异。为了消除与动作识别无关的关节点和减少计算量,选取从RGB-D 传感器获取的25 个关节点中较为活跃的20 个关节点 s={1,2,···,20} ,如图2所示。其中头部关节点1 在人体运动时与其他关节点的位置变化较大,对动作划分有良好的区分性;脊柱关节点3 在任何运动过程中几乎保持稳定静止,具有很好的参考性,因此选取头部关节点1 和脊柱关节点3 为参考点。

图220 个关节点图Fig.2Map of20joint points

同一副骨架在第N 帧里面的两个关节点i ∈{2,4,···,20}和参考点 j ∈{1,3} 的三维坐标分别为Pi=(xi,yi,zi)和 Pj=(xj,yj,zj) 。关节点 i 和参考点j之间的相对距离(JRD)可以定义为3D 空间中这两个关节之间的欧几里德距离 Di,j,其计算公式如式(1)所示。例如右手部关节点12 到头部参考点1 的欧式距离 D12,1和到脊柱参考点3 的欧式距离 D12,3如图3 所示。

在很多情况下,人体的身高和体重等身材体型的差异较大,为了消除这种情况造成的影响,提高识别准确率,需要对 Di,j进行归一化,计算公式如下:

其中, d 为人的肩膀中心关节点2 到脊柱中心关节点3 的欧几里德距离 D2,3,如图3 所示。

现有20 个骨骼关节点,深度相机获取到N 帧骨骼序列,则在同一帧中会产生36 维的距离特征向量。所有N 帧骨骼序列中的36×N 维向量组成了相对欧式距离特征 D′。

图3右手到参考点距离Fig.3Distance of right hand to reference point

2.2 相对角度特征

人体部位的运动若仅仅由相对欧式距离特征建模则会忽略关节和关节角度的位置信息,不能充分运用骨骼序列中包含的特征信息,所以本文同时提取了相对角度特征(JAR)。它是相邻身体部位对的静态姿势的良好描述,而且关节点之间的相对角度特征具有很好的尺度不变性,可直接由关节点三维坐标求出,计算简单,并且对不同动作具有良好的识别效果。例如人在行走和喝水时,手部和头部相对参考点脊柱的相对角度是不一样的。

关节点使用的是2.1 节中的20 个关节点s={1,2,···,20},因为其中的3 号脊柱关节点在任何运动过程中几乎均保持稳定静止,所以选取脊柱关节点为参考关节点,并且命名为关节点 r ,同一副骨架在第N 帧中任意两个不同关节点 i ∈s 和 j ∈s (且i 和j 不能是参考关节点),其中关节点 i 的三维坐标为 Pi=(xi,yi,zi) ,关节点 j 的三维坐标为 Pj=(xj,yj,zj) ,则关节点 i 和 j 之间相对脊柱参考关节点r=(xr,yr,zr)的相对角度特征 θi,j的计算公式见式(3)~ 式(7)。例如右肩膀关节点9 相对于右手关节点12 的角度特征 θ9,12如图4所示。

其中

现有19 个关节点相对于参考点 r 有N 帧骨骼序列,则在同一帧中会产生171 维的角特征向量,所有N 帧中则会有171×N 维向量组成相对角度特征 θ 。

图4右肩膀与右手的相对角度θ9,12Fig.4Relative angle θ9,12 of the right shoulder and right hand

2.3 特征集合

关节向量由两个相邻的关节点组成,而关节角度由两个相邻的关节向量组成。将相对距离特征和相对角度特征集中表示,充分利用骨骼数据中包含的信息来划分人体行为。令特征集合

其中: D′为欧式距离特征集合; θ 为角度特征集合。将同一副骨架在N 帧内的(36+171)×N 维特征集合v作为特征输入,利用BI-LSTM 网络进行人体行为动作识别,示意图如图5 所示。

3 网络模型

3.1 LSTM 网络模型

图5特征集合划分行为示意图Fig.5Diagram of feature set partitioning action

RNN 架构在处理和查找音频、视频和文本等时空数据中的隐藏模式显示出了强大的功能。它以顺序方式处理数据,由于其参数计算量较大,在RNN处理数据序列后期时,初始输入序列对参数更新的影响变得可以忽略不计,导致出现梯度消失的问题。而LSTM 正是在RNN 基础上添加门机制和存储单元来解决这个问题的改进算法,其具体结构如图6 所示。控制长期序列模式识别的LSTM 特殊结构为:输入数据 xt、输出门 ot、保持存储单元随时间(t)状态的遗忘门 ft、影响记忆信息的输入门 it、决定记忆和遗忘信息的存储单元 ct和调节信息流入或流出的非线性门控单元。式(9)~ 式(14)为LSTM 单元执行的过程,具体计算过程如图7 所示。

图6LSTM 结构Fig.6LSTM structure

图7LSTM 执行过程Fig.7LSTM execution process

其中: Wxi、 bi分别为输入数据和输入门之间的权重矩阵和偏差量矩阵; Wxf、 bf分别为输入数据和遗忘门之间的权重矩阵和偏差量矩阵; Wxcbc分别为输入数据和存储单元之间的权重矩阵和偏差量矩阵:Wxo、 bo分别为输入数据和输出门之间的权重矩阵和偏差矩阵: Whi、 Whf、 Who分别为隐藏状态和各个门之间的权重矩阵; tanh 是特殊函数; σ 是sigmoid 型函数; ◦ 是特殊运算符号; ht−1为t−1 时刻的隐藏状态; xt为 t 时刻的输入骨骼特征; ft为 t 时刻的遗忘门,它在需要时可以清除来自存储单元的信息;输出门 ot保存着即将到来的骨骼数据的信息,它是根据当前骨骼帧的输入 xt和前一帧骨骼数据的隐藏状态 ht−1来计算。通过输出门 ot和存储单元ct来计算 t 时刻的骨骼数据的隐藏状态 ht,依次循环可以计算出每个时刻骨骼数据的隐藏状态。动作识别不需要LSTM 的中间进行输出,而是直接输出动作的类别,所以采用在LSTM 网络的最终状态上应用softmax分类器输出最终行为动作分类的结果。

3.2 双向长短期记忆网络

BI-LSTM 是LSTM 的改良形式,使用LSTM 对较长骨骼序列进行建模时,无法确定从后面骨骼序列到前面序列的信息。在BI-LSTM 中,使用一前一后两个相反方向的LSTM 来解决这个问题。 t 时刻的输出结果不仅取决于骨骼序列中的先前帧,还取决于即将到来的帧。BI-LSTM 的结构简单,由两个相反方向的LSTM 堆叠在一起,一个LSTM 向前传递,另外一个朝着相反的方向传递,最后基于两个LSTM 的隐藏状态组合计算人体行为结果分类输出。图8 所示为BI-LSTM 的总体框架结构,前向LSTML得到隐藏状态 hLt(t=0, 1, ···, n) ,见式(15);后向 LSTMR得到隐藏状态 hRt(t=0, 1, ···, n) ,见式(16);最后将两式组合得到BI-LSTM 的隐藏状态,见式(17)。将最终的隐藏状态通过softmax 得到最后的行为动作分类结果。

图8BI-LSTM 网络层Fig.8BI-LSTM layer

4 实验与分析

4.1 UTKinect-Action3D 数据集

本文选用的数据集是Xia 等[14]制作的UTKinect-Action3D 标准数据集。该数据集使用深度摄像机Kinect 以每秒30 帧收集了10 种人体行为动作,包括走路、坐下、站起、拿起、抬起、扔、推、拉、挥手和拍手,每个动作由不同的10 个人重复做2 次。该数据集有3 种格式,包括分辨率640×480 的RGB 图像、分辨率320×240 的深度图像、3D 坐标的骨骼关节点数据。数据集包含6220帧、200 个动作样本,每个动作样本的操作长度范围从5 帧到120 帧。数据集拍摄角度差异大并有部分身体遮挡,如图9 所示。由于视点的变化和身体遮挡,使其具有挑战性。

4.2 BI-LSTM 模型参数配置及评价指标

BI-LSTM 模型的参数设置会影响动作识别的效果。经过多次反复实验,确定BI-LSTM 模型参数中批数据尺寸和Epoch 设置为16 和400,学习率为0.001,隐藏层设置为100 时训练与识别效果最好。损失函数采用交叉熵,优化算法为Adam,其余参数均为默认值。采用行为动作识别的准确率作为评价指标,计算公式如下:

其中:p 为正确识别出测试集中的动作的数量;q 为测试集所有动作的数量。

4.3 实验结果及分析

在UTKinect-Action3D 数据集中,不是每一帧都有动作发生,为了提高识别的准确率,减少计算量,选取动作发生时间段内的帧,提取骨骼数据的相对距离特征和相对角度特征。将10 人中的前6 人的动作作为训练集,后4 人的动作作为测试集。将相对距离特征、相对角度特征分别输入到LSTM 中进行行为动作的划分,结果如表1所示。从表1 中可以看出,结合相对距离和相对角度的特征集合比只使用一种相对特征的准确率要高,识别效果也更好。图10示出了JRD+JAR 特征集合在LSTM上的实验结果。测试集的准确率在Epoch=400 时趋于稳定,最高可达到92.1%。并且相对距离特征更能描述人体运动的特点,原因可能是相对距离特征的维数相对于角度特征要高。

图9UTKinect-Action3D 标准数据集Fig.9UTKinect-Action3D standard dataset

表1不同特征在LSTM 上的实验结果Table1Experimental results of different features on LSTM

图10JRD+JAR 特征集合在LSTM 上的实验结果Fig.10Experimental results of JRD+JAR feature on LSTM

同样的测试集和训练集,JRD+JAR 特征集合在BI-LSTM 上的实验结果如图11 所示。测试集的准确率在Epoch=400 时趋于稳定,最高可达到97.8%,相比于LSTM 模型,准确率提高了5.7%。BI-LSTM 可以捕获三维骨骼坐标随时间演变的深层时空特征,混淆矩阵实验结果如图12 所示。从图12 中可以看出,大部分动作类有较好的识别效果,只有两个动作类识别率低于90%,其中将抬起识别为走路的误判率为22%、将推识别为扔的误判率为20%,因为这两类动作具有相似的运动。即使这样,本文的实验方案仍然具有良好的识别准确率。

图11JRD+JAR 特征集合在BI-LSTM 上的实验结果Fig.11Experimental results of JRD+JAR feature on BI-LSTM

图12UTKinect-Acition3D 数据集混淆矩阵图Fig.12Confusion matrices on UTKinect-Action3D dataset

将直接输入骨骼数据特征、提取相对距离、相对角度特征在BI-LSTM 上进行对比,结果如表2 所示。可以看出,准确率与LSTM 模型相比有明显提高。

表2不同特征在BI-LSTM 上的实验结果Table2Experimental results of different features on BI-LSTM

不同特征输入的结果显示,使用JRD+JAR 特征在BI-LSTM 上的识别准确率比直接输入关节点3D位置时提高了10.3%、比提取JRD 特征提高了5.0%、比提取JAR 特征提高了8.9%,说明相对距离特征加上相对角度特征充分使用了骨骼数据中包含的空间运动信息,对人体行为识别有更好的效果。

本文使用相对距离和相对角度特征在UTKinect-Acition3D 数据集上进行行为动作识别,准确率为97.80%,可以有效且准确地实现动作分类。为了验证本文方法的识别效果,将BI-LSTM 模型在UTKinect-Acition3D 数据集上的识别结果与其他网络结构进行比较,结果见表3。其中Random forest[15]是从骨骼数据中提取成对距离特征使用随机森林法来进行识别;SVM[16]使用关节点的角度作为特征,通过SVM进行识别;ST-LSTM 的树状结构模型[17]输入数据是骨骼数据,该模型验证实验同样采用留一法交叉验证;多层LSTM[18]使用关节和联合线之间的距离的几何关系特征来分类。

从表3 可以看出,BI-LSTM 模型在UTKinect-Acition3D 数据集上的识别准确率整体优于其他模型,比Random forest 的最高准确率提高了9.90%,比SVM 的最高准确率提高了3.73%,比ST-LSTM 的最高准确率提高了0.80%,比Multilayer LSTM 的最高准确率提高了1.84%。结果表明基于骨骼的相对距离和相对角度特征的BI-LSTM 模型具有较强的识别能力,提高了识别准确率。

表3BI-LSTM 与其他文献方法在UTKinect-Action3D 数据集上的比较结果Table3Comparison results of BI-LSTM model and other models on UTKinect-Action3D dataset

5 结束语

本文提出了基于视图和尺度不变的欧式距离和关节点之间的相对角度特征来获取骨骼数据中的空间信息,利用BI-LSTM 来学习骨骼数据中上下文的时间信息,在UTKinect-Action3D 数据集上的识别准确率达到了97.80%。相比传统的行为识别,骨骼数据比图像包含更多维度的信息,深度学习网络能够自动提取复杂的空间时间特征,识别率显著提升。但目前的行为识别仍在研究阶段,未来将继续进行行为识别应用到具体场景的研究。

猜你喜欢
关节点骨骼准确率
基于关节点数据关注RGB视频的双人交互行为识别
乳腺超声检查诊断乳腺肿瘤的特异度及准确率分析
多层螺旋CT技术诊断急性阑尾炎的效果及准确率分析
不同序列磁共振成像诊断脊柱损伤的临床准确率比较探讨
颈椎病患者使用X线平片和CT影像诊断的临床准确率比照观察
基于人体行为模型的跌倒行为检测方法①
结构化:向儿童思维更深处漫溯
3D打印骨骼指日可待
骨骼是如何生长的
神奇的骨骼