王正康 駱冰清
(南京郵電大學計算機學院、軟件學院、網(wǎng)絡空間安全學院 南京 210023)
(1220045308@njupt.edu.cn)
隨著無線傳感器網(wǎng)絡、移動智能終端的迅速發(fā)展,基于室內(nèi)位置服務的需求越來越多,例如礦井施工人員位置發(fā)現(xiàn)、化工廠危險源檢測、智能機器人服務、停車場尋車等. 但目前室內(nèi)定位方法仍存在部署難度大、設備成本高以及定位精度低等問題,無法滿足上述室內(nèi)定位需求.
按照定位原理劃分,目前室內(nèi)定位技術可以分為基于測距的定位和基于指紋的定位兩大類. 基于測距的定位方法[1]根據(jù)信號強度與傳播距離之間的數(shù)學模型計算接入點與目標點之間的距離,再使用幾何方法計算目標點位置. 但由于室內(nèi)布局的復雜多變,人員活動頻繁,信號強度與傳播距離數(shù)學模型的準確度低,導致基于測距的定位方法精度較低. 在基于指紋的定位方法中,指紋特征和定位模型是影響定位精度的2 個關鍵因素.
基于指紋的定位方法中常用低功耗藍牙(Bluetooth low energy, BLE)[2]、Wi-Fi[3]和ZigBee[4]等無線信號,其中接收信號強度指示(received signal strength indication, RSSI)和信道狀態(tài)信息(channel state information, CSI)常被用來作為位置指紋特征.CSI 采集對硬件要求較高,且數(shù)據(jù)處理較為復雜,但數(shù)據(jù)維度高,能夠表征較多的位置信息;RSSI 因其易采集、易處理的特性被廣泛應用,但波動性強,易受環(huán)境影響[5].同時有文獻采用可見光[6]、地磁[7]以及溫濕度[8]等傳感信息作為位置指紋特征來進行定位. 文獻[6]使用可見光通信進行定位,雖然該方法具有較高的定位精度,但可見光通信需要專門的驅(qū)動裝置對光信號進行調(diào)制,并需要光電二極管接收光信號,設備成本較高. 文獻[7]使用地磁進行定位,將地磁序列中的時間特征融入到位置指紋中來彌補空間特征差異性小的不足,地磁信號雖然穩(wěn)定性較高,但是不同位置之間的地磁信號的空間特征區(qū)分度不高,采用指紋法進行定位還需利用地磁序列中的時間相關性,增加了算法時間復雜度. 文獻[8]在進行指紋法的定位時使用了溫濕度信息,但溫濕度信息只是對無線信號接收信號強度(received signal strength, RSS)的補充,由于周圍環(huán)境對溫濕度信息的影響比較大,單獨的溫濕度信息無法用于指紋法定位. 文獻[5?8]研究表明,指紋法的定位中,作為位置特征的無線信號強度不穩(wěn)定,單一采用無線信號強度作為指紋特征進行室內(nèi)定位的精確度不高;傳感信息具有穩(wěn)定的優(yōu)勢,能夠彌補無線信號的不足,達到較高的定位精度,但是單一的傳感信息處理過程復雜,增加了設備復雜度或時間復雜度,并且傳感信息的位置差異性不強,各位置之間指紋特征區(qū)分度不夠.
針對上述單一指紋的問題,有研究使用多種類型的指紋來構建混合特征指紋進行定位[9-11]. 通過研究發(fā)現(xiàn),混合指紋能夠提高數(shù)據(jù)維度和位置差異性,使用多個指紋聯(lián)合進行定位能夠在一定程度上提高定位精度,但單一采用Wi-Fi,BLE 等無線信號進行聯(lián)合或單一采用可見光、地磁場等傳感信息進行聯(lián)合,其波動性較大或特征差異性不強對定位精度造成的影響難以得到改善.
定位模型的構建方法是指紋定位方法中影響定位精度的另一個重要因素.k最近鄰(k-nearest neighbor,KNN)算法[12-14]是一種有效且常用的指紋匹配方法,該算法選取與目標點之間指紋歐氏距離最近的k個參考點,將這k個參考點坐標的平均值作為目標點坐標,即實現(xiàn)了指紋定位. 但由于KNN 算法沒有考慮目標點與不同參考點之間指紋歐氏距離會對結果的影響程度不同,造成定位精度的不準確,因此使用KNN 方法的室內(nèi)定位技術定位精度較低.
加權k最近鄰(weightedk-nearest neighbor, WKNN)算法[15]對KNN 算法存在的問題進行了改進,定位精度相比于KNN 有一定程度的提升.WKNN 算法根據(jù)參考點與目標點之間的指紋歐氏距離對選出的k個參考點賦予了不同的權值,解決了KNN 方法中存在的問題. 但當采用無線信號作為指紋特征時,無線信號的不穩(wěn)定性使得該權值不能很好地反映參考點與目標點之間的匹配程度,因此對定位精度產(chǎn)生較大的影響[16-17].
針對WKNN 算法的問題,有研究使用卷積神經(jīng)網(wǎng)絡(convolutional neural network, CNN)來學習參考點與目標點的指紋特征[18-20],得益于CNN 在特征分類方面具有很好的效果,使用CNN 能夠更加精準地對目標點與參考點進行匹配,相比于WKNN 在精度方面有所提高. 文獻[18]使用Wi-Fi 信號強度作為指紋特征,采用CNN 進行指紋匹配,平均定位誤差為1.05 m.文獻[19]使用CSI 的時頻矩陣作為定位特征,采用CNN 對指紋特征進行匹配,將定位建模成一個分類問題,平均定位誤差為1.365 4 m.文獻[20]采用深度CNN 對Wi-Fi CSI 圖像進行匹配,得到目標點位置,在實驗室環(huán)境中的平均定位誤差為1.788 2 m.但是現(xiàn)有CNN 會對每個通道賦予相同的權重,不能有效地突出重要特征,使最終提取的特征表達能力不強,并且對于混合指紋特征,不能很好地捕獲混合特征之間的相互依賴關系,無法最大限度地發(fā)揮混合指紋的優(yōu)勢,降低后續(xù)指紋特征匹配的準確度,進而影響定位精度.
本文針對上述問題,提出一種基于ECA-CNN 的混合指紋室內(nèi)定位方法(hybrid fingerprint indoor localiza tion method based on ECA-CNN, ECACon-HF),主要貢獻有3 點:
1) 使用可見光強度和BLE RSSI 構建混合特征指紋,降低BLE 指紋不穩(wěn)定對定位精度的影響,并且增強不同位置指紋特征的區(qū)分度,提升指紋匹配的正確率,進而提高定位精度. 本文采用的可見光強度無需使用可見光通信技術獲取,大大降低了設備復雜度.
2) 在CNN 中引入高效通道注意力(efficient channel attention, ECA)模塊,構建ECA-CNN 定位模型,將目標點與各參考點進行匹配.ECA 模塊可以自適應地提取指紋中的重要信息,增強特征表達能力,抑制環(huán)境干擾等無效特征;并且ECA 模塊通過跨通道交互策略顯式建模通道之間的相互依賴關系,捕獲沿通道方向信息量最大的特征表示,融合可見光指紋與BLE 指紋中的位置關聯(lián)性,充分發(fā)揮混合指紋的優(yōu)勢,提高指紋特征匹配的正確率.
3) 搭建實驗環(huán)境,構建可見光強度和BLE RSSI混合特征指紋數(shù)據(jù)集,并在該數(shù)據(jù)集上驗證了本文所提方法ECACon-HF 的有效性. 實驗結果表明,ECACon-HF 在混合指紋上的定位精度高于在單一指紋上的定位精度,并且ECACon-HF 相比其他室內(nèi)定位方法,定位精度具有明顯優(yōu)勢.
在使用混合特征指紋方面,文獻[9] 使用Wi-Fi信號的RSS 和CSI 混合特征構建指紋,并使用克拉美-羅下界(Cramer-Rao lower bound, CRLB)證明了增加指紋類型能夠提高定位精度,實驗結果表明使用混合特征比使用單一特征定位精度提高了20.3%. 文獻[10]使用地磁場和光強的混合指紋,并使用深度長短期記憶網(wǎng)絡進行指紋匹配,在走廊和實驗室環(huán)境下分別做了實驗,實驗室環(huán)境的精度大于走廊環(huán)境的精度,該文獻還做了僅使用地磁數(shù)據(jù)的定位實驗,證明了使用混合指紋的定位精度高于使用單一指紋的定位精度. 但是不同位置之間可見光和地磁場的指紋特征區(qū)分度不夠,定位精度未能達到1 m 以內(nèi),并且該文獻需要處理信號序列中的時間相關性,增加了時間復雜度. 文獻[11] 提出了一種結合BLE和Wi-Fi 的定位方法,并且在KNN 的基礎上提出了一種新的定位算法,稱為i-KNN. i-KNN 算法首先根據(jù)BLE 設備與Wi-Fi RSS 的距離對初始Wi-Fi 數(shù)據(jù)集進行過濾,然后再使用KNN 算法對過濾后的Wi-Fi 指紋進行匹配,該文獻并沒有使用Wi-Fi 與BLE 構建混合特征指紋,并且Wi-Fi 和BLE 信號穩(wěn)定性較差的問題仍然沒有得到解決,該文方法的定位誤差仍然在2 m 以上. 文獻[21]提出Magicol 系統(tǒng),將磁場強度和Wi-Fi RSSI 結合起來構建指紋圖用于定位和跟蹤. 但是由于使用KNN 方法進行指紋匹配會存在較大誤差以及Wi-Fi 信號的不穩(wěn)定,該文方法中90%的定位誤差在3 m 以上. 文獻[22]提出了一種磁場與可見光混合指紋圖和一種魯棒的擴展粒子群優(yōu)化算法,但是80%的誤差僅在1.7 m 以內(nèi).
在使用CNN 進行在線指紋匹配方面,文獻[18]實現(xiàn)基于CNN 的室內(nèi)定位方法,該文獻使用Wi-Fi RSSI 指紋,并且使用一種基于連續(xù)小波變換的特征提取方法,平均定位誤差為1.05 m. 文獻[19]提出了第1 個基于CNN 的Wi-Fi 定位算法ConFi,該文獻中CSI 組織成一個類似于圖像的時頻矩陣,并用作定位的特征,ConFi 將定位建模為一個分類問題,平均定位誤差為1.365 4 m. 文獻[20] 提出了第1 個采用深度CNN 進行室內(nèi)定位的系統(tǒng)CiFi,該系統(tǒng)從5 GHz Wi-Fi 中提取CSI 的相位數(shù)據(jù)用于估計到達角,創(chuàng)建估計到達角圖像來訓練深度CNN,平均定位誤差為1.788 2 m. 文獻[23]提出了一種基于CNN 的Wi-Fi 指紋識別方法,以解決基于深度神經(jīng)網(wǎng)絡的方法對接收信號波動(由多徑引起)的敏感性,該文獻中的實驗證明了該方法的性能優(yōu)于基于深度神經(jīng)網(wǎng)絡的方法. 文獻[24] 使用地磁場構建指紋數(shù)據(jù)庫,并使用CNN 計算位置,CNN 將用戶收集的地磁場數(shù)據(jù)與數(shù)據(jù)庫匹配,并且設計了一種投票機制來組合來自多個CNN 的預測,并最終估計用戶的位置. 文獻[25]使用CSI 作為指紋圖像來表達Wi-Fi 信號的空間和時間特征,同時,提出了一種基于CNN 和雙因子增強變分貝葉斯自適應卡爾曼濾波器的室內(nèi)定位算法,在復雜的室內(nèi)環(huán)境下,利用時變測量噪聲和過程噪聲實現(xiàn)精確的位置估計. 文獻[26]通過計算來自重要貢獻Wi-Fi 接入點的不同RSSI 比率構建比率指紋,然后將比率指紋和RSSI 相結合構建混合指紋,以增強室內(nèi)環(huán)境特征的表達. 此外,還構建了一個CNN 體系結構,用于從復雜的混合指紋中學習室內(nèi)位置的重要特征. 使用CNN 進行指紋匹配的方法仍然存在對指紋中的重要特征表達不突出的問題,導致指紋匹配的準確度降低,影響定位精度.
ECA 模塊可以應用于特征分類、目標檢測、實例分割等領域. 文獻[27]提出了一種新的高效通道注意力深度密集卷積神經(jīng)網(wǎng)絡用于對胃鏡圖像食管疾病進行分類,使用ECA 加強網(wǎng)絡中的特征傳播,以突出和提取與不同類型病變之間細微差異相關的特征. 文獻[28]提出了一種有效用于小腦分割的通道注意U-Net 算法,該算法加入ECA 模塊增強特征表示,抑制無效特征,并在不影響性能的前提下,大大減少了模型參數(shù)的數(shù)量. 文獻[29]提出一種多目標跟蹤方法,在主干網(wǎng)絡中引入ECA 模塊,可以自適應地提取圖像中的重要信息,提高目標檢測的準確度.
本文提出的方法ECACon-HF,首先利用可見光強度和BLE RSSI 構建混合指紋,降低BLE 指紋不穩(wěn)定的影響,并解決單一指紋位置特征區(qū)分度低的問題;同時,在CNN 中引入ECA 模塊,構建ECA-CNN定位模型,增強混合指紋特征表達能力,更有效地利用混合指紋優(yōu)勢,從而提高指紋特征匹配的正確率.ECACon-HF 的總體框架如圖1 所示.

