1 Introduction

  可以完成的任务:给定一个人的视频片段,然后可以通过计算这个视频中人可以产生的WIFI信号,与真实的WIFI信号作比较,由相似性判断是否为同一个人。
贡献:

  1. 提出了新的模拟WIFI信号的基于人体行走录像片段的方法。更准确地说,提取了一个在视频中人体的3D网格模型,并且应用Born approximation来模拟视频中人体行走在WIFI区域内时的WIFI CSI幅度。
  2. 提出了新的框架和用来获取人体基于WIFI CSI幅度信号的步态特征的特征集。更准确地说,综合使用了短时傅里叶变换埃尔米特函数来生成一个频谱,并且提取关键特征。更进一步提出一种提取频谱关键部分的方法和运动的方向,这使得我们能够做识别并且无需追踪。
  3. 评估。

3 PROBLEM FORMULATION AND SYSTEM OVERVIEW

  1. 给定一个人的录像片段,构建一个3D网格模型。然后,我们随时间传播此网格模型,如果该人正走在一对WiFi收发器附近,则使用Born approximation来模拟相应的接收到的WiFi信号。然后使用短时傅里叶变换使用信号幅度来生成频谱。
  2. 在人走动的地方,一个WIFI接收器计算从发射器传送的CSI信号幅度。然后使用短时傅里叶变换埃尔米特函数生成相应的频谱图并且对其进行分割,以获得最有助于识别的部分,并进一步估计运动方向。
  3. 然后从WIFI和视频数据中获得的频谱图中分别提取关键特征,并且计算他们之间的距离。训练集中的特征距离被输入进一个小的一层神经网络,在经过训练过后输出一个表示相似性的得分,由此判断是否是同一个人。

4 PROPOSED XMODAL-ID SYSTEM

  该部分用来说明系统的细节。

