章裕潤, 吳 飛, 毛萬葵
(上海工程技術大學 電子電氣工程學院,上海 201600)
近年來,智能終端普及程度越來越高,其集成的傳感器種類也越來越豐富,芯片計算能力也越來越強,室內定位通過多種多樣的物理環境特征實現,包括GSM、FM、聲音和磁場等[1]。Chung J,Donahoe M等人于2011年設計了利用地磁場特征定位的系統[2],定位精度達到1 m左右,而且能夠判斷用戶方向;但該系統嚴重依賴于專用的硬件設備,且對定位終端的運動軌跡提出了要求,需要在用戶移動相當長的一段軌跡。在一定允許差異性條件下采樣點同一方向不同采集設備檢測到的地磁矢量具有高相關性,Mendoza-Silva G M等人提出了將無線信號通過Procrustes分析標準化,通過異構設備的歸一化處理,統一指紋向量保存在指紋數據庫中以解決異構設備獲取的信號強度差異性大的問題[3]。但是該方法線處理,服務階段難以滿足精度和實時性的要求。
為了考慮異構設備的影響,本文提出了一種基于移動眾包的地磁傳感器陣列室內指紋定位技術,將直接測量的地磁強度信息轉換為相對的信號強度差(signal strength difference,SSD)作為指紋,相比于WiFi指紋定位、射頻識別(radio frequency identification,RFID)測距等傳統室內定位方法,由于移動眾包室內定位方法無須專業人工勘測,通過大量普通用戶實現實時、魯棒、精確的室內定位,大大提升了系統工作效率以及穩定性,基于眾包的地磁指紋定位方法無需額外布置無線傳感器,適用范圍廣、定位效果較好,將成為今后室內定位的有效解決方案。
通常不同地點的地磁矢量是不同的,而同一地點的地磁信號是穩定的[4]。因此,地磁信號可以用來區分不同位置,成為表征特定位置的無線信號特征。傳統的指紋定位方法包含兩個階段:訓練階段和服務階段。在訓練階段,專業人士對定位區域進行位置采樣,通過在定位區域劃分網格,并在每一個網格的采樣位置上收集無線信號特征,存入“位置—指紋”數據庫。這個過程也稱為現場勘測。在服務階段,也就是實際運行階段,用戶發送其所在位置上的無線信號指紋到定位服務器,服務器將該查詢指紋與數據庫進行匹配,一般通過遍歷指紋與待測點的歐氏距離,找出最佳的位置估計。
基于信號指紋的定位原理被認為是對信號特征進行分類匹配的過程[5]:訓練階段就是訓練分類器模型的過程,將待匹配區域所采集的指紋數據當作分類器的輸入,采樣點的位置作為分類器的輸出,進而得到適應帶匹配區域無線環境的分類器模型;服務階段是通過應用分類器模型進行匹配,將實時采樣的指紋信息輸入到訓練好的分類器,輸出的結果即為目標估計坐標。
由于設備的硬件結構不同,采集時間不同,眾包用戶的采集的數據具有明顯的差異性[6]。為了保證訓練階段的數據有效性,提升定位精度,本文采用定義和替代的手段來替換原來的絕對的地磁信號強度值,利用同一位置,不同方向的地磁強度不同,計算磁場強度的相對值來表征當前位置。
對于室內無線定位系統,每個信號采樣點(sample point,SP)采集到一組各方向上地磁矢量為RPi,其物理位置為di。定義位置di正北方向的地磁矢量為基準矢量Fi,定義上di其他方向的地磁矢量強度為δij,其中j為位置方向信息。利用異構設備在同一位置具有穩定的指紋差異性,而在不同的位置上不具有該特點[7]。由此本文提出的位置指紋信息以地磁偏量為計算指紋,地磁偏量計算
Ri={(δi1-Fi),(δi2-Fi),…,(δij-Fi)}
(1)
式中Ri為服務器中保存的指紋數據信息,移動眾包用戶在待定位區域采集的原始數據需進行濾波處理,降低各種因素帶來的噪聲影響,提高數據代表性,獲得盡可能反映數據真實情況的集合。本文采用限幅濾波法,根據實際情況,確定出兩次采樣值間的最大允許偏差值的絕對值ΔM,每次檢測到新值時,如果小于或等于ΔM,取此處采樣值,反之取上一次采樣值
(2)
不同于室外,室內的地磁場分布是沒有規律的,不同位置甚至相同位置不同方向的地磁場畸變在室內環境下都是不同的,科研人員利用這些磁場畸變作為定位指紋信息,可以定位出用戶所在位置[8]。華為、小米以及三星三種手機在實訓樓4樓走廊采集的指紋。

圖1 異構設備地磁場的觀察特性
由圖1所示,三種異構設備采樣得到的樣本序列曲線具有明顯一致的變化曲線,不同位置則不具有該特點,利用數據平滑方法和剔除臟數據方法,從而進一步減少觀測誤差對匹配算法的影響,將異構設備的觀測因素降低到了最小,從而提升移動眾包用戶觀測數據的有效性[9]。
本文通過4個Hmc6343—3地磁傳感器模塊構成環形傳感器陣列,如圖2所示進行地磁矢量方向特性的觀測。

圖2 地磁矢量的方向觀測示意
在實訓樓4樓的走廊進行地磁信息采集分析實驗,采集模塊位于1 m高的位置,其采集方向間隔90°,每間隔0.6 m設置一個采樣點,在實驗區域22 m的走廊38個采樣點進行地磁信息采集,如圖3所示。