Fig. 1 Overall framework of ECACon-HF圖1 ECACon-HF 總體框架
在指紋融合階段,利用可見光強度與BLE RSSI融合構建混合指紋增強不同位置之間的特征差異性.本文將可見光強度與BLE RSSI 融合成2 通道的混合指紋,以便ECA 模塊能夠有效地捕獲通道之間的相互依賴關系,提取可見光指紋與BLE 指紋中的位置關聯(lián)性,充分發(fā)揮混合指紋的優(yōu)勢. 在目標點與參考點匹配階段,通過訓練好的ECA-CNN 模型得到與目標點最匹配的k個參考點,對與目標點最匹配的k個參考點坐標進行加權平均,計算出目標點坐標.
可見光強度區(qū)別于可見光通信信號,它具有穩(wěn)定性高且特征易采集的特性,但不同位置之間的特征區(qū)分度不強.BLE RSSI 特征相比于CSI 特征具有數(shù)據(jù)易處理和易采集的特性,同時在不同位置之間具有較高的區(qū)分度,但BLE 信號易受環(huán)境影響,具有較強的波動性. 本文提出使用可見光強度和BLE RSSI構建混合特征指紋. 一方面,在混合指紋當中,有效利用可見光強度的穩(wěn)定性,可以彌補BLE RSSI 值波動對定位精度造成的影響;另一方面,通過使用混合特征可以增加特征維度,增強不同位置之間的特征差異性,從而改善僅使用單一可見光強度帶來的不同位置之間區(qū)分度低的問題,進而提高CNN 模型的定位精度,減小定位誤差. 具體指紋融合方法為:
1)將某位置的可見光光照強度數(shù)據(jù)表示為(l1,l2, …,lα),其中α為LED 燈的個數(shù),li表示第i個LED燈在該位置處的光強度,i=1, 2, …,α.
2)將該位置的BLE RSSI 數(shù)據(jù)表示為(b1,b2, …,bβ),其中β為BLE 信標的個數(shù),bj表示第j個BLE 信標在該位置處的信號強度,j=1, 2, …,β.
3)利用同一位置下采集到的可見光光照強度數(shù)據(jù)與BLE RSSI 數(shù)據(jù)融合構建混合指紋F,F(xiàn)表示為:
我們將可見光強度與BLE RSSI 融合成2 通道混合指紋數(shù)據(jù),這樣能夠通過跨通道交互策略更加有效地獲取通道之間的相互依賴關系,捕獲沿通道方向信息量最大的特征表示,獲取可見光指紋與BLE指紋中的位置關聯(lián)性,充分發(fā)揮混合指紋的優(yōu)勢,使提取出來的特征具有更強的表達能力.
為了評估混合指紋的穩(wěn)定性,我們在實驗場地采集了20 個位置的指紋數(shù)據(jù),即BLE RSSI 數(shù)據(jù)和可見光強度數(shù)據(jù),每個位置的樣本數(shù)為10. 同時根據(jù)ECACon-HF 方法構建BLE RSSI 和可見光強度的混合指紋數(shù)據(jù). 我們首先對每個樣本中的數(shù)據(jù)取平均值,再計算每個位置10 個樣本平均值的方差,用于表示各位置指紋的穩(wěn)定性. 從圖2 可以看出,由于可見光強度具有很高的穩(wěn)定性,每個位置可見光強度指紋的方差都是最小的. 每個位置混合指紋的方差都要小于BLE 指紋的方差,代表混合指紋比BLE 指紋穩(wěn)定,這是因為可見光強度穩(wěn)定性較高,將其與BLE RSSI 混合能夠使混合指紋的穩(wěn)定性整體高于BLE 指紋.

