主要内容

dsp。FastTransversalFilter

快速横向最小二乘FIR自适应滤波器

描述

dsp。FastTransversalFilter使用快速横向最小二乘FIR自适应滤波器计算输出,误差和系数。

实现自适应FIR滤波器对象:

  1. 创建dsp。FastTransversalFilter对象,并设置其属性。

  2. 使用参数调用对象,就像调用函数一样。

要了解更多关于System对象如何工作的信息,请参见什么是系统对象?

创建

描述

“保障未来粮食供给”= dsp。FastTransversalFilter返回System对象™,“保障未来粮食供给”,它是一种快速的横向最小二乘FIR自适应滤波器。这个系统对象计算给定输入和期望信号的滤波输出和滤波误差。

例子

“保障未来粮食供给”= dsp。FastTransversalFilter (len返回一个dsp。FastTrasversalFilter系统对象长度属性设置为len

“保障未来粮食供给”= dsp。FastTransversalFilter (名称,值返回一个dsp。FastTransversalFilter系统对象,每个指定的属性设置为指定的值。

属性

全部展开

除非另有说明,属性是nontunable,这意味着您不能在调用对象之后更改它们的值。对象在调用时锁定,而释放函数打开它们。

如果一个属性是可调,您可以随时更改它的值。

有关更改属性值的更多信息,请参见在MATLAB中使用系统对象进行系统设计

指定用于计算过滤系数的方法为“快速横向最小二乘”滑动窗快速横向最小二乘.有关用于实现这两种不同方法的算法,请参阅[1].此属性是不可调优的。

指定FIR滤波器系数向量的长度为正整数值。

数据类型:

将滑动窗口的宽度指定为大于或等于长度属性值。的值是默认值长度财产。

依赖关系

该属性仅在方法属性设置为滑动窗快速横向最小二乘

数据类型:

指定快速横向滤波器遗忘因子为范围(0,1)内的正标量。将此值设置为1表示过滤器自适应时内存无限。将此属性值设置为1表示无限内存,同时调整以查找新的筛选器。为了获得最佳结果,将该属性设置为范围[1 - 0.5 / L, 1),l是Length属性值。

可调:是的

依赖关系

该属性仅在方法属性设置为“快速横向最小二乘”

数据类型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64|逻辑

将正向和反向预测误差向量的初始值指定为一个正数值标量。这个标量应该足够大,以保持稳定性,并防止卡尔曼增益救援次数过多。

可调:是的

数据类型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64

指定快速横向滤波器的转换因子的初始值。

属性的值取决于方法财产。如果方法设置为:

  • “快速横向最小二乘”——该属性必须是小于或等于的正数值1

  • 滑动窗快速横向最小二乘——此属性必须是两个元素的数字向量。这个向量的第一个元素必须在这个范围内[0, 1],第二个元素必须小于或等于-1.在本例中,默认值为[1]

可调:是的

数据类型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64|逻辑

将FIR自适应滤波器系数的初始值指定为标量或长度等于的值的向量长度财产。

可调:是的

数据类型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64

指定是否锁定过滤系数值。默认情况下,此属性的值为,对象不断更新滤波系数。如果此属性设置为真正的时,过滤系数不更新,其值保持不变。

可调:是的

使用

描述

例子

y犯错) =“保障未来粮食供给”(xd过滤器的输入x,使用d作为所需的信号,并返回滤波后的输出y滤波器出现了错误犯错.System对象估计所需的滤波器权重,以最小化输出信号和期望信号之间的误差。

输入参数

全部展开

要用快速横向滤波器滤波的信号。输入,x,以及所需的信号,d必须具有相同的大小和数据类型。

数据输入可以是可变大小的信号。即使对象被锁定,也可以更改列向量中的元素数。当您调用System对象以运行其算法时,该对象将被锁定。

数据类型:|
复数的支持:金宝app是的

快速横向滤波器自适应其滤波器权值,出世,以使误差最小化,犯错,收敛输入信号x到所要求的信号d尽可能地接近。可以通过调用来访问当前筛选器权重“保障未来粮食供给”。系数,在那里“保障未来粮食供给”为快速横向滤波对象。

输入信号和所需信号必须具有相同的大小和数据类型。

所需要的信号可以是可变大小的信号。即使对象被锁定,也可以更改列向量中的元素数。当您调用System对象以运行其算法时,该对象将被锁定。

数据类型:|
复数的支持:金宝app是的

输出参数

全部展开

过滤后的输出,作为标量或列向量返回。对象调整其滤波器权值以收敛输入信号x以匹配所需的信号d.滤波器输出收敛信号。

数据类型:|

输出信号之间的差异y和期望的信号d,作为标量或列向量返回。的数据类型犯错的数据类型y.自适应滤波器的目标是使这个误差最小化。该对象调整其权值,使其收敛到最优滤波器权值,从而产生与所需信号密切匹配的输出信号。

数据类型:|

对象的功能

要使用对象函数,请指定System对象作为第一个输入参数。例如,释放名为system的对象的系统资源obj,使用下面的语法:

发行版(obj)

全部展开

msesim 自适应滤波器的估计均方误差
一步 运行系统对象算法
释放 释放资源并允许更改系统对象属性值和输入特征
重置 使内部状态复位系统对象

例子

全部折叠

系统辨识是用自适应滤波器辨识未知系统的系数的过程。该过程的总体概况显示在系统识别——使用自适应滤波器识别未知系统.涉及的主要组成部分有:

  • 自适应滤波算法。

  • 要适应的未知系统或过程。在本例中,由fir1是未知的系统。

  • 适当的输入数据来练习适应过程。在一般系统辨识模型中,所要求的信号dk)和输入信号xk)用来练习适应过程。

