一种适用于单片机的老人跌倒检测算法研究

孙荣霞 马少卿 王硕南 沈文博
摘 要: 针对单片机的计算能力和检测系统的实时性,设计了一种可穿戴的老人跌倒检测装置。利用六轴陀螺仪加速度计进行原始信号的采集,将合成加速度和姿态角作为特征量,设计一种基于二叉树支持向量机分类思想的三级检测算法。首先,以合成加速度是否超出阈值作为分类条件,识别样本是否属于剧烈运动;其次,则以合成加速度是否呈现周期性变化和人体是否处于类静止状态(合成加速度在0.8~1.2 g)将样本进一步细分;最后,则通过判断人体的姿态确定老人是否跌倒。当检测到老人跌倒后,利用GPS对老人进行定位,同时利用GSM模块发送报警信息。实验证明算法准确率高、实时性好。同时能够准确定位,并将信息发送出去。
关键词: 跌倒检测; 二叉树支持向量机; 惯性测量单元; 定位; 无线通信
中图分类号: TN911.73?34; TP212.9 文献标识码: A 文章编号: 1004?373X(2017)22?0014?05
Abstract: In allusion to the computation capability of the single chip microcomputer and the real?time performance of the detection system, a wearable fallen elder detection device is designed. The original signal is collected by the six?axis gyroscope accelerometer, and with the synthetic acceleration and attitude angle as the characteristic quantities, a three?level detection algorithm based on binary?tree support vector machine (BT?SVM) classification is designed. First, whether the synthetic acceleration has exceeded the threshold is taken as the classification condition to identify whether the sample is in strenuous motion. Second, the sample is further classified according to whether the synthetic acceleration (0.8~1.2 g) is changing periodically and whether the human body is in static state. Finally, whether the elder has fallen or not is judged according to his attitude. When a fallen elder is detected, his location will be determined by GPS, and the alarm information will be sent by the GSM module at the same time. The experimental results show that the algorithm has high accuracy and good real?time performance, and can locate the fallen elder accurately and send information out.
Keywords: fall detection; BT?SVM; inertial measurement unit; location; wireless communication
0 引 言
研究资料显示,在我國65岁以上的老年人每年至少跌倒1次的比例[1]为30%~40%。老人在日常生活中发生意外时,如果能获得及时的医疗救助或他人的帮助,可以有效减少当事人所受的伤害。目前跌倒检测的主流研究手段主要有两种,一种是基于图像分析的方法,另一种是基于惯性测量单元(Inertial Measurement Unit,IMU)检测方法。基于图像分析的方法对设备要求高、算法复杂,而且局限于特定的场合。基于IMU的检测方法不但成本低,而且不受环境限制,方便携带[2]。
基于IMU的跌倒检测,国内外众多学者进行了深入的研究。文杰等人提出通过计算合成加速度的平均值和人体姿态来检测跌倒[3]。但是利用重力加速度向量进行姿态解算,容易受机体运动加速度的影响,短时间内精度较低。王之琼等人提出了基于极限学习机的跌倒检测分类算法[4],更多侧重于对跌倒检测算法的研究,算法相对复杂,计算量较大。刘鹏等人提出了基于固定阈值的信号幅度向量滑动平均值法(SVMSA)和差分信号幅度域(DSMA)[2],在计算SVMSA和DSMA时需要多次进行积分和微分运算。对于单片机而言,运算量较大,而且实时性不好,不适合应用于便携式设备中。
本设计利用基于二叉树支持向量机分类思想(Binary Tree SVM,BT?SVM)将姿态角和合成加速度作为特征量,引入三级跌倒检测算法。在进行姿态解算时选用互补滤波器来修正由角速度求解姿态时的累积误差。算法相对简单,实时性好,适合应用于可穿戴设备中。
1 跌倒检测算法
1.1 特征值预处理
在进行跌倒分析前,需要对传感器采集到的数据进行预处理,首先建立自然坐标系,人体直立且面部向前的水平方向定义为Y轴正方向,水平向右定义为X轴正方向,垂直向上定义为Z轴正方向。将检测装置佩戴到人体质量较为集中的腰部,使传感器的三维坐标轴(x轴、y轴、z轴)与自然坐标系完全重合。