人体姿态检测系统的设计与实现

2021-05-10 13:39李占文杨永成宗孝鹏
铁路计算机应用 2021年4期
关键词:关键点机车姿态

陈 博,李占文,杨永成,钟 昊,宗孝鹏

(1. 中国铁路兰州局集团有限公司 安全监察室,兰州 730030;2. 佳讯飞鸿智能科技研究院,北京 100044)

机车司机、行车室值班人员等关键岗位在铁路运营中发挥着至关重要的作用,这些岗位人员的规范行为对铁路运行安全保障起着重要作用。目前,铁路系统主要采用人工查看的方式进行监督审查,需要大量人力资源,审查效率低,及时性差。因此需要一种可靠、实时的智能化管控系统,督查工作人员的行为姿态,当发现违规行为时及时发出预警,提醒纠正,保障铁路系统的安全运行。

随着人工智能技术的广泛应用,利用深度学习对视频图像分析已成为未来的发展趋势,人体姿态检测算法在越来越多的场景中进行应用。魏非凡[1]提出多尺度级联的人体姿态检测算法,通过人体动作分类器实现多人人体行为识别。郑雪晨[2]提出基于人体姿态检测的异常跌倒检测方案,可以实时监护老人状态。王家兴[3]使用人体姿态检测算法完成铁路调车作业人员手的信号多分类任务,对作业人员手的动作进行分析判断。邓伟男[4]利用人体姿态检测算法提取空中交通管制员的姿态,检测是否出现疲劳风险。

目前,尚未有将人体姿态检测算法应用在铁路岗位管控方面的报道,本文设计人体姿态检测系统,自动检测值班人员是否有脱岗、睡觉、躺靠等异常行为,纠正异常行为,避免潜在的安全隐患,从而提升铁路运营安全。

1 算法设计

1.1 算法背景

人体姿态检测是指从图像或视频中检测人体骨骼关键点,通过连接有效的骨骼关键点创建肢体姿态,以人体骨骼架构形式表达人体运动的过程[5],如图1 所示。

图1 人体骨架结构

近年来,研究人员提出了多种人体姿态检测的方法,最早的方法仅在单人图像中检测人体姿态。但是在真实的场景中,图像中存在多个目标,单人姿态检测的方法难以满足应用需求[6]。

多人姿态检测与单人姿态检测相比要更复杂,主要包括自上而下和自下而上2 种检测方法。(1)自上而下的方法先检测图像中人体的位置信息,再按照单人姿态检测的方法检测人体骨骼关键点,从而恢复每个人的姿态[7]。(2)自下而上的方法先检测图像中的所有人体骨骼关键点,再将关键点根据从属关系分组连接,从而找出属于各个人体骨骼的关键点[8]。表1 所示为2 种方法的检测流程和特性。

表1 多人姿态检测方法流程及特性[9]

1.2 算法介绍

1.2.1 姿态检测

考虑到系统检测精度问题,本文采取自上而下的Alphapose[10]算法进行人体姿态检测,网络结构主要由3 部分组成,分别是对称空间变换网络(SSTN,Symmetric Spatial Transformer Network)模块、非极大抑制(NMS,Non Maximum Suppression)模块和姿态引导区域生成器(PGPG,Pose Guided Proposals Generator)模块,如图2 所示。

图2 Alphapose 算法结构

SSTN 模块由空间变换网络(STN,Spatial Transformer Network)、单人姿态检测器(SPPE,Single Person Pose Estimator)、空间反变换网络(SDTN,Spatial De-Transformer Network)模块组成,STN 接收提取到的人体目标,得到准确的人体候选框;SPPE 模块得到单人人体姿态;SDTN 模块将估计的姿态映射回原始图像坐标,据此可以调整原来的检测框,使检测框更精准。

