当前位置:首页 > 利用DSP实现自适应滤波 - 图文
DSP系统课程设计
一个自适应的FIR滤波器的结构,可以是横向结构,对称横向结构以及格形结构。
2.3.1 横向型结构
横向型结构是在大多数应用情况下所采用的最主要的自适应滤波器结构,如下图所示。滤波器的输出y(n)表示为:
y(n)?w(n)X(n)??wi(n)x(n?i)Ti?0N?1
其中X(n)=[x(n),x(n-1),…x(n-x+1)]为输入矢量, w(n)=[w0(n),w1(n),…,wn?1(n)]滤波器的阶数。
由表达式可见,y(n)实际是两矢量的内积——既把x(n)与w(n)相卷的结果。
TT是权系数矢量,T为转置符,N为时间序列,N为
2.3.2 对称横向型结构
如果N阶FIR滤波器的单位脉冲响应h(n)为实数,且满足对称性的条件,即:
h(n)=h(N-1-n)
则称为对称横向性结构,如下图所示。在具有严格的线性特性的语音处理、波形传输系统、图象处理等方面得到广泛应用。
3
DSP系统课程设计
这种关于中心点对称的FIR滤波器的输出y(n)可由下面的表达式给出
n/2?1y(n)??w(n)[x(n?i)?x(n?N?i?1)]it?0
其中N为阶数,它一定是偶数。注意,对于定点处理器,上式的相加运算可能产生溢出。为此有时需要对归一化的输入数据在右移一位。
2.3.3 格形结构的自适应滤波器
另一种迭代FIR滤波器结构是格形结构。格形结构的引出是用Durbin 算法求解自适应滤波器的最佳权系数所导出来的。在使用LMS算法求解自适应滤波器最佳权系数时,可以发现,最佳权系数满足一个线性方程组,该方程组的系数矩阵具有toeplitz性质,即该矩阵为对称矩阵,且方阵的任一子方阵的对角线上的元是相等的。
具有Toeplitz性质的线性方程可以按下列思路求解:先假设导出了只有N-1元的方程组的解,并由此推出N元方程组的解。这是一种递推算法,应用于最佳权系数估值,就形成了Durbin算法。这里不做详细推倒了,直接给出格式结构,下图所示:
它是基于一系列预测误差滤波器的去相关传输结构。格形结构的误差预测器的递推公式如下:
fm(n)?fm?1(n)?km(n)bm?1(n?1)(m?(0,M])bm(n)?bm?1(n?1)?km(n)fm?1(n)(m?(0,M])
其中,
fm(n)是前向预测误差,
bm(n)是后向预测误差,
km(n)是反射系数,m是阶数
序列值,M是串联的总级数。格式结构的优点是按阶递归,故增加或减少级数不会影响存在的阶数设计。
要用格形滤波器进行实际数据处理,首先要知道
km(n),这些系数可以使用Durbin算
法,由自相关系数的估值来算出,运算量很大。可以使用下列反射系数的递推方程来递推估计。
km(n?1)?km(n)?u[fm(n)bm?1(n?1)bm(n)fm?1(n)]4
DSP系统课程设计
在诸如噪声消除器、信道均衡器、在线信号增强器等自适应滤波器的应用中,可以采用格形结构。这种格形抽头结构完成两类最佳估计:一类是格形误差预测器,输出分别为前向预测误差
fm(n)和后向预测误差
bm(n);另一类是多路回归滤波器,其特性用下列方程表示:
e0(n)?d(n)?b0(n)g0(n)em(n)?em?1(n)?bm?1(n)gm?1(n)y(n)??g(n)bm(n)m?0mM
从上面算法可以看出,格形抽头自适应滤波器的计算要复杂得多,但计算量的增加却带来很多好处。首先是收敛速度比横向结构来得快,同时稳定性更好。其次,系数量化精度的影响很小,对于的低位数要求也使舍入误差很小。另外,格式结构自适应滤波器还提供了误庆差预测值和反射系数最佳值,后者在作其他分析时有明显物理意义。正是这些优点,使格式结构得到广泛应用。
2.4 LMS算法与RLS算法 2.4.1 LMS算法
LMS算法是上世纪50到60年代通用电子公司在研制天线的过程中为抑制旁瓣而提出的。随后又发展出了归一化算法和加遗忘因子LMS算法。1977年,Makjoul提出了格型滤波器,并由此发展出了LMS自适应格型滤波器算法。Herzberg等人提出了延时LMS(DLMS)算法;2002年尚勇等人提出了并行延时LMS算法;此外还有附属LMS算法、数据块LMS算法等。
LMS算法具有低计算复杂度、在平稳环境中收敛性好、均值无偏的收敛到维纳解等优点,使LMS算法成为应用最广的自适应算法。由于LMS算法广泛的应用,所以为了解决实际问题,基于基本LMS算法的新的LMS算法不断地被提出。本设计就是使用LMS算法来实现对信号的自适应滤波的。
2.4.2 RLS算法
尽管LMS算法的应用广泛,但是它也有缺点。当环境噪声不是平稳随机信号时,LMS算法很难自适应的跟踪统计特性变化的外部噪声干扰,因而其收敛效果一般。而基于RLS的自适应滤波算法克服了上述缺点,能在非平稳环境下取得较满意的滤波效果。RLS算法是在LMS算法的基础上而来的,所不同的是在求均方误差时观测数据的长度是变化的。且随着观测数据的时间先后顺序分别乘了加权因子。即RLS算法的均方误差变为:
ξ(k)=
?β(k,n)??(n)n?1k2
式中:β(k,n)是加权因子,满足0<β(k,n)≤1,n=1,2,…,k,也称作遗忘
5
DSP系统课程设计
因子。这样会使多次迭代之前的信号被遗弃掉,当滤波器工作于非平稳环境时,观测数据仍可能服从统计变化的一些特性
2.4.3 两种算法对比
LMS算法只是用以前各时刻的抽头参量等作该时刻数据块评估时的平均误差均方最小的准则,而未用现时刻的抽头参量等来对以往各时刻的数据块作重新评估后的累计平方误差最小的准则,所以LMS算法对非平稳信号的适应性差。RLS算法的基本思想是力图使在每个时刻对所有已输入信号而言重估的平方误差的加权和最小,这使得RLS算法对非平稳信号的适应性要好。与LMS算法相比,RLS算法采取时间平均,因此,所得出的最优滤波器依赖于用于计算平均值的样本数,而LMS算法是基于集平均而设计的,因此稳定环境下LMS算法在不同计算条件下的结果是一致的。
而无论从运算复杂度上还是从存储量方面,LMS算法都是非常高效的自适应算法。以算法复杂度为例,LMS算法只需要2L次乘法和加法运算,其复杂度比RLS算法小得多。而且LMS算法的另一个优点是它没有计算稳定性问题,而这是RLS算法无法回避的。因此综上LMS算法是目前使用最广泛的自适应算法,这一点在与定点DSP相关的工程实例中体现的十分突出。
2.5 自适应滤波器的应用 2.5.1 自适应预测
下图中给出了自适应预测的系统结构。原始信号d(n)的延时x(n)是自适应滤波器的输入信号,y(n)为预测信号输出,e(n)为预测误差。
d(n) + 延 时 e(n) ?- x(n) 自适应滤波器结构 y(n) 自适应预测的最主要应用例子是语音信号的波形编码。为了提高信道容量,压缩编码技术是很重要的手段。自适应滤波器利用语音信号相邻采样值的相关性,可使预测的误差信号e(n)平均来讲比输入信号小得多,因而把误差信号量化并传输给接收端所需要的位数要少得多。这种波形编码就是自适应差分脉冲编码(ADPCM),它保证以32kbps的速率完成语音无失真传输。
6
共分享92篇相关文档