RF-Pose:使用射频信号进行穿墙人体姿态估计.
- paper:Through-Wall Human Pose Estimation Using Radio Signals
- website:link
0. Abstract
本文提出了一种使用无线电信号(radio frequency,RF)穿过墙壁和遮挡进行人体姿态估计的方法RF-Pose。由于人类无法直接标注无线电信号,作者使用SOTA视觉模型进行跨模态监督(cross-modal supervision)。
在训练时,系统同步使用无线信号和视觉信号作为输入,使用视觉信号监督从无线信号中抽取姿态信息;测试时,网络只使用无线信号进行姿态估计。
1. Introduction
人体姿态估计是指通过估计关键点生成人体的$2D$或$3D$骨骼表示,现有的方法不能很好地解决遮挡问题。目前常用的方法是通过人体的可见部分假象地构造遮挡部分,但是由于人体是可变形的,构造很容易出现错误。当人体被完全遮挡(如人在墙壁后)这些方法会失效。
由于可见光会被墙壁和不透明物体遮挡,作者使用能够穿墙的WiFi范围内的射频信号。具体地使用比WiFi低一千倍的低功率无线信号。下图是该方法的结果展示。第一行表示采集的RGB图像,第二行表示模型提取得到的人体关键点的confidence map,第三行表示生成的$2D$骨骼。该方法也可以同时检测多个人。
穿墙的人体姿态估计没有标签数据,人类也无法在无线信号上标注关键点。为解决这些问题,作者使用了跨模态监督(cross-modal supervision)。在训练时,在无线传感器上附加了一个网络摄像头,用于同步获得无线信号和视觉信号,并将视觉信号作为无线信号的监督。在测试时,只使用无线信号进行姿态估计。值得一提的是,训练时没有提供人体完全被遮挡的样本,测试时也可以检测出墙壁后的人体。
训练和测试数据都是从MIT校园内采集的。作者人工标注了$2000$张RGB图像作为测试集。对于可见场景,基于视觉的模型实现了$AP 68.8$,而本模型实现了$AP 62.4$;对于穿墙场景,本模型实现了$AP 58.1$。
作者还尝试从学习到的人体骨架中提取不同人的识别特征及其移动方式。作者收集了$100$人的$2s$行走信号,使用CNN识别每一个人。通过简单地观察基于RF的骨架是如何移动的,分类器获得了$83\%$的识别准确率。
2. Related Work
(a)计算机视觉
基于RGB图像的人体姿态估计包括Top-down方法和Bottom-up方法。Top-down方法首先检测图像中的每一个人体,再对每一个人体使用单人体的姿态估计方法检测关键点。Bottom-up方法先检测图像中的所有关键点,再将关键点划分到每一个人体。作者选择Bottom-up方法。
跨模态学习(cross-modal learning)或者多模态学习(multi-modal learning)是指匹配不同的数据模态或者提供跨模态的补充信息。在本文中作者使用了跨模态的教师-学生网络,将RGB数据模态中的信息迁移到无线信号模态中。
(b)无线系统 Wireless Systems
用于检测人体的无线信号可以分成两类。
- 第一类是高频信号(如毫米波、太赫兹信号),这些信号可以对人体表面进行准确地成像,但不能穿透墙壁或家具。
- 第二类是低频信号(频率几GHz),能够实现穿墙检测。
可以穿墙检测的系统可以分为device-based和device-free。
- device-based系统使用一些无线设备产生的信号定位人体,如使用手机中的Wi-Fi信号。这类系统需要将无线设备部署到人体的不同部位来跟踪检测。
- device-free系统通过分析人体反射的无线电信号来工作,不需要人佩戴任何设备。但这类系统成像分辨率低,不同同时定位身体的多个部位。
作者也调研了一些使用无线信号进行身份识别的模型。但它们对人的移动方式有很大的限制,不能从自由形式的步行中识别人。
3. RF Signals Acquisition and Properties
作者提出的模型需要发射低功率的射频信号并接收其反射。通常使用FMCW(调频连续波)和天线阵列等技术实现对不同目标反射信号的分离。FMCW根据反射对象的距离分离反射,而天线阵列根据其空间方向分离反射。
本文使用了具有两个天线阵列(vertical和horizontal)的无线电系统,产生两维的输入数据,如下图所示。其中水平热图是反射信号在平行于地面的平面上的投影,而垂直热图是反射信号在垂直于地面的平面上的投影;注意到每个像素值都是一个复数;系统每秒可以生成30对热图。
射频信号和常见的视觉数据相比,存在较大的差异,主要体现为:
- 穿墙的射频信号分辨率较低,通常只有十几或几十厘米,由FMCW信号的带宽和天线阵列的孔径决定。本实验中分辨率为$10cm$,天线的角分辨率是$15°$。
- 当波长大于目标的表面粗糙度时会发生镜面反射(specularity)现象。本实验中信号的波长是$5cm$,会在人体表面发生镜面反射,每一次采集的无线图像可能会缺失身体的一部分。
- 射频信号与视觉数据相比有不同的数据表示(复数)和不同的视角(水平和垂直投影)。
4. Method
RF-Pose模型结构如下图所示,teacher network提供跨模态的监督,student network实现姿态估计。
(a) Teacher Network
teacher network接收RGB图像作为输入,产生预测的关键点置信度映射;student network接收对应射频信号作为输入,学习该关键点映射。
作者使用Realtime Multi-Person 2D Pose Estimation using Part Affinity Fields中提出的模型作为teacher network,student network预测人体的$14$个关键点:头部,颈部,肩部,肘部,手腕,臀部,膝盖和脚踝。
(b) Student Network
student network采用了编码器-解码器结构,使用多个编码器对水平和垂直热图信息分别进行编码,将特征编码按通道连接后使用单个解码器预测关键点的置信度热图。编码器使用strided convolutional network,解码器使用fractionally strided convolutional network。
由于人体对射频信号是镜像的,从单张射频图像中很难估计人体的全部关键点(成像可能会损失部位信息)。作者使用了一系列帧作为student network的输入,网络一次接收多帧射频图像,并输入每个射频图像帧的姿态估计。使用时空卷积(spatiotemporal convolution)作为基本的组成单元。
编码器使用$100$帧作为输入,设置batch为$24$,使用$10$层$9 \times 5 \times 5$的时空卷积,每隔一层设置$1 \times 2 \times 2$的步长。每一层后使用BatchNorm和ReLU激活函数。
解码器使用$4$层$3 \times 6 \times 6$的时空卷积。前三层设置$1 \times \frac{1}{2} \times \frac{1}{2}$的步长,使用PReLU激活函数;最后一层设置$1 \times \frac{1}{4} \times \frac{1}{4}$的步长,使用Sigmoid激活函数。
(c) Keypoint Association
获得关键点预测热图后,对每一帧分别进行处理。首先对其进行非极大值抑制,以获得候选关键点的离散峰。之后使用欧几里德距离作为两个候选关键点的权重,应用松弛方法获得预测骨骼。
5. Dataset
作者收集了无遮挡场景的数据作为训练集。具体地,在射频传感器上附加网络摄像头,同时捕捉射频信号和光学信号,两者之间的时延误差约为$7ms$。作者从$50$个环境收集了$50h$数据,单帧最大人数和平均人数分别为$14$人和$1.64$人。
作者收集了墙遮挡场景的数据作为测试集。具体地,建立$8$个摄像头的移动相机系统,标定后构造人体三维姿态,并将其投影到与射频传感器相同定位的相机视图上。单帧最大人数和平均人数分别为$3$人和$1.41$人。
6. Experiments
作者分析了一些估计失败的案例。通过实验发现,使用射频方法相对于使用光学方法(如OpenPose)进行姿态估计在两种情况下失败。第一是人体被金属物体遮挡,因为金属物体会阻断射频信号;第二是人群太过密集,射频信号的低分辨率会无法区分。
作者使用guided back-propagation方法分析输入射频信号的哪些位置会对预测结果起到更重要的作用。实验发现,对于一张水平投影图像,网络将关注点放在两个人的位置而不是前面的墙。
作者通过实验证明输入使用一段视频帧而不是单帧会更好。下图是输入一段视频帧($100$帧,约$3s$),网络对不同关键点的预测结果对输入帧的梯度响应,每帧的梯度响应取绝对值的和。作者发现右knee和右ankle的响应是高度相关的,而左wrist和左elbow之间存在延迟。
当前的工作仍然存在一些问题,列举如下:
- 无法解决人与人的遮挡(射频信号不能穿过人体);
- 系统的工作距离取决于传输功率,本文的工作距离约$40$ feet;
- 当前的系统没有分析过于复杂的人类动作。