由华盛顿大学在2013年发表的Whole-Home Gesture Recognition Using Wireless Signals,曾获得Mobicom2013的最佳论文。这篇文章提出了一个WiSee系统,该系统可以在一个房屋内使用WiFi信号来实现人体动作的识别,无需实验者佩戴设备,并使用USRP-N210s设备上实现原型系统的搭建和验证,在实际测试中达到了94%的识别准确率。

论文用人做姿势时引发的多普勒频移现象来识别动作。

第一个挑战是人体移动所带来的多普勒频移的量很小,如在5G WiFi下,人以0.5m/s的速度移动 ,则得到的多普勒频移为

相对于20MHz的WiFi信号差别很大,解决的方法是把接收到的信号使用信号处理的方法转为窄带脉冲。

WiFi等系统采用了OFDM的方法,OFDM系统把时域信号转化为频域信号,考虑在一个子信道中有N个已调制的符号,将这段信号重复M次,则接收端收到的信号是

只有一个信号不为0,其他信号都为0,也就是每个子信道的带宽变为了原来的1/M。当然,在平时发送的信号不是重复的,这时候可以使用均衡技术,也就是在接收端对收到的信号进行处理,使得其变为重复的信号段。(经过我的估算,将一个子信道的312.5KHz带宽变为几Hz的窄带信号,需要重复的信号段落在几万次,感觉还是有点不太现实,这部分需要我补充一下OFDM以及802.11 WiFi的相关知识)。

此外,还有几个实际一点的问题,对于WiFi系统的频偏:因为DC分量和多径分量的频偏大致相同,所以无需特意处理;对于WiFi的资源占用:只需要不超过3%的子信道占用,即可高准确率的识别动作,如下图所示。

第二部分是如何将多普勒频移的模式和一个具体的动作进行匹配。

文中进行对0.5s内采集的数据进行FFT变换,并且延时5ms,然后对这个大部分都是重叠的信号进行FFT,此时对于多普勒频移的分辨率是2Hz。下图是几种动作对应的时频坐标下的多普勒频移截面的测得数据图。

首先需要判断频移的开始和结束,想法很简单,就是当多普勒频移信号的能量大于噪声信号3dB时,判断为信号的开始;当平均的频移能量小于噪声能量的3dB倍数时,就判断为信号已经结束了;此外,因为人体的动作速度也不是很快,所以判断在1秒中之内发生的两段信号都属于同一个动作(这些都属于一些参数的设置,和具体的实验环境有关,需要进行测试来决定)。

为了对不同的多普勒频移信号进行动作的分类,首先把这些信号分为正向多普勒频移,记为1,负向多普勒频移-1,和正负向同时出现的多普勒频移(因为在一个动作中,人体的不同部分的移动方向可能相反)2,这样就可以把一段信号序列建模为由“1”、“-1”和“2”组成的数字序列,便于进行处理。接下来就是动作分类算法了,但是作者在这里没有具体的描述他的算法,只是简单说明是一种模式匹配算法(我个人感觉可以用聚类或者机器学习、深度学习的方法进行处理,可能识别准确率会更好)。

第三个问题是当环境中存在着多个人,甚至这些人都是活动的时候,如何继续对测试者的动作产生比较准确的识别。答案是使用MIMO系统。

首先,对于动作识别的测试者,需要其做出一个表明身份的引导动作,比如对着接收设备重复几次推手和收回的动作。

其次,在接收端,使用该导引动作对应的数字化的多普勒频移序列进行相关操作,来检测是否存在目标用户。

然后,需要对多天线上接收得到的多普勒信号进行处理,来获得动作的发出方向。具体如下:

M是一个动作对应的信号片断数,Dnm是第n根天线的第m个片段的多普勒信号的能量,Wn每个天线的复系数。目标是对于所有m,最大化Dm,这个思想和波束成形比较相似,即将天线对准期望信号的方向。(感觉也许可以将其他的更加复杂和高准确率的波束成形和阵列信号处理的方法用在这里,也许可以提升一些性能)。

最后是实验结果的测试和评估。

使用USRP-N210设备,使用多个这样的设备,组成多天线。发送端使用单天线,接收端使用最多是5个天线,选择在这样一个两张床的卧室进行测试,如下图,一共十个测试点,其中4个LOS点,4个NLOS点,2个穿墙点,在每个点进行10个每个动作,有9种动作,所以一共是900次动作识别的测试。

识别的准确率如下图所示,纵轴是实际的动作类型,横轴是被WiSee系统判断的动作类型,此外横轴还有一个未识别到动作的选项,表示虽然用户做了动作,但是系统没有任何的反应。可以看到,各个动作的识别准确率都是88%以上,平均值是94%,还是很不错的。未识别的概率在2%以下。

下图表示在不同的导引动作次数下,错误触发导引动作识别的情况,对于导引动作只有一次的情况下,每小时的平均错误次数有15.62次,还是比较严重的,当导引动作的次数增加时,错误次数明显下降,当重复次数为3次时,每小时的平均错误次数是0.13,已经很小了。

