郝廉效,余科根,林貽若
(中國礦業(yè)大學環(huán)境與測繪學院,徐州 221116)
隨著智能手機的普及和技術的發(fā)展,定位信息已經(jīng)成為智能手機必不可少的基本信息。在室外,全球定位系統(tǒng)(Global Positioning System,GPS)、GLONASS、BeiDou等定位系統(tǒng)有著很高的定位精度,可以滿足人們的定位需求。由于衛(wèi)星信號在室內(nèi)環(huán)境中容易被障礙物遮擋,全球?qū)Ш叫l(wèi)星系統(tǒng)(Global Navigation Satellite System,GNSS)定位技術無法滿足室內(nèi)定位需求。近年來,大家研究了許多室內(nèi)定位方法。常見的室內(nèi)定位技術包括Wi-Fi、藍牙、射頻識別(Radio Frequency Identification,RFID)、超寬帶(Ultra-Wide Band,UWB)和地磁等。定位精度、適用范圍、成本以及能耗都是制約室內(nèi)定位發(fā)展的問題,例如:UWB的定位精度較高,但成本很高;RFID的定位精度高,但定位范圍較小;Wi-Fi與藍牙的定位成本較低,但需要基礎設施硬件支持,且定位精度較差等。
由于地球磁場和建筑物結(jié)構的影響,不同的室內(nèi)位置有著不同的磁場強度,這也是地磁室內(nèi)定位的基礎。此定位方法的優(yōu)點是成本低、范圍較廣、定位復雜度低且定位精度較高。指紋定位方法為地磁室內(nèi)定位常用的定位方式,不同的指紋位置常常有不同的定位結(jié)果。然而,地磁定位的精度不夠穩(wěn)定,在100m范圍內(nèi),平均誤差為1~5m,而且地磁定位受定位區(qū)域磁場影響較大,難以通過算法較大地提高定位精度。S.Shahidi等提出了一種低復雜度、無基礎設施的地磁定位方法,其定位精度可達2.5m。S.Yeh等使用加權磁場分量和K近鄰(K-Nearest Neighbor,KNN)算法結(jié)合的地磁定位方法,有效提高了地磁室內(nèi)定位精度,一定環(huán)境下可實現(xiàn)0.76m的定位精度和91.7%的定位準確率。
由于地磁場廣泛存在于室內(nèi)環(huán)境中,地磁定位也常常與其他定位方式融合,從而提高定位效果。近年來,常常把地磁、Wi-Fi以及行人航位推算(Pedestrian Dead Reckoning,PDR)結(jié)合在一起,從而提高定位精度。Li Y.等提出了一種融合Wi-Fi、地磁和PDR的定位方法,通過實驗證明了該方法具有更好的定位效果。Guo X.等設計了一種基于磁/Wi-Fi/PDR的多模融合定位系統(tǒng),該系統(tǒng)可達到1.6m的平均定位精度,優(yōu)于其他單一定位方式,且覆蓋范圍廣,魯棒性強。因此,需要考慮室內(nèi)區(qū)域做融合算法的必要性以及融合算法的選擇。
是否采用地磁定位,是否與其他定位手段融合,是否可以采用插值來快速構建指紋庫,都需要對定位區(qū)域有一個預判。此預判必須滿足快速、準確的條件。因此,最好可以構建一個室內(nèi)區(qū)域判別系統(tǒng),對地磁定位精度好的區(qū)域只使用地磁,反之選取融合。使用這種判別可以極大地減少不必要的工作量,提高定位的效率。
本文提出了一種鄰近點特征的概念,僅需采集少量的指紋即可求得,可以提前預判定位區(qū)域的精度狀況。結(jié)合鄰近點特征和快速構建指紋庫的方法,可以判別地磁定位在對應區(qū)域可能的精度效果、需不需要進行融合定位等。
在地磁定位的研究中,常常使用磁場強度圖譜表現(xiàn)室內(nèi)區(qū)域的磁場變化規(guī)律。然而,此圖譜僅反映了磁場的變化,并不能展現(xiàn)定位區(qū)域的定位誤差及精度。因此,本文提出了一種與定位精度有正相關關系的磁場特征——鄰近點特征。
理想條件下,選取歐式距離最小的候選點為準確定位點。但在實際定位中,歐式距離最小的候選點常常不是其準確點,需要選擇歐式距離最小的個候選點,那么候選點與準確點的空間距離對于定位精度則有著較大的關系。如果候選點集中較多的為準確點的相鄰點,那么無論是加權平均還是聚類都可以取得較好的定位結(jié)果。因此,可建立一個求取候選點集中相鄰點的個數(shù)對于定位結(jié)果影響的特征提取模型。
據(jù)此,提出了一種基于磁場的特征——鄰近點特征,做相應判斷。首先,將每一個指紋點作為測試點,使用式(1)計算測試點與其他(-1)個指紋點的歐式距離。
=
(1)
(2)
其中,(,)是測試點的實際坐標;(,)是第個候選點的實際坐標。這里設定一個閾值,以衡量候選點與測試點實際位置的遠近。若≤,則=1,代表第個候選點距離測試點近且利于得到較為準確的定位結(jié)果;反之則距離遠,不利于定位,=0。在實際定位中,若較多的候選點位于閾值之內(nèi),則定位誤差很小。計算所有候選點的和與的比值作為鄰近點特征(Proxi-mity Points Feature,PPF),特征范圍是0~1。
(3)
(4)
圖1 三類指紋點
指紋庫的構建和更新是地磁室內(nèi)定位的重中之重。若想知道一個室內(nèi)區(qū)域的粗略的定位精度狀況,則需要采集大量的指紋點以及測試點數(shù)據(jù)。單點采集指紋點和測試點將花費大量的時間和人力。
單點采集耗費時間的原因是每一個指紋點都需要停留一段時間來采集磁場信息。為了克服這一缺陷,可以采用動態(tài)采集多個指紋點磁場的方法。具體方法是手持采集設備,盡量勻速地行走一定的距離,然后把采集的磁場信息均勻地分配到該直線上的各個指紋點。動態(tài)采集的方法一定程度上可以代替單點采集構建指紋庫的方法。所以,這里介紹一種快速構建指紋庫的方法。
首先,把室內(nèi)區(qū)域分為多條直線的行走路徑,并統(tǒng)計每條路徑上的指紋點數(shù)量。然后,采集人員手持采集設備在直線路徑上勻速行走,并記錄開始點和終結(jié)點。以同樣的方法采集所有直線路徑的磁場信息。最后,再把每條路徑上采集的磁場信息平均分配到該路徑的各個指紋點上,這樣就可以快速地構建一個區(qū)域的指紋庫。此種采集磁場的方法可以用于分析特征,但如果要用于定位指紋庫的構建,其精度還有待提高。
這種快速構建指紋庫的方法采用勻速采集并平均分配的方法。然而,保持勻速是比較困難的,尤其是范圍較大的區(qū)域。因此,可以參考PDR中使用的計步算法原理以實現(xiàn)磁場信息的分配。此種基于有限狀態(tài)機計步的算法可以提取行走時每一步落地點的加速度信息。把落地點與指紋點建立對應關系,然后把落地時刻對應的磁場信息作為指紋點信息。此種方法可以一定程度上解決勻速行走的問題。
本節(jié)采用4個不同類型的定位區(qū)域的地磁定位數(shù)據(jù),以分析鄰近點特征與定位精度的關系。常見的室內(nèi)定位場景為開闊區(qū)域和狹長的走廊。4個實驗場地均位于中國礦業(yè)大學南湖校區(qū),實驗場地1位于體育館2樓走廊,長40.8m,寬2.4m;實驗場地2位于5號博學樓C區(qū)4樓走廊,長39.2m,寬3.2m;實驗場地3位于4號博學樓AB區(qū)4樓,長14.4m,寬6.4m;實驗場地4位于1號博學樓C區(qū)4樓,長12.8m,寬7.2m。4個實驗場地的指紋點數(shù)分別是170、147、144、144個。為了實驗方便,在指紋點位置上采集磁場信息作為測試點數(shù)據(jù)。采樣設備為小米8,采樣頻率為50Hz。
在采集指紋庫數(shù)據(jù)后,使用1.1節(jié)提到的方法計算各個指紋點的鄰近點特征,鄰近點特征的范圍是0~1。然后,通過KNN算法求得各個指紋點位測試點的定位誤差。表1所示為4個實驗區(qū)域的平均定位誤差和平均鄰近點特征。
表1 定位誤差及特征均值
由表1可知,實驗1的定位場景是長走廊,平均誤差為5.34m,均方根誤差為9.91m,平均特征為0.45;實驗2的定位場景是長走廊,平均誤差為4.14m,均方根誤差為8.42m,平均特征為0.52;實驗3的定位場景是開闊區(qū)域,平均誤差為2.52m,均方根誤差為3.42m,平均特征為0.60;實驗4的定位場景是開闊區(qū)域,平均誤差為0.98m,均方根誤差為2.08m,平均特征為0.70。實驗場地3、4為開闊區(qū)域,其平均特征較大,誤差較小。走廊區(qū)域進行的實驗1、2則反之。這是因為走廊區(qū)域存在較多的模糊匹配。在大多數(shù)磁場定位中,開闊區(qū)域的定位精度也要優(yōu)于走廊區(qū)域。實驗場地1的平均鄰近點特征最小,但平均定位誤差最大。實驗場地4則平均鄰近點特征最小,平均定位誤差也最小。
為了更好地分析不同特征值范圍內(nèi)測試點的定位情況,以鄰近點特征閾值為0.5,將所有的測試點分為兩類。一類的特征值大于閾值,記為滿足特征;另一類的特征值小于閾值,記為不滿足特征。假定誤差小于2m為定位準確,分別計算兩類指紋點的定位準確率。圖2所示為4個實驗兩類測試點所占有的比重。2個走廊區(qū)域的實驗滿足特征的測試點比重較小,開闊區(qū)域的測試點比重較大。
圖2 兩類測試點比重
圖3和圖4所示為兩類測試點的平均定位誤差和定位準確率,藍色柱狀為滿足特征的測試點,紅色柱狀為不滿足特征的測試點。
圖3 定位誤差對比
圖4 定位準確率對比
在不剔除粗差的前提下,4個實驗中滿足特征的測試點有著更低的誤差均值和更高的定位準確率。實驗1和4中滿足特征的測試點定位誤差明顯小于不滿足特征的測試點,定位準確率明顯高于不滿足特征的測試點。然而,實驗2和3的這種關系卻不明顯。這是因為除了鄰近點特征外,磁場辨識度等因素也會影響定位表現(xiàn),即實驗2和3中不滿足特征的測試點可能有著更高的磁場辨識度。
為分析不同特征范圍內(nèi)測試點的定位準確率,分別統(tǒng)計0~0.2、0.2~0.4、0.4~0.6、0.6~0.8和0.8~1特征范圍內(nèi)測試點的定位準確率,如表2所示。在統(tǒng)計中,有的范圍內(nèi)測試點數(shù)量較少,如實驗2中0.8~1部分和實驗4中0~0.2部分,分別有6個和5個測試點。此種情況點位樣本太小,不具有統(tǒng)計價值。
表2 不同特征范圍定位準確率
由表2可知,4個實驗中特征范圍越大的測試點定位準確率越高,實驗1的0.6~0.8和實驗4的0.8~1范圍甚至可以達到100%的定位準確率。此外,當特征值處于0~0.2時,定位準確率極低,有著很高的錯誤匹配率;0.6~1的特征范圍有著最優(yōu)的定位準確率。
室內(nèi)磁場信息維度較小,機器學習、濾波算法等對室內(nèi)定位精度提高較小且算法復雜度較高,所以最近鄰(Nearest Neighbor,NN)、KNN、加權K最近鄰(Weighted K Nearest Neighbor,WKNN)、增強加權K最近鄰(Enhanced Weighted K Nearest Neigh-bor,EWKNN)、動態(tài)時間歸整(Dynamic Time Warping,DTW)等簡單算法為常見的定位方法。在不同的定位區(qū)域有著不同的適合的定位算法。在之前的研究中,走廊區(qū)域適宜NN算法和DTW算法,兩種算法在特殊情況下均有著較高的定位精度,但是定位準確率不高。開闊區(qū)域適宜WKNN算法和EWKNN算法,均可達到較高的定位精度和準確率。表3所示為4個實驗區(qū)域NN、WKNN、EWKNN三種不同定位算法的定位誤差表現(xiàn)。
表3 不同算法定位誤差
表3中,實驗1、2、3在EWKNN算法下取得最高的定位精度。EWKNN算法是一種動態(tài)選擇值的KNN算法。因為在實際定位中對不同測試點選擇不同值才能達到最優(yōu)定位表現(xiàn),所以一些定位區(qū)域適宜EWKNN算法。實驗4在NN算法下取得最優(yōu)定位精度,這是因為實驗4更貼近理想定位條件。一般來說,WKNN算法的定位精度要優(yōu)于NN算法,然而4個實驗中只有實驗2是這種情況。這是因為磁場辨識度對地磁定位影響較大,磁場辨識度較高的測試點更容易在NN算法下取得最小誤差,但如果使用WKNN算法,定位誤差必定會上升。
圖5所示為4個實驗不同算法下的定位誤差與鄰近點特征均值分布圖。在不同算法下,實驗區(qū)域的定位誤差仍然與其鄰近點特征成一個負相關的關系。
圖5 不同算法定位誤差與特征均值
從以上的數(shù)據(jù)分析和結(jié)果,可以得出以下結(jié)論:
1)鄰近點特征均值越大,定位區(qū)域的定位誤差越小;
2)開闊區(qū)域的鄰近點特征均值要大于走廊區(qū)域,定位誤差小于走廊區(qū)域;
3)以0.5為特征閾值,大于特征閾值的測試點有著更高的定位準確率和更小的定位誤差;
4)鄰近特征越大的測試點定位準確率越高。
在實際定位中,不同區(qū)域的地磁定位精度有著巨大的差異,給定位工作帶來了困難。例如:經(jīng)過大量的數(shù)據(jù)采集后發(fā)現(xiàn),此區(qū)域地磁定位精度很差;對于地磁定位精度較高的區(qū)域進行多種定位手段的融合,造成資源浪費,等等。使用本文提出的鄰近點特征求取和快速構建地磁指紋庫的方法,可以在一定程度上緩解這些問題,并指導定位區(qū)域定位手段的選取。
在第2節(jié)中,通過實驗證明了鄰近點特征與點位誤差呈一個負相關關系。鄰近點特征可以對地磁定位精度進行預判,并通過這種預判來方便、優(yōu)化定位工作。從特征求取來看,鄰近點特征可以反映指紋點與其相鄰指紋點的磁場信息相似度。鄰近點特征較大,則該點與其相鄰指紋點的磁場相似度更高。實驗3和4均是鄰近點特征較高并且有著較高磁場相似度的定位區(qū)域,適宜采用一些插值算法以減少指紋庫的采集工作量。
本節(jié)的實驗區(qū)域位于中國礦業(yè)大學南湖校區(qū)的1號教學樓C區(qū)2樓,記為實驗5。定位區(qū)域的范圍是7.2m×12m,以0.8m的采樣間隔采集了135個指紋點,每個指紋點采集時間是5min;并均勻采集了130個測試點,每個測試點的采樣時間是3s,本次實驗的采集設備是小米8,采樣頻率是50Hz。
實驗5的鄰近點特征分布如圖6所示,計算得到的平均鄰近點特征是0.74,略高于實驗4的0.70。表4所示為實驗4和5的定位誤差對比。實驗5的定位誤差為0.73m,均方根誤差為1.40m,均低于實驗4。此實驗也滿足鄰近點特征與定位誤差的負相關關系。
圖6 實驗鄰近點特征分布
表4 實驗4和5對比
實驗5的鄰近點特征較高,所以是磁場相似度較高的定位區(qū)域。首先,使用增大采樣間隔來減少指紋庫的采集工作量。將采樣間隔增大到1.6m,僅需要采集40個指紋點,是原有采集量的29.6%。然后,使用插值算法將其他的指紋點重構出來。這里使用的是Matlab自帶的最鄰近插值(nearest)、線性插值(linear)、三次立方插值(cubic)和三次樣條插值(spline)。圖7所示為四種插值算法重構指紋庫后的定位誤差表現(xiàn)。
圖7 指紋重構后的定位誤差
從圖7的誤差柱狀圖可以看出,采用四種插值算法重構指紋庫后的定位誤差略有上升,其中最鄰近插值誤差上升最多,三次立方插值誤差最接近原有指紋庫的定位精度。除最鄰近插值外,其他插值算法均維持在1m以下的定位精度。因此,對于鄰近點特征較高的定位區(qū)域,其指紋點磁場相似度較高。采用插值算法減少大量的指紋采集工作量后,定位精度有所下降,但仍然可以滿足定位需求。
為解決地磁室內(nèi)定位中的一些弊端,本文提出了一種基于鄰近點特征的地磁定位輔助方法。鄰近點特征可由線下數(shù)據(jù)求得。經(jīng)實驗驗證,該特征可以較為準確地預判定位區(qū)域的定位誤差。鄰近點特征的范圍是0~1,特征越大的則測試點定位誤差越小,定位準確率越高。經(jīng)過對多個實驗區(qū)域定位性能的分析,鄰近點特征均值越大的定位區(qū)域定位誤差較小,本文實驗4和5的鄰近點特征均值大于0.7,其定位誤差均小于1m。依據(jù)此特征的性質(zhì),可快速識別定位區(qū)域選擇磁場定位的適宜性。鄰近點特征的求取實現(xiàn)了對定位區(qū)域的地磁定位精度的預判,為定位區(qū)域定位方法的選擇提供了指導,減少了不必要的工作投入,極大地方便了定位工作。
鄰近點特征的另一特性是可以代表指紋點與相鄰指紋的磁場相似度。特征越大則意味著指紋點與其相鄰指紋有著更高的相似度。針對特征均值較大的區(qū)域,本文通過實驗證明了僅采集29.6%的指紋并不會對定位精度造成較大的影響。通過這種方法,可以有選擇地減少指紋庫的采集工作量,提高室內(nèi)定位的效率。