甘永進,莫 沛,陳時東,鄭金存,*,蔣曲博
(1. 玉林師范學院 電子與通信工程學院,廣西 玉林 537000;2. 廣西科技大學鹿山學院 電氣與計算機工程系,廣西 柳州 545000;3. 桂林電子科技大學 電子工程與自動化學院,廣西 桂林 541004)
目前,示波型電子血壓計是市場的主流[1]。然而因心率異常導致振蕩波不規(guī)則以及血管形變恢復需要一定時間,示波型電子血壓計無法實現(xiàn)連續(xù)測量每搏血壓的變化[2],而連續(xù)血壓測量在家庭保健和臨床診斷中意義重大。通過光電容積脈搏波(Photoplethysmography,PPG)完成對每個心動周期血壓值的檢測,為實現(xiàn)血壓的無創(chuàng)連續(xù)測量提供一定的參考價值。但是PPG信號容易受到采集系統(tǒng)帶來的白噪聲、工頻干擾[3]以及由肌電干擾等因素引起的基線漂移等噪聲的干擾,對后續(xù)血壓測量的精度帶來影響。
為實現(xiàn)由PPG信號達到連續(xù)精準地測量血壓的目的,本文通過TI系列AFE44X0芯片結(jié)合反射式傳感器DCM03設(shè)計光電容積脈搏波采集系統(tǒng),設(shè)計經(jīng)驗模態(tài)分解(Empirical Mode Decomposition,EMD)結(jié)合形態(tài)學濾波的方法對原始PPG信號進行自適應濾波以及基線去除工作,對濾波后的PPG信號進行二次微分得到加速脈搏波,采用Adaboost算法對加速脈搏波進行分類,對分類后的加速脈搏波進行PPG信號傳導時間(Pulse Wave Transit Time, PWTT)的提取,最后建立不同的血壓測量模型。
經(jīng)驗模態(tài)分解由數(shù)據(jù)時間尺度特征來進行信號分解以得到一系列的本征模函數(shù)(Intrinsic Mode Function,IMF),其表征信號的不同振蕩模式,包含不同時間尺度[4-5]信號局部特征。其中,各個IMF中零點和極點個數(shù)相等或相差1,且局部極大值和極小值確定的信號包絡線的均值為0[6],使得定義瞬時頻率的同時可避免由信號不對稱引起的瞬時頻率波動[7]。
本文采用光電反射式傳感器DCM03結(jié)合血氧模擬前端AFE44X0系列芯片進行反射式光電容積脈搏波的采集。反射式傳感器DCM03的光發(fā)射器發(fā)出光線照射到指尖后發(fā)生漫反射,DCM03的光接收器接收指尖血液的光感應信號,實現(xiàn)光電信號轉(zhuǎn)換,再由AFE44X0進行I-V轉(zhuǎn)換、放大濾波及A/D轉(zhuǎn)換等處理得到PPG數(shù)字信號并輸出至MCU[8]。將PPG數(shù)字信號進行EMD分解, 噪聲分布在各個IMF分量上,故將所有的IMF分量進行軟閾值去噪,可有效地對原始PPG信號的噪聲進行抑制,其步驟如下:
①對原始PPG信號進行EMD分解,得到各個IMF分量,如圖1所示;
②對各IMF分量采用Stein無偏似然估計準則進行閾值估計;
③使用wthresh進行去噪,得到去噪后各IMF分量如圖2所示;
④將去噪后的各IMF分量進行重構(gòu)得到去噪后的PPG信號。
圖1 容積脈搏波的EMD分解圖
Fig.1 EMD decomposition diagram of PPG
圖2 去噪后的IMF分量
Fig.2 IMF component after denoising
設(shè)采樣得到的原始一維脈搏信號為f(n),定義域為F={0,1,…,N-1},結(jié)構(gòu)元素為g(n),定義域為G={0,1,…,M-1},且M (1) (2) 據(jù)此,由腐蝕與膨脹運算組成開、閉運算為 (f°g)(n)=(f?g⊕g)(n), (3) (f·g)(n)=(f⊕g?g)(n)。 (4) 一般,閉運算用于填充細小空洞,實現(xiàn)平滑或抑制信號波谷噪聲;開運算可用于斷開窄小的連接,消除微小的尖刺,濾除信號峰值噪聲,平滑信號邊界輪廓。常采用形態(tài)開、閉的級聯(lián)形式對信號進行處理。傳統(tǒng)形態(tài)的開-閉和閉-開運算以不同順序級聯(lián)開閉運算,定義為 FOC(f,g)=f°g·g, (5) FCO(f,g)=f·g°g。 (6) 因形態(tài)閉運算的反擴展性和形態(tài)開運算的擴展性,式(5)和式(6)定義的兩種傳統(tǒng)的濾波器都存在統(tǒng)計偏移現(xiàn)象,即對于開-閉濾波器而言,最后的輸出幅度偏??;但對于閉-開濾波器而言,最后的輸出幅度偏大,在一般情況下,單獨使用得到的濾波效果都不是最佳的。 欲有效地抑制采集到的脈搏信號中的不同噪聲,減小最終輸出的單向偏移,由兩種濾波器的平均組合形式[9],將形態(tài)開閉-閉開濾波器定義為 FOC-CO(f,g)=(f°g·g+f·g°g)/2。 (7) 欲將統(tǒng)計偏移現(xiàn)象更深一層地減小,根據(jù)不同尺寸的結(jié)構(gòu)元素,定義廣義開-閉和閉-開濾波器為 FOC(f,g1,g2)=f°g1·g2, (8) FCO(f,g1,g2)=f·g1°g2。 (9) 相比于傳統(tǒng)的形態(tài)濾波器,廣義形態(tài)濾波器能夠?qū)π盘栔械母鞣N噪聲進行有效的抑制[10]。為校正基線漂移[11],本文通過尺寸不同的結(jié)構(gòu)元素的開-閉和閉-開運算組合進行處理。首先,設(shè)原始脈搏血氧信號為x(n),對受基線漂移干擾的x(n)進行廣義形態(tài)閉-開運算處理;然后,將x(n)進行廣義形態(tài)開-閉運算處理;之后,再把以上兩個步驟的結(jié)果進行求和平均,得到基線分量;最后,將x(n)與基線作差,得到校正基線后的信號y(n),形態(tài)學去除基線漂移[12]框圖如圖3所示。 由表1小波及本文算法對信號去噪后的信噪比對比知,該算法去除基線漂移效果較佳。經(jīng)過EMD分解以及形態(tài)學濾波后的波形和頻譜如圖4、圖5所示,由圖4和圖5可見,信號中的高頻噪聲以及基線漂移得到一定程度的抑制,說明了設(shè)計的算法對光電容積脈搏波消噪效果的可行性。 圖3 去除基線漂移框圖 表1 幾種不同去基線算法的信噪比 序號方法SNR 1db2小波38.607 22db4小波38.216 33db5小波38.987 34db6小波38.527 55sym4小波38.587 76sym8小波38.497 37形態(tài)學濾波41.027 6 圖4 各個階段波形的頻譜圖 圖5 各個階段波形 PPG信號經(jīng)EMD和形態(tài)學濾波后,再提取PPG信號的傳導時間來建立PPG信號傳導時間與血壓的數(shù)學關(guān)系,以此建立血壓計算模型。其中,PPG信號及相應的加速脈搏波波形如6所示。 圖6 PPG信號及其加速脈搏波波形 圖6中,由血液微循環(huán)機理知加速脈搏波A-C段的時間tAC可以反映血液由心臟傳播到指尖末端毛細血管并反射匯合的時間,而這個時間可準確的表示脈搏波傳導時間。脈搏波傳導時間的提取的關(guān)鍵是找到特征點A和C的位置。其中,特征點A是波形的極大值點,準確地識別該位置較為容易。故特征點C的位置識別成為脈搏波傳導時間提取的關(guān)鍵。特征點C位置出現(xiàn)有兩種情況:一種是特征點C位于B和Z之間,如圖7(a)所示;另一種是特征點C位于Z和M之間,如圖7(b)所示。 圖7 特征點C位于不同位置的加速脈搏波 本文首先對經(jīng)數(shù)字信號處理后的PPG信號的加速脈搏波進行分類[13],再提取兩種不同類型的PPG信號的傳導時間,進而分別建立兩種PPG信號(特征點C位于B和Z之間或Z和M之間)的血壓計算模型。 2.1.1 加速脈搏波波形識別 為識別出如圖7中的兩種不同的加速脈搏波,本文利用迭代算法Adaboost進行實驗。 Adaboost在訓練過程中自適應調(diào)整訓練樣本權(quán)重,強化學習難以區(qū)分的訓練樣本,由加權(quán)投票機制聯(lián)合弱分類器,使分類效果好的弱分類器的權(quán)重得到提高,而分類效果差的弱分類器的權(quán)重降低,形成高性能的強分類器。算法描述如下: ①輸入訓練集D: D={(x1,y1),(x2,y2),…,(xn,yn)}, 其中,xi∈X,yi∈Y,X為訓練樣本集,Y為分類類別標志,Y={-1,+1}。 ②初始化權(quán)值:D1(x)=1/n。 ③設(shè)置訓練輪數(shù)T:fort=1,2,…,T。 ④將弱學習算法在權(quán)值Dt下訓練,得到預測函數(shù)ht:X~{-1,+1}。 ⑦訓練完畢,輸出函數(shù): 為驗證Adaboost算法識別不同脈搏波的可行性,本文由預測靈敏度SE、陽性率TPR以及準確率AC這3個指標來評價該算法區(qū)分兩種脈搏波的性能。其中, (10) (11) (12) 其中,TP和TN分別表示正確分類了第一類和第二類脈搏事件,F(xiàn)P和FN分別表示錯誤分類了第一類和第二類脈搏事件。 對250個波形信號以Adaboost算法進行識別,其中第一類(特征點C位于B和Z之間)130個,第二類(特征點C位于Z和M之間)120個,得到測量數(shù)據(jù)如表2所示。由表1知,以特征點A-Z的時間段tAZ作為分類依據(jù),采用Adaboost算法可以準確的區(qū)分出兩種不同的加速脈搏波。 表2 分類評估參數(shù) TPTNFPFN靈敏度陽性率準確率11910411160.8810.9150.892 2.1.2 特征點提取 特征點A是加速脈搏波的波峰,在波形任意位置開始,在一個周期范圍內(nèi)判斷出幅值最大的位置即為特征點A的位置。 特征點C的位置提取分兩種情況:①當C介于B與Z之間時,如B與Z間存在極大值,則極大值坐標即為C的位置;如沒有極大值,則以B與Z之間斜率最小的點的坐標作為C的位置;②當C介于Z與M之間時,若B、M兩點所在的直線斜率為k,以Z、M間所有點的斜率與k差值最小時的坐標作為C的位置。準確判斷特征點A和C的位置后,A與C之間的采樣點數(shù)與采樣時間的乘積即脈搏波傳導時間(PWTT)。 準確識別出兩種不同的脈搏波并獲取脈搏波傳導時間后,由脈搏波傳導時間與血壓間的線性關(guān)系,進行回歸分析得出回歸系數(shù)及常數(shù),建立血壓測量回歸方程式。經(jīng)回歸分析以及雙彈性腔模型理論得出C點位于B和Z之間的血壓方程如式(13)、(14)所示,C點位于Z與M之間血壓方程如式(15)、(16)所示,其中,Ps為收縮壓,Pd為舒張壓。 Ps=348.852 1-1.389 2*PWTT, (13) Pd=20.883 6+0.402 6*Ps, (14) Ps=359.532 6-1.523 1*PWTT, (15) Pd=5.235 5+0.602 1*Ps。 (16) 為驗證所建立的血壓估算模型的可靠性,本研究采用水銀血壓計與本系統(tǒng)對測試者同時進行檢測以分析該設(shè)計的準確性。其中,以水銀血壓計測得數(shù)據(jù)作為真值,本設(shè)計測量數(shù)據(jù)為測值。在室溫25 ℃下,對年齡(18~65)及性別各不相同的150位測試者(包括110名血壓正常的測試者和40名高血壓患者)進行實驗,測量得到的數(shù)據(jù)及相應的誤差圖如圖8、圖9所示。部分測量數(shù)據(jù)如表3所示(表中測值和真值單位為mmHg)。 由圖8、圖9及表3知,本系統(tǒng)測得血壓值與真值之間均保持較好的一致性,數(shù)據(jù)誤差均保持在±5以內(nèi),優(yōu)于AAMI標準。兩種加速脈搏波的分類具有較高準確性,具有一定的臨床意義。 表3 實驗測量數(shù)據(jù) 序號性別/年齡 PS測值PS真值誤差PD測值PD真值誤差分類結(jié)果真實類別1M/209899-16063-3112M/25102107-56263-1113F/199695+16265-3224M/29110107+36564+1115F/27116119-37473+1226M/33118116+27580-5227F/33120125-57781-4228F/35123121+27877+1219M/27106110-46265-31110F/28108109-16972-32111M/39136138-27574+11112M/45144139+59188+32213M/43139142-37681-51114F/40145142+39288+42215F/42147146+19395-222 圖8 采集數(shù)據(jù)分布圖 圖9 測值和真值誤差圖 結(jié)合EMD及形態(tài)學方法對光電容積脈搏波進行降噪處理,對比不同濾波方法的信噪比,發(fā)現(xiàn)本文方法濾波效果優(yōu)于小波變換。為了驗證Adaboost識別不同脈搏波的有效性,本文基于預測靈敏度、陽性率及準確率3個指標進行評價,實驗表明Adaboost識別不同脈搏波具有一定的可靠性。為驗證血壓模型的有效性,對150位測試者進行測量,實驗結(jié)果證明,論文建立的血壓計算模型誤差在±5 mmHg以內(nèi),具有一定的準確性和可靠性,達到了較好的效果。
Fig.3 Block diagram of baseline wander removal
Tab.1 SNR of different algorithms
Fig.4 Spectrogram of each stage
Fig.5 Wave form of each stage2 血壓計算方法
2.1 脈搏波傳導時間計算
Fig.6 PPG and accelerating pulse wave
Fig.7 Acceleration pulse wave with different feature points
Tab.2 Evaluation parameters2.2 血壓模型的建立
3 實驗分析
Tab.3 Measured data
Fig.8 Distribution graph of collected data
Fig.9 Error between measure data and true data4 結(jié)論