4.1 Video-to-WiFi Gait Modeling

  介绍如何用人体行走的录像片段生成模拟的WIFI信号,这里不假设真实的WIFI接发设备与录像片段拍摄场景一致。
  给定一个人的视频帧,首先使用the Human Mesh Recovery (HMR) algorithm来生成密集的3D网格,这包括了很多3D点来描述人体的外表面。给定一个人的视频片段,就可以构建每一帧的3D点集。这种集合的序列就可以捕捉到人体的步态。图2显示了少量视频帧和它对应的3D网格模型。

  用M(t)={xm(t)∈R3,m=1,...,M}M(t)=\{ x_m(t)\in R^3,m=1,...,M\}M(t)={xm​(t)∈R3,m=1,...,M}表示人体在时间ttt生成的3D网格点。在真实的WIFI环境下,WIFI的发射器位于xT∈R3x_T\in R^3xT​∈R3,接收器位于xR∈R3x_R\in R^3xR​∈R3。为了模拟人在WIFI区域行走的WIFI信号,使用Born approximation来建模WIFI反射的人体网格表面。更准确的说,在时间ttt模拟的接收到的WIFI信号可以写成如下:sv(t)=g(xT,xR)⏟directsignalfromTxtoRx+∑m∈M′(t)AmGmg(xT,xm)g(xm,,xR)⏟reflectedsignalfrompointxm(1)s_v(t)=\underbrace{g(x_T,x_R)}_{direct\,signal\,from\,Tx\,to\,Rx}+\sum_{m\in M'(t)}\underbrace{A_mG_mg(x_T,x_m)g(x_m,,x_R)}_{reflected\,signal\,from\,point\,x_m}(1)sv​(t)=directsignalfromTxtoRxg(xT​,xR​)​​+m∈M′(t)∑​reflectedsignalfrompointxm​Am​Gm​g(xT​,xm​)g(xm​,,xR​)​​(1)这里g(x,y)g(x,y)g(x,y)是从点x到点y的在三维坐标系下的格林函数,并且这里||·||是欧几里得范数,λ\lambdaλ是无线信号的波长,M′(t)⊂M(t)M'(t)\subset M(t)M′(t)⊂M(t)是所有Tx和Rx可见的人体网格点的子集,因为只有这些点能够将信号反射给Rx。我们在M(t)M(t)M(t)上应用the Hidden Point Removal (HPR) algorithm来确定M′(t)M'(t)M′(t)。

  从点xmx_mxm​反射的信号强度由两个因素决定:xmx_mxm​所属的身体部位的表面积和方向。比如,人的躯干比其他部位有更高的反射率因为它有更大的表面积。这个因素由AmA_mAm​体现。人体的朝向确定入射信号将被反射的方向。一个完美的反射面将会在xmx_mxm​仅从方向反射入射波,这里nmn_mnm​是点xmx_mxm​在人体上的法线向量。然而人体最好被建模为类准反射镜,将信号以不同的振幅反射到很多方向,最强烈的是rmr_mrm​方向。从点xmx_mxm​到Rx的反射波的振幅将相反地与向量xR−xmx_R-x_mxR​−xm​和rmr_mrm​夹角相关联。这种关联可以由Gaussian mask表示
我们模拟视频中的人在收发器的垂直平分线上走离链接的接收到的无线信号,如图3(b)所示。

4.2 WiFi-Based Gait Modeling


  如图4所示,一个人在WIFI覆盖的区域行走,一个WIFI发射器发送了一个无线信号,该信号从人体的不同部位反射,并由WIFI接收器接收。复基带接收信号sb(t)s_b(t)sb​(t)可以写作如下:

这里αsejθs\alpha_se^{j\theta_s}αs​ejθs​是复杂的接收信号,包括直接路径和静态路径的影响,αm\alpha_mαm​是从第m个身体部位反射的信号的振幅,dmd_mdm​是在时间t=0t=0t=0时那条路径的长度,vm(t)v_m(t)vm​(t)是第m个身体部位在时间ttt的速度。
这里角度由图4显示。

4.3 Spectrogram Generation Based on Measured Wireless Signals

从等式3可以看出信号s(t)s(t)s(t)是多个正弦波的总和,其频率与移动人的不同身体部位的各自速度线性相关。因此,评估信号s(t)s(t)s(t)的瞬时频率分量可提供有关人如何行走的信息。最后我们使用短时傅里叶变换。短时傅里叶变换中,将一个长度为TwinT_{win}Twin​的短移动窗口应用于s(t)s(t)s(t),并将傅立叶变换应用于该移动窗口的每个实例,以估计频率分量,从而产生信号频谱图。更准确地说,公式如下:


  如图5(a)所示,展示了一个行走的人的STFT频谱图,这来源于人在垂直于WIFI链接的路径上走离链接时接收到的WIFI信号。一个强烈的反射(由亮色表示)可以看出在频谱图的将近25HZ的部分,表示0.72m/s的速度。这由躯干的运动导致,由于躯干的面积大,反射更加强烈。速度较快的身体部位(比如腿)的较弱的反射(由暗色表示)在频谱图更高的频率上周期性地出现。
  尽管STFT提供了有关不同身体部位的瞬时速度的有价值的信息,但文献已经表明,相应的时频分辨率的折衷会影响该信息的质量。然后,20]中提出了多窗口埃尔米特频谱图(HS),以提高STFT频谱图的浓度。在埃尔米特频谱图中,多个埃尔米特函数用作时频分析的窗口,更准确地说:

这里χk(t)\chi_k(t)χk​(t)是第k个埃尔米特函数,bk(t)b_k(t)bk​(t)是通过求解:

获得的加权系数。
  图5(b)显示了一个埃尔米特频谱图(有K=3埃尔米特函数),它的数据和图5(a)的STFT频谱图的数据一样。为了结合HS的理想浓度特性和STFT检测来自人体不同部位的微小反射的能力,我们建议通过组合以下两个频谱图来生成最终的WiFi频谱图:
S(t,f)=STFT(t,f)+HS(t,f)S(t,f)=STFT(t,f)+HS(t,f)S(t,f)=STFT(t,f)+HS(t,f)
本质上,S(t,f)S(t,f)S(t,f)是一个多窗口频谱图,利用了矩形窗口和埃尔米特窗口。我们观察到这种结合极大地提高了步态信息在傅里叶域的可见性。然后,相对于该时间点所有频率上的值之和,我们在每个时间点归一化频谱图。
  为了可视化结合频谱图的印象,考虑图5(a)和图5(b).
