基于骨骼特征点的跌倒检测方法

2024-03-12 15:15侯相军陈亚军孙超越
内江师范学院学报 2024年2期
关键词:时序准确率卷积

侯相军, 陈亚军, 孙超越, 肖 慈

(西华师范大学 电子信息工程学院, 四川 南充 637009)

0 引言

人口老龄化已成为我国社会发展的重要趋势.据中国疾病监测系统的数据测算,跌倒已成为我国65岁以上老人因伤致死的首位原因.目前,室内检测跌倒事件依赖的数据采集手段主要为3类[1]:可穿戴传感器、环境传感器与计算机视觉.本文工作的重点是基于计算机视觉的解决方案[2],因为视频信息能更加全面且直观地描述跌倒过程和跌倒后的特征.一般来说,跌倒会导致人体速度和位置的变化.因此在基于图像的技术中,从图像中提取的使用背景减去算法[3]得到的人物轮廓、运动矢量或二维人体姿态估计[4]等特征,能定位人体并知道其空间身体方向,常被输入分类器中进行跌倒判定,如高斯混合模型(GMM)[5]或支持向量机(SVM)[6].描述跌倒特征的困难使得研究人员开始考虑其时序方面的突破.长短时记忆(LSTM)[7]网络的使用使基于视觉的跌倒检测取得了进展.另一种方法是将一些RGB图像直接输入到3D卷积神经网络(CNN)[8]中,以利用其时序方面的信息.

由于残疾和/或年老,老人跌倒可表现为不同的类型和运动速度:硬跌倒(从站立位置开始)和软跌倒(从另一个起点开始),故而它们很难建模.人体行为动作的时序演变与行为进展轨迹高度相关,因此基于考虑人体运动时序变化的神经网络的解决方案似乎是合适的.本文提出了一种结合Tiny-YOLO v3算法、AlphaPose网络及改进的时空图卷积网络(ST-GCN)的跌倒检测方法,有效地提高了在不同场景下检测人体跌倒行为的检出准确率.

1 算法设计

1.1 算法框架

为排除人的体型、衣着、背景的复杂性等干扰信息,检测一个人的行为实际上仅需其骨架信息即可.YOLO目标检测算法能实现端到端检测,在速度和精度有较好的检测效果[9],但其属于静态检测,即对视频中的每张图进行分类,对于瞬时且连续的跌倒动作是非常容易发生误判的.若只对人体进行单类别检测,可采用轻量级YOLO v3(Tiny-YOLO v3)模型去除背景影响,相比于传统的全卷积网络,有效减少了运算参数,加快了模型运算速度.因此本文算法首先利用Tiny-YOLO v3模型实现人体边界框回归,获取感兴趣的人体目标区域;然后通过AlphaPose算法获得骨骼特征点的二维位置坐标;最后通过改进后的ST-GCN模型对行为进行分类,判断视频中人体是否发生跌倒(见图1).

图1 算法流程

1.2 Tiny-YOLO v3目标检测模型

采用Tiny-YOLO v3模型网络简单、计算量较小,共有23层网络,其中包含5种不同的网络层:卷积层convolutional(13个),池化层maxpool(6个),路由层route(2个),上采样层upsample(1个),输出层yolo(2个).输入神经网络的图像尺寸为416*416,对不符合该尺寸的图像要进行裁剪;除了yolo层之前的卷积层(其激活函数为Linear),其余每个卷积层之后都有BN层,且激活函数为Leaky;两个yolo层分别为13*13和26*26,每个网格可以预测3个边界框,由于本文只做1类检测,仅检测人体目标区域,则共有18个分类数,故最后的yolo层尺寸为:13*13*18和26*26*18,结构如图2所示.

图2 Tiny-YOLOv3网络结构

1.3 AlphaPose网络

AlphaPose属于自顶向下的人体姿态算法,即先检验到人体,再得到骨骼关键点特征.表1为主流人体姿态检测模型在COCO数据集上的性能对比[10].

表1 主流人体姿态检测模型性能对比

其中AP@x为IOU(Intersection Over Union)为x这一设定值时的准确率.从表1中可以看出,AlphaPose算法具有显著的优势.为保证本文行为检测算法的可靠性,将基于AlphaPose的高精度特点进行接下来的设计工作.

