主要内容

dsp。FastTransversalFilter

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

描述

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

实现自适应FIR滤波对象:

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

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

有关系统对象如何工作的详细信息,请参见什么是系统对象?

创建

描述

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

例子

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

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

属性

全部展开

除非另有说明,属性为nontunable,这意味着在调用对象后不能更改它们的值。对象在调用时锁定,而释放功能解锁它们。

如果属性为可调,您可以随时更改其值。

有关更改属性值的详细信息,请参见使用系统对象的MATLAB系统设计

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

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

数据类型:

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

依赖关系

对象时,此属性才适用方法属性设置为滑动窗口快速横向最小二乘

数据类型:

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

可调:是的

依赖关系

对象时,此属性才适用方法属性设置为快速横向最小二乘

数据类型:||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犯错= ftf(xd过滤输入x,使用d作为所需的信号,并返回过滤后的输出y并且过滤器错误犯错.System对象估计所需的滤波器权重,以最小化输出信号和所需信号之间的误差。

输入参数

全部展开

被快速横向滤波器滤波的信号。输入,x,和期望信号,d必须具有相同的大小和数据类型。

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

数据类型:|
复数支持:是的

快速横向滤波器调整其滤波器权值,出世,使误差最小,犯错,对输入信号进行收敛x到期望的信号d越近越好。可以通过调用来访问当前筛选器权重“保障未来粮食供给”。系数,在那里“保障未来粮食供给”是快速横向过滤器对象。

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

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

数据类型:|
复数支持:是的

输出参数

全部展开

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

数据类型:|

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

数据类型:|

对象的功能

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

发行版(obj)

全部展开

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

例子

全部折叠

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

  • 自适应滤波算法。

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

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

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

未知的系统

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

filt = dsp.FIRFilter;filt。分子= fir1(10,.25)
Filt = dsp。FIRFilterwith properties: Structure: 'Direct form' NumeratorSource: 'Property' Numerator: [-0.0039 1.7585e-18 0.0321 0.1167 0.2207 0.2687 0.2207 0.1167 0.0321 1.7585e-18 -0.0039] 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健忘因子:0.9900 InitialPredictionErrorPower: 10 initialpredictionerrorents: 0 InitialConversionFactor: 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 -0.0037

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

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

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

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

图中包含2个轴对象。坐标轴对象1带有标题的系统识别一个FIR滤波器,xlabel时间指数,ylabel信号值包含3个对象的类型行。这些对象表示期望、输出、错误。轴对象2带有xlabel系数#,ylabel系数值包含2个stem类型的对象。这些对象表示Actual、Estimated。

参考文献

[1]海金,西蒙。自适应滤波理论《上马鞍河》,新泽西州:普伦蒂斯大厅,2002年。

扩展功能

版本历史

在R2013b中引入

Baidu
map