一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种基于无穿戴设备的实时人体手势识别方法

2022-07-20 20:40:21 来源:中国专利 TAG:


1.本发明涉及无线通信、wifi感知和人体动作识别领域,具体是一种基于无穿戴设备的实时人体手势识别方法。


背景技术:

2.人类手势识别是智能家居、安全监视和虚拟现实等应用领域发展的核心推动力,特别是在需要人机交互的某些领域。随着科技的不断发展、用户需求的不断提升以及人们对生活品质的高要求,愈发能够彰显手势识别研究的重大价值,因此许多学者一直在探索更有效、更精确、鲁棒性更强的手势识别方式。
3.目前存在许多不同的人体手势识别技术,基于设备的手势识别(主动式)需要用户携带传感设备,而基于无穿戴设备的手势识别(被动式)不用另外配备传感设备,在基于设备的手势识别方法中,利用可穿戴传感器或身体接触设备通过捕获信号来实现用户手势活动的感知。但是这种方法没有被广泛应用,因为要求用户配备额外传感设备,对用户不友好,使用成本过高。
4.被动式识别方法与主动式方法相比拥有更多优点,包括能够更加便捷的实现、无需携带额外设备以及应用成本低,被动式识别方法又主要存在基于视觉图像与无线信号两种。其中,基于视觉图像的手势识别系统可以通过光学传感器从不同的角度捕获目标图像实现精确的跟踪和识别。虽然这些设备的识别精确度很高,但这些设备的使用会给参与者带来舒适问题和隐私威胁,并且这种方法易受光线条件和遮挡状况的影响。基于无线信号的手势识别主要利用环境中广泛存在的wifi信号,无需额外部署信号采集设备或者摄像设备就可实现活动感知,与基于传感器和视觉图像的识别方法相比,利用wifi信号进行感知识别成本低、能够保护用户隐私、不易受光照和视距条件影响、适用范围广。但是现有的一些wifi手势识别技术存在一些不足:由于wifi信号的不稳定性,多次重复执行相同手势动作得到的信号波形图存在极大差异,不使用复杂的神经网络结构和大量数据,很难从信号中学习到手势特征。因此基于深度学习的方法存在训练成本高、模型设计复杂、数据样本不足易引起感知性能下降等问题;而传统的指纹数据库匹配方法只使用了部分子载波或者直接融合多个子载波的数据,丢失了重要的手势信息或导致数据失真;直接利用信号幅值作为手势指纹,导致系统计算量过大。
5.为此,本发明提出一种基于无穿戴设备的实时人体手势识别方法。


技术实现要素:

6.本发明旨在至少解决现有技术中存在的技术问题之一。为此,本发明提出一种基于无穿戴设备的实时人体手势识别方法,该一种基于无穿戴设备的实时人体手势识别方法利用多个子载波csi幅值的统计特征作为手势指纹进行匹配分类,无需设计复杂模型结构,减少系统计算量的同时提升手势识别准确率。
7.为实现上述目的,根据本发明的第一方面的实施例提出一种基于无穿戴设备的实
时人体手势识别方法,一种基于无穿戴设备的实时人体手势识别方法,包括如下步骤:步骤1,在收发设备之间执行手势动作,采集数据构建本地手势指纹数据库;步骤2,接收端实时获取人体执行手势动作时的csi数据,并对采集的数据进行数据预处理、天线选择、特征提取形成手势指纹;步骤3,计算待识别手势指纹和与指纹数据库中各条指纹记录的相似度,使用加权欧氏距离作为相似度衡量指标,利用最大相似度进行匹配分类,进而给出分类结果,通过识别手势类型实现对设备的控制。
8.优选的,步骤1具体为:步骤1.1:在室内场所中选择一个合适的区域,在该区域内放置一个wifi信号发射端,然后在固定的位置放置带有多根天线的接收端设备,发射端和接收端设备均为支持intel 5300系列网卡的设备,均设置其工作于monitor模式下。
9.人在检测区域内的固定位置和固定方向以一定摆动幅度和运动速率执行规定的四类手势动作,每类动作重复执行多次,接收端设备采集人体执行手势动作时的csi信号,总共得到执行p次手势动作时采集到的p个存储csi数据的.dat格式文件。
10.步骤1.2:从p个.dat格式文件中提取p条手势指纹记录存储到本地数据库中。
11.对于每个.dat格式文件,都执行以下步骤:(1)通过linux-csi-tool工具从.dat文件中提取csi矩阵,从csi矩阵中提取出幅值信息;(2)对幅值信息进行数据预处理,利用hampel滤波去除信号离群点和离散小波变换去除信号的各种噪声;(3)利用动态自适应天线选择算法选择每个手势动作中2根更敏感天线的数据;(4)通过随机森林算法计算出多种常用统计特征的重要性评分,根据重要性评分结果来选择最有效的一些统计特征,本发明选择csi幅值的方差、最大值、最小值、中位数作为每个手势动作的指纹。
12.步骤1.3:手势指纹定义为,其中代表指纹第m个子载波的向量,是一个4维向量,,分别为第i条手势指纹的第m个子载波的方差、最大值、最小值、中位数,每条手势指纹的动作类别标签为,离线阶段构建的本地指纹数据库由p条手势指纹记录和相应类别标签构成。
13.优选的,步骤2具体为:步骤2.1:在步骤1.1的相同区域内,发射端和接收端设置方法和步骤1.1中的相同,人在步骤1.1中设置的固定位置、固定方向执行四种动作种的一种,接收端接收发射端发送的数据,并将采集的数据发送给服务器,服务器对这些数据进行步骤(1)、(2)、(3)、(4)的处理得到手势指纹。
14.优选的,步骤3具体为:步骤3.1:通过以下方式计算指纹和指纹之间的相似度,首先利用本发明提出
的加权欧氏距离计算两个手势指纹单个子载波之间的相似度,利用融合两个手势的多个子载波之间的部分相似度,得到两个手势指纹的整体相似度:融合两个手势的多个子载波之间的部分相似度,得到两个手势指纹的整体相似度:其中、、分别是四个特征方差、最大值、最小值、中位数的权重,本发明将四个特征的权重赋值为四个特征的重要性评分。
15.步骤3.2:将待分类手势指纹和指纹数据库中所有手势指纹进行匹配分类。
16.计算n与指纹数据库中各条指纹记录的相似度,其中表示第条指纹记录,然后对这些相似度进行排序,找出其中相似度最大的指纹记录对应的手势类别即可判断为待分类手势动作的手势类别。最终待分类手势判定为:手势动作的手势类别。最终待分类手势判定为:步骤3中本发明提出的动态自适应天线选择算法具体为:设维度为1
×3×
30的csi幅值数据流格式如下,记为,代表第n个接收天线接收到的信号,n为子载波数目:收天线接收到的信号,n为子载波数目:收天线接收到的信号,n为子载波数目:首先计算每根天线的30个子载波在一段时间的振幅平均值,得到1
×
90的,其中l为子载波中数据包的个数(采样点数目)。
17.计算每根天线的30个子载波在一段时间的振幅方差:。
18.计算90个子载波的振幅方差值与振幅平均值的比值。
19.计算每根天线的平均比值得到,对进行排序,最敏感的天线具有最大的值,次敏感天线有第二大的值,从而达到获取敏感天线的目的。
20.与现有技术相比,本发明的有益效果是:本发明基于指纹数据库匹配的方法无需使用训练神经网络模型,所需采集的数据量小,节省了数据采集时间,手势识别准确率高,通过简单的方法实现了实时手势识别。
21.本发明利用csi幅值的统计特征作为手势指纹,减少了系统计算量;充分利用多个子载波的数据,增加数据多样性;多天线的利用提升了无线感知的空间分辨能力,敏感天线选择又在降低数据维度的同时提升了系统的识别性能。
附图说明
22.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
23.图1为hampel滤波去除异常点流程图;图2为hampel滤波去除异常点前后的对比图;图3为离散小波变换去噪流程图;图4为离散小波变换去噪效果图;图5为计算统计特征重要性评分结果图;图6为实现手势分类的流程图;图7为生成指纹数据库的流程图。
具体实施方式
24.下面将结合实施例对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
25.本发明提供一种基于无穿戴设备的实时人体手势识别方法,主要是识别push&pull、sweep、clap、slide这四种手势动作。
26.一种基于无穿戴设备的实时人体手势识别方法具体包括如下步骤:步骤1,在收发设备之间执行手势动作,采集数据构建本地手势指纹数据库;步骤2,接收端实时获取人体执行手势动作时的csi数据,并对采集的数据进行数据预处理、天线选择、特征提取形成手势指纹;步骤3,计算待识别手势指纹和与指纹数据库中各条指纹记录的相似度,使用加权欧氏距离作为相似度衡量指标,利用最大相似度进行匹配分类,进而给出分类结果,通过识别手势类型实现对设备的控制。
27.其中,步骤1具体为:步骤1.1:在室内场所中选择一个合适的区域,在该区域内放置一个wifi信号发射端,然后在固定的位置放置带有多根天线的接收端设备,发射端和接收端设备均为支持intel 5300系列网卡的设备,均设置其工作于monitor模式下。
28.在一个具体的实施例中,本发明使用一个路由器作为发射端,使用一台笔记本电脑作为接收端,发射端和接收端设备均安装linux-csi-tool开源工具,分别在注入模式和监听模式下工作,发射端不断向无线信道注入数据,接收端接收数据并利用linux-csi-tool提取csi。
29.在linux系统里,通过echo命令设置发射端使用一根天线,接收端使用三根天线。发射端以1000 packet/s的速率发送数据包,执行一次手势动作时,接收端每次接收到1
×3×
30个子载波的csi数据。
30.人在检测区域内的固定位置和固定方向以一定摆动幅度和运动速率执行规定的四类手势动作,每类动作重复执行多次,接收端设备采集人体执行手势动作时的csi信号,总共得到执行p次手势动作时采集到的p个存储csi数据的.dat格式文件;从p个.dat格式文件中提取p条手势指纹记录存储到本地数据库中。
31.对于每个.dat格式文件,都执行以下步骤:(1)通过linux-csi-tool工具从.dat文件中提取csi矩阵,从csi矩阵中提取出幅值信息;(2)对幅值信息进行数据预处理,利用hampel滤波去除信号离群点和离散小波变换去除信号的各种噪声;(3)利用动态自适应天线选择算法选择每个手势动作中2根更敏感天线的数据;(4)通过随机森林算法计算出多种常用统计特征的重要性评分,根据重要性评分结果来选择最有效的一些统计特征,本发明选择csi幅值的方差、最大值、最小值、中位数作为每个手势动作的指纹。
32.接收端采集到数据后,再从csi数据中提取手势指纹。在离线阶段时,采集数据形成指纹数据库;在在线识别阶段,采集待分类手势的csi数据,生成待分类手势指纹,将它与指纹数据库中手势指纹进行匹配,找到待分类指纹和指纹数据库中相似度最大的模板指纹,实现分类。
33.步骤1.3:手势指纹定义为,其中代表指纹第m个子载波的向量,是一个4维向量,,分别为第i条手势指纹的第m个子载波的方差、最大值、最小值、中位数,每条手势指纹的动作类别标签为,离线阶段构建的本地指纹数据库由p条手势指纹记录和相应类别标签构成。
34.优选的,步骤2具体为:步骤2.1:在步骤1.1的相同区域内,发射端和接收端设置方法和步骤1.1中的相同,人在步骤1.1中设置的固定位置、固定方向执行四种动作种的一种,接收端接收发射端发送的数据,并将采集的数据发送给服务器,服务器对这些数据进行步骤(1)、(2)、(3)、(4)的处理得到手势指纹。
35.优选的,步骤3具体为:步骤3.1:通过以下方式计算指纹和指纹之间的相似度,首先利用本发明提出的加权欧氏距离计算两个手势指纹单个子载波之间的相似度,利用融合两个手势的多个子载波之间的部分相似度,得到两个手势指纹的整体相似度:
其中、、分别是四个特征方差、最大值、最小值、中位数的权重,本发明将四个特征的权重赋值为四个特征的重要性评分。
36.步骤3.2:将待分类手势指纹和指纹数据库中所有手势指纹进行匹配分类。
37.计算n与指纹数据库中各条指纹记录的相似度,其中表示第条指纹记录,然后对这些相似度进行排序,找出其中相似度最大的指纹记录对应的手势类别即可判断为待分类手势动作的手势类别。最终待分类手势判定为:手势动作的手势类别。最终待分类手势判定为:步骤3中本发明提出的动态自适应天线选择算法具体为:设维度为1
×3×
30的csi幅值数据流格式如下,记为,代表第n个接收天线接收到的信号,n为子载波数目:子载波数目:子载波数目:首先计算每根天线的30个子载波在一段时间的振幅平均值,得到1
×
90的,其中l为子载波中数据包的个数(采样点数目)。
38.计算每根天线的30个子载波在一段时间的振幅方差:。
39.计算90个子载波的振幅方差值与振幅平均值的比值。
40.计算每根天线的平均比值得到,对进行排序,最敏感的天线具有最大的值,次敏感天线有第二大的值,从而达到获取敏感天线的目的。
41.图1为本发明对csi幅值数据利用hampel滤波进行离群点去除的流程图。
42.对于csi幅值序列,计算e的中值d,然后计算e中每一个值和d的绝对中位值偏差,即,如果绝对中位值偏差不在阈值范围内,该点认定为异常点,那么使用计算得到的中值来代替该离群值。
43.图2为利用hampel滤波对csi幅值数据行离群点去除的结果图。
44.图3为离散小波变换去噪流程图。小波去噪主要按照以下三个步骤进行:1)首先是选取一个合适的小波基函数进行小波分解,然后确定小波分解的层次n,
计算带有噪声的csi信号在第n层的小波分解结果。
45.2)接着阈值化处理高频信号的细节系数,对于第一层到第n层,都选择一个合适的阈值,对细节系数进行阈值处理。
46.3)根据n层的原始近似系数和第一层到第n层修正细节系数,对分解后的信号进行小波重构,恢复去噪后的原始信号。本发明中选择的小波函数为symlet小波,阈值化处理方式是软阈值处理,阈值选取方法是sqtwolog阈值,小波分解的层数是4层。
47.图4为离散小波变换去噪效果图。
48.图5为计算统计特征重要性评分结果图。
49.利用随机森林算法,得到了csi幅值的方差、中位数、最大值、最小值、频率峰值、信号能量、平均数、幅度、偏度、四分位数、峰度各个特征的重要性得分。根据得分进行排序,选择出得分最高的一些特征,本发明选择多个子载波csi幅值的方差、最大值、最小值和中位数四个特征值作为手势指纹。
50.图6为实现手势分类的流程图。
51.接收端进行如下处理:从采集的一个待分类手势样本的.dat数据文件提取csi矩阵,计算出csi幅值。
52.使用hampel滤波去除离群点,使用离散小波变换去噪,利用动态自适应天线算法选择敏感天线数据,计算方差、最大值、最小值、中位数四个特征作为待分类手势指纹。
53.与指纹数据库各条手势指纹进行匹配,分别计算相似度,找到指纹数据库中相似度最大的模板手势指纹,输出模板手势指纹的手势类别作为待分类手势的类别。
54.图7为生成指纹数据库的流程图。
55.接收端进行如下处理:从采集的n个手势样本的.dat数据文件提取csi矩阵,并生成相应手势类别标签,计算出csi幅值。
56.使用hampel滤波去除离群点,使用离散小波变换去噪,利用动态自适应天线算法选择敏感天线数据。
57.计算方差、中位数、最大值、最小值、频率峰值、信号能量、平均数、幅度、偏度、四分位数、峰度共11个统计特征,利用随机森林算法计算这些统计特征重要性评分。选择方差、最大值、最小值、中位数四个特征作为手势指纹,将n条手势指纹和相应手势标签存储进本地数据库。
58.利用以上基于指纹数据库匹配的手势识别方法在4种手势上的识别平均精度达到94.4%。push&pull、sweep、clap、slide四种手势的识别准确率分别为89%、94%、94%、100%。
59.上述公式均是去除量纲取其数值计算,公式是由采集大量数据进行软件模拟得到最接近真实情况的一个公式,公式中的预设参数和预设阈值由本领域的技术人员根据实际情况设定或者大量数据模拟获得。
60.以上实施例仅用以说明本发明的技术方法而非限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方法进行修改或等同替换,而不脱离本发明技术方法的精神和范围。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献