世俱杯规则-虎牙直播-比利亚vs西班牙人-德国杯|www.cnyhmy.com

基于鯨魚優化算法的VMD-NLM脈搏信號濾波算法研究

時間:2023-07-19 09:30:03 來源:網友投稿

楊海馬, 陳嘉慈, 徐笑寒, 李福鳳, 宋智超, 金 焱

(1.上海理工大學光電信息與計算機工程學院,上海 200093;
2.上海中醫藥大學基礎醫學院,上海 201203)

脈搏信號是脈管搏動的軌跡,綜合了心臟射血活動和脈搏沿血管樹傳播途中攜帶的各種信息。因而該信號的采集對于提前預知患者潛在的心血管病灶和針對心血管疾病采取有效治療具有指導作用[1-3]。然而采集到的脈搏信號經常會因為采集動作及儀器本身誤差而出現不同程度的噪聲,影響了信號的特征提取分析。因此,如何有效地減小噪聲帶來的影響,是當前脈診客觀化研究的一大熱點。

針對這個問題,目前主要以小波降噪為理論基礎開展研究,并在此基礎上提出了多種改進方案,例如經驗模態分解(empirical mode decomposition,EMD)、集合經驗模態分解(ensemble empirical mode decomposition,EEMD)、互補集合經驗模態分解(complementary ensemble empirical mode decomposition,CEEMD)等。但EMD方法容易產生模態混疊的問題,EEMD由于加入了白噪聲可能對源信號產生一定的影響[4]。張培玲等[5]提出改進小波閾值結合完全自適應噪聲集合經驗模態分解(CEEMDAN)的方法有效地解決了噪聲傳遞的影響,但依然無法完全克服模態混疊的問題。2014年,Dragomiretskiy等[6]提出了變分模態分解(variational mode decomposition,VMD),該算法采用自適應非遞歸模型,很好地解決了經驗模態分解所共有的模態混疊和端點效應問題。但是在VMD算法中,需要提前設置相關參數,不同的參數設置會帶來不一樣的結果[7-8]。因此,如何獲得兩個參數的最優解并應用到脈搏信號中,是當前的一大問題。崔善政等[9]提出了一種基于VMD去除心電信號基線漂移的方法,將VMD算法成功應用于心電脈搏信號的降噪研究中,并有效避免了經驗模態分解帶來的影響,但該方法通過設定頻率閾值進行低頻降噪,存在容易濾除脈搏波中有效成分的問題。韋海成等[10]通過VMD在不同K值下的中心頻率分布選取最佳K值,但未考慮到懲罰因子的影響,且基線用EMD去除會存在一定的模態混疊現象。

為解決上述問題,本文將鯨魚優化算法應用于VMD參數選取中,對VMD中的K值與懲罰因子進行雙參數優化。相比于其他傳統的優化算法,鯨魚優化算法需要設置的參數少,收斂速度快,具有較好的全局尋優能力,被廣泛用在故障特征、水文分析、電磁信號等多個領域,且取得了不錯的效果。故本文提出一種基于鯨魚算法優化VMD參數選擇過程,以排列熵作為選取噪聲模態分量的評判標準,然后對含噪分量采用非局部均值濾波去噪方法,實現對脈搏信號噪聲的有效濾除,最后將所有模態分量進行重構,獲得降噪后的脈搏信號。

1.1 變分模態分解

VMD是一種自適應非遞歸的模態分解模型,能夠將原始信號分解成一組具有確定中心頻率和一定帶寬的模態分量。其借助了HHT(Hilbert-Huang transform)變換、頻率混合等方法,通過迭代搜尋變分模型,相較于EMD能夠有效地減小模態混疊影響,具有更強的魯棒性[11]。

模態分量變分約束模型的表達式如下:

式中:k為模態分解層數;
uk(t)為第k個模態分量;
ωk(t)為 第k個模態分量的中心頻率;
f(t)為原始信號。為求解式(1)需要引入拉格朗日算子,可將變分模型求解轉換為無約束變分模型,通過k值的計算得到各個模態分量。該算子表達式如下:

式中:α為懲罰因子;
λ(t)為拉格朗日乘法算子。為得到最優解,通過交替方向乘子法ADMM進行迭代更新,具體步驟如下:

b.根據式(3)、式(4)、式(5)更新{uk},{ωk}和λ;

c.不斷重復步驟b進行迭代,直到函數滿足以下條件:

式中,ε為判斷精度。

1.2 鯨魚優化算法