Fig. 2 Stability comparison chart of BLE fingerprint and mixed fingerprint圖2 BLE 指紋與混合指紋穩(wěn)定性對比圖
為了評估混合指紋的位置特征差異性,定義矩陣D,D中的元素為 ξ個不同位置之間指紋的歐氏距離,D的表示如式(2)所示.
其中dij表示位置i與位置j之間指紋的歐氏距離.
我們同樣使用這20 個位置的指紋數(shù)據(jù),通過式(2)分別針對BLE RSSI 指紋、可見光強度指紋與BLE RSSI 和可見光強度的混合指紋構建矩陣D的熱力圖,結果如圖3 所示. 從圖3(a)可以看出,部分位置之間具有較高的特征差異性,說明BLE RSSI 指紋具有一定的特征區(qū)分度;而圖3(b)中不同位置之間的特征差異性較小,說明可見光強度指紋特征區(qū)分度不夠明顯. 從圖3(c)中可以看出,BLE RSSI 和可見光強度的混合指紋在大部分位置之間具有較大的差異性,只有很少部分的位置之間差異性較小,混合指紋的特征區(qū)分度要大于BLE RSSI 指紋和可見光強度指紋. 因此,使用混合指紋能夠增加不同位置之間的特征差異性.

Fig. 3 Heat map of matrix D under three fingerprints圖3 3 種指紋下的矩陣D 的熱力圖
2.2.1 ECA 模塊
ECA 作為通道注意力的一種,是對擠壓與激發(fā)網(wǎng)絡(squeeze-and-excitation networks, SENet)的改進. ECA使用一種不降維的局部跨通道交互策略,該策略通過快速1 維卷積有效實現(xiàn),在保證性能的同時顯著降低模型的復雜度[30].
ECA 的結構如圖4 所示. 首先,使用全局平均池化(global average pooling, GAP)獲得聚合特征. 然后使用卷積核大小為K的1 維卷積實現(xiàn)局部跨通道交互,這里K的大小決定跨通道交互的覆蓋范圍,K的大小是由通道數(shù)C自適應確定的,K與C之間存在一個映射關系,如式(3)和式(4)所示.

Fig. 4 Structure diagram of ECA圖4 ECA 結構圖
其中γ與b為自定義參數(shù),分別設置為γ= 2 和b= 1,|·|odd表示距離最近的奇數(shù). 最后通過Sigmoid 函數(shù)得到通道權重,將生成的通道權重與輸入特征逐元素相 乘得到帶有注意力的特征.
2.2.2 ECA-CNN 定位模型
可見光強度和BLE RSSI 的混合指紋融合了可見光與BLE 的優(yōu)勢,比如混合指紋的穩(wěn)定性更好、特征區(qū)分度更高,同時也會帶有二者的一些劣勢,比如BLE 信號易受干擾而不穩(wěn)定,會使混合指紋中帶有環(huán)境干擾等無效特征,傳統(tǒng)CNN 在指紋匹配階段無法對這些無效特征進行抑制,同時也不能對混合指紋的位置特征相關性進行表示. 針對這一問題,本文將ECA 模塊引入到CNN 中,構建ECA-CNN 定位模型,如圖5 所示.

Fig. 5 ECA-CNN model structure圖5 ECA-CNN 模型結構
我們將2 通道可見光強度和BLE RSSI 的混合指紋作為ECA-CNN 模型的輸入,該模型包含4 層卷積層,卷積核的大小為5×5,每個卷積層使用修正線性單元(rectified linear unit, ReLU)作為激活函數(shù),在每個卷積層后面添加ECA 模塊,為每一層卷積層提取的特征添加通道注意力,2 通道混合指紋經(jīng)過4 層卷積之后通道數(shù)分別變?yōu)?6,32,64,128. 使用一層全連接層作為模型的輸出層,并將全連接層的輸出結果使用Softmax 函數(shù)處理,得到目標點與各參考點的匹配概率. Softmax 函數(shù)輸出第i個參考點與目標點之間的匹配概率Pi,如式(5)所示.
其中R為參考點個數(shù),zi為全連接層中第i個參考點處的輸出. 對于ECA-CNN 模型的訓練,使用Adam 優(yōu)化器以及交叉熵損失函數(shù),選出與目標點最匹配的k個參考點r1,r2,…,rk,這些參考點與目標點之間的匹配概率分別為P1,P2,…,Pk,分別計算這k個參考點的權值,第μ個參考點的權值Wμ的計算如式(6)所示.
根據(jù)上述k個參考點,計算目標點的位置坐標,如式(7)所示.
ECA 模塊能夠增強指紋特征的表達能力,自適應地提取混合指紋中的重要信息,捕獲沿通道方向信息量最大的特征. 基于此,我們將可見光強度與BLE RSSI 分通道融合成2 通道混合指紋,因此能夠更有效地提取可見光強度指紋與BLE RSSI 指紋中的位置關聯(lián)性,充分發(fā)揮混合指紋的優(yōu)勢,提高指紋特征匹配的正確率,進而提高定位精度.
ECACon-HF 的工作流程如圖6 所示,該流程包括離線階段和在線階段.

