代婉婉,張 雷,薛 潘,史新國,梁 逍,丁恩杰
(1.中國礦業(yè)大學(xué) a.信息與控制工程學(xué)院;b.物聯(lián)網(wǎng)(感知礦山)研究中心,江蘇 徐州 221008;2.徐州工程學(xué)院 信息工程學(xué)院(大數(shù)據(jù)學(xué)院),江蘇 徐州 221008;3.山東能源淄博礦業(yè)集團(tuán)有限公司 信息中心,山東 淄博 225100)
當(dāng)前主流的臨床醫(yī)學(xué)檢測方法包括肺活量計(jì)、二氧化碳測定法和阻抗呼吸描記法,但這些接觸式檢測方式很容易因設(shè)備滑落而導(dǎo)致測量誤差。非接觸式呼吸測量法可分為3類:基于雷達(dá)多普勒效應(yīng)法[1]、熱成像技術(shù)法[2]、機(jī)器視覺檢測法[3]。但這3種方法分別會受環(huán)境頻段、溫度以及隱私性等限制,無法大范圍使用。因此,急需研究一種非接觸式的呼吸檢測方式來彌補(bǔ)傳統(tǒng)檢測手段的不足,實(shí)現(xiàn)非侵入式生命體征檢測。
在無線通信技術(shù)飛速發(fā)展的現(xiàn)代社會,人們開始關(guān)注無線通信的應(yīng)用領(lǐng)域,并成功地將無線技術(shù)從通信領(lǐng)域轉(zhuǎn)入感知領(lǐng)域,實(shí)現(xiàn)了基于無線感知的生命體征檢測。2015年,文獻(xiàn)[4]開發(fā)的UbiBreathe系統(tǒng)實(shí)現(xiàn)了利用無線保真(wireless fidelity,Wi-Fi)信號中的接收信號強(qiáng)度指示(received signal strength indication, RSSI)進(jìn)行人體生命體征的檢測。但是RSSI多為粗粒度信息,不夠精確。而信道狀態(tài)信息(channel state information, CSI)包含了更多細(xì)粒度信息,如CSI數(shù)據(jù)的幅值與相位信息,同時(shí)其對環(huán)境敏感度更高,適合呼吸檢測[5]。文獻(xiàn)[6]中Wi-Sleep利用CSI振幅信息,衡量睡眠狀態(tài)下的人體呼吸狀態(tài),文獻(xiàn)[7]進(jìn)一步添加了對睡眠姿勢的識別檢測模塊。文獻(xiàn)[8]中WiRelax能夠提供實(shí)時(shí)呼吸信息,并深入研究了呼吸持續(xù)的時(shí)間與深度。
雖然上述檢測系統(tǒng)解決了環(huán)境敏感度高、魯棒性低、隱私性等問題,但人體呼吸具有復(fù)雜性和多樣性,不同病癥的呼吸狀態(tài)各有不同。因此,本文在研究呼吸頻率檢測算法的基礎(chǔ)上進(jìn)一步實(shí)現(xiàn)了呼吸狀態(tài)的分類,對離群值濾除、改進(jìn)閾值去噪以及去直流等預(yù)處理操作后的子載波進(jìn)行挑選,通過交叉平移點(diǎn)算法提取呼吸頻率。使用k鄰近(k-nearest neighbor, KNN)、支持向量機(jī)(support vector machine, SVM)、反向傳播(back propagation, BP)、卷積神經(jīng)網(wǎng)絡(luò)(convolutional neural network, CNN)實(shí)現(xiàn)呼吸狀態(tài)分類,不僅解決了接觸式檢測方式的不適性問題,降低了成本,還提高了呼吸頻率的識別精度,有助于高效而準(zhǔn)確的醫(yī)護(hù)救援。
CSI是信號傳輸鏈路的信道描述,包括在通信鏈路中的信號衰減、散射等。在窄帶平坦衰落信道[9]中,CSI的頻域表示方式為:
y=Hx+n,
(1)
其中:x和y分別為傳輸和接收時(shí)的向量表示;H為信道矩陣;n為信道中的隨機(jī)噪聲。本文使用IEEE02.11.n標(biāo)準(zhǔn)協(xié)議和Intel 5300網(wǎng)卡[10],并采用數(shù)字多載波調(diào)制方案正交頻分復(fù)用(orthogonal frequency division multiplexing, OFDM)技術(shù),以30個(gè)正交子載波攜帶信號的振幅與相位信息。
通過觀察人體呼吸運(yùn)動(dòng)發(fā)現(xiàn),整個(gè)呼吸過程由胸腔周期性的前后位移組成,擴(kuò)張與收縮分別對應(yīng)吸氣和呼氣階段。在正常呼吸情況下,胸腔位移為4.2~12.0 mm。在本文中,通過將人體胸腔建模為前后收縮的半橢圓來表現(xiàn)CSI信號傳輸與人體呼吸之間的關(guān)系。如圖1所示,CSI信號在從發(fā)射端到接收端的傳輸過程中,經(jīng)人體胸腔反射造成了接收端接收信號的動(dòng)態(tài)變化。在此過程中,胸腔前后位移Δd引起的信號反射路徑最大不超過2Δd。
圖1 無線信號與胸腔變化
文獻(xiàn)[11]首次引入菲涅爾區(qū)模型作為無線電傳播理論,開發(fā)了微小胸部位移技術(shù)。菲涅爾區(qū)幾何示意圖如圖2所示,該模型是指以收發(fā)器為焦點(diǎn)的同心橢圓,假設(shè)P1、P2是兩個(gè)具有一定高度的收發(fā)裝置,對于給定的無線電波長λ,則對于橢圓上任意一點(diǎn)Q,均有式(2)所示關(guān)系:
圖2 菲涅爾區(qū)幾何示意圖
|P1Qn|+|QnP2|-|P1P2|=nλ/2,
(2)
其中:n為菲涅爾區(qū)的個(gè)數(shù)。文獻(xiàn)[11]指出超過70%的呼吸信號能量通過第一菲涅爾區(qū)域傳輸。
本文設(shè)計(jì)的基于信道狀態(tài)信息的生命體征檢測算法主要由數(shù)據(jù)采集、信號預(yù)處理、呼吸頻率提取和呼吸狀態(tài)分類組成。圖3為系統(tǒng)框圖。通過使用商用Wi-Fi設(shè)備實(shí)現(xiàn)數(shù)據(jù)采集,并將微調(diào)驅(qū)動(dòng)的通信主機(jī)裝上Intel 5300網(wǎng)卡構(gòu)成基于Wi-Fi的檢測系統(tǒng)。由于直接采集到的CSI數(shù)據(jù)包含大量的環(huán)境噪聲,無法直接進(jìn)行數(shù)據(jù)分析,因此首先進(jìn)行信號預(yù)處理獲得較為清晰的CSI振幅信息。隨后,挑選方差最大的子載波進(jìn)行交叉平移點(diǎn)算法處理提取其呼吸頻率。最后,通過對子載波進(jìn)行特征提取并構(gòu)建特征矩陣,用機(jī)器學(xué)習(xí)、深度學(xué)習(xí)算法實(shí)現(xiàn)3種呼吸狀態(tài)分類。
圖3 系統(tǒng)框圖
2.1.1 離群值濾波
CSI信號在通信鏈路中由于環(huán)境、設(shè)備等復(fù)雜因素而產(chǎn)生信號的衰落[12],使得振幅信息包含大量毛刺噪聲即異常值,因此預(yù)處理的第一步為離群值濾波。本文采用Hampel濾波器[13]。該濾波器能夠?qū)⒙湓陂]合區(qū)間[μ-γσ,μ+γσ]之外的點(diǎn)自動(dòng)識別為異常值并進(jìn)行有效地去除。其中,μ為中值,σ為中值絕對偏差。根據(jù)實(shí)驗(yàn)應(yīng)用設(shè)置,本文將γ設(shè)置為3。
2.1.2 去噪
濾除離群值后的信號仍含有因外界環(huán)境影響及自身個(gè)體差異所產(chǎn)生的噪聲,且呼吸運(yùn)動(dòng)并非平穩(wěn)信號,傳統(tǒng)的時(shí)域或頻域分析無法完全消除信號中的高頻噪聲,因此本文通過實(shí)驗(yàn)反復(fù)調(diào)節(jié)小波去噪的接近速度系數(shù),使小波系數(shù)估計(jì)值無限接近真實(shí)值,從而實(shí)現(xiàn)傳統(tǒng)閾值去噪算法的改進(jìn)。該改進(jìn)算法不僅濾除了無關(guān)噪聲,且具有平滑信號的效果,還很好地保留了波峰波谷,這對于呼吸頻率的提取至關(guān)重要。
在閾值去噪法[14]中,閾值函數(shù)關(guān)系著重構(gòu)信號的連續(xù)性與精度,直接影響去噪效果。硬閾值函數(shù)在-λ和λ處是不連續(xù)的,因此容易出現(xiàn)偽吉布斯現(xiàn)象。軟閾值是將低于某個(gè)閾值的特征值置零,雖然解決了硬閾值產(chǎn)生跳躍點(diǎn)、不具備平滑性等缺點(diǎn),但是由于信號壓縮而產(chǎn)生偏差,直接影響了信號重構(gòu)后的效果。因此均不適用于本文系統(tǒng)。
為使閾值函數(shù)具有靈活性,本文采用開方法閾值函數(shù)。先考慮djk>0的情況,設(shè)
(3)
(4)
對于一般情況,有:
(5)
因此,該方法的函數(shù)表達(dá)式為:
(6)
(7)
其中:N為相應(yīng)層小波系數(shù)的個(gè)數(shù);σ為噪聲方差。
實(shí)驗(yàn)設(shè)置數(shù)據(jù)的采集頻率為100 Hz。已知正常人體的呼吸頻率為0.167~0.667 Hz。在小波分解的過程中,分解層數(shù)與信噪分離效果、重構(gòu)信號有密切的關(guān)系,根據(jù)奈奎斯特采樣定理可得第8階細(xì)節(jié)系數(shù)頻段為0.19~0.38 Hz,符合常規(guī)的呼吸頻段。因此本實(shí)驗(yàn)設(shè)置分解層數(shù)為8。
圖4為原始信號去噪過程圖,為了更加清晰地表現(xiàn)去噪效果,選取呼吸特征最明顯的第25號子載波進(jìn)行去噪處理,原始信號因采樣頻率誤差、包邊界檢測誤差、中心頻率誤差等因素呈現(xiàn)出嘈雜的特征,如圖4a所示。經(jīng)Hampel濾波器處理后,明顯去除掉異常值,減小了環(huán)境及各種衰落造成的影響,如圖4b所示。隨后對信號進(jìn)行小波閾值去噪處理,采用開方法閾值函數(shù)對信號進(jìn)行8層分解與重構(gòu),明顯去除掉高頻噪聲,并很好地保留了波峰波谷,呈現(xiàn)出周期性呼吸特征,如圖4c所示。
圖4 第25號子載波依次處理的振幅信息
2.1.3 去直流
去噪后的CSI 數(shù)據(jù)反映出呼吸引起的周期性波動(dòng),但仍包含大量的直流分量。本文選用最小二乘法去除直流分量。最小二乘法是一種數(shù)據(jù)處理工具,用于估計(jì)信號誤差以及數(shù)據(jù)預(yù)測等操作。去除直流分量后的信號在計(jì)算呼吸頻率時(shí)更易檢測出信號的主頻,且信號處理前后波形不變,僅在縱軸上進(jìn)行上下平移。
2.2.1 子載波選擇
在數(shù)據(jù)傳輸時(shí),每個(gè)數(shù)據(jù)流中包含30個(gè)子載波,每個(gè)子載波因含有不同噪聲而呈現(xiàn)出各不相同的波形,為了減少數(shù)據(jù)處理的冗余度,本文通過挑選攜帶呼吸特征最多、噪聲影響最小、呼吸周期性最明顯的子載波來表征呼吸狀態(tài)。通過計(jì)算子載波方差反映數(shù)據(jù)的差異程度,選擇方差最大的子載波表征呼吸信號。圖5表示了某數(shù)據(jù)包中30個(gè)子載波的方差,從圖5中可得:第25號子載波的方差最大,因此在該數(shù)據(jù)包的分析中以第25號子載波信息來表征人體呼吸信息。
圖5 子載波方差
2.2.2 交叉平移點(diǎn)算法
本文將處理后的子載波通過交叉平移點(diǎn)算法[16]進(jìn)行呼吸頻率估計(jì)。算法步驟如下:
步驟3:呼吸頻率由數(shù)據(jù)長度與Cw計(jì)算而得:
(8)
其中:RR為呼吸頻率(每分鐘呼吸的次數(shù)),bpm;Cw為信號平移前后的交叉點(diǎn)數(shù);N為數(shù)據(jù)長度;Fs為采樣頻率,Hz。
圖6 交叉平移點(diǎn)算法
上述呼吸頻率估計(jì)方法雖然具有一定優(yōu)越性,但仍然存在以下2個(gè)缺點(diǎn):
(Ⅰ)當(dāng)出現(xiàn)短時(shí)間窒息等異常呼吸時(shí),呼吸頻率估計(jì)方法的性能會受到很大影響。
(Ⅱ)呼吸頻率僅反映呼吸速度,不能具體、全面地描述呼吸狀態(tài)。
基于上述缺陷,本文進(jìn)一步以正常呼吸、異常呼吸、深呼吸3種呼吸狀態(tài)進(jìn)行分類,這3種呼吸狀態(tài)對應(yīng)于日常呼吸性疾病哮喘、阻塞性呼吸暫停等癥狀。
本文進(jìn)一步針對挑選的子載波進(jìn)行特征提取,包括信號熵、中值絕對偏差等多個(gè)統(tǒng)計(jì)特性,構(gòu)建特征矩陣。呼吸特征向量如表1所示。同時(shí)比較了KNN、SVM、BP以及CNN[17]這4種分類算法的分類性能。特征矩陣將作為機(jī)器學(xué)習(xí)、深度學(xué)習(xí)[18-20]算法輸入,從而實(shí)現(xiàn)不同呼吸狀態(tài)的分類。
表1 呼吸特征向量
為驗(yàn)證系統(tǒng)可行性,模擬封閉空間進(jìn)行實(shí)驗(yàn),呼吸檢測實(shí)驗(yàn)部署如圖7所示。其中,圖7a為會議室,內(nèi)設(shè)桌椅及電子設(shè)備,靜態(tài)環(huán)境適中;圖7b為實(shí)驗(yàn)室,內(nèi)設(shè)多張書桌及臺式筆記本、綠植、沙發(fā)等,環(huán)境復(fù)雜;圖7c為物聯(lián)網(wǎng)中心走廊,空曠安靜,無明顯障礙物,環(huán)境簡單。AP為無線接入點(diǎn)(access point),即信號發(fā)射端,MP為無線匯合點(diǎn)(merge point),即信號接收端。
(a) 會議室
本實(shí)驗(yàn)數(shù)據(jù)發(fā)射端使用商用Wi-Fi路由器(D-Link DIR-859)作為無線AP,有3根天線。數(shù)據(jù)采集設(shè)備為微調(diào)驅(qū)動(dòng)后的筆記本,筆記本需要配備英特爾無線網(wǎng)卡(Intel-5300)和3根接收天線,在Ubuntu 14.04的操作系統(tǒng)下,調(diào)整頻段為5 GHz,采樣頻率為100 Hz,進(jìn)行人體呼吸信號的捕捉。根據(jù)菲涅爾區(qū)模型,始終將胸腔位移處在第一菲涅爾區(qū)域中。實(shí)驗(yàn)通過采集3位志愿者的呼吸信號,每人每種呼吸狀態(tài)20組,每組30 s,每組包含30個(gè)子載波,3位志愿者分別滿足不同的性別、年齡以及身材。實(shí)驗(yàn)采集的70%數(shù)據(jù)作為訓(xùn)練集,30%數(shù)據(jù)作為測試集。本文分別研究了算法、環(huán)境、滑動(dòng)窗和距離對呼吸檢測效果的影響。
3.2.1 分類算法的影響
為比較算法識別效果,本文引入4個(gè)評價(jià)指標(biāo),準(zhǔn)確度(accuracy)、精確度(precision)、召回率(recall)和F度量(F-measure),其中,準(zhǔn)確度是度量正確分類的實(shí)例比例。公式如下:
(9)
其中:Tn(true negatives,真陰性)是對陰性示例的正確分類;Tp(true positives,真陽性)是對陽性示例的正確分類;Fn(false negatives,假陰性)是不正確地劃分為陰性的正例;Fp(false positive,假陽性)是不正確地劃分為陽性的負(fù)例。
精確度是與某一類相關(guān)的真實(shí)分類的比例。召回率是已檢索到的相關(guān)實(shí)例占相關(guān)實(shí)例總數(shù)比例。F度量是精確度和召回率的調(diào)和平均值,分別定義如:
(10)
(11)
(12)
表2為不同算法評價(jià)指標(biāo)對比。由表2可得:KNN、SVM、BP以及CNN分類準(zhǔn)確率分別為80.7%,84.4%,92.5%,80.6%。此外,F(xiàn)度量綜合模型中的精確率和召回率,F(xiàn)度量值與分類模型精度呈現(xiàn)正相關(guān)。數(shù)據(jù)結(jié)果顯示基于BP神經(jīng)網(wǎng)絡(luò)的分類準(zhǔn)確率最高。BP神經(jīng)網(wǎng)絡(luò)是一個(gè)基于閾值特征值預(yù)測新樣本姿態(tài)類的分類器,具有高度自學(xué)習(xí)和自適應(yīng)能力,適用于本文的分類需求。其次,SVM分類器是主要針對小樣本的訓(xùn)練,擺脫了從歸納到演繹的繁瑣過程,能夠很好地平衡模型的復(fù)雜度與泛化能力,并對泛化能力有所提升,但是,SVM對于非線性問題沒有通用的解決方案。而KNN和CNN分類算法在本文中表現(xiàn)較差,因?yàn)镵NN算法根據(jù)訓(xùn)練數(shù)據(jù)構(gòu)造分類模型,因此計(jì)算時(shí)產(chǎn)生較大的計(jì)算負(fù)載,不適合輕量級需求。在使用CNN算法進(jìn)行分類時(shí),由于數(shù)據(jù)具有較強(qiáng)的連續(xù)性,因此,在層層池化計(jì)算后特征點(diǎn)變少,網(wǎng)絡(luò)越深導(dǎo)致識別精度越小。
表2 不同算法評價(jià)指標(biāo)對比
3.2.2 不同環(huán)境的影響
本文分析了不同實(shí)驗(yàn)環(huán)境對識別精度的影響。如圖8所示,在障礙物較少的會議室和走廊,識別精度均在0.9附近,而對于環(huán)境最復(fù)雜的實(shí)驗(yàn)室,識別精度則略有下降。其次,由于深呼吸呈現(xiàn)出較高的呼吸頻率和較大的胸腔位移,因此深呼吸的分類精度高于異常呼吸和正常呼吸。
圖8 不同環(huán)境對識別精度的影響
3.2.3 不同滑動(dòng)窗的影響
圖9為不同滑動(dòng)窗口尺寸在不同環(huán)境下對識別精度的影響。實(shí)驗(yàn)保持收發(fā)端距離為1.5 m,采樣頻率100 Hz。由圖9可知:在3種不同的實(shí)驗(yàn)環(huán)境下,識別精度和滑動(dòng)窗尺寸呈現(xiàn)正相關(guān)。隨著窗口尺寸的增大,在時(shí)間維上得到的特征樣本越多,可以減小時(shí)間方差的影響,分類精度越高。然而,窗口長度存在一定的閾值,當(dāng)窗口尺寸增加到25時(shí),即使繼續(xù)增加尺寸也不能提升識別準(zhǔn)確率。在本文中,設(shè)置滑動(dòng)窗尺寸為最大閾值25。
圖9 不同滑動(dòng)窗尺寸對識別精度的影響
3.2.4 不同距離的影響
本實(shí)驗(yàn)研究不同距離對于呼吸識別精度的影響。由于人體呼吸為弱信號,較遠(yuǎn)的距離將無法收取到呼吸信號,因此設(shè)置收發(fā)裝置視距長度分別為1.0 m、1.5 m、2.0 m、2.5 m。為盡可能地提高呼吸信號的提取精度,每次實(shí)驗(yàn)時(shí),都令被測者胸腔移動(dòng)位于第一菲涅區(qū)的中心位置。圖10為不同距離對于呼吸識別精度的影響。其中,距離越近,識別精度越高。當(dāng)距離大于2.0 m時(shí),識別精度呈現(xiàn)遲緩下降的態(tài)勢。
圖10 不同距離的影響
本文設(shè)計(jì)了Wi-Fi信道狀態(tài)信息的生命體征檢測算法,解決了接觸式傳感器不便性、易脫落等問題。依據(jù)菲涅爾區(qū)模型,通過采用一系列預(yù)處理算法實(shí)現(xiàn)對提取CSI振幅信息的過濾。此外,本文通過改變閾值函數(shù)及閾值選取方法實(shí)現(xiàn)了傳統(tǒng)閾值算法的改進(jìn),從而完成了呼吸頻率的準(zhǔn)確提取。通過機(jī)器學(xué)習(xí)、深度學(xué)習(xí)算法實(shí)現(xiàn)了正常、異常和暫停3種不同呼吸狀態(tài)的分類,精度可達(dá)92.5%,全面反映了被檢測人員的呼吸運(yùn)動(dòng),對臨床醫(yī)學(xué)進(jìn)行準(zhǔn)確治療具有重大意義。
但是,本系統(tǒng)局限在檢測環(huán)境空曠且動(dòng)態(tài)障礙物較少的場景下,未來會進(jìn)一步研究動(dòng)態(tài)人員干擾下的呼吸檢測。