鯨魚優化算法(whale optimization algorithm,WOA)是Mirjalili等[12]于2016年提出的,該算法從鯨魚捕食獵物的行為中獲得啟發,通過模擬座頭鯨一邊收縮包圍圈,一邊螺旋向上進行狩獵的行為,以實現優化搜索的目的。鯨魚群在每一次尋找獵物時,都會不斷地更新包圍圈,再不斷地螺旋向上,整個過程就像蜿蜒的山路,直到山頂便停止搜索。該行為可以概括為如下的數學模型:

式中:D為當前鯨魚與獵物之間位置的參數;
X(t)表 示迭代t次后當前鯨魚的位置;
X*(t)表示當前獵物的所在位置;
A·D表示鯨魚每次游動的距離,也就是步長大小。C 和A為系數向量,計算公式為

式中:a在迭代過程中會從2到0線性衰減;
r 表示[0,1]之間的隨機數。

鯨魚在捕食獵物時在螺旋上升的同時,會產生泡泡網進行攻擊,因而鯨魚算法假設該兩種方式發生的比例為1∶1,可將該方法描述為

式中:b定義了螺旋形狀的常量;
l為[-1,1]的隨機數;
p為[0,1]的隨機數,表示螺旋更新概率。

在狩獵階段,除了氣泡攻擊外,還需要通過隨機的方式去搜尋獵物,觸發條件為p<0.5且|A|>1。此時個體根據不同的鯨魚位置不斷進行信息更新,從而找到全局最優解,該過程可以描述為

式中:
Xrand為鯨魚的隨機位置向量。

1.3 非局部均值去噪

非局部均值去噪(non-local means,NLM)通過選中待處理的像素點,通過設置搜尋區域,對該區域內具有相似特征的像素點進行加權平均,在盡可能減小對圖像本身損失的同時,進行降噪濾波[13]。通過對確定的含有噪聲的模態分量(intrinsic mode function,IMF)應用NLM算法進行去噪,以達到消除脈搏波形噪聲的效果。其具體原理,可描述為

式中:Z(i)為歸一化參數。權重需滿足兩個條件

在搜尋像素點中:若兩個樣本的相似度較高,則該權值就越大;
相似度低,權值就小。權值計算為

2.1 排列熵

為了濾除脈搏信號中存在的噪聲,更好地保留脈搏噪聲的有效信息,需要對經由VMD分解得到的各模態分量建立評判標準。本文采用排列熵(permutation,entropy,PE)作為區分噪聲分量的標準。排列熵能夠很好地展現時間序列的復雜性,同時又兼具計算簡單、抗噪能力強等優點[14]。假設一時間序列X(i)={x(1),x(2),···,x(n)},對該序列中任一元素進行空間重構可得到重構矩陣如下:

式中:m為嵌入維數;
τ為延遲時間。對矩陣**行重排后可得到

式中:j1, j2,···,jm表示各元素所在列索引。可通過排列組合定理獲得所有情況的概率,即為各模態分量的PE值,如下:

式中,pi為式(15)所列的矩陣中每行序列出現的概率。歸一化后,可得

綜上所述,Hp越大,反映該分量隨機性越大;
相反該分量隨機性就越小。

2.2 基于WOA-VMD-NLM的聯合去噪方法

本文通過WOA對VMD的參數進行優化,其具體步驟如下:

a.初始化WOA參數,設定初始種群大小,模態分解數K 以及懲罰因子α等。

b.初始化種群,在指定的范圍內隨機生成初始化群體。

c.進行VMD分解,并計算種群適應度。本文將樣本熵作為目標參數。

d.開始迭代,尋找最優解。根據p 與A的不同取值,根據式(10)、(11)可計算出更新后的個體位置。計算更新后的適應度值。

e.結束迭代過程。如果當前迭代次數t并未達到初始化設定的迭代次數時,會繼續尋找當前最優解。否則迭代結束,獲取此時的最佳參數K 和α。

f.確定模態分量的性質。通過計算各模態分量的排列熵,通過排列熵的分布規律確定噪聲分量。

g.對確定的噪聲分量進行非局部均值去噪。

h.將信號主導的模態分量與去噪后的分量進行重構,獲得濾波后的脈搏信號。

2.3 降噪效果評價指標

采用信噪比SNR、均方根誤差RMSE兩個指標來評判該降噪算法的效果。信噪比反映了輸出信號與噪聲信號的功率比,可以用來表明該算法的降噪性能[15]。均方根誤差可用于對該信號在降噪前后差異性的一個評價。3個指標的公式如下:

式中:Ps為 有效信號;
Pn為噪聲信號;
x(t)為原始信號;

x(t)’為降噪后信號;
N為采樣個數。因而當信噪比越大、均方根誤差越小時,表明信號的降噪性能越為優異。

3.1 仿真實驗