Fig. 6 Overall work flow chart of ECACon-HF圖6 ECACon-HF 的總體工作流程圖
1)在離線階段,從待定位場地采集參考點處可見光強度和BLE RSSI 數(shù)據(jù)構建混合指紋,并使用參考點坐標對混合指紋進行標記,將ECA 模塊加入CNN 中構建ECA-CNN 定位模型,再用標記好的混合指紋訓練ECA-CNN 模型.
2)在在線階段,使用離線階段訓練的ECA-CNN模型對目標點與參考點進行匹配. 首先采集目標點的可見光強度和BLE RSSI 數(shù)據(jù),可見光強度與BLE RSSI 數(shù)據(jù)融合構建目標點的混合指紋,將混合指紋輸入離線階段訓練的ECA-CNN 模型得到與目標點最匹配的一組參考點,對這組參考點的坐標進行加權平均得到目標點坐標.
算法1 給出了ECACon-HF 的偽代碼.
算法1.ECACon-HF.
1)離線階段
輸入:根據(jù)2.1 節(jié)構建的參考點可見光強度與BLE RSSI 混合指紋F.
① 通過卷積操作提取指紋特征;
② 通過ECA 模塊為提取的指紋特征計算通道權重,對特征進行通道加權得到帶有注意力的特征;
③ 獲得訓練好的ECA-CNN 定位模型.
2)在線階段
輸入:根據(jù)本文2.1 節(jié)構建的目標點可見光強度與BLE RSSI 混合指紋F;
輸出:目標點坐標(x,y) .
① ECA-CNN 定位模型得到目標點與各參考點的匹配程度,z=cnn_model(F);
② Softmax 函數(shù)將匹配程度轉化成匹配概率,P=Softmax(z);
③ 選擇與目標點之間匹配概率最大的前k個參考點r1,r2,…,rk;
④ 根據(jù)式(6)計算這k個參考點的權值W1,W2,…,Wk;
⑤ 根據(jù)式(7)和式(8)計算目標點坐標(x,y) 和該目標點處的定位誤差err.
為了評估本文所提出的定位方法的性能,如圖7所示,在某研討室進行了數(shù)據(jù)采集和定位實驗. 選擇房間內(nèi)4.8 m×4 m 大小的區(qū)域作為定位區(qū)域,在房頂布置6個LED 燈和4 個BLE 節(jié)點,房間高2.7 m. 如圖8 所示,在定位區(qū)域選取20 個參考點,參考點之間間隔1 m,選取15 個測試點,測試點與參考點不重合.

