CN112472075B - 一种跌倒检测方法、系统和存储设备 - Google Patents
一种跌倒检测方法、系统和存储设备 Download PDFInfo
- Publication number
- CN112472075B CN112472075B CN202011518779.8A CN202011518779A CN112472075B CN 112472075 B CN112472075 B CN 112472075B CN 202011518779 A CN202011518779 A CN 202011518779A CN 112472075 B CN112472075 B CN 112472075B
- Authority
- CN
- China
- Prior art keywords
- acceleration
- judging whether
- int
- returning
- executing
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000001514 detection method Methods 0.000 title claims abstract description 49
- 230000001133 acceleration Effects 0.000 claims abstract description 203
- 230000005484 gravity Effects 0.000 claims description 73
- 230000008859 change Effects 0.000 claims description 18
- 238000006243 chemical reaction Methods 0.000 claims description 11
- 238000005070 sampling Methods 0.000 claims description 11
- 238000012937 correction Methods 0.000 claims description 9
- 238000004891 communication Methods 0.000 claims description 7
- 230000004044 response Effects 0.000 claims description 2
- 230000010354 integration Effects 0.000 claims 2
- 238000005516 engineering process Methods 0.000 abstract description 3
- 238000000034 method Methods 0.000 description 17
- 230000036544 posture Effects 0.000 description 17
- 241000209094 Oryza Species 0.000 description 12
- 235000007164 Oryza sativa Nutrition 0.000 description 12
- 235000009566 rice Nutrition 0.000 description 12
- 238000010586 diagram Methods 0.000 description 3
- 230000009471 action Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 2
- 238000002474 experimental method Methods 0.000 description 2
- 230000009191 jumping Effects 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 238000005096 rolling process Methods 0.000 description 2
- 208000017667 Chronic Disease Diseases 0.000 description 1
- 230000004075 alteration Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 238000000844 transformation Methods 0.000 description 1
- 210000000707 wrist Anatomy 0.000 description 1
Classifications
-
- A—HUMAN NECESSITIES
- A61—MEDICAL OR VETERINARY SCIENCE; HYGIENE
- A61B—DIAGNOSIS; SURGERY; IDENTIFICATION
- A61B5/00—Measuring for diagnostic purposes; Identification of persons
- A61B5/103—Measuring devices for testing the shape, pattern, colour, size or movement of the body or parts thereof, for diagnostic purposes
- A61B5/11—Measuring movement of the entire body or parts thereof, e.g. head or hand tremor or mobility of a limb
- A61B5/1116—Determining posture transitions
- A61B5/1117—Fall detection
-
- A—HUMAN NECESSITIES
- A61—MEDICAL OR VETERINARY SCIENCE; HYGIENE
- A61B—DIAGNOSIS; SURGERY; IDENTIFICATION
- A61B5/00—Measuring for diagnostic purposes; Identification of persons
- A61B5/103—Measuring devices for testing the shape, pattern, colour, size or movement of the body or parts thereof, for diagnostic purposes
- A61B5/11—Measuring movement of the entire body or parts thereof, e.g. head or hand tremor or mobility of a limb
- A61B5/1113—Local tracking of patients, e.g. in a hospital or private home
- A61B5/1115—Monitoring leaving of a patient support, e.g. a bed or a wheelchair
-
- G—PHYSICS
- G16—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
- G16H—HEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
- G16H40/00—ICT specially adapted for the management or administration of healthcare resources or facilities; ICT specially adapted for the management or operation of medical equipment or devices
- G16H40/60—ICT specially adapted for the management or administration of healthcare resources or facilities; ICT specially adapted for the management or operation of medical equipment or devices for the operation of medical equipment or devices
-
- A—HUMAN NECESSITIES
- A61—MEDICAL OR VETERINARY SCIENCE; HYGIENE
- A61B—DIAGNOSIS; SURGERY; IDENTIFICATION
- A61B2562/00—Details of sensors; Constructional details of sensor housings or probes; Accessories for sensors
- A61B2562/02—Details of sensors specially adapted for in-vivo measurements
- A61B2562/0219—Inertial sensors, e.g. accelerometers, gyroscopes, tilt switches
Landscapes
- Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Engineering & Computer Science (AREA)
- Biomedical Technology (AREA)
- Medical Informatics (AREA)
- Public Health (AREA)
- General Health & Medical Sciences (AREA)
- Biophysics (AREA)
- Heart & Thoracic Surgery (AREA)
- Veterinary Medicine (AREA)
- Physiology (AREA)
- Dentistry (AREA)
- Oral & Maxillofacial Surgery (AREA)
- Physics & Mathematics (AREA)
- Animal Behavior & Ethology (AREA)
- Surgery (AREA)
- Pathology (AREA)
- Molecular Biology (AREA)
- Primary Health Care (AREA)
- Business, Economics & Management (AREA)
- General Business, Economics & Management (AREA)
- Epidemiology (AREA)
- Gyroscopes (AREA)
Abstract
本发明涉及检测技术领域,特别涉及一种跌倒检测方法、系统和存储设备。所述一种跌倒检测方法,包括步骤:步骤1:响应初始工作指令,获取运动传感器的X方向、Y方向、Z方向的初始加速度和角速度;步骤2:根据所述X方向、Y方向、Z方向的初始加速度和角速度计算得初始角度;步骤10:发出跌倒告警提示;步骤11:判断所述合加速度小于阈值A1的次数是否大于等于N2次;步骤12:判断Z方向的初始加速度是否为负且绝对值大于阈值A5,若是,则执行步骤13;步骤13:判断时间窗口T3内,所述合加速度是否大于阈值A6,若是,则执行步骤14。上述步骤可有效地将竖直跌倒和坠床跌倒有效地区分开,提高跌倒检测的正确率,降低其误报率。
Description
技术领域
本发明涉及检测技术领域,特别涉及一种跌倒检测方法、系统和存储设备。
背景技术
由于身体机能随年龄增长而逐步退化,以及受到一些慢性疾患的影响,老年人极易受到突发跌倒的威胁,而发生跌倒后没有第一时间被发现并得到救助往往会引发更加恶劣的后果,因此研究具有实用价值的跌倒检测装置及系统非常有意义。目前跌倒检测的解决方案主要有基于视觉和基于传感器两大类,基于视觉的跌倒检测受限于图像质量、布置成本、隐私安全等因素,不利于实际部署与使用,基于传感器的跌倒检测系统具有更高的实用价值。
而基于传感器的跌倒检测系统需要综合考虑系统复杂度、检测准确性等问题。“浙江大学城市学院,一种跌倒检测方法、跌倒检测装置和手腕式设备,中国发明专利,CN102657533A,2012.09.12”公开的基于三轴加速度计的跌倒检测装置,虽然整体系统简单易实现但是简单依靠加速度计传感器容易出现误判。“中国科学院深圳先进技术研究院,用于判断人体跌倒的方法,中国发明专利,CN 103142234 B,2015.04.01”采用单轴倾角传感器结合六轴传感器模块辅助判断,跌倒检测可靠性增加的同时也在一定程度上增加了系统复杂度,不利于系统的小型化、可穿戴化。
另外,在现有基于传感器的跌倒检测装置中,很多是基于人体初始姿态为竖直来进行判断检测的,并未对竖直跌倒和坠床跌倒加以区分识别,这将导致在坠床跌倒场景下容易出现误判漏判。
发明内容
为此,需要提供一种跌倒检测方法,用以解决现有跌倒检测方法,对竖直跌倒和坠床跌倒区分精准度差的问题。具体技术方案如下:
一种跌倒检测方法,包括步骤:
步骤1:响应初始工作指令,获取运动传感器的X方向、Y方向、Z方向的初始加速度和角速度;
步骤2:根据所述X方向、Y方向、Z方向的初始加速度和角速度计算得初始角度,所述初始角度包括以下中的一种或多种:俯仰角、横滚角、偏航角;
步骤3:根据所述X方向、Y方向、Z方向的初始加速度计算得合加速度,判断所述合加速度是否小于阈值A1,若不小于,则返回步骤1,若小于,执行步骤4;
步骤4:判断所述合加速度小于阈值A1的次数是否大于等于N1次,若是,则执行步骤5,若否则执行步骤11;
步骤5:判断Y方向的初始速度是否为负且绝对值大于阈值A2,若是,则执行步骤6,若否,则返回步骤1;
步骤6:判断在时间窗口T1内,所述合加速度是否大于阈值A3,若是,则执行步骤7,若否,则返回步骤1;
步骤7:判断在时间窗口T2内,所述合加速度的波动大小下是否小于阈值A4,若是,则执行步骤8,若否,则返回步骤1;
步骤8:计算当前俯仰角角度、横滚角角度后,执行步骤9;
步骤9:判断俯仰角或者横滚角的角度变化差值是否大于阈值θ1,若是,则判定为竖直跌倒,并执行步骤10,若否,则返回步骤1;
步骤10:发出跌倒告警提示;
步骤11:判断所述合加速度小于阈值A1的次数是否大于等于N2次,若是,则执行步骤12,若否,则返回步骤1;
步骤12:判断Z方向的初始加速度是否为负且绝对值大于阈值A5,若是,则执行步骤13,若否,则返回步骤1;
步骤13:判断时间窗口T3内,所述合加速度是否大于阈值A6,若是,则执行步骤14,若否,则返回步骤1;
步骤14:判断时间窗口T4内,所述合加速度的波动大小是否小于阈值A4,若是,则执行步骤15,若否,则返回步骤1;
步骤15:计算当前偏航角角度后执行步骤16;
步骤16:判断所述偏航角角度是否大于阈值θ2,若是,则判定为坠床跌倒并执行步骤10,若否,则返回步骤1。
进一步的,所述“根据所述X方向、Y方向、Z方向的初始加速度和角速度计算得初始角度,所述初始角度包括以下中的一种或多种:俯仰角、横滚角、偏航角”,具体还包括步骤:
步骤21:将角速度的度转换成弧度:gx=gx*DEG2RAD,gy=gy*DEG2RAD,gz=gz*DEG2RAD,其中gx为X方向角速度,gy为Y方向角速度,gz为Z方向角速度,DEG2RAD为转换系数;
步骤22:计算单位化加速度值: 其中ax为X方向加速度,ay为Y方向加速度,az为Z方向加速度;
步骤23:计算重力在三个方向上的分量:vx=2*(q1*q3-q0*q2);vy=2*(q0*q1+q2*q3);vz=q0*q0-q1*q1-q2*q2+q3*q3;其中q0、q1、q2、q3为四元数,初始值设置为q0=1,q1=q2=q3=0;
步骤24:计算三个方向重力误差:ex=(ay*vz-az*vy),ey=(az*vx-ax*vz);,ez=(ax*vy-ay*vx),其中ex为X方向上重力分量误差,ey为Y方向上重力分量误差,ez为Z方向上重力分量误差,对误差进行积分:ex_int=ex_int+ex*Ki,ey_int=ey_int+ey*Ki,ez_int=ez_int+ez*Ki,其中ex_int为X方向上重力分量误差积分,ey_int为Y方向上重力分量误差积分,ez_int为Z方向上重力分量误差积分,Ki为积分补偿系数;
步骤25:修正三个方向上的角速度:gx=gx+Kp*ex+ex_int,gy=gy+Kp*ey+ey_int,gz=gz+Kp*ez+ez_int,其中Kp为修正系数;
步骤26:采用一阶毕卡解法对四元数方程进行求解,求解所得四元数为:q0=q0+(-q1*gx-q2*gy-q3*gz)*T,q1=q1+(q0*gx+q2*gz-q3*gy)*T,q2=q2+(q0*gy-q1*gz+q3*gx)*T,q3=q3+(q0*gz+q1*gy-q2*gx)*T,其中T为采样周期的一半;
步骤27:单位化四元数:
步骤28:将四元数转换为欧拉角:pitch=asin(-2*q1*q3+2*q0*q2)*RAD2DEG,roll=atan2(2*q2*q3+2*q0*q1,-2*q1*q1-2*q2*q2+1)*RAD2DEG,yaw=atan2(2*q1*q2+2*q0*q3,q0*q0+*q1*q1-q2*q2-q3*q3)*RAD2DEG,其中pitch为俯仰角,roll为横滚角,yaw为偏航角,RAD2DEG为弧度转换为度系数。
为解决上述技术问题,还提供了一种存储设备,具体技术方案如下:
一种存储设备,其中存储有指令集,所述指令集用于执行:
步骤1:响应初始工作指令,获取运动传感器的X方向、Y方向、Z方向的初始加速度和角速度;
步骤2:根据所述X方向、Y方向、Z方向的初始加速度和角速度计算得初始角度,所述初始角度包括以下中的一种或多种:俯仰角、横滚角、偏航角;
步骤3:根据所述X方向、Y方向、Z方向的初始加速度计算得合加速度,判断所述合加速度是否小于阈值A1,若不小于,则返回步骤1,若小于,执行步骤4;
步骤4:判断所述合加速度小于阈值A1的次数是否大于等于N1次,若是,则执行步骤5,若否则执行步骤11;
步骤5:判断Y方向的初始速度是否为负且绝对值大于阈值A2,若是,则执行步骤6,若否,则返回步骤1;
步骤6:判断在时间窗口T1内,所述合加速度是否大于阈值A3,若是,则执行步骤7,若否,则返回步骤1;
步骤7:判断在时间窗口T2内,所述合加速度的波动大小下是否小于阈值A4,若是,则执行步骤8,若否,则返回步骤1;
步骤8:计算当前俯仰角角度、横滚角角度后,执行步骤9;
步骤9:判断俯仰角或者横滚角的角度变化差值是否大于阈值θ1,若是,则判定为竖直跌倒,并执行步骤10,若否,则返回步骤1;
步骤10:发出跌倒告警提示;
步骤11:判断所述合加速度小于阈值A1的次数是否大于等于N2次,若是,则执行步骤12,若否,则返回步骤1;
步骤12:判断Z方向的初始加速度是否为负且绝对值大于阈值A5,若是,则执行步骤13,若否,则返回步骤1;
步骤13:判断时间窗口T3内,所述合加速度是否大于阈值A6,若是,则执行步骤14,若否,则返回步骤1;
步骤14:判断时间窗口T4内,所述合加速度的波动大小是否小于阈值A4,若是,则执行步骤15,若否,则返回步骤1;
步骤15:计算当前偏航角角度后执行步骤16;
步骤16:判断所述偏航角角度是否大于阈值θ2,若是,则判定为坠床跌倒并执行步骤10,若否,则返回步骤1。
进一步的,所述指令集还用于执行:
步骤21:将角速度的度转换成弧度:gx=gx*DEG2RAD,gy=gy*DEG2RAD,gz=gz*DEG2RAD,其中gx为X方向角速度,gy为Y方向角速度,gz为Z方向角速度,DEG2RAD为转换系数;
步骤22:计算单位化加速度值: 其中ax为X方向加速度,ay为Y方向加速度,az为Z方向加速度;
步骤23:计算重力在三个方向上的分量:vx=2*(q1*q3-q0*q2);vy=2*(q0*q1+q2*q3);vz=q0*q0-q1*q1-q2*q2+q3*q3;其中q0、q1、q2、q3为四元数,初始值设置为q0=1,q1=q2=q3=0;
步骤24:计算三个方向重力误差:ex=(ay*vz-az*vy),ey=(az*vx-ax*vz);,ez=(ax*vy-ay*vx),其中ex为X方向上重力分量误差,ey为Y方向上重力分量误差,ez为Z方向上重力分量误差,对误差进行积分:ex_int=ex_int+ex*Ki,ey_int=ey_int+ey*Ki,ez_int=ez_int+ez*Ki,其中ex_int为X方向上重力分量误差积分,ey_int为Y方向上重力分量误差积分,ez_int为Z方向上重力分量误差积分,Ki为积分补偿系数;
步骤25:修正三个方向上的角速度:gx=gx+Kp*ex+ex_int,gy=gy+Kp*ey+ey_int,gz=gz+Kp*ez+ez_int,其中Kp为修正系数;
步骤26:采用一阶毕卡解法对四元数方程进行求解,求解所得四元数为:q0=q0+(-q1*gx-q2*gy-q3*gz)*T,q1=q1+(q0*gx+q2*gz-q3*gy)*T,q2=q2+(q0*gy-q1*gz+q3*gx)*T,q3=q3+(q0*gz+q1*gy-q2*gx)*T,其中T为采样周期的一半;
步骤27:单位化四元数:
步骤28:将四元数转换为欧拉角:pitch=asin(-2*q1*q3+2*q0*q2)*RAD2DEG,roll=atan2(2*q2*q3+2*q0*q1,-2*q1*q1-2*q2*q2+1)*RAD2DEG,yaw=atan2(2*q1*q2+2*q0*q3,q0*q0+*q1*q1-q2*q2-q3*q3)*RAD2DEG,其中pitch为俯仰角,roll为横滚角,yaw为偏航角,RAD2DEG为弧度转换为度系数。
为解决上述技术问题,还提供了一种跌倒检测系统,具体技术方案如下:
一种跌倒检测系统,包括:运动传感器模块、CPU模块、天线模块、开关模块、电源模块、充电模块、LED指示模块;
所述电源模块分别连接所述运动传感器模块、所述CPU模块和所述充电模块;
所述CPU模块分别连接所述天线模块、所述开关模块、所述LED指示模块和所述运动传感器模块;
所述CPU模块包括:处理器和无线通讯子模块;
所述运动传感器模块用于执行步骤:步骤1:响应初始工作指令,获取运动传感器的X方向、Y方向、Z方向的初始加速度和角速度;
所述CPU模块用于执行如下步骤:步骤2:根据所述X方向、Y方向、Z方向的初始加速度和角速度计算得初始角度,所述初始角度包括以下中的一种或多种:俯仰角、横滚角、偏航角;
步骤3:根据所述X方向、Y方向、Z方向的初始加速度计算得合加速度,判断所述合加速度是否小于阈值A1,若不小于,则返回步骤1,若小于,执行步骤4;
步骤4:判断所述合加速度小于阈值A1的次数是否大于等于N1次,若是,则执行步骤5,若否则执行步骤11;
步骤5:判断Y方向的初始速度是否为负且绝对值大于阈值A2,若是,则执行步骤6,若否,则返回步骤1;
步骤6:判断在时间窗口T1内,所述合加速度是否大于阈值A3,若是,则执行步骤7,若否,则返回步骤1;
步骤7:判断在时间窗口T2内,所述合加速度的波动大小下是否小于阈值A4,若是,则执行步骤8,若否,则返回步骤1;
步骤8:计算当前俯仰角角度、横滚角角度后,执行步骤9;
步骤9:判断俯仰角或者横滚角的角度变化差值是否大于阈值θ1,若是,则判定为竖直跌倒,并执行步骤10,若否,则返回步骤1;
步骤10:发出跌倒告警提示;
步骤11:判断所述合加速度小于阈值A1的次数是否大于等于N2次,若是,则执行步骤12,若否,则返回步骤1;
步骤12:判断Z方向的初始加速度是否为负且绝对值大于阈值A5,若是,则执行步骤13,若否,则返回步骤1;
步骤13:判断时间窗口T3内,所述合加速度是否大于阈值A6,若是,则执行步骤14,若否,则返回步骤1;
步骤14:判断时间窗口T4内,所述合加速度的波动大小是否小于阈值A4,若是,则执行步骤15,若否,则返回步骤1;
步骤15:计算当前偏航角角度后执行步骤16;
步骤16:判断所述偏航角角度是否大于阈值θ2,若是,则判定为坠床跌倒并执行步骤10,若否,则返回步骤1。
进一步的,所述CPU模块还用于执行如下步骤:步骤21:将角速度的度转换成弧度:gx=gx*DEG2RAD,gy=gy*DEG2RAD,gz=gz*DEG2RAD,其中gx为X方向角速度,gy为Y方向角速度,gz为Z方向角速度,DEG2RAD为转换系数;
步骤22:计算单位化加速度值: 其中ax为X方向加速度,ay为Y方向加速度,az为Z方向加速度;
步骤23:计算重力在三个方向上的分量:vx=2*(q1*q3-q0*q2);vy=2*(q0*q1+q2*q3);vz=q0*q0-q1*q1-q2*q2+q3*q3;其中q0、q1、q2、q3为四元数,初始值设置为q0=1,q1=q2=q3=0;
步骤24:计算三个方向重力误差:ex=(ay*vz-az*vy),ey=(az*vx-ax*vz);,ez=(ax*vy-ay*vx),其中ex为X方向上重力分量误差,ey为Y方向上重力分量误差,ez为Z方向上重力分量误差,对误差进行积分:ex_int=ex_int+ex*Ki,ey_int=ey_int+ey*Ki,ez_int=ez_int+ez*Ki,其中ex_int为X方向上重力分量误差积分,ey_int为Y方向上重力分量误差积分,ez_int为Z方向上重力分量误差积分,Ki为积分补偿系数;
步骤25:修正三个方向上的角速度:gx=gx+Kp*ex+ex_int,gy=gy+Kp*ey+ey_int,gz=gz+Kp*ez+ez_int,其中Kp为修正系数;
步骤26:采用一阶毕卡解法对四元数方程进行求解,求解所得四元数为:q0=q0+(-q1*gx-q2*gy-q3*gz)*T,q1=q1+(q0*gx+q2*gz-q3*gy)*T,q2=q2+(q0*gy-q1*gz+q3*gx)*T,q3=q3+(q0*gz+q1*gy-q2*gx)*T,其中T为采样周期的一半;
步骤27:单位化四元数:
步骤28:将四元数转换为欧拉角:pitch=asin(-2*q1*q3+2*q0*q2)*RAD2DEG,roll=atan2(2*q2*q3+2*q0*q1,-2*q1*q1-2*q2*q2+1)*RAD2DEG,yaw=atan2(2*q1*q2+2*q0*q3,q0*q0+*q1*q1-q2*q2-q3*q3)*RAD2DEG,其中pitch为俯仰角,roll为横滚角,yaw为偏航角,RAD2DEG为弧度转换为度系数。
进一步的,所述无线通讯子模块包括:蓝牙和WIFI模块;
所述天线模块用于与所述蓝牙和WIFI模块进行通讯。
进一步的,所述运动传感器模块型号为LSM6DSL。
本发明的有益效果是:通过执行步骤1:响应初始工作指令,获取运动传感器的X方向、Y方向、Z方向的初始加速度和角速度;步骤2:根据所述X方向、Y方向、Z方向的初始加速度和角速度计算得初始角度,所述初始角度包括以下中的一种或多种:俯仰角、横滚角、偏航角;步骤3:根据所述X方向、Y方向、Z方向的初始加速度计算得合加速度,判断所述合加速度是否小于阈值A1,若不小于,则返回步骤1,若小于,执行步骤4;步骤4:判断所述合加速度小于阈值A1的次数是否大于等于N1次,若是,则执行步骤5,若否则执行步骤11;步骤5:判断Y方向的初始速度是否为负且绝对值大于阈值A2,若是,则执行步骤6,若否,则返回步骤1;步骤6:判断在时间窗口T1内,所述合加速度是否大于阈值A3,若是,则执行步骤7,若否,则返回步骤1;步骤7:判断在时间窗口T2内,所述合加速度的波动大小下是否小于阈值A4,若是,则执行步骤8,若否,则返回步骤1;步骤8:计算当前俯仰角角度、横滚角角度后,执行步骤9;步骤9:判断俯仰角或者横滚角的角度变化差值是否大于阈值θ1,若是,则判定为竖直跌倒,并执行步骤10,若否,则返回步骤1;步骤10:发出跌倒告警提示;步骤11:判断所述合加速度小于阈值A1的次数是否大于等于N2次,若是,则执行步骤12,若否,则返回步骤1;步骤12:判断Z方向的初始加速度是否为负且绝对值大于阈值A5,若是,则执行步骤13,若否,则返回步骤1;步骤13:判断时间窗口T3内,所述合加速度是否大于阈值A6,若是,则执行步骤14,若否,则返回步骤1;步骤14:判断时间窗口T4内,所述合加速度的波动大小是否小于阈值A4,若是,则执行步骤15,若否,则返回步骤1;步骤15:计算当前偏航角角度后执行步骤16;步骤16:判断所述偏航角角度是否大于阈值θ2,若是,则判定为坠床跌倒并执行步骤10,若否,则返回步骤1。上述步骤可有效地将竖直跌倒和坠床跌倒有效地区分开,提高跌倒检测的正确率,降低其误报率。
附图说明
图1为具体实施方式所述一种跌倒检测方法的流程图;
图2a为具体实施方式所述人体竖直的运动传感器三维方向示意图;
图2b为具体实施方式所述人体平躺的运动传感器三维方向示意图;
图3为具体实施方式所述一种存储设备的模块示意图
图4为具体实施方式所述一种跌倒检测系统的模块示意图。
附图标记说明:
300、存储设备,
400、一种跌倒检测系统,
401、CPU模块,
402、运动传感器模块,
403、天线模块,
404、电源模块,
405、开关模块,
406、LED指示模块,
407、充电模块,
4011、处理器,
4012、无线通讯子模块,
40121、蓝牙,
40122、WIFI模块。
具体实施方式
为详细说明技术方案的技术内容、构造特征、所实现目的及效果,以下结合具体实施例并配合附图详予说明。
请参阅图1、图2和图4,在本实施方式中,一种跌倒检测方法可应用在一种跌倒检测系统上,所述跌倒检测系统的模块连接图如图4所示,其中所述跌倒检测系统中的运动传感器模块即是用来采集X方向、Y方向、Z方向的初始加速度和角速度;CPU模块即是用来对对初始加速度和角速度进行计算。
首先结合图2a和图2b,对人体直立和坠床翻滚跌倒的过程做一些说明:
根据人体直立和坠床翻滚跌倒过程中失重时间不同,以及三维加速度方向的不同变化,并结合合加速度阈值与角度变化阈值,对人体竖直跌倒和坠床翻滚跌倒进行分类检测。如图2(a)所示,人体在竖直姿态下运动传感器的三维轴向关系为:Y轴与重力加速度G方向相反,X轴与Z轴平行于水平支撑面与X轴垂直且满足右手定则;如图2(b)所示,人体在水平姿态下运动传感器的三维轴向关系为:X轴与重力加速度G方向相反,Y轴与Z轴平行于支持面于人体相垂直且满足右手定则。根据习惯,将人体绕X轴旋转产生的角度称为俯仰角,将人体绕Y轴旋转产生的角度称为偏航角,将人体绕Z轴旋转产生的角度称为横滚角。
请参阅图1,一种跌倒检测方法的具体实施方式如下:
步骤1:响应初始工作指令,获取运动传感器的X方向、Y方向、Z方向的初始加速度和角速度。具体可为:跌倒检测设备开机或者是开始工作就开始获取运动传感器的X方向、Y方向、Z方向的初始加速度和角速度。这三个方向的初始加速度和角度上用于后续判断人体初始姿态为竖直还是水平,以便于对两种姿态的跌倒进行分类检测。
步骤2:根据所述X方向、Y方向、Z方向的初始加速度和角速度计算得初始角度,所述初始角度包括以下中的一种或多种:俯仰角、横滚角、偏航角。
步骤3:根据所述X方向、Y方向、Z方向的初始加速度计算得合加速度,判断所述合加速度是否小于阈值A1,若不小于,则返回步骤1,若小于,执行步骤4。
步骤4:判断所述合加速度小于阈值A1的次数是否大于等于N1次,若是,则执行步骤5,若否则执行步骤11。具体可如下:利用步骤1所获取的X方向、Y方向、Z方向的初始加速度计算得到合加速度ACC_SVM值,判断ACC_SVM值是否小于阈值A1,不满足则返回步骤1,满足则记录ACC_SVM值连续小于阈值A1的次数,如果超过N1次则进行下一步,如果不超过N1次但是超过N2次则跳转到步骤11,如果不超过N2次则返回步骤1。合加速度值计算方法为:其中ACC_X表示X方向的加速度,ACC_Y表示Y方向的加速度,ACC_Z表示Z方向的加速度。可以理解的,滚床跌倒相比于竖直跌倒的失重时间短,因此阈值N2小于阈值N1,具体阈值根据传感器采样频率决定。
步骤5:判断Y方向的初始速度是否为负且绝对值大于阈值A2,若是,则执行步骤6,若否,则返回步骤1。若为是,则说明处于竖直初始姿态的人体发生近似跌倒的失重行为,进入竖直跌倒判断分支。
步骤6:判断在时间窗口T1内,所述合加速度是否大于阈值A3,若是,则执行步骤7,若否,则返回步骤1。
步骤7:判断在时间窗口T2内,所述合加速度的波动大小下是否小于阈值A4,若是,则执行步骤8,若否,则返回步骤1。
步骤8:计算当前俯仰角角度、横滚角角度后,执行步骤9。
步骤9:判断俯仰角或者横滚角的角度变化差值是否大于阈值θ1,若是,则判定为竖直跌倒,并执行步骤10,若否,则返回步骤1。具体可如下:判断俯仰角或者横滚角的角度变化差值是否大于阈值θ1,若“是”则说明初始姿态为竖直的人体发生跌倒,触发跌倒告警事件;若“否”则返回步骤1。可以理解,初始姿态为竖直的人体发生跌倒时,发生向前或者向后的跌倒情况下是俯仰角发生明显变化,发生向左或者向右的跌倒情况下是横滚角发生明显变化,因此在该步骤只需要判断俯仰角或者横滚角的角度变化差值是否超过阈值θ1。
步骤10:发出跌倒告警提示。
步骤11:判断所述合加速度小于阈值A1的次数是否大于等于N2次,若是,则执行步骤12,若否,则返回步骤1;
步骤12:判断Z方向的初始加速度是否为负且绝对值大于阈值A5,若是,则说明处于水平初始姿态的人体发生近似跌倒的失重行为,进入坠床跌倒判断分支,则执行步骤13,若否,则返回步骤1;
步骤13:判断时间窗口T3内,所述合加速度是否大于阈值A6,若是,则执行步骤14,若否,则返回步骤1;
步骤14:判断时间窗口T4内,所述合加速度的波动大小是否小于阈值A4,若是,则执行步骤15,若否,则返回步骤1;
步骤15:计算当前偏航角角度后执行步骤16;
步骤16:判断所述偏航角角度是否大于阈值θ2,若是,则判定为坠床跌倒并执行步骤10,若否,则返回步骤1。
可以理解,初始姿态为水平的人体发生跌倒时,坠床翻滚会导致偏航角发生明显变化,因此在该步骤只需要判断偏航角的角度变化差值是否超过阈值θ2。
需要说明的是,上述步骤中的相关参数可通过实验等方法获得,其典型值如下表所示。
参数 | 典型值 | 单位 |
A1 | 11 | 米/秒2 |
A2 | 6.9 | 米/秒2 |
A3 | 19.6 | 米/秒2 |
A4 | 0.8 | 米/秒2 |
A5 | 8.5 | 米/秒2 |
A6 | 14.7 | 米/秒2 |
N1 | 6 | 次 |
N2 | 3 | 次 |
T1 | 400 | 毫秒 |
T2 | 1000 | 毫秒 |
T3 | 150 | 毫秒 |
T4 | 500 | 毫秒 |
θ1 | 40 | 度 |
θ2 | 50 | 度 |
进一步的,所述“根据所述X方向、Y方向、Z方向的初始加速度和角速度计算得初始角度,所述初始角度包括以下中的一种或多种:俯仰角、横滚角、偏航角”,具体还包括步骤:
步骤21:将角速度的度转换成弧度:gx=gx*DEG2RAD,gy=gy*DEG2RAD,gz=gz*DEG2RAD,其中gx为X方向角速度,gy为Y方向角速度,gz为Z方向角速度,DEG2RAD为转换系数;
步骤22:计算单位化加速度值: 其中ax为X方向加速度,ay为Y方向加速度,az为Z方向加速度;
步骤23:计算重力在三个方向上的分量:vx=2*(q1*q3-q0*q2);vy=2*(q0*q1+q2*q3);vz=q0*q0-q1*q1-q2*q2+q3*q3;其中q0、q1、q2、q3为四元数,初始值设置为q0=1,q1=q2=q3=0;
步骤24:计算三个方向重力误差:ex=(ay*vz-az*vy),ey=(az*vx-ax*vz);,ez=(ax*vy-ay*vx),其中ex为X方向上重力分量误差,ey为Y方向上重力分量误差,ez为Z方向上重力分量误差,对误差进行积分:ex_int=ex_int+ex*Ki,ey_int=ey_int+ey*Ki,ez_int=ez_int+ez*Ki,其中ex_int为X方向上重力分量误差积分,ey_int为Y方向上重力分量误差积分,ez_int为Z方向上重力分量误差积分,Ki为积分补偿系数;
步骤25:修正三个方向上的角速度:gx=gx+Kp*ex+ex_int,gy=gy+Kp*ey+ey_int,gz=gz+Kp*ez+ez_int,其中Kp为修正系数;
步骤26:采用一阶毕卡解法对四元数方程进行求解,求解所得四元数为:q0=q0+(-q1*gx-q2*gy-q3*gz)*T,q1=q1+(q0*gx+q2*gz-q3*gy)*T,q2=q2+(q0*gy-q1*gz+q3*gx)*T,q3=q3+(q0*gz+q1*gy-q2*gx)*T,其中T为采样周期的一半;
步骤27:单位化四元数:
步骤28:将四元数转换为欧拉角:pitch=asin(-2*q1*q3+2*q0*q2)*RAD2DEG,roll=atan2(2*q2*q3+2*q0*q1,-2*q1*q1-2*q2*q2+1)*RAD2DEG,yaw=atan2(2*q1*q2+2*q0*q3,q0*q0+*q1*q1-q2*q2-q3*q3)*RAD2DEG,其中pitch为俯仰角,roll为横滚角,yaw为偏航角,RAD2DEG为弧度转换为度系数。
其中,DEG2RAD为转换系数,取值为0.01745。RAD2DEG为弧度转换为度系数,取值为57.3。
通过上述方法可有效地将竖直跌倒和坠床跌倒有效地区分开,提高跌倒检测的正确率,降低其误报率。
请参阅图2至图3,在本实施方式中,一种存储设备主要为任意可用于计算的设备,如cpu等。具体实施方式如下:
一种存储设备,其中存储有指令集,所述指令集用于执行:
步骤1:响应初始工作指令,获取运动传感器的X方向、Y方向、Z方向的初始加速度和角速度。具体可为:跌倒检测设备开机或者是开始工作就开始获取运动传感器的X方向、Y方向、Z方向的初始加速度和角速度。这三个方向的初始加速度和角度上用于后续判断人体初始姿态为竖直还是水平,以便于对两种姿态的跌倒进行分类检测。
步骤2:根据所述X方向、Y方向、Z方向的初始加速度和角速度计算得初始角度,所述初始角度包括以下中的一种或多种:俯仰角、横滚角、偏航角。
步骤3:根据所述X方向、Y方向、Z方向的初始加速度计算得合加速度,判断所述合加速度是否小于阈值A1,若不小于,则返回步骤1,若小于,执行步骤4。
步骤4:判断所述合加速度小于阈值A1的次数是否大于等于N1次,若是,则执行步骤5,若否则执行步骤11。具体可如下:利用步骤1所获取的X方向、Y方向、Z方向的初始加速度计算得到合加速度ACC_SVM值,判断ACC_SVM值是否小于阈值A1,不满足则返回步骤1,满足则记录ACC_SVM值连续小于阈值A1的次数,如果超过N1次则进行下一步,如果不超过N1次但是超过N2次则跳转到步骤11,如果不超过N2次则返回步骤1。合加速度值计算方法为:其中ACC_X表示X方向的加速度,ACC_Y表示Y方向的加速度,ACC_Z表示Z方向的加速度。可以理解的,滚床跌倒相比于竖直跌倒的失重时间短,因此阈值N2小于阈值N1,具体阈值根据传感器采样频率决定。
步骤5:判断Y方向的初始速度是否为负且绝对值大于阈值A2,若是,则执行步骤6,若否,则返回步骤1。若为是,则说明处于竖直初始姿态的人体发生近似跌倒的失重行为,进入竖直跌倒判断分支。
步骤6:判断在时间窗口T1内,所述合加速度是否大于阈值A3,若是,则执行步骤7,若否,则返回步骤1。
步骤7:判断在时间窗口T2内,所述合加速度的波动大小下是否小于阈值A4,若是,则执行步骤8,若否,则返回步骤1。
步骤8:计算当前俯仰角角度、横滚角角度后,执行步骤9。
步骤9:判断俯仰角或者横滚角的角度变化差值是否大于阈值θ1,若是,则判定为竖直跌倒,并执行步骤10,若否,则返回步骤1。具体可如下:判断俯仰角或者横滚角的角度变化差值是否大于阈值θ1,若“是”则说明初始姿态为竖直的人体发生跌倒,触发跌倒告警事件;若“否”则返回步骤1。可以理解,初始姿态为竖直的人体发生跌倒时,发生向前或者向后的跌倒情况下是俯仰角发生明显变化,发生向左或者向右的跌倒情况下是横滚角发生明显变化,因此在该步骤只需要判断俯仰角或者横滚角的角度变化差值是否超过阈值θ1。
步骤10:发出跌倒告警提示。
步骤11:判断所述合加速度小于阈值A1的次数是否大于等于N2次,若是,则执行步骤12,若否,则返回步骤1;
步骤12:判断Z方向的初始加速度是否为负且绝对值大于阈值A5,若是,则说明处于水平初始姿态的人体发生近似跌倒的失重行为,进入坠床跌倒判断分支,则执行步骤13,若否,则返回步骤1;
步骤13:判断时间窗口T3内,所述合加速度是否大于阈值A6,若是,则执行步骤14,若否,则返回步骤1;
步骤14:判断时间窗口T4内,所述合加速度的波动大小是否小于阈值A4,若是,则执行步骤15,若否,则返回步骤1;
步骤15:计算当前偏航角角度后执行步骤16;
步骤16:判断所述偏航角角度是否大于阈值θ2,若是,则判定为坠床跌倒并执行步骤10,若否,则返回步骤1。
可以理解,初始姿态为水平的人体发生跌倒时,坠床翻滚会导致偏航角发生明显变化,因此在该步骤只需要判断偏航角的角度变化差值是否超过阈值θ2。
需要说明的是,上述步骤中的相关参数可通过实验等方法获得,其典型值如下表所示。
参数 | 典型值 | 单位 |
A1 | 11 | 米/秒2 |
A2 | 6.9 | 米/秒2 |
A3 | 19.6 | 米/秒2 |
A4 | 0.8 | 米/秒2 |
A5 | 8.5 | 米/秒2 |
A6 | 14.7 | 米/秒2 |
N1 | 6 | 次 |
N2 | 3 | 次 |
T1 | 400 | 毫秒 |
T2 | 1000 | 毫秒 |
T3 | 150 | 毫秒 |
T4 | 500 | 毫秒 |
θ1 | 40 | 度 |
θ2 | 50 | 度 |
进一步的,所述指令集还用于执行:
步骤21:将角速度的度转换成弧度:gx=gx*DEG2RAD,gy=gy*DEG2RAD,gz=gz*DEG2RAD,其中gx为X方向角速度,gy为Y方向角速度,gz为Z方向角速度,DEG2RAD为转换系数;
步骤22:计算单位化加速度值: 其中ax为X方向加速度,ay为Y方向加速度,az为Z方向加速度;
步骤23:计算重力在三个方向上的分量:vx=2*(q1*q3-q0*q2);vy=2*(q0*q1+q2*q3);vz=q0*q0-q1*q1-q2*q2+q3*q3;其中q0、q1、q2、q3为四元数,初始值设置为q0=1,q1=q2=q3=0;
步骤24:计算三个方向重力误差:ex=(ay*vz-az*vy),ey=(az*vx-ax*vz);,ez=(ax*vy-ay*vx),其中ex为X方向上重力分量误差,ey为Y方向上重力分量误差,ez为Z方向上重力分量误差,对误差进行积分:ex_int=ex_int+ex*Ki,ey_int=ey_int+ey*Ki,ez_int=ez_int+ez*Ki,其中ex_int为X方向上重力分量误差积分,ey_int为Y方向上重力分量误差积分,ez_int为Z方向上重力分量误差积分,Ki为积分补偿系数;
步骤25:修正三个方向上的角速度:gx=gx+Kp*ex+ex_int,gy=gy+Kp*ey+ey_int,gz=gz+Kp*ez+ez_int,其中Kp为修正系数;
步骤26:采用一阶毕卡解法对四元数方程进行求解,求解所得四元数为:q0=q0+(-q1*gx-q2*gy-q3*gz)*T,q1=q1+(q0*gx+q2*gz-q3*gy)*T,q2=q2+(q0*gy-q1*gz+q3*gx)*T,q3=q3+(q0*gz+q1*gy-q2*gx)*T,其中T为采样周期的一半;
步骤27:单位化四元数:
步骤28:将四元数转换为欧拉角:pitch=asin(-2*q1*q3+2*q0*q2)*RAD2DEG,roll=atan2(2*q2*q3+2*q0*q1,-2*q1*q1-2*q2*q2+1)*RAD2DEG,yaw=atan2(2*q1*q2+2*q0*q3,q0*q0+*q1*q1-q2*q2-q3*q3)*RAD2DEG,其中pitch为俯仰角,roll为横滚角,yaw为偏航角,RAD2DEG为弧度转换为度系数。
其中,DEG2RAD为转换系数,取值为0.01745。RAD2DEG为弧度转换为度系数,取值为57.3。
通过上述存储设备中指令集所执行的方法可有效地将竖直跌倒和坠床跌倒有效地区分开,提高跌倒检测的正确率,降低其误报率。
请参阅图2和图4,在本实施方式中,一种跌倒检测系统400的实施方式如下:
一种跌倒检测系统400,包括:运动传感器模块402、CPU模块401、天线模块403、开关模块405、电源模块404、充电模块407、LED指示模块406;
所述电源模块404分别连接所述运动传感器模块402、所述CPU模块401和所述充电模块407;
所述CPU模块401分别连接所述天线模块403、所述开关模块405、所述LED指示模块406和所述运动传感器模块402;
所述CPU模块401包括:处理器4011和无线通讯子模块4012;
所述运动传感器模块402用于执行步骤:步骤1:响应初始工作指令,获取运动传感器的X方向、Y方向、Z方向的初始加速度和角速度;
所述CPU模块401用于执行如下步骤:步骤2:根据所述X方向、Y方向、Z方向的初始加速度和角速度计算得初始角度,所述初始角度包括以下中的一种或多种:俯仰角、横滚角、偏航角;
步骤3:根据所述X方向、Y方向、Z方向的初始加速度计算得合加速度,判断所述合加速度是否小于阈值A1,若不小于,则返回步骤1,若小于,执行步骤4;
步骤4:判断所述合加速度小于阈值A1的次数是否大于等于N1次,若是,则执行步骤5,若否则执行步骤11;
步骤5:判断Y方向的初始速度是否为负且绝对值大于阈值A2,若是,则执行步骤6,若否,则返回步骤1;
步骤6:判断在时间窗口T1内,所述合加速度是否大于阈值A3,若是,则执行步骤7,若否,则返回步骤1;
步骤7:判断在时间窗口T2内,所述合加速度的波动大小下是否小于阈值A4,若是,则执行步骤8,若否,则返回步骤1;
步骤8:计算当前俯仰角角度、横滚角角度后,执行步骤9;
步骤9:判断俯仰角或者横滚角的角度变化差值是否大于阈值θ1,若是,则判定为竖直跌倒,并执行步骤10,若否,则返回步骤1;
步骤10:发出跌倒告警提示;
步骤11:判断所述合加速度小于阈值A1的次数是否大于等于N2次,若是,则执行步骤12,若否,则返回步骤1;
步骤12:判断Z方向的初始加速度是否为负且绝对值大于阈值A5,若是,则执行步骤13,若否,则返回步骤1;
步骤13:判断时间窗口T3内,所述合加速度是否大于阈值A6,若是,则执行步骤14,若否,则返回步骤1;
步骤14:判断时间窗口T4内,所述合加速度的波动大小是否小于阈值A4,若是,则执行步骤15,若否,则返回步骤1;
步骤15:计算当前偏航角角度后执行步骤16;
步骤16:判断所述偏航角角度是否大于阈值θ2,若是,则判定为坠床跌倒并执行步骤10,若否,则返回步骤1。
进一步的,所述CPU模块401还用于执行如下步骤:步骤21:将角速度的度转换成弧度:gx=gx*DEG2RAD,gy=gy*DEG2RAD,gz=gz*DEG2RAD,其中gx为X方向角速度,gy为Y方向角速度,gz为Z方向角速度,DEG2RAD为转换系数;
步骤22:计算单位化加速度值: 其中ax为X方向加速度,ay为Y方向加速度,az为Z方向加速度;
步骤23:计算重力在三个方向上的分量:vx=2*(q1*q3-q0*q2);vy=2*(q0*q1+q2*q3);vz=q0*q0-q1*q1-q2*q2+q3*q3;其中q0、q1、q2、q3为四元数,初始值设置为q0=1,q1=q2=q3=0;
步骤24:计算三个方向重力误差:ex=(ay*vz-az*vy),ey=(az*vx-ax*vz);,ez=(ax*vy-ay*vx),其中ex为X方向上重力分量误差,ey为Y方向上重力分量误差,ez为Z方向上重力分量误差,对误差进行积分:ex_int=ex_int+ex*Ki,ey_int=ey_int+ey*Ki,ez_int=ez_int+ez*Ki,其中ex_int为X方向上重力分量误差积分,ey_int为Y方向上重力分量误差积分,ez_int为Z方向上重力分量误差积分,Ki为积分补偿系数;
步骤25:修正三个方向上的角速度:gx=gx+Kp*ex+ex_int,gy=gy+Kp*ey+ey_int,gz=gz+Kp*ez+ez_int,其中Kp为修正系数;
步骤26:采用一阶毕卡解法对四元数方程进行求解,求解所得四元数为:q0=q0+(-q1*gx-q2*gy-q3*gz)*T,q1=q1+(q0*gx+q2*gz-q3*gy)*T,q2=q2+(q0*gy-q1*gz+q3*gx)*T,q3=q3+(q0*gz+q1*gy-q2*gx)*T,其中T为采样周期的一半;
步骤27:单位化四元数:
步骤28:将四元数转换为欧拉角:pitch=asin(-2*q1*q3+2*q0*q2)*RAD2DEG,roll=atan2(2*q2*q3+2*q0*q1,-2*q1*q1-2*q2*q2+1)*RAD2DEG,yaw=atan2(2*q1*q2+2*q0*q3,q0*q0+*q1*q1-q2*q2-q3*q3)*RAD2DEG,其中pitch为俯仰角,roll为横滚角,yaw为偏航角,RAD2DEG为弧度转换为度系数。
进一步的,所述无线通讯子模块4012包括:蓝牙40121和WIFI模块40122;
所述天线模块403用于与所述蓝牙40121和WIFI模块40122进行通讯。
进一步的,所述运动传感器模块402型号为LSM6DSL。
通过以上系统可有效地将竖直跌倒和坠床跌倒有效地区分开,提高跌倒检测的正确率,降低其误报率。
需要说明的是,尽管在本文中已经对上述各实施例进行了描述,但并非因此限制本发明的专利保护范围。因此,基于本发明的创新理念,对本文所述实施例进行的变更和修改,或利用本发明说明书及附图内容所作的等效结构或等效流程变换,直接或间接地将以上技术方案运用在其他相关的技术领域,均包括在本发明的专利保护范围之内。
Claims (8)
1.一种跌倒检测方法,其特征在于,包括步骤:
步骤1:响应初始工作指令,获取运动传感器的X方向、Y方向、Z方向的初始加速度和角速度;
步骤2:根据所述X方向、Y方向、Z方向的初始加速度和角速度计算得初始角度,所述初始角度包括:俯仰角、横滚角、偏航角;
步骤3:根据所述X方向、Y方向、Z方向的初始加速度计算得合加速度,判断所述合加速度是否小于阈值A1,若不小于,则返回步骤1,若小于,执行步骤4;
步骤4:判断所述合加速度小于阈值A1的次数是否大于等于N1次,若是,则执行步骤5,若否则执行步骤11;
步骤5:判断Y方向的初始速度是否为负且绝对值大于阈值A2,若是,则执行步骤6,若否,则返回步骤1;
步骤6:判断在时间窗口T1内,所述合加速度是否大于阈值A3,若是,则执行步骤7,若否,则返回步骤1;
步骤7:判断在时间窗口T2内,所述合加速度的波动大小下是否小于阈值A4,若是,则执行步骤8,若否,则返回步骤1;
步骤8:计算当前俯仰角角度、横滚角角度后,执行步骤9;
步骤9:判断俯仰角或者横滚角的角度变化差值是否大于阈值θ1,若是,则判定为竖直跌倒,并执行步骤10,若否,则返回步骤1;
步骤10:发出跌倒告警提示;
步骤11:判断所述合加速度小于阈值A1的次数是否大于等于N2次,若是,则执行步骤12,若否,则返回步骤1;
步骤12:判断Z方向的初始加速度是否为负且绝对值大于阈值A5,若是,则执行步骤13,若否,则返回步骤1;
步骤13:判断时间窗口T3内,所述合加速度是否大于阈值A6,若是,则执行步骤14,若否,则返回步骤1;
步骤14:判断时间窗口T4内,所述合加速度的波动大小是否小于阈值A4,若是,则执行步骤15,若否,则返回步骤1;
步骤15:计算当前偏航角角度后执行步骤16;
步骤16:判断所述偏航角角度是否大于阈值θ2,若是,则判定为坠床跌倒并执行步骤10,若否,则返回步骤1。
2.根据权利要求1所述的一种跌倒检测方法,其特征在于,所述“根据所述X方向、Y方向、Z方向的初始加速度和角速度计算得初始角度,所述初始角度包括以下中的一种或多种:俯仰角、横滚角、偏航角”,具体还包括步骤:
步骤21:将角速度的度转换成弧度:gx=gx*DEG2RAD,gy=gy*DEG2RAD,gz=gz*DEG2RAD,其中gx为X方向角速度,gy为Y方向角速度,gz为Z方向角速度,DEG2RAD为转换系数;
步骤22:计算单位化加速度值: 其中ax为X方向加速度,ay为Y方向加速度,az为Z方向加速度;
步骤23:计算重力在三个方向上的分量:vx=2*(q1*q3-q0*q2);vy=2*(q0*q1+q2*q3);vz=q0*q0-q1*q1-q2*q2+q3*q3;其中q0、q1、q2、q3为四元数,初始值设置为q0=1,q1=q2=q3=0;
步骤24:计算三个方向重力误差:ex=(ay*vz-az*vy),ey=(az*vx-ax*vz);ez=(ax*vy-ay*vx),其中ex为X方向上重力分量误差,ey为Y方向上重力分量误差,ez为Z方向上重力分量误差,对误差进行积分:ex_int=ex_int+ex*Ki,ey_int=ey_int+ey*Ki,ez_int=ez_int+ez*Ki,其中ex_int为X方向上重力分量误差积分,ey_int为Y方向上重力分量误差积分,ez_int为Z方向上重力分量误差积分,Ki为积分补偿系数;
步骤25:修正三个方向上的角速度:gx=gx+Kp*ex+ex_int,gy=gy+Kp*ey+ey_int,gz=gz+Kp*ez+ez_int,其中Kp为修正系数;
步骤26:采用一阶毕卡解法对四元数方程进行求解,求解所得四元数为:q0=q0+(-q1*gx-q2*gy-q3*gz)*T,q1=q1+(q0*gx+q2*gz-q3*gy)*T,q2=q2+(q0*gy-q1*gz+q3*gx)*T,q3=q3+(q0*gz+q1*gy-q2*gx)*T,其中T为采样周期的一半;
步骤27:单位化四元数:
步骤28:将四元数转换为欧拉角:pitch=asin(-2*q1*q3+2*q0*q2)*RAD2DEG,roll=atan2(2*q2*q3+2*q0*q1,-2*q1*q1-2*q2*q2+1)*RAD2DEG,yaw=atan2(2*q1*q2+2*q0*q3,q0*q0+*q1*q1-q2*q2-q3*q3)*RAD2DEG,其中pitch为俯仰角,roll为横滚角,yaw为偏航角,RAD2DEG为弧度转换为度系数。
3.一种存储设备,其中存储有指令集,其特征在于,所述指令集用于执行:
步骤1:响应初始工作指令,获取运动传感器的X方向、Y方向、Z方向的初始加速度和角速度;
步骤2:根据所述X方向、Y方向、Z方向的初始加速度和角速度计算得初始角度,所述初始角度包括:俯仰角、横滚角、偏航角;
步骤3:根据所述X方向、Y方向、Z方向的初始加速度计算得合加速度,判断所述合加速度是否小于阈值A1,若不小于,则返回步骤1,若小于,执行步骤4;
步骤4:判断所述合加速度小于阈值A1的次数是否大于等于N1次,若是,则执行步骤5,若否则执行步骤11;
步骤5:判断Y方向的初始速度是否为负且绝对值大于阈值A2,若是,则执行步骤6,若否,则返回步骤1;
步骤6:判断在时间窗口T1内,所述合加速度是否大于阈值A3,若是,则执行步骤7,若否,则返回步骤1;
步骤7:判断在时间窗口T2内,所述合加速度的波动大小下是否小于阈值A4,若是,则执行步骤8,若否,则返回步骤1;
步骤8:计算当前俯仰角角度、横滚角角度后,执行步骤9;
步骤9:判断俯仰角或者横滚角的角度变化差值是否大于阈值θ1,若是,则判定为竖直跌倒,并执行步骤10,若否,则返回步骤1;
步骤10:发出跌倒告警提示;
步骤11:判断所述合加速度小于阈值A1的次数是否大于等于N2次,若是,则执行步骤12,若否,则返回步骤1;
步骤12:判断Z方向的初始加速度是否为负且绝对值大于阈值A5,若是,则执行步骤13,若否,则返回步骤1;
步骤13:判断时间窗口T3内,所述合加速度是否大于阈值A6,若是,则执行步骤14,若否,则返回步骤1;
步骤14:判断时间窗口T4内,所述合加速度的波动大小是否小于阈值A4,若是,则执行步骤15,若否,则返回步骤1;
步骤15:计算当前偏航角角度后执行步骤16;
步骤16:判断所述偏航角角度是否大于阈值θ1,若是,则判定为坠床跌倒并执行步骤10,若否,则返回步骤1。
4.根据权利要求3所述的一种存储设备,其特征在于,所述指令集还用于执行:
步骤21:将角速度的度转换成弧度:gx=gx*DEG2RAD,gy=gy*DEG2RAD,gz=gz*DEG2RAD,其中gx为X方向角速度,gy为Y方向角速度,gz为Z方向角速度,DEG2RAD为转换系数;
步骤22:计算单位化加速度值: 其中ax为X方向加速度,ay为Y方向加速度,az为Z方向加速度;
步骤23:计算重力在三个方向上的分量:vx=2*(q1*q3-q0*q2);vy=2*(q0*q1+q2*q3);vz=q0*q0-q1*q1-q2*q2+q3*q3;其中q0、q1、q2、q3为四元数,初始值设置为q0=1,q1=q2=q3=0;
步骤24:计算三个方向重力误差:ex=(ay*vz-az*vy),ey=(az*vx-ax*vz);,ez=(ax*vy-ay*vx),其中ex为X方向上重力分量误差,ey为Y方向上重力分量误差,ez为Z方向上重力分量误差,对误差进行积分:ex_int=ex_int+ex*Ki,ey_int=ey_int+ey*Ki,ez_int=ez_int+ez*Ki,其中ex_int为X方向上重力分量误差积分,ey_int为Y方向上重力分量误差积分,ez_int为Z方向上重力分量误差积分,Ki为积分补偿系数;
步骤25:修正三个方向上的角速度:gx=gx+Kp*ex+ex_int,gy=gy+Kp*ey+ey_int,gz=gz+Kp*ez+ez_int,其中Kp为修正系数;
步骤26:采用一阶毕卡解法对四元数方程进行求解,求解所得四元数为:q0=q0+(-q1*gx-q2*gy-q3*gz)*T,q1=q1+(q0*gx+q2*gz-q3*gy)*T,q2=q2+(q0*gy-q1*gz+q3*gx)*T,q3=q3+(q0*gz+q1*gy-q2*gx)*T,其中T为采样周期的一半;
步骤27:单位化四元数:
步骤28:将四元数转换为欧拉角:pitch=asin(-2*q1*q3+2*q0*q2)*RAD2DEG,roll=atan2(2*q2*q3+2*q0*q1,-2*q1*q1-2*q2*q2+1)*RAD2DEG,yaw=atan2(2*q1*q2+2*q0*q3,q0*q0+*q1*q1-q2*q2-q3*q3)*RAD2DEG,其中pitch为俯仰角,roll为横滚角,yaw为偏航角,RAD2DEG为弧度转换为度系数。
5.一种跌倒检测系统,其特征在于,包括:运动传感器模块、CPU模块、天线模块、开关模块、电源模块、充电模块、LED指示模块;
所述电源模块分别连接所述运动传感器模块、所述CPU模块和所述充电模块;
所述CPU模块分别连接所述天线模块、所述开关模块、所述LED指示模块和所述运动传感器模块;
所述CPU模块包括:处理器和无线通讯子模块;
所述运动传感器模块用于执行步骤:步骤1:响应初始工作指令,获取运动传感器的X方向、Y方向、Z方向的初始加速度和角速度;
所述CPU模块用于执行如下步骤:步骤2:根据所述X方向、Y方向、Z方向的初始加速度和角速度计算得初始角度,所述初始角度包括:俯仰角、横滚角、偏航角;
步骤3:根据所述X方向、Y方向、Z方向的初始加速度计算得合加速度,判断所述合加速度是否小于阈值A1,若不小于,则返回步骤1,若小于,执行步骤4;
步骤4:判断所述合加速度小于阈值A1的次数是否大于等于N1次,若是,则执行步骤5,若否则执行步骤11;
步骤5:判断Y方向的初始速度是否为负且绝对值大于阈值A2,若是,则执行步骤6,若否,则返回步骤1;
步骤6:判断在时间窗口T1内,所述合加速度是否大于阈值A3,若是,则执行步骤7,若否,则返回步骤1;
步骤7:判断在时间窗口T2内,所述合加速度的波动大小下是否小于阈值A4,若是,则执行步骤8,若否,则返回步骤1;
步骤8:计算当前俯仰角角度、横滚角角度后,执行步骤9;
步骤9:判断俯仰角或者横滚角的角度变化差值是否大于阈值θ1,若是,则判定为竖直跌倒,并执行步骤10,若否,则返回步骤1;
步骤10:发出跌倒告警提示;
步骤11:判断所述合加速度小于阈值A1的次数是否大于等于N2次,若是,则执行步骤12,若否,则返回步骤1;
步骤12:判断Z方向的初始加速度是否为负且绝对值大于阈值A5,若是,则执行步骤13,若否,则返回步骤1;
步骤13:判断时间窗口T3内,所述合加速度是否大于阈值A6,若是,则执行步骤14,若否,则返回步骤1;
步骤14:判断时间窗口T4内,所述合加速度的波动大小是否小于阈值A4,若是,则执行步骤15,若否,则返回步骤1;
步骤15:计算当前偏航角角度后执行步骤16;
步骤16:判断所述偏航角角度是否大于阈值θ2,若是,则判定为坠床跌倒并执行步骤10,若否,则返回步骤1。
6.根据权利要求5所述的一种跌倒检测系统,其特征在于,
所述CPU模块还用于执行如下步骤:步骤21:将角速度的度转换成弧度:gx=gx*DEG2RAD,gy=gy*DEG2RAD,gz=gz*DEG2RAD,其中gx为X方向角速度,gy为Y方向角速度,gz为Z方向角速度,DEG2RAD为转换系数;
步骤22:计算单位化加速度值: 其中ax为X方向加速度,ay为Y方向加速度,az为Z方向加速度;
步骤23:计算重力在三个方向上的分量:vx=2*(q1*q3-q0*q2);vy=2*(q0*q1+q2*q3);vz=q0*q0-q1*q1-q2*q2+q3*q3;其中q0、q1、q2、q3为四元数,初始值设置为q0=1,q1=q2=q3=0;
步骤24:计算三个方向重力误差:ex=(ay*vz-az*vy),ey=(az*vx-ax*vz);,ez=(ax*vy-ay*vx),其中ex为X方向上重力分量误差,ey为Y方向上重力分量误差,ez为Z方向上重力分量误差,对误差进行积分:ex_int=ex_int+ex*Ki,ey_int=ey_int+ey*Ki,ez_int=ez_int+ez*Ki,其中ex_int为X方向上重力分量误差积分,ey_int为Y方向上重力分量误差积分,ez_int为Z方向上重力分量误差积分,Ki为积分补偿系数;
步骤25:修正三个方向上的角速度:gx=gx+Kp*ex+ex_int,gy=gy+Kp*ey+ey_int,gz=gz+Kp*ez+ez_int,其中Kp为修正系数;
步骤26:采用一阶毕卡解法对四元数方程进行求解,求解所得四元数为:q0=q0+(-q1*gx-q2*gy-q3*gz)*T,q1=q1+(q0*gx+q2*gz-q3*gy)*T,q2=q2+(q0*gy-q1*gz+q3*gx)*T,q3=q3+(q0*gz+q1*gy-q2*gx)*T,其中T为采样周期的一半;
步骤27:单位化四元数:
步骤28:将四元数转换为欧拉角:pitch=asin(-2*q1*q3+2*q0*q2)*RAD2DEG,roll=atan2(2*q2*q3+2*q0*q1,-2*q1*q1-2*q2*q2+1)*RAD2DEG,yaw=atan2(2*q1*q2+2*q0*q3,q0*q0+*q1*q1-q2*q2-q3*q3)*RAD2DEG,其中pitch为俯仰角,roll为横滚角,yaw为偏航角,RAD2DEG为弧度转换为度系数。
7.根据权利要求5所述的一种跌倒检测系统,其特征在于,
所述无线通讯子模块包括:蓝牙和WIFI模块;
所述天线模块用于与所述蓝牙和WIFI模块进行通讯。
8.根据权利要求5所述的一种跌倒检测系统,其特征在于,所述运动传感器模块型号为LSM6DSL。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011518779.8A CN112472075B (zh) | 2020-12-21 | 2020-12-21 | 一种跌倒检测方法、系统和存储设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011518779.8A CN112472075B (zh) | 2020-12-21 | 2020-12-21 | 一种跌倒检测方法、系统和存储设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112472075A CN112472075A (zh) | 2021-03-12 |
CN112472075B true CN112472075B (zh) | 2025-02-18 |
Family
ID=74915282
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011518779.8A Active CN112472075B (zh) | 2020-12-21 | 2020-12-21 | 一种跌倒检测方法、系统和存储设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112472075B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN118021294B (zh) * | 2024-04-11 | 2024-07-05 | 四川省铁路建设有限公司 | 一种基于多传感器的跌倒检测方法及系统 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN214965592U (zh) * | 2020-12-21 | 2021-12-03 | 福州数据技术研究院有限公司 | 一种跌倒检测系统 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8814811B2 (en) * | 2008-05-23 | 2014-08-26 | Medtronic, Inc. | Fall detection algorithm utilizing a three-axis accelerometer |
CN102657533B (zh) * | 2012-04-28 | 2013-11-13 | 浙江大学城市学院 | 一种跌倒检测方法、跌倒检测装置和手腕式设备 |
CN104000596B (zh) * | 2014-05-29 | 2019-10-11 | 上海斐讯数据通信技术有限公司 | 一种基于移动终端的跌倒检测方法 |
CA2996196C (en) * | 2015-08-31 | 2024-06-11 | Masimo Corporation | Wireless patient monitoring systems and methods |
CN105590408B (zh) * | 2016-02-06 | 2018-05-04 | 高强 | 一种人体跌倒检测方法及保护装置 |
CN109091151B (zh) * | 2018-09-06 | 2021-07-16 | 中国人民解放军战略支援部队信息工程大学 | 一种基于mimu的行人跌倒检测方法及装置 |
-
2020
- 2020-12-21 CN CN202011518779.8A patent/CN112472075B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN214965592U (zh) * | 2020-12-21 | 2021-12-03 | 福州数据技术研究院有限公司 | 一种跌倒检测系统 |
Also Published As
Publication number | Publication date |
---|---|
CN112472075A (zh) | 2021-03-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4860697B2 (ja) | 加速度センサの補正装置および加速度センサの出力値補正方法 | |
JP4663503B2 (ja) | 転倒判定方法及びその装置 | |
KR20190041315A (ko) | 관성 기반 항법 장치 및 상대사전적분에 따른 관성 기반 항법 방법 | |
US20130202108A1 (en) | Method and device for generation of secret key | |
US9620000B2 (en) | Wearable system and method for balancing recognition accuracy and power consumption | |
US9159213B1 (en) | Motion detection method and device | |
JP5915112B2 (ja) | 状態検出装置、電子機器及びプログラム | |
US8750897B2 (en) | Methods and apparatuses for use in determining a motion state of a mobile device | |
CN112472075B (zh) | 一种跌倒检测方法、系统和存储设备 | |
CN108567432B (zh) | 表征运动的设备和方法 | |
JP6315184B2 (ja) | 衝撃検出回路、物理量検出装置、電子機器、移動体及び衝撃検出方法 | |
JP2005237576A (ja) | 転倒判定装置 | |
JP2018091738A (ja) | 物理量測定装置、電子機器、移動体及び状態判定方法 | |
US9377856B2 (en) | Electronic device including inertial force sensor capable of detecting multiple inertial forces | |
US9423270B2 (en) | Electronic device and motion state judgment method | |
WO2020097875A1 (zh) | 摔倒检测方法、装置、设备以及存储介质 | |
CN111839527A (zh) | 一种跌倒检测方法、设备及计算机可读存储介质 | |
CN107284378B (zh) | 一种基于移动终端的汽车驾驶状态的监控方法 | |
TWI472953B (zh) | 慣性感測輸入裝置、系統及其方法 | |
CN108592908A (zh) | 一种骑行载具姿态安全监测方法及装置 | |
US10809062B2 (en) | MEMS inertial sensor device with determination of the bias value of a gyroscope thereof and corresponding method | |
JP2010054374A (ja) | 移動検知装置 | |
JP2017030576A (ja) | バンク角度検知装置およびバンク角度検知方法 | |
JP3776206B2 (ja) | ペン型入力装置 | |
JP6366094B2 (ja) | 加速度センサのみを用いて不注意歩行状態を検出する携帯型情報機器、プログラム及び方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |