基于信道状态信息的实时化跌倒检测方法、系统及介质

文档序号:31474061发布日期:2022-09-09 23:59阅读:154来源:国知局
基于信道状态信息的实时化跌倒检测方法、系统及介质

1.本发明涉及跌倒检测领域,尤其涉及基于信道状态信息的实时化跌倒检测方法、系统及介质。


背景技术:

2.随着中国人口老龄化进程不断加速,空巢老人逐渐增多,老年人健康问题已经成为社会关注的热点。跌倒是老年人因伤致死的主要原因之一,每年独居老人室内跌倒数量不断上升;研究表明,跌倒后的医疗结果很大程度上取决于反应和抢救时间是否及时。在临床医学中,跌倒后延迟治疗越久,死亡风险越大。因此,如何实现自动、实时化的跌倒检测技术,成为了老年人健康监护的重要需求。
3.到目前为止,对日常生活的健康检测手段已经司空见惯,各种应用也被广泛开发出来。对于检测跌倒的技术有三类发展方向:基于传感器的跌倒检测、基于机械视觉的跌倒检测和基于wifi信号的信道状态信息(channel state information,csi)的跌倒检测。基于传感器的跌倒检测技术在理想状态下准确率较高,但其易受环境影响、准确率相对较低、无法进行广泛部署;基于视觉的跌倒检测技术虽然可以达到很高的准确率,但是其成本较高、易收到光照、摄像头的位置、背景等因素的影响,且会增加隐私泄露的风险;基于wifi-csi的跌倒检测方法具有隐私保护性强、应用基础广泛、不需携带任何传感器、非视觉感知、不受灯光湿度温度等影响、可扩展性强等优点。近几年,物联网技术迅速发展并被广泛应用,wifi的普遍性大幅度提高,为基于wifi的跌倒检测系统提供了实现环境、设备支持。
4.但是,现有研究的基于wifi-csi的跌倒检测的方案,虽然能判断跌倒的发生,但缺乏进行实时化检测的技术,检测时效性扔有很大的提高空间,所占用的运算资源也较高,要将此技术运用在产品上,缺乏实时化应用技术,同时仍需提高检测精度、准确度与运算速度,降低硬件部署成本与能耗。


技术实现要素:

5.为了克服上述问题,本发明提供基于信道状态信息的实时化跌倒检测方法、系统及介质。
6.本发明提供了基于信道状态信息的实时化跌倒检测方法,包括:
7.使用tcp协议连接wifi信号发送设备,并通过wifi信号接收设备实时获取csi的数据流;其中,所述数据流包含若干个连续递进的数据包;
8.分析数据流,从中获得有效载波;
9.预设幅值扰动判断条件;依次对每个数据包对应的有效载波进行矩阵提取,得到每个数据包对应的矩阵参数,依据所述幅值扰动判断条件,对有效载波进行滑动窗口截取,获得有效动作片段;其中,所述幅值扰动判断条件用于判断滑动窗口中是否具有包含对应人体动作的若干个矩阵参数;
10.当截取到有效动作片段时,对当前窗口内的有效载波利用小波变换进行降噪,并
利用巴特沃斯滤波器进行滤波,获得初始可用信号;
11.对初始可用信号进行特征值提取,获得信号特征;
12.对信号特征进行归一化,获得特征值矩阵;
13.将特征值矩阵导入svm分类模型,获得动作分类结果;
14.判断动作分类结果是否为跌倒,如是,发出告警信息。
15.作为优选地,所述信号特征包括:时域均值、时域标准差、时域最大值、时域最小值、时域范围、过均值点数、时域1/4分位数、时域3/4分位数和时域四分位数范围、第一大fft、第一大fft对应的频率、第三大fft、第三大fft对应的频率、第五大fft、第五大fft对应的频率、频域平均值、频域标准差、频域1/4分位数、频域3/4分位数、频域四分位数范围、幅度统计偏度、幅度统计峰度、形状统计均值、形状统计标准差、形状统计偏度和形状统计峰度。
16.优选地,所述对初始可用信号进行特征值提取,获得信号特征,具体为:
17.对所述初始可用信号再一次进行小波变换,获得两个小波信号,对两个所述小波信号进行特征值提取,获得信号特征;
18.其中,所述信号特征包括针对其中一个小波信号提取得到的时域第二均值、时域第二标准差、时域第二范围、时域第二过均值点数和时域第二四分位数范围;以及针对另一个小波信号提取得到的时域第三均值、时域第三标准差、时域第三范围、时域第三过均值点数和时域第三四分位数范围。
19.优选地,所述使用tcp协议连接wifi信号发送设备,并通过wifi信号接收设备实时获取csi的数据流;其中,所述数据流包含若干个连续递进的数据包;具体为:
20.在待测空间中设置至少一个wifi信号发送设备以及m个wifi信号接收设备,同时通过m个所述wifi信号接收设备同时获取至少一个所述wifi信号发送设备发出的数据,得到1个dat文件;其中,m为正整数;
21.对获取的dat文件提取csi的数据流;其中,所述数据流包含若干个连续递进的数据包,每个数据包对应一个1
×m×
30的子载波矩阵。
22.优选地,所述分析数据流,从中获得有效载波,具体为:
23.每隔预设的时间间隔,比较1
×m×
30个子载波对动作的敏感度,选择对动作最敏感的子载波作为有效载波。
24.优选地,所述预设幅值扰动判断条件;依次对每个数据包对应的有效载波进行矩阵提取,得到每个数据包对应的矩阵参数,依据所述幅值扰动判断条件,对有效载波进行滑动窗口截取,获得有效动作片段;其中,所述幅值扰动判断条件用于判断滑动窗口中是否具有包含对应人体动作的若干个矩阵参数;具体为:
25.预设幅值扰动判断条件,所述幅值扰动判断条件包括片段起始条件和幅值扰动阈值;
26.依次对每个数据包对应的有效载波进行矩阵提取,得到每个数据包对应的矩阵参数;其中,所述幅值扰动判断条件用于判断滑动窗口中是否具有包含对应人体动作的若干个矩阵参数;
27.依据片段起始条件,通过滑动窗口截取数据流中的有第一动作片段;
28.实时检测所述第一动作片段是否大于所述幅值扰动阈值,若是,则输出为有效动
作片段。
29.优选地,预设幅值扰动判断条件;依次对每个数据包对应的有效载波进行矩阵提取,得到每个数据包对应的矩阵参数,依据所述幅值扰动判断条件,对有效载波进行滑动窗口截取,获得有效动作片段;其中,所述幅值扰动判断条件用于判断滑动窗口中是否具有包含对应人体动作的若干个矩阵参数,还包括:
30.采集位于不同空间位置的人体进行不同动作的数据样本,其中包括至少一个跌倒的数据样本和至少一个非跌倒的数据样本;
31.标记数据样本,区分跌倒的数据样本与非跌倒的数据样本的幅值扰动区别,得出幅值扰动判断条件。
32.本发明还提供了基于信道状态信息的实时化跌倒检测设备,包括:数据获取模块、载波获取模块、动作检测模块、第一数据模块、第二数据模块、第三数据模块、分类模块和告警模块;
33.所述数据获取模块用于使用tcp协议连接wifi信号发送设备,并通过wifi信号接收设备实时获取csi的数据流;其中,所述数据流包含若干个连续递进的数据包;
34.所述载波获取模块用于分析数据流,从中获得有效载波;
35.所述动作检测模块用于预设幅值扰动判断条件;依次对每个数据包对应的有效载波进行矩阵提取,得到每个数据包对应的矩阵参数,依据所述幅值扰动判断条件,对有效载波进行滑动窗口截取,获得有效动作片段;其中,所述幅值扰动判断条件用于判断滑动窗口中是否具有包含对应人体动作的若干个矩阵参数;
36.所述第一数据模块用于当截取到有效动作片段时,对当前窗口内的有效载波利用小波变换进行降噪,并利用巴特沃斯滤波器进行滤波,获得初始可用信号;
37.所述第二数据模块用于对初始可用信号进行特征值提取,获得信号特征;
38.所述第三数据模块用于对信号特征进行归一化,获得特征值矩阵;
39.所述分类模块用于将特征值矩阵导入svm分类模型,获得动作分类结果;
40.所述告警模块用于判断动作分类结果是否为跌倒,如是,发出告警信息。
41.本发明提供了一种计算机可读存储介质,所述计算机可读存储介质包括存储的计算机程序,其中,在所述计算机程序运行时控制所述计算机可读存储介质所在设备执行上述基于信道状态信息的实时化跌倒检测方法。
42.本发明的有益效果是:
43.(1)通过实时获取csi数据流,并且根据幅值扰动判断条件,进行滑动窗口截取有效动作片段,并且放入svm分类模型中进行分析,得到当前人体状态结果,能够进行实时化检测跌倒的系统,可以将数据进行实时化分析,极短时间内得出结论并输出。
44.(2)通过tcp协议连接通道进行实时化不间断检测,实现实时化的快速跌倒监测,当链路有少量丢包时,tcp协议可以自动重传,无需干涉,有助于保证信息的准确,提高检测效率。
45.(3)利用幅值扰动条件进行动作产生的判断,可有效地分割出动作片段,提高检测效率,减少运算资源的占用,从而降低设备成本。
46.优选地,利用时域和频域的多种特征值进行判断,通过投入svm分类模型进行尝试,得出基于时域和频域的36个特征值作为最佳的判断依据,使分类准确率大幅提高,提高
检测准确性。
附图说明
47.下文将结合说明书附图对本发明进行进一步的描述说明,其中:
48.图1为本发明其中一个实施例的方法流程图;
49.图2为本发明其中一个实施例的经小波变换后的数据波形示意图;
50.图3为本发明其中一个实施例弯腰时的csi幅值图;
51.图4为本发明其中一个实施例跌倒时的csi幅值图;
52.图5为本发明其中一个实施例的人体动作频率参数表;
53.图6为本发明另一实施例的采集场地示意图。
54.图中:1、发送天线;2、接收天线;3、数据采集点。
具体实施方式
55.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
56.参见图1至图5,作为本发明的其中一个实施,公开了基于信道状态信息的实时化跌倒检测方法,包括:
57.s1、使用tcp协议连接wifi信号发送设备,并通过wifi信号接收设备实时获取csi的数据流;其中,所述数据流包含若干个连续递进的数据包;
58.s2、分析数据流,从中获得有效载波;
59.s3、预设幅值扰动判断条件;依次对每个数据包对应的有效载波进行矩阵提取,得到每个数据包对应的矩阵参数,依据所述幅值扰动判断条件,对有效载波进行滑动窗口截取,获得有效动作片段;其中,所述幅值扰动判断条件用于判断滑动窗口中是否具有包含对应人体动作的若干个矩阵参数;
60.s4、当截取到有效动作片段时,对当前窗口内的有效载波利用小波变换进行降噪,并利用巴特沃斯滤波器进行滤波,获得初始可用信号;
61.s5、对初始可用信号进行特征值提取,获得信号特征;
62.s6、对信号特征进行归一化,获得特征值矩阵;
63.s7、将特征值矩阵导入svm分类模型,获得动作分类结果;
64.s8、判断动作分类结果是否为跌倒,如是,发出告警信息。
65.作为优选地,所述信号特征包括:时域均值、时域标准差、时域最大值、时域最小值、时域范围、过均值点数、时域1/4分位数、时域3/4分位数和时域四分位数范围、第一大fft、第一大fft对应的频率、第三大fft、第三大fft对应的频率、第五大fft、第五大fft对应的频率、频域平均值、频域标准差、频域1/4分位数、频域3/4分位数、频域四分位数范围、幅度统计偏度、幅度统计峰度、形状统计均值、形状统计标准差、形状统计偏度和形状统计峰度。
66.优选地,步骤s4中,包括分步骤如下:
67.s41、对所述初始可用信号再一次进行小波变换,获得两个小波信号,对两个所述小波信号进行特征值提取,获得信号特征;
68.其中,所述信号特征包括针对其中一个小波信号提取得到的时域第二均值、时域第二标准差、时域第二范围、时域第二过均值点数和时域第二四分位数范围;以及针对另一个小波信号提取得到的时域第三均值、时域第三标准差、时域第三范围、时域第三过均值点数和时域第三四分位数范围。
69.参见图2,图中从上到下第一个波形是原始数据(未经任何处理)的波形;第二个波形是经过处理的数据(小波变换降噪后,滤波器滤波后)的波形;第三个波形是第二个波形的低频成分信号,即两个小波信号中的小波信号s(t)1;第四个波形是第二个波形的高频成分信号,即两个小波信号中的小波信号s(t)2。
70.针对上述两点,是本发明的创新点之一,在于对于原始csi信号进行小波变换降噪并使用巴特沃斯滤波器滤波,得到初始可用信号s(t),对此信号有两种方法进行特征提取:
71.第一种方法,直接使用该初始可用信号s(t)进行时域和频域的特征值提取,获得共26个特征值;
72.第二种方法,对初始可用信号s(t)进行再一次小波变换,将此初始可用信号s(t)分解成两个小波信号s(t)1和s(t)2,对这两个信号再次进行时域特征提取,包括均值、标准差、范围、过均值点数和四分位数范围,这五种特征值只能展现信号特性,共10个特征值。
73.上述两种方法共有36个特征值,这两种方法均能较完美的展现信号的特性,从而提高跌倒识别的准确率。其中,各特征值的具体定义如下:
74.时域均值,为数据信号在时间窗口内的平均特性,将多次采样的平均值作为数据真实值,反映其基本特征。主要反映接收信号的静态特性,可区分人体的大概位置信息;其计算公式为:
[0075][0076]
其中,n表示一个时间窗口的大小,ai表示第i个子载波的幅值大小,其对应matlab中的可用函数mean()。
[0077]
时域标准差,是指数据集中所有的数减去这些数平均值的平方和,再将所得结果除以总个数,然后对其开根号,也就得到标准差。标准差反映的是数据集中平均值分散程度。标准差大,表明这些数和其平均值间差异较大;标准差小,表明这些数和其平均值间差异较小。可以反映接收信号的波动性,估计接收端附近人体动作的变化;其计算公式如下:
[0078][0079]
其对应matlab中可用的函数:std()。
[0080]
时域最大值和时域最小值,分别表示的是数据集中的最大数值和最小数值;时域范围表示的是最大值和最小值的差值,可表示信号变化的程度。时域最大值和时域最小值可以较好区分人体动作的变化。
[0081]
其中,时域最大值:max=max(ai),i∈{1,2,...,n},对应函数max();
[0082]
时域最小值:min=min(ai),i∈{1,2,...,n},对应函数min();
[0083]
时域范围:range=|max-min|,对应函数:abs(max()-min());
[0084]
过均值点数,是指一个窗口内超过均值点的数据个数,计算公式如下:
[0085][0086]
其中,是指示函数(indicator function),当括号里条件成立时取值为1,否则为0。
[0087]
时域1/4分位数、时域3/4分位数、时域四分位数范围、频域1/4分位数、频域3/4分位数和频域四分位数范围,其中,时域与频域的1/4分位数、3/4分位数和四分位数范围意义相同。
[0088]
上述四分位参数均是指通过四分位数统计描述分析方法描述数据时,偏态数据的离散程度,即将全部数据从小到大排列,正好排列在下1/4位置上的数就叫做下四分位数(按照百分比,也就是25%位置上的数)也叫做第一四分位数,排在上1/4位置上的数就叫上四分位数(按照百分比比,也就是75%位置上的数)也叫做第三四分位数,四分位数间距就是指上下四分位数之间的差值。上、下四分位数之间恰好包含了50%的数据。
[0089]
四分位差特点:
[0090]
四分位差只能说明中间50%数据的离散程度,它依然不能充分反映全部数据的离散状况。四分位差越大,说明中间50%数据的离散程度越大;四分位差越小,说明中间50%数据的离散程度越小;在一定程度上,四分位差也可以反映中位数的代表性好坏;四分位差是一种顺序统计量,因此四分位差适用于测度定序数据和定量数据的离散程度。
[0091]
第一大fft、第一大fft对应的频率、第三大fft、第三大fft对应的频率、第五大fft和第五大fft对应的频率:
[0092]
通过快速傅里叶变换(fft)将一个动作时间窗内的csi时域信号换到频域的csi信号信息,提取信号的fft最大的前五个值及这五个值分别对应的频率。在实验过程中发现频域第二大fft和第三大fft、第四大和第五大fft这两组特征值两两之间具有完全相同的特征变化数值,因此只采取第二大fft和第三大fft其中一项、第四大和第五大fft其中一项。
[0093]
例如有8个数:1,2,3,4,5,6,7,8;
[0094]
经过fft之后得到以下8个数:
[0095]
36.0000+0.0000i;-4.0000+9.6569i;-4.0000+4.0000i;
[0096]-4.0000+1.6569i;-4.0000+0.0000i;-4.0000-1.6569i;
[0097]-4.0000-4.0000i;-4.0000-9.6569i。
[0098]
从这8个数可以看出,第一个数最大,剩余7个数以第五个数为中心是对称的。这是由傅里叶变换所决定的,所以除了单独第一个数以外,剩下的数可以只取一半。
[0099]
下面是功率谱密度,功率谱密度描述数据在频域的能量分布;功率谱密度又分为幅度统计特征和形状统计特征这两种特征
[0100]
首先是幅度统计特征,设c(i)是第i个窗口的频率幅度值,n表示窗口数,则幅值统计特征的几个量计算方式如下:
[0101]
频域平均值(幅度统计特征均值):
[0102]
频域标准差(幅度统计特征标准差):
[0103]
幅度统计偏度:
[0104]
幅度统计峰度:
[0105]
下面是形状统计特征,设c(i)是第i个窗口的频率幅度值,n表示窗口数,则形状统计特征的几个量计算方式如下
[0106]
形状统计均值:
[0107]
形状统计标准差:
[0108]
形状统计偏度:
[0109]
形状统计峰度:
[0110]
优选地,步骤s1中,包括分步骤如下:
[0111]
s11、在待测空间中设置至少一个wifi信号发送设备以及m个wifi信号接收设备,同时通过m个所述wifi信号接收设备同时获取至少一个所述wifi信号发送设备发出的数据,得到1个dat文件;其中,m为正整数;
[0112]
s12、对获取的dat文件提取csi的数据流;其中,所述数据流包含若干个连续递进的数据包,每个数据包对应一个1
×m×
30的子载波矩阵。
[0113]
优选地,步骤s2中,包括分步骤如下:
[0114]
s21、每隔预设的时间间隔,比较1
×m×
30个子载波对动作的敏感度,选择对动作最敏感的子载波作为有效载波。
[0115]
优选地,步骤s3中,包括分步骤如下:
[0116]
s31、预设幅值扰动判断条件,所述幅值扰动判断条件包括片段起始条件和幅值扰动阈值;
[0117]
s32、依次对每个数据包对应的有效载波进行矩阵提取,得到每个数据包对应的矩阵参数;其中,所述幅值扰动判断条件用于判断滑动窗口中是否具有包含对应人体动作的若干个矩阵参数;
[0118]
s33、依据片段起始条件,通过滑动窗口截取数据流中的有第一动作片段;
[0119]
s34、实时检测所述第一动作片段是否大于所述幅值扰动阈值,若是,则输出为有效动作片段。
[0120]
优选地,所述步骤s3中,还包括分步骤如下:
[0121]
s311、采集位于不同空间位置的人体进行不同动作的数据样本,其中包括至少一个跌倒的数据样本和至少一个非跌倒的数据样本;
[0122]
s312、标记数据样本,区分跌倒的数据样本与非跌倒的数据样本的幅值扰动区别,得出幅值扰动判断条件。
[0123]
本实施例中,片段起始条件是可以任意场景均通用的,片段起始条件至少包括跌倒和弯腰的动作数据集;以6s一个dat数据文件,包与包之间的时间间隔为0.01s,也就是采样频率是100hz,就是一个数据文件对应600个包。我们在测获数据集的时候,不论跌倒还是弯腰,规定动作统一在前2s时间静止不动,2s过后再进行动作的执行,因此我们在幅值扰动条件选择判断片段的起始为第250个和第300个包之间幅值区间,以匹配收集到的数据集。
[0124]
幅值扰动阈值,该阈值是通过人工观察,预先设置好的阈值;在不同环境下,多径效应所产生的效果也不同,该阈值还未能做到一劳永逸的实现自动化配置,所以本实施例运用于其他场景时,需要重新配置幅值扰动阈值。
[0125]
参见图3和图4,可以看出,在测试动作数据集的时候,幅值改变范围在300-400之间,这里由于人为误差(每个人的时间观念不一致),会导致时间的偏移,本实施例统一判断区间在第250个包至第300个包之间的幅值;并且也可以从图3和图4中看出,跌倒和弯腰动作均发生了幅值突变,本实施例通过设定幅值扰动判断条件,将在判断区间内不产生突变的数据流过滤掉。幅值扰动阈值的设定与环境有关,需要在部署时,模拟相关动作,预先收一组或多组数据文件,观察幅值突变范围,再以设定阈值。
[0126]
在其他实施例中,可以通过预设程序,在wifi设备部署完成后,通过语音引导用户做几组动作,从而通过采集的一组或多组数据文件,根据比例或预设算法计算幅值突变范围,得到幅值扰动阈值并自动完成预设。
[0127]
参见图5,可以看到人体动作范围主要集中在0~80hz,因此本实施例选用巴特沃斯滤波器作为低通滤波器。
[0128]
作为本发明的另一个实施例,是一种在静止无人的理想环境下基于wifi的实时化检测系统,包括有信号发送模块,即wifi路由器,数据接收模块,即wifi接收天线2,数据处理和svm分类模型及实时检测模块,即微型电脑。发送天线1是1根,接收天线2有3根。
[0129]
本实施例的实现方法包含如下步骤:
[0130]
a1、环境搭建,本实施例选用了ubuntu系统14.04版本,在微型电脑上面安装好系统之后,采用csi tool工具,根据所部署的环境修改驱动与内核,目的是为了能从intel 5300网卡上面提取csi子载波信息;从intel 5300网卡,本实施例能提取30个子载波,每个
数据包包含30个子载波;
[0131]
a2、系统收数,本实施例采取了两种方式去进行采样收数,一是规定6s的时间,进行将数据包写入dat格式的文件;另外一种是采取规定600个包数,进行将数据包写入dat格式的文件;其中,两种方式均对应100hz采样率,也就是包与包之间的时间间隔是0.01s;
[0132]
a3、动作采集,安排实验人员前往数据采集点3做指定动作,采集相应的数据;本实施例在6秒的时间内是规划如下:前2s,在实验区域范围边界上站着不动,如图6所示,在两秒之后,前往数据采集点3,然后执行相应的动作,并且执行完动作之后,静止不动;
[0133]
a4、信号处理,包含分步骤如下:
[0134]
a4.1、信号预处理,先是读取dat文件,然后利用公开的csi tool工具包里面包含的提取函数,将csi子载波从dat文件提取出来,因为csi提取出来的是频率响应,因此csi数据格式是复数,a+bi的形式,通过取模(也就是取幅值),取|a+bi|作为本系统的基信号;
[0135]
a4.2、信号降噪和滤波,对数据包进行小波变换进行降噪,并利用巴特沃斯滤波器进行滤波,获得初始可用信号;
[0136]
a4.3、特征提取,对初始可用信号进行特征值提取,获得信号特征;该步骤主要通过算法的优化,提高算力,本公式是综合大量论文得出的;
[0137]
a4.4、特征归一化,该步骤一开始有两种可行方案,一种是标准化,一种是归一化,我们通过实践证明,有一些特征值的方差极小,导致了数据被放大,因此本实施例采用了归一化;
[0138]
a4.5、svm分类,采用关于libsvm的代码集,svm分类模型中向量机超参数c、g的确定,采用最优超参数c、g函数来找到每个训练集的最优超参数c、g;
[0139]
a5、通过tcp协议,连接电脑与路由器,实现实时传输数据,将电脑本地设置为server服务端,再连接路由器,设置路由器为client客户端,实现tcp传输;
[0140]
a6、将信号处理模型形成一个function_model函数,并且设置一个幅值扰动条件,通过双重while循环来确保系统的执行,第一层while循环是确保无数据连接时间超长后断开,能重新等待链接,第二层while循环是确保能够实时收数,并更新数据,执行模型;最后输出判断每个动作的结果。
[0141]
本实施例采用的采样率是100hz,并且数据包是以6s作为时间间隔,那么按照理论,一个数据包应该包含600个包数。但是由于信道链路的质量无法保障一定能满足最优条件,可能会出现部分包的延时稍微长一点,导致了以规定时间去收数的话,无法收到600个包,因此本实施例在每次收数时,会统计数据包的包数,如果当前链路环境下,包数无法以100hz的采样率经过6s后收到600个包,那么本实施例将采用收到600个包为止,即使时间超过6s。
[0142]
本实施例中,由于路由器实质的发送天线1是1根,而本实施例接收端天线有3根所以接收到的dat文件提取csi之后,一个csi对应一个矩阵,一个1*3*30的子载波矩阵。而本实施例的系统模型,并不需要3根天线接收到的子载波都使用,所以我们通过观察,比较每根天线对动作的敏感度,我们选用对我们动作最敏感的天线作为我们所需要的天线,经过多次测试,我们选用了第三根天线;并且本实施例的目的是以时间为轴进行数据分析,因此30个子载波我们只需要用到其中一个,因此,此处采取对动作最敏感的子载波,即采用了第一个子载波。这一步是提高运算效率的关键,绝大部分人就是使用30个子载波的分布方差
来代替,这大大提高了运算成本,拉低效率。
[0143]
本实施例设有9个数据采集点3,每个点采集30个dat文件,总共有两个动作一个是弯腰的动作一个是跌倒的动作(因为弯腰的动作从数据图来看,是大致相似的),5个实验者,总共由2700个数据集,这很好地降低了地理位置带来的数据误差。
[0144]
之前也说了使用小波变换来进行降噪,我们通过大量数据研究分析与实际测试实验之后,发现了用小波变换降噪是最合适于csi信号降噪的一个方式,然后我们知道,人体不同部位的动作频率是不同的,手部动作是周期短,频率大的;跌倒是周期长,频率小的;因此我们通过计算动作周期,计算大致的频率范围是0~80hz,并且小幅度的将频率范围扩大,避免动作细节丢失,再使用巴特沃斯滤波器,滤掉频率范围之外的无关信号,以提高准确率。
[0145]
本实施例有两个版本的寻优函数,一个是svmcg,一个是svmcgpp;svmcgpp是svmcg的加强版,svmcg和svmcgpp都是采用网格寻用法,也就是步进法(枚举法)进行寻找出最优超参数c,g。本实施例采用了一个枚举函数,得出最佳的svm分类模型,通过:设定一定的参数范围,并设置梯度,通过不断地训练与结果比较,得到准确率最大、对应参数值最佳的svm分类模型。这一方法虽然在生成模型的时候比较慢,需要占用一定运算资源,但是生成最终的svm分类模型,配置到实际运用场景后,该模型的应用速度极快,且占用运算资源少,并且可以适用于本发明的绝大部分场景。
[0146]
作为本发明的又一实施例,其具体实施步骤如下:
[0147]
b1、进行实时化收数,使用tcp协议,通过tcpip函数打开本地8090端口,建立为服务端,并设置服务端输入缓存大小以及等待时间;在电脑终端输入命令行,连接8090端口,等待系统收数;通过发包命令,csi tool在监控模式下双向csi采集即同时发送并接收数据;
[0148]
b2、判断是否有动作产生,先进行csi矩阵提取,通过幅值扰动判断条件进行是否产生动作的判断,并且根据幅值扰动判断条件,进行滑动窗口截取有效动作片段;若满足幅值扰动判断条件,则进行下一步,若不满足,持续收数;
[0149]
b3、进行数据处理,调用function_model函数,进行数据预处理,利用巴特沃斯滤波器进行降噪和滤波,再对其进行特征值提取,特征值包含时域特征值和频域特征值共26个;得到关于此26个特征值矩阵后,将其进行归一化;
[0150]
b4、动作分类,将归一化后的特征值矩阵放入svm分类模型进行分类,快速得出动作类型。
[0151]
本实施例主要通过于以下几种情况收集训练模型用的数据:
[0152]
情况一:开启路由器与微型电脑,使实验场景暴露于wifi环境下,确保数据接收模块可以稳定的接收到wifi信号,打开微型电脑上的matlab并执行实时化检测程序以准备接收数据。
[0153]
具体操作包括步骤如下:
[0154]

在linux系统上通过命令打开matlab;
[0155]

在端口连接以及数据传递上,使用自写的read_quietprocess.m文件;
[0156]

在tcp协议中,使用本地ip端口8090作为服务器,并且设置好端口参数;
[0157]

在程序中,将实时获取的csi数据流放入ap1_mp1数组中,并且每个都写入ap1_
mp1数组的末位,通过for循环将ap1_mp1数组的每一位往前推进一位,以达到每个接收到的数据在ap1_mp1数组中不断传递;
[0158]

建立panduan数组,将ap1_mp1每第250个数据值放入panduan的末位,这样panduan数组和ap1_mp1数组的数据都在不断的更新传递,panduan数组是应用在幅值扰动判断条件的条件的变量;
[0159]

并且设定幅值扰动判断条件,符合条件的则将当前窗口下的有效动作片段放入svm分类模型中进行分类判断,不符合则持续收数,这一步骤大量减少运算量,提高运算效率;
[0160]

最后如果有效片段进行了分类判断的,则将当前有效片段清零即panduan数组和ap1_mp1清零,避免出现重复判断造成干扰。
[0161]
在微型电脑中打开新终端,进行log_to_server操作,输入本地ip地址,以实现与8090端口的接通,并进行ping命令,使电脑本地服务器端接收来自路由器的信道信息,并传输到matlab程序中去。
[0162]
具体操作如下:
[0163]

