基于HHT和改进PNN的CSI人体动作识别研究

2022-12-28 05:37李新春张光锐于洪仕吴彦东
关键词:幅值分类特征

李新春,张光锐,于洪仕,吴彦东

(1.辽宁工程技术大学 电子与信息工程学院,辽宁 葫芦岛 125105;2.辽宁工程技术大学 研究生院,辽宁 葫芦岛 125105)

0 引 言

随着我国老龄化进程的加快,老年人摔倒而未被及时发现可能会造成老年人痛苦或者死亡,所以检测老年人在室内是否发生摔倒行为的需求也应运而生。

目前针对上述问题,研究者们提出了以下几种方案。对于可穿戴传感器的摔倒检测技术研究[1-3],人体的运动信息数据可由佩戴传感器获得,该方法检测的实时性强、精确度高,但携带不便,干扰用户的日常行为活动;对于计算机视觉方面的摔倒检测研究[4],准确度高,但检测设备成本高,适用于范围小的家居环境,且具有一定的侵入性;基于WiFi信号的摔倒检测[5-6],由于其具有不受光照和视距的影响、感知范围大、不侵犯用户的隐私、可非视线路径内识别等优点被广泛研究。

近年来,一些研究利用接收信号强度(received signal strength,RSS)作为行为识别特征,但是RSS存在粗粒度,稳定性弱,鲁棒性差,识别率较低等缺点。相对其而言,拥有细粒度,高频谱利用率,抗强多径干扰等特点的信道状态信息(channel state information,CSI)存在更高的感知精度和更稳定的感知性能,于是基于CSI的人体行为识别技术成为当前研究热点。

文献[7]以CSI的振幅和相位为基信号,提出了分类的新特征——功率谱熵、使用人工鱼群算法修正的SVM分类算法进行摔倒动作识别,平均识别率为94.64%,但是该方法并没有对疑似摔倒动作加以区分与识别。文献[8]中CARM系统提出了CSI-Speed模型,将CSI的幅值变化与人体运动速度之间的关系进行量化分析,为之后的研究提供了模型基础,但其行为提取算法不够完整且识别方法时间复杂度很高。Anti-Fall跌倒检测系统[9]与RT-Fall系统[10],都是利用两根天线上的CSI相位差作为显著特征来可靠地分割摔倒和疑似摔倒动作,两个系统均优于Wi-fall系统[11],但是平均识别率仍然较低,仅达到了89%。文献[12]提出了使用WiFi信号和基于阈值的活动分割的摔倒检测,引入了新的信号分类特征:CSI相位差的标准差变化速度来判别跌倒动作,达到了较高的平衡度,但是该方法仅识别3种疑似摔倒动作,且计算复杂度高。文献[13]提出了人体行为模型的摔倒检测方法,可以精准实时反应运动状态,检测准确率为99%,该方法是基于穿戴式三维传感器得到基数据,对数据的计算量很小,但是长时间的检测过程中会产生误报的问题。

针对上述人体动作识别的问题,本文提出了基于希尔伯特黄变换(Hilbert-Huang transform, HHT)和改进概率神经网络(probabilistic neural networks, PNN)的CSI人体动作识别算法。该算法将CSI的幅值和相位融合信号作为基信号,经过数据预处理后,再进行HHT处理以获取基信号的瞬时幅值和瞬时频率,作为提取的特征,进而创建特征矩阵,最后将摔倒动作的特征矩阵作为改进的PNN分类器的输入,完成真实摔倒及疑似摔倒动作的分类识别。基信号经HHT处理后,在检验摔倒活动之间的相似性以及对具有不同持续时间和幅度的活动在分类方面具有更好的性能,本文方法涉及的参数少,且识别动作的容错性高,收敛速度快。

1 摔倒动作与信道状态信息

1.1 CSI简介

信道状态信息(channel state information , CSI)是表征子载波的幅度和相位的WiFi物理层信息,是对信道的更细粒度的描述,用来表达信道特性。其在频域内的信道响应可表示为

Y=HX+N

