葛君怡,李 霞,楊 昊
(中國(guó)計(jì)量大學(xué) 信息工程學(xué)院,浙江 杭州 310000)
脈搏波是由人體心臟搏動(dòng)向血管外周擴(kuò)張時(shí)傳播形成,作為重要的生理信號(hào),在目前臨床上被廣泛應(yīng)用,包含著大量的人體病理信息。脈搏波信號(hào)的特征點(diǎn)提取可用于連續(xù)的血壓估計(jì)、血氧飽和度監(jiān)測(cè)、動(dòng)脈僵硬度評(píng)估等一系列心血管疾病的診斷和預(yù)防。隨著傳感器技術(shù)和無(wú)線通信模塊的快速發(fā)展,人們?cè)絹?lái)越傾向于使用可穿戴設(shè)備實(shí)時(shí)、靈活地監(jiān)測(cè)自身健康狀況。但采集脈搏波信號(hào)時(shí)極易受到外界各類(lèi)噪聲的干擾,比如硬件采集端的工頻干擾、電磁干擾等導(dǎo)致的高頻噪聲(0.005~100 Hz),人體生理活動(dòng)導(dǎo)致的低頻基線漂移噪聲(0.15~0.3 Hz)以及運(yùn)動(dòng)干擾等,將影響基于脈搏波的臨床應(yīng)用評(píng)估性能。
目前,用于脈搏波信號(hào)降噪的方法有自適應(yīng)濾波去噪[1]、傅里葉變換、獨(dú)立分量分析等傳統(tǒng)方法,這些方法容易同時(shí)剔除噪聲信號(hào)和部分原始信號(hào);小波閾值去噪法[2]近幾年被大量學(xué)者廣泛研究和應(yīng)用,但其去噪過(guò)程中的分解層數(shù)、小波基函數(shù)、合適閾值的選取和確定較為困難;雙密度小波變換[3]的平移性基本保持不變,同時(shí)擁有較好的重構(gòu)性和有限的冗余性;雙密度雙樹(shù)小波變換[4]在前者基礎(chǔ)上衍生去噪算法,同時(shí)具有雙密度小波和雙樹(shù)小波的優(yōu)點(diǎn),在二維圖像的融合和信號(hào)去噪兩方面有著良好的應(yīng)用價(jià)值。本文在研究和分析了現(xiàn)有的脈搏波信號(hào)去噪算法的基礎(chǔ)上,創(chuàng)新性地嘗試將雙密度雙樹(shù)小波變換和插值法結(jié)合使用,并與小波閾值法進(jìn)行比較,結(jié)果表明,本文方法在很好地濾除噪聲的同時(shí),可以更好地保留原始信號(hào)的特征點(diǎn)信息,計(jì)算過(guò)程簡(jiǎn)單實(shí)用,便于后期信號(hào)的進(jìn)一步分析。
美國(guó)學(xué)者Selesnick 于2004 年在雙密度小波和雙樹(shù)復(fù)小波的基礎(chǔ)上,提出二者結(jié)合后的雙密度雙樹(shù)小波概念,作為第三代小波變換,同時(shí)擁有上述兩者的屬性。它包含φh(t),φg(t)兩個(gè)不同的尺度函數(shù)和四個(gè)小波函數(shù)ψh,i(t),ψg,i(t)(i=1,2),其 中,ψh,1(t),ψh,2(t) 和ψg,1(t),ψg,2(t)兩兩小波函數(shù)之間相互偏移半個(gè)單位:
這使得雙密度雙樹(shù)小波在保證延續(xù)了小波變換優(yōu)點(diǎn)的同時(shí),還能利用其中兩個(gè)小波函數(shù)ψh,1(t),ψh,2(t)構(gòu)成近似的Hilbert 變換對(duì)ψg,1(t),ψg,2(t):
如圖1 所示的濾波器組結(jié)構(gòu)由兩個(gè)并行操作的過(guò)采樣迭代濾波器組——共3 個(gè)Hilbert 濾波器對(duì)組成。參數(shù)i=0,1,2,hi(n)為濾波器組1 中的濾波器,gi(n)為濾波器組2 中的濾波器,每一濾波器組中的合成濾波器由分解濾波器進(jìn)行時(shí)間翻轉(zhuǎn)得到。其中i=0 時(shí),對(duì)應(yīng)的h0(n),g0(n)為低通濾波器;i=1 時(shí),對(duì)應(yīng)的h1(n),g1(n)為一階高通濾波器;i=2 時(shí),對(duì)應(yīng)的h2(n),g2(n)為二階高通濾波器。
圖1 DD?DT DWT 濾波器組
濾波器組1(上部樹(shù)組)中的hi(n)和濾波器組2(下部樹(shù)組)中g(shù)i(n)的子帶信號(hào)可以分別作為雙樹(shù)復(fù)數(shù)小波變換的實(shí)部和虛部。變換過(guò)程中,兩個(gè)濾波器組同時(shí)對(duì)輸入數(shù)據(jù)進(jìn)行濾波的采樣迭代,再通過(guò)濾波器組1 中的疊加濾波器和濾波器組2 中的疊加濾波器系數(shù)進(jìn)行組合。實(shí)部和虛部濾波器之間的采樣間隔延遲,恰好保證了虛部抽取采樣時(shí)剛好采到實(shí)部抽取采樣中被丟掉的采樣點(diǎn),避免平移不變性的不敏感問(wèn)題。
原始信號(hào)經(jīng)過(guò)雙密度雙樹(shù)小波變換分解后可得到其小波系數(shù),然后通過(guò)相應(yīng)的閾值函數(shù)進(jìn)行處理。
選擇合適的閾值函數(shù),當(dāng)原始信號(hào)低于閾值時(shí),認(rèn)為是噪聲信號(hào),高于閾值時(shí)則認(rèn)為是真實(shí)信號(hào)。經(jīng)過(guò)處理后的小波系數(shù)對(duì)其進(jìn)行逆變換,就可以重構(gòu)出去噪后的信號(hào)。
軟閾值和硬閾值法是目前階段最常用的兩種閾值函數(shù),本文選用軟閾值法,其推理函數(shù)如下:
式中:變量T代表設(shè)置的閾值;s代表被處理后的小波系數(shù);x代表原始未處理的小波系數(shù)。確定閾值函數(shù)之后,將設(shè)置具體閾值數(shù)。閾值設(shè)置過(guò)小會(huì)無(wú)法徹底去除噪聲;閾值設(shè)置過(guò)大,會(huì)在處理時(shí)刪除原始信號(hào)的部分細(xì)節(jié)。常用的閾值主要有四種:?jiǎn)l(fā)式閾值、Stein(無(wú)偏風(fēng)險(xiǎn)閾值)、極大極小閾值和固定閾值。本文選用啟發(fā)式閾值。
啟發(fā)式閾值將Stein 和固定閾值進(jìn)行結(jié)合,計(jì)算參數(shù)θ=,參數(shù)對(duì)比后選擇最優(yōu)閾值,閾值設(shè)置公式為:
當(dāng)θ<μ時(shí),使用固定閾值,其設(shè)置公式為:
式中:變量σ為預(yù)估噪聲方差;變量N為原始信號(hào)數(shù)據(jù)長(zhǎng)度。
使用Stein 無(wú)風(fēng)險(xiǎn)閾值時(shí),對(duì)某一層小波系數(shù)取平方,從小到大排列得到序列W:
再計(jì)算每一個(gè)元素產(chǎn)生的風(fēng)險(xiǎn)值,例如第g個(gè)元素:
找到該層小波系數(shù)并通過(guò)計(jì)算得到風(fēng)險(xiǎn)值的最小值,得到相對(duì)應(yīng)ωb,最后閾值設(shè)置為T(mén)=。Matlab帶有三種對(duì)閾值的調(diào)整方式:mln 表示上述閾值各尺度下估算的標(biāo)準(zhǔn)差之積;one 代表噪聲方差不需要調(diào)整處理;sln 表示上述閾值分別乘以由第一層小波系數(shù)估計(jì)而來(lái)的方差。本文選用sln 方法進(jìn)行調(diào)整。
目前較為常用的去除基線漂移的方法主要包括:形態(tài)學(xué)濾波法[5]、平滑濾波法[6]、經(jīng)驗(yàn)?zāi)B(tài)分解法[7]、小波變換法[8]等,這些方法都各自存在優(yōu)缺點(diǎn)。形態(tài)學(xué)通過(guò)原始信號(hào)進(jìn)行開(kāi)閉運(yùn)算和膨脹腐蝕運(yùn)算得到基線信號(hào);平滑濾波法由于利用波形和噪聲的頻譜差別濾除噪聲,易造成波形失真;經(jīng)驗(yàn)?zāi)B(tài)分解法存在混疊效應(yīng),無(wú)法滿足實(shí)時(shí)處理脈搏波信號(hào)的需求;小波變換法則計(jì)算量較大并且各項(xiàng)參數(shù)確定較為復(fù)雜。樣條插值法[9]作為一種經(jīng)典的擬合方法,運(yùn)算簡(jiǎn)單,本文使用三次樣條插值法對(duì)去除高頻噪聲后的信號(hào)去除基線漂移,仿真結(jié)果顯示該方法去除效果顯著。
三次樣條插值實(shí)際上是對(duì)給定數(shù)據(jù)集進(jìn)行分段的多項(xiàng)式插值,將n個(gè)數(shù)據(jù)點(diǎn)分段后在每一段相鄰的兩點(diǎn)之間構(gòu)建三次多項(xiàng)式進(jìn)行擬合運(yùn)算。假設(shè)有區(qū)間[a,b],區(qū)間內(nèi)有xn個(gè)數(shù)據(jù)點(diǎn)滿足a=x0 式中Si(x)為區(qū)間[xi,xi+1]上的三次多項(xiàng)式: 式中4 個(gè)待定系數(shù)a,b,c,d的確定需要引入邊界條件,一般默認(rèn)為非扭結(jié)邊界樣條函數(shù),即數(shù)據(jù)段兩端點(diǎn)的三階導(dǎo)等于這兩端點(diǎn)鄰近點(diǎn)的三階導(dǎo),也就是令插值第一段的三次項(xiàng)系數(shù)等于第二段的三次項(xiàng)系數(shù),以此類(lèi)推,并在每一段的連接處需滿足: 保證了節(jié)點(diǎn)處的連續(xù)性以及求導(dǎo)后的光滑性。 實(shí)驗(yàn)選取7 名年齡在22~28 歲之間的測(cè)試者,無(wú)心血管疾病史,測(cè)試者處于靜坐或慢走狀態(tài),室溫下用自制采集裝置采集耳垂脈搏波信號(hào)。信號(hào)采樣頻率為100 Hz,共測(cè)得有效原始數(shù)據(jù)28 組。自制設(shè)備采用MAX30102 反射式傳感器,具有紅光LED 和紅外LED 雙光源,交替射出660 nm 紅光和880 nm 紅外光。選取其中采集的3 段脈搏波信號(hào),如圖2 所示,可以看出3 段信號(hào)都存在明顯的高頻噪聲和基線漂移。 圖2 原始脈搏波信號(hào) 選取測(cè)試者4 的脈搏波信號(hào),對(duì)本文提出的算法進(jìn)行驗(yàn)證分析。選取測(cè)試者4 的原始脈搏波信號(hào)進(jìn)行雙密度雙樹(shù)小波三層分解變換,分解信號(hào)后得到高頻和低頻系數(shù),使用啟發(fā)式閾值處理得到的高頻系數(shù),保留低頻系數(shù)不變,得到小波系數(shù)后,對(duì)其進(jìn)行逆變換得到重構(gòu)信號(hào),如圖3 所示即為截取的部分測(cè)試者4 原始脈搏波信號(hào)和去除高頻噪聲后的脈搏波信號(hào)。 為進(jìn)一步驗(yàn)證實(shí)驗(yàn)效果,再選用db6 小波同樣對(duì)測(cè)試者4 原始信號(hào)做三層分解變換,結(jié)果如圖3 所示。計(jì)算兩種方法的去噪指標(biāo)SNR 和RMSE,如表1 所示,信噪比越大,均方根誤差越小,說(shuō)明去噪效果越好。另外,選取6 組測(cè)試者中各兩組數(shù)據(jù)進(jìn)行同樣的處理,結(jié)果如表2 所示。對(duì)比可知小波變換比較平滑,但丟失了部分脈搏波的尖峰或突變細(xì)節(jié),雙密度雙樹(shù)去噪效果明顯較好,并能更好地保留波形特征,失真程度也小于小波變換。 圖3 去除高頻噪聲后信號(hào) 表1 不同去噪方法指標(biāo)值 表2 不同測(cè)試者脈搏波去噪指標(biāo)值 對(duì)濾除高頻噪聲前后的脈搏波信號(hào)進(jìn)行FFT 變換[10],得到頻譜信息如圖4 所示,信號(hào)中有大量幅值小的噪聲,經(jīng)雙密度雙樹(shù)小波變換處理后噪聲信號(hào)基本被消除,頻率主要集中于15 Hz 以下。 圖4 原始信號(hào)去噪前后頻譜圖 本文利用三次樣條插值去除信號(hào)基線漂移,整體步驟如下: 1)對(duì)每個(gè)脈搏波信號(hào)所有周期的波谷點(diǎn)進(jìn)行識(shí)別并標(biāo)記,并將信號(hào)的起始點(diǎn)和結(jié)束點(diǎn)作為基準(zhǔn)點(diǎn); 2)在每個(gè)信號(hào)起始基準(zhǔn)點(diǎn)之間通過(guò)樣條插值計(jì)算,得到一條近似于脈搏波基線漂移的擬合曲線,如圖5 所示為測(cè)試者4 去除高頻噪聲后的信號(hào)擬合漂移基線; 圖5 三次樣條擬合基線 3)用原始的脈搏波信號(hào)減去擬合的基漂信號(hào)即可得到最終濾波信號(hào)[11],如圖6 所示,與圖3 對(duì)比可以看出信號(hào)的基線漂移得到明顯抑制。 圖6 去除基漂后的脈搏波信號(hào) 本文提出一種DD?DT DWT 與三次樣條插值結(jié)合的脈搏波去噪算法結(jié)構(gòu)。該方法采用雙濾波器組,根據(jù)信號(hào)的頻率特性,首先通過(guò)計(jì)算確定分解層數(shù),分離原始信號(hào)高頻、低頻系數(shù)后,只針對(duì)高頻系數(shù)進(jìn)行處理,低頻系數(shù)保留,得到相應(yīng)小波系數(shù)之后進(jìn)行信號(hào)重組,完成高頻噪聲的去除。之后利用三次樣條插值法對(duì)上述處理后的信號(hào)進(jìn)行分段,確定每段信號(hào)的各項(xiàng)基準(zhǔn)點(diǎn),在每段區(qū)間內(nèi)進(jìn)行插值擬合,得到漂移基線。再用未處理的信號(hào)減去擬合后的基線,即完成信號(hào)的去基線漂移操作。 仿真結(jié)果顯示經(jīng)該方法處理后的信號(hào),高頻噪聲濾除效果對(duì)比小波變換,保留了更多原始信號(hào)細(xì)節(jié),提高信噪比的同時(shí)降低了均方根誤差,去除基線漂移的效果也很明顯,信號(hào)經(jīng)處理后更易提取特征參數(shù)[12],如幅度、波峰波谷點(diǎn)、脈寬等,為后續(xù)建模提取血壓、血氧等參數(shù)提供了方便,整體算法結(jié)構(gòu)計(jì)算簡(jiǎn)單,運(yùn)算速度快,同樣適用于可穿戴設(shè)備,滿足脈搏波處理的實(shí)時(shí)性。 注:本文通訊作者為楊昊。2 數(shù)據(jù)處理分析
2.1 高頻噪聲消除
2.2 基線漂移消除
3 結(jié)語(yǔ)