劉忞劼 陳金龍 裴允杰 秦興國
基于PDR推算的指紋庫更新系統(tǒng)設(shè)計(jì)
劉忞劼 陳金龍 裴允杰 秦興國
(桂林電子科技大學(xué),廣西 桂林 541000)
隨著移動互聯(lián)網(wǎng)的發(fā)展,用戶對室內(nèi)定位的需求日益增長,從而導(dǎo)致對定位方法的研究也變得越來越多?;赑DR的指紋定位技術(shù)是室內(nèi)定位中比較主流的方法,然而隨著時間的推移,指紋信息的過期問題會影響定位的精度。為了解決這個問題,文章設(shè)計(jì)了一種基于PDR推算的指紋庫更新系統(tǒng),用一種投票的方式來更新過期的指紋信息。
PDR導(dǎo)航;指紋庫更新;高斯濾波;投票
定位是當(dāng)前全球的研究熱點(diǎn),主流定位系統(tǒng)除了美國的GPS外,還有北斗衛(wèi)星導(dǎo)航系統(tǒng)、伽利略衛(wèi)星導(dǎo)航系統(tǒng)、格洛納斯衛(wèi)星導(dǎo)航系統(tǒng)。但室外定位無法延伸至室內(nèi),因此涌現(xiàn)了很多室內(nèi)定位技術(shù)?,F(xiàn)在的室內(nèi)定位大多應(yīng)用于機(jī)場、商場、博物館等大型室內(nèi)場景,能夠很好地提高用戶的消費(fèi)體驗(yàn)。除此之外,在監(jiān)控管理方面,某些企業(yè)的車間需要對產(chǎn)品的運(yùn)輸或者人員流動進(jìn)行軌跡定位,從而大大減少人力的浪費(fèi)。同時在養(yǎng)老院或者幼兒園中,老人和小孩這兩個群體都容易出現(xiàn)迷路等意外情況,因此可以讓其佩戴定位終端,對其行程軌跡進(jìn)行定位,避免危險(xiǎn)情況的發(fā)生。由此可見,室內(nèi)定位這項(xiàng)技術(shù)有著重要的研究意義。
在硬件上室內(nèi)定位技術(shù)有基于藍(lán)牙、WiFi、UWB、ZigBee等設(shè)備的,算法上有基于位置指紋、PDR導(dǎo)航、三角定位等延伸的。藍(lán)牙信標(biāo)功耗低且價(jià)格便宜,因此本系統(tǒng)測試時采用的是基于藍(lán)牙信號構(gòu)建的指紋庫?;诰嚯x的定位算法會因?yàn)榄h(huán)境因素導(dǎo)致測算的信標(biāo)距離不準(zhǔn)確,從而導(dǎo)致定位精度也不夠高?;谥讣y數(shù)據(jù)庫的定位方法利用多徑傳播來構(gòu)建RSSI指紋地圖,能夠更好地適應(yīng)室內(nèi)環(huán)境,而且硬件成本相對較低[1],但是其指紋庫的時效性會影響其定位的精度。
為了解決指紋過期的問題,更新指紋的方式層出不窮,例如利用眾包的方式來更新指紋庫。但是眾包方式中經(jīng)過用戶反饋的數(shù)據(jù)并不一定準(zhǔn)確,因此文獻(xiàn)[2]通過算法在后臺過濾掉錯誤信息,從而更精確地更新指紋庫。盡管眾包這種方式能夠有效地更新指紋庫,但是其本身會增加用戶的負(fù)擔(dān)。為了避免這個問題,本文設(shè)計(jì)的系統(tǒng)通過指紋定位的在線階段利用行人的定位信息來更新指紋庫。系統(tǒng)在用戶使用定位服務(wù)時搜集數(shù)據(jù),無需用戶主動反饋信息。通過設(shè)計(jì)指紋失效的依據(jù),在不同的用戶經(jīng)過指紋失效的區(qū)域時,用一種投票的方式來探測已經(jīng)過期的指紋信息,通過票數(shù)的多少來衡量指紋過期的概率大小,最終成功更新指紋庫。
PDR指的是步行者航位推算,其是一種不借助外力的自主性導(dǎo)航。PDR導(dǎo)航主要是在無信標(biāo)的環(huán)境下通過IMU(慣性測量單元)獲取加速度、角速度、地磁航向等數(shù)據(jù),再根據(jù)這些數(shù)據(jù)計(jì)算出行人的步長步數(shù)以及行走方向,借此推算出行人的的行走軌跡和位置信息。PDR的推算公式如下:
指紋定位通常通過在離線階段建立場景的特征指紋數(shù)據(jù)庫,在線階段將待測點(diǎn)RSSI值與指紋庫進(jìn)行對比匹配從而來估計(jì)待測點(diǎn)的坐標(biāo)[3,4]。指紋定位也常用來修正PDR導(dǎo)航的軌跡,將二者結(jié)合在一起可以進(jìn)行融合定位。但是指紋定位會受到環(huán)境的影響,建立的指紋庫需要不斷地更新,否則會出現(xiàn)過期問題。
本算法是基于投票理論來更新指紋庫,投票理論通常有一致同意與多數(shù)票規(guī)則,其他的還有加權(quán)投票規(guī)則,否決投票規(guī)則。本算法的核心是對可能出現(xiàn)指紋失效的區(qū)域進(jìn)行投票,在票數(shù)累計(jì)到一定數(shù)量時,即可認(rèn)為該區(qū)域的指紋已經(jīng)失效,同時一定數(shù)量的票數(shù)也意味著獲取了足夠多的數(shù)據(jù)用于更新指紋庫。算法的步驟如下:
預(yù)先采集好的指紋庫定義如下,一共D個指紋點(diǎn),每個點(diǎn)搜集到N個信標(biāo)的信號值:
參數(shù)1和2為模型系數(shù),step為走一步的時間,a和a和a分別表示一個步長內(nèi)的最大和最小加速度以及平均加速度(通過陀螺儀獲?。?/p>
將指紋定位坐標(biāo)和PDR推算坐標(biāo)進(jìn)行互補(bǔ)濾波,得出最終的定位坐標(biāo)(x,y),公式如下:
每走一步,則根據(jù)定位的最終坐標(biāo)來調(diào)整PDR模型中的步長模型d,將1保持不變,只更新2,下一步就將2保持不變,只更新1。
圖1 投票示意圖
(3)考慮圓弧與指紋點(diǎn)覆蓋的區(qū)域,計(jì)算其權(quán)值的分配情況。當(dāng)圓弧覆蓋三個指紋點(diǎn)時,權(quán)值分配為(0,1,2),中心線與圓弧交點(diǎn)所在的指紋點(diǎn)投票為0,其余兩個為1和2。當(dāng)覆蓋兩個指紋點(diǎn)時,中心線與圓弧交點(diǎn)所在的指紋點(diǎn)的投票為0,另一個點(diǎn)為1+2。當(dāng)只覆蓋一個點(diǎn)時,該點(diǎn)投票數(shù)為1。權(quán)值限定條件公式如下:
(4)隨著用戶不斷的在建立了指紋庫的區(qū)域行走,指紋過期區(qū)域的票數(shù)會逐漸累加,如圖2所示,當(dāng)出現(xiàn)某個指紋點(diǎn)的票數(shù)>閾值時,則考慮需要更新該點(diǎn)的指紋信息。使用高斯濾波過濾該點(diǎn)存儲的RSSI信息,高斯濾波公式為:
(8)
高概率發(fā)生區(qū)選擇概率大于0.6(經(jīng)驗(yàn)值)的范圍:
將此范圍RSSI值提取出來,并根據(jù)每個RSSI對應(yīng)的權(quán)值進(jìn)行加權(quán)平均,最終得到更新后的指紋信息,公式如下:
RSSI表示從(,w)取出的RSSI信息,n表示權(quán)值為w的RSSI個數(shù)。更新完后,將該點(diǎn)的票數(shù)歸0,并將該點(diǎn)存儲的(,w)信息刪除。
這樣可以避免后續(xù)更新指紋點(diǎn)時重復(fù)使用搜集到的RSSI信息,從而提高指紋更新的準(zhǔn)確率。同時為了避免指紋點(diǎn)存儲的指紋信息在未達(dá)到票數(shù)閾值之前就過期,在長時間沒有行人通過該區(qū)域時,需要定期清理殘存的指紋信息。
該系統(tǒng)包括客戶端和服務(wù)端,使用的終端為手機(jī)。客戶端每次定位都會將上一次定位的結(jié)果保留下來,在指紋定位和PDR定位出現(xiàn)偏差需要投票時,將記錄的信息發(fā)往服務(wù)端。航向角為相對于地圖y軸正方向順時針旋轉(zhuǎn)的偏差度數(shù),0代表不投票,1代表投票,如表1所示。
表1 客戶端信息表
服務(wù)端接收到客戶端發(fā)送的信息,則統(tǒng)計(jì)各個指紋點(diǎn)的票數(shù)情況,通過預(yù)先設(shè)定的閾值來判斷是否需要更新,1代表需要更新,0代表無需更新,如表2所示。
表2 服務(wù)端投票表
每個指紋點(diǎn)都記錄了接收到的RSSI信息和權(quán)值,不同的RSSI信息對應(yīng)著不同的權(quán)值,如表3所示。
表3 指紋點(diǎn)權(quán)值表
每更新一次指紋點(diǎn)都將其更新后的數(shù)據(jù)發(fā)給用戶,客戶端用于更新本地的指紋庫。整個系統(tǒng)流程設(shè)計(jì)如圖3所示。
圖3 系統(tǒng)流程設(shè)計(jì)圖
測試場景在50 m×50 m的平面區(qū)域,已事先構(gòu)建好指紋庫,每個指紋點(diǎn)信息覆蓋1 m×1 m的區(qū)域??紤]PDR航向角方向的偏移概率,將0設(shè)置為0.7,1=2=0.15。根據(jù)文獻(xiàn)[6]所述,設(shè)立步長模型初始參數(shù)值1=01053,2=0.2195。互補(bǔ)濾波權(quán)值P1設(shè)置為0.2,P2設(shè)置為0.8。考慮在有指紋點(diǎn)票數(shù)達(dá)到10時則對其進(jìn)行更新。
測試開始時更改場景中一個藍(lán)牙信標(biāo)的的信號強(qiáng)度,如圖4所示,黑色實(shí)心點(diǎn)即為異常的藍(lán)牙信標(biāo)。在15個人20分鐘的隨機(jī)行走下,指紋失效的區(qū)域被行走軌跡所覆蓋,指紋失效區(qū)域的票數(shù)也在不斷的累計(jì)。票數(shù)達(dá)到閾值后,更新算法開始運(yùn)行,同時記錄下被更新的指紋點(diǎn),以便后續(xù)測試更新的效果如何。
圖4 測試區(qū)域圖
圖5 采集信息圖
針對室內(nèi)定位中指紋庫的失效問題,本文設(shè)計(jì)的系統(tǒng)通過對比PDR定位和指紋定位的差異大小來作為指紋失效的依據(jù)。為避免偶然的RSSI波動情況,采取投票的方式來累計(jì)指紋失效的概率,當(dāng)票數(shù)達(dá)到一定值時,采信此時的指紋信息已經(jīng)失效,這時候更新指紋庫會更加有信服力,能夠避免誤更新的情況發(fā)生。通過利用上一個定位點(diǎn)和PDR航向角方向來探測可能失效的指紋區(qū)域,并考慮到航向角偏移的情況,在45°的區(qū)域采取不同的權(quán)值進(jìn)行投票。在人員流動較大的區(qū)域,例如商場或景區(qū),利用游客的定位數(shù)據(jù)能夠很快地探測出失效的指紋點(diǎn),并能獲取到足夠的數(shù)據(jù)來更新指紋庫。相較于傳統(tǒng)的指紋庫更新方式,本文設(shè)計(jì)的系統(tǒng)不需要額外的輔助點(diǎn)幫助更新指紋庫,也不需要在規(guī)定的軌跡下搜集數(shù)據(jù),能夠有效地節(jié)省人力資源。
[1] 楊斌,李燈熬,趙菊敏. 基于區(qū)域劃分的局部更新指紋定位算法[J]. 計(jì)算機(jī)工程與應(yīng)用,2018,54(17): 56-61.
[2] Chang K, Han D. Crowdsourcing-based radio map update automation for Wi-Fi positioning systems[C]. Conference: the 3rd ACM SIGSPATIAL International Workshop, 2014.
[3] 張蒼松,郭軍,崔嬌,等. 基于RSSI的室內(nèi)定位算法優(yōu)化技術(shù)[J]. 計(jì)算機(jī)工程與應(yīng)用,2015,51(3): 235-238.
[4] Gholoobi A, Stavrou S. RSS based localization using a new WKNN approach[C]. International Conference on Computational Intelligence, Communication Systems and Networks, 2015.
[5] 田洪亮,錢志鴻,梁瀟,等. 離散度WKNN位置指紋Wi-Fi定位算法[J]. 哈爾濱工業(yè)大學(xué)學(xué)報(bào),2017,49(5): 94-99.
[6] Arthur D, Vassilvitskii S. K-means + + : the advantages of careful seeding[C]. Proceedings of the eighteenth annual ACM-SIAM symposium on discrete algorithms, 2007.
[7] 田豐. 基于指紋和PDR的室內(nèi)定位研究[D]. 重慶: 重慶大學(xué),2015.
Design of Fingerprint Database Update System Based on PDR Calculation
With the development of mobile Internet, users' demand for indoor positioning is increasing, which leads to more and more research on positioning methods. Fingerprint location technology based on PDR is the mainstream method in indoor location. However, with the passage of time, the expiration of fingerprint information will affect the accuracy of location. In order to solve this problem, this paper designs a fingerprint database update system based on PDR calculation, which updates the expired fingerprint information by voting.
PDR navigation; fingerprint database update; Gaussian filtering; vote
TP391
A
1008-1151(2022)04-0018-04
2022-01-26
廣西自然科學(xué)基金面上項(xiàng)目“阿爾茲海默病診斷的多模態(tài)特征提取方法研究”(2020GXNSFAA297061);廣西重點(diǎn)研發(fā)計(jì)劃“面向全域旅游的桂林國際旅游勝地景區(qū)客流大數(shù)據(jù)監(jiān)測平臺研究及應(yīng)用示范”(桂科AB21075004);廣西重點(diǎn)研發(fā)計(jì)劃“溶洞型景區(qū)智能導(dǎo)游室內(nèi)定位及位置服務(wù)關(guān)鍵技術(shù)研究及應(yīng)用示范”(桂科AB18221011);廣西可信軟件重點(diǎn)實(shí)驗(yàn)室課題“面向智慧旅游軟件的數(shù)據(jù)安全技術(shù)研究”(kx201621);廣西可信軟件重點(diǎn)實(shí)驗(yàn)室課題“基于SOA的廣西重點(diǎn)實(shí)驗(yàn)室管理系統(tǒng)分析與設(shè)計(jì)”(kx201715);廣西圖像圖形與智能處理重點(diǎn)實(shí)驗(yàn)室課題“基于手勢的體感交互關(guān)鍵技術(shù)研究及應(yīng)用示范”(GIIP201702)。
劉忞劼(1996-),男,桂林電子科技大學(xué)在讀碩士研究生,研究方向?yàn)閳D像處理。
陳金龍(1979-),男,桂林電子科技大學(xué)正高級實(shí)驗(yàn)師,研究方向?yàn)橹腔勐糜?、機(jī)器學(xué)習(xí)。