(1)

(1)式中:X、Y分别表示发射和接收的信号序列;H表示信道矩阵;N为随机噪声。

根据IEEE 802.11n/ac物理层协议标准,在20 MHz带宽的条件下,CSI信息可由文献[14]所提工具采集得到,其测量值矩阵表示为

(2)

(2)式表示了当前传输链路的信道状态信息。(2)式中,T和R分别为发送和接收天线数目。

使用定制的硬件驱动程序的商用网卡Intel 5300 NIC可以将收发链路间子载波级的CSI提取出来[15],提取出的30个子载波可表示为

Hpq=[Hpq1,Hpq2,…,Hpq30]

(3)

(3)式中,每个子载波Hpqn定义为

Hpqn=|Hpqn|ejsin(∠Hpqn)

(4)

(4)式中,|Hpqn|和∠Hpqn分别为第p个发送天线和第q个接收天线的第n个子载波的幅度和相位的值。

1.2 摔倒动作识别原理

1.2.1 无线信号传输模型

WiFi信号在室内环境进行传播时,由于室内物体的反射、人体的衍射及散射等,会产生时延、相移、衰落等,从而在接收端存在着大量多径分量,如图1所示。当人在室内发生摔倒或者其他人体活动时,会对无线信号的幅度和相位产生影响,本文基于CSI信号波形的变化来体现人体运动与无线信号的映射关系,以此实现摔倒动作的识别。

图1 室内无线传输模型Fig.1 Indoor wireless transmission model

1.2.2 摔倒动作与幅度关系

在室内进行不同的行为动作会产生不同强度和不同轮廓的CSI幅度信号波形。图2显示了摔倒动作以及本文定义的4种疑似摔倒动作的CSI幅度波形图,表明了几种行为与信号幅度一一映射的关系。从图2可以看出,几个动作的幅度波形变化趋势大致相同,这会影响摔倒动作的识别准确度,且易将其余动作误判为摔倒动作,所以本文对预处理后的CSI融合信号进行HHT处理,求得瞬时幅值与瞬时频率,作为动作特征,输入分类器,有利于识别真实摔倒及疑似摔倒动作。

2 Hilbert-Huang变换

2.1 Hilbert-Huang变换原理

由1.2.2节可知,真实摔倒动作和疑似摔倒动作具有相似的CSI幅度波形,所以将CSI数据流直接作为分类模型的输入会产生误判,且动作的识别率低。HHT是一种完全基于信号自身的时频处理技术,不必事先确定基函数或窗函数,而且HHT能够计算信号的瞬时频率和瞬时幅值,在检测人体活动之间的相似性和对不同持续时间和幅值的活动进行分类方面具有更好的性能,基于以上优势本文提出HHT特征提取方法,提高识别准确率。

HHT[16]是一种处理非线性、非平稳信号的不同于傅里叶变换理论体系的自适应时频分析方法,其主要包括经验模态分解(empirical mode decomposition, EMD)和希尔伯特变换(Hilbert transform, HT)这两个过程,其中,EMD为算法的核心部分。算法步骤分为两步:首先,采用EMD将预处理之后的CSI基信号进行分解为多个平稳分量,即低频固有模态函数(intrinsic mode functions, IMF);其次,对IMF分量进行Hilbert变换,得到HHT边际谱,由此可求得CSI基信号的瞬时幅值和瞬时频率,进而创建动作的分类特征矩阵。HHT的具体实施步骤如下。

2)根据CSI自身的尺寸特征,将CSI分解为一组IMF。

(5)

(5)式中:rn(t)为残差;n为IMF个数。

3)求得剩余信号H(t)=XCSI(t)-m(t),判断H(t)是否满足IMF的两个条件:①整个融合信号内,极值点与过零点的数目相差为0或为±1;②任意时刻信号存在局部对称性,即求得上下包络线的极值点均值是0。

若满足,则H(t)为第一个IMF分量,记作c1;若不满足,重复以上步骤,直至满足Huang给出的IMF筛选停止的标准[17],即

(6)

