1. 程式人生 > >【定位原理揭祕第三期】室內定位技術原理揭祕

【定位原理揭祕第三期】室內定位技術原理揭祕

>>>>引言

地圖軟體已經成為我們日常出行必不可少的工具之一,在導航和搜尋上帶來了很多便捷的幫助。而定位技術在地圖軟體裡的應用可謂無法替代,尤其是在小範圍的室內定位環境下,如何幫助使用者高精度搜索導航,是百度地圖定位技術的研究重點。

我們一提到定位,大家印象中最熟悉的技術可能就是GPS定位。其實更為準確的說法是GNSS(Global Navigation Satellite System)定位,中文含義就是全球衛星定位系統,而 GPS只是GNSS中的一種實現方法,該系統是由美國部署的。另外,還有其他型別的定位系統,例如,俄羅斯的格洛納斯(GLONASS),歐洲的伽利略和中國的北斗。大家可能會有疑問,既然這麼多國家投入巨資建設全球定位系統,是不是就可以直接覆蓋到室內定位呢?

答案是否定的。簡單介紹一下原因:衛星定位使用的電磁波,屬於L波段,這種訊號穿透建築物或其他阻擋物時,訊號強度會被削弱,尤其是在室內環境中,訊號在通過屋頂、牆壁、窗戶等障礙物時,會由於折射和能量吸收而損耗掉部分能量。最壞的情況下,訊號直接被完全阻塞,也就是GPS檢測不到任何衛星。在一些半開放區域,有一些能夠勉強透射過來的訊號,但由於其損耗過大,訊號所攜帶的偽距和載波精度沒有參考意義,它們被GPS接收機接收,精度就會極差。因此,GPS很難覆蓋到室內區域,要做到室內高精度定位,就必須藉助其他高科技手段,例如:基於LED定位、基於紅外線定位、基於超寬頻定位、基於藍芽/Wi-Fi定位、基於超聲波定位等。


>>>>幾何定位演算法

在介紹那些“高科技”的定位裝置和手段之前,為了便於大家理解,首先給大家介紹一下相對來說比較“簡單”易懂的定位方法-幾何求解定位法,目前這種方法已經被廣泛用於那些“高科技”定位裝置中,所不同的只是他們所依賴的裝置和“訊號波”不同而已。

幾何求解定位法,就是通過空間中各個線段測量,利用空間幾何關係及公理,求解定位點在空間中的位置。在具體的定位系統中,我們通過測量裝置得到準確的觀察量:例如,訊號到達時間(TOA)、訊號到達時間差(TDOA)、訊號到達角度(AOA)、接收訊號強度(RSSI)等,然後通過演算得到線段長度或者角度測量,進而利用空間幾何知識求解定位。

下面,我們展開介紹這幾種定位求解方法。

基於TOA定位方法

TOA也被稱為圓周定位技術,實際定位過程中通過裝置發射電磁波測量得到當前定位點到三個標定點的時間:t1、t2、t3。根據電磁波的傳播速度是光速的知識,很容易得到三邊距離r1,r2,r3。利用平面幾何的兩點距離公式,我們構建方程組,求解出定位位置。


仔細看一下上圖,大家都會發現,定位過程中需要對兩個時間點進行測量,就是開始時間t0和到達時間t1,t2,t3,這四個時間變數直接影響測量距離。由此可見,TOA演算法對系統的時間同步要求很高,因為即使有很小的時間誤差,但是乘以光速,誤差就會被放大很多倍。因此,如何保持各裝置間的時鐘高精度同步問題,是很多專業定位裝置包括GPS系統中需要解決的重要問題。

基於TDOA定位方法

TDOA也被稱為雙曲線定位技術,其所依賴的幾何知識是,如果測定待定位點到周圍兩個標定點的傳播距離差,則待定位點肯定在以這兩個標定點為焦點,點到兩個焦點的距離差值為傳播距離差的雙曲線上。


TDOA演算法示意圖

如上圖,ri1為距離差值,通過對其計算公式化簡,很容易將公式中t0消除,避免了對t0的測量誤差引入,這樣定位系統只要保證同時傳送測量訊號,然後精確測量到達時間差即可,減少了時間測量誤差影響。TDOA技術常用的演算法有Fang演算法、Chan演算法、Taylor級數展開演算法。若大家對這些演算法感興趣,可以通過維基百科進一步瞭解。

基於AOA定位方法

TOA也被稱為方位角定位技術。根據平面幾何知識,兩條射線平行或相交於一點,通過裝置測量待定位點到兩個標定點間的入射角,很容易確定待定位點的位置。


AOA演算法示意圖

如上圖,通過變化公式,很容易消除變數r,直接求解二元一次方程,很容易得到待定位點位置。

相比TOA、TDOA等,AOA機制不需要時間同步,實現同維度的定位任務所需要的參考節點數量最少,例如二維平面定位只需要兩個基站。但該方法必須有方向性較強的天線陣列支援。

基於RSSI定位方法

RSSI為訊號強度,基於訊號強度進行定位。根據物理知識,我們能夠知道一些訊號在自由空間傳播遵循固定的衰減模型,通過該模型我們能夠給出訊號強度與距離遠近的準確關係。如下圖。


其中,pd為待定位點接收到的訊號強度。p0為距離輻射源d0處的訊號強度。n 為訊號衰減係數。


如上圖,是按照訊號衰減模型繪製出來的曲線,我們可以看出隨著距離的增加,訊號強度逐漸變弱,且這種變化程度逐漸變緩。

定位過程中,通過裝置測量三個不同參考點的訊號強度,依據模型計算出三個距離值,那麼採用和TOA類似的幾何求解方法,即可以得到定位點。一般的射頻晶片都具有RSSI測量功能,故RSSI機制實施簡便,但易受通道和噪聲影響,在遠距離定位時測量誤差較大,多用於小範圍定位。

>>>>

基於專業裝置的定位系統

通過上節給大家介紹一些簡單易懂的幾何定位演算法,大家可以隱約體會到,通過那些幾何知識,我們可以利用很多物理訊號來實現高精度定位。事實上,無論是研究機構,還是工業界,都已經對很多訊號、裝置做過研究實驗。接下來,我給大家做一個彙總,按照訊號的物理屬性,可以大致分為兩類:電磁波、超聲波。

  • 電磁波,概念非常寬泛,包含很多種類,按照頻率從低到高的順序排列為:無線電波->紅外線(不可見)->可見光(赤橙黃綠青藍紫)->紫外線(不可見),其頻率範圍大致在3Hz到3000GHz之間。常見的定位方法有:超寬頻定位、Wi-Fi定位、藍芽定位、ZigBee定位,紅外線定位,LED定位等。

  • 超聲波是一種機械波,區別與電磁波,它依賴於物體機械振動進行能量傳輸的,其振動頻率大於20000Hz,超出了人耳聽覺的上限故被稱為超聲波,遵循反射、折射、衍射、散射等傳播規律,與可見聲波的規律沒有本質上的區別。常見定位方法有:超聲波定位。

下面從精確度、成本、是否需要專業裝置、技術優勢和技術缺陷等,穿透性,抗干擾性,佈局複雜程度,成本5個方面全方位來比較一下這幾種室內定位手段。

方法

精度

成本

裝置依賴

技術優勢

技術缺陷

超寬頻

6~10CM

UWB接收器+標籤

穿透力強、功耗低、抗多徑效果好,安全操作性高

造價高

藍芽

10CM

藍芽裝置+手機

體積小

傳輸收視距影響、穩定性稍差、受噪聲訊號干擾大

Wi-Fi

5~20M

無線路由器+手機

普及度高,精度較低

易受干擾

Zigbee

2M

Zigbee各類節點

低功耗、低成本

受多徑效應、移動等影響顯著

紅外線

5~30M

紅外接+發裝置

精度一般

易受牆體等阻隔,傳輸距離短

LED

1M內

LED燈具等+手機

抗干擾性強、成本一般

新技術、國外推廣階段

超聲波

10CM

測距器+標籤

功耗小、精度一般、抗干擾性強

多徑效應、非視距傳播影響大

下面我們簡單對上述表中各種方法進行補充說明和介紹。

超寬頻定位,是一種基於極窄脈衝無載波的無線技術,傳輸速率高,發射功率較低,穿透能力較強,用來做室內定位能夠獲取極為準確的結果。利用超寬頻定位需要事先佈置好的已知位置的錨節點和橋節點。定位過程中,已有節點與新加入的盲節點進行通訊,利用TDOA技術來測距定位。該方案總體上看,功耗較高,部署成本比較高,精度較高。

藍芽定位,無線電波的一種,定位系統需要在室內安裝的若干個藍芽裝置。定位時,通過手機等裝置測量當前位置點掃描到各個藍芽的訊號強度,由訊號衰減模型換算成距離,然後利用三邊測量等方法推算定位座標。總體來看,該方案實施成本中等偏高,低功耗,對複雜空間環境,穩定性稍差,受噪聲訊號干擾大。

Wi-Fi定位,無線電波的一種,此類定位系統也需要在室內安裝的若干個wifi裝置。定位時,利用手機等裝置對至少3個以上的無線網路接入點的訊號強度測量,通過三角定位、指紋等方法進行位置定位。Wi-Fi定位可以在廣泛的應用領域內實現複雜的大範圍定位、檢測和追蹤任務,總精度比較高,但用於室內定位的精度只能達到2~6米。

Zigbee,無線電波的一種,是一種新興的高可靠、短距離、低速率無線網路技術,類似於CDMA和GSM網路,資料以接力的方式通過一個節點傳到另一個節點。此類定位系統主要包括兩類節點,一類是錨節點,一般通過GPS定位或者人工部署的方式知道自身的精確位置。另一類是跟蹤節點,跟蹤節點通過準確測量其到數個錨節點的距離或方位,然後使用三邊測量等方法來計算節點位置。該類訊號傳輸受多徑效應和移動的影響很大,定位精度取決於通道物理品質、訊號源密度、環境和演算法的準確性,因此造成定位軟體的成本較高,提高空間還很大。

紅外線,一種不可見光。利用其進行室內定位有兩種,第一種是被定位目標使用紅外線IR標識作為移動點,發射調製的紅外射線,通過安裝在室內的光學感測器接收進行定位;第二種是通過多對發射器和接收器交織的紅外線網來覆蓋待測空間,直接對運動目標進行定位。紅外線的技術已經非常成熟,用於室內定位精度相對較高,但是紅外線只能視距傳播,穿透性極差,當標識被遮擋時就無法正常工作,也極易受燈光、煙霧等環境因素影響。另該類系統部署比較複雜,成本較高。

Li-Fi屬於可見光通訊,將需要傳輸的資訊編譯成一段調製訊號,用脈寬調製的方法附加到LED燈具的驅動電流上,利用室內無處不在的光源作為發射再提,當用戶進入燈具照明區域,利用智慧手機的前置攝像頭接收並識別光訊號,解析出燈具傳送的唯一身份識別資訊。利用所獲取的身份識別資訊在地圖資料庫中確定對應的位置資訊,完成定位。

超聲波定位,一種基於機械波的定位方法,定位系統中包含主測距器、若干個電子標籤等。各個電子標籤需要固定設定在室內空間,定位時,上位機發送相同頻率的訊號給各個電子標籤,待電子標籤接收到後將訊號反射傳輸給主測距器,主測距器根據幾何關係計算得到定位座標。該方法可以實現釐米級別定位,結構相對簡單。另外,超聲波會收到傳播損耗衰減影響、加上反射測距時受多經效應和非視距傳播影響很大,造成需要精確分析計算的底層硬體設施投資,成本非常高。

>>>>

Wi-Fi的另一用途——室內定位

ok,終於講到本片文章的核心部分。雖說可以通過那些”高科技”裝置做到高精度的定位,要給全國所有商場部署特殊硬體,其成本之大是難以接受的。從定位使用者角度來看,大家不可能隨時隨地攜帶那些各種標籤、發射器、裝置,那麼百度是如何切入做室內定位呢?

答案就是Wi-Fi。近年來,中國公眾對WiFi網路建設與發展的關注和熱情可以用如火如荼來形容,全國大部分商場、公共交通樞紐等場所都已經密集部署了Wi-Fi裝置,有了這些Wi-Fi裝置,我們就可以構建室內高精度定位。

那麼基於商場中已經部署好的Wi-Fi裝置,到底如何構建呢?接下來,我們來看看Wi-Fi定位的技術原理。我們將定位過程進行抽象,變成一個數學問題,即位置函式求解: (x,y) = F(ap1,ap2,ap3….apN)。函式F的輸入資料是一系列的掃描到的Wi-Fi的訊號強度,輸出是定位座標。我們知道如果存在函式F能夠滿足以上關係,也就是說輸入和輸出之間就滿足一定函式關係,也可以視之為相關性。雖然我們不能夠馬上得到函式F,但可以通過感性分析和理解,訊號與位置之間有沒有相關性?我們看以下分析:

  • 離無線裝置越遠,訊號越弱。

  • 不同位置掃描到不同的Wi-Fi、藍芽等訊號。

  • 裝置固定、各處訊號強度相對穩定。

通過以上三個因素,可以看出訊號與位置之間確實存在較強相關性,利用這種相關性,可以構建出一套由無線電訊號到XY對映的技術。

結合前半部分講的幾何求解法,我們很容易能夠想到,當空間有三個真實的位置AP([x1,y1],[x2,y2],[x3,y3]),通過手機測量Wi-Fi的訊號強度,按照訊號衰減模型,將訊號強度換算成測量距離,利用幾何求解法得到定位點。


三角定位示意圖

總體上來看,這種方法的優點是模型簡單,容易實現。如果實際系統使用這個簡單的定位模型來做定位,會存在很多問題。首先我們需要一一標註所有AP的準確位置,其會帶來不小的工作量。其次,該模型對AP訊號輻射分佈刻畫不足,精度不高。

真實的Wi-Fi訊號是怎樣的呢?Wi-Fi訊號作為一種電磁波,在空間中傳播也會有散射、衰減、損耗、折射等現象。下圖來自於某篇論文模擬圖片。左圖是完全按照訊號衰減模型繪製的訊號在空間中分佈情況。右圖是通過對現場進行多點多次取樣而繪製出來的訊號強度真實分佈情況。顯而易見,此種分佈肯定不符合衰減模型。


另外,通過實驗,我們也發現:因為手機不同的製造工藝,不同的晶片,不同的機殼材質,會導致無線電訊號RSSI感知的差異,呈現出非線性的規律。(如下圖)


不同手機RSSI測量差異示意圖(本圖來自於網際網路)

上圖不同顏色代表不同的手機模型,可以看出這些手機在相同時間地點所測量出來的rssi差異還是挺大的。對於手機感知差異問題,一般業界比較推崇的做法是要對rssi進行校正。通過一些參考場景逐步迭代式優化校正引數,直至收斂穩定。

>>>>

基於Wi-Fi的室內定位算法系列介紹

下來我們著重介紹一些Wi-Fi相對複雜和靠譜的定位方法。之後也會順便介紹百度目前在用的一種低成本長期有效的定位方法-地磁定位。

真實模型的逼近-指紋法

既然我們很難得到每個Wi-Fi在空間中的訊號真實分佈模型,那麼我們可以直接對空間中各個點的進行各種訊號的資料採集。用取樣資料代表AP複雜模型。


某商場指紋採集識別圖

定位過程中,手機發送當前掃描到的Wi-Fi Query指紋,伺服器端直接計算庫中與之相似的指紋,按照權重進行加權中心點計算,從機器學習角度來看,該方法實質是KNN。


KNN計算示意圖

如上圖是KNN計算示意圖,一般來講,KNN適用於分類問題,在定位問題上,我們將Top K個指紋直接進行加權計算而不是統計分類。整體上看,該方法實現簡單,精度尚可,但是要將所有資料和樣本進行比對計算,消耗儲存空間,計算量非常大。

區域性模型+指紋法

在實際採集作業過程中,我們很難將商場所有空間區域都進行密集採集,總會有一些採集不充分,指紋比較稀疏,那麼怎麼辦呢?在此,我們可以藉助區域性模型來生成虛擬指紋。


指紋採集稀疏區域示意圖

指紋生成階段:針對比較稀疏區域,選擇周圍範圍內一定數量的採集指紋,儘量讓指紋覆蓋到四周分佈。訓練該區域中每個AP的輻射模型和被掃描到概率等特徵,針對稀疏區域反向推算出每個AP對該空間點的輻射訊號強度,最終合併成為虛擬指紋。定位時可以使用採集指紋和虛擬指紋混合的方式提供定位。

該方法主要用來彌補或者增強採集不充分割槽域的定位效果,訓練過程相對複雜,定位精度逼近於指紋法,具備一定的魯棒性。

位置迴歸分析法

通過之前分析,某點掃描到AP集合與當前點位置(x,y)形成了一個對映關係,我們求解定位位置,其實就是在做位置的迴歸分析問題。迴歸的目標就是得到x和y。相信瞭解機器學習的同學對接下來做的事情就很熟悉了。首先我們將掃描到AP集合作為特徵向量,訓練對x,y的迴歸模型。該模型相當於得到那個非常複雜的訊號在實際空間輻射分佈模型,所以很難用單一公式表達,但是通過迴歸分析模型的訓練,我們得到其複雜模型。如下示意圖,整個模型是由很多複雜樹構成。


位置迴歸分析模型示意圖

定位過程中,我們同樣將Wi-Fi Query上傳到伺服器上,伺服器將其轉化為特徵向量,然後由迴歸模型來進行定位位置預測。整體上來講,該方法實現比較簡單,但模型訓練複雜,需要調參,有一定難度,精度可以逼近指紋法。

地磁定位法

地磁訊號來源於地球本身,因為地心引力,地磁場本身存在。鋼筋結構和地板等物體都會對地磁產生影響。地磁強度由於建築結構不發生變化,基本上還是比較穩定的。如下圖是某個商場內部地磁場強分佈示意圖。


某商場地磁場強分佈示意圖

一般情況下,在一段時間內磁場強度變化本身就是一種指紋。例如我們從走廊東頭走到走廊西頭的整個過程中,地磁場強變化就很明顯,如下圖,曲線上下變化本身就是一種指紋。


某段地磁場強變化示意圖(本圖來自於網際網路)

定位過程中,通過計算定位地磁序列指紋與指紋庫中的子序列相似度來得到最佳匹配位置。這是一個模糊子序列查詢問題,一般來說,商場地磁指紋數量比較多,導致實時搜尋空間巨大,因此會利用空間索引技術+粒子濾波提高匹配效能。總的來說,地磁定位法的特點是實現相對複雜,需要做地磁校正,但是精度效果優秀。

>>>>

寫在最後

通過上述各章節介紹,相信大家對室內定位已經有了大體瞭解。室內定位是垂直專業方向,除了需要訊號處理相關專業知識,還需要對機器學習有一個很深入的瞭解。因此,真正要做好,需要很長時間的技術積