自适应滤波器的目标是使自适应滤波器输出之间的误差信号最小yk)和未知系统(或待识别系统)的输出dk).一旦错误信号最小化,自适应滤波器就与未知系统相似。两个滤波器的系数匹配得很好。

请注意:如果你正在使用R2016a或更早的版本,将每个对该对象的调用替换为等价的一步语法。例如,obj (x)就变成了步骤(obj, x)

未知的系统

创建一个dsp。FIRFilter对象,该对象表示要标识的系统。使用fir1函数设计滤波系数。设计的滤波器是一个10阶低通数字滤波器,截止频率为0.25。

filt = dsp.FIRFilter;filt。为分子= fir1(10日)
filt = dsp。FIRFilterwith properties: Structure: 'Direct form' NumeratorSource: 'Property' Numerator: [1x11 double] InitialConditions: 0 Show all properties

通过信号x到FIR滤波器。所需的信号d是未知系统(FIR滤波器)输出和加性噪声信号的和吗n

x = randn (1000 1);D = filt(x) + 0.01*randn(1000,1);

自适应滤波器

在未知滤波器设计和所需信号到位后,创建并应用快速横向滤波器对象来识别未知滤波器。

创建一个dsp。FastTransversalFilter对象表示自适应滤波器。设置自适应过滤器的长度为11点,遗忘因子为0.99。

ftf1 = dsp。FastTransversalFilter(11日“ForgettingFactor”, 0.99)
ftf1 = dsp。FastTransversalFilter的属性:方法:“快速横向最小二乘”长度:11 ForgettingFactor: 0.9900 InitialPredictionErrorPower: 10 initialefficients: 0 initialconverversionfactor: 1 LockCoefficients: false

传递一次输入信号x和期望的信号d到快速横向滤波器。运行自适应过滤器确定未知系统。输出y自适应滤波器的特征是信号收敛到期望信号d,从而最小化误差e在两个信号之间。

[y, e] = ftf1 (x, d);w = ftf1。系数
w =1×11-0.0043 0.0016 0.0308 0.1171 0.2204 0.2677 0.2210 0.1181 0.0323 0.0013

策划的结果。输出信号与所需信号非常接近,使得两者之间的误差接近于零。

次要情节(2,1,1);情节(1:1000 [d, y, e])标题(“FIR滤波器的系统识别”);传奇(“想要的”“输出”“错误”);包含(“时间指数”);ylabel (的信号值);

FIR滤波器的系数与自适应滤波器的系数非常接近,从而确定了收敛性。

次要情节(2,1,2);茎([filt.Numerator;w]。');传奇(“实际”“估计”);包含(“系数#”);ylabel (的系数值);

图中包含2个轴。标题为“FIR滤波器的系统识别”的轴1包含3个类型为line的对象。这些对象表示期望、输出、错误。axis 2包含2个类型为stem的对象。这些对象代表实际的,估计的。

参考文献

[1]微积分,西蒙。自适应滤波器理论上鞍河,新泽西:普伦蒂斯霍尔,2002。

扩展功能

介绍了R2013b