(6)式中,0.2

4)残余信号rn(t)为低频分量,可省略掉,分析高频分量IMF,因此,经希尔伯特谱分析的信号为

(7)

(7)式右边表示Hilbert谱,记为H(ω,t)。Hilbert边际谱可表示为Hilbert时频谱对时间的积分,即

(8)

(8)式中,h(ω)表示每一个频率对应的累积幅值的分布,可以准确反映原始信号的实际频率值。

5)任意时刻的瞬时频率fj(t)、瞬时幅值aj(t),可以由对IMF分量的HT计算得到,即

[fj(t),aj(t)]=HT(IMFj(t))

(9)

每个摔倒动作都可以通过HHT得到一个关于它的特征矩阵,用来进行后续的摔倒动作识别处理。该特征矩阵由一组瞬时频率和一组瞬时幅值组成,表示为

Hi=[f1i,f2i,…,fni,a1i,a2i,…,ani]

(10)

训练阶段,对采集的摔倒动作以及4类疑似摔倒动作的CSI数据进行幅度和相位基信号的提取,并进行HHT特征提取n个瞬时频率和瞬时幅值,子载波数为30,则每个动作每条链路形成30×n×3形式的特征集。

2.2 摔倒动作的HHT特征提取

本文研究的“蹲下”“坐下”等摔倒动作与疑似摔倒动作,它们都存在自上而下的动作,而且持续时间也非常相似,容易发生误判,导致摔倒动作的识别精度低。因此,本文提出了一种基于HHT的人体动作特征提取方法。人体的运动,会造成CSI信号的多径速度的变化,可用频率表示,幅值用来表示CSI信号的能量。针对摔倒动作与疑似摔倒动作,经过本文提出的HHT变换,可以得到人体动作的瞬时幅值和瞬时频率,作为动作的分类特征,能更准确地区分摔倒动作和疑似摔倒动作。

由(8)式可知,对预处理后的CSI信号进行Hilbert变换,可以得到每个摔倒动作的边际谱,反映了每个频率值对应的累积幅值分布,如图3所示。图3中,横坐标表示瞬时频率,纵坐标表示该瞬时频率对应的累积幅值,摔倒动作的边际谱体现了CSI信号的实际频率成分。

由图3可见,在0~5 Hz范围内,摔倒和蹲下动作均基本上不存在高频分量,但二者的累积幅值有着明显差异,蹲下动作的瞬时幅值显著高于摔倒动作,由此可以较为容易地区分这两个动作。

图3 摔倒与蹲下动作的边际谱Fig.3 Marginal spectrum of fall and squat movements

3 算法设计

3.1 概率神经网络

概率神经网络是一种收敛快、准确度高、分类能力强的神经网络。其具有使用线性学习算法来实现非线性学习算法的功能,是一种结合了径向基函数神经网络(radial basis function neyral network,RBFNN)的优点与贝叶斯决策理论的分类算法。概率神经网络的结构模型如图4所示,包括输入层、模式层、竞争层及输出层等4层。

图4 概率神经网络结构图Fig.4 Structure diagram of probabilistic neural network

1)输入层,计算输入样本特征向量与所有训练样本特征向量之间的距离。输入样本对应5类动作的经过HHT处理后创建的特征矩阵,设为X={x1,x2,x3,x4,x5}。

2)模式层,采用高斯函数作为激活函数,计算输入层样本与训练集样本的匹配度。

(11)

(11)式中:σ为平滑因子;xij为隶属于evi类的第j个训练样本;d为输入向量维度。由于模式层采用径向基非线性函数映射,可有效避免反向传播神经网络(back propagation neural network, BPNN)的局部极小值问题。

3)竞争层,将隶属各类别的模式层输出加权平均。在该层,神经元个数等于人体动作类别的个数,即

(12)

(12)式中:Pt(X|evi)表示输入样本隶属evi类的概率;Numi为隶属evi类的训练样本总数。

4)输出层,归一化处理竞争层输出。获取输入样本对应不同类别的概率,根据概率大小判断输入样本对应的动态特性隶属类别,最终输出动作类别标签。