在STFT中可以清楚地看到人的四肢反射,而在Hermite光谱图中,躯干反射的集中更加清晰。因此,结合的频谱图如图5©能同时捕捉步态的这两种层面。另外,图5(d)显示了另一个人行走在同一条路径上的复合频谱图,展示了可区分的步态属性。
Remark 1从等式3,频谱图中的频率fff是由运动的物体以速度v=fλ/ψv=f\lambda/\psiv=fλ/ψ产生的。由背景环境引起的静态多径出现在f=0f=0f=0,因此不会影响步态运动信息,因为步态运动信息以非零频率出现。
Remark 2我们从反射信号的频率提取步态信息,而不是从它的功率。因此,只要反射信号的功率在本底噪声以上,就可以从频谱图中提取步态信息。这对于穿墙设置特别有吸引力,在穿墙设置中,墙壁会衰减信号功率,但不会影响步态运动信息。

4.3.1 Spectrogram Segmentation

  正如公式3所示,两个参数决定了s(t)s(t)s(t)不同正弦分量的瞬时频率:运动方向(由ψ\psiψ表示),不同身体部位的瞬时速度(vmv_mvm​)。在这部分,我们描述如何分割频谱图S(t,f)S(t,f)S(t,f)并且提取ψ\psiψ可以认为恒定的部分。当WIFI收发器与人与链路的距离相比,比较接近时,每当人在直线上朝或远离Tx−RxT_x-R_xTx​−Rx​线中点走时,都会获得一个具有近似恒定ψ\psiψ的片段。在这个片段频谱图中,频率信息主要包含人的步态属性,因为它只取决于不同身体部位的速度(vmv_mvm​)。这样,它可以提供有关人员识别的丰富信息,而无需了解人员的踪迹。我们将这样的片段成为constant-ψ\psiψ segment,并且应用于我们的XModal-ID 系统。注意这里我们不需要人行走的整个轨迹都在朝向/远离链接中点的直线上,人可以走任何路线,只要有一小段路线满足在中点上这一条件就行。
  为了提取constant-ψ\psiψ,我们寻找满足两个条件的片段(最小宽度是TminT_{min}Tmin​)。首先,段内频率上的能量分布应该保持低于阈值VthV_{th}Vth​,因为V(t)V(t)V(t)的值较高的话就表明频谱图在时间ttt接近于平滑,这就暗示了在这个片段没有检测到行走。第二,片段内的平均躯干速度变量应该保持低于一个确定的阈值vthv_{th}vth​。由于平均躯干速度在一个短时间窗口中是恒定的,变化的平均躯干速度在频谱上是由于变化的ψ\psiψ。平均躯干速度可以由频谱图计算出来,在Sec.5中解释。当一个片段满足了上述的条件,它就可以认为是constant-ψ\psiψ segment
  接下来,我们考虑TminT_{min}Tmin​合适的值(片段的最小可接受宽度)。TminT_{min}Tmin​过小将会导致很多误报,因为ψ\psiψ会由于片段过短而被错误地认为是恒定的。另一方面,过大的TminT_{min}Tmin​会需要人行走很长的时间才能被识别。我们认为Tmin=3T_{min}=3Tmin​=3是适合的,它提供了充足数量的步态周期来提取有意义的步态特征。

  如图6显示了一个分割算法的例子,如左图所示,constant−ψsegmentconstant-\psi segmentconstant−ψsegment指的是part2和part3。右图显示了完整的频谱图S(t,f)S(t,f)S(t,f)以及通过算法分割的部分。

