一种基于机器学习的老人跌倒检测方法及其检测系统与流程

文档序号:11134726阅读:1004来源:国知局
一种基于机器学习的老人跌倒检测方法及其检测系统与制造工艺

本发明涉及一种医疗健康和机器学习技术领域,特别涉及一种基于机器学习的老人跌倒检测方法及其检测系统。



背景技术:

我国社会的老龄化问题日益加剧,其中老年人的健康安全监护问题的需求日益增加。卫生部2007年公布的《中国伤害预防报告》指出,老年人意外伤害的首要原因是跌倒。根据调查,49.7%的城市老人独自居住每年有25%的70岁以上老人在家中发生跌倒在跌倒后会面临双重危险,首先是跌倒本身直接造成的人体伤害,其次是如果跌倒后不能得到及时的救助,可能会导致更加严重的后果,因此跌倒是老年人群伤残、失能和死亡的重要原因之一,严重影响老年人日常生活能力、身体健康及精神状态,会给老年人造成巨大伤害,伤痛、慢性病急性发作、生活质量急剧下降及沉重的医疗负担往往接踵而至,会给家庭和社会增加巨大的负担,因此,如何预知老人跌倒的风险并最大限度地减少跌伤程度,往往是亲属们最为关心的问题,能够随时检测老年人跌倒事件的发生,让老年人能够及时获得救治就显得极为重要,这引起了跌倒检测系统研制的兴起和重视,它能够有效检测老年人是否发生跌倒并及时报警,保护了老年人群的健康与安全。例如2010年,飞利浦公司推出了紧急医疗救援系统,拥有项链式、手表式造型,可以随身佩戴,能及时准确地检测到老人因意外或突发疾病而发生的跌倒并连接中心请求救援,为老人提供了生命保障。2012年,深圳爱福莱科技有限公司推出了“跌倒自动求救手机”爱福莱A03,它能够在老人发生跌倒时自动侦测、自动定位、自动报警和自动求救,最大限度地保障了老人独居和外出期间的健康安全。

现有的跌倒方案大多只是利用了三轴加速度传感器,有一定的误报率。第1点,本发专利除了采用加速度传感器以外,还额外采用了陀螺仪和心率传感器作为判断的依据。第2点,老人跌倒检测方法分为阀值方法和机器学习分类方法,本发明采用机器学习分类方法,但采用的具体分类方法不同。第3点,本发明采用了字典学习进行跌倒特征向量的构造。因此虽然目前不少学者提出了跌倒检测方法,但目前的跌倒检测方法的研究仍存在诸多问题,主要问题是检测的准确率不高,存在一定的误判率。



技术实现要素:

本发明的首要目的在于克服现有技术的缺点与不足,提供一种基于机器学习的老人跌倒检测方法,该检测方法克服了现有的跌倒检测方法的准确率不高,存在较大误判情况的问题。

本发明的另一目的在于克服现有技术的缺点与不足,提供一种实现所述基于机器学习的老人跌倒检测方法的检测系统。

本发明的首要目的通过以下技术方案实现:一种基于机器学习的老人跌倒检测方法,包括以下步骤:

[1]采集每个传感器的样本信息,传感器包括三轴加速度传感器、陀螺仪、心率传感器。

[2]采用K-SVD算法,通过样本信息对字典进行训练,并通过OMP算法构造样本跌倒特征向量;

[3]用样本跌倒特征向量训练随机森林分类器;

[4]采集每个传感器的信息;

[5]调用已训练的字典,通过OMP算法构造跌倒特征向量;

[6]跌倒预测,根据跌倒特征向量,采用已训练的随机森林分类器预测跌倒,输出预测结果。

在步骤4中,所述传感器包括MPU-6050三轴加速度传感器、MPU-6050三轴陀螺仪和SON1303心率传感器,所述MPU-6050三轴加速度传感器、MPU-6050三轴陀螺仪和SON1303心率传感器的采样频率均为60Hz。

在步骤2中,采用K-SVD算法,所述K-SVD算法具体为:利用样本信息通过反复执行固定字典和更新字典优化以下方程,训练得到构造特征所需的字典,并采用OMP算法求解出样本跌倒特征向量,

subject to||xi||0≤T0

其中,Y代表一个n*N的样本矩阵,D代表一个n*K的字典矩阵,n是测量数据的维度,K=21;X代表一个K*N跌倒特征矩阵;表示2范数的平方;xi代表X矩阵的第i列;||·||0表示零范数;T0是预先设置的阀值。

在步骤3中,利用样本跌倒特征向量,采用Gini标准对树的数量为50,每棵树的深度为7的随机森林分类器进行训练。

在步骤5中,运用已训练的字典,通过OMP算法求以下解方程,构造出新数据的跌倒特征向量:

subject to||X″||0≤T0