3.2 遗传算法改进的PNN分类器

PNN神经网络模型中唯一要调整的参数是σ。σ取值过大,则PNN分类效果接近于线性分类器,不能对界限不明显的类别进行正确分类;σ取值过小,则只能隔离单独训练的样本,也不能完成分类。因此,σ的取值对PNN分类器至关重要,本文选取遗传算法(genetic algorithm, GA)优化PNN的σ,最终选取最优的参数作为PNN分类器的σ。

3.2.1 遗传优化算法

GA是一种具有自组织、自适应且其自适应性不受连续和求导限制的优化算法,基于生物进化原理设计和提出。GA根据个体适应度来进行选择、交叉、变异过程来获取最佳个体,同时利用全局并行搜索技术来求出问题的近似最优解,可用来优化PNN的σ,得到最优参数。

本文利用GA优化概率神经网络的平滑因子时,对应于每个模式类别的σ是不同的,其算法步骤如下。

1)σ初始化。取值范围设为(0<σ<1),设置初始种群为{σ1,σ2,…,σM},M为种群规模,初始进化代数t=1,最大进化代数为T。

2)计算染色体的适应度函数。根据由染色体获得的平滑因子,构建PNN网络,计算分类正确的个数及误差。

3)更新种群。选出优胜个体,进行交叉、变异。

4)更新当前的进化代数t=t+1。

5)判断t和T是否相等,若相等,则停止;不等,则返回2)。

6)利用优化得到的σ确定PNN网络模型,输入测试数据,完成真实摔倒和疑似摔倒动作的识别。

3.2.2 GA优化PNN参数模型

本文采用遗传算法优化概率神经网络的σ,流程如图5所示。

图5 GA-PNN模型流程图Fig.5 Flow chart of GA-PNN model

GA-PNN模型的具体实施步骤如下。

2)GA算法初始化。设置种群规模M,最大进化代数T,产生初始种群{σ1,σ2,…,σM},确定优化参数的个数和取值范围。本文利用GA优化PNN的σ参数,参数个数设置为1。

3)计算个体的适应度。遍历每次进化代数,利用训练集进行PNN模型的训练,并将测试集中每一个动作特征依次输入到模型,得到预测动作类别,计算摔倒动作识别错误率fitness。

4)更新当前种群位置。在每次迭代中,以动作识别错误率fitness最小化为优化原则,选取适应度最强的个体。

5)迭代更新,t=t+1。增加迭代次数并判断遗传算法是否达到最大进化代数T。如果已经达到T,则以进化过程中所得到的具有最强适应度的个体作为最优参数。否则,跳回步骤3)继续循环迭代,直到达到最大进化代数。

6)完成分类模型构建。基于最优参数得到GA-PNN动作识别模型。

7)特征集建立。依据动作标签的不同,分别将相应动作数据分为训练集和测试集,进行模型训练和测试,得到相应标签动作特征集;在线测试时与输入的在线测试数据进行特征匹配,以实现摔倒动作的识别。

图6给出了基于HHT和改进PNN的CSI人体行为动作识别的总体算法流程框图。

图6 总体算法流程图Fig.6 Overall algorithm flow chart

4 实验与结果分析

4.1 实验环境

为了验证本文提出算法的性能,选择一间5 m×8 m的实验室,采集人体动作的CSI数据,实验环境如图7所示。实验配置方面,本文利用2.4 GHz频率的双天线TP-LINK WR842N路由器作为发射端(TX),一台装有三天线Intel 5300 NIC网卡和CSI Tool工具的DELL笔记本电脑作为接收端(RX),发射端天线数目TX=2,接收端天线数据RX=3,Intel5300网卡结合CSI Tool工具可以从路由器获取CSI信息。在实验环境中,距离2.4 m分别放置发射器和接收器,置于高1.2 m的桌子上,利用Ubuntu Linux 10.04 LTS系统采集人体动作数据,整个数据处理过程和分类识别的实现均来自于MATLAB R2019b平台。