Fig. 8 Distribution diagram of reference points and test points圖8 參考點和測試點分布圖
使用標智GM1040B 照度計測量可見光強度,使用iPhone 11 手機測量BLE RSSI.對于每一個參考點,采集100 個樣本數(shù)據(jù);對于每一個測試點,采集40 個樣本數(shù)據(jù).
3.2.1 混合指紋與單一指紋定位結果對比
基于3.1 節(jié)所述的實驗環(huán)境中獲取的參考點與測試點的測量數(shù)據(jù),分別構建單一可見光強度指紋庫、單一BLE RSSI 指紋庫和可見光強度與BLE RSSI 的混合指紋庫. 可見光強度數(shù)據(jù)是在無環(huán)境光干擾的情況下采集的,考慮到實際情況中可見光強度容易受日照、時間等因素影響,本文通過給可見光強度增加高斯噪聲,構建了有干擾的單一可見光強度指紋庫以及有干擾的可見光強度與BLE RSSI 的混合指紋庫,進行實驗.
在可見光強度無干擾的情況下,采用ECACon-HF 方法分別基于單一可見光強度指紋、單一BLE RSSI 指紋、可見光強度與BLE RSSI 的混合指紋進行定位,3 組實驗的累計誤差分布對比如圖9 所示. 由實驗結果可知,使用單一BLE RSSI 指紋時,僅有35%的定位誤差小于等于1 m;采用單一可見光強度指紋和混合指紋時均能100%達到定位誤差小于等于1 m;而采用單一可見光強度指紋時,有81%定位誤差小于等于0.3 m,使用混合指紋時,85%的定位誤差小于等于0.3 m. 混合指紋定位精度整體高于單一可見光強度指紋.

Fig. 9 Comparison of localization results of mixed fingerprint and single fingerprint without interference圖9 無干擾情況下混合指紋與單一指紋定位結果對比
表1 為在可見光強度無干擾的情況下使用3 種指紋時的平均定位誤差和最大定位的誤差的對比.從實驗結果可以看出,使用混合指紋時平均定位誤差為0.316 m,相比于單一使用可見光強度指紋時的0.325 m 和單一使用BLE RSSI 指紋時的1.509 m,分別減小了3%和 79%. 使用混合指紋時最大定位誤差為0.705 m,其值與使用可見光指紋時的基本一致,相比于單一使用BLE RSSI 指紋時的4.321 m 減小了83%.

Table 1 Comparison of Different Fingerprint Localization Errors Without Interference表1 無干擾情況下不同指紋定位誤差對比m
在可見光強度有干擾的情況下,我們進行了混合指紋與單一指紋的對比實驗,實驗結果如圖10 所示. 從圖10 可知,混合指紋相比于單一指紋的定位結果差別較大,優(yōu)勢更加明顯,使用混合指紋時能100%達到定位誤差小于等于1 m,而使用單一可見光指紋時僅有89% 的定位誤差在1 m 以下;在高精度方面,使用混合指紋67%的定位誤差都小于等于0.3 m,而使用單一可見光指紋僅有49%的定位誤差小于等于0.3 m.

Fig. 10 Comparison of localization results between mixed fingerprint and single fingerprint with interference圖10 有干擾情況下混合指紋與單一指紋定位結果對比
有干擾條件下的不同指紋定位實驗平均定位誤差和最大定位誤差如表2 所示. 從實驗結果可以看出,使用混合指紋時平均定位誤差為0.406 m,相比于單一使用可見光強度指紋時的0.547 m 和使用BLE RSSI 指紋時的1.509 m,分別減小了26% 和73%. 使用混合指紋時最大定位誤差為0.824 m,相比于使用可見光強度指紋時的1.461 m 和使用BLE RSSI 指紋時的4.321 m 分別減小了44%和81%.

Table 2 Comparison of Different Fingerprint Localization Errors with Interference表2 有干擾下不同指紋定位誤差對比m
綜上所述,在可見光強度無干擾的情況下,可見光強度較為穩(wěn)定,從而導致定位模型在提取混合指紋特征時BLE RSSI 特征所產(chǎn)生的影響很小,最終混合指紋的定位結果具有優(yōu)勢,但和單一可見光強度指紋的定位結果接近. 在可見光強度有干擾的情況下,基于指紋作用的互補特性,混合指紋的定位優(yōu)勢更為明顯,結果均優(yōu)于單一指紋的定位效果.
為了驗證使用混合指紋是否會增加計算復雜度,導致定位延遲增大,我們給出了使用不同類型的指紋在無干擾情況下進行定位的執(zhí)行時間,如表3 所示. 可以看出使用混合指紋時的執(zhí)行時間和使用單一指紋時的執(zhí)行時間相近,由此可以說明使用混合指紋不會導致計算復雜度大幅度增加.

