dsp.AffineProjectionFilter

计算输出,错误和使用仿射投影(AP)算法的系数

描述

dsp.AffineProjectionFilter系统对象™滤波器使用AP滤波器实现中,输入的各信道。

以过滤输入的每个信道:

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

  2. 调用带参数的对象,就好像它是一个功能。

要了解更多有关系统对象的方式工作,请参阅什么是系统对象?(MATLAB)。

创建

描述

APF= dsp.AffineProjectionFilter返回一个自适应FIR滤波器系统对象,APF。此系统对象计算用于使用仿射投影(AP)算法给定的输入和所希望的信号经滤波的输出和滤波器误差。

APF= dsp.AffineProjectionFilter(LEN返回与仿射投影滤波器对象长度属性设置为LEN

APF= dsp.AffineProjectionFilter(名称,值返回与每个指定的属性设置为指定值的仿射投影过滤器对象。单引号括起来每个属性的名称。未指定的属性具有默认值。

属性

全部展开

除非另有说明,属性是nontunable,这意味着您不能在调用对象后更改它们的值。对象在您调用它们时锁定,以及发布功能解锁他们。

如果一个属性是可调,你可以在任何时候改变它的值。

有关更改属性值的更多信息,请参阅使用系统对象的系统设计在MATLAB(MATLAB)。

指定用于计算滤波系数作为方法直接矩阵求逆递归矩阵更新块直接矩阵求逆。此属性是nontunable。

指定FIR滤波器系数向量的长度为标正整数值。此属性是nontunable。

数据类型:||INT8|int16|int32|int64|UINT8|uint16|UINT32|UINT64

指定仿射投影算法的投影顺序作为标正整数值大于或等于2。该属性定义了输入信号的协方差矩阵的大小。此属性是nontunable。

数据类型:

指定为0和1之间,包括两端的标非负数字值的仿射投影步长因子。设置步长等于适应过程中一个提供最快收敛。

可调:

数据类型:||INT8|int16|int32|int64|UINT8|uint16|UINT32|UINT64|合乎逻辑

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

可调:

数据类型:||INT8|int16|int32|int64|UINT8|uint16|UINT32|UINT64

指定偏移输入协方差矩阵的初始值。此属性必须是一个标量正的数值或与每一维的正定方阵等于ProjectionOrder属性值。如果是标量值,则OffsetCovariance属性初始化为一个对角矩阵,其对角元素等于该标量值。如果是方阵,则OffsetCovariance属性被初始化为方阵的值。

可调:

依赖

此属性仅适用于以下情况:方法属性设置为直接矩阵求逆要么块直接矩阵求逆

数据类型:||INT8|int16|int32|int64|UINT8|uint16|UINT32|UINT64

指定偏移输入协方差矩阵的逆的初始值。此属性必须是一个标量正的数值或与每一维的正定方阵等于ProjectionOrder属性值。如果是标量值,则InverseOffsetCovariance属性初始化为一个对角矩阵,其中每个对角元素都等于该标量值。如果是方阵,则InverseOffsetCovariance属性初始化为该方阵的值。

可调:

依赖

此属性仅适用于以下情况:方法属性设置为递归矩阵更新

数据类型:||INT8|int16|int32|int64|UINT8|uint16|UINT32|UINT64

指定FIR滤波器作为标量或长度的向量的相关系数的初始值等于ProjectionOrder-1

可调:

依赖

此属性仅适用于以下情况:方法属性设置为递归矩阵更新

数据类型:||INT8|int16|int32|int64|UINT8|uint16|UINT32|UINT64

指定过滤系数值是否应该被锁定。将此属性设置为真正,不更新滤波器系数和它们的值保持不变。默认值是(过滤系数不断更新)。

可调:

用法

描述

[ÿ)= apf (Xd过滤器的输入X,使用d作为期望的信号,并且返回经过滤的输出在ÿ以及滤镜误差。系统对象估计需要最小化的输出信号和期望信号之间的误差滤波器权重。您可以通过访问访问这些系数系数对象的属性。这只能在调用对象之后才能完成。的优化系数APF过滤器,通话apf.Coefficients后传递给对象的输入和期望信号。

输入参数

全部展开

由仿射投影滤波器滤波的信号。输入,X和期望的信号,d,必须具有相同的大小和数据类型。

输入可以是一个可变尺寸的信号。即使在锁定对象时,也可以更改列向量中的元素数。当你调用该对象的系统对象的锁来运行其算法。

数据类型:|
复数支持:万博1manbetx

仿射投影滤波器适应其系数以最小化误差,和会聚所述输入信号X到所需的信号d尽可能地接近。

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

所需的信号可以是一个可变大小的信号。即使在锁定对象时,也可以更改列向量中的元素数。调用该对象时,系统对象将锁定。

数据类型:|
复数支持:万博1manbetx

输出参数

全部展开

滤波后的输出,返回作为一个标量或一个列向量。对象调整其滤波器系数收敛的输入信号X以匹配期望的信号d。滤波器输出收敛信号。

数据类型:|
复数支持:万博1manbetx

输出信号之间的差值ÿ想要的信号d时,返回作为标量或一个列向量。仿射投影滤波器的目标是最小化该误差。对象调整其系数以靠拢了产生具有所需信号紧密匹配的输出信号最佳的滤波器系数。要访问仿射投影滤波器系数,通话apf.Coefficients后传递给对象的输入和期望信号。

数据类型:|
复数支持:万博1manbetx

对象函数

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

释放(OBJ)

全部展开

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

例子

全部收缩

注意:如果您使用R2016a或更早版本,取代每次调用该对象具有同等一步句法。例如,OBJ(x)的步骤(OBJ,x)的

QPSK自适应均衡使用32系数的FIR滤波器(1000次迭代)

d = 16;延迟的样本的数量%b = exp(1i*pi/4)*[-0.7 1];信道的%分母系数A = [1 -0.7];信道的%分母系数正常= 1000关系;迭代的数量%S =符号(randn(1,NTR + d))+ 1I *符号(randn(1,NTR + d));%的基带信号N = 0.1 *(randn(1,NTR + d)+ 1I * randn(1,NTR + d));%的噪声信号R =滤波器(B,A,S)+ N;%接收信号X = R(1 + d:NTR + d);%输入信号(接收信号)d = s(1:正常)关系;%期望信号(延迟QPSK信号)亩= 0.1;% 步长PO = 4;%投影秩序偏移量= 0.05;%的偏移量协方差矩阵apf = dsp.AffineProjectionFilter ('长度',32,...'步长'亩,'ProjectionOrder',PO,...“InitialOffsetCovariance”,抵消);(y, e) = apf (x, d);次要情节(2 2 1);阴谋(1:正常,关系真实([d; y; e]));标题(“相分量”);传奇(“所需的”“输出”'错误');xlabel(“时间指数”);ylabel(“信号值”);副区(2,2,2);图(1:NTR,IMAG([d; Y; ​​E]));标题(“正交分量”);传奇(“所需的”“输出”'错误');xlabel(“时间指数”);ylabel(“信号值”);副区(2,2,3);积(X(NTR-100:NTR),'');轴([ -  3 3 -3 3]);标题(“接收信号散点图”);轴('广场');xlabel('真正的[X]');ylabel(图像放大[x]”);网格;副区(2,2,4);情节(Y(NTR-100:NTR),'');轴([ -  3 3 -3 3]);标题(“均衡的信号散点图”);轴('广场');xlabel('真正的[Y]');ylabel('的Imag [Y]');网格;

注意:如果您使用R2016a或更早版本,取代每次调用该对象具有同等一步句法。例如,OBJ(x)的步骤(OBJ,x)的

公顷= FIR1(31,0.5);冷杉= dsp.FIRFilter('分子',哈);FIR%系统识别IIR = dsp.IIRFilter('分子',SQRT(0.75),...“分母”[1 -0.5]);X = IIR(符号(randn(2000,25)));N = 0.1 * randn(大小(X));%观察噪声信号d =冷杉(x) + n;%期望信号L = 32;%滤波器长度亩= 0.008;%仿射投影滤波器的步长。M = 5;%抽取因子分析%和仿真结果APF = dsp.AffineProjectionFilter(1,1-'步长'μ);[simmse, meanWsim Wsim traceKsim] = msesim (apf, x, d, m);情节(m *(1:长度(simmse)), 10 * log10 (simmse));xlabel(“迭代”);ylabel('MSE(分贝)');标题(“的仿射投影滤波器学习曲线在系统识别使用的”

算法

仿射投影算法(APA)是一种基于多个输入向量估计未知系统的自适应算法[1]。它的目的是提高其他自适应算法的性能,主要是那些基于LMS。仿射投影算法重用导致当输入信号具有高度相关性快速收敛的旧数据,导致一个家庭的算法,可以使计算复杂度之间的权衡与收敛速度[2]

下面的方程描述了用于设计AP滤波器的概念算法:

ü 一个 p ñ = ü ñ ... ü ñ - 大号 ü ñ - ñ · ü ñ - 大号 - ñ = ü ñ ü ñ - 1 · ü ñ - 大号 ÿ 一个 p ñ = ü Ť 一个 p ñ w ^ ñ = ÿ ñ · · · ÿ ñ - 大号 d 一个 p ñ = d ñ · · · d ñ - 大号 Ë 一个 p ñ = d 一个 p ñ - ÿ 一个 p ñ = Ë ñ · · · Ë ñ - 大号 w ^ ñ = w ^ ñ - 1 + μ ü 一个 p ñ ü 一个 p H ñ ü 一个 p ñ + C - 1 Ë 一个 p

哪里C或者是ε一世如果初始偏移协方差是一个标量ε,或[R如果初始偏移协方差是一个矩阵[R。该变量如下:

变量 描述
ñ 当前时间指数
u (n) 在步骤输入样本ñ
ü美联社(n) 最后一个矩阵大号1个输入信号矢量
w ^(n) 自适应滤波器系数向量
Y(N) 自适应滤波器输出
d(n)的 所需的信号
E(N) 在步骤错误ñ
大号 投影顺序
ñ 过滤器的顺序(即。,过滤长度=ñ+ 1)
μ 步长

参考文献

[1] K.大关,T.梅田,“自适应滤波算法使用正交投影到一个子空间仿射及其性质”,电子。Commun。日本。67-A(5), 1984年5月,第19-27页。

[2]保罗S. R.迪尼兹,自适应滤波:算法和实际实施,第二版。波士顿:Kluwer学术出版社,2002。

扩展功能

也可以看看

对象

介绍了在R2013a