图7 实验环境平面图Fig.7 Experimental environment

数据采集包含以下两个部分。

1)让实验者模拟老年人摔倒动作。因为人在摔倒过程中,会下意识地用自己的胳膊或者膝盖来缓冲,所以模拟摔倒时,实验者也借助胳膊或者膝盖进行缓冲,最后倒下。

2)进行疑似摔倒动作实验。疑似摔倒动作的趋势与摔倒动作较为相似,本文选取4个疑似摔倒动作类型:静止-下蹲、静止-坐下、坐着-起立以及蹲着-起立。表1展示了本文定义的摔倒动作及4类疑似摔倒动作类型。

表1 摔倒动作类型定义Tab.1 Fall movement type definition

4.2 算法性能评估

4.2.1 训练样本数量对实验结果的影响

在本次数据采集中,征集了3男3女共6名志愿者,进行摔倒及疑似摔倒动作行为。对5类动作,每个志愿者针对每个动作进行30次实验,共产生样本900个。

为了验证训练样本数量对算法性能的影响,本文选取8组不同数量的数据集进行训练,并进行相同的后期处理,输入训练好的识别模型GA-PNN进行分类,实验结果如图8所示。

图8 不同训练样本的影响Fig.8 Effects of different training samples

由图8可知,随着训练样本数量的增加,动作的识别准确率也逐渐增加。这是因为样本数量增加会使得动作信息更加丰富。但是,随着训练样本数量的增加,分类模型训练的时间复杂度也会提高,不能使识别准确率与时间复杂度达到一个较好的平衡。训练样本数为150时可得到较高的识别准确度,为97.18%。

4.2.2 实验者数目对实验的影响

为了分析识别模型在实验者数量不同时的识别性能,本节在原有的测试集上新增4名实验者,结果如图9所示。

图9 不同实验者数目的识别准确度Fig.9 Recognition accuracy of different number of experimenter

观察图9可知,随着实验者数目的增加,识别准确率有一定程度的提升,尽管增长速度比较缓慢,但满足了一定的识别需求,因此本文算法在进行摔倒动作识别时,具有较强的鲁棒性。

4.2.3 不同的基信号对实验的影响

为了验证不同基信号对分类性能的影响,分别采取RSS值、CSI相位值、CSI幅度值、CSI的幅值与相位的融合信号进行特征提取与分类。为保证实验的有效性,将4种基信号按4.2.1节得到的训练样本数进行相同数据预处理与HHT处理,最终输入GA-PNN模型进行训练分类。实验结果如图10所示。

图10 不同基信号的实验效果Fig.10 Experimental results of different base signals

由图10可知,采取融合信号作为基信号得到的识别准确度较高,而采取RSS值作为特征输入得到的识别率最低。RSS值不稳定,易受环境影响,鲁棒性差,从而影响识别率;利用CSI幅值或相位作为基信号,由于其包含的动作信息不丰富,因而不能达到较好的分类效果;本文采取CSI幅值与相位的融合信号作为识别特征,其识别率高,鲁棒性强。

4.2.4 不同的特征对实验的影响

特征提取对人体动作的识别结果至关重要。本文提出的HHT对CSI信号提取特征进行分类,可以有效区分摔倒动作与疑似摔倒动作。将采集的CSI数据经过相同的预处理,选取3类特征作为分类模型的输入。这3类特征分别是:文献[18]的小波变换提取的小波能量和峰值;文献[19]的时频域特征,分别包括平均值、标准差、范围、均方根;本文提出的HHT获取的瞬时幅值和瞬时频率。实验结果如图11所示。

图11 不同特征的实验效果Fig.11 Experimental results of different features

由图11可知,小波特征作为分类特征进行识别,误报率略高于本文特征;时频域特征达到的误报率最高;本文特征经过训练,误报率为1.35%,相比其余两种特征分别低了2.52%和7.17%,能较好地识别真实摔倒与疑似摔倒动作。显然,将本文提出的HHT提取的特征作为分类模型的输入,可以实现较低的误报率。