Table 3 Execution Time Under Different Fingerprints表3 不同指紋下的執(zhí)行時間s
3.2.2 模型參數(shù)對定位結果的影響
本節(jié)分別為ECA-CNN 模型設置不同的參數(shù)進行試驗. 本節(jié)及以后的實驗中均采用無干擾的指紋數(shù)據(jù). 首先比較不同的迭代次數(shù)對實驗結果的影響,如表4 所示,我們分別對比了迭代次數(shù)為100,200,300,400 時的結果. 從實驗結果中可以看到,迭代200 次時定位誤差最小,并且在迭代200 次時模型的損失就可以降到最小,因此本文對ECA-CNN 模型的訓練選用200 次迭代.

Table 4 Influence of Different Iterations表4 不同迭代次數(shù)的影響
此外,我們還做了對比實驗,比較了不同的卷積核大小對實驗結果的影響,如表5 所示,我們分別將卷積核大小設置為2×2,2×3,2×5,2×6,3×3,5×5. 從實驗結果中可以看出,卷積核大小為5×5 時定位誤差最小,并且5×5 大小的卷積核能夠使指紋數(shù)據(jù)的大小保持不變,因此本文將ECA-CNN 模型的卷積核大小設置為5×5.

Table 5 Influence of Different Convolution Kernel Sizes表5 不同卷積核大小的影響
最后,我們還比較了卷積層的數(shù)量對實驗結果的影響,如表6 所示,我們令卷積層的數(shù)量分別為2,3,4,5,6. 從實驗結果可以看出,4 層卷積層的定位誤差最小,因此本文采用4 層卷積層.

Table 6 Influence of Different Number of Convolution Layers表6 不同卷積層數(shù)量的影響
3.2.3 網(wǎng)絡模型對比
本節(jié)使用ECACon-HF 分別與不引入注意力的CNN 定位方法和引入自注意力的CNN 定位方法進行比較.
首先,為了證明ECA 模塊的有效性,分別使用ECACon-HF 與不引入注意力的CNN 定位方法在混合指紋上進行了實驗,實驗結果如表7 所示. ECACon-HF 的平均定位誤差和最大定位誤差都要小于不引入注意力的CNN 定位方法. 說明在CNN 中引入ECA 模塊能夠自適應地提取混合指紋中的重要信息,增強特征表達能力,抑制指紋中的環(huán)境干擾等無效特征. 并且能夠通過跨通道交互策略捕獲通道之間的相互依賴關系,更有效地提取可見光強度指紋與BLE RSSI 指紋中的位置關聯(lián)性,充分發(fā)揮混合指紋的優(yōu)勢,提高指紋特征匹配的正確率,進而提高定位精度.

Table 7 Comparison of ECACon-HF, CNN and CNN with Introducing Self Attention表7 ECACon-HF 與CNN、引入自注意力的CNN 對比 m
其次,將ECACon-HF 與引入自注意力的CNN 定位方法進行對比,自注意力機制是注意力機制的改進,其減少了對外部信息的依賴,更擅長捕捉數(shù)據(jù)或特征的內(nèi)部相關性. 實驗結果如表7 所示,由于將2種指紋混合后指紋內(nèi)部的相關性不能很好地表示指紋的位置特征,而本文在CNN 中引入ECA 模塊,并將可見光強度指紋與BLE RSSI 指紋進行分通道混合,因此能有效提取可見光與BLE 之間的位置關聯(lián)性,充分發(fā)揮混合指紋的優(yōu)勢,因此ECACon-HF 具有更高的定位精度.
3.2.4 不同方法定位精度對比
本節(jié)將ECACon-HF 與其他定位方法進行對比,為了避免由于采用不同指紋特征對精度產(chǎn)生的影響,所有實驗結果均基于本文構建的可見光強度和BLE RSSI 混合指紋庫進行測試統(tǒng)計.
首先將ECACon-HF 與傳統(tǒng)KNN 方法、WKNN方法的定位結果進行對比,3 種方法的誤差累計分布如圖11 所示. 實驗結果表明,KNN 與WKNN 55%的誤差小于等于1 m,而ECACon-HF 測試誤差均在1 m以內(nèi). 在高精度方面,KNN 與WKNN 都只有16%的誤差小于等于0.3 m,與ECACon-HF 85%小于等于0.3 m 的定位誤差對比差距很大.ECACon-HF 相比于KNN 和WKNN 定位精度都有很大的提升.