1.4 改进的ST-GCN行为分类模型

时空图卷积神经网络(ST-GCN)[11]常被用于骨架数据行为识别中,在骨架数据上自动获取行为动作的表征.以人体骨架数据为基础检测一类行为相当于一个时序问题,骨架序列实质上就是一种自然的拓扑图数据结构,其骨骼和关节点分别相当于拓扑图的边和节点.

利用AlphaPose框架采集人体的骨骼特征序列后,搭建1个骨架时空图,用以描述行为的时间和空间关系,如图3所示,蓝点表示身体关节.搭建时空图的方式如下:(1)按照人体的各个关节点之间的自然连接顺序,对每帧骨架图像建立帧空间分区(见图3(a));(2)由于相邻两个时间帧的骨架图之间有着非常紧密的时间上下文关系,因此将各帧骨架图中对应的关节点连接起来(即骨骼),建立时间分区(见图3(b)).

图3 人体骨骼特征点时空图构建过程

ST-GCN网络以图节点的关节坐标向量为输入,由BN层、ST-GCN层(总共9层)、全局池化层(Global-pool)、全连接层(FC)及Softmax函数组成.其中,BN层用于规范骨架序列数据的分布,提高模型的泛化能力;ST-GCN层在时空维度上提取有效的、更深层次的动作特征,以提高模型精度;Global-pool层通过全局池化处理得到的张量,并且利用反向传播实现模型的端到端训练;FC层与Softmax函数先将特征映射到标签空间,再输出动作的置信度向量,识别行为动作类别.对于每个ST-GCN层,采用Resnet结构以增强梯度传播,同时为解决梯度爆炸的问题,在其中添加了dropout策略.

然而ST-GCN模型提取的时序特征仍不够健壮,导致动作识别效果不佳.为此,本文在ST-GCN模型的基础上重新设计了一种DCST-GCN模型,在每一个ST-GCN层都引入时间反卷积模块(DC),使得动作帧之间的时间上下文关系得到最大程度的利用,其原理如图4所示.

图4 DCST-GCN模型流程

反卷积,又称“转置卷积”,但并不是卷积的完全逆过程,其中卷积核作用于输出数据,即使用转置后的卷积核对输入图片的特征进行卷积操作并输出图片,起到通过输入特征还原原图(将原特征尺寸增大)的作用.时间反卷积层(DC),对提取的时间特征进行反卷积处理,充分利用深层特征层的时间语义信息去增强浅层的时间语义信息量,同时还保证浅层的细节信息不会丢失,从而提高了浅层特征层信息对行为的表示能力.图5是反卷积操作流程图,若输入尺寸为2*2的特征图,与4*4的反卷积核进行步长为3的卷积运算后,最后得到一个尺寸为7*7的特征图.

图5 反卷积操作流程

2 实验与结果分析

为了对本文模型的有效性及可靠性进行验证,在公开的行为数据集NTU-RGB+D 60上进行训练验证,同时通过自建模拟室内人体的行为数据集,检测与识别不同行为类别,对检测的准确率进行分析和对比.训练与测试所基于的实验环境如表2所示.

表2 实验平台

2.1 数据集

2.1.1 NTU-RGB+D 60数据集

NTU-RGB+D 60数据集[12]包含60个种类的动作,涉及40个日常动作、11个交互动作、9个健康有关的动作(打喷嚏、跌倒等),共56 880个样本.该数据集内包括深度图序列、3D骨骼数据(含25个骨骼点)、RGB视频以及红外视频.分为跨主体(Cross-Subject)和跨视角(Cross-View)两组评价基准:前者按人物ID划分的训练集和测试集分别包含40 320和16 560个动作片段;后者按相机(-45°、0°、45°三种水平视角)划分的训练集和测试集分别包含37 920和18 960个动作片段.

2.1.2 室内模拟跌倒数据集

考虑到老人处于室内的时间相对较多,为验证本文方法的实际效果,模仿公开数据集Kinetics-400[13]制作了一个室内模拟人体行为数据集IBFD,包括7个动作类别.6类是正常行为,包含站立、行走、坐着、躺着、站起来及坐下;1类是跌倒行为.每个正常动作至少有50个视频剪辑,每个跌倒动作至少有100个视频剪辑,每个剪辑持续至少2s.利用AlphaPose工具提取每个视频帧上人体的18个骨骼特征点信息,包含每个特征点的二维坐标(x,y)及置信度.数据集中的室内环境条件包括客厅、餐厅、厨房等,存在沙发、桌椅、绿植、家电、挂饰、地毯等日常物品,环境复杂度因人而异,部分数据样例如图6所示.训练集与测试集的划分如表3所示.