4.2.5 不同优化算法的性能分析

本实验比较了含本文方法在内的3种智能优化算法在迭代过程中的收敛速度和识别精度性能。对以下3个优化模型进行了对比:GA-PNN模型(本文算法)、粒子群优化的PNN模型(PSO-PNN)、蚁狮优化算法的PNN模型(ALO-PNN)。为了增强实验的说服力,设置智能优化算法参数为:种群数M=100,最大迭代次数T=80。表2给出了3种智能优化PNN算法模型的误报率和相应的运行时间。从表2可知,相比于ALO-PNN模型与PSO-PNN模型,GA-PNN模型的误报率分别降低了8.4%和11.94%;其运行时间更短,时间复杂度更低。

表2 各优化算法错误率和运行时间比较Tab.2 Comparison of error rate and running time of different optimization algorithm

图12展示了3种优化算法随着迭代次数与适应度的变化情况。由图12可见,随着迭代次数的增加,适应度不断减小。在相同的迭代次数下,本文提出的优化识别模型GA-PNN的适应度最低,且收敛速度明显快于ALO-PNN、PSO-PNN。因此,在本实验条件下,对基信号进行HHT处理得到分类特征后,选择具有较低误报率且执行时间最短的GA-PNN算法进行分类模型搭建。

图12 不同模型的优化过程Fig.12 Optimization process of different models

4.2.6 不同算法对比实验结果

为了验证算法的整体性能,对4种算法进行对比实验。采取特征提取算法+分类识别算法的形式,分别是:方式一,本文的HHT+GA-PNN;方式二,文献[20]的DWT+SVM;方式三,文献[21]的CNN+LSTM;方式四,文献[22]的时频域特征+LSTM-RNN。为保证实验的公正性,将4种算法同时进行相同的数据预处理,得到结果如图13所示。

图13 不同对比算法的实验结果Fig.13 Experimental results of different contrast algorithms

由图13可知,这4种分类算法的识别准确率分别达到了97.18%、91.58%、94.24%、93.59%。文献[20]利用SVM进行分类,SVM对于大数据存在局限性,且达到的识别准确率低于本文的GA-PNN模型;文献[21]利用CNN进行特征提取,其识别准确率略低于本文算法,但是时间复杂度较高;文献[22]的时频域特征不能更好地区分摔倒动作与疑似摔倒动作,具有较高的误报率;本文利用HHT获取能有效区分真实摔倒与疑似摔倒的动作信息,使用GA-PNN模型进行训练,加快了训练时间,得到较高的识别准确率。

5 结束语

为了有效判别真实摔倒与疑似摔倒动作、解决动作识别准确率低的问题,本文提出了一种基于HHT和改进PNN的CSI人体动作识别方法。实验表明,本文方法可达到较高的平均识别率,且当实验者数目增加时,其识别准确度还能有一定提高,具有较强的鲁棒性。另外,本文选择CSI幅值与相位融合信号,其识别性能优于单一的CSI信息和RSS信号。相较于小波特征和时频域特征,本文算法利用HHT提取特征进行分类,可实现较低的误报率,分类效果好。此外,本文的分类模型利用GA优化PNN,其收敛速度快于PSO-PNN和ALO-PNN,且时间复杂度低;本文的特征提取+分类识别算法模型HHT+GA-PNN的识别性能优于DWT+SVM、CNN+LSTM、时频域特征+LSTM-RNN,表明了该方法的有效性及研究价值。在接下来的研究工作中,将研究复杂场景下多人同时发生动作的识别。

猜你喜欢
幅值分类特征
基于Duffing系统的微弱超声导波幅值检测方法研究
根据方程特征选解法
室温下7050铝合金循环变形研究
离散型随机变量的分布列与数字特征
分类算一算
不忠诚的四个特征
教你一招:数的分类
说说分类那些事
基于S变换的交流电网幅值检测系统计算机仿真研究
Prevention of aspiration of gastric contents during attempt in tracheal intubation in the semi-lateral and lateral positions