发明名称 一种高适应性跌倒行为检测方法
摘要 本发明提供一种高适应性跌倒行为检测方法。三轴加速度传感器采集人体跌倒过程的加速度信号;提取跌倒过程的加速度观测序列,作为训练样本集;建立跌倒检测的隐马尔可夫模型,输入跌倒过程的加速度观测序列进行模型训练;采集人体日常活动动作的加速度信号,使用跌倒模型对活动加速度信号的观测序列进行检测,以判断跌倒是否发生。本发明的方法不仅取得较高的准确度,而且能够有效区别日常活动行为和跌倒过程,提高了跌倒检测的有效性,具有适应性高的特点。
申请公布号 CN106227999A 申请公布日期 2016.12.14
申请号 CN201610562487.1 申请日期 2016.07.16
申请人 北京工业大学 发明人 吴水才;曹荟强;林仲志
分类号 G06F19/00(2011.01)I 主分类号 G06F19/00(2011.01)I
代理机构 北京思海天达知识产权代理有限公司 11203 代理人 刘萍
主权项 一种高适应性跌倒检测方法,其特征在于包括如下步骤:1.1跌倒行为加速度数据采集;1.2提取跌倒过程加速度观测序列,构建训练数据集;1.3训练跌倒过程的隐马尔可夫模型λ<sub>Fall</sub>;1.4使用λ<sub>Fall</sub>检测人体活动,进行跌倒判断;所述步骤1.1包括,1.1.1使用三轴加速度传感器采集人体前胸处的加速度数据,同一时刻采样数据包括三组:x轴方向加速度数据a<sub>x</sub>,y轴方法加速度数据a<sub>y</sub>,z轴方向加速度数据a<sub>z</sub>;1.1.2计算三轴加速度数据的合加速度a<sub>svm</sub>,<maths num="0001"><math><![CDATA[<mrow><msub><mi>a</mi><mrow><mi>s</mi><mi>v</mi><mi>m</mi></mrow></msub><mo>=</mo><msqrt><mrow><msup><msub><mi>a</mi><mi>x</mi></msub><mn>2</mn></msup><mo>+</mo><msup><msub><mi>a</mi><mi>y</mi></msub><mn>2</mn></msup><mo>+</mo><msup><msub><mi>a</mi><mi>z</mi></msub><mn>2</mn></msup></mrow></msqrt><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>1</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0001051278730000011.GIF" wi="1069" he="86" /></maths>其中,a<sub>svm</sub>作为原始数据,其参与到跌倒过程HMM训练和跌倒检测中;所述步骤1.2包括,1.2.1计算跌倒行为加速度原始数据的最大值a<sub>max</sub>,a<sub>max</sub>代表跌倒后身体首次撞击到地面;截取a<sub>max</sub>前0.5s的数据,此段加速度数据定义为“跌倒过程加速度数据”;1.2.2将跌倒过程加速度数据按顺序平均分成L个数据单元,求取每个单元中数据的平均值o,按时间顺序排列得到时序o<sub>fall</sub>={o<sub>1</sub>,o<sub>2</sub>,…,o<sub>i</sub>},i=L;L的取值范围在5~15;1.2.3将时序o<sub>fall</sub>转换为观测序列O<sub>fall</sub>={O<sub>1</sub>,O<sub>2</sub>,…,O<sub>i</sub>},i=L,观测序列O<sub>fall</sub>为HMM的训练序列,转换公式为:<maths num="0002"><math><![CDATA[<mrow><msub><mi>O</mi><mi>i</mi></msub><mo>=</mo><mfenced open = '{' close = ''><mtable><mtr><mtd><mn>1</mn></mtd><mtd><mrow><mi>i</mi><mi>f</mi><mi> </mi><msub><mi>b</mi><mn>1</mn></msub><mo>&le;</mo><msub><mi>o</mi><mi>i</mi></msub><mo>&le;</mo><msub><mi>b</mi><mn>2</mn></msub></mrow></mtd></mtr><mtr><mtd><mn>2</mn></mtd><mtd><mrow><mi>i</mi><mi>f</mi><mi> </mi><msub><mi>b</mi><mn>2</mn></msub><mo>&lt;</mo><msub><mi>o</mi><mi>i</mi></msub><mo>&le;</mo><msub><mi>b</mi><mn>3</mn></msub></mrow></mtd></mtr><mtr><mtd><mo>...</mo></mtd><mtd><mrow></mrow></mtd></mtr><mtr><mtd><mi>N</mi></mtd><mtd><mrow><mi>i</mi><mi>f</mi><mi> </mi><msub><mi>b</mi><mrow><mi>n</mi><mo>-</mo><mn>1</mn></mrow></msub><mo>&lt;</mo><msub><mi>o</mi><mi>i</mi></msub><mo>&le;</mo><msub><mi>b</mi><mi>n</mi></msub></mrow></mtd></mtr></mtable></mfenced><mo>,</mo><mi>i</mi><mo>=</mo><mn>1</mn><mo>,</mo><mn>2</mn><mo>,</mo><mo>...</mo><mo>,</mo><mi>L</mi><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>2</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0001051278730000012.GIF" wi="1278" he="301" /></maths>其中,N为观测状态数,其取值范围为5~10,与原始数据值域被划分的区段数相等,b<sub>1</sub>,b<sub>2</sub>,…,b<sub>n</sub>为区段的端点值;所述步骤1.3包括,1.3.1设定HMM的初值λ={M,N,π,A,B},其中M是隐含状态数,N是观测状态数,π是初始状态矩阵,A是隐含状态转移矩阵,B是观测状态转移矩阵;1.3.2输入跌倒过程的观测序列O<sub>fall</sub>,使用标准Baum‑Welch算法进行HMM训练,得到跌倒过程模型λ<sub>Fall</sub>;所述步骤1.4包括,1.4.1采集人身体前胸处三轴加速度数据,计算合加速度作为原始数据;1.4.2设置一个滑动数据窗W处理所有原始数据,W时间长度为0.5s,与跌倒过程的时长相同;W向前移动的数据点个数为d,d取值最大为25,使得W移动前后的相邻两窗间至少会相交25个原始数据点;1.4.3将W内原始数据按顺序平均分为L个单元,求取每个单元中数据的平均值o,按时间顺序排列得到时序o<sub>m</sub>={o<sub>1</sub>,o<sub>2</sub>,…,o<sub>i</sub>},i=L,L与步骤1.2.2中为同一值;1.4.4将时序o<sub>m</sub>按照公式(2)转换为观测序列O<sub>m</sub>={O<sub>1</sub>,O<sub>2</sub>,…,O<sub>i</sub>},i=L;1.4.5输入O<sub>m</sub>到跌倒模型λ<sub>Fall</sub>中,使用HMM原理中的前后向算法计算序列O<sub>m</sub>与λ<sub>Fall</sub>的匹配程度P{O<sub>m</sub>|λ<sub>Fall</sub>},i=L,即序列O<sub>m</sub>是由λ<sub>Fall</sub>产生出的概率;设置概率阈值P<sub>th</sub>,其设定范围是60%~80%,将P{O<sub>m</sub>|λ<sub>Fall</sub>}与P<sub>th</sub>进行比较,若大于P<sub>th</sub>,则判断该时刻跌倒发生;否则跌倒未发生;之后W向前移动d进行新数据截取,转到步骤1.4.3直至处理完所有原始数据。
地址 100124 北京市朝阳区平乐园100号