进入netlink文件,进行log_to_server,并输入本地ip地址,以实现与本地8090端口的接通;
[0164]

输入ping命令,使本地server服务器接收路由器信道信息,传输到matlab程序中;
[0165]

按照步骤二的做法,将matlab接收到的信号,进行处理及幅值扰动条件判断,最后进行分类;
[0166]

如果分类模型判断为跌倒,则显示输出为跌倒,如果判断不为跌倒,则显示输出为非跌倒。
[0167]
由于本情况下采用的是静止无人的理想环境,因此不会触发幅值扰动判断条件。
[0168]
情况二:本情况下是一种在目标弯腰的环境下基于wifi的实时化检测系统,情况二的操作步骤与情况一的操作步骤基本一致,存在区别的是情况一为静止无人的环境,而情况二为目标弯腰的环境。
[0169]
本情况是通过目标在接收端天线与发送端天线间做一次弯腰的动作,制造扰动,弯腰使得图像出现大幅度的波动,之后曲线返回原位置,如图3所述。
[0170]
由于本情况下采用的是目标弯腰的环境,因此会触发幅值扰动判断条件,但是分类结果属于是非跌倒。
[0171]
情况三:本情况下是一种在目标跌倒的环境下基于wifi的实时化检测系统,情况三和情况二以及情况一的操作步骤基本一致,存在区别的是情况三为目标跌倒的环境。
[0172]
本情况是采用目标在接收端天线与发送端天线间做一次跌倒的方式制造扰动,跌倒使得图像出现大幅度得波动,但是跌倒动作的图像与弯腰的动作图像趋势不一致,区别在于弯腰是扰动后返回曲线的原位置,而跌倒是扰动后保持曲线位置,如图4所述。
[0173]
由于本情况下采用的是目标弯腰的环境,因此会触发幅值扰动判断条件,并且分类结果属于是跌倒,此时发出告警信息。
[0174]
本发明还公开了一种基于信道状态信息的实时化跌倒检测设备,包括:数据获取模块、载波获取模块、动作检测模块、第一数据模块、第二数据模块、第三数据模块、分类模
块和告警模块;
[0175]
所述数据获取模块用于使用tcp协议连接wifi信号发送设备,并通过wifi信号接收设备实时获取csi的数据流;其中,所述数据流包含若干个连续递进的数据包;
[0176]
所述载波获取模块用于分析数据流,从中获得有效载波;
[0177]
所述动作检测模块用于预设幅值扰动判断条件;依次对每个数据包对应的有效载波进行矩阵提取,得到每个数据包对应的矩阵参数,依据所述幅值扰动判断条件,对有效载波进行滑动窗口截取,获得有效动作片段;其中,所述幅值扰动判断条件用于判断滑动窗口中是否具有包含对应人体动作的若干个矩阵参数;
[0178]
所述第一数据模块用于当截取到有效动作片段时,对当前窗口内的有效载波利用小波变换进行降噪,并利用巴特沃斯滤波器进行滤波,获得初始可用信号;
[0179]
所述第二数据模块用于对初始可用信号进行特征值提取,获得信号特征;
[0180]
所述第三数据模块用于对信号特征进行归一化,获得特征值矩阵;
[0181]
所述分类模块用于将特征值矩阵导入svm分类模型,获得动作分类结果;
[0182]
所述告警模块用于判断动作分类结果是否为跌倒,如是,发出告警信息。
[0183]
本发明还公开了一种终端设备,包括处理器和存储装置,存储装置用于存储一个或多个程序;当一个或多个程序被处理器执行时,处理器实现上述的基于信道状态信息的实时化跌倒检测方法。所称处理器可以是中央处理单元(central processing unit,cpu),还可以是其他通用处理器、数字信号处理器(digital signal processor,dsp)、专用集成电路(application specific integrated circuit,asic)、现成可编程门阵列(field-programmable gate array,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等,所称处理器是测试设备的控制中心,利用各种接口和线路连接整个测试设备的各个部分。
[0184]
存储装置可用于存储计算机程序和/或模块,处理器通过运行或执行存储在存储装置内的计算机程序和/或模块,以及调用存储在存储装置内的数据,实现终端设备的各种功能。存储装置可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序等;存储数据区可存储根据终端设备的使用所创建的数据等。此外,存储装置可以包括高速随机存取存储器,还可以包括非易失性存储器,例如硬盘、内存、插接式硬盘,智能存储卡(smart media card,smc),安全数字(secure digital,sd)卡,闪存卡(flash card)、至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
[0185]
其中,基于信道状态信息的实时化跌倒检测设备集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,计算机程序可存储于至少一个计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,计算机程序包括计算机程序代码,计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。计算机可读介质可以包括:能够携带计算机程序代码的任何实体或装置、记录介质、u盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、电载波信号、电信信号以及软件分发介质等。
[0186]
需说明的是,以上所描述的设备及装置的实施例仅是示意性的,其中作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
[0187]
以上所述的具体实施例,对本发明的目的、技术方案和有益效果进行了进一步的详细说明,应当理解,以上所述仅为本发明的具体实施例而已,并不用于限定本发明的保护范围。特别指出,对于本领域技术人员来说,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1