張永恒,陳紅華,2,郭 語,聶舜啟
(1.南京林業(yè)大學(xué) 土木工程學(xué)院,南京 210037;2.東華理工大學(xué) 江西省數(shù)字國土重點(diǎn)實(shí)驗(yàn)室 南昌 330013)
基于無線傳感網(wǎng)絡(luò)的室內(nèi)定位主要包括測(cè)距定位和非測(cè)距定位。其中,測(cè)距定位模型主要有接收信號(hào)強(qiáng)度指示(received signal strength indicator, RSSI)、到達(dá)時(shí)間(time of arrival,TOA)、達(dá)到角(angle of arrival, AOA)和到達(dá)時(shí)間差(time difference of arrival, TDOA)等;非測(cè)距算法主要包括質(zhì)心算法等?;赗SSI定位方法具有硬件成本低、定位精度相對(duì)較高、硬件便于部署等優(yōu)點(diǎn),因此仍為解決室內(nèi)定位精度問題研究的重點(diǎn)。
基于RSSI室內(nèi)定位技術(shù)重點(diǎn)研究測(cè)距模型和定位算法。針對(duì)測(cè)距模型,文獻(xiàn)[7]通過模型參數(shù)、錨節(jié)點(diǎn)選取、節(jié)點(diǎn)升級(jí)和未知節(jié)點(diǎn)坐標(biāo)估計(jì)動(dòng)態(tài)修正測(cè)距模型,雖然測(cè)距精度有一定程度提高,但該方法沒有考慮RSSI異常值不嚴(yán)格服從高斯分布對(duì)濾波結(jié)果產(chǎn)生的影響;文獻(xiàn)[8]利用蟻群算法獲取最優(yōu)的初始閾值和權(quán)值,并將其賦予反向傳播(back propagation, BP)神經(jīng)網(wǎng)絡(luò)擬合定位,此方法雖然提高了定位精度,但需要在室內(nèi)環(huán)境中獲取大量訓(xùn)練樣本。針對(duì)定位算法,文獻(xiàn)[9]提出通過構(gòu)建相交圓計(jì)算質(zhì)心位置,利用參考質(zhì)心計(jì)算修改因子修正其余質(zhì)心,最終用加權(quán)修正后的質(zhì)心計(jì)算坐標(biāo),此方法在通信半徑30 m以內(nèi)的定位精度與穩(wěn)定性,相對(duì)于其他算法更加突出,但此方法易受測(cè)距模型參數(shù)誤差影響,且無線信號(hào)不嚴(yán)格服從高斯分布。
針對(duì)RSSI信號(hào)會(huì)出現(xiàn)波動(dòng)的異常值,且定位精度受測(cè)距模型參數(shù)擬合的影響,本文提出了狄克遜檢驗(yàn)法高斯均值中值(Dixon Gaussian median mean,DGMM)加權(quán)混合濾波 RSSI值進(jìn)行高斯牛頓定位,極大地提高了定位精度以及穩(wěn)定性,有較強(qiáng)的實(shí)用性。
無線信號(hào)在傳播過程中受距離和室內(nèi)環(huán)境的影響會(huì)產(chǎn)生損耗。因此可以利用損耗這一特征,分析信號(hào)穿透物體的能力,建立信號(hào)損耗和距離之間的映射關(guān)系。常用的對(duì)數(shù)衰減模型為
式中為信號(hào)傳輸過程中的損耗值;為目標(biāo)點(diǎn)距已知藍(lán)牙信標(biāo)點(diǎn)一米處的信號(hào)損耗值;為目標(biāo)點(diǎn)至藍(lán)牙標(biāo)簽之間的距離;為衰減因子,不同的場(chǎng)景,衰減因子取值不同;為穿透建筑物的損耗,在實(shí)際計(jì)算中忽略不計(jì)。故信號(hào)接收端至發(fā)射端的距離可由式(1)化簡(jiǎn)為
由公式(2)可看出,RSSI值的精度影響藍(lán)牙標(biāo)簽至目標(biāo)點(diǎn)的測(cè)距精度,并進(jìn)一步影響定位精度,故如何處理RSSI并提高其精度是接下來研究的重點(diǎn)。
基于RSSI定位精度取決于信號(hào)值樣本好壞和測(cè)距模型參數(shù)的精確度,為提高定位精度,在加權(quán)混合濾波前需通過狄克遜檢驗(yàn)法預(yù)處理,剔除RSSI異常值,得到近似高斯分布的信號(hào)值。首先計(jì)算偏度大小,判斷信號(hào)的分布,再利用數(shù)據(jù)中的最值計(jì)算極差比來判斷波動(dòng)的信號(hào)值的峰值是否為異常值。
偏度可用來描述統(tǒng)計(jì)數(shù)據(jù)分布的對(duì)稱程度。一組RSSI觀測(cè)數(shù)據(jù)的偏度可表示為
式中:為偏度;為RSSI值;為RSSI值的期望為RSSI值的方差。
當(dāng)偏度為0時(shí),觀測(cè)數(shù)據(jù)符合正態(tài)分布;當(dāng)偏度小于0時(shí),說明觀測(cè)數(shù)據(jù)向左偏;當(dāng)偏度大于0時(shí),說明觀測(cè)數(shù)據(jù)向右偏。
極差比是最接近最值的值與最值的差之比,反映最值的偏離程度。將最值作為可疑值,利用最大最小值計(jì)算極差比,最終通過假設(shè)檢驗(yàn)剔除異常值。具體步驟如下:
①將藍(lán)牙標(biāo)簽采集的信號(hào)衰減值按從小到大依次排列得<<…<r,本文將顯著性水平設(shè)置為0.05,查詢臨界值D(0.05,)。
②根據(jù)數(shù)據(jù)量檢驗(yàn)高端異常值和低端異常值γ為
式中:r為樣本最大值;r為最接近最大值的樣本值;為樣本最小值;r為最接近最小值的樣本值。
③若>γ,且>D(0.05,),則最大值判定為異常值;若<γ,且γ>D(0.05,)時(shí),則最小值判定為異常值;否則認(rèn)定數(shù)據(jù)中未含有異常值。
④剔除當(dāng)前異常值后,重復(fù)步驟①至步驟③,直至未發(fā)現(xiàn)異常值。
由于單一的濾波無法對(duì)RSSI信號(hào)進(jìn)行最優(yōu)化處理,本文提出了一種改進(jìn)的混合濾波算法,將預(yù)處理后的數(shù)據(jù)進(jìn)行高斯濾波處理,再分別進(jìn)行中值濾波和均值濾波處理,最后加權(quán)得到理想的RSSI值。具體步驟如下:
①對(duì)狄克遜檢驗(yàn)法預(yù)處理后的數(shù)據(jù)進(jìn)行高斯濾波,得到過濾后的個(gè)RSSI序列,記作R。
②對(duì)得到的 RSSI序列按從小到大順序R,R,…,R重新排序。計(jì)算當(dāng)前序列的算術(shù)平均值和中間值。
③將各RSSI值與均值和中間值的偏差平方均值作為各自的閾值,若偏差平方小于閾值,則用閾值來確定權(quán)值;反之,則用偏差平方來確定權(quán)值,使權(quán)值的確定更為合理。權(quán)值計(jì)算公式為
式中,
④ 對(duì)和作 以 下 處 理 :ω=?+?,其中=1,本文取=0.5,=0.5。將序列中的每個(gè) RSSI值與加權(quán)權(quán)重ω相乘后得校正后的RSSI值為
基于DGMM的加權(quán)混合濾波算法結(jié)合了現(xiàn)有濾波算法的優(yōu)點(diǎn),能夠有效過濾多種因素干擾,從而得到最理想的RSSI值。
獲取精度較高的RSSI值后,通過測(cè)距模型可得到藍(lán)牙標(biāo)簽至目標(biāo)點(diǎn)之間較準(zhǔn)確的距離,則需要進(jìn)一步探究合適的距離定位模型。
高斯牛頓迭代法為非線性最小二乘的一種迭代方法,該方法使用一階泰勒展開式、近似代替非線性方程,然后通過多次迭代,使原模型的殘差平方和達(dá)到最小。
在室內(nèi)均勻放置(>4)個(gè)藍(lán)牙信號(hào)標(biāo)簽和個(gè)目標(biāo)點(diǎn),并建立獨(dú)立的室內(nèi)坐標(biāo)系,將藍(lán)牙信標(biāo)放置在已知位置。將藍(lán)牙標(biāo)簽坐標(biāo)記為A=(a,b),(=1,2,…,),假設(shè)第個(gè)目標(biāo)點(diǎn)的坐標(biāo)為T=(x,y),(=1,2,…,),將加權(quán)混合濾波處理后的RSSI值代入式(2),得藍(lán)牙標(biāo)簽到目標(biāo)點(diǎn)距離為d,則可得該目標(biāo)點(diǎn)觀測(cè)方程為
令=3,由三邊定位法計(jì)算目標(biāo)點(diǎn)的初始坐標(biāo)。在目標(biāo)點(diǎn)初始坐標(biāo)處對(duì)非線性誤差方程式(8)進(jìn)行線性化,使用泰勒級(jí)數(shù)展開式、近似代替非線性回歸模型,不斷迭代修正方程參數(shù)使得殘差平方和最小。展開后的線性方程為
式中:為()對(duì)的雅克比矩陣,即
在=處,對(duì)式(9)中的求微分,由最小二乘原理解得
式中,為權(quán)陣。
權(quán)陣的計(jì)算方法為
式中:ω為權(quán)重;R為加權(quán)混合濾波處理后的信號(hào)衰減值。
以為近似值繼續(xù)迭代,其公式為
當(dāng) ()與 ()之間差值最小時(shí),停止迭代。
計(jì)算目標(biāo)點(diǎn)的點(diǎn)位誤差,其公式為
式中:為點(diǎn)位誤差;??、分別為目標(biāo)點(diǎn)橫縱坐標(biāo)估計(jì)值;、分別為目標(biāo)點(diǎn)橫縱坐標(biāo)理想值。
選擇南京林業(yè)大學(xué)主樓大廳作為室內(nèi)環(huán)境。此環(huán)境長15.6 m,寬6.2 m,在大廳內(nèi)布設(shè)6個(gè)藍(lán)牙標(biāo)簽,選擇8個(gè)目標(biāo)點(diǎn)進(jìn)行定位,場(chǎng)景模擬圖如圖1所示。在室內(nèi)建立獨(dú)立坐標(biāo)系,分別測(cè)量藍(lán)牙標(biāo)簽和目標(biāo)點(diǎn)的理想坐標(biāo),打開藍(lán)牙標(biāo)簽,使用移動(dòng)手機(jī)接收藍(lán)牙信號(hào)采集RSSI值。
圖1 實(shí)驗(yàn)場(chǎng)景模擬圖
由于不同的室內(nèi)環(huán)境衰減模型參數(shù)有差異,仍需要采集一定的樣本值擬合衰減模型參數(shù)。為方便測(cè)量,選擇一條長8 m的直線,每隔0.5 m采集藍(lán)牙標(biāo)簽 3的信號(hào)強(qiáng)度衰減值。對(duì)采集的16組樣本數(shù)據(jù)過濾后進(jìn)行擬合,得到該環(huán)境下衰減模型參數(shù)=-58.13,=2.46。曲線擬合圖如圖2所示。
圖2 衰減模型曲線擬合圖
在實(shí)驗(yàn)中,分別實(shí)現(xiàn)中值濾波、均值濾波以及DGMM加權(quán)混合濾波對(duì)實(shí)測(cè)樣本數(shù)據(jù)處理后的高斯牛頓定位。表1為 3種濾波算法處理后高斯牛頓定位結(jié)果的一維誤差和點(diǎn)位誤差。
表1 三種濾波定位算法誤差對(duì)比
通過對(duì)連續(xù)觀測(cè)的數(shù)據(jù)進(jìn)行狄克遜檢驗(yàn)法預(yù)處理,可有效剔除異常值,得到接近高斯分布的信號(hào)強(qiáng)度值。繼續(xù)使用DGMM加權(quán)混合濾波,可得到相對(duì)穩(wěn)定的強(qiáng)度值,最后進(jìn)行高斯牛頓定位。實(shí)驗(yàn)結(jié)果的誤差如表1所示,分別計(jì)算3種濾波的 DGMM加權(quán)混合濾波處理后的平均點(diǎn)位誤差為1.523 m,精度明顯優(yōu)于均值濾波的4.846 m和中值濾波的 4.302 m,定位精度提高了 3倍。利用文獻(xiàn)[13]的高斯中值混合濾波和文獻(xiàn)[14]的加權(quán)混合濾波對(duì)本文數(shù)據(jù)進(jìn)行處理得到平均點(diǎn)位誤差分別為3.63 m和3.19 m,對(duì)比顯示本文的 DGMM加權(quán)混合濾波算法的定位精度仍具有明顯優(yōu)勢(shì)。
實(shí)驗(yàn)實(shí)現(xiàn)了對(duì)目標(biāo)點(diǎn)均值濾波、中值濾波以及DGMM加權(quán)混合濾波算法處理后的定位,估計(jì)位置與理想位置對(duì)比如圖3所示。圖3顯示,3種濾波算法中,DGMM加權(quán)混合濾波處理后定位的估計(jì)點(diǎn)位與理想點(diǎn)位之間的距離最小,即點(diǎn)位誤差最小,說明此方法的定位精度最高。
圖3 三種濾波算法估計(jì)位置和理想位置
圖4為3種濾波算法的點(diǎn)位誤差示意圖。從圖4可看出DGMM混合濾波算法的點(diǎn)位誤差在0~3 m,精度明顯高于均值濾波和中值濾波的定位結(jié)果。對(duì)于4號(hào)點(diǎn)、6號(hào)點(diǎn)及7號(hào)點(diǎn),均值濾波和中值濾波的定位誤差波動(dòng)較大,定位精度非常不穩(wěn)定。計(jì)算均值濾波、中值濾波和DGMM加權(quán)混合濾波點(diǎn)位誤差的均方差根誤差分別為 2.212、2.273和0.441 m,其中DGMM加權(quán)混合濾波點(diǎn)位誤差的均方差根誤差最小,說明其定位的點(diǎn)位誤差波動(dòng)范圍最小,即定位最穩(wěn)定。
圖4 點(diǎn)位誤差
為了進(jìn)一步研究高斯牛頓定位模型的優(yōu)越性,將同樣的一組 DGMM 加權(quán)濾波處理后的RSSI值代入式(2),計(jì)算藍(lán)牙標(biāo)簽到目標(biāo)點(diǎn)的距離后,利用最小二乘線性化定位模型進(jìn)行位置估計(jì),與本文的高斯牛頓定位模型進(jìn)行對(duì)比。表2為最小二乘定位和高斯牛頓定位結(jié)果的一維誤差和點(diǎn)位誤差。
表2 兩種定位模型誤差對(duì)比
定位誤差如表2所示。分別計(jì)算兩種定位模型的平均點(diǎn)位誤差,最小二乘定位模型的平均點(diǎn)位誤差約為2.737 m,高斯牛頓定位模型的平均點(diǎn)位誤差約為1.523 m,所以本文采用的定位模型精度提高了79.7%,明顯優(yōu)于最小二乘定位模型。
圖5為兩種定位模型的誤差示意圖。從圖5可看出,雖然最小二乘定位模型 1號(hào)點(diǎn)位定位精度優(yōu)于高斯牛頓定位,是由于最小二乘線性化求解坐標(biāo)定位很不穩(wěn)定,會(huì)出現(xiàn)極個(gè)別定位精度較好的情況,但高斯牛頓定位模型總體定位精度較高且比較穩(wěn)定,誤差維持在0~3 m。
圖5 點(diǎn)位誤差
綜上所述,實(shí)驗(yàn)結(jié)果表明,DGMM加權(quán)混合濾波后的 RSSI值利用不同的定位模型定位精度,都優(yōu)于均值濾波和中值濾波。進(jìn)一步研究發(fā)現(xiàn),本文采用的高斯牛頓定位模型,進(jìn)一步將定位精度提高了79.7%。故利用DGMM加權(quán)混合濾波處理RSSI的高斯牛頓模型,可大大提高室內(nèi)定位精度。
針對(duì)基于RSSI的室內(nèi)定位方法采集的信號(hào)衰減值會(huì)出現(xiàn)波動(dòng)的異常值等問題,本文首先使用狄克遜檢驗(yàn)法逐步剔除異常值,再對(duì)符合高斯分布的數(shù)據(jù)值進(jìn)行高斯濾波,并分別進(jìn)行均值濾波和中值濾波,對(duì)兩種濾波處理后的結(jié)果進(jìn)行加權(quán)處理,最后使用高斯牛頓模型迭代得到最優(yōu)的估計(jì)位置。實(shí)驗(yàn)結(jié)果表明,本文的DGMM加權(quán)混合濾波可有效避免部分異常值對(duì)濾波結(jié)果的影響;選擇RSSI的平方和倒數(shù)確定權(quán),避免了使用距離確定權(quán)引起的參數(shù)誤差;同時(shí)利用高斯牛頓模型能夠不斷修正目標(biāo)點(diǎn)的點(diǎn)位誤差,最終提高定位精度。但本文研究對(duì)象為靜態(tài)目標(biāo)點(diǎn),不適用于解決動(dòng)態(tài)軌跡問題,如何解決動(dòng)態(tài)室內(nèi)定位有待下一步研究。