為了驗證該算法在脈搏波上的可行性,以干凈的脈搏波信號 x(t)作為有效信號,為了模擬信號的肌電噪聲,以40 dB信噪比的高斯噪聲λ進行替代,采用頻率為0.1 Hz的正弦波信號用于模擬脈搏信號的基線漂移,如式(21)所示。圖1為干凈的信號及其仿真信號。

圖1 干凈脈搏波及其含噪仿真信號Fig.1 Clean pulse wave and its noisy simulation signal

現將圖1中的脈搏仿真信號進行基于鯨魚優化算法選取VMD的參數。每一次的迭代過程,都是在不斷改變選取的參數值,以求達到最優解。該樣本的參數優化過程如圖2和圖3所示。

可以看出,當迭代次數達到3次時,鯨魚優化過程趨于穩定,最終獲取的最優參數組合為K =10,α=5 356。最終的分解效果如圖4所示。

圖2 仿真信號模態個數優化Fig.2 Optimization of the number of IMFs

圖3 懲罰因子優化過程Fig.3 Optimization process of penalty factor

由圖4可知,原始的脈搏信號經由VMD分解后產生10個模態分量,其中部分模態屬于高頻噪聲信號,部分屬于低頻基漂噪聲,而對于不同的脈搏信號,VMD分解的模態分量數是不同的,因而需要一個指標來衡量分解出的模態屬性。本文采用排列熵對分解的模態進行量化觀察,來判別噪聲分量和有效信號的模態。在排列熵計算中,需要設定嵌入維數m和時間延遲τ,根據經驗,本文取m=3,τ=10[16]。如表1所示為IMF分量的PE值分布,經過對多段脈搏信號的計算,最終選定當PE值高于1.1時為高頻噪聲信號。此外根據頻譜圖可知,經由VMD分解后的第一個模態的峰值頻率為0.122 Hz,屬于加入的基線漂移信號,可認為是脈搏信號的基線漂移。

在提取完噪聲信號后,對高頻噪聲模態分量進行NLM非局部均值濾波,然后將基線漂移分量進行剔除,最后將處理后的模態分量與其他模態分量進行重構,獲得降噪后的信號。

為直觀體現該方法的降噪效果,本文將小波閾值降噪、EEMD-小波閾值和CEEMDAN-小波閾值降噪算法進行了比較,如圖5所示。

圖4 仿真信號的分解效果圖Fig.4 Decomposition effect diagram of simulation signal

表1 各模態分量排列熵分布Tab.1 Arrangement entropy distribution of each IMF

圖5(a)是本文所采用的方法得出的濾波效果,相較于圖1中的原始信號,該方法較好地保持了原有信號的信號特征,并且獲得了更為平滑的數據曲線。圖5(b)中是小波閾值降噪法,右圖中可以看出該降噪后信號存在明顯的波形失真。圖5(c)采用的是EEMD結合小波閾值的方法[16],該方法在整體的信號平滑上同樣有著不錯的表現,但其對于脈搏波的基線漂移濾除效果不佳。圖5(d)采用的是CEEMDAN結合小波閾值的去噪效果[14],可以看出該方法對脈搏信號的基線漂移進行了一定的降噪處理,但降噪后的脈搏波依然存在一定的毛刺信號,尤其是在脈搏周期的峰谷點處依然存在毛刺噪聲,這會影響對脈搏特征點的提取,在局部降噪表現上不佳。因此從圖像上看,本方法相較于其他方法具有更好的濾波效果。

為了量化說明本算法的濾波效果,首先采用相關系數進行評價,與標準的干凈信號進行對比。如表2所示相關系數結果,可以從中看出,改進的VMD算法與原始信號的相關程度更高,從而說明本方法對于原始干凈信號具有較好的還原度,保留了較多的細節。

3.2 實例信號分析

為了進一步驗證本文提出算法對實測脈搏信號的降噪效果,本文采用自行研制的便攜式脈搏信號采集裝置作為本文的脈搏信號樣本來源,并挑選了10名被試者參與脈搏信號的采集。由于脈搏信號受抖動、呼吸等影響較為明顯,會產生一定的基線漂移,故本實驗選擇安靜的環境,采用自主研制的便攜式脈搏采集裝置分別在同一時間段、同一房間內進行實驗。測試者在平靜狀態下進行實驗,戴上采脈裝置,手臂保持水平放置,盡量讓橈動脈與心臟處于同一水平面。本次實驗

圖5 仿真信號去噪對比圖Fig.5 Comparison diagram of simulated signal denoising

采集1 min的脈搏信號,并取其中的1000個數據點作為實驗對象,其余數據可持續驗證實驗。如圖6所示為本次采集的某位被測者的脈搏信號。為方便計算,將脈搏信號進行歸一化處理。