通过目标检测算法获得人体检测框后依次经过STN、SPPE 和SDTN 模块,生成姿态候选区域,并通过NMS 模块获得唯一的人体姿态。PGPG 模块用来进行数据增强,生成训练图像来训练SSTN 模块。在训练阶段,引入Parallel SPPE 模块,可以避免局部最优,进一步提升SSTN 模块性能。

1.2.2 姿态分类

采用支持向量机(SVM,Support Vector Machines)对人体姿态进行分类,SVM 的核心思想是求解能够正确划分数据集且几何间隔最大的超平面,如图3所示,ω·x+b=0 为分离超平面。线性可分数据集拥有无穷多个超平面,但是有且仅有一个几何间隔最大的分离超平面。

在线性不可分的数据集中,SVM 在低维空间通过核函数将输入映射到高维特征空间,最终在高维特征空间中构造出最优分离超平面,从而将低维空间不易分离的非线性数据分开[11]。

1.2.3 滑动窗口

图3 SVM 分类算法示意

滑动窗口法通过融合一段时间内的检测结果来输出判断结果,避免单次误检引起的误报。如图4所示,T= 0 表示第0 时刻的窗口位置;L= 3 表示窗口的长度为3,融合前后3 次检测结果;S= 2 表示步长为2,到下一时刻窗口向前移动2 个位置。

图4 滑动窗口法示意

N 表示检测没有异常,Y 表示检测有异常。

(1)T= 0 时刻,在长度为3 的窗口内,结果均为N,则最终判断该时刻没有异常;(2)T= 1 时刻,有一次检测结果为Y,而其余两次结果为N,这一次的Y 可能是误检引起,则最终判断该时刻没有异常;(3)T= 2 时刻,有2 次结果检测为Y,一次检测结果为N,最终判断该时刻有异常。依此类推,可以得到每个时刻的判断结果。

窗口长度会影响最后结果的灵敏度,长度越长,对某次异常的响应越不灵敏;步长长度会影响最后结果的精度,步长越短,精度越高,但耗时会增加。可以根据实际应用场景灵活配置滑动窗口的长度及步 长,达到最优检测效果。

2 系统设计

2.1 系统框架

人体姿态检测系统框架,如图5 所示,通过接入摄像头视频数据,在服务端完成智能识别,当检测到异常行为时,支持现场报警与远程报警2 种方式,现场通过声光报警器进行提醒,也可以将报警信息发送到远程安监部门。系统支持通过客户端配置相关参数,以及远程查看实时检测结果。

图5 系统架构

2.2 系统功能

人体姿态检测系统主要包括以下功能。

(1)本地提醒:通过本地语音和声光报警器提醒人员及时纠正。

(2)远程报警:当人员未在规定的时间内及时纠正异常行为,则向远程相关管理部门发送报警信息。

(3)配置管理:系统支持客户端配置,设置检测区域、检测行为类别、违规持续时间、检测时间段等参数,以及报警相关接口。

(4)异常记录:报警历史信息包括报警时间、报警地点、报警行为以及对应的图片,做到有据可循。

(5)远程查看:支持客户端远程查看视频,显示人体姿态检测结果。

2.3 检测流程

系统检测流程,如图6 所示,主要包含以下步骤。

图6 系统检测流程

(1)采集摄像头视频进行图像解码,通过人体姿态检测输出人体骨骼关键点,利用关键点之间的有效连接构造特征向量。

(2)利用SVM 算法将姿态分类为“正常”或“异常”[8],异常行为包含脱岗、睡觉、躺靠、翘腿等行为。

(3)将分类结果送入滑动窗口模块,判断在连续时间段内是否有违规行为,当出现违规行为时首先进行本地语音提醒,判断违规行为变化,如果在规定时间内仍未纠正,则向安监部门远程报警。

考虑到摄像头安装角度、距离差异,检测出的人体大小尺度不一,关键点之间的距离也会有大的区别,比如,当人体目标尺寸较大时,左眼与右眼之间距离较大,反之,当人体目标尺寸较小时,左眼与右眼之间的距离也会变小。如果直接进行分类,会导致算法缺少鲁棒性,无法适应不同场景。