圖3 地磁矢量觀測
地磁場隨走廊的位置而變化很大,推測磁場異常是與附近的建筑結構有關。而且注意到磁場4個方向之間的變化也不相等,這意味著在構建地磁基準圖需要考慮方向性。將sensor2,sensor3,sensor4與sensor1求偏差分析,如圖4所示,定量觀測磁場的方向性。
結合實驗結果,磁場強度與其地理方位強相關,磁場信號具有明顯位置差異性,差異性與隨位置方位的不同而變化,滿足指紋定位的2個基礎假設:1)無線信號特征與地理位置相關;2)不同指紋間的相似度程度與其所處的空間物理距離具有強相關性。

圖4 與sensor1偏差分析
構建指紋數據庫精度高低與否是關系定位與導航的精度的重要原因,然而室內環境復雜、易受人為因素影響,精準地采集室內各位置上的地磁強度并不現實。Kriging插值法被稱為空間自協方差最佳插值法,主要應用在對待測的目標提供一種最佳線性無偏估計的數學方法,地磁空間插值算法兼顧數學模型和統計模型,在地磁強度采樣點較多時,內插的結果光滑而且可信度較高。
假設區域內的采樣點為Pi和地磁強度觀測值Z(Pi),則區域內的待插值點X0的地磁強度估計值(X0),可以通過區域內n個采樣點的組合得到
(3)
式中λi為各采樣點所對應的權重值,其權重系數i與待插值點和采樣點距離有關,同時也和區域內的采樣點空間分布聯系密切。克里金插值算法一般需要符合無偏估計及方差最小的2個假設條件
(4)
式中γ(Xi,Xj)為采樣點Xi和Xj兩者的半變異值,γ(Xi,X0)為采樣點X0和Xj兩者的半變異值,μ為滿足估計方差最小化條件的拉格朗日常數。

(5)
式中n為樣本容量,k為聚類數量,m為聚類模糊度,d(φ(xi),φ(θj))為第i個樣本在希爾伯特空間中與第j個聚類中心的核距離度量。
通常K近鄰(K-nearest neighbor,KNN)方法中使用K條指紋的幾何質心作為位置估計[12],但在實際實驗當中發現K條指紋分布不勻,數據擬合結果與實際結果偏差較大,因此,本文采用加權K近鄰匹配算法,根據K條指紋的距離其幾何質心的遠近進行綜合加權平均計算,距離越近的指紋賦予其權值越重,在K取不同的數值時,加權K近鄰匹配的預測結果也有明顯差異。
在線定位階段,待測點處的信號強度為S=(s1,s2,…,sn),計算S與第i點指紋信號fi=(f1,f2,…,fm)的歐氏距離[11]
(6)

(7)
式中α為一極小值。
實驗場地選擇在上海工程技術大學實訓樓4樓的實驗室241及走廊的區域進行室內定位實驗。
在進行定位實驗之前,需要提前完成離線采集實驗區域的地磁強度信息制作地磁指紋基準圖。如圖5(a)在實驗區域通過劃分網格的方式劃分1.8 m×1.8 m的正方形網格,地磁指紋采集設備為Hmc6343—3地磁傳感器陣列,在網格中心采集地磁強度信息,總計70個采集點,每個網格采集50組地磁強度值。如圖5(b)將實驗區域分為2個區域,由2組人員分別完成,將數據上傳到服務器中。通過Kriging插值法對數據進行0.2 m間隔的空間差值[13],差值后的形成測試區域的地磁信息基準圖。

圖5 地磁指紋數據庫建立
實驗過程中,通過劃分2組采集區域進行眾包方式采集地磁指紋信息并且將區域內的采集點編號并設定位置坐標,總計70個采集點。例如區域1內某采樣點坐標是(1,2),該位置上采集地磁指紋,存入數據庫形式為:fi=(1,2,D1,D2,D3,D4)前2列表示坐標,后4列表示在該位置探測的4個方向上的地磁強度值。
基于核模糊C均值地磁指紋聚類算法將指紋數據庫進行聚類,經驗上按照采樣點數目合理選擇k值,本次實驗令k=5進行KFCM聚類。聚類結果如圖6(a)所示,其中各聚類的對象與其類中心直線連接,類中心通過用星形標記。
聚類完成后,在待測區域隨機選擇20個測試點,通過WKNN算法進行定位實驗,并與實際真實位置比較其定位誤差。圖6(b)為20次隨機點的定位誤差分布圖,從圖中可以看出地磁指紋陣列方法的定位誤差在3 m以內的概率達到了90 %,20次重復定位實驗計算其誤差平均值為1.87 m,幾乎滿足絕大多數室內定位需求。

圖6 實驗結果
本文提出的基于移動眾包方式的地磁指紋陣列定位方法,有效降低了指紋匹配計算量,提升了指紋基準圖建立效率,拓展了更多室內定位可能性。指紋定位在位置匹配的過程需要遍歷系統中的70個參考點,本文提出了地磁指紋聚類算法,首先在遍歷5個聚類中心確定與待測點最近的聚類中心,然后遍歷該類間10個采樣點找到最佳的k條指紋,總計進行了15次計算,對系統的運算負荷減少了78 %,這表明本文所提聚類算法優化了傳統的指紋定位方式,提高了定位系統的工作效率。
接下來研究工作可以通過結合WIFI、BLE等泛在無線信號[14],探究基于泛在無線信號的融合組合定位方式,吸收其他可靠的定位方式,進一步提升系統可靠性。