表2 相關系數比較Tab.2 Comparison of correlation coefficients

同樣對脈搏信號進行WOA-VMD分解以及噪聲分量評判,經由VMD分解后產生11個模態分量,如圖7所示為分解效果圖,表3為實例信號的排列熵分布。

圖6 采集的原始數據Fig. 6 The original collected data

圖7 實例信號分解效果圖Fig.7 Decomposition effect diagram of sample signal

表3 各模態分量排列熵分布Tab.3 Arrangement entropy distribution of each IMF

從圖中可以看到,實例信號經由VMD分解后提取到了信號的低頻噪聲,符合仿真信號得到的結論,然后根據排列熵分布對信號分量進行處理。同樣為了能夠反映本文提出的算法對實例信號具有同樣的效果,將去噪效果與多個算法進行對比,如圖8所示。

圖8實例信號去噪效果對比Fig.8 Comparison of sample signal denoising

圖8 (a)是本文所采用的方法得出的濾波效果,可以看到信號在各個波峰谷點處較為平滑,對于基線漂移的濾除較為優異。圖8(b)中是小波閾值降噪法,可以看出該方法對于信號降噪后存在明顯的波形失真,整體波形顯得不平滑,例如第一個波峰處與原信號不符。圖8(c)為EEMD結合小波閾值去噪,可以看到該方法對于脈搏波的基線漂移濾除效果不佳,這與仿真信號的結論一致,并且在第二個脈搏周期中的重搏波特征不明顯(圖中圈出),存在一定的有效信號損失,這會影響到后續脈搏特征提取的研究。圖6(d)采用的是CEEMDAN結合小波閾值的去噪效果。可以看出該方法對脈搏信號的基線漂移進行了一定的降噪處理,但降噪后的脈搏波依然存在一定的毛刺信號,在局部降噪表現上不佳。因此從圖像上看,本方法相較于其他方法具有更好的濾波效果。

為了量化說明本算法的濾波效果,本文采用信噪比和均方根誤差進行說明。其中信噪比越大,均方根誤差越小,表明信號的降噪性能越為優異。對于采集的10組數據,利用上述的3種算法計算出被試者信號的信噪比和均方根誤差,其中由于EEMD去噪存在明顯的基線漂移,因此并未對其進行指標計算。如圖9和圖10所示,為每一組脈搏實例信號所計算獲得的評價指標圖。可以看出,經由本文提出的降噪方法得到的評價指標在10組實驗中均優于其他方法,因而可認為本文的算法具有更好的降噪效果,對于特征信息的保存更為優異。

圖9 不同方法的信噪比Fig.9 Signal-to-noise ratio of different methods

圖10 不同方法的均方根誤差Fig.10 Root mean square error of different methods

本文提出了一種利用鯨魚優化算法尋找VMD分解過程中所需的參數,通過與排列熵確定有效分量,結合非均值濾波方法濾除脈搏信號中存在的噪聲。該方法利用鯨魚優化的快速、自適應等優點尋找合適的模態分解數,有效解決了VMD分解中參數設置的問題。通過排列熵分布,能夠有效地區分出噪聲分量與有效分量。最后通過非局部均值濾波,濾除噪聲信號。實驗證明,相較于CEEMD、傳統VMD等,本方法在脈搏波降噪上的性能要更為出色,對原信號具有更高的還原度,為后期結合特征提取、脈象分類等工作奠定基礎,對脈診客觀化具有重要意義。然而VMD的雙參數優化往往需要多次迭代,導致其運行效率低下,因此如何提高算法的運行效率還需要進一步深入的研究。

猜你喜歡脈搏鯨魚分量小鯨魚幼兒100(2022年41期)2022-11-24迷途鯨魚數學大王·趣味邏輯(2020年9期)2020-09-06一斤生漆的“分量”——“漆農”劉照元的平常生活當代陜西(2019年19期)2019-11-23一物千斤智族GQ(2019年9期)2019-10-28鯨魚小天使·二年級語數英綜合(2019年4期)2019-10-06用心感受狗狗的脈搏金橋(2018年2期)2018-12-06鯨魚島——拖延癥動漫星空(2018年4期)2018-10-26論《哈姆雷特》中良心的分量英美文學研究論叢(2018年1期)2018-08-16光電式脈搏波檢測系統的研究電子制作(2018年2期)2018-04-18沈安娜:按住蔣介石脈搏的諜戰玫瑰山海經(2016年7期)2016-03-20

推薦訪問:算法 濾波 鯨魚

最新推薦
猜你喜歡