李聪林,王琪冰,陆佳炜,赵国军,胡 豪,肖 刚
1.中国计量大学 机电工程学院,杭州 310018
2.浙江工业大学 机械工程学院,杭州 310014
电梯是与公众日常生活密切相关的公共基础设施。根据国家市场监管总局关于全国特种设备的公开数据显示,截至2021 年年底,中国电梯的保有量已达879.98万台。随着电梯数量的增加,电梯安全与公众安全逐渐受到社会各方面的关注。
近年来,研究者已经针对电梯轿厢内的跌倒、跳跃、打斗以及扒门等多种乘客异常行为展开了大量研究[1-6]。Liu 等人[1]提出了基于机器视觉和多特征融合的电梯乘客跌倒检测方法;Sun 和Zhu 等人[2-3]针对电梯轿厢内的打斗行为,分别提出了基于角点动能和光流法的异常行为检测模型;Lan 等人[4]通过建立基于双流卷积神经网络的乘客异常行为检测模型,实现了对扒门、打斗以及跌倒等异常行为的精准识别;李佳和陈龙[5-6]分别使用AlphaPose 和OpenPose 算法作为人体骨骼信息提取的基本网络,并选取SVM和神经网络作为分类模型,实现了对电梯内乘客扒门、摔倒、跳跃以及打斗等异常行为的实时监测与报警。
然而上述方法在模型训练与验证过程中都存在异常行为样本数据缺乏的问题。目前的异常行为数据增强主要有两种解决方法:(1)通过志愿者模拟异常行为动作[1-6],但该方法存在安全风险,而且执行过程中需要考虑时间及设备成本;(2)使用人体物理模型模拟异常行为[7-9],但人体物理模型的动作姿态固定,无法还原真实人体的运动特征。数字孪生理念[10]的出现为上述问题提供了解决思路。通过构建物理设备[11-13]与真实人体的数字孪生模型,并结合数据交互技术,一方面可以实现真实“人-机”交互过程的安全监管[14-16];另一方面,利用孪生场景提供的高保真虚拟设备与人体模型来模拟高危、低频的异常行为,不仅可以节约设备成本、保障人员生命财产安全,还可以为机器学习领域中的异常行为识别提供源源不断的仿真数据。
综上所述,本文将数字孪生应用于垂直电梯乘客行为监测中,提出了一种基于数字孪生的电梯乘客异常行为建模与识别方法。通过构建电梯乘客行为监测数字孪生体与人体行为孪生模型,实现了电梯乘客异常行为的数据增强,为异常行为识别研究提供了大量孪生数据源。在此基础上,利用改进的乘客异常行为识别算法,对孪生数据进行特征提取与迭代学习,并将训练好的模型应用于真实场景中,实现了乘客异常行为的实时检测与可视化预警。
参考陶飞等[12]提出的数字孪生五维模型架构,本文的垂直电梯乘客行为监测数字孪生框架可分为如图1所示的四层结构,分别为物理层、交互层、虚拟层以及应用层。
图1 电梯乘客行为监测数字孪生框架Fig.1 Digital twin framework for elevator passenger behavior monitoring
(1)物理层
物理层包括了参与电梯运载任务的各类物理实体,如电梯系统、乘客以及传感器等。其中,电梯系统是完成运载任务的主体;乘客是运载任务的主要服务对象;传感器采集的速度、振动加速度、开关门状态、视频等动态数据和设备的几何尺寸、材质信息等静态数据,是建立并驱动虚拟层模型的数据基础。
(2)交互层
交互层在结构上主要由电梯控制柜、视频解析服务器以及边缘控制器组成。通过定义传输网络、数据接口以及实施边缘控制,可以实现物理层与虚拟层之间数据的双向传递。一方面,交互层将采集到的视频数据、乘客姿态数据、电梯静态与动态数据等传送至虚拟层,供虚拟层的模型驱动调用;另一方面,虚拟层不仅可以将控制指令发送给边缘控制器,实现对电梯系统的控制,还可以将仿真数据发送至视频解析服务器进行模型训练。
(3)虚拟层
虚拟层是以实体数字建模、物联网、人工智能等新一代信息技术为手段,将物理层的所有空间、属性和管理数据进行存储、传输、表达和深加工的数字空间,在结构上包括了孪生数据以及孪生模型。孪生模型主要由设备状态模型与人体行为模型组成。设备状态模型借助虚实交互技术,在几何模型的基础上融合设备实时状态信息,实现对设备运行状态的实时监测;人体行为模型是乘客行为监测数字孪生的核心,既可以利用视频数据实现真实乘客动作的虚实映射,又可以借助数字孪生环境创建大量异常危险行为数据。孪生数据来自于物理层和虚拟层,物理层的数据用于驱动孪生模型,虚拟层的数据供应用层与交互层进行调用。
(4)应用层
为了实现对乘客搭乘电梯行为的实时监测,应用层主要包括了电梯运行三维可视化和乘客异常行为预警功能。相较于传统的平面展示,本文结合UⅠ设计与三维可视化技术,将电梯运行过程中的高度、速度以及乘客姿态等信息融入相应的孪生模型中,实现了电梯设备与乘客行为的三维动态监管。同时,当系统检测出乘客异常行为时,应用层可以将告警信息、电梯状态以及监控视频等进行直观展示,管理人员则可以根据以上内容在第一时间采取相应救助措施。
垂直电梯乘客行为监测数字孪生平台在Unreal Engine4(UE4)中进行搭建,如图2所示该过程可分为几何模型绘制、孪生场景搭建以及虚实数据映射三个步骤:
图2 电梯乘客行为监测数字孪生场景构建Fig.2 Construction of digital twin scene for elevator passenger behavior monitoring
(1)几何模型绘制
电梯模型按其功能可分为曳引系统、轿厢、重量平衡系统、导向系统、电气控制系统、电力拖动系统、门系统以及安全保护系统八大部分,使用SolidWorks对其各系统进行绘制;人物模型通过Maya绘制,但为了在孪生场景中具备反映真实人体行为特征的能力,必须在绘制人物模型时加入骨架网格体。
(2)孪生场景搭建
依据物理世界中的包含关系,将上述几何模型导入到UE4 中进行总体装配。为了建立与物理层特征对应的孪生场景,需要在搭建场景时重新定义材质属性、层级关系及运动约束条件等。以电梯模型为例,按其父、子系统间的包含关系定义层级,并通过设置曳引机和钢丝绳、轿厢和对重等相关组件之间的运动约束条件,可以使其在孪生场景中的运动与物理世界保持一致。
(3)虚实数据映射
孪生数据是实现物理实体与虚拟模型之间实时映射的关键,本文需要传输的孪生数据包含了电梯运行数据以及乘客行为数据。电梯运行速度、高度、开关门状态等数据通过外置接口板与电梯控制柜之间的RS485通信总线获取,并存入相应MySQL 数据库中用于驱动虚拟电梯模型。乘客行为数据包括视频数据和乘客姿态信息,其中,乘客姿态信息通过在视频解析服务器上利用本文提出的SSAM-OpenPose 算法与PCA-DNN 分类器获取,并通过TCP网络协议与Socket通信发送至客户端,用于驱动虚拟人物模型以及实现可视化预警。客户端为数字孪生平台,通过使用C++与BluePrint对输入数据进行解析与分配接口,即可实现可视化服务平台的搭建。
通过搭建垂直电梯乘客行为监测数字孪生平台,实现了对实际工况的高保真映射。但乘客异常行为识别是实现电梯乘客行为监测的重要组成部分,由于异常行为发生几率小、异常行为数据稀缺,导致基于机器学习的异常行为识别方法缺少大量的训练和测试样本。传统的异常行为数据增强方法不仅需要考虑时间与设备成本,还需要考虑试验人员的生命安全。本文利用数字孪生提供的高保真虚拟环境,通过虚拟人物行为建模实现对现实世界中乘客异常行为的模拟,生成大量异常行为数据,解决了现实中电梯乘客异常行为数据稀缺的问题。
在虚拟人物行为建模过程中,如果基于真实人体结构对行为动作进行数字化表达,需要考虑人的骨骼、肌肉和皮肤等基础实体,该方式不仅包含了大量的生理信息,不方便存储与处理,而且不同人物之间的生理信息不存在关联性,大幅增加了行为建模的难度。因此,将人体抽象为如图3(a)所示的若干骨骼与关节的集合,不仅可以降低构建完整人体行为模型的复杂度,而且人的骨骼结构具有相似性,人体行为动作也可以使用这些关节的位置信息进行描述。
图3 人体骨骼模型与关节树Fig.3 Human skeleton model and joint tree
但传统的三维坐标描述方法使运动过程中各个关节点的位置参数相互独立,违背了人体模型骨架长度不变的约束。为了克服这个缺陷,通常使用层次化的方法将人体模型等效为图3(b)所示的关节树。树的根节点是人体骨骼模型的几何中心,它可以控制模型的整体位移和方向,剩下的子节点则通过间接或直接连接到根节点上,共同辅助完成人体模型姿态的确定和运动过程的呈现[17]。
将人体骨骼等效为关节树后,整个人体的运动就可以通过正运动学和逆运动学的方法来进行细化描述[18]。其中,当已知每个关节相对于其父关节的位移和旋转后,通过正运动学可求解运动后的整个人体姿态;当已知初始和结束时的人体姿态,需要获取运动过程期间每个关节的具体变化时,可以通过逆运动学进行求解。
电梯乘客异常行为是指乘客在电梯内做出的威胁设备正常运行以及乘客生命安全的一系列危险动作。由于此类异常案例较少,真人动作模拟存在安全风险。基于此,本文利用搭建的电梯数字孪生场景,给出了如图4所示的乘客异常行为建模流程。
图4 基于数字孪生的乘客异常行为建模流程Fig.4 Modeling process of passenger abnormal behavior based on digital twin
首先需要将导入孪生场景的人物模型进行骨骼重定向,使具有不同骨骼结构的虚拟人物能够在同一场景中实现动作复用;其次,移动人物模型骨骼系统中的骨骼节点,制作关键帧时刻的运动姿态,并以逆运动学求解细化关节点数据、正运动学生成相应动作序列;然后,为人物模型赋予不同状态,并且为各个状态附加对应的行为动作和触发条件;最后,在孪生场景中执行触发条件即可实现异常行为复现。
通过异常行为建模可以创建各种类型的危险动作,但基于机器学习的异常行为识别研究需要大量的视频图像数据。因此,本文在虚拟轿厢上共放置了4个Camera-Actor对虚拟人物的行为动作进行全方位采集,如图5所示,获取了不同视角的乘客异常行为动作。
图5 孪生场景乘客异常行为采集Fig.5 Passenger abnormal behavior collection in twin scenarios
在采集过程中,本文将CameraActor 的帧率设置为30 frame/s,分辨率设置为1 920×1 080,图像输出格式设置为video sequence(avi),角度统一设置为平行轿顶水平面向下45°,并通过使用C++指令控制4 台虚拟相机同时进行录制。该过程不仅节约了实验过程中的时间与设备成本,又避免了真人进行危险动作模拟的安全风险,充分体现了利用数字孪生环境生成大量异常数据的便捷性、高效性与安全性。针对电梯内的跳跃、扒门、踢门以及跌倒等异常行为动作,其数据增强结果如图6所示。
图6 乘客异常行为数据增强Fig.6 Passenger abnormal behavior data enhancement
基于数字孪生的乘客异常行为建模,为乘客异常行为识别研究提供了大量的训练与测试样本,解决了现实生活中异常案例缺乏、异常数据稀缺的问题。为进一步完善电梯乘客行为监测数字孪生平台应用开发,本文提出了融合孪生数据的乘客异常行为识别模型。该模型的整体框架如图7所示,主要分为以下两步:(1)将实际中采集的乘客异常行为视频数据与2.2 节中构建的乘客异常行为孪生数据处理为图像序列,并使用SSAM-OpenPose 算法从中提取人体的骨骼姿态;(2)基于PCA-DNN 网络实现电梯乘客异常行为的实时检测与快速预警。
图7 融合孪生数据的乘客异常行为识别模型Fig.7 Passenger abnormal behavior recognition model fused with twin data
OpenPose 是由卡耐基梅隆大学提出的一种多阶段、有监督卷积神经网络[19],目前被广泛应用于人体行为识别方面,其整体结构如图7 的Ⓑ所示。首先通过backbone 提取出特征图F,然后将其输入到第一阶段Stage_1 的Branch1 和Branch2,进而分别得到关节点的2D置信图S1和部分亲和域L1,最后将F、St-1和Lt-1作为下一阶段Stage_t(t≥2)的输入,并进行多次迭代。其中Branch1和Branch2两个分支在不同阶段的输入与输出如式(1)所示:
式中,ρt、φt分别表示t阶段的2D置信图、部分亲和域与t-1 阶段的特征图、2D置信图、部分亲和域之间的网络关系。
通过以上多阶段卷积神经网络的不断迭代,获取了人体的各个关节点。而对于任意两个关节点的位置dj1和dj2,需要通过式(2)计算部分亲和域的线性积分来表征关节点对的置信度E。最后,选取置信度最高的关节完成拼接,即可得到整个人体的骨骼姿态:
式中,Lc表示关节点对的部分亲和域。
虽然传统的OpenPose 算法在大场景下具有识别速度快、准确率高的优势。但电梯视频监控的范围较小,容易造成乘客与轿厢背景混淆而降低特征提取的准确率,所以需要更多地考虑深层与浅层网络之间的依赖关系,以捕获更多的细节和纹理。VGG-19[20]作为OpenPose 算法的特征提取网络,其卷积网络的不断迭代使得特征图的显著性不断降低。因此,为了更好地提取轿厢环境中的乘客骨骼特征,本文对传统VGG-19进行了相应改进,提出了一种基于骨骼点空间注意力机制(skeletal spatial attention module,SSAM)的电梯乘客骨骼点检测算法SSAM-OpenPose。该算法的backbone(VGG19+SSAM)网络结构,如图8所示。
图8 SSAM-OpenPose算法的backbone结构图Fig.8 Backbone structure diagram of SSAM-OpenPose
该结构首先对VGG-19网络中第三个Maxpool层的输出张量同时执行最大池化和平均池化操作;其次,将这两个输出张量(经过最大池化的2D 张量和经过平均池化的2D张量)进行拼接并串联到一个使用Sigmoid函数的大小为7×7 的卷积核上;最后,将整个注意力机制的输出张量与原Maxpool层的输出张量进行拼接,作为下一层的输入张量并继续进行特征提取。整个骨骼点空间注意力机制的输出张量被称为MS( )G,其表达式如下所示:
式中,GaSvg、GmSax分别表示对输入张量G进行平均池化和最大池化操作得到的二维张量,σ为Sigmoid 函数,[GaSvg;GmSax]表示张量拼接,f7×7表示高宽为7×7 的卷积核。
基于SSAM-OpenPose的人体骨骼检测不仅是获取现实环境中乘客姿态信息的关键环节,同样也是获取乘客异常行为分类训练数据集的核心内容。因此,在训练分类器之前,需要将采集的真实图像序列与孪生图像序列共同输入到SSAM-OpenPose 中,得到相应异常行为的骨骼特征。针对孪生场景中构建的各类乘客异常行为,其骨骼特征如图9所示。
图9 基于孪生数据的乘客异常行为骨骼特征Fig.9 Skeletal features of passenger abnormal behavior based on twin data
目前人体行为分类主要有两种方法:(1)根据骨骼结构与肢体的倾角关系判断人体行为,但该方法会因为遮挡问题而导致分类的准确率降低;(2)通过机器学习的方法输入多个骨骼特征训练分类模型,该方法在遮挡环境或存在视野盲区时,依旧具有良好的分类效果。因此,本文将SSAM-OpenPose 获取的骨骼特征进行预处理,并在此基础上采用基于PCA-DNN的机器学习方法对乘客异常行为进行分类。
3.2.1 特征预处理
在SSAM-OpenPose中,人体骨骼可视为由图10(a)所示的18个关节点组成,并且每个关节在图像中都用x和y的坐标值表示。但关节点的二维坐标变化并不适用于表征某些具有运动特性的动作。因此,为了更准确地区分电梯内的乘客动作类型,本文对骨骼特征做了如下预处理操作:
图10 特征预处理Fig.10 Feature preprocessing
(1)头部关节、无效帧过滤
研究表明,头部关节对于行为分类的帮助并不大,重要的是身体与四肢的结构[21]。因此,本文在采集姿态信息时,过滤了头部的5 个关节点,使得特征提取的速度得以提升。同时,未检测出关节点的图片也会被视为无效帧并被丢弃。
(2)躯干缺失关节补全
由于轿厢环境的特殊性,摄像机的拍摄视角并非平行于乘客。因此,SSAM-OpenPose 在某些情况下可能无法从图像中检测到完整的人体骨骼,导致某些关节位置出现空白。这些关节必须填充一些值,以便为特征分类过程保持一个固定大小的特征向量。针对关节缺少问题,本文给出了如下解决思路:
式中,(xi_curr,yi_curr)和(xNeck_curr,yNeck_curr)分别为当前帧中的某个关节点坐标和颈部关节点坐标,(xi_prev,yi_prev)和(xNeck_prev,yNeck_prev)分别为前一帧中的某个关节点坐标和颈部关节点坐标。如果当前帧中某个关节点坐标丢失,则根据该关节点前一帧相对于颈部的相对位置来填充当前的关节点坐标。
(3)骨骼特征选取
通过以上步骤后,获取的人体躯干骨骼信息是完整的。为了提高分类模型的准确率,本文以图10(b)所示的滑动窗口对整个图像序列的躯干骨骼信息进行处理,并设计了表1 所示的5 种骨骼特征,用于分类模型的输入。
表1 特征描述Table 1 Characteristic description
3.2.2 乘客行为分类
深度神经网络(deep neural network,DNN)是目前许多人工智能应用的基础[22]。由于DNN能够使用统计学习方法从原始感官数据中提取高层特征,并且可以在大量的数据中获得输入空间的有效表征。因此,本文将DNN模型作为电梯乘客异常行为的分类器。DNN模型通常由输入层、隐藏层和输出层3 部分组成,而每一部分又包含了若干个图11所示的神经元模型。
图11 M-P神经元模型Fig.11 M-P neuron model
在图11 中,每个神经元都需要接收来自上一层n个神经元传递的信号,这些输入信号通过带权重的连接进行传递、求和并与阈值θ进行比较,最终通过激活函数f(x)处理即可得到该神经元的输出结果y,整个过程如下式:
式中,w为权重系数。
如果将表1的特征全部作为分类模型的输入数据,DNN每次处理的数据量将高达数百维。这不仅会产生过多冗余输入影响网络运行速度,并且可能会因为梯度消失或梯度爆炸而直接影响分类效果。针对此问题,本文提出了基于主成分分析(principal component analysis,PCA)与DNN 融合的乘客行为分类方法,其结构如图7的Ⓓ所示。PCA是一种基于矩阵线性变换的降维算法,可以将高纬度的数据降到低纬度,并保留原始数据中一些最重要的特征,同时去除噪声和部分关联特征[23-24]。对输入特征X={x1,x2,…,xn}进行PCA 降维的基本步骤如下所示。
(1)去除平均值:
(2)计算协方差矩阵:
(3)求Cov的特征值和对应的特征向量。
(4)确定目标维数k,并按特征值由大到小顺序将对应的特征向量按行排列成矩阵P。一般地,目标维数可依据累计贡献率原则进行自动选取:
式中,λ为特征值,ε为主成分比重阈值。
(5)Y=PX则为PCA降维后得到的特征。
4.1.1 实验环境
本文中所涉及的实验环境主要包括以下两种:(1)电梯数字孪生平台,其搭建环境为Windows10 操作系统下的Unreal Engine 4.27,处理器为Ⅰntel Core i7-8700 CPU@3.20 GHz,GPU 为NVⅠDⅠA GTX1050Ti,运行内存为28 GB。(2)视频分析服务器,其搭建环境为Ubuntu16.4 操作系统,框架采用TensorFlow,GPU 为NVⅠDⅠA RTX3080,运行内存为32 GB。
4.1.2 数据集
实验在COCO2017 数据集[25]和自定义的电梯乘客异常行为数据集上进行。其中,COCO2017数据集用于检验本文的SSAM-OpenPose骨骼点检测算法。该数据集包含训练、验证和测试集共163 957张图片,而且每张图片都附有人体的18个骨骼关节点标注。
通过对真实场景和孪生场景中的视频以每秒30帧的速度进行截取与合并,共同组成了表2所示的自定义乘客异常行为数据集。
4.2.1 性能对比分析
为验证SSAM-OpenPose骨骼点检测算法的准确性与实时性,本文在COCO测试集(40 670张图片)上与其他检测方法进行了性能对比。实验结果如表3所示,其中AP 为平均精度均值指标;AP50和AP75分别表示阈值为0.50 和0.75 的关节点预测指标;APM和APL分别表示人体尺寸较小和人体尺寸较大情况下的预测指标;Time-consumed为算法在本文实验平台上所消耗的测试时间,用于表征算法的时间复杂度。
表3 不同网络在COCO测试集上的性能对比Table 3 Performance comparison of different networks on COCO test sets
对比表3中各模型的精度与时间复杂度指标可知:(1)SSAM-OpenPose的AP50与APM预测指标在以上算法中表现最佳。此外,相较于原OpenPose 模型,SSAMOpenPose 的各项精度指标均有提升且幅度约为3%。(2)注意力机制的引入并未对SSAM-OpenPose 的算法复杂度造成过大影响,该算法处理图片的平均时间仍与原OpenPose 接近,可满足实时性需求。图12为SSAMOpenPose在COCO2017数据集中的人体骨骼点检测效果。
图12 SSAM-OpenPose在COCO数据集的骨骼点检测Fig.12 SSAM-OpenPose human skeleton point detection in COCO dataset
4.2.2 场景验证分析
乘客与轿厢背景混淆是导致人体骨骼点识别准确率下降的主要因素,图13 所示为SSAM-OpenPose 在真实电梯轿厢环境中的乘客骨骼点检测结果,即使是颜色通道较少的灰度图像,该网络依旧具有较好的识别效果,而无法准确识别乘客骨骼的情况主要由摄像机拍摄角度造成。
图13 SSAM-OpenPose在真实电梯中的乘客骨骼点检测Fig.13 SSAM-OpenPose passenger skeleton point detection in real elevators
4.3.1 特征维度选取
在训练乘客行为分类网络之前,需要对自定义数据集进行骨骼点标注,用于乘客行为模型的训练与测试分析。因此,本节采用3.2 节所述的方式对获取的原始骨骼信息进行特征预处理。由于无效帧的剔除,最终参与实际训练的图片总数为4 869 张,其中真实图片为216张,孪生图片为4 653 张。同时,归一化的关节位置(X)、身体的移动速度(Vb)和关节速度(Vj)被选取为乘客行为分类的显著特征。综合数据维度与计算开销的影响,本文选取大小为5的滑动窗口将这些特征串联成了一个238维的特征向量。
将以上特征向量通过PCA算法求解主成分的累计贡献率,并基于文献[27]确定式(8)中的主成分比重阈值为0.95。最终,前50个主成分对应的特征向量被选取为训练乘客行为分类模型的输入特征。如图14为主成分的累计贡献率分布图。
图14 主成分累计贡献率分布Fig.14 Distribution of cumulative contribution rate of principal components
4.3.2 分类模型性能对比
分类模型使用Python-sklearn 库中提供的KNN(Knearest neighbor)、SVM(support vector machine)以及DNN 网络。若不使用PCA 降维,各分类模型的输入为238 维特征向量;反之,输入则为上述50 个主成分的特征向量。将自定义数据集中的4类乘客行为图像按7∶3划分为训练集和测试集,用于训练和测试分类模型的姿态识别准确率。此外,模型训练时间[24]被用来验证本文改进算法的时间复杂度。表4 为各分类模型在本文实验平台下的最优参数设置和性能对比。其中,KNN 中邻域取5,SVM 的核函数设置为linear,惩罚系数C取10,DNN 采用3 层隐含层结构,各层神经元的数量都为100,并使用ReLU激活函数。
表4 分类模型性能对比Table 4 Performance comparison of classification models
由表4 可知:(1)当使用KNN、SVM 等网络对原始输入数据进行分类模型训练时,虽然各分类器的准确率较好,但由于输入数据的维度过高,导致分类模型计算开销过大,训练时间也无法满足实时性需求。(2)当融合PCA进行模型优化时,虽然本文只使用了原始输入数据95%的特征向量进行分类训练,但优化后各模型不仅保持了与原模型相近的准确率,还极大地缩短了模型的训练时间,提升了算法的可实用性。综合模型准确率与算法复杂度考虑,本文最终选取了PCA-DNN网络作为电梯乘客异常行为识别的分类模型。
4.3.3 孪生数据验证分析
为进一步验证将乘客行为孪生数据应用于真实场景中的可行性与准确性,本文首先将经过4.3.1 小节预处理后的图片分为表5所示的6种数据集,其中Camera-Actor×n表示使用n台虚拟相机同时进行动作捕获。其次,基于PCA-DNN网络分别训练各数据集对应的分类器。最后,使用实际中的同类姿态数据作为验证集进行了对比实验。各分类器对应的验证集准确率如表5所示。
表5 不同分类器在验证集中的结果对比Table 5 Results comparison of different classifiers in validation sets
由表5可知:(1)仅使用真实数据训练的分类器,在验证集中的准确率仅有48.6%,其原因在于分类器只能对经过训练的相似行为进行识别,但受到实际参与训练的真实数据总量以及同类姿态数量的限制,导致验证环节出现大量的误识别现象。(2)通过融合孪生数据与真实数据训练分类器,随着孪生数据数量与种类的增加,验证集的分类准确率也得到显著提升,最终的准确率可以达到92.8%。(3)当仅使用孪生数据训练分类器时,其验证集准确率依旧可以达到92.5%,可满足实际工程应用的需求。通过上述实验,本文充分验证了孪生数据可等效于真实数据进行模型训练的可行性、可靠性与准确性。如图15 为使用数据集E训练的分类模型在验证集中的实验结果。
图15 分类模型在验证集中的实验结果Fig.15 Experimental results of classification model on validation sets
4.3.4 异常行为可视化预警
本文将电梯乘客行为定义为无危险、轻度危险、中度危险以及严重危险4种等级。其中,跳跃、扒门、踢门以及跌倒被统一归为严重危险行为。当系统识别出此类异常行为后,视频解析服务器会发送视频数据以及乘客姿态信息到数字孪生平台,进行可视化预警与乘客动作的虚实映射,如图16所示。
图16 异常行为可视化预警Fig.16 Visual early warning of abnormal behavior
针对现实生活中的电梯乘客异常行为案例缺乏、异常行为数据稀缺,导致基于机器学习的异常行为识别研究缺少大量训练与验证样本的问题。本文提出了一种基于数字孪生技术的乘客异常行为建模与识别方法。通过搭建垂直电梯乘客行为监测数字孪生场景,为乘客异常行为建模提供虚拟仿真环境;基于人体骨骼模型与运动学原理构建乘客异常行为,扩充了电梯乘客跳跃、扒门、踢门以及跌倒等异常行为数据,为异常行为识别研究提供了孪生数据源。最后,利用改进的SSAMOpenPose 人体骨骼检测算法,解决了乘客与轿厢背景混淆导致特征提取准确率低的问题,获取了乘客异常行为的骨骼特征,并基于PCA-DNN 网络,实现了乘客异常行为的实时检测。实验结果表明,本文提出的异常行为建模与识别方法,具有准确率高、实时性强、交互性好等特点。
研究结果为今后关于异常行为研究中缺乏异常案例、缺少异常数据等问题提供了新的思路以及实验基础,对保障人民群众生命财产安全以及提升设备安全监管效率等具有重要意义。后续,将对多人复杂场景中的电梯乘客异常行为建模与识别方法展开研究,并结合其他优秀算法进一步提升监管系统的性能。