1. 程式人生 > >文獻閱讀(7)

文獻閱讀(7)

WiDir: Walking Direction Estimation Using Wireless Signals(UbiComp 2016)

針對的問題:雖然行走方向是很重要的上下文資訊,但是在室內環境下仍然缺乏連續高效的行走方向估計方法(裝置無關的,device-free)

面臨的挑戰:現有的室內定位精度不夠,不足以用來直接產生準確的方向估計;如何從所有子載波的CSI資訊中提取出方向資訊;單個菲涅耳區不能檢測所有的行走方向(角度死角),且不能對映到笛卡爾座標系;

解決方案:通過分析不同子載波的相位差導致的波形時延,計算兩個子載波的互相關,提取出Fresnel direction(inwards or outwards the Fresnel zone);通過部署多個WiFi裝置形成二維菲涅耳區,根據不同維度的運動距離和方向生成笛卡爾座標系下的方向資訊;

實現細節:

  1. CSI背景(關於子載波的分佈):20MHz的通道有56個子載波,載波下標為-28~1,1~28,載波間隔為0.3125MHz或312.5KHz,每個載波的頻率為fcarrier+0.3125kfcarrier;CSI值是每Ng個相鄰載波輸出一個,Ng由802.11n-2009標準有三種:1,2,4,選擇哪個Ng由製造商決定,Intel 5300 NIC的實現是輸出30個CSI,即20MHz時Ng=2,40MHz時Ng=4,則輸出CSI的載波間隔分別為相應的Ng0.3125MHz;40MHz通道有114個OFDM子載波,載波間隔也為0.3125MHz(這個背景介紹對於WiFi通道和載波分佈不清楚的還是很有用的!)
  2. Fresnel direction
    1. 菲涅耳區的相位分析:
      定義Fresnel phase ρρ=2π(d1d0)/λ+φ,其中d0d1分別為直接路徑和反射路徑,λ為訊號波長,φ為由反射和衍射引起的附加相位(extra phase introduced by diffraction/reflection);
      接收訊號的瞬時功率滿足:c2=a2+b2+2abcosρ,為類正弦波形;則如果存在類正弦波形的上下波動,則表明反射物體正連續穿越菲涅耳區的等相輪廓線(ρ),但是不足以判斷運動方向;
    2. 多個頻率的相位分析
      由於不同子載波的頻率不同(波長不同),各個子載波的菲涅耳區大小不同,則等相橢圓的大小不同,故人體運動穿過的等相橢圓的先後次序不同,從內往外走時,對於同一個ρ
      ,先穿過波長較小的載波的等相橢圓;
      不同子載波的相位和時間延遲
      (疑問:不同載波的頻率/波長不同,則相位隨時間的變化速度不同,則ΔρΔt隨時間也不斷變化?)
      發射源運動時,由於不同子載波的初始Fresnel phase ρ 不同,因此不同子載波產生的正弦波動存在一定的相位延遲Δt,即不同子載波的波動存在先後關係(precedence relationship),向內運動時,長波長的子載波先波動(低頻),如圖:
      波形延遲
      不同波長的載波的相位差為:
      Δρ=2π(d1d0)(1λ11λ2)=2π(d1d0)(f1f2)/c=2π(d1d0)Δf/c
      其中附加相位φ被抵消了;
      由於當Δρπ時,無法判斷不同載波到達的先後順序,所以本文設定2π為最大允許的相位延遲,並據此選取子載波(調整Δf):Δf=Δρc/2π(d1d0)(限制最大相位延遲,從而可以判斷不同載波波動的先後次序!)
    3. 相位延遲估計:訊號處理中,可通過解析方法獲得兩個波形的相位延遲(Hilbert transformation),然而利用解析訊號進行精確的相位提取需要訊號為單成分的(one frequency component at any given time),而人體運動引起的CSI波形的擾動包含多個頻率成分,不能直接利用解析方法提取相位延遲;
      所以分析時間延遲,訊號處理中,計算時間延遲估計最常用的方法是通用互相關方法,本文采用互協方差方法進行延遲計算(減去平均值後的時間序列的互相關)(疑問:不同載波由於波長不同,導致各自的時間序列的波動頻率不同吧,這樣計算不同載波的時間序列的互相關性得到的時間延遲有意義?)
      利用訊號的互相關計算時間延遲,必須保證兩個訊號之間的相似性,因此為了保證人體的運動速度不變,取得視窗大小為0.1s(constant speed),在5GHz和正常人體速度下,該視窗包含1到7個週期;(視窗為0.1s保證了序列之間的相似性,可以解決了上述疑問?)
    4. Fresnel direction估計:估計時間1s,滑動視窗大小0.1s,滑動步長為50%視窗大小,計算每個視窗的延遲,根據時間延遲的結果判斷方向(正延遲多or負延遲多,計算延遲的時候以頻率大/波長小的為標準?)
      延遲分佈
      針對一維菲涅爾區,只有當相對步行角度大於30度時,可以計算Fresnel direction(存在檢測死角);
  3. 將Fresnel direction對映到笛卡爾座標系(local direction):引入二維菲涅耳區
    1. 方向和距離估計:引入另一個正交的菲涅耳區可以計算出一維情況下相對角度較小時的運動方向
      距離估計:利用波動的週期數,本文選用頻域的FFT方法計算,小相對角度下距離計算不可靠(每個載波單獨計算?);
      方向計算:在兩個維度下的波動數計算都可靠下的情況下,利用波動數比值的反正切值作為角度(波動數只是對距離的一個近似吧?特別是運動起點距離兩個視距路徑的距離不同時);當存在不可靠的小角度時,利用時延分佈進行方向估計,越平行於LOS時延分佈的符號累積絕對值越小,越垂直則越大,則利用時延分佈的累積作為距離近似;
    2. Local direction:當兩個維度的Fresnel direction均可靠時,方向向量為[sgn(dirx)Dx,sgn(diry)Dy]T,其中dirx為累積延遲符號,Dx為波動數;當存在不可靠Fresnel direction時,方向向量為[dirx,diry]T
  4. 實驗評價

    1. 系統流程圖
      流程圖
      兩個CSI波形利用sync報頭對齊;流程圖第三部分的reliable判斷,利用時延的累積分佈值大小;
    2. 實現:3個mini-PC,外接全向天線(一個作為AP,兩個作為接收器);利用額外的電腦進行資料處理(利用TCP/IP協議交換資料);傳送器利用injection mode進行資料傳送,每十秒丟棄一些包作為同步訊號;5GHz,40MHz通道,波長短,波動數多;取樣率500 pkts/s;
    3. 資料去噪:需保持相位不變(因為本文利用的就是不同載波的相位差);基於降維的方法(PCA)和FIR濾波器不適用,且IIR濾波器也不能在保持波形的情況下有效去噪;本文利用Savitzky-Golay filter(also called digital smoothing
      polynomial filters or least-squares smoothing filters)(這個去噪方法倒是比較新穎,可以保持波形,不改變相位資訊,mark一下!)
      資料去噪
    4. 實驗設定:判斷Fresnel direction可靠性的時延分佈閾值,設定為視窗的四分之一(one quarter of the window)(是指四分之一秒視窗的累積時延值麼?)
    5. 實驗結果:不同房間環境和不同角度都可以進行有效檢測;受環境變化影響小;能檢測連續改變的方向(circle and zigzag)
    6. limations and discussion:
      1. 多徑影響:人體產生的多徑不止本文考慮的主要路徑;當人體遮擋室內靜態路徑時,會改變菲涅耳區的形狀,特別是附近存在金屬物體時;解決方案:當金屬物體僅位於路徑的小部分可以利用反向分析處理(backward analysis)
      2. 網格近似:本文利用等相輪廓線的交叉對網格進行近似,而二維菲涅耳區輪廓線不是直線,需進行直角化處理;相鄰輪廓線之間的距離會隨相位的增加而減小,導致網格大小變化;大多數房間不是正方形,引起菲涅耳區形狀和大小的變化;這些因素均會導致距離估計誤差;解決方案:如果可以計算訊號的Fresnel phase,則可以利用相位延遲計算人體位置;
      3. 檢測範圍和裝置部署:為了擴大檢測範圍需要部署多個裝置,需要考慮裝置的部署位置以達到最佳的檢測效果(combination);
      4. 多人檢測:可以考慮利用多組TX-RX和successive cancellation技術的原理實現,但也要考慮硬體導致的CSI的失真問題;

    本文亮點:提出了一個利用商用裝置的裝置無關的人體運動方向檢測系統(device-free!);利用了基於菲涅耳區的多頻(載波)相位分析;