基于移动智能终端的老年人跌倒检测方法研究
2018-08-29张新平
韩 帅 张新平 张 爽
(西安邮电大学计算机学院 西安 710121)
1 引言
老年人由于其自身年龄和体质下降而导致的跌倒事件具有发生率高、后果严重等特点,是高龄老年人排在首位的伤害原因之一。随着中国人口结构老龄化的不断加剧,老年人的健康问题越发引起全社会的热切关注[1]。近年来,我国老年人的死亡原因中由于跌倒事件所导致的占27%,在65岁的老年人中有30%每年至少跌倒一次,而在85岁以上的老年人中更是达到了60%~75%[2]。作为远程医疗体系中家庭终端部分的一种实现方式,跌倒检测系统涵盖了多个学科的研究领域,包括生理信号检测与处理、信号特征提取、数据传输等方面。通过对终端对象的动作情况、生理功能进行监测,为其提供适当的护理和医疗服务。
当前,对于老年人跌倒检测相关研究主要有三大类基本方式[3]:
1)基于视频图像的视觉分析,对老年人的实时运动经由摄像头进行监测。但是,这会导致老年人的用户隐私安全得不到保障[4]。
2)基于声频信号的听觉分析,通过对跌倒事件冲击所导致的震动频率部分分析判断后进行跌倒检测。但是,其设备的安装比较复杂,而且花费比较昂贵[5]。
3)基于可穿戴式设备的传感器信号分析,该方法通过对行为的加速度信号进行判别所完成。该方式具有成本低、简单且较少干扰老年人日常生活等优点,已被广泛采用[6]
近年来,随着移动终端的大规模普及,尤其是内嵌有微型传感器的智能手机被广泛使用,这使得基于智能手机的老年人跌倒检测成为了可能。本文利用智能手机内嵌三轴加速度传感器进行跌倒数据的采集,在对原始数据进行预处理之后,利用决策树(Decision Tree,DT)这一成熟的分类器算法进行跌倒检测模型的构建,最终实现对老年人跌倒事件的监测,减少因跌倒而造成的老年人伤害加重的问题。
2 现有研究现状
对于基于智能手机的人体行为识别,由于智能手机放置方向和佩戴位置的不固定性,单独提取三个轴上的加速度数据不能准确实现手机方位与位置的自适应[7]。为了解决手机方位及位置不固定的问题,在文献[8]中提出了一种多个位置的自适应方法,该方法将三个轴的加速度进行合成然后再进行特征提取,利用分类算法进行行为动作的分类。根据对移动用户日常行为习惯和相关文献的分析,采用了包括裤兜、手中、包中等几个常见的智能手机佩戴位置,基本可以涵盖移动用户日常生活中手机佩戴位置的实际情况。但是由于相同动作时手机的不同佩戴位置也会影响传感器数据的空间分布,所以必然会导致行为识别准确率的下降。在解决多佩戴位置这一问题时,文献[8~9]中的特征提取算法进行了改进,利用FFT替代了原特征提取算法。该算法在降低时间复杂度的情况下,达到了与原方法相近的识别率,但准确率还有待提高。文献[10]中利用提取跌倒行为切换空隙之间的信号数据对跌倒行为进行监测,其实现基础是跌倒行为一般发生在人体行为切换之间,实验结果表明该方法能较好地对跌倒行为进行检测。文献[11]中提出了针对波形的具体分析方法,将时域与频域波形图像中区别最大的部分数据用来训练与检测,同时还提出了频率谱密度这样新的特征值。将加速数据进行在时域与频域方面分析之后并绘制出加速度时域频域曲线,该方法能够将数据当中隐含的信息挖掘出来并利用信息增益熵来进行特征优选并利用决策树进行分类[12]。本文将决策树应用到老年人疑似跌倒的行为识别,并结合对疑似跌倒的原始信号数据的时域频域波形进行分析,从而构建出基于决策树的老年人跌倒检测模型识别方法,该方法能有效地对跌倒行为进行识别检测。
3 跌倒行为数据集及其分析
3.1 数据采集
实验样本数据集的采集过程:实验数据集的采集由5名测试者完成,他们分别配备了内嵌有阈值为-2g~2g(g=9.8m/s2)三轴加速度传感器的智能手机终端,智能手机为中兴、华为、小米、魅族、三星和HTC等主流品牌之一,基本可以覆盖到大多数移动用户所使用的智能终端品牌。测试者所携带的智能手机都安装了基于Android平台编写的实验样本数据采集程序,该程序可以实现采集多种人体行为的实时三轴加速度传感器数据,并且将采集到的数据以数据元组(ax。ay。az)的形式(其中 ax代表智能手机坐标系X轴加速度信号值,ay代表手机坐标系中Y轴加速度信号值,az代表手机坐标系中Z轴加速度信号值)的格式存储于文本文档中,文本文档保存于智能手机SD卡中,以便于之后的实验验证所需。实验主要采集5名测试者的日常人体行为均为疑似老年人跌倒的行为动作,分别是突然蹲起、跌倒、坐下、站立起来、突然下蹲。5种行为基本可以反映出绝大数移动用户的人体行为动作疑似跌倒行为动作。5种人体行为各采集10次,采样频率为50Hz,单次采样时间为5s。表1为5种疑似跌倒行为原始样本数据的具体分布。
表1 种疑似跌倒行为原始样本统计
由于在实验样本数据集采集过程中,智能手机放置的方向的多样性,会导致三轴加速度计传感器的受力方向不确定,这样会间接对样本数据集采集到的加速度传感器信号差生一定干扰,从而对最终的模型分类产生负面的影响。为了消除此不利因素对行为识别模型的负面影响,文献[9]中提出了一种多个手机方向的自适应方法,该方法通过式(1)将三个轴方向上的分加速度进行合成。
在式(1)中,aH为三轴合成加速度,ax、ay、az分别为x轴、y轴、z轴的加速度表示。
3.2 数据分析
随机选取一名测试者使用Android智能手机所采集的自身日常疑似跌倒人体行为数据,为了能够更加直观地表示5种疑似跌倒行为,将测试者的疑似跌倒位置的原始加速度信号数据进行三轴合成,并利用Matlab数据工具对原始加速度信号进行处理,并将每一种疑似跌倒行为绘制出了相对应的时域频域图像。如图1~5为5种疑似跌倒行为的时域频域图像,从图中不难看出,动作切换时波形的变化出现较大的波动,而这种波动只是在动作进行时发生,动作完成之后则回归正常。
1)蹲起状态的曲线显示从数据采集开始计时到0.8s的时间段内加速度一直为10,为重力加速度。当用户开始蹲起时出现超重,从这个时候开始到加速度重新恢复到10这个时间段内的数据波动较大,明显区别与其他行为已于区分。在频域曲线看来蹲起状态的能量主要集中在0~5Hz,但是能量分布也是区别于其他状态的一个重要指标,因此频域数据同样具有较强的区分性。如图1所示。
图1 蹲起行为的加速度时域和频域曲线图
2)跌倒状态作为本次实验的重要识别目标,找出区分度较强的特征才能够在高度疑似跌倒的行为中将跌倒行为识别出来。在时域方面,用户从刚开始就出现了加速度的波动情况,这一点是其他行为都没有的特征,因此这个特点就可以作为识别跌倒的一个重要的指标。而且跌倒状态的加速度峰值也比其他行为的大的多。频域方面跌倒行为的能量主要集中在0~5Hz,但是跌倒行为的能量分布是最特殊的,和其他行为区分度很大易于区分。如图2所示。
图2 跌倒行为的加速度时域和频域曲线图
3)坐下状态行为的加速度时域曲线中加速度是先变小后变大,且加速度是从1s开始发生的变化,而且加速度的峰值远没有跌倒行为的大,因此坐下行为与跌倒行为有着较大的区分度。在频域方面能量集中频段相同但是能量分布不同。坐下行为与跌倒行为在时域与频域上有着较强的区分度。如图3所示。
图3 坐下行为的加速度时域和频域曲线图
4)站起来状态的加速度曲线刚开始加速度也是10,从1s之后加速度开始变大,这一点类似于蹲起状态,但是站起来状态的加速度峰值远远小于跌倒行为的峰值。同时站起来与跌倒的时域图像有着明显的区别,区分度较大。在频域方面,站起来的能量分布与跌倒的能量分布有着明显的不同,站起来与跌倒区分度较大。如图4所示。
图4 站起来行为的加速度时域和频域曲线图
5)突然下蹲作为本次试验中高干扰的疑似跌倒行为经过时域和频域的分析之后变得较容易区分。在时域方面,突然下蹲在刚开始就有着很强烈的变化,在极短的时间内达到了两个较大的加速度值,这一点不同于其他任何一种行为,突然下蹲行为虽然是对跌倒行为检测有着很大干扰的行为,但是突然下蹲的时域和频域曲线都是非常个性的,将跌倒行为与突然下蹲区分出来变得非常可能。如图5所示。
图5 突然下蹲行为的加速度时域和频域曲线图
3.3 数据预处理
为了获得移动用户人体行为加速度信号数据在特征值空间中的数据分布形式,便于进一步分析数据和构建移动用户人体行为识别模型。对合成加速度数据进行特征值向量提取,作为下一步行为分类模型中分类器的输入特征值向量。特征提取一般采用时域和频域特征共9个特征值,依次分别为均值、方差、最大值、最小值、中位数、变化范围、功率谱密度、能量、0~5Hz总和。在时域特征中,均值是样本数据集数据的算数平均值,主要用以使数据集数据平滑;中位数主要是用于区分较高数据部分与较低数据部分的值,通常在替换一系列离散值中的空缺值;最大值和最小值代表样本数据集数据中的极大值和极小值;范围是指样本数据集中数据的最大值与最小值算数差的绝对值。在频域特征中,功率谱密度、能量、0~5Hz总和为三个主要特征,利用FFT(Fast Fourier Transform)将时域信号转换到频域中。直流分量是频谱能量表示的第一个系数值,它可以代表不变的数量级系数;频谱能量则是通过对选定的样本数据集数据窗口内的频谱系数之和求平方根所得到的。
为了消除奇异样本数据集中的数据,统一特征值向量数量级,以便于数据处理。通过对样本特征值数据集中数据进行归一化处理,消除因量纲不一致而产生负面影响。
4 基于决策树的跌倒行为识别模型
4.1 决策树算法
决策树算法描述如下,根据给定的样本训练数据集构造一棵决策树,Examples是样本训练集,At⁃tribute list为可供归纳候选的数据集,设Si是一个具有Attribute list=Vi条件的样本子集。
输入:训练样本数据集,每个属性都取值为离散值。
输出:决策树。
处理流程:创建决策树的根部节点N;
if所有训练样本都属于同一种类别C,那么就返回根节点N作为叶子节点并且标记成类别C;else if Attribute list是空集,那么就返回一个叶子节点N,并且将其标记为该节点含有的样本中类别数目最多的那个类别;
else在Attribute list中选取一个Examples分类能力最好的属性Attribute*并且将其标记为根节点N;for Attribute*中每个已知数值 Vi,因为 Attribute list=Vi,由根节点生成一个相对应的分支;
if Si是空集,那么就将其相对应的叶子节点标记成该节点所包含的样本中类别数量最多的那种类别;else重复递归构造子树,调用Decision Tree(Si,Attribute list-Attribute*)。
算法重复递归执行的停止条件为
1)根节点所对应的所有样本实例都位于同一种类别中。
2)假设没有剩余特征属性用在划分当前的训练样本子集,那么就采用投票决策方法,把当前节点变成叶子节点,并且将其标记成当前节点所包含样本子集中占主要地位的类别。
3)若当前没有样本集满足条件,则创建一个叶子节点,并且将它标记成当前节点所包含样本子集中占主要地位的类别。
4.2 跌倒行为监测模型
本文提出一种基于智能手机的老年人跌倒检测模型方法,该方法通过采集智能手机加速度传感器数据,通过对原始信号数据进行预处理和特征提取,并根据有效波形对数据进行特征优选,继而训练出决策树模型。通过该模型对老年人跌倒事件进行判断和监测,是一种行之有效的老年人跌倒监测方法。
图6 基于智能手机的老年人跌倒监测流程图
5 实验验证及结果分析
5.1 波形区分度范围验证
本文在3.3小节中提出了对数据滤波处理、特征优选以及提取有效数据的方法对原始数据的合成加速度数据进行特征预处理方法。通过对加速度数据进行滤波处理准确率提升1.67%,误报减少了12次,如表2~3所示;提取有效的数据进行分模型的训练准确率提升13.3%,误报减少了5次,其中实验效果最好的是提取1s~3s的数据进行实验验证,准确率为86%,误报13次,如表4、表5所示;特征优选之后跌倒检测的准确率提升5%,误报次数减少4次,如表6所示。本文就是在以上实验的基础上对原始三轴加速度进行数据预处理,首先将三轴加速度进行合成,然后对合成的加速度数据进行滤波处理,使用的滤波算法为均值滤波法。均值滤波处理之后提取1s~3s的有效数据,然后对1s~3s的数据进行特征优选,分别计算出优选出来的每个特征值并组成一个特征向量,最后将所有的特征向量作为本次试验的初始数据。
表2 疑似跌倒滤波前检测结果
表3 疑似跌倒滤波后检测结果
表4 疑似跌倒原始数据提取1-3S波形检测结果
表5 疑似跌倒原始数据提取05-08S波形检测结果
表6 疑似跌倒特征优选的检测结果
5.2 跌倒行为检测模型验证
本文提出了一种基于合成加速度数据波形分析的分类方法,具体的波形分析为加速度数据的时域和频域波形。通过分析加速度时域波形可以得出的结论是:在0.8s~1.5s之间的数据具有很强的区分度,因此这部分数据可以作为训练分类模型的训练数据。该部分的数据进一步分析可以得出跌倒行为的加速度数据在峰值、均值、变化范围等特征有着明显的差别,提取这部分数据可以组成特征向量。同样分析频域波形之后可以看出用户运动的能量主要集中在0~5Hz,但是能量分布有着很大的不同,可以通过提取频域数据的功率谱密度进行分析。然后将时域特征与频域特征组成一个特征向量。然后利用这个特征向量通过四种分类器训练四个分类模型。本文选取了BP神经网络、ELM、SVM、决策树四种分类器进行实验。分类结果如表7所示。
表7 疑似跌倒4种分类器检测情况表
由表7中可以不难看出将波形特征优选加入到决策树模型的构建过程中,使得决策树在老年人跌倒检测方面具有其它模型不具有的优势,就检测结果而言,决策树取得了较好的效果。
将5人通过智能手机采集到的加速度信号数据进行随机分组,70%作为样本训练集,30%作为样本测试集,利用决策树构建跌倒检测模型。该模型的识别效果如下表8所示。
表8 疑似跌倒波形优选-决策树检测结果
从表8中不难看出,跌倒检测准确率达到了91%左右,能够将跌倒从其他四种疑似跌倒的行为中识别出来,本次将疑似跌倒行为与跌倒行为放在一起识别误报了仅6次,漏报3次。实验结果表明:将波形优选特征加入到基于智能手机的老年人跌倒检测决策树模型构建过程中,可以使该跌倒检测模型获得较高准确率和较低的误报率,在一定程度上能够较好地将跌倒行为与疑似跌倒行为识别开来。
6 结语
本文将跌倒行为和疑似跌倒行为进行了区分。首先从手机的三轴加速计中提取出加速度信息,然后将三轴加速度进行了合成,最后将合成的三轴加速度数据进行滤波处理。滤波处理完成之后提取有效的数据并提取了时域和频域的10种特征,然后基于这10种特征建立了用户疑似跌倒行为识别模型。该模型能够很好地将疑似跌倒行为和跌倒行为进行划分并能够将跌倒行为识别出来,跌倒行为的平均准确率为95%,跌倒的误报发生在坐下、站起和突然下蹲中,误报次数最低仅为6次,是一种较为有效的跌倒行为分类模型。