4.3.2 Walking Direction Estimation

  我们发现,走离链接的部分比走向链接的部分有更加清晰的步态模式,因此我们提出在后续的处理步骤中,只使用走离链接的部分。使Sw(t,f)S_w(t,f)Sw​(t,f)表示一个constant−ψsegmentconstant-\psi segmentconstant−ψsegment。人的运动方向信息(比如走离或者走向链接),理论上包含在ψ\psiψ内。但是,无法从Sw(t,f)S_w(t,f)Sw​(t,f)中提取此信息,因为正ψ\psiψ和负ψ\psiψ都将导致相同的声谱图,因此仅使用信号幅度测量即可。这里,我们提出了一个新的方法来估计行走方向。
  尽管Sw(t,f)S_w(t,f)Sw​(t,f)中缺少ψ\psiψ的信息,我们仍可以通过利用WIFI信号频率在[fc−B/2,fc+B/2][f_c-B/2,f_c+B/2][fc​−B/2,fc​+B/2]的范围内的事实来决定行走方向。这里fcf_cfc​是载波频率,而BBB是WIF带宽。根据等式3,幅度平方WiFi信号s(t;ρ)s(t;\rho)s(t;ρ),在一个非常短的时间内并在频率范围fc+ρf_c+\rhofc​+ρ测量得到,这里ρ∈[−B/2,B/2]\rho \in [-B/2,B/2]ρ∈[−B/2,B/2],写作:

这里ccc是光速。等式8最后一行是由于:在一个非常短的时间窗口中,ρt\rho tρt相比于其他余弦函数参数是可忽略不计的。通过对z(t;ρ)z(t;\rho)z(t;ρ)在ttt维度使用傅里叶变换以及在ρ\rhoρ维度使用逆傅里叶变换,可以得到:

这里δ(.,.)\delta(.,.)δ(.,.)是2D Dirac Delta function,λc=c/fc\lambda_c=c/f_cλc​=c/fc​。通过检验等式9,我们可以发现对于正的ψ\psiψ(人走向链接),ZZZ的分量位于(f,τ)(f,\tau)(f,τ)空间的第一和第三象限,而对于负的ψ\psiψ,位于第二和第四象限。因此我们可以根据以下规则得出行走方向:

  图7展示了人走向或走离链接的方向估计结果Z(f;τ)Z(f;\tau)Z(f;τ)。可以清晰地看出Z(f;τ)Z(f;\tau)Z(f;τ)对于走向链接,其能量集中于第一和第三象限,而后者则集中于第二和第四象限。

4.4 Video-Based Spectrogram Generation

  在4.1节中,我们提出了一种基于人的视频录像来模拟无线信号的方法,使用了HMR算法,HPR算法和Born approximation。由于我们只对constant−ψconstant-\psiconstant−ψ的部分感兴趣,如4.3节所讨论的一样,我们只需要模拟等式1相应的无线信号,即当人在链接的垂直平分线上走离链接并且离链接足够远(比如当收发器的距离是1.5米时就需要2米)的情况。在使用等式1计算sv(t)s_v(t)sv​(t)后,模拟WIFI信号Sv(t,f)S_v(t,f)Sv​(t,f)的频谱图由∣sv(t)∣2|s_v(t)|^2∣sv​(t)∣2通过等式4应用短时傅里叶变换生成而来。

  为了验证我们的框架,我们做了一个实验,一个对象在链接的垂直平分线上走离链接,同时被录像。如图8(a)显示了真实的WIFI数据的频谱图以及基于视频模拟的频谱图。图8更进一步展示了一些从两个频谱图中提取的步态属性,可以发现,基于视频的频谱图几乎模拟了真实的WIFI数据频谱图。另外,图8(b)展示了两个不同对象的基于视频的频谱图的例子,可以发现两个对象的步态属性在两个频谱图里是很容易区分的。
  接下来将展示如何计算基于视频的模拟频谱图和真实获得的WIFI数据频谱图的相似程度,用以识别是否为同一个人。

5 FEATURE EXTRACTION AND SIMILARITY PREDICTION

  为了识别是否为同一个人,我们从相应的频谱图提取了一些特征。然后计算了一组基于WIFI的和基于视频的特征的距离。有了这些距离,我们训练了一个一层的神经网络来适当地结合这些距离并且决定WIFI和视频样本是否属于同一个人。训练过后,神经网络不仅给出了预测,同时也给出了相似性的得分。一旦网络训练好了,我们就能够将他应用在没有见过的WIFI和视频数据上。

