魏玉婷,王森,逄德明,陳穎文
(1.國(guó)防科技大學(xué)計(jì)算機(jī)學(xué)院,湖南 長(zhǎng)沙 410015;2.國(guó)家信息中心,北京 100038)
2000 年以來,無線技術(shù)快速發(fā)展,Wi-Fi 覆蓋越來越廣,幾乎家家戶戶、各大活動(dòng)場(chǎng)所都有部署,因此使用無線CSI(Channel State Information,信道狀態(tài)信息)來感知人類活動(dòng)成為可能,不需要部署專用的設(shè)備傳感器就能感知人類活動(dòng),可以使用CSI 來持續(xù)檢測(cè)無線信道的變化?;跓o線CSI 感知人類活動(dòng)的主要工作原理為:通過發(fā)射器產(chǎn)生的無線電波在傳播過程中會(huì)發(fā)生直射、反射和散射等物理現(xiàn)象,從而形成多個(gè)傳播路徑,這使得在信號(hào)接收機(jī)處形成的多徑疊加信號(hào)攜帶了反映信號(hào)傳播空間的信息[1]。比如,當(dāng)人在室內(nèi)活動(dòng)時(shí),如圖1 所示,有一對(duì)收發(fā)機(jī),當(dāng)人移動(dòng)時(shí),人體反射的Wi-Fi信號(hào)會(huì)隨之發(fā)生變化,除此之外,家具、墻壁等也會(huì)反射信號(hào)一起疊加到接收機(jī)處,從而可以根據(jù)信號(hào)的變化,再結(jié)合人工智能的方法感知以達(dá)到識(shí)別人類活動(dòng)的目的。因?yàn)槿耸腔顒?dòng)的,家具墻壁等物體是靜止的,所以人體產(chǎn)生的反射路徑稱為動(dòng)態(tài)路徑,家具、墻壁等產(chǎn)生的反射路徑稱為靜態(tài)路徑?,F(xiàn)如今,智能無線感知已被廣泛應(yīng)用到多個(gè)領(lǐng)域,比如感知人類的日常行為[2-3]、檢測(cè)人們的健康[4-5]和手勢(shì)識(shí)別[6-7]等。
圖1 人體移動(dòng)造成的多徑傳播變化
目前使用無線CSI 來感知人類活動(dòng)主要分為四個(gè)步驟:數(shù)據(jù)采集、數(shù)據(jù)預(yù)處理、特征提取和建模分類[8]。通常采用一個(gè)發(fā)送機(jī)和一個(gè)或多個(gè)接收機(jī)采集數(shù)據(jù),發(fā)送機(jī)一般為路由器,接收機(jī)一般為裝有Intel 5300 網(wǎng)卡的筆記本電腦,且每個(gè)接收機(jī)會(huì)配備三個(gè)全向天線,分別對(duì)應(yīng)三個(gè)CSI 流。
由于原始數(shù)據(jù)往往會(huì)不完整并且可能包含許多錯(cuò)誤和噪音,所以在特征提取之前,首先要進(jìn)行數(shù)據(jù)預(yù)處理,通常這個(gè)過程會(huì)采用線性插值、帶通濾波器去除噪聲和主成分分析選取子載波的方法。但是,帶通濾波器通過平滑濾波去噪,在這過程中不僅會(huì)消除噪聲,也會(huì)去除原始信號(hào)中的高頻部分,且直接對(duì)CSI 原始信息進(jìn)行去噪,往往不能消除原始CSI 振幅中的高脈沖噪聲和突發(fā)噪聲。然后進(jìn)行特征提取,這個(gè)環(huán)節(jié)的重點(diǎn)是建立信號(hào)與人類活動(dòng)之間的對(duì)應(yīng)關(guān)系,現(xiàn)有系統(tǒng)一般是在時(shí)域中提取振幅和相位作為分類的特征,但是同種活動(dòng)在不同的位置或方向進(jìn)行時(shí)可能會(huì)產(chǎn)生不同的CSI 信號(hào)。最后對(duì)提取的特征進(jìn)行分類識(shí)別,傳統(tǒng)的方法會(huì)采用支持向量機(jī)或K近鄰算法,但前者解決多分類問題較為困難,常用于解決二分類問題且難以訓(xùn)練大規(guī)模樣本;后者的預(yù)測(cè)結(jié)果容易受噪聲數(shù)據(jù)影響并且K值的選擇不固定。使用智能無線感知做手勢(shì)識(shí)別,既沒有傳統(tǒng)攝像頭對(duì)光線的要求,也不存在可穿戴傳感器給人們帶來的不便,且在智能家居、人機(jī)交互等方面廣泛被應(yīng)用,所以國(guó)內(nèi)外許多研究學(xué)者對(duì)基于智能無線感知的手勢(shì)識(shí)別進(jìn)行了許多研究,已經(jīng)取得了很大的進(jìn)展,識(shí)別準(zhǔn)確率在90%左右且應(yīng)用前景也很樂觀。但是,目前對(duì)該領(lǐng)域的研究存在的主要問題是有效特征缺失和分類模型精度低,由于大部分提取的特征都依賴于所部署的環(huán)境,所以當(dāng)環(huán)境發(fā)生變化時(shí)感知性能就會(huì)較低。對(duì)于分類模型,無線信號(hào)在實(shí)際傳播過程中會(huì)有衍射、散射等情況,導(dǎo)致無線感知的實(shí)際結(jié)果和模型的預(yù)測(cè)結(jié)果之間存在差異,造成識(shí)別精度低。
鑒于此,本文基于小波分析和遷移學(xué)習(xí)的方法,提出了一個(gè)智能無線感知識(shí)別手勢(shì)的方法,在數(shù)據(jù)預(yù)處理部分,考慮到無線信號(hào)實(shí)際傳播與理想有差異,所以采用CSI 比值和小波去噪消除原始信息中的噪聲,再在主成分分析的基礎(chǔ)上,采用最大比合并法將子載波合成一個(gè)信噪比最大的波;隨后再將預(yù)處理好后的時(shí)序數(shù)據(jù)轉(zhuǎn)化為圖像特征,在時(shí)頻域中分析信號(hào)并增加分類的可解釋性;最后采用預(yù)訓(xùn)練好的卷積神經(jīng)網(wǎng)絡(luò)分類識(shí)別,提高識(shí)別準(zhǔn)確率和可遷移性。
方法設(shè)計(jì)主要分為三個(gè)部分:數(shù)據(jù)預(yù)處理、特征提取和分類。在Widar 數(shù)據(jù)集中選取了6 個(gè)手勢(shì)并獲取了它們的原始信號(hào)。在數(shù)據(jù)預(yù)處理部分,先進(jìn)行線性插值統(tǒng)一所有記錄通道的采樣率,再使用CSI 比值和離散小波變換消除信號(hào)里的高脈沖噪聲和突發(fā)噪聲;在特征提取部分,采用連續(xù)小波變換生成譜圖;最后在分類部分,采用預(yù)訓(xùn)練好的卷積神經(jīng)網(wǎng)絡(luò)對(duì)手勢(shì)進(jìn)行分類。
CSI[9-10]是一種描述信道的數(shù)據(jù),可以表示通信鏈路之間的傳播特性,攜帶了在某時(shí)間測(cè)量的載波頻率的信道頻率響應(yīng)。令發(fā)射機(jī)信號(hào)為X(f,t),接收機(jī)信號(hào)為Y(f,t),其中f表示載波頻率,它們之間的關(guān)系如式(1)所示:
H(f,t)即在時(shí)間t下測(cè)量的載波頻率為f的信道頻率響應(yīng),它是一個(gè)復(fù)值;ak(f,t)表示第k條路徑衰減和初始相位偏移;表示第k條路徑上有一個(gè)傳播延遲為τk(t)的相位偏移;表示第k條路徑上收發(fā)機(jī)之間載波頻率差為Δf造成的相位偏移。則H(f,t)可以由式(2)表示:
CSI 可以通過Intel 5300 和Atheros 無線網(wǎng)卡獲取,采用OFDM 調(diào)制方式,每個(gè)CSI 的測(cè)量都包含30 個(gè)子載波,每個(gè)子載波的維度和收發(fā)機(jī)的天線數(shù)有關(guān),將給定天線對(duì)和子載波頻率得到的一系列信道頻率響應(yīng)值稱為CSI 流。
由于收集到的原始CSI 數(shù)據(jù)包含了大量的噪聲而不能直接使用,所以先對(duì)其進(jìn)行預(yù)處理,消除載波偏差和去除噪聲。先通過線性插值的方法使所有記錄通道具有相同的采樣率,這樣可以解決因非視線鏈接和穿墻等因素造成某些鏈路信號(hào)較弱從而導(dǎo)致的丟包問題。然后,將同一接收機(jī)的兩個(gè)天線的振幅求比值,這樣可以消除原始CSI 振幅中難以消除的高脈沖噪聲和突發(fā)噪聲。因?yàn)槊}沖噪聲在同一接收機(jī)上是用相同的電平放大每個(gè)天線的功率,雖然功率會(huì)隨著時(shí)間的推移變化,但是在同一接收器上的不同天線之間的功率是一致的,這樣處理后還可以顯著擴(kuò)大傳感范圍和傳感精度[11]。這里會(huì)計(jì)算天線的離散系數(shù),再選取最大的兩個(gè)天線的CSI 求比值,進(jìn)行CSI 比值后的結(jié)果明顯更清晰、噪聲更少,如圖2所示。最后,因?yàn)槊總€(gè)CSI 都有30 個(gè)子載波,根據(jù)每個(gè)子載波的信噪比做加權(quán)平均合成一個(gè)子載波,這樣可以獲得一個(gè)具有更高信噪比的波形[12]。因?yàn)槭謩?shì)活動(dòng)和噪聲難以直接分離,所以先采用手勢(shì)活動(dòng)頻率范圍內(nèi)的功率譜密度與手勢(shì)活動(dòng)頻率范圍外的功率譜密度的比值去估計(jì)每個(gè)子載波的信噪比。接下來將每個(gè)子載波乘上對(duì)應(yīng)的信噪比并采用離散小波變換去噪再做主成分分析,離散小波變換可以將信號(hào)分解成幾個(gè)頻率級(jí)別,這樣可以得到需要的頻級(jí)并去除噪聲。因?yàn)榈谝恢鞒煞值姆讲钍亲畲蟮?,所以以第一主成分來調(diào)整每個(gè)子載波,并將其符號(hào)添加到每個(gè)子載波的信噪比中,再做加權(quán)平均得到一個(gè)合并的信號(hào)。這樣可以使所有子載波融合在一起,得到的子載波信噪比最大,而高的信噪比可以使得噪聲更低,有利于得到清晰的波形并分析波形與不同手勢(shì)之間的關(guān)系。
將時(shí)間序列轉(zhuǎn)換為圖像,可以將信號(hào)的全局和局部特征都加以考慮,并增加可解釋性?;诖嗽?,采用連續(xù)小波變換將時(shí)序數(shù)據(jù)轉(zhuǎn)化為圖像特征再進(jìn)行圖像分類。連續(xù)小波變換公式如式(3) 所示:
其中,x(t)是原時(shí)域信號(hào),ψ(t)是小波基,τ、s分別是平移變換和尺度變換參數(shù)。從式子可以看出,連續(xù)小波變換就是原時(shí)域信號(hào)與選定的小波基在不同尺度下變換或者平移變換下的正交值,正交值越大,說明在這個(gè)尺度和平移變換的小波基下原信號(hào)占得比重也越大。因?yàn)檫B續(xù)小波變換是選取一個(gè)中心頻率,使用尺度變換得到其他的中心頻率,再使用平移變換得到其他區(qū)間的小波基函數(shù),然后與原時(shí)域信號(hào)中對(duì)應(yīng)基函數(shù)區(qū)間的一段相乘再積分,得到原時(shí)域信號(hào)這一段含有的頻率,所以使用連續(xù)小波變換生成譜圖后,可以在圖上清楚地辨認(rèn)出原時(shí)域信號(hào)的頻率組成成分以及它們各自對(duì)應(yīng)的時(shí)間區(qū)間。這里采用連續(xù)小波變換生成譜圖而不使用短時(shí)傅里葉變換,是因?yàn)槎虝r(shí)傅里葉變換的窗口大小不易設(shè)置,窗口太小會(huì)導(dǎo)致窗內(nèi)信號(hào)太短、頻率分辨率差,窗口太大會(huì)導(dǎo)致時(shí)間分辨率差,所以這里采用連續(xù)小波變換來生成譜圖作為分類特征。
根據(jù)信號(hào)做連續(xù)小波變換后得到的小波系數(shù)生成譜圖,如圖3 所示。左邊是一個(gè)推拉的手勢(shì)動(dòng)作,右邊是一個(gè)滑的手勢(shì)動(dòng)作。從圖中可以看出兩個(gè)動(dòng)作的不同,左邊明顯由推和拉兩個(gè)手勢(shì)片段構(gòu)成,因?yàn)橛袃蓚€(gè)手勢(shì)頻段,所以單個(gè)片段的持續(xù)時(shí)間并不長(zhǎng)且頻率段較集中,跨度不大;右邊的手勢(shì)動(dòng)作只有一個(gè)手勢(shì)片段,所以條紋較長(zhǎng),時(shí)間跨越較大,并且跨越的頻段較大,頻率集中的范圍也比推拉動(dòng)作的低。因此,對(duì)信號(hào)做連續(xù)小波變換生成圖像特征后,可以在時(shí)頻域上分析手勢(shì)動(dòng)作,并增加了特征的可解釋性。
近年來,深度卷積神經(jīng)網(wǎng)絡(luò)在圖像分類中的表現(xiàn)比之前基于手工特征的圖像分類方法性能更優(yōu)越[13]。因此,利用預(yù)訓(xùn)練好的卷積神經(jīng)網(wǎng)絡(luò)對(duì)手勢(shì)進(jìn)行識(shí)別分類,這樣可以增強(qiáng)系統(tǒng)的性能,還可以應(yīng)對(duì)一些訓(xùn)練測(cè)試環(huán)境不完全相同的情形。雖然深度學(xué)習(xí)的神經(jīng)網(wǎng)絡(luò)模型在智能無線傳感中已被廣泛應(yīng)用,但仍然存在很難找到足夠訓(xùn)練數(shù)據(jù)的問題。因此,可使用從其他數(shù)據(jù)集訓(xùn)練的模型,再根據(jù)具體的問題進(jìn)行參數(shù)修改和完善,這樣就可以解決數(shù)據(jù)量不足且具有一定的普適性。
圖2 CSI比值前后對(duì)比
圖3 推拉動(dòng)作生成譜圖(左)和滑動(dòng)動(dòng)作生成譜圖(右)
這里,采用SqueezeNet[14]網(wǎng)絡(luò)進(jìn)行手勢(shì)分類。SqueezeNet是一個(gè)輕量化的網(wǎng)絡(luò),它在CNN(Convolutional Neural Networks,卷積神經(jīng)網(wǎng)絡(luò))的基礎(chǔ)上構(gòu)建了一個(gè)新的模塊,這樣可以使其參數(shù)比CNN 的參數(shù)量減少9 倍,還可以在神經(jīng)網(wǎng)絡(luò)中延遲下采樣。前者有利于在保證模型精度的情況下減少參數(shù)數(shù)量,并提高計(jì)算速度;后者有利于在有限的參數(shù)數(shù)量下最大化模型精度。在使用SqueezeNet 時(shí),因?yàn)橐獙⒕W(wǎng)絡(luò)提取的特征合并為類別概率、損失值和預(yù)測(cè)標(biāo)簽的信息,所以要將根據(jù)數(shù)據(jù)集修改參數(shù)后的新層替換原來網(wǎng)絡(luò)中的一些層?;诖嗽?,利用預(yù)訓(xùn)練好的卷積神經(jīng)網(wǎng)絡(luò)對(duì)圖像進(jìn)行分類以達(dá)到識(shí)別手勢(shì)的目的,在提高了分類準(zhǔn)確率的基礎(chǔ)上,使得手勢(shì)識(shí)別系統(tǒng)也具有一定的普適性。
本文在Widar3.0 數(shù)據(jù)集中選取了6 個(gè)基本手勢(shì)動(dòng)作,分別是推拉、從上到下掃過、鼓掌、從下到上滑過、畫字母“Z”和畫字母“N”。選取的數(shù)據(jù)是在一個(gè)空蕩的教室中采集,有兩個(gè)志愿者分別做每個(gè)動(dòng)作20 次和一個(gè)志愿者做每個(gè)動(dòng)作10 次,6 個(gè)動(dòng)作一共300 個(gè)樣本。數(shù)據(jù)都是在5.825 Hz 的165 頻道上工作,每秒發(fā)送1 000 個(gè)數(shù)據(jù)包,再使用配備Intel 5300 無線網(wǎng)卡的接收機(jī)和CSI工具獲取原始CSI。
為了驗(yàn)證上述手勢(shì)智能無線感知方法的準(zhǔn)確率,使用了2.1 節(jié)中采集的數(shù)據(jù)測(cè)試,收集的數(shù)據(jù)90%用于訓(xùn)練,10% 用于測(cè)試,手勢(shì)識(shí)別的準(zhǔn)確率平均在94% 以上。本文采用了Widar3.0 中6 個(gè)手勢(shì)動(dòng)作的數(shù)據(jù)集,驗(yàn)證上述方法對(duì)手勢(shì)識(shí)別的準(zhǔn)確率,并與Widar3.0[15]、CARM[16]的實(shí)驗(yàn)結(jié)果進(jìn)行對(duì)比,表1 是這幾種方法實(shí)驗(yàn)后的平均準(zhǔn)確率:
表1 多種方法的準(zhǔn)確率
Widar3.0 中采用了六個(gè)接收機(jī)的數(shù)據(jù),提取多個(gè)角度的多普勒速度,然后從中提取了身體坐標(biāo)系下手勢(shì)的速度剖面,最后使用GRU 深度學(xué)習(xí)模型對(duì)手勢(shì)進(jìn)行分類,復(fù)現(xiàn)后相同的數(shù)據(jù)集手勢(shì)識(shí)別準(zhǔn)確率平均在90% 左右。CARM 提出了CSI 速度模型,建立CSI 值與人類不同活動(dòng)速度之間的關(guān)系,再量化不同活動(dòng)的速度與活動(dòng)之間的關(guān)系以達(dá)到識(shí)別的目的,采用了主成分分析去噪并使用離散小波變換提取特征,最后使用隱馬爾科夫模型識(shí)別活動(dòng),復(fù)現(xiàn)后相同的數(shù)據(jù)集手勢(shì)識(shí)別準(zhǔn)確率在83% 左右。本文基于小波分析和遷移學(xué)習(xí)的原理設(shè)計(jì)的無線感知手勢(shì)識(shí)別方法,準(zhǔn)確率比Widar3.0 提高了4% 左右,比CARM 提高了10% 左右。
在本文所提的智能無線感知手勢(shì)識(shí)別方法中,從特征提取方面,提取了不同于其他手勢(shì)識(shí)別的系統(tǒng)的特征,將時(shí)序數(shù)據(jù)轉(zhuǎn)化為圖像特征,增加了特征的維度和可解釋性。從準(zhǔn)確率方面上看,該方法對(duì)手勢(shì)的準(zhǔn)確率平均在94%左右,觀察到第五個(gè)畫“Z”字和第六個(gè)畫“N”字這兩個(gè)手勢(shì)的識(shí)別容易混淆,可能是這兩個(gè)手勢(shì)在手勢(shì)片段、頻段范圍以及持續(xù)時(shí)間上都比較相似,所以導(dǎo)致識(shí)別精度降低。從普適性方面,該方法只能適用于環(huán)境不變或環(huán)境有稍微改變的情形下,在跨域的情形下,還需要進(jìn)一步研究并改善該方法,比如使用多個(gè)接收機(jī)獲取多個(gè)截面的譜圖,并使用自適應(yīng)加權(quán)圖融合多視圖的聚類方法[17]對(duì)譜圖進(jìn)行處理和融合,最后再進(jìn)行手勢(shì)識(shí)別。
本文基于小波分析和遷移學(xué)習(xí)的方法原理,使用無線信道狀態(tài)信息設(shè)計(jì)了一個(gè)手勢(shì)識(shí)別的系統(tǒng),其中包括線性插值、CSI 求比值、使用信噪比合成子載波的數(shù)據(jù)預(yù)處理和使用連續(xù)小波變換生成圖像作為特征,以及使用預(yù)訓(xùn)練好的卷積神經(jīng)網(wǎng)絡(luò)做手勢(shì)分類。同時(shí),基于現(xiàn)有的手勢(shì)數(shù)據(jù)集對(duì)上述系統(tǒng)進(jìn)行實(shí)現(xiàn)與驗(yàn)證,平均識(shí)別準(zhǔn)確率在94% 左右。接下來,會(huì)更關(guān)注目標(biāo)在不同的位置做相同手勢(shì)的問題,可以使用多個(gè)接收器獲得多個(gè)角度的譜圖視角對(duì)此問題進(jìn)行更深入的研究。