Fig. 11 Comparison of error cumulative distribution among ECACon-HF, KNN and WKNN圖11 ECACon-HF 與KNN 和WKNN 的誤差累計分布對比
其次本文將ECACon-HF 與其他基于CNN 的室內(nèi)定位方法進行對比. 基于本文構建的無干擾混合指紋庫,分別采用ECACon-HF、文獻[18]中的方法、ConFi 方法[19]以及CiFi 方法[20]對測試點進行定位誤差統(tǒng)計,這4 種方法的累計誤差分布如圖12 所示. 實驗結果表明,文獻[18]、ConFi 以及ConFi 分別僅有83%,84%,87%的誤差小于等于1 m,相比于ECACon-HF,沒有達到100%的小于等于1 m 的定位精度. 同時,ECACon-HF 能夠達到85%的定位誤差小于等于0.3 m,而文獻[18]、ConFi 以及ConFi 分別僅有49%,59%,53%的定位誤差小于等于0.3 m. ECACon-HF 的定位精度相比其他3 種CNN 定位方法,在定位精度方面提升顯著.

Fig. 12 Comparison of error cumulative distribution among ECACon-HF and other CNN based methods圖12 ECACon-HF 與其他基于CNN 方法的誤差累計分布對比
表8 為各定位方法在3 種指紋上的平均誤差和最大誤差對比. ECACon-HF 在混合指紋上的平均定位誤差為0. 316 m, KNN 和WKNN 在混合指紋上的平均定位誤差分別為1. 090 m 和1. 089 m,ECACon-HF 的平均定位誤差相比于它們減小了71%. 不引入ECA 模塊的CNN 定位方法平均定位誤差為0. 341 m,ECACon-HF 相比于它減少了7%. 文獻[18]、ConFi 和CiFi 均基于本文所構建的混合指紋庫,平均定位誤差分別為0. 576 m,0. 569 m,0. 633 m,ECACon-HF 的平均定位誤差相比于這3 種方法分別減少了46%,45%,51%. 在最大誤差方面,ECACon-HF 在混合指紋上的定位誤差要明顯小于其他方法. 由此可見,在混合指紋庫上,ECACon-HF 具有相對的魯棒性.

Table 8 Comparison of Average Error and Maximum Error of Each Method on Three Fingerprints表8 各方法在3 種指紋上的平均誤差與最大誤差對比m
進一步分析表明,雖然ECACon-HF 在無干擾情況下,單一可見光指紋和混合指紋的最大定位誤差接近;但在有干擾的情況下,ECACon-HF 對混合指紋處理后的最大誤差仍控制在1 m 以內(nèi),相比有干擾的單一可見光指紋,最大定位誤差減小了44%. 同時,當可見光強度在有干擾的情況下,上述各方法的最大定位誤差相比無干擾情況均有所增加. 其中定位精度較高的方法中,ECACon-HF 的最大定位誤差相比無干擾指紋增加了14.4%,而CNN 方法增加了34.2%,文獻[18]增加了37.6%;而在混合指紋上定位精度較低的KNN,WKNN,ConFi,CiFi 等方法,由于對混合指紋特征不敏感,最大定位誤差沒有明顯差異. 由此可以看出,指紋在受到干擾的影響下,對具有高定位精度的模型會產(chǎn)生較大影響,但ECACon-HF 相比于其他方法對混合指紋的抗干擾處理具有明顯優(yōu)勢.
綜上所述,ECACon-HF 針對混合指紋庫的定位精度比單一指紋庫更具優(yōu)勢. 同時,基于混合指紋庫,ECACon-HF 不論是相比于傳統(tǒng)KNN 與WKNN,還是其他基于CNN 的室內(nèi)定位方法,定位精度均得到了提升.
本文提出一種基于ECA-CNN 的混合指紋室內(nèi)定位方法(ECACon-HF). 首先,利用可見光強度和BLE RSSI 混合指紋有效降低了BLE 指紋不穩(wěn)定的影響,并增強了不同位置間的特征差異性. 其次,將ECA 模塊加入CNN 中構建ECA-CNN 定位模型,可以自適應地提取混合指紋中的重要信息,增強特征表達能力,抑制指紋中的環(huán)境干擾等無效特征,并且能夠更有效地提取可見光強度指紋與BLE RSSI 指紋中的位置關聯(lián)性,充分發(fā)揮混合指紋的優(yōu)勢. 通過實驗驗證了所提方法的有效性,ECACon-HF 在本文構建的混合指紋庫上可以達到0.316 m 的定位精度,高于單一指紋上的定位精度,并且ECACon-HF 相比其他室內(nèi)定位方法的定位精度具有明顯優(yōu)勢. 從本文實驗結果中可以看出,在無干擾情況下,可見光強度指紋的定位精度較高,但如何避免環(huán)境對可見光強度的干擾是個問題,因此未來我們將考慮使用強化學習控制環(huán)境中的可見光強度,使光強度穩(wěn)定,減少自然光與遮擋對光強度的影響進而降低可見光定位的應用場景限制.
作者貢獻聲明:王正康負責論文撰寫、實驗和模型方案設計和算法的提出;駱冰清負責模型方案設計和算法的提出,并對論文提出修改意見.