5.1 Spectrogram Features

  我们识别了12种捕捉人体步态特性的关键特征。我们同时计算WIFI和视频频谱图的每个特征,并且使用距离尺度来衡量两个频谱图的每个特征的不同。更详细的说,我们从频谱图的频率和时间维度来看,因为他们又不同种类的步态特征。
  频率维度携带了关于 不同身体部位运动速度的信息,因此我们使用了如下的与频率有关的特征:

  • Frequency distribution(FD):这个特征通过对频谱图在时间上取平均获得。这个特征可以捕获人在行走过程中频率分量的分布,或等效地捕获不同身体部位的速度。
  • Frequency distribution in 4 giat phases(FD4):与前一个特征相似,我们为步态周期的四个阶段中的每个阶段计算频谱图的时间平均,得到四个相应的特征向量[30]。
  • Average torso speed:我们计算出躯干速度曲线的平均值,可以使用[30]中的方法从频谱图中提取。
  • Average of the range of torso speed:在提取躯干速度曲线后,计算躯干速度变量在一个步态周期的范围。然后将该范围在频谱图中所有步态周期上取平均值。

  时间维度携带了关于人体步态的时间信息。我们使用如下特征来捕捉时间特点:

  • Autocorrelation(AC):给定一个频谱图,我们为每个频率仓计算整个时间的自相关(最大滞后为2秒),得到一个自相关矩阵。然后,我们基于频率分布上的能量分布计算该矩阵在频率维度上的加权和。 此功能携带有关步态周期和步行周期的信息。
  • FFT of spectrogram over time:与[22]种的方法类似,我们为每个频率仓计算了频谱图随时间的快速傅立叶变换(FFT)。然后根据频率上的能量分布,计算频率范围内的加权和。
  • Histogram of autocorrelation gradient:这是AC特征向量的梯度直方图。
  • Histogram of torso speed gradient:我们计算了躯干速度梯度直方图,它显示躯干速度如何随时间变化。
  • Stride length:这是通过将平均躯干速度乘以步态周期长度获得的,步态周期长度可以从躯干速度曲线中提取。
      就有了12个WIFI频谱特征和12个基于视频的模拟频谱的特征,我们计算相应特征的距离,结果是一个表示12个特征距离的向量。更准确的说,对于频率分布(FD),我们使用Kullback- Leibler Divergence(KLD)作为距离尺度。对于四个步态周期的频率分布,对每个步态周期,我们首先通过抵消各自的平均速度来对准基于WiFi和基于视频的特征。然后使用KLD作为距离尺度。这个对准消除了依赖于区域的平均速度的影响(请参见第8节),并更加关注身体部位的相对速度。 对于自相关(AC),我们使用余弦相似度。 对于所有其他特征,我们使用欧几里德距离。

5.2 Similarity Prediction

  给出一组WIFI和视频数据样本,我们计算了12个距离。然后利用一个简单的神经网络来结合这些距离并生成一个最后的结果,看是否WIFI和视频对属于同一个人。我们在WiFi /视频数据以及与测试对象和区域不相交的位置上训练网络(更多详细信息,请参见第6节)。在训练过程中,将这12个距离输入神经网络,该神经网络具有1个包含30个单元的隐藏层以及一个表示这两个样本是否属于同一个人的二进制标签。经过训练,该网络可以在给定对上提供二进制决策,并提供表明相似度的置信度得分 在一对之间。

6 EXPERIMENTAL SETUP AND DATA COLLECTION