为了解决不同人体大小带来的影响,结合人体检测框信息对人体姿态检测输出的18 个人体骨骼关键点进行归一化处理,即将关键点的横坐标xi除以人体检测框的宽度pw,纵坐标yi除以人体检测框的高度ph,利用归一化后的值xi_norm、yi_norm计算相邻人体骨骼关键点之间的距离,如式(1)

将18 个人体骨骼关键点和对应的距离展开成1 ×54 维的特征向量,输入SVM 模型进行分类,得到最终 的姿态类别。

3 系统应用

利用人体姿态检测可以实现铁路系统重点岗位工作人员的管控,例如行车室值班员、机车驾驶员等。通过人体姿态检测系统监管重点岗位人员的工作状态,管控重点岗位人员的行为规范。

3.1 测试环境

本文采用嵌入式设备进行系统部署及测试,设备参数,如表2 所示。

3.2 行车室值班员姿态管控

行车室是铁路运输生产的重要组成部分,是车站的“中枢神经”和指挥中心,主要职责是车站的调度指挥和接发列车作业,保证日常运输作业的安全和列车的正点率。

表2 设备参数

采用人体姿态检测系统,可以实现对行车室值班人员7 × 24 h 的实时管控。当人员出现违规行为时,如睡觉、脱岗、躺靠等行为,通过值班室的声光报警器提醒值班人员纠正行为。如果值班人员未在规定的时间内恢复,则发送远程报警信息给指定的安监部门,避免潜在的安全隐患,检测效果,如图7所示。

图7 行车室姿态检测效果

3.3 机车司机姿态管控

机车内通常安装有视频监控摄像头,但受限于传输条件,目前,主要通过视频拷贝到指定地点,采用人工方查看的方式对视频抽查,无法实现对机车司机的实时管控。

人体姿态检测系统可以部署于便携的嵌入式系统中,对机车视频进行实时分析,发现司机的违规行为时(如脱岗、视线脱离前方、睡觉等)通过声光报警器提醒司机及时纠正违规行为。对于严重违规行为,还可通过4G 网络向远程发送报警信息,实现风险预警,避免事后追责,从而保障行车安全。机车司机姿态检测效果,如图8 所示。

3.4 测试结果

为了验证人体姿态检测系统的应用效果,分别采集行车室值班员和机车司机视频,对每帧视频数据分析,检测是否存在异常行为。

图8 机车司机姿态检测效果

利用准确率与召回率指标来评估算法的有效性,准确率表示检测出违规行为的正确率,召回率表示违规行为的检出率,测试统计结果,如表3 所示。

表3 测试统计结果

从表3 中可以看出,在行车室中,异常行为的检测准确率≥ 98%,召回率≥ 97%;在机车室中,异常行为的检测准确率≥ 97%,召回率≥ 98%,具有实用价值。目前,该系统已在中国铁路兰州局集团有限公司部署试用,并取得良好效果,下一步将进行推 广应用。

4 结束语

本文研究了人体姿态检测系统在铁路岗位管控中的应用,以人体姿态检测算法为基础,结合SVM分类算法与滑动窗口法,对行车室和机车司机的行为进行检测与管控,实现了两级预警。

为了提升系统的实用性,未来可以增加更多的检 测类别,应用于手势识别、滑倒检测、打架检测等领域中,扩大系统的应用范围。

猜你喜欢
关键点机车姿态
论建筑工程管理关键点
肉兔育肥抓好七个关键点
攀爬的姿态
“周恩来号”机车连续40年投入春运
DF8BI内燃机车整车称重调簧工艺适用条件研究
利用定义法破解关键点
机车英雄
在塞纳河畔遇见的“他”邂逅机车收藏家Hector
另一种姿态
机械能守恒定律应用的关键点