下图是识别准确率与干扰人数以及接收端天线数目之间的关系图,可以看到随着干扰人数的变多,识别的准确率在下降,在单天线时,假如有4个干扰人,那么识别准确率低于40%;此外,识别准确率随着天线数目的增加而提升。

参考文献

Pu Q , Gupta S , Gollakota S , et al. Whole-Home Gesture Recognition Using Wireless Signals[C]// Proceedings of the ACM SIGCOMM 2013 conference on SIGCOMM. ACM, 2013.

Whole-Home Gesture Recognition Using Wireless Signals 论文阅读相关推荐

  1. Triplet Loss: A Unified Embedding for Face Recognition and Clustering(论文阅读笔记)(2015CVPR)

    论文链接:<FaceNet: A Unified Embedding for Face Recognition and Clustering> 摘要 尽管人脸识别领域最近取得了重大进展[1 ...

  2. 论文阅读:Push the Limit of Acoustic Gesture Recognition

    这篇文章是香港理工大学郑元庆副教授团队在2020年IEEE INFOCOM(IEEE International Conference on Computer Communications)会议上的文 ...

  3. 论文阅读-VERY DEEP CONVOLUTIONAL NETWORKS FOR LARGE-SCALE IMAGE RECOGNITION

    作者: Karen Simonyan et al. 日期: 2015 类型: conference article 来源: ICLR 评价: veyr deep networks 论文链接: http ...

  4. 深度学习论文阅读图像分类篇(五):ResNet《Deep Residual Learning for Image Recognition》

    深度学习论文阅读图像分类篇(五):ResNet<Deep Residual Learning for Image Recognition> Abstract 摘要 1. Introduct ...

  5. 【阅读笔记】BodyCompass: Monitoring Sleep Posture with Wireless Signals

    本文是研一小白读的一篇论文,目的是做笔记,以免以后忘记,如果有理解不正确的地方希望网友们多多指教 论文名称: BodyCompass: Monitoring Sleep Posture with Wi ...

  6. 深度学习论文阅读图像分类篇(三):VGGNet《Very Deep Convolutional Networks for Large-Scale Image Recognition》

    深度学习论文阅读图像分类篇(三):VGGNet<Very Deep Convolutional Networks for Large-Scale Image Recognition> Ab ...

  7. Gesture Recognition

    "Gesture Recognition" allows Media Input devices(such as cameras) through the use of algor ...

  8. CLEval: Character-Level Evaluation for Text Detection and Recognition Task 论文阅读

    CLEval: Character-Level Evaluation for Text Detection and Recognition Task 论文阅读 1.动机 2.主要思想 3.已有的相关方 ...

  9. Multimodal Gesture Recognition Using 3-D Convolution and Convolutional LSTM

    前言 因为最近再看C3D+LSTM手势识别方面的文章,故记录一下,一方面来加深理解记忆,另一方面以备后面回顾复习 团队介绍 作者来自西安电子科技大学软件学院 Motivation 1:利用三维卷积网络 ...

最新文章

  1. Java不同场景加载不同类_[改善Java代码]不同的场景使用不同的泛型通配符
  2. springMVC3学习(二)--ModelAndView对象
  3. python xpath语法-python xpath 基本用法
  4. vue.js响应式原理解析与实现
  5. vba查找数据并返回单元格地址_VBA积木代码中实现反向多值查找、LIKE模糊查找...
  6. 浅谈分库分表那些事儿
  7. MagicRecord For IOS 简介
  8. oracle linux 图形化,Linux7图形化安装Oracle11g教程,亲测实用有效!
  9. 仅用一年时间,蓝巨人 IBM 如何开发出首台个人计算机?
  10. Delphi教程推荐
  11. java护眼的颜色_爱护眼睛,从IDEA开始,护眼色设置走起-护眼设置
  12. 2、传输介质——双绞线
  13. MKS Robin nano V3.0主板使用RRF 固件教程
  14. 微信小程序自定义map组件标记点markers(兼容苹果和安卓)
  15. 常见文件类型的图标介绍
  16. win2012服务器系统要求,Windows server2012公开报价多少?安装系统有什么要求?
  17. 纵观计算机简史ppt,纵观计算机简史初中信息技术新课本中国地图出社课件.ppt...
  18. SpringCloud搭建NetFilx-Eureka(小白专属)
  19. 数组方法 + ES6中数组方法 + 数组的空位
  20. 2020-02-12

热门文章

  1. 离散数学之集合论(上)
  2. 利用CloudFormation自动化部署AWS GWLB集成FortiGate防火墙
  3. Idea中 .vue文件中的代码是灰色的
  4. JAVA之输入行数打印倒直角三角形
  5. 2019太原理工大学计算机录取分数线,太原理工大学2019年各省录取分数线
  6. 脚本语言之简单易懂的介绍
  7. java163邮箱服务器地址,JavaEmail发送网易163邮箱和QQ邮箱
  8. 《缠中说禅108课》33:走势的多义性
  9. Hexo + yilia 主题 +githubpages博客添加友言评论功能
  10. phpyun 打开调试开关显示错误信息