阅读笔记:XModal-ID: Through-Wall Person Identification from Candidate Video Footage Using WiFi相关推荐

  1. 【阅读笔记】 EgoDistill: Egocentric Head Motion Distillation for Efficient Video Understanding

    ⚔️[阅读笔记] EgoDistill: Egocentric Head Motion Distillation for Efficient Video Understanding 题目可翻译为--E ...

  2. 论文阅读笔记 Sparse Representation-Based Intra Prediction for Lossless/Near Lossless Video Coding

    摘要 基于稀疏表征的帧内预测SRIP.在HEVC中有35种角度预测模式AIP,用最相似的相邻像素去表示当前待编码像素.为了编码与解码的一致,角度预测模式的参数要传到解码端,为了进一步提高编码效率,再传 ...

  3. T5: Text-to-Text Transfer Transformer 阅读笔记

    作者:徐啸 知乎专栏:自然语言处理学习之旅 https://zhuanlan.zhihu.com/p/89719631 写在前面 谷歌用一篇诚意满满(财大气粗)的基于实验的综述,试图帮助研究者们「拨开 ...

  4. [python Cookbook]阅读笔记

    @toc] 前记:为了补充一下python语法知识,感谢网友的推荐阅读了pythonCookbook,这本书确实不错,以问题为导向,引导解决思路. 这个博文是从阅读笔记typora中直接复制过来的没有 ...

  5. mysql笔记 doc_Mysql DOC阅读笔记

    Mysql DOC阅读笔记 合理利用索引 隔离调试查询中花费高的部分,例如函数调用是在结果集中的行执行还是全表中的行执行 最小化全表扫描的数量,特别是在大表中 定期使用ANALYZE TABLE语句更 ...

  6. Yii源码阅读笔记 - 日志组件

    2015-03-09 一 By youngsterxyf 使用 Yii框架为开发者提供两个静态方法进行日志记录: Yii::log($message, $level, $category); Yii: ...

  7. Hadoop阅读笔记(四)——一幅图看透MapReduce机制

    时至今日,已然看到第十章,似乎越是焦躁什么时候能翻完这本圣经的时候也让自己变得更加浮躁,想想后面还有一半的行程没走,我觉得这样"有口无心"的学习方式是不奏效的,或者是收效甚微的.如 ...

  8. Head First HTML与CSS阅读笔记(二)

    上一篇Head First HTML与CSS阅读笔记(一)中总结了<Head First HTML与CSS>前9章的知识点,本篇则会将剩下的10~15章内容进行总结,具体如下所示. div ...

  9. word2vec原理_word2vec论文阅读笔记

    word2vec算是NLP中的经典算法,之前在课程中简单的学过,但面试时经不起深问.痛定思痛,参考Jack(@没搜出来)的总结,笔者重点阅读了Mikolov的原始论文[1]和Xin Rong的详细推导 ...

  10. S3C2410 bootloader ----VIVI阅读笔记 (转)下

    1 static inline void mem_mapping_linear(void) 2 { 3      unsigned long pageoffset, sectionNumber; 4  ...

最新文章

  1. 索引系列八--索引特性之有序难优化union
  2. u-boot移植:解决 Retry count exceeded; starting again
  3. SAP MM 采购订单与相关合同的价格差异问题分析
  4. asp论坛回复功能怎么实现_在asp.netcore中使用中间件(middleware)实现api拦截及验证功能
  5. 【解决办法】read_csv()第一列作为index
  6. 以太坊智能合约Hello World示例程序
  7. Java中如何克隆集合——ArrayList和HashSet深拷贝
  8. python实验四_python实验四
  9. 美团深度学习系统的工程实践
  10. python 字符串编码
  11. Visual Studio 2005 编译的版本无法启动,出现应用程序配置不正确的错误
  12. 【组合数学+动态规划】在如下8*6的矩阵中,请计算从A移动到B一共有____种走法。要求每次只能向上或向右移动一格,并且不能经过P。...
  13. Array类型的扩展
  14. C语言实现任意两种进制之间互相转换
  15. yum仓库中源的配置与使用
  16. 利用WhiteHose一步步建立分布式系统的框架(七)--添加组件的操作并实现分布式系统...
  17. OperationTrident游戏开发总结
  18. 高通Camx offline Log merge命令
  19. java cloassLoader大仙儿
  20. 一战封神快速升级攻略

热门文章

  1. VM 安装win10 失败
  2. Android自学笔记:Tab控件源码剖析
  3. Postgres-XL集群的搭建和测试详解
  4. 趋势科技2014校园招聘笔试题
  5. 人民网首届内容科技大赛 视界云荣膺三甲晋级决赛
  6. intel 显卡使用cuda吗
  7. 读李尚龙《你只是看起来很努力》摘录的句子
  8. 汽车行业数字化工厂建设方案
  9. JAE触摸屏维修JAE人机界面维修UT3-TS5-B
  10. AddressBook 代码详解