孫見鵬, 劉 宏, 劉瀅浩, 田 彤
(1.中國(guó)科學(xué)院 上海微系統(tǒng)與信息技術(shù)研究所,上海 200050; 2.上海科技大學(xué) 信息科學(xué)與技術(shù)學(xué)院,上海 201210; 3.中國(guó)科學(xué)院大學(xué),北京 100000)
心電(electrocardio,ECG)信號(hào)是一種生物電信號(hào)[1],是由心肌收縮產(chǎn)生的弱電信號(hào),現(xiàn)階段在臨床靜態(tài)中檢測(cè)人體ECG的技術(shù)已經(jīng)非常成熟[2],但在運(yùn)動(dòng)過程中人體產(chǎn)生的ECG信號(hào)是很不穩(wěn)定的,包含著很多的干擾,影響著信號(hào)的質(zhì)量[3,4]。在運(yùn)動(dòng)過程中要求得到有效的ECG信號(hào),必須進(jìn)行有效的數(shù)字硬件實(shí)時(shí)濾波處理。
濾除運(yùn)動(dòng)干擾的技術(shù)可以分為兩大類:盲源分離技術(shù)和自適應(yīng)濾波技術(shù)。其中盲源分離技術(shù)主要有獨(dú)立成分分析(independent component analysis,ICA)算法和主要成分分析(principal component analysis,PCA)算法,特點(diǎn)都是運(yùn)算量大和濾波性能優(yōu)秀;自適應(yīng)濾波技術(shù)主要有最小二乘法(least square method,LSM)、最小均方(least mean square,LMS)算法和維納濾波等技術(shù),特點(diǎn)是運(yùn)算量較小同時(shí)濾波性能也良好。文獻(xiàn)[3]采用了基于ICA算法提取胎兒的ECG信號(hào)。文獻(xiàn)[6]采用了PCA算法濾除ECG信號(hào)中的肌電干擾。文獻(xiàn)[7]采用了基于LMS算法的級(jí)聯(lián)自適應(yīng)濾波消除運(yùn)動(dòng)干擾。
可以看出盲源分離技術(shù)適合在終端計(jì)算機(jī)中進(jìn)行處理,并不適合硬件集成實(shí)時(shí)濾波。本文提出了一種基于LMS算法改進(jìn)的自適應(yīng)濾波算法,能夠?qū)崿F(xiàn)數(shù)字硬件集成實(shí)時(shí)濾波。在濾波算法運(yùn)算量增加微小的同時(shí)能夠達(dá)到高于傳統(tǒng)的LMS算法的濾波效果。
自適應(yīng)LMS算法可以隨輸入信號(hào)變化自動(dòng)調(diào)整濾波系數(shù),能夠在未知噪聲干擾與目標(biāo)信號(hào)的特征關(guān)系的情況下跟蹤時(shí)變信號(hào),自動(dòng)調(diào)節(jié)優(yōu)化自身參數(shù),滿足設(shè)計(jì)者的準(zhǔn)則,達(dá)到很好的濾波效果?;贚MS算法的濾波條件及效果,采用數(shù)字自適應(yīng)LMS算法濾除運(yùn)動(dòng)過程中ECG信號(hào)中的噪聲。設(shè)計(jì)的硬件實(shí)現(xiàn)系統(tǒng)及變步長(zhǎng)的LMS算法的流程如圖1。
圖1 硬件實(shí)現(xiàn)系統(tǒng)
模擬部分:前端傳感器采集到的含運(yùn)動(dòng)噪聲的ECG信號(hào)和參考運(yùn)動(dòng)噪聲信號(hào),通過可編程放大器(programmable gain amplifier,PGA)和模/數(shù)轉(zhuǎn)換器(analog to digital conver-ter,ADC)轉(zhuǎn)換成數(shù)字信號(hào)。數(shù)字部分:轉(zhuǎn)換后的數(shù)字信號(hào),通過可以數(shù)字硬件實(shí)現(xiàn)的變步長(zhǎng)LMS算法的自適應(yīng)濾波器,得到濾除運(yùn)動(dòng)干擾噪聲的ECG,實(shí)現(xiàn)實(shí)時(shí)監(jiān)測(cè)。
傳統(tǒng)LMS算法要求2個(gè)輸入信號(hào):d(k)=s(k)+n(k)為輸入的待濾波信號(hào),包含理想的原始理想信號(hào)s(k)和噪聲信號(hào)n(k);參考信號(hào)X(k)。消除噪聲后輸出信號(hào)為e(k)[6]。算法的具體流程如圖2所示。
圖2 自適應(yīng)LMS算法框圖
原始理想ECG信號(hào)s(k)和噪聲信號(hào)n(k)不具有相關(guān)性或是相關(guān)性很小,而參考噪聲信號(hào)X(k)和噪聲信號(hào)n(k)有明確的相關(guān)性。LMS算法的數(shù)學(xué)表述形式如下
e(k)=d(k)-y(k)
(1)
y(k)=WT(k)X(k)
(2)
W(k+1)=W(k)+2μe(k)X(k)
(3)
式(1)為誤差估計(jì),式(2)為濾波器的輸出,式(3)為權(quán)值系數(shù)更新。步長(zhǎng)因子μ控制著算法的收斂率。為了使式(3)收斂,步長(zhǎng)因子μ要滿足0<μ<2/tr[R],其中R為輸入信號(hào)的自相關(guān)矩陣??梢钥吹阶赃m應(yīng)LMS算法的核心在于權(quán)值更新公式。
歸一化LMS(normalization LMS,NLMS)算法,可以看作是對(duì)經(jīng)典的LMS算法針對(duì)權(quán)值更新器的優(yōu)化和改進(jìn)[8]
(4)
式中 ‖X(k)‖為輸入信號(hào)X(k)的范數(shù);β和α為調(diào)節(jié)常數(shù)。
可以看到NLMS算法對(duì)LMS算法的改進(jìn)在于對(duì)步長(zhǎng)因子μ的改進(jìn),變?yōu)榕c輸入?yún)⒖剂肯嚓P(guān)性的因子。相比LMS算法NLMS算法的失調(diào)量更小,收斂速度更快,但運(yùn)算量也隨著改進(jìn)而變大[8]。
在NLMS算法的基礎(chǔ)上,本文提出了面向硬件實(shí)現(xiàn)的變步長(zhǎng)LMS算法。算法通過簡(jiǎn)化NLMS算法的步長(zhǎng)因子與輸入信號(hào)的關(guān)系,減少了權(quán)值更新系統(tǒng)的運(yùn)算量。又通過分析傳統(tǒng)LMS算法收斂性速度較慢的問題,結(jié)合迭代次數(shù)優(yōu)化步長(zhǎng)因子,提高了算法的收斂性能,擁有良好的濾波效果。算法很好地契和了硬件實(shí)現(xiàn)的兩個(gè)要求:運(yùn)算量小,濾波效果好。本文將步長(zhǎng)因子與迭代次數(shù)相關(guān)聯(lián),其權(quán)值更新公式為
W(k+1)=W(k)+(1/δk)e(k)X(k)
(5)
式中k為迭代次數(shù),在自適應(yīng)濾波初始階段,k較小,從而整個(gè)步長(zhǎng)因子較大,其收斂速度很快,隨著迭代次數(shù)的增加步長(zhǎng)因子趨于穩(wěn)定,保持權(quán)值系數(shù)W(k)穩(wěn)定在最優(yōu)權(quán)值系數(shù)附近,既優(yōu)化了收斂速度又確保了運(yùn)算量不會(huì)大幅增加。同樣的,式(5)中δ是與參考噪聲X(k)相關(guān)的系數(shù),根據(jù)NLMS算法和文獻(xiàn)[7]可以看出:步長(zhǎng)因子隨著參考噪聲X(k)的增加而減小。實(shí)驗(yàn)結(jié)果表明對(duì)于濾除特定運(yùn)動(dòng)噪聲,可以簡(jiǎn)化其相關(guān)性,對(duì)于不同的參考噪聲X(k),δ有不同的常數(shù)值。
文獻(xiàn)[7]采用了一種變步長(zhǎng)的LMS算法,來實(shí)現(xiàn)濾除干擾。其步長(zhǎng)因子表達(dá)式為
(6)
c(k)=σx(k)σd(k)/p
(7)
通過式(6)和式(7)可以看到,其對(duì)步長(zhǎng)因子進(jìn)行了分段處理,并將變步長(zhǎng)部分c(k)與兩個(gè)輸入信號(hào)關(guān)聯(lián)處理,得到整體的步長(zhǎng)因子μ(k)。可以看出其運(yùn)算量較μ(k)=1/δk大很多。將不同算法的權(quán)值更新運(yùn)算量的比較整理于表1中,其中L為濾波器的階數(shù)??梢钥闯?,本文采用的變步長(zhǎng)LMS算法明顯優(yōu)于NLMS算法和文獻(xiàn)[7]算法,相較于經(jīng)典的LMS算法只是在乘法運(yùn)算中增加了“1”的運(yùn)算量,本文的變步長(zhǎng)LMS算法在硬件實(shí)現(xiàn)濾除ECG信號(hào)中運(yùn)動(dòng)干擾中具有特有的優(yōu)勢(shì)。
表1 不同算法的權(quán)值更新運(yùn)算量比較
為了實(shí)現(xiàn)對(duì)運(yùn)動(dòng)過程中ECG信號(hào)濾除過程的模擬,實(shí)驗(yàn)采用麻省理工學(xué)院研究心律失常(MIT-BIH)數(shù)據(jù)庫(kù)中ECG信號(hào)和運(yùn)動(dòng)噪聲信號(hào)[9]。
理想ECG信號(hào)s(k)選取數(shù)據(jù)庫(kù)中的118號(hào)ECG信號(hào)中前10 000個(gè)數(shù)據(jù)作為研究樣本,運(yùn)動(dòng)噪聲信號(hào)X(k)選取數(shù)據(jù)庫(kù)中電極運(yùn)動(dòng)干擾信號(hào)中前10 000個(gè)數(shù)據(jù)作為研究樣本。通過將理想ECG信號(hào)和運(yùn)動(dòng)噪聲經(jīng)過數(shù)據(jù)變換整合得到模擬人體運(yùn)動(dòng)狀態(tài)下的ECG信號(hào)d(k),然后通過設(shè)計(jì)的變步長(zhǎng)LMS算法,得到輸出波形e(k)。
通過圖3可以看出:運(yùn)動(dòng)中的ECG信號(hào)通過變步長(zhǎng)LMS算法很好地濾除了運(yùn)動(dòng)噪聲。信噪比(signal to noise ratio,SNR)從-4.337 5 dB提高到了16.667 8 dB。為了方便觀察,圖3僅顯示了前2 000個(gè)數(shù)據(jù)樣本。
圖3 通過變步長(zhǎng)LMS算法的波形及其對(duì)比
圖4比較了相同輸入信號(hào)d(k)和X(k)通過變步長(zhǎng)LMS算法和經(jīng)典LMS算法后的輸出波形??梢钥闯觯和ㄟ^變步長(zhǎng)LMS算法的效果要好很多,SNR提升了14 dB,更貼近理想ECG信號(hào)。
圖4 2種算法的輸出波形比較
圖5為2種算法的均方誤差(mean square error,MSE)比較,可以看出:變步長(zhǎng)LMS算法收斂更快更好。
圖5 2種算法均方誤差的比較
實(shí)驗(yàn)還分析了系數(shù)δ與運(yùn)動(dòng)狀態(tài)下ECG信號(hào)d(k)中運(yùn)動(dòng)噪聲X(k)的關(guān)系。δ隨著分量X(k)的增加而變大。當(dāng)運(yùn)動(dòng)強(qiáng)度一定時(shí),δ為定值。表2為系數(shù)δ與X(k)強(qiáng)度系數(shù)S(x(k))的關(guān)系以及通過變步長(zhǎng)LMS算法得到的最佳SNR。
表2 δ與Sx(k)的關(guān)系
面向硬件實(shí)現(xiàn)中實(shí)時(shí)濾除ECG信號(hào)中的運(yùn)動(dòng)干擾的問題,提出了變步長(zhǎng)LMS算法自適應(yīng)消除的方法。在傳統(tǒng)LMS算法的基礎(chǔ)上改進(jìn)優(yōu)化步長(zhǎng)因子,在運(yùn)算量增加很小的情況下實(shí)現(xiàn)了信噪比的大幅提升。即滿足了硬件實(shí)現(xiàn)要求運(yùn)算量盡量小的條件,又實(shí)現(xiàn)了良好的運(yùn)動(dòng)干擾消除。算法在硬件實(shí)現(xiàn)實(shí)時(shí)濾除ECG信號(hào)中運(yùn)動(dòng)干擾的領(lǐng)域擁有廣闊的應(yīng)用前景。
參考文獻(xiàn):
[1] 江培海,黃啟俊,常 勝,等.基于SOC FPGA的心電信號(hào)檢測(cè)系統(tǒng)設(shè)計(jì)[J].傳感器與微系統(tǒng),2016,35(2):74-77.
[2] 張大偉,王???張 斌,等.新型三導(dǎo)聯(lián)無線ECG設(shè)計(jì)與其處理算法研究[J].傳感器與微系統(tǒng),2013,32(5):35-37.
[3] 余冠成,趙曉東,俞 乾,等.超低功耗智能移動(dòng)心電監(jiān)測(cè)設(shè)備[J].傳感器與微系統(tǒng),2015,34(3):74-76,80.
[4] 牛 群.可穿戴心電監(jiān)測(cè)裝置設(shè)計(jì)與實(shí)現(xiàn)[D].哈爾濱:哈爾濱工業(yè)大學(xué),2016.
[5] 楊少鵬,吳小培,張 磊.基于ICA 的胎兒心電提取系統(tǒng)[J].計(jì) 算 機(jī) 系 統(tǒng) 應(yīng)用,2011,20(9):22-26.
[6] 王曉花,徐學(xué)軍,何秋婭.一種ECG 信號(hào)肌電干擾去除方法的研究[J].智能計(jì)算機(jī)與應(yīng)用,2015,5(1):59-62.
[7] Hyejung K,Sunyoung K,Van Helleputte N,et al.Motion artifact removal using cascade adaptive filtering for ambulatory ECG monitoring system[C]∥Biomedical Circuits and Systems(BioCAS) Conference,2012.
[8] Paulo S R Diniz.自適應(yīng)濾波算法與實(shí)現(xiàn)[M].北京:電子工業(yè)出版社,2004.
[9] 朱澤煌, 胡廣書,郭 恒,等.MIT-BIH心電數(shù)據(jù)庫(kù)的開發(fā)及用作檢測(cè)標(biāo)準(zhǔn)[J].中國(guó)生物醫(yī)學(xué)工程學(xué)報(bào),1993(4):244-249.