本發(fā)明涉及室內(nèi)定位技術(shù)領(lǐng)域,具體涉及一種基于步長匹配的行人室內(nèi)定位方法。
背景技術(shù):
隨著經(jīng)濟(jì)社會(huì)的發(fā)展和智能手機(jī)的高度普及,基于位置的服務(wù)已經(jīng)越來越得到重視,尤其在大型復(fù)雜的室內(nèi)環(huán)境中,如火車站、機(jī)場、大型超市、醫(yī)院等區(qū)域,人們對(duì)位置服務(wù)有迫切需求。行人室內(nèi)定位中的無源定位方法不需要布設(shè)信號(hào)節(jié)點(diǎn),一種是將慣性導(dǎo)航機(jī)制引入移動(dòng)設(shè)備,另一種是行人航位推算(pdr,pedestriandeadreckoning)算法。
pdr算法根據(jù)慣性傳感器數(shù)據(jù)對(duì)行人行走步數(shù)、步長和方向進(jìn)行計(jì)算,獲取行走距離和方向,算法的關(guān)鍵在于準(zhǔn)確地估算行人的步長。已有的步長模型包括基于步頻和步長之間線性關(guān)系的步長估計(jì)模型;與跨步周期內(nèi)最大最小加速度有關(guān)的非線性經(jīng)驗(yàn)?zāi)P?;將人行走模式近似為一個(gè)倒立的單擺,通過三角關(guān)系計(jì)算步長。由于不同人步長的差異與個(gè)人身高、習(xí)慣、心情等均有一定關(guān)系,上述線性和非線性模型很難反應(yīng)出不同個(gè)體的步長差異。
技術(shù)實(shí)現(xiàn)要素:
為了克服上述步長模型在面對(duì)個(gè)體差異時(shí)精度無法保證的不足,本發(fā)明提供了一種基于步長匹配的行人室內(nèi)定位方法。
本發(fā)明采用如下技術(shù)方案:
一種基于步長匹配的行人室內(nèi)定位方法,應(yīng)用于一內(nèi)置加速度計(jì)、磁航向計(jì)等多種mems傳感器的便攜式設(shè)備中,所述方法包括如下步驟:
s1、基于衛(wèi)星定位系統(tǒng)確定行人在室外的初始經(jīng)緯度信息;
s2、基于衛(wèi)星測距計(jì)算行人在室外的平均步長;
s3、衛(wèi)星測距的同時(shí)基于加速度計(jì)記錄每步的跨步特征值,所述的跨步特征值包括一個(gè)跨步周期內(nèi)的最大加速度amax、最小加速度amin以及周期時(shí)長t;
s4、根據(jù)跨步特征值與平均步長的對(duì)應(yīng)關(guān)系建立行人的個(gè)體步長特征數(shù)據(jù)庫;
若行人在室外的速度狀態(tài)有m種,記d=(d1,d2,···,dm)代表m種不同速度狀態(tài)下的步長集合,c=(amax,amin,t)代表一個(gè)跨步特征值的集合,按(c,dj)鍵值對(duì)的形式存儲(chǔ)數(shù)據(jù),建立行人的個(gè)體步長特征數(shù)據(jù)庫,其中dj∈d;
s5、行人進(jìn)入室內(nèi)后,基于衛(wèi)星定位系統(tǒng)確定行人在室內(nèi)的初始經(jīng)緯度信息;
s6、基于加速度計(jì)獲取新的跨步特征值,記
s7、通過knn算法,將步驟s6獲取的新的跨步特征值c*與步驟s4建立的個(gè)體步長特征數(shù)據(jù)庫進(jìn)行匹配,獲取該新的跨步特征值相對(duì)應(yīng)的平均步長;
s8、基于磁航向計(jì)確定行人的行走方向;
s9、根據(jù)步驟s7獲取的行人平均步長信息以及步驟s8獲取的行人行走方向信息,基于pdr算法計(jì)算行人的當(dāng)前位置。
優(yōu)選的,所述步驟s2的具體步驟包括:
s21、基于衛(wèi)星定位系統(tǒng)測量行人在a、b兩點(diǎn)所在位置的經(jīng)緯度,利用公式(1)計(jì)算兩點(diǎn)位置之間的直線距離s。
其中(lng1,lat1)表示a點(diǎn)經(jīng)緯度,(lng2,lat2)表示b點(diǎn)的經(jīng)緯度,a=lng1-lng2為兩點(diǎn)經(jīng)度之差,b=lat1-lat2為兩點(diǎn)緯度之差,6378137為地球半徑,單位為米。
s22、當(dāng)行人以近似直線的方式從a點(diǎn)步行到b點(diǎn),并盡量保持一種速度狀態(tài),利用式(2)計(jì)算該種速度狀態(tài)的平均步長。
其中s為(1)式計(jì)算得到的a,b兩點(diǎn)之間的直線距離,n為這一過程檢測到的跨步總數(shù)。
優(yōu)選的,所述步驟s7中所述匹配的方法為:
s71、利用公式(3)計(jì)算m中速度狀態(tài)中c(i)與c*間的歐氏距離;
其中i=1,2,...,n
s72、按升序?qū)ist(c(i),c*)排序,找出排在前k個(gè)的最小距離對(duì)應(yīng)的c(i);
s73、根據(jù)存儲(chǔ)的(c,dj)鍵值對(duì)查找這k組c(i)對(duì)應(yīng)的步長d;
s74、d集合中出現(xiàn)次數(shù)最多的d值作為當(dāng)前c*對(duì)應(yīng)的步長。
優(yōu)選的,所述步驟s71中,在m種速度狀態(tài)中,保留中間段的n組速度狀態(tài)下的特征數(shù)據(jù)用于匹配計(jì)算,其中n=m×n/3。
優(yōu)選的,所述步驟s1與所述步驟s2之間還包括如下步驟:
p、檢測跨步是否為有效跨步,判定為是,則記錄經(jīng)緯度,計(jì)算平均步長,并在跨步總數(shù)上加1;判定為否,則返回重新檢測跨步,直至判定為是。
優(yōu)選的,步驟p中所述檢測跨步的具體方法為,利用峰值法檢測跨步,峰值大小超過閾值0.4的為有效峰值,在檢測峰值的同時(shí)屏蔽不在合理時(shí)間間隔區(qū)間的峰值。
優(yōu)選的,所述步驟s8的具體步驟為:
s81、手動(dòng)校正磁航向計(jì);
s82、檢測跨步是否為有效跨步,判定為是,則實(shí)時(shí)步長匹配,并獲取當(dāng)前行人的行走方向;判定為否,則返回重新檢測跨步,直至判定為是。
本發(fā)明由于采用了上述技術(shù)方案,具有以下有益效果:與現(xiàn)有技術(shù)相比,本發(fā)明的有益效果是實(shí)際上為具有差異性的個(gè)體建立了屬于自己的個(gè)體步長特征數(shù)據(jù)庫,航位推算精度得到較大提高。
附圖說明
附圖用來提供對(duì)本發(fā)明的優(yōu)選的理解,并且構(gòu)成說明書的一部分,與本發(fā)明的實(shí)施例一起用于解釋本發(fā)明,并不構(gòu)成對(duì)本發(fā)明的限制。在附圖中:
圖1為本發(fā)明的整體流程圖;
圖2為與已有步長模型的測試結(jié)果對(duì)比圖。
具體實(shí)施方式
為使本發(fā)明實(shí)施例的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚,下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所述描述的實(shí)施例是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有作出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。
本發(fā)明的載體為個(gè)人智能手機(jī),內(nèi)置加速度計(jì),磁航向計(jì)等多種mems傳感器。
在室外,利用峰值法檢測跨步,為了提高檢測的準(zhǔn)確率,只有峰值大小超過閾值0.4的才會(huì)被判定為有效峰值,人自然行走的步頻在1-3hz之間,在檢測峰值的同時(shí)屏蔽不在合理時(shí)間間隔區(qū)間的峰值。
目前智能手機(jī)衛(wèi)星定位精度可以達(dá)到米級(jí),故直接使用手機(jī)給出的位置信息,將衛(wèi)星測距引入行人的步長測算,進(jìn)而建立一個(gè)屬于個(gè)體的步長特征數(shù)據(jù)庫。測量a,b兩點(diǎn)所在位置的經(jīng)緯度,利用公式(1)計(jì)算兩點(diǎn)位置之間的直線距離s。
其中(lng1,lat1)表示a點(diǎn)經(jīng)緯度,(lng2,lat2)表示b點(diǎn)的經(jīng)緯度,a=lng1-lng2為兩點(diǎn)經(jīng)度之差,b=lat1-lat2為兩點(diǎn)緯度之差,6378137為地球半徑,單位為米。
當(dāng)行人以近似直線的方式從a點(diǎn)步行到b點(diǎn),并盡量保持一種速度狀態(tài),在衛(wèi)星測距的同時(shí)檢測跨步,記錄每步的特征值,利用式(2)計(jì)算該種速度狀態(tài)的平均步長。
其中s為(1)式計(jì)算得到的a,b兩點(diǎn)之間的直線距離,n為這一過程檢測到的跨步總數(shù)。
假設(shè)速度有m種狀態(tài),步長特征包括一個(gè)跨步周期內(nèi)的最大加速度amax、最小加速度amin、周期時(shí)長t。室外衛(wèi)星測距的過程也就是步長特征數(shù)據(jù)庫建立的過程,共有m×n組跨步特征值集合,同時(shí)也是m種速度狀態(tài)下跨步的特征值與步長對(duì)應(yīng)關(guān)系的生成過程。記d=(d1,d2,···,dm)代表m種不同速度狀態(tài)下的步長集合,c=(amax,amin,t)代表一個(gè)跨步特征值的集合,按(c,dj)鍵值對(duì)的形式存儲(chǔ)數(shù)據(jù),其中dj∈d。
進(jìn)入室內(nèi)后,初始位置由衛(wèi)星定位信息給出。記
行人行走的開始和結(jié)束階段步長特征數(shù)據(jù)并不穩(wěn)定,波動(dòng)較大。為了減少knn算法計(jì)算量,匹配過程中對(duì)個(gè)體步長特征數(shù)據(jù)庫進(jìn)行簡化。實(shí)驗(yàn)表明,只保留每種速度狀態(tài)下區(qū)間即中間段的組特征數(shù)據(jù)完全可以保證匹配的準(zhǔn)確率,記。匹配算法如下:
1、計(jì)算c(i)與c*間的歐氏距離dist(c(i),c*),i=1,2,...,n;
2、按升序?qū)ist(c(i),c*)排序,找出排在前k個(gè)的最小距離對(duì)應(yīng)的c(i);
3、根據(jù)存儲(chǔ)的(c,dj)鍵值對(duì)查找這k組c(i)對(duì)應(yīng)的步長d;
4、d集合中出現(xiàn)次數(shù)最多的d值作為當(dāng)前c*對(duì)應(yīng)的步長。
其中c與c*的歐氏距離dist(c,c*)為
智能手機(jī)內(nèi)置磁航向計(jì),根據(jù)對(duì)地磁場的感應(yīng)可以實(shí)時(shí)指示出手機(jī)當(dāng)前頂部與正北方向的夾角,當(dāng)手機(jī)繞著z軸旋轉(zhuǎn)時(shí),該角度值將發(fā)生改變,此方向?qū)⒆鳛樾腥说男凶叻较颉?/p>
在針對(duì)本方法的實(shí)驗(yàn)中,室外測試地點(diǎn)選在環(huán)境開闊的中國科學(xué)院合肥智能機(jī)械研究所大樓外的人行道上,速度狀態(tài)選為較慢速度、正常速度和較快速度三種,測試人員身高178cm,在三種速度狀態(tài)下的實(shí)際步數(shù)均控制在100步,得到的步長計(jì)算結(jié)果分別為0.60m、0.74m和0.88m。
室內(nèi)測試地點(diǎn)選在智能所大樓內(nèi)的走廊,測試距離50m,分別計(jì)算在較慢速度、正常速度、較快速度以及變速行走這四組形式下的距離,每組測試5次。分別與采用式(4)計(jì)算的線性的步長估計(jì)模型以及采用式(5)計(jì)算的非線性的經(jīng)驗(yàn)?zāi)P瓦M(jìn)行比較,測試結(jié)果比較如圖2所示。
d=a×f+b(4)
其中a,b為系數(shù),f為頻率。
其中h為系數(shù),amax,amin分別為一個(gè)跨步周期內(nèi)的最大最小加速度。
本發(fā)明的方法可以很好地適應(yīng)個(gè)體的差異,行人室內(nèi)定位精度得到較大提高。
以上所述僅為本發(fā)明的優(yōu)選實(shí)施例而已,并不用于限制本發(fā)明,盡管參照前述實(shí)施例對(duì)本發(fā)明進(jìn)行了詳細(xì)的說明,對(duì)于本領(lǐng)域的技術(shù)人員來說,其依然可以對(duì)前述實(shí)施例所記載的技術(shù)方案進(jìn)行修改,或者對(duì)其中部分技術(shù)特征進(jìn)行等同替換。凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。