王寶珠,胡世帥,李曉嬌
(河北工業(yè)大學(xué) 信息與工程學(xué)院,天津 300401)
基于LabVIEW的心電信號插值算法分析
王寶珠,胡世帥,李曉嬌
(河北工業(yè)大學(xué) 信息與工程學(xué)院,天津 300401)
為了在LabVIEW平臺下更方便的處理非均勻采樣的心電信號,文中研究了心電信號的時域和頻域插值算法。首先采用了拉格朗日插值法、牛頓插值法、埃爾米特插值法和三次樣條插值法等四種時域插值方法,從算法精度、內(nèi)存消耗和時間消耗三個方面做比較,得出埃爾米特插值法最為合適。最后又提出一種頻域插值法:補零傅里葉頻域插值法,來彌補原始心電信號頻域分辨率不足的缺點。
LabVIEW;心電信號;插值算法
通常經(jīng)過硬件采集的心電信號都不是均勻采樣的信號,數(shù)字信號處理技術(shù)里面處理均勻采樣的信號比處理非均勻采樣的信號要簡便的很多[1],而且對于虛擬儀器開發(fā)平臺——LabVIEW,其所提供的很多數(shù)字信號處理函數(shù)大都是針對均勻采樣的數(shù)字信號設(shè)計的,所以很有必要將原始的非均勻采樣信號通過時域插值變?yōu)榫鶆虿蓸有盘?。另外由于在時域采樣過程中,有可能會出現(xiàn)采樣點偏移信號頻率的情況,在對心電信號做頻域分析時還有可能會出現(xiàn)頻率分辨率不高的情況,因此對原始信號做頻域插值也是有必要的。
近年來國內(nèi)外對于心電信號的分析研究,多采用美國麻省理工學(xué)院提供的標(biāo)準(zhǔn)心電數(shù)據(jù)庫:MIT-BIH數(shù)據(jù)庫[2]。此數(shù)據(jù)庫中的心電信號都是為非均勻采樣得到。
以第100例數(shù)據(jù)為例,MIT-BIH數(shù)據(jù)庫中的心電信號如表1所示。其中第一列數(shù)據(jù)為采樣時間點,第二、三列數(shù)據(jù)為不同導(dǎo)聯(lián)方式下的采樣值。
首先對原始的心電信號的功率譜做分析,計算出原始信號的總功率,保證插值后的信號功率與原始信號功率基本一致。
表1 原始心電信號數(shù)據(jù)Tab.1 Data of the original ECG signal
對于非均勻采樣的心電信號,文中采用Lomb歸一化周期圖法[3-4]。Lomb歸一化周期圖定義為:
其中:
LabVIEW程序運行結(jié)果如圖1所示。
圖1 原始心電信號波形和功率譜Fig.1 Waveform and PSD of the original ECG signal
并且編程計算得到此原始心電信號的總功率(即將各個頻率分量的功率相加)為:0.029 076 1。
根據(jù)表1心電信號數(shù)據(jù)特點,計劃通過插值,將其變?yōu)闀r間間隔為0.001 s、采樣率為1 kHz的均勻采樣信號。
首先對所要解決的這個問題建立一個簡單數(shù)學(xué)模型。下面將要介紹的幾種插值法都是建立在這個數(shù)學(xué)模型上來求解的。
X={x0,x1,…,xn-1},為原始心電信號的采樣時間點序列。
Y={y0,y1,…,yn-1},為原始心電信號的采樣值序列。
對于采樣時間點區(qū)間[xk,xk+1]來說,N=(xk+1-xk)/0.001-1 為在這個區(qū)間內(nèi)需要插值的點的個數(shù),則需要插值的點分別為(xk+1×0.001),…,(xk+N×0.001)。
假設(shè)存在一個函數(shù) y=f(x)在區(qū)間[x0,xn-1]上有定義,使得對應(yīng)xk點的函數(shù)值為yk。但由于f(x)肯定非常復(fù)雜,因此需要求解出一個簡單函數(shù) P(x)=yi,稱 P(x)為 f(x)的插值函數(shù),將求解插值函數(shù)P(x)的方法稱為插值法。求解P(x)出后,相應(yīng)再求出需要插值的點的值,最后得到時間間隔為0.001 s、采樣率為1 kHz的均勻采樣信號。
拉格朗日插值法的基本思想是把插值多項式P(x)的構(gòu)造,轉(zhuǎn)換為n個插值基函數(shù)li(x)的構(gòu)造。其中一次拉格朗日插值又稱為線性插值。
假定區(qū)間[Xk,Xk+1]及端點函數(shù)值yk和yk+1,求解線性插值多項式 L1(x),則:
其中:
經(jīng)計算插值后信號的總功率為:0.028 665 3。與原始信號相比,總功率變換率為:-1.412%。
牛頓插值是拉格朗日插值的改進(jìn)。首先定義f(x)的k階差商為:
根據(jù)差商的定義,牛頓插值公式為:
考慮到計算量和插值精度的要求,利用4階牛頓插值公式來對心電信號進(jìn)行插值。
運行程序,經(jīng)計算牛頓插值后信號的總功率為:0.029 245 5。與原始信號相比,總功率變換率為:0.582%。
埃爾米特(Hermit)插值法與上述插值法最大的不同是,它不但保證了在節(jié)點上的函數(shù)值是相等的,而且保證了節(jié)點處的導(dǎo)數(shù)值也是相等的[5]。
假設(shè)已知區(qū)間[Xk,Xk+1]及端點函數(shù)值 yk,yk+1,及端點處一階導(dǎo)數(shù)值 tk,tk+1,求解插值多項式 H(x),其中 H(x)必然滿足條件:
則埃爾米特插值多項式為:
其中:
經(jīng)計算,埃爾米特插值后信號的總功率為:0.028 990 1。與原始信號相比,總功率變換率為:-0.296%。
將富有彈性的細(xì)長鐵絲一段固定在墻上,由于重力的作用,然后另一端會自由向下彎曲,這時彎曲的鐵絲這樣的曲線就稱為樣條曲線。使用三次樣條(Spline)插值來對心電信號進(jìn)行插值,可以最大程度地保證心電波形足夠的平滑。
假設(shè)已知函數(shù) f(x),并且其在節(jié)點 a=x0<x1<…<xn-1=b 處的函數(shù)值滿足條件f(x)=yk。則插值多項式為:
其中:
計算三次樣條插值后信號的總功率為:0.029 064 4。與原始信號相比,總功率變換率為:-0.040%。
上述幾種算法各有其特點,優(yōu)缺點在每個算法的介紹中也提及,就不再贅述。運行利用各個插值功率變化率,比較數(shù)據(jù)如表2所示。
表2 算法性能比較Tab.2 Comparison of the algorithm performance
從此表格可以得出以下幾點:
1)利用Lomb算法估計原始信號功率譜時,消耗的時間和內(nèi)存遠(yuǎn)遠(yuǎn)大于利用FFT估計均勻采樣的數(shù)據(jù)信號的功率譜,再次論證了插值的必要性。
2)拉格朗日插值、牛頓插值、埃爾米特插值和三次樣條插值,四種算法的運行時間和消耗內(nèi)存越來越大,這也是與其算法的復(fù)雜程度相匹配的。
3)從插值前后總功率的變化量來看,4種插值算法的精度越來越高,但即便精度最低的拉格朗日算法其功率變化量也只有1.4%,所損失的這點功率也是可以接受的。
綜上所述,可以看到3次樣條插值雖然其算法的精度非常高,但是卻在運行時間和內(nèi)存消耗上付出了代價,因此并不合適;剩余3種算法,當(dāng)在實時性要求比較高的場合時,建議采用拉格朗日算法或者牛頓算法;當(dāng)對精度要求比較高的時候,建議采用埃爾米特插值算法。
對心電信號做分析處理過程中,無論是功率譜估計還是去噪濾波等大都是在頻域處理的,而心電信號的采樣都是做的時域采樣,因此很有可能采樣位置是偏移信號頻率的[6]。
另外當(dāng)對數(shù)字信號在頻域做非常細(xì)致的分析時,很有可能會遇到頻率分辨率不夠高的情況[7]。為了解決以上可能會遇到的情況,需要對數(shù)字信號做頻域插值處理。
補零傅里葉頻域插值法是一種簡單有效的插值算法。先對原始數(shù)字信號做離散傅里葉變換,根據(jù)心電信號的特點(信號主要能量都集中在低頻部分,高頻分量很?。┻x擇在其高頻部分補零。補零處理完畢后再變換到時域即可。
由于在LabVIEW中做頻域插值處理的信號也須為均勻采樣信號。文中是利用埃爾米特插值后的數(shù)字信號對其做頻域插值,使其頻域分辨率擴大為原來的2倍,實際應(yīng)用中可根據(jù)需要擴大為不同的倍數(shù)。先后經(jīng)埃爾米特和頻域插值后的心電信號的時域波形和功率譜如圖2所示。
插值后信號的總功率為:0.028 990 1。這個數(shù)值是與埃爾米特插值后信號的總功率值一樣的,因為此插值法只是做的補零處理。
圖2 時域和頻域插值后結(jié)果Fig.2 Results of the time-domain and frequency-domain interpolation
時域插值能夠?qū)⒎蔷鶆虻脑夹盘栕優(yōu)榫鶆虿蓸有盘枺渲信nD插值法和埃爾米特插值法能夠分別滿足算法速度和精度的不同要求。補零傅里葉插值法是一種簡單有效的頻域插值法,能夠根據(jù)需求提高心電信號頻率分辨率。
文中針對心電信號所做的插值算法分析,其研究思路和方法對于其他生理信號,比如腦電信號、肌電信號,也是同樣適用的。
[1]于璐,索永寬,沙憲政.基于虛擬儀器的生理信號采集分析系統(tǒng)[J].生物醫(yī)學(xué)工程與臨床,2011,5(3):219-222.
YU Lu,SUO Yong-kuan,SHA Xian-zheng.Physiological signal acquisition and analysis system based on virtual instrument[J].Biomedical Engineering and Clinical Medicine,2011,5(3):219-222.
[2]宋喜國,鄧親愷.MIT-BIH心率失常數(shù)據(jù)庫的識讀及應(yīng)用[J].中國醫(yī)學(xué)物理學(xué)雜志,2004,21(4):230-232.
SONG Xi-guo,DENG Qin-kai.ON the format of MIT-BIH arrhythmia database[J].Chinese Journal of Medical Physics,2004,21(4):230-232.
[3]韓君.基于LabVIEW的心電信號檢測實驗系統(tǒng)設(shè)計[J].中國醫(yī)療設(shè)備,2008(10):55-56.
HAN Jun.Design of ECG-detecting experimental system based on LabVIEW[J].China Medical Devices,2008(10):55-56.
[4]Sahambi J S,Tandon S N,Bhatt R K.Using wavelet transforms for ECG characterization[J].IEEE Engineering in Medicine and Biology Magzine,1997,16(1):77-83.
[5]劉建中.高階Hermite插值的一致收斂性及逼近階[J].廣西師范大學(xué)學(xué)報,1992(1):30-33.
LIU Jian-zhong.On the uniform convergence and approximation order of higher order hermite interpolation[J].Journal of Guangxi Normal University,1992(1):30-33.
[6]于璐,張勇德,沙憲政.LabVIEW和Matlab混合編程方法在生物醫(yī)學(xué)信號分析中的應(yīng)用[J].中國醫(yī)療器械雜志研究與論著,2011,35(1):15-18.
YU Lu,ZHANG Yong-de,SHA Xian-zheng.Application of the mixed programming with labview and matlab in biomedical signal analysis[J].Chinese Journal of Medical Instrumentation,2011,35(1):15-18.
[7]王坤.基于SVPWM的STATCOM設(shè)計及實現(xiàn)[J].陜西電力,2011(1):11-15.
WANG Kun.SVPWM based design and realization of STATCOM[J].Shaanxi Electric Power,2011(1):11-15.
Research on ECG interpolation algorithm based on LabVIEW
WANG Bao-zhu, HU Shi-shuai, LI Xiao-jiao
(College of Information Science and Engineering, Hebei University of Technology, Tianjin 300401, China)
In order to processing the non-uniform sampling electrocardiogram (ECG) signal based on LabVIEW ,this paper analyzed the time-domain and frequency-domain interpolation algorithm for ECG signal.Firstly,we compared four time-domain interpolation algorithm:Lagrange interpolation, Newton interpolation, Hermite interpolation and cubic spline interpolation from three angles of calculation accuracy, memory consumption and program execution time, then the result is that Hermite interpolation algorithm is the most suitable.Also we proposed a frequency-domain interpolation algorithm named Fourier transform with zero-padding interpolation algorithm,which is can improve the frequency resolution.
LabVIEW;ECG signal;interpolation algorithm
TP911.6
A
1674-6236(2013)04-0085-03
2012-10-12稿件編號201210084
王寶珠(1963—),女,天津人,教授,碩士生導(dǎo)師。研究方向:信息檢測與處理、圖像處理、多媒體通信。