图6 部分数据样例

表3 实验中使用的数据集定量描述

2.2 评价标准

由于在本文跌倒检测任务中,跌倒行为被视为确定的类别(positive,P),其他行为均归为正常行为类别(negative,N),因此为了验证算法的有效性,目前主要采用准确率Ac(accuracy)这一最直观的评价指标评估提出算法的性能.行为分类正确则为True(T),反之为False(F).其计算方式如下:

式中,TP为人体跌倒行为被正确检测为跌倒的个数;FP为人体非跌倒行为被误检为跌倒的个数;TN为非跌倒行为被正确检测为非跌倒的个数;FN为跌倒行为被误检为非跌倒的个数.

准确率指标常被分为Top1准确率与Top5准确率,其计算式如下所示:

2.3 实验结果分析

实验中训练周期均为70,初始学习率为0.1,在第15个训练周期转换为0.01,在第55个训练周期转换为0.001.以NTU-RGB+D 60数据集上的CV指标为基准,进行消融实验,验证本文模块的有效性.将原作者配置及参数改为本次实验的配置及参数,经实验测得ST-GCN在NTU-RGB+D 60上CV的原始精确度:Top1为88.3%,Top5为97.8%(见表4).

本文在ST-GCN的图卷积构造过程中,设计了一个增强时序特征的时间反卷积模块(DC),使得浅层时序特征信息细节得以保留,且浅层特征语义信息量得到了一定的提升,时空特征能够更好地表征跌倒行为.与原始ST-GCN在CV上相比,结果表明加入时间反卷积模块(DC)有助于模型识别性能的提升,Top1准确率提升了1.7%,Top5准确率提升了1.3%.

表4 优化时序特征的有效性(CV)

在IBFD数据集上进行测试,处理帧率能达到20 FPS以上,部分检测效果如图7所示,测试结果如表5所示.

图7 IBFD数据集检测效果

表5 IBFD数据集分类测试

从图7和表5中可看出,由于室内环境复杂(包含沙发、桌椅、抱枕等)和视频拍摄角度单一,存在人体遮挡的情况,造成行为的漏检或误检;对于类跌倒行为(坐下等)存在一定的误检情况.

在此,将本文模型与6种跌倒检测算法在NTU-RGB+D 60数据集上的行为检测准确率进行对比,结果如表6所示.

表6 不同跌倒检测算法结果对比(Top1)

其中CV和CS分别表示Cross-View基准和Cross-Subject基准中的分类准确率.从表6中可以看出,本文方法在两种基准上识别的准确率均有一定的提升.CS指标的识别准确率达到84.3%,CV指标的识别准确率达到90.0%,均证明了本文方法的优越性.

3 结语

为提高现有跌倒行为检测识别率,本文基于AlphaPose人体姿态估计,结合Tiny-YOLO v3目标检测与DCST-GCN网络共同构建了一个基于骨骼特征点的跌倒检测方法,增强行为时序特征进行跌倒判定,实验测试表明此方法适用于不同背景下跌倒行为的检测,具有良好的鲁棒性和检测准确度,但仍有不足的是对类跌倒行为有误判,笔者未来将进一步改善误判视频的识别,并进一步在真实数据集上进行测评.

猜你喜欢
时序准确率卷积
基于时序Sentinel-2数据的马铃薯遥感识别研究
基于Sentinel-2时序NDVI的麦冬识别研究
基于3D-Winograd的快速卷积算法设计及FPGA实现
乳腺超声检查诊断乳腺肿瘤的特异度及准确率分析
不同序列磁共振成像诊断脊柱损伤的临床准确率比较探讨
2015—2017 年宁夏各天气预报参考产品质量检验分析
从滤波器理解卷积
高速公路车牌识别标识站准确率验证法
基于傅里叶域卷积表示的目标跟踪算法
一种毫米波放大器时序直流电源的设计