本發(fā)明涉及位置服務(wù)技術(shù)領(lǐng)域,尤其涉及的是一種Wi-Fi位置指紋地圖自動構(gòu)建方法及系統(tǒng)。
背景技術(shù):
Wi-Fi位置指紋法是一種常用的室內(nèi)定位方法,這種方法可以利用現(xiàn)有的無線局域網(wǎng)基礎(chǔ)設(shè)施,且通過智能手機即可實現(xiàn)定位,無需用戶增加額外設(shè)備,因此其應(yīng)用最為廣泛。
現(xiàn)有的Wi-Fi位置指紋法包括離線指紋采集及在線定位兩步。離線指紋采集的目的在于構(gòu)建室內(nèi)區(qū)域的Wi-Fi位置指紋數(shù)據(jù)庫。在離線采集階段,需要在每個采集點采集一段時間的數(shù)據(jù),以提高位置指紋數(shù)據(jù)庫的質(zhì)量。而在線定位階段,通過用戶實時獲取的Wi-Fi信號強度信息,利用定位算法將其與Wi-Fi位置指紋數(shù)據(jù)庫中的信息進行匹配比較,從而估計用戶的位置。
由上述Wi-Fi位置指紋定位的原理可知,Wi-Fi位置指紋數(shù)據(jù)庫的構(gòu)建準確與否非常重要。離線采集階段需要大量的采集點樣本,數(shù)據(jù)采集的工作量較大,特別是對于大范圍的室內(nèi)區(qū)域,位置指紋樣本的采集工作需要耗費大量的人力物力,嚴重的限制了Wi-Fi位置指紋法的大規(guī)模普及和應(yīng)用。
目前的Wi-Fi位置指紋自動構(gòu)建及更新方法,使用行為地圖匹配,通過眾包軌跡數(shù)據(jù)自動構(gòu)建Wi-Fi位置指紋地圖。然而,這種方法只能得到地圖約束較好區(qū)域的位置指紋,對于開闊區(qū)域,由于智能手機的行人航位推算方法精度較差,無法獲取采集位置指紋時刻的位置標簽,因此,該種方法的應(yīng)用受到了很大的限制。
因此,現(xiàn)有技術(shù)還有待于改進和發(fā)展。
技術(shù)實現(xiàn)要素:
鑒于上述現(xiàn)有技術(shù)的不足,本發(fā)明的目的在于提供一種Wi-Fi位置指紋地圖自動構(gòu)建方法及系統(tǒng),旨在解決現(xiàn)有技術(shù)中只能得到地圖約束較好區(qū)域的位置指紋,對于開闊區(qū)域,由于智能手機的行人航位推算方法精度較差,無法獲取采集位置指紋時刻的位置標簽的問題。
本發(fā)明的技術(shù)方案如下:
一種Wi-Fi位置指紋地圖自動構(gòu)建方法,其中,所述方法包括以下步驟:
A、獲取眾包數(shù)據(jù),使用行人航位推算方法、及機器學習方法構(gòu)建Wi-Fi位置指紋地圖,并根據(jù)室內(nèi)地圖篩選得到帶有位置標簽的Wi-Fi強度信息;
B、將帶有位置標簽的Wi-Fi強度信息作為高斯過程的訓練樣本,得到信號強度和位置信息的函數(shù)關(guān)系,求解高斯過程中的超參數(shù),并根據(jù)超參數(shù)預測得到室內(nèi)地圖約束較差區(qū)域的Wi-Fi強度信息;其中,當室內(nèi)地圖障礙物之間距離大于預設(shè)的距離閾值、或者室內(nèi)地圖墻壁與障礙物之間的距離大于預設(shè)的距離閾值時,則該區(qū)域為室內(nèi)地圖約束較差區(qū)域。
所述Wi-Fi位置指紋地圖自動構(gòu)建方法,其中,所述步驟A具體包括:
A1、獲取相關(guān)的眾包數(shù)據(jù);
A2、基于所述眾包數(shù)據(jù),使用行人航位推算方法計算獲得用戶的相對運動軌跡;
A3、通過機器學習方法識別包括若干種行為類型的用戶的特定行為;
A4、構(gòu)建相對運動軌跡中的特定行為的類型以及特定行為之間的相對空間關(guān)系形成的行為序列模型;
A5、生成室內(nèi)地圖的點線模型,其中,所述點為發(fā)生所述特定行為的位置,線為連接點的邊;
A6、通過隱馬爾科夫模型,匹配所述點線模型與行為序列模型從而獲得相對運動軌跡的室內(nèi)地圖坐標信息;
A7、基于所述室內(nèi)位置坐標信息及眾包數(shù)據(jù),構(gòu)建地圖約束較好區(qū)域的Wi-Fi位置指紋地圖;其中,當室內(nèi)地圖障礙物之間距離小于或等于所述距離閾值、或者室內(nèi)地圖墻壁與障礙物之間的距離小于或等于所述距離閾值時,則該區(qū)域為室內(nèi)地圖約束較好區(qū)域;
A8、根據(jù)室內(nèi)地圖篩選得到帶有位置標簽的Wi-Fi強度信息,并作為樣本。
所述Wi-Fi位置指紋地圖自動構(gòu)建方法,其中,所述步驟B具體包括:
B1、將樣本中所包括的樣本點記為{p1,...,pi,...pn},樣本點的Wi-Fi信號強度記為f,且根據(jù)高斯過程對樣本點的Wi-Fi信號強度和位置信息建模,得到Wi-Fi信號強度和位置信息建模的函數(shù)關(guān)系;其中,將函數(shù)關(guān)系記為f,則f的分布為:
其中,m(·)為高斯過程的均值函數(shù),k(·,·)為高斯過程的協(xié)方差函數(shù);
B2、根據(jù)信號傳播模型,對Wi-Fi信號強度和距離之間的關(guān)系進行建模,得到接收信號的強度f(pi)=γ-10αlog10(||pi-ps||)+Ψ(pi,ps);其中,γ為常數(shù),α為信號路徑衰減系數(shù),Ψ(pi,ps)是描述Wi-Fi接入點位置ps和Wi-Fi接入點位置pi之間的信號衰減的位置相關(guān)的參數(shù);
B3、根據(jù)訓練樣本Sj={(p1,f(p1)),(p2,f(p2)),...,(pn,f(pn))},及包含了訓練樣本的二維坐標得到包含了訓練樣本中的Wi-Fi信號強度且包含了訓練樣本中的Wi-Fi信號強度中的fj服從多維聯(lián)合高斯分并記為其中,C為n×n的矩陣,每個元素當i=j(luò)時δij=1,其他情況時δij=0;dc是相關(guān)距離,為衰減方差,ε為測量噪聲;
B4、將需要預測的位置p*處的信號強度表示為并將y和f組成一個(n+1)×1列的多維高斯變量[f;y]:由高斯隨機變量的條件分布得到其中1≤i≤n,為Wi-Fi位置指紋地圖未帶有位置標簽的Wi-Fi強度均值,為Wi-Fi位置指紋地圖未帶有位置標簽的Wi-Fi強度方差。
所述Wi-Fi位置指紋地圖自動構(gòu)建方法,其中,所述眾包數(shù)據(jù)包括:眾包用戶的加速度數(shù)據(jù)、陀螺儀數(shù)據(jù)、磁力計數(shù)據(jù)、氣壓計數(shù)據(jù)以及Wi-Fi數(shù)據(jù)。
所述Wi-Fi位置指紋地圖自動構(gòu)建方法,其中,所述行人航位推算方法具體包括:
基于所述加速度數(shù)據(jù),通過峰值檢測算法計算獲得用戶的行進步數(shù);
通過步頻步長模型,估算用戶的行走步長;
依據(jù)磁力計數(shù)據(jù)獲得用戶的前進方向;
依據(jù)所述行進步數(shù)及行走步長,計算獲得前進距離;并且依據(jù)所述前進距離及前進方向,生成用戶的相對運動軌跡。
所述Wi-Fi位置指紋地圖自動構(gòu)建方法,其中,所述機器學習方法具體包括:
采集包含若干特定行為的樣本時序數(shù)據(jù);
通過預定長度的滑動窗口分割所述樣本時序數(shù)據(jù)從而獲得特定行為樣本;
提取所述特定行為樣本的特征;
基于所述特定行為樣本的特征,訓練用于對特定行為進行分類的分類器;
使用相同的滑動窗口對所述眾包數(shù)據(jù)進行分割,并且使用訓練完成的分類器進行分類,生成所述眾包數(shù)據(jù)的特定行為的類型。
一種Wi-Fi位置指紋地圖自動構(gòu)建系統(tǒng),其中,包括:
訓練樣本獲取模塊,用于獲取眾包數(shù)據(jù),使用行人航位推算方法、及機器學習方法構(gòu)建Wi-Fi位置指紋地圖,并根據(jù)室內(nèi)地圖篩選得到帶有位置標簽的Wi-Fi強度信息;
預測模塊,用于將帶有位置標簽的Wi-Fi強度信息作為高斯過程的訓練樣本,得到信號強度和位置信息的函數(shù)關(guān)系,求解高斯過程中的超參數(shù),并根據(jù)超參數(shù)預測得到室內(nèi)地圖約束較差區(qū)域的Wi-Fi強度信息;其中,當室內(nèi)地圖障礙物之間距離大于預設(shè)的距離閾值、或者室內(nèi)地圖墻壁與障礙物之間的距離大于預設(shè)的距離閾值時,則該區(qū)域為室內(nèi)地圖約束較差區(qū)域。
所述Wi-Fi位置指紋地圖自動構(gòu)建系統(tǒng),其中,所述訓練樣本獲取模塊具體包括:
數(shù)據(jù)獲取單元,用于獲取相關(guān)的眾包數(shù)據(jù);
相對運動軌跡生成單元,用于基于所述眾包數(shù)據(jù),使用行人航位推算方法計算獲得用戶的相對運動軌跡;
特定行為識別單元,用于通過機器學習方法識別包括若干種行為類型的用戶的特定行為;
行為序列生成單元,用于構(gòu)建相對運動軌跡中的特定行為的類型以及特定行為之間的相對空間關(guān)系形成的行為序列模型;
點線模型生成單元,用于生成室內(nèi)地圖的點線模型,其中,所述點為發(fā)生所述特定行為的位置,線為連接點的邊;
匹配單元,用于通過隱馬爾科夫模型,匹配所述點線模型與行為序列模型從而獲得相對運動軌跡的室內(nèi)地圖坐標信息;
指紋地圖生成單元,用于基于所述室內(nèi)位置坐標信息及眾包數(shù)據(jù),構(gòu)建地圖約束較好區(qū)域的Wi-Fi位置指紋地圖;其中,當室內(nèi)地圖障礙物之間距離小于或等于所述距離閾值、或者室內(nèi)地圖墻壁與障礙物之間的距離小于或等于所述距離閾值時,則該區(qū)域為室內(nèi)地圖約束較好區(qū)域;
樣本獲取單元,用于根據(jù)室內(nèi)地圖篩選得到帶有位置標簽的Wi-Fi強度信息,并作為樣本。
所述Wi-Fi位置指紋地圖自動構(gòu)建系統(tǒng),其中,所述預測模塊具體包括:
函數(shù)關(guān)系獲取單元,用于將樣本中所包括的樣本點記為{p1,...,pi,...pn},樣本點的Wi-Fi信號強度記為f,且根據(jù)高斯過程對樣本點的Wi-Fi信號強度和位置信息建模,得到Wi-Fi信號強度和位置信息建模的函數(shù)關(guān)系;其中,將函數(shù)關(guān)系記為f,則f的分布為:
其中,m(·)為高斯過程的均值函數(shù),k(·,·)為高斯過程的協(xié)方差函數(shù);
樣本點信號強度獲取單元,用于根據(jù)信號傳播模型,對Wi-Fi信號強度和距離之間的關(guān)系進行建模,得到接收信號的強度f(pi)=γ-10αlog10(||pi-ps||)+Ψ(pi,ps);其中,γ為常數(shù),α為信號路徑衰減系數(shù),Ψ(pi,ps)是描述Wi-Fi接入點位置ps和Wi-Fi接入點位置pi之間的信號衰減的位置相關(guān)的參數(shù);
訓練單元,用于根據(jù)訓練樣本Sj={(p1,f(p1)),(p2,f(p2)),...,(pn,f(pn))},及包含了訓練樣本的二維坐標得到包含了訓練樣本中的Wi-Fi信號強度且包含了訓練樣本中的Wi-Fi信號強度中的fj服從多維聯(lián)合高斯分并記為其中,C為n×n的矩陣,每個元素當i=j(luò)時δij=1,其他情況時δij=0;dc是相關(guān)距離,為衰減方差,ε為測量噪聲;
均值及方差獲取單元,用于將需要預測的位置p*處的信號強度表示為并將y和f組成一個(n+1)×1列的多維高斯變量[f;y]:由高斯隨機變量的條件分布得到其中1≤i≤n,為Wi-Fi位置指紋地圖未帶有位置標簽的Wi-Fi強度均值,為Wi-Fi位置指紋地圖未帶有位置標簽的Wi-Fi強度方差。
所述Wi-Fi位置指紋地圖自動構(gòu)建系統(tǒng),其中,所述眾包數(shù)據(jù)包括:眾包用戶的加速度數(shù)據(jù)、陀螺儀數(shù)據(jù)、磁力計數(shù)據(jù)、氣壓計數(shù)據(jù)以及Wi-Fi數(shù)據(jù)。
本發(fā)明所提供的Wi-Fi位置指紋地圖自動構(gòu)建方法及系統(tǒng),方法包括:獲取眾包數(shù)據(jù),使用行人航位推算方法、及機器學習方法構(gòu)建Wi-Fi位置指紋地圖,并根據(jù)室內(nèi)地圖篩選得到帶有位置標簽的Wi-Fi強度信息;將帶有位置標簽的Wi-Fi強度信息作為高斯過程的訓練樣本,得到信號強度和位置信息的函數(shù)關(guān)系,求解高斯過程中的超參數(shù),并根據(jù)超參數(shù)預測得到室內(nèi)地圖約束較差區(qū)域的Wi-Fi強度信息。本發(fā)明采用高斯過程回歸,基于地圖約束較好區(qū)域的Wi-Fi位置指紋信息,預測開闊區(qū)域的Wi-Fi位置指紋,從而實現(xiàn)整個室內(nèi)區(qū)域的Wi-Fi位置指紋地圖自動構(gòu)建。
附圖說明
圖1為本發(fā)明所述Wi-Fi位置指紋地圖自動構(gòu)建方法較佳實施例的流程圖。
圖2為本發(fā)明所述Wi-Fi位置指紋地圖自動構(gòu)建方法中室內(nèi)區(qū)域的示意圖。
圖3為本發(fā)明所述Wi-Fi位置指紋地圖自動構(gòu)建系統(tǒng)較佳實施例的功能結(jié)構(gòu)框圖。
具體實施方式
本發(fā)明提供一種Wi-Fi位置指紋地圖自動構(gòu)建方法及系統(tǒng),為使本發(fā)明的目的、技術(shù)方案及效果更加清楚、明確,以下對本發(fā)明進一步詳細說明。應(yīng)當理解,此處所描述的具體實施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。
如圖1所示,為本發(fā)明所述Wi-Fi位置指紋地圖自動構(gòu)建方法較佳實施例的流程圖,所述方法包括以下步驟:
步驟S100、獲取眾包數(shù)據(jù),使用行人航位推算方法、及機器學習方法構(gòu)建Wi-Fi位置指紋地圖,并根據(jù)室內(nèi)地圖篩選得到帶有位置標簽的Wi-Fi強度信息;
步驟S200、將帶有位置標簽的Wi-Fi強度信息作為高斯過程的訓練樣本,得到信號強度和位置信息的函數(shù)關(guān)系,求解高斯過程中的超參數(shù),并根據(jù)超參數(shù)預測得到室內(nèi)地圖約束較差區(qū)域的Wi-Fi強度信息;其中,當室內(nèi)地圖障礙物之間距離大于預設(shè)的距離閾值、或者室內(nèi)地圖墻壁與障礙物之間的距離大于預設(shè)的距離閾值時,則該區(qū)域為室內(nèi)地圖約束較差區(qū)域。
采用現(xiàn)有的Wi-Fi位置指紋地圖構(gòu)建方法,可以得到地圖約束區(qū)域較好的Wi-Fi位置指紋信息,即每個坐標對應(yīng)的Wi-Fi信號強度??梢缘玫綀D2種細長的走廊區(qū)域(位于圖2中天井的周圍)的位置指紋,而對于開闊區(qū)域(如圖2中的長方塊區(qū)域),由于地圖約束較差,無法使用一維的電線模型描述整個區(qū)域,因此,無法得到該區(qū)域的位置指紋強度。在步驟S200中,預設(shè)的距離閾值的最佳值為2m,且距離閾值可調(diào)整大小,并跟室內(nèi)地圖的精度相關(guān)。
本發(fā)明的實施例中,首先通過地圖約束較好區(qū)域得到的Wi-Fi位置指紋地圖作為訓練樣本,得到高斯過程回歸模型的超參數(shù),在此基礎(chǔ)上,預測開闊區(qū)域的Wi-Fi位置指紋。
優(yōu)選的,所述步驟S100具體包括:
步驟S101、獲取相關(guān)的眾包數(shù)據(jù)。
所述眾包數(shù)據(jù)是指從若干眾包用戶的終端上獲取的多種不同類型的傳感器數(shù)據(jù)。眾包是指一種非選擇指向的模式,亦即包含有各種不同類型、各種范圍的用戶。
所述用戶的終端可以是任何合適的,至少具有一個傳感器的終端設(shè)備,例如智能手機、智能手表、各種可穿戴設(shè)備等等。
具體的,所述眾包數(shù)據(jù)包括:眾包用戶的加速度數(shù)據(jù)、陀螺儀數(shù)據(jù)、磁力計數(shù)據(jù)、氣壓計數(shù)據(jù)以及Wi-Fi數(shù)據(jù)。其中Wi-Fi數(shù)據(jù)可以包括MAC地址、SSID、強度RSSI。
步驟S102、基于所述眾包數(shù)據(jù),使用行人航位推算方法計算獲得用戶的相對運動軌跡。
具體的,所述行人航位推算方法具體包括:
基于所述加速度數(shù)據(jù),通過峰值檢測算法計算獲得用戶的行進步數(shù);
通過步頻步長模型,估算用戶的行走步長;
依據(jù)磁力計數(shù)據(jù)獲得用戶的前進方向;
依據(jù)所述行進步數(shù)及行走步長,計算獲得前進距離;并且依據(jù)所述前進距離及前進方向,生成用戶的相對運動軌跡。
所述步頻步長模型具體可以由如下算式所定義:
sl=a·f+b
其中,sl為步長,f為步頻,a和b為常數(shù)參數(shù)。
依據(jù)所述行進步數(shù)及行走步長,將兩者相乘即可計算獲得前進距離。最后,依據(jù)所述前進距離及前進方向,生成用戶的相對運動軌跡(S24)。
所述相對運動軌跡可以由xy坐標軸上對應(yīng)的坐標來表示。具體可以通過如下公式計算:
其中,xt和yt分別為t時刻用戶的位置,xt-1和yt-1分別為t-1時刻用戶的位置,Δd為前進距離,為前進方向。
步驟S103、通過機器學習方法識別包括若干種行為類型的用戶的特定行為。
所述特定行為具體是指用戶(行人)在室內(nèi)特殊位置的行為(亦即除正常行走外的一些行為類型),例如,行人在轉(zhuǎn)角處的轉(zhuǎn)彎行為,行人在乘電梯時發(fā)生的超重和失重行為等。
通過眾包數(shù)據(jù)(例如加速度計、陀螺儀、磁力計和氣壓計數(shù)據(jù)),可以使用合適的機器學習方法識別出上述不同的行為類型。
所述機器學習方法具體包括:
采集包含若干特定行為的樣本時序數(shù)據(jù);
通過預定長度的滑動窗口分割所述樣本時序數(shù)據(jù)從而獲得特定行為樣本;
提取所述特定行為樣本的特征;
基于所述特定行為樣本的特征,訓練用于對特定行為進行分類的分類器;
使用相同的滑動窗口對所述眾包數(shù)據(jù)進行分割,并且使用訓練完成的分類器進行分類,生成所述眾包數(shù)據(jù)的特定行為的類型。
即首先,采集包含若干特定行為的樣本時序數(shù)據(jù)。一般而言,移動終端(例如智能手機)的傳感器數(shù)據(jù)(亦即眾包數(shù)據(jù))均為時序數(shù)據(jù)。
然后,通過預定長度的滑動窗口分割所述樣本時序數(shù)據(jù)從而獲得每個特定行為樣本。時間窗口可以設(shè)置為2秒。
然后,提取所述特定行為樣本的特征。所使用的特征具體可以依據(jù)實際情況進行選擇并確定。例如基于本發(fā)明具體實施例的眾包數(shù)據(jù)的數(shù)據(jù)類型,可以使用三軸加速度的均值和標準差、三軸角速度的均值和標準差以及氣壓的變化值作為樣本的特征。
其具體計算方法由如下算式表示:
其中和σa為三軸加速度的均值和標準差,和σg為三軸角速度的均值和標準差,Δp為氣壓的變化值,n為行為樣本中傳感器數(shù)據(jù)的個數(shù),np為用戶計算氣壓均值的數(shù)據(jù)個數(shù),為常數(shù)np≤n
然后進入訓練階段:基于所述特定行為樣本的特征,訓練用于對特定行為進行分類的分類器。具體選擇使用的分類器及相對應(yīng)的分類器參數(shù)可以又實際情況所決定。
最后,使用相同的滑動窗口對所述眾包數(shù)據(jù)進行分割并且使用訓練完成的分類器進行分類,生成所述眾包數(shù)據(jù)的特定行為的類型。
步驟S104、構(gòu)建相對運動軌跡中的特定行為的類型以及特定行為之間的相對空間關(guān)系形成的行為序列模型。
將上述步驟得到的相對運動軌跡以及特定行為的識別結(jié)果進行建模,即可獲得包含有特定行為之間的相對空間關(guān)系以及特定行為種類的模型,在此使用“行為序列模型”這一詞語表示這一模型。
步驟S105、生成室內(nèi)地圖的點線模型,其中,所述點為發(fā)生所述特定行為的位置,線為連接點的邊。
所述點線模型可以通過手動方法實現(xiàn),也可以通過自動方法獲得。例如,可以使用voronoi圖方法生成室內(nèi)地圖的點線模型,也可以使用其他合適的自動生成方法獲得符合使用要求的點線模型。
步驟S106、通過隱馬爾科夫模型,匹配所述點線模型與行為序列模型從而獲得相對運動軌跡的室內(nèi)地圖坐標信息。
步驟S106具體包括:
首先,使用隱馬爾可夫模型匹配特定行為發(fā)生位置與所述點線模型的相對應(yīng)的點。
其具體的匹配方法如下:
1、隱狀態(tài):圖結(jié)構(gòu)中的節(jié)點。
2、觀測值:行人航位推算得到的特定行為發(fā)生時刻之間的相對位移。
3、狀態(tài)轉(zhuǎn)移概率:當識別出一個特定行為時,會生成一個隱狀態(tài)之間的的轉(zhuǎn)移概率。通過室內(nèi)地圖的拓撲結(jié)構(gòu),可以得到隱狀態(tài)之間的轉(zhuǎn)移概率矩陣。因為行人(用戶)只能在相鄰的點之間移動,所以可以假設(shè)每個點與它相鄰點的轉(zhuǎn)移概率為均勻分布,由此可以得到整個室內(nèi)地圖的狀態(tài)轉(zhuǎn)移矩陣。例如如圖3所示,為本發(fā)明所述狀態(tài)轉(zhuǎn)移概率計算的示意圖。
4、輸出概率:輸出概率描述每個隱狀態(tài)下觀測值的概率分布。在本發(fā)明所采用的隱馬爾可夫模型中,觀測值為由行人航位推算得到的特定行為之間的相對位移。
根據(jù)行人航位推算的原理,相對位移誤差由距離估計誤差和角度誤差兩部分組成。因此,觀測值概率分布由距離觀測值概率分布和角度觀測值概率分布兩部分組成。由于距離和角度觀測值是相互獨立的,因此觀測值概率分布為:其中,σd是距離測量值的標準差,是角度測量值的標準差。
5、初始概率分布:初始概率分布假設(shè)為均勻分布,當識別出第一個特定行為時,認為此時的位置在每個相應(yīng)節(jié)點的概率相等。
6、維特比算法:維特比算法用于尋找與用戶的相對運動軌跡匹配概率最大的隱狀態(tài)序列,即通過用戶的相對運動軌跡中包含的特定行為以及特定行為之間的相對位移,將用戶相對運動軌跡與點線模型中的點進行匹配,從而實現(xiàn)對相對運動位移中的每一步進行定位。使用數(shù)學模型表示O=(O1,O2,...,OT)為軌跡中包含的特定行為,維特比變量通過下式定義:
其中,δt(i)是時刻t在狀態(tài)i的概率,aij是狀態(tài)i到j(luò)的狀態(tài)轉(zhuǎn)移概率,bj(Ot+1)為狀態(tài)j的觀測值輸出概率。為了得到可能性最大的狀態(tài),ρt+1(j)定義如下:
根據(jù)行為識別得到的軌跡中連續(xù)多個特定行為,通過與點線模型中的若干點匹配,得到軌跡的絕對坐標(室內(nèi)地圖的坐標位置),將與軌跡中特定行為匹配的點稱作“節(jié)點鏈”。使用下式計算每個獲選節(jié)點鏈的概率:
pt+1(j)=pt(i)·aij·bj(Ot+1),1≤t≤T
其中,pt(i)是t時刻候選節(jié)點鏈的概率。當最大候選節(jié)點鏈的概率值與概率值次大的節(jié)點鏈概率值之比大于閾值C時,概率值最大的候選節(jié)點鏈即為匹配的結(jié)果。
然后,依據(jù)行為序列模型中,相鄰特定行為之間的步數(shù)及點線模型中相對應(yīng)的兩個點之間的距離計算獲得每一步在室內(nèi)地圖中對應(yīng)的坐標信息。亦即根據(jù)軌跡中特定行為之間的步數(shù),將軌跡進行插值,根據(jù)室內(nèi)路網(wǎng)中節(jié)點之間的距離,得到每一步的絕對坐標信息。
步驟S107、基于所述室內(nèi)位置坐標信息及眾包數(shù)據(jù),構(gòu)建地圖約束較好區(qū)域的Wi-Fi位置指紋地圖;其中,當室內(nèi)地圖障礙物之間距離小于或等于所述距離閾值、或者室內(nèi)地圖墻壁與障礙物之間的距離小于或等于所述距離閾值時,則該區(qū)域為室內(nèi)地圖約束較好區(qū)域。
步驟S107中具體包括:
首先,將所述室內(nèi)地圖網(wǎng)格化。即使用等間距的縱向及橫向線將室內(nèi)地圖劃分為一個個大小相同的網(wǎng)格。
然后,依據(jù)相對運動軌跡的室內(nèi)地圖坐標信息,選擇與網(wǎng)格中心距離最近的Wi-Fi信息作為網(wǎng)格的第一位置指紋信息。
亦即,對于每一相對運動軌跡,根據(jù)軌跡中用戶每一步的位置信息,選擇與其歐式距離最近的Wi-Fi格網(wǎng)中心坐標,作為該步檢測時刻獲取的Wi-Fi指紋的坐標信息。
對眾包數(shù)據(jù)中的多個相對運動軌跡重復執(zhí)行前述步驟,獲得多個第一位置指紋信息。
最后,將與多個相對運動軌跡相對應(yīng)的網(wǎng)格的多個第一位置指紋信息平均后形成網(wǎng)格的第二位置指紋信息。具體的,所述位置指紋可以是每個AP(即熱點,可根據(jù)MAC地址確認)的信號強度的平均值。
所述眾包數(shù)據(jù)中包含多條相對運動軌跡(與不同的用戶相對)。因此,通過整合上述眾包數(shù)據(jù)及運算得出的絕對位置(即室內(nèi)位置坐標信息)可以構(gòu)建最終的Wi-Fi位置指紋地圖或者指紋地圖數(shù)據(jù)庫。
步驟S108、根據(jù)室內(nèi)地圖篩選得到帶有位置標簽的Wi-Fi強度信息,并作為樣本。
通過篩選(將地圖約束較好,例如走廊區(qū)域的指紋挑選出來),可以得到帶有位置標簽的Wi-Fi強度信息,以此作為樣本。假設(shè)得到n個樣本,表示為:其中(xi,yi)是第i個樣本的坐標信息,是第i個樣本中第j個Wi-Fi接入點的信號強度,1<i<n,1<j<m,n為樣本的數(shù)目,m為樣本中包含的Wi-Fi接入點的數(shù)目。
優(yōu)選的,所述步驟S200具體包括:
步驟S201、將樣本中所包括的樣本點記為{p1,...,pi,...pn},樣本點的Wi-Fi信號強度記為f,且根據(jù)高斯過程對樣本點的Wi-Fi信號強度和位置信息建模,得到Wi-Fi信號強度和位置信息建模的函數(shù)關(guān)系;其中,將函數(shù)關(guān)系記為f,則f的分布為:
其中,m(·)為高斯過程的均值函數(shù),k(·,·)為高斯過程的協(xié)方差函數(shù)。
整個室內(nèi)區(qū)域可以劃分成R個格網(wǎng),其中n個為通過行為地圖匹配得到的樣本,n<R。本方法通過眾包軌跡得到的樣本,預測整個室內(nèi)區(qū)域剩下格網(wǎng)的Wi-Fi信號強度,兩者分別記為:S和A,
假設(shè)整個室內(nèi)區(qū)域有m個Wi-Fi接入點,位置pi處接收到的第j個Wi-Fi接入點的信號強度表示為函數(shù)fj(pi),pi=(xi,yi),(不失一般性,為了簡化公式表示,將之后公式里下標j去掉)該點的信號強度觀測值則為:
y(pi)=f(pi)+ε (1)
其中,ε為測量噪聲,為正態(tài)高斯分布
使用高斯過程對f(pi)進行建模,該高斯過程通過樣本集S進行訓練,通過訓練得到高斯過程回歸的超參數(shù),最后通過訓練出的超參數(shù),對未知區(qū)域的格網(wǎng)信號強度進行預測,以此實現(xiàn)整個室內(nèi)區(qū)域的Wi-Fi位置指紋地圖自動構(gòu)建及更新。
步驟S202、根據(jù)信號傳播模型,對Wi-Fi信號強度和距離之間的關(guān)系進行建模,得到接收信號的強度f(pi)=γ-10αlog10(||pi-ps||)+Ψ(pi,ps);其中,γ為常數(shù),α為信號路徑衰減系數(shù),Ψ(pi,ps)是描述Wi-Fi接入點位置ps和Wi-Fi接入點位置pi之間的信號衰減的位置相關(guān)的參數(shù)。
S=(<p1,rss1>,<p2,rss2>,...,<pn,rssn>)為所述得到的帶有位置標簽的樣本,樣本點為{p1,...,pi,...pn}},這些樣本點的信號強度表示為使用高斯過程對樣本點的信號強度和位置信息進行建模,得到信號強度和位置信息的函數(shù)關(guān)系f,該高斯過程的均值函數(shù)為m(·),協(xié)方差函數(shù)為k(·,·)。則具有如下分布:
通常使用如下形式表示高斯過程:
m(p)=E[f(p)] (4)
k(p,p′)=E[(f(p)-m(p))(f(p′)-m(p′))] (5)
發(fā)明的目的是通過高斯過程預測各個輸入位置坐標點處的信號強度,fj(p*)為位置p*處Wi-Fi接入點j的信號強度。
將fj(pi)建模成高斯過程(公式(3)-(5)):
這里使用開放空間的信號傳播模型(不局限于該信號傳播模型)對Wi-Fi信號強度和距離之間的關(guān)系進行建模,接收信號強度(單位為dB)可以描述為:
f(pi)=γ-10αlog10(||pi-ps||)+Ψ(pi,ps) (7)
其中,γ為常數(shù),α為信號路徑衰減系數(shù),Ψ(pi,ps)為位置相關(guān)的參數(shù),描述了Wi-Fi接入點位置ps和位置pi之間的信號衰減。假設(shè)Ψ(pi,ps)服從正態(tài)分布,即:
其中,為衰減方差。
位置pi和pj的協(xié)方差由下式得到:
其中,dc是相關(guān)距離。
步驟S203、根據(jù)訓練樣本Sj={(p1,f(p1)),(p2,f(p2)),...,(pn,f(pn))},及包含了訓練樣本的二維坐標得到包含了訓練樣本中的Wi-Fi信號強度且包含了訓練樣本中的Wi-Fi信號強度中的fj服從多維聯(lián)合高斯分并記為其中,C為n×n的矩陣,每個元素當i=j(luò)時δij=1,其他情況時δij=0;dc是相關(guān)距離,為衰減方差,ε為測量噪聲。
步驟S204、將需要預測的位置p*處的信號強度表示為并將y和f組成一個(n+1)×1列的多維高斯變量[f;y]:由高斯隨機變量的條件分布得到其中1≤i≤n,為Wi-Fi位置指紋地圖未帶有位置標簽的Wi-Fi強度均值,為Wi-Fi位置指紋地圖未帶有位置標簽的Wi-Fi強度方差。
Sj={(p1,f(p1)),(p2,f(p2)),...,(pn,f(pn))}為訓練樣本,其中f(·)由公式(1)得到,n為訓練樣本的個數(shù)。為n×2的矩陣,包含了訓練樣本的二維坐標。為n維的列向量,包含了訓練樣本中的接收信號強度。
由于公式(1)中的ε為正態(tài)高斯分布,因此fj(pi)為兩個高斯隨機變量的和。因此,噪聲觀測向量fj服從多維聯(lián)合高斯分布:
其中,C為n×n的矩陣,每個元素當i=j(luò)時,δij=1,其他情況,δij=0。
用表示需要預測的位置為p*處的信號強度。y和f組成一個(n+1)×1列的多維高斯變量[f;y]:
其中,
由高斯隨機變量的條件分布可得:
通過公式(12)-(14),采用高斯過程回歸,可以預測沒有采集樣本區(qū)域的信號強度的均值(公式(13))和方差(公式(14))。
基于上述方法實施例,本發(fā)明還提供一種Wi-Fi位置指紋地圖自動構(gòu)建系統(tǒng)。如圖3所示,所述Wi-Fi位置指紋地圖自動構(gòu)建系統(tǒng)包括:
訓練樣本獲取模塊100,用于獲取眾包數(shù)據(jù),使用行人航位推算方法、及機器學習方法構(gòu)建Wi-Fi位置指紋地圖,并根據(jù)室內(nèi)地圖篩選得到帶有位置標簽的Wi-Fi強度信息;
預測模塊200,用于將帶有位置標簽的Wi-Fi強度信息作為高斯過程的訓練樣本,得到信號強度和位置信息的函數(shù)關(guān)系,求解高斯過程中的超參數(shù),并根據(jù)超參數(shù)預測得到室內(nèi)地圖約束較差區(qū)域的Wi-Fi強度信息;其中,當室內(nèi)地圖障礙物之間距離大于預設(shè)的距離閾值、或者室內(nèi)地圖墻壁與障礙物之間的距離大于預設(shè)的距離閾值時,則該區(qū)域為室內(nèi)地圖約束較差區(qū)域。
優(yōu)選的,在所述Wi-Fi位置指紋地圖自動構(gòu)建系統(tǒng)中,所述訓練樣本獲取模塊具體包括:
數(shù)據(jù)獲取單元,用于獲取相關(guān)的眾包數(shù)據(jù);
相對運動軌跡生成單元,用于基于所述眾包數(shù)據(jù),使用行人航位推算方法計算獲得用戶的相對運動軌跡;
特定行為識別單元,用于通過機器學習方法識別包括若干種行為類型的用戶的特定行為;
行為序列生成單元,用于構(gòu)建相對運動軌跡中的特定行為的類型以及特定行為之間的相對空間關(guān)系形成的行為序列模型;
點線模型生成單元,用于生成室內(nèi)地圖的點線模型,其中,所述點為發(fā)生所述特定行為的位置,線為連接點的邊;
匹配單元,用于通過隱馬爾科夫模型,匹配所述點線模型與行為序列模型從而獲得相對運動軌跡的室內(nèi)地圖坐標信息;
指紋地圖生成單元,用于基于所述室內(nèi)位置坐標信息及眾包數(shù)據(jù),構(gòu)建地圖約束較好區(qū)域的Wi-Fi位置指紋地圖;其中,當室內(nèi)地圖障礙物之間距離小于或等于所述距離閾值、或者室內(nèi)地圖墻壁與障礙物之間的距離小于或等于所述距離閾值時,則該區(qū)域為室內(nèi)地圖約束較好區(qū)域;
樣本獲取單元,用于根據(jù)室內(nèi)地圖篩選得到帶有位置標簽的Wi-Fi強度信息,并作為樣本。
優(yōu)選的,在所述Wi-Fi位置指紋地圖自動構(gòu)建系統(tǒng)中,所述預測模塊具體包括:
函數(shù)關(guān)系獲取單元,用于將樣本中所包括的樣本點記為{p1,...,pi,...pn},樣本點的Wi-Fi信號強度記為f,且根據(jù)高斯過程對樣本點的Wi-Fi信號強度和位置信息建模,得到Wi-Fi信號強度和位置信息建模的函數(shù)關(guān)系;其中,將函數(shù)關(guān)系記為f,則f的分布為:
其中,m(·)為高斯過程的均值函數(shù),k(·,·)為高斯過程的協(xié)方差函數(shù);
樣本點信號強度獲取單元,用于根據(jù)信號傳播模型,對Wi-Fi信號強度和距離之間的關(guān)系進行建模,得到接收信號的強度f(pi)=γ-10αlog10(||pi-ps||)+Ψ(pi,ps);其中,γ為常數(shù),α為信號路徑衰減系數(shù),Ψ(pi,ps)是描述Wi-Fi接入點位置ps和Wi-Fi接入點位置pi之間的信號衰減的位置相關(guān)的參數(shù);
訓練單元,用于根據(jù)訓練樣本Sj={(p1,f(p1)),(p2,f(p2)),...,(pn,f(pn))},及包含了訓練樣本的二維坐標得到包含了訓練樣本中的Wi-Fi信號強度且包含了訓練樣本中的Wi-Fi信號強度中的fj服從多維聯(lián)合高斯分并記為其中,C為n×n的矩陣,每個元素當i=j(luò)時δij=1,其他情況時δij=0;dc是相關(guān)距離,為衰減方差,ε為測量噪聲;
均值及方差獲取單元,用于將需要預測的位置p*處的信號強度表示為并將y和f組成一個(n+1)×1列的多維高斯變量[f;y]:由高斯隨機變量的條件分布得到其中1≤i≤n,為Wi-Fi位置指紋地圖未帶有位置標簽的Wi-Fi強度均值,為Wi-Fi位置指紋地圖未帶有位置標簽的Wi-Fi強度方差。
優(yōu)選的,在所述Wi-Fi位置指紋地圖自動構(gòu)建系統(tǒng)中,所述眾包數(shù)據(jù)包括:眾包用戶的加速度數(shù)據(jù)、陀螺儀數(shù)據(jù)、磁力計數(shù)據(jù)、氣壓計數(shù)據(jù)以及Wi-Fi數(shù)據(jù)。
綜上所述,本發(fā)明所提供的Wi-Fi位置指紋地圖自動構(gòu)建方法及系統(tǒng),方法包括:獲取眾包數(shù)據(jù),使用行人航位推算方法、及機器學習方法構(gòu)建Wi-Fi位置指紋地圖,并根據(jù)室內(nèi)地圖篩選得到帶有位置標簽的Wi-Fi強度信息;將帶有位置標簽的Wi-Fi強度信息作為高斯過程的訓練樣本,得到信號強度和位置信息的函數(shù)關(guān)系,求解高斯過程中的超參數(shù),并根據(jù)超參數(shù)預測得到室內(nèi)地圖約束較差區(qū)域的Wi-Fi強度信息。本發(fā)明采用高斯過程回歸,基于地圖約束較好區(qū)域的Wi-Fi位置指紋信息,預測開闊區(qū)域的Wi-Fi位置指紋,從而實現(xiàn)整個室內(nèi)區(qū)域的Wi-Fi位置指紋地圖自動構(gòu)建。
應(yīng)當理解的是,本發(fā)明的應(yīng)用不限于上述的舉例,對本領(lǐng)域普通技術(shù)人員來說,可以根據(jù)上述說明加以改進或變換,所有這些改進和變換都應(yīng)屬于本發(fā)明所附權(quán)利要求的保護范圍。