基于LMS自适应滤波的心电信提取.docx
《基于LMS自适应滤波的心电信提取.docx》由会员分享,可在线阅读,更多相关《基于LMS自适应滤波的心电信提取.docx(8页珍藏版)》请在冰豆网上搜索。
![基于LMS自适应滤波的心电信提取.docx](https://file1.bdocx.com/fileroot1/2022-12/31/e46aded3-980e-42fa-9252-3b62d24353f2/e46aded3-980e-42fa-9252-3b62d24353f21.gif)
基于LMS自适应滤波的心电信提取
数字信号处理
课程报告
题目:
基于LMS自适应滤波在胎儿心电监护中的应用仿真
院系:
专业:
姓名:
学号:
摘要
自适应数字滤波器和维纳滤波器一样,都是符合某种准则的最佳滤波器。
维纳滤波器的参数是固定的,适用于平稳随机信号的最佳滤波。
在实际设计中,常常无法知道输入信号是否平稳以及信号和噪声统计分布规律,且统计特性还会变化,因此实现最佳滤波是困难的。
1967年Widrow等人提出自适应滤波器的设计方法,它的参数可以自动地按照某种准则调整到最佳滤波,实现时不需要任何关于信号和噪声的先验统计知识,尤其当输入统计特性变化时,自适应滤波器都能调整自身的参数来满足最佳滤波器的需要。
1975年,威德诺()和Hof提出的最小均方(LMS)算法,是用梯度的估计值代替梯度的精确值,这种算法简单易行,获得了广泛的应用,对自适应技术的发展起了极大的作用。
本论文主要是基于LMS自适应滤波在胎儿心电监护中的应用仿真。
通过简要阐述自适应滤波器和LMS的相关原理,结合胎儿心电监护的应用,在MATLAB的平台上使用自适应滤波器的方法从母婴混合心电信号中提取纯净胎儿信号并绘出图谱。
通过仿真结果,分析几个参数(步长、滤波器阶数)对实验结果的影响,进一步加深对自适应滤波和LMS的学习理解。
关键词:
自适应数字滤波器;最佳滤波器;威德诺;最小均方算法;梯度;胎儿心电监护;MATLAB
ABSTRACT
TheadaptivedigitalfilterandWienerfilterarethebestfilterstomeetsomecriteria.TheparametersoftheWienerfilterarefixed,andaresuitablefortheoptimalfilteringofstationaryrandomsignals.Inpractice,itisoftendifficulttoknowwhethertheinputsignalisstationaryandthesignalandnoisestatisticsdistributionlaw,andthestatisticalcharacteristicswillchange,soitisdifficulttoachievethebestfilter.In1967,Widrowetalproposedthedesignmethodoftheadaptivefilter.Itsparameterscanbeadjustedtothebestfilterautomaticallyaccordingtosomecriterion.Theadaptivefiltercanadjustitsparameterstomeettheneedsoftheoptimalfilter.In1975,theleastmeansquare(LMS)algorithmproposedbyWidnoandHofistheexactvalueofthegradient.Thisalgorithmissimpleandeasytooperate.Ithasbeenwidelyusedandhasagreateffectonthedevelopmentofadaptivetechnology.ThisthesisisbasedontheapplicationofLMSadaptivefilterinfetalECGmonitoring.Inthispaper,theprincipleofadaptivefilterandLMSisintroduced,andtheapplicationoffetalECGmonitoringisintroduced.ThemethodofadaptivefilterisusedintheMATLABplatformtoextractpurefetalsignalanddrawthemapfromthemixedECGsignal.Throughthesimulationresults,theeffectsofseveralparameters(stepsizeandfilterorder)ontheexperimentalresultsareanalyzed,andthelearningandunderstandingoftheadaptivefilterandLMSisfurtherdeepened.
Keywords:
Adaptivedigitalfilter;filter;weedConnaught;leastmeansquarealgorithm;gradient;fetalECGmonitoring;MATLAB
第一章绪论
自适应滤波器的原理
所谓的自适应滤波,就是利用前一时刻以获得的滤波器参数的结果,自动的调节现时刻的滤波器参数,以适应信号和噪声未知的或随时间变化的统计特性,从而实现最优滤波。
自适应滤波器实质上就是一种能调节其自身传输特性以达到最优的维纳滤波器。
自适应滤波器不需要关于输入信号的先验知识,计算量小,特别适用于实时处理。
由于无法预先知道信号和噪声的特性或者它们是随时间变化的,仅仅用FIR和IIR两种具有固定滤波系数的滤波器无法实现最优滤波。
在这种情况下,必须设计自适应滤波器,以跟踪信号和噪声的变化。
自适应滤波器的特性变化是由自适应算法通过调整滤波器系数来实现的。
一般而言,自适应滤波器由两部分组成,一是滤波器结构,二是调整滤波器系数的自适应算法。
自适应滤波器的结构采用FIR或IIR结构均可,由于IIR滤波器存在稳定性问题,因此一般采用FIR滤波器作为自适应滤波器的结构。
图示出了自适应滤波器的一般结构。
图1-1自适应滤波器结构的一般形式
图为自适应滤波器结构的一般形式,图中x(k)输入信号,通过权系数可调的数字滤波器后产生输出信号y(k),将输出信号y(k)与标准信号(又称期望信号)d(k)进行比较,得到误差信号e(k)。
e(k)和x(k)通过自适应算法对滤波器的权系数进行调整,调整的目的使得误差信号e(k)最小。
重复上面过程,滤波器在自己的工作过程中逐渐了解到输入信号和噪声的统计规律,并以此为根据自动调整滤波器权系数,从而达到最佳的滤波效果。
一旦输入的统计规律发生了变化,滤波器能够自动跟踪输入信号变化,自动调整滤波器的权系数,最终达到滤波效果,实现自适应过程。
图是使用自适应滤波器的系统识别原理图。
图1-2自适应滤波器的系统识别框图
自适应滤波器的结构可以采用FIR或IIR滤波器存在稳定性问题,因此一般采用FIR滤波器作为自适应滤波器的结构。
自适应FIR滤波器结构又可分为3种结构类型:
横向型结构(TransversalStructure)、对称横向型结构(SymmetricTransversalStructure)以及格型结构(LatticeStructure)。
本文采用自适应滤波器设计中最常用的FIR横向型结构。
自适应滤波算法
由Widrow和Hoff引入的最小均方(LMS)算法,由于其简单性、运算高效性各种运行条件下良好的性能,而被广泛应用。
基于梯度的最小均方(LMS)算法是最基本的算法,其含义相对简单明了。
选定均方误差为权矢量二次函数时,性能度量曲线可以形象地看成一个碗形曲面这样自适应处理器的任务便是不断地向最低点逼近,即可以通过计算梯度的方法实现性能度量的最优化。
而基于梯度的算法中,最简单的一种就是最小均方算法LMS算法,LMS算法使用的准则是使均衡器的期望输出值和实际输出值之间的均方误差(MSE)最小化的准则,依据输入信号在迭代过程中估计梯度矢量,并更新权系数以达到最优的自适应迭代算法。
这算法不需要计算相应的相关函数,也不需要进行矩阵运算。
自适应滤波器最普通的应用就是横向结构。
滤波器的输出信号
(1-1)
T表示转置矩阵,n是时间指针,N是滤波器次数。
这个例子就是有限脉冲响应滤波器的形式,为x(n)和w(n)两个矩阵卷积。
这种自适应算法使用误差信号
(1-2)
为了方便起见,将上述式子表示为向量形式,则上述式子表示为:
(1-3)
误差序列可写为
(1-4)
其中d(n)是期望信号,y(n)是滤波器的输出。
使用输入向量x(n)和e(n)来更新自适应滤波器的最小化标准的相关系数。
显然,自适应滤波器控制机理是用误差序列e(n)按照某种准则和算法对其系数{wi(n)},i=1,2,…,N进行调节的,最终使自适应滤波的目标(代价)函数最小化,达到最佳滤波状态。
本节所用的标准是最小均方误差(MSE)
(1-5)
E[]表示算子期望。
假如公式中的y(n)被公式取代,公式就可以表示为
(1-6)
是
自相关矩阵,是输入信号的自相关矩阵。
是
互相关向量,也指出了期望信号d(n)和输入信号向量x(n)的相互关矢量。
由式(1-6)可见,自适应滤波器的代价函数是延迟线抽头系数的二次函数。
当矩阵R和矢量P己知时,可以由权系数矢量w直接求其解。
最优解
最小化MSE,源自解这个公式
(1-7)
将式(1-6)对w求其偏导数,并令其等于零,假设矩阵R满秩(非奇异),可得代价函数最小的最佳滤波系数
(1-8)
这个解称为维纳解,即最佳滤波系数值。
因为均方误差(MSE)函数是滤波系数w的二次方程,由此形成一个多维的超抛物面,这好像一个碗状曲面又具有唯一的碗底最小点,通常称之为自适应滤波器的误差性能曲面。
当滤波器工作在平稳随机过程的环境下,这个误差性能曲面就具有固定边缘的恒定形状。
自适应滤波系数的起始值{wi(0)},i=1,2,…,N是任意值,位于误差性能曲面上某一点,经过自适应调节过程,使对应于滤波系数变化的点移动,朝碗底最小点方向移动,最终到达碗底最小点,实现了最佳维纳滤波。
自适应过程是在梯度矢量的负方向接连的校正滤波系数的,即在误差性能曲面的最陡下降法方向移动和逐步校正滤波系数,最终到达均方误差为最小的碗底最小点,获得最佳滤波或准最优工作状态。
广泛使用的LMS算法是一种选择性法适应采样和采样基础。
这个方法可以避免复杂的计算。
自适应LMS算法利用时间n=0的滤波系数矢量为任意的起始值w(0),然后开始LMS算法的计算,其步骤如下:
1)由现在时刻n的滤波器滤波系数矢量估值w(n),输入信号矢量x(n)及期望信号d(n),计算误差信号e(n):
(1-9)
2)利用递归法计算滤波系数矢量的更新估值。
3)将时间指数n增加1,回到第一步骤,重复上述计算步骤,一直到达稳定状态为止。
由此可见,自适应LMS算法简单,它既不需要计算输入信号的相关函数,又不要求矩阵之逆。
由于LMS算法简单和易于实现,因而得到了广泛的应用。
对LMS算法的性能和改进算法已经做了相当多的研究,并且至今仍是一个重要的研究课题。
第二章胎儿心电监护应用仿真
概述
随着人们生活节奏加快以及饮食结构发生变化,身体疾病越来越多地呈现出增长趋势,而这样的变化对于产妇而言有着重大影响,甚至有时候对母体和新生儿的生命都产生威胁。
胎儿心电信号是反映胎儿宫内生理活动的客观指标之一,通过围产期胎儿心电监护可以早期诊断妊娠期及分娩期的胎儿宫内缺氧及先天性心脏病等疾病,降低围产儿发病率与死亡率。
胎儿心电图能准确区分胎儿心脏活动周期的微小电位变化,其形态变化比目前广泛使用的B型超声监护仪、多普勒超声监护仪和胎心监护仪等更敏感,已成为认知和了解胎儿心脏活动及早期发现胎儿疾病的重要手段。
有效提高胎儿心电信号提取的水平和能力,得到清晰的胎儿心电图具有重要的理论意义和实用价值。
但是目前胎儿心电信号提取存在着准确率低、实现复杂度高等问题,限制了它在临床上的应用。
1975年,Widrow等首次运用最小均方误差(LMS)自适应滤波器算法提取胎儿心电信号,把母体心电信号作为参考输入送入LMS自适应滤波器,按照最优准则调整自适应滤波器参数,最终从腹壁混合信号中滤除母体心电成分提取到胎儿心电信号。
本文结合自适应滤波器的应用,采用最小均方算法(LMS),详细分析胎儿心电信号的提取原理,通过改变几个参数(步长、滤波器阶数)来分析自适应滤波器对胎儿信号提取的影响。
实验步骤及程序
检测胎儿心音,需要将母亲的心音及背景干扰去除。
母亲的心音强度通常是胎儿心音的2倍到10倍,肌肉活动及胎儿运动产生的背景干扰也常常大于胎儿心音的强度。
可以采用自适应对消的方法来监护胎儿心电图。
将母亲胸部的信号作为参考输入,主要包括母亲心音和背景噪声,也有胎儿的心音信号;从母亲腹部取出的信号作为原始输入,包括母亲心音、胎儿心音和背景干扰。
可以看出这个系统是一个有信号分量泄漏到参考输入端的自适应对消系统。
在本次实验中,主要使用的流程为:
d(n)e(n)
x(n)y(n)
图实验流程图
混合信号d(n)为母亲心音与胎儿心音的混合信号(不考虑背景干扰),母亲胸部的信号x(n)作为参考输入,e(n)=d(n)-y(n)为胎儿心电信号。
实验步骤如下:
1.读取d(n)(混合信号)、x(n)(母亲参考信号),初始化W[N],初始化步长u和滤波器阶数L;
2.计算y(n)=w’*x,并计算误差e(n)=d(n)-y(n);
3.使用迭代公式计算w(n)=w(n-1)+2*u*e(n)*x;
4.使用固定好后的权重向量w进行预测;
实验程序:
本实验的混合信号d(n)和母亲参考信号x(n)是用MATLAB读入MIT-BIH数据库的心电信号数据,即程序中的“”与“”文本文件。
clearall;
d=load('');
x=load('');
M=1024;%数据长度
N=13;%滤波器的阶数
mu=;%步长
iter=length(x);%迭代次数默认为输入信号长度
w=zeros(N,M);%每一行代表一个加权参量,每一列代表一次迭代,初始为0
e=zeros(M,1);%误差序列,e(k)表示第k次迭代时预期输出与实际输入的误差
%将y信号右移N位,以便进行迭代时的加权运算
x1=zeros(N,1);
fori=N+1:
(N+M-1)
x1(i)=x(i+1-N);
end
%调整滤波器系数的LMS算法
forn=2:
iter;
x2=x1(n:
1:
n+N-1);
y(n)=w(:
n-1).'*x2;%每次取N个参考信号与权系数相乘得到噪声估计
e(n)=d(n)-y(n);%噪声抵消的输出
w(:
n)=w(:
n-1)+2*mu*x2*e(n);%权矢量迭代
end;
%最后稳定后的胎儿心电信号
forn=2:
iter;
x2=x1(n:
1:
n+N-1);
y(n)=w(:
end).'*x2;%每次取N个参考信号与最后稳定权系数相乘得到噪声估计e(n)=d(n)-y(n);%噪声抵消的输出
end;
%输出三个心电波形
figure
(1);
subplot(3,1,1);
plot(x);
title('母亲心电信号');
subplot(3,1,2);
plot(d);
title('混合心电信号');
subplot(3,1,3)
plot(e);
title('滤波后的胎儿心电信号');
实验仿真结果与分析
实验仿真结果
所采用自适应滤波器的步长为,滤波器的阶数为13。
通过MATLAB的实验仿真,实验结果如图。
图实验仿真结果
实验结果分析
1、改变步长对输出结果的影响
图步长u=,L=13
图步长u=,L=13
图步长u=L=13
结果分析:
通过对比图、图、图及图可以知道:
步长u对收敛的速度还有误差的效果都有影响。
当步长u较大时,收敛的速度比较快,效果比较好;当u太大时,收敛速度过于快,会使结果完全与期望值偏离。
2、改变滤波器阶数对输出的影响
图步长u=,L=20
图步长u=,L=100
图步长u=,L=200
结果分析:
通过对比图、图及图可以知道:
取不同的滤波器阶数L,对实验的结果也有影响,滤波器阶数过大会使结果完全与期望值偏离。
3、误差e(胎儿心电信号)的分析:
通过实验可以知道,在初始化模型参数,利用LMS进行参数自调整中,误差e有逐渐减少的趋势。
结束语
自1967年Widrow等人提出自适应滤波器以来,在短短几十年中,自适应滤波器发展很快,已广泛地用于系统模型识别,通信信道的自适应均衡,雷达与声纳的约束形成,减少或消除心电图中的周期干扰,噪声中信号的检测、跟踪、增强和线性预测等。
本课程报告较为全面的介绍了自适应滤波和LMS的基本原理,基于MATLAB仿真平台,采用自适应滤波器的方法从母婴混合心电信号中提取纯净胎儿信号并绘出图谱,我加深了对LMS算法的理解,并明白了步长和滤波器阶数对结果影响很大,找到一个比较好的步长和阶数需要多次尝试,所以做实验要不骄不躁。
这为我以后做科研打下了坚实的基础。