其中,Y″代表采集传感器信息到的一个n*1的向量,n是测量数据的维度,本实施例中n=7;D′代表训练以后得到的一个n*K的字典矩阵,本实施例中K=21;X″代表所求向量Y″的一个K*1跌倒特征向量;表示2范数的平方;||·||0表示零范数;T0是预先设置的阀值。

在步骤6中,调用已训练的树的数量为50,每棵树的深度为7的随机森林分类器,以跌倒特征向量为输入,是否跌倒为输出,完成跌倒识别。

本发明的另一目的通过以下技术方案实现:一种实现所述的基于机器学习的老人跌倒检测方法的检测系统,包括:传感器模块、ARM主机模块和GPRS模块,传感器模块通过I/O直接与ARM主机模块相连,GPRS模块通过TTL串口直接与ARM主机模块相连,其中,所述传感器模块包括若干传感器,用于监测用户活动数据以判断是否发生跌倒;所述ARM主机模块通过对从I/O口接收到传感器模块的监测数据进行实时处理,判断用户是否发生跌倒行为,若判断结果为发生跌倒行为,则向GPRS模块发出指令;所述GPRS模块用于发送预警信息。

所述传感器模块包括三个独立的传感器,所述三个独立的传感器为:MPU-6050三轴加速度传感器、MPU-6050三轴陀螺仪和SON1303心率传感器;所述MPU-6050三轴加速度传感器的通信接口与所述ARM主机模块的一号I/O口相连,采样频率为60Hz;所述MPU-6050三轴陀螺仪的通信接口与所述ARM主机模块的二号I/O口相连,采样频率为60Hz;所述SON1303心率传感器的通信接口与所述ARM主机模块的三号I/O口相连,采样频率为60Hz。

所述ARM主机模块采用UT4412BV02开发板,所述UT4412BV02开发板的扩展I/O接口用于接收传所述感器模块的检测数据,所述UT4412BV02开发板的TTL串口用于向所述GPRS模块发送命令;所述ARM主机用于运行判别算法。

相对于现有技术,本发明具有如下的优点与有益效果:

本发明通过运用能提高数据维度的字典学习算法和鲁棒的随机森林分类器,有效的提高了老人跌倒检测的准确率。

附图说明

图1为一种基于机器学习的老人跌倒检测方法训练流程图。

图2为一种基于机器学习的老人跌倒检测方法执行流程图。

图3为一种基于机器学习的老人跌倒检测系统的系统结构图。

具体实施方式

本发明提出一种基于机器学习的老人跌倒检测方法,结合附图和实施例说明如下。

实施例

如图1所示,为一种基于机器学习的老人跌倒检测方法训练流程图,该方法包括以下步骤:

[1]采集每个传感器的样本信息,传感器包括三轴加速度传感器、陀螺仪、心率传感器。

[2]采用K-SVD算法,通过样本信息对字典进行训练,并通过OMP算法构造样本跌倒特征向量;

[3]用样本跌倒特征向量训练随机森林分类器;

步骤[1]采集每个传感器的样本信息;

a)被采集的传感器包括三轴加速度传感器,陀螺仪、心率传感器;

b)三轴加速度传感器:个体运动时,会在三个正交方向产生不同的加速度,这些加速度的变化值可用来判断身体姿势的变化,是判断个体是否发生跌倒的依据;

c)陀螺仪:现在陀螺仪可以精确地确定运动物体3个正交方向的转角,通过陀螺仪可以获取人体运动方位的变化来判断跌倒。

d)心率传感器:根据人体血液是红色的,即人体血液会反射红光吸收绿光的原理,获得心率数据。通过陀螺仪获得人体心率变化来判断跌倒。

步骤[2]采用K-SVD算法,通过样本信息对字典进行训练,并通过OMP算法构造样本跌倒特征向量;

a)采用K-SVD算法对字典进行训练,假设字典D为一个n*K的矩阵。首先初始化字典D,可以随机得到,然后进行迭代。具体迭代步骤如下:

第一阶段:固定字典D,采用OMP算法求解以下方程式,找到最好的稀疏矩阵X。

subject to||xi||0≤T0

其中,Y代表一个n*N的样本矩阵,n是测量数据的维度,本实施例中n=7,N是样本数;D代表一个n*K的字典矩阵,本实施例中K=21;X代表一个K*N跌倒特征矩阵;表示2范数的平方;xi代表X矩阵的第i列;||·||0表示零范数;T0是预先设置的阀值。

第二阶段:更新字典D。

通过以下方式将字典D逐列更新,以下假设要更新字典D的第k列dk

将目标函数重写成以下形式:

其中,Y代表一个n*N的样本矩阵,n是测量数据的维度,本实施例中n=7,N是样本数;D代表一个n*K的字典矩阵,本实施例中K=21;X代表一个K*N跌倒特征矩阵;表示2范数的平方;dj表示字典D的第j列;表示矩阵X中与dj相乘的第j行;k表示要更新字典D的第k列;Ek是一个固定的值,其值如下所示:

其中,Y代表一个n*N的样本矩阵,n是测量数据的维度,本实施例中,n=7,N是样本数;dj表示字典D的第j列;表示矩阵X中与dj相乘的第j行;k表示要更新字典D的第k列;

用SVD将Ek分解,得到的最大特征值对应的那个特征向量就作为dk

反复执行上述第一、二阶段的步骤,得到收敛的字典D′。

b)使用字典D′,构造出样本跌倒特征向量。采用OMP算法求解以下方程式,找到最好的稀疏矩阵X′。X′就是样本Y的跌倒特征向量。

其中,Y代表一个n*N的样本矩阵,n是测量数据的维度,本实施例中n=7,N是样本数;D′代表训练以后得到的一个n*K的字典矩阵,本实施例中K=21;X′代表所求的样本Y的一个K*N跌倒特征矩阵;表示2范数的平方;xi′代表X′矩阵的第i列;||·||0表示零范数;T0是预先设置的阀值。

步骤[3]用样本跌倒特征向量训练随机森林分类器:

a)将样本跌倒特征向量X′分为训练集X1′,测试集X2′,特征维数F=21。确定参数:使用到的CART的数量t=50,每棵树的深度d=7,每个节点使用到的特征数量f=3,终止条件:节点上最少样本数s=3。

对于第1-t棵树,i=1-t:

b)从X1′中有放回的抽取大小和X1′一样的训练集X1′(i),作为根节点的样本,从根节点开始训练;

c)如果当前节点上达到终止条件,则设置当前节点为叶子节点,该叶子节点的预测输出为当前节点样本集合中数量最多的那一类c(j),概率p为c(j)占当前样本集的比例。然后继续训练其他节点。如果当前节点没有达到终止条件,则从F维特征中无放回的随机选取f维特征。利用这f维特征,寻找分类效果最好的一维特征k及其阈值th,当前节点上样本第k维特征小于th的样本被划分到左节点,其余的被划分到右节点。继续训练其他节点。有关分类效果的评判标准在后面会讲。

d)重复b),c)直到所有节点都训练过了或者被标记为叶子节点。

e)重复b),c),d)直到所有CART都被训练过。

如图2所示,为一种基于机器学习的老人跌倒检测方法执行流程图,该方法包括以下步骤:

[1]采集每个传感器的信息;

[2]调用已训练的字典,通过OMP算法构造跌倒特征向量;

[3]跌倒预测,根据跌倒特征向量,采用已训练的随机森林分类器预测跌倒,输出预测结果。

步骤[1]采集每个传感器的信息;

在实际应用中被采集的传感器包括三轴加速度传感器,陀螺仪、心率传感器,假设采集到的信息为Y″。

步骤[2]调用已训练的字典D′,通过OMP算法构造跌倒特征向量。

运用OMP算法求解以下方程,得到跌倒特征向量X″:

subject to||X″||0≤T0

其中,Y″代表采集传感器信息到的一个n*1的向量,n是测量数据的维度,本实施例中n=7;D′代表训练以后得到的一个n*K的字典矩阵,本实施例中,K=21;X″代表所求向量Y″的一个K*1跌倒特征向量;表示2范数的平方;||·||0表示零范数;T0是预先设置的阀值。

步骤[3]跌倒预测,根据跌倒特征向量X″,采用已训练的随机森林分类器预测跌倒,输出预测结果;

利用随机森林的预测过程如下:

对于第1-t棵树,i=1-t:

a)从当前树的根节点开始,根据当前节点的阈值th,判断是进入左节点(<th)还是进入右节点(>=th),直到到达,某个叶子节点,并输出预测值。

b)重复执行(1)直到所有t棵树都输出了预测值。因为是分类问题,所以输出为所有树中预测概率总和最大的那一个类,即对每个c(j)的p进行累计。

如图3所示,为一种基于机器学习的老人跌倒检测系统的系统结构图,该系统运行流程包括如下步骤:

[1]传感器模块中的各传感器以60Hz的速率采集人体检测数据,其中,所述传感器包括心理传感器、加速度传感器、陀螺仪。

[2]ARM主机从I/O接口上接收传感器模块的监测数据,并且对数据进行实时处理,并判别监护对象是否发生了跌倒行为。如果判别为发生跌倒行为,则通过TTL接口向GPRS模块发送AT指令。其中处理的方法为本发明所述的一种基于机器学习的老人跌倒检测方法。

[3]GPRS模块接收到ARM模块发送过来的AT指令以后,通过短信的方式向监护对象的亲属发送预警指令。

以上所述仅为本发明的优选实施例,并不用于限制本发明,显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1