计算LMS自适应滤波器的输出、误差和权值据/p>
这据code class="sysobj">dsp.lmsfilter.据/code>System Object™实现了一个自适应有限脉冲响应(FIR)滤波器,它使用以下算法之一将输入信号收敛到所需信号:据/p>
LMS.据/p>
归一化LMS据/p>
标志数据LMS据/p>
符号误差LMS据/p>
Sign-Sign LMS据/p>
有关这些方法的更多详细信息,请参阅据一种href="//www.tatmou.com/help/dsp/ref/dsp.lmsfilter-system-object.html" class="intrnllnk">算法据/a>.据/p>
过滤器适应其权重,直到主输入信号和所需信号之间的误差最小。使用该错误(MSE)的平均平方据一种href="//www.tatmou.com/help/dsp/ref/dsp.lmsfilter.msesim.html"> 有关自适应滤波器方法的概述,以及自适应滤波器最常用的应用,请参阅据一种href="//www.tatmou.com/help/dsp/ug/overview-of-adaptive-filters-and-applications.html" class="a">自适应过滤器和应用程序概述据/a>.据/p>
使用自适应FIR滤波器对信号进行滤波:据/p>
创造据code class="sysobj">dsp.lmsfilter.据/code>对象,并设置其属性。据/p> 使用参数调用对象,就像调用函数一样。据/p> 要了解更多关于System对象如何工作的信息,请参见据一种href="//www.tatmou.com/help/matlab/matlab_prog/what-are-system-objects.html" class="a">什么是系统对象?据/a>.据/p>
在特定条件下,System对象也支持SIMD代码生成。金宝app有关详细信息,请参见据一种href="//www.tatmou.com/help/dsp/ref/dsp.lmsfilter-system-object.html" class="intrnllnk">代码生成据/a>.据/p>
MSESIM据/code>功能。使用Wiener滤波器确定MSE的预测版本据一种href="//www.tatmou.com/help/dsp/ref/dsp.lmsfilter.msepred.html">
MSEPRED.据/code>功能。这据一种href="//www.tatmou.com/help/dsp/ref/dsp.lmsfilter.maxstep.html">
maxstep.据/code>函数计算最大自适应步长,控制收敛速度。据/p>
返回一个LMS过滤器对象,据code class="literal">LMS.据/code>,它使用最小均方(LMS)算法计算给定输入和期望信号的滤波输出、滤波误差和滤波权值。据/p>
LMS.据/code>= dsp.lmsfilter.据/code>
lms = dsp.lmsfilter(据code class="argument">L.据/code>)据/code>
返回LMS过滤器对象据一种href="//www.tatmou.com/help/dsp/ref/dsp.lmsfilter-system-object.html" class="intrnllnk">长度据/a>属性设置为据code class="argument">L.据/code>.据/p>
lms = dsp.lmsfilter(据code class="argument">名称,值据/code>)据/code>
使用每个指定属性设置为指定值的LMS过滤器对象。用单引号括起每个属性名称。您可以使用以前的输入参数使用此语法。据/p>
除非另有说明,否则属性是据span class="emphasis">不可努力据/em>,这意味着您不能在调用对象后更改其值。对象在调用时锁定,并且据一种href="//www.tatmou.com/help/matlab/ref/releasesystemobject.html"> 如果属性是据span class="emphasis">调节据/em>,您可以随时更改它的值。据/p>
有关更改属性值的更多信息,请参见据一种href="//www.tatmou.com/help/matlab/matlab_prog/system-design-in-matlab-using-system-objects.html" class="a">在MATLAB中使用系统对象进行系统设计据/a>.据/p>
计算滤波器权重的方法,指定为:据/p>
有关算法的更多详细信息,请参阅据一种href="//www.tatmou.com/help/dsp/ref/dsp.lmsfilter-system-object.html" class="intrnllnk">算法据/a>.据/p>
FIR滤波器权重向量的长度,指定为正整数。据/p>
例子:据/strong>64.据/p>
例子:据/strong>16据/p>
数据类型:据/strong> 指定适应步骤大小的方法,指定为以下之一:据/p>
适配步长因子,指定为非负标量。对于归一化LMS方法的收敛,步长必须大于0且小于2。据/p>
小步长确保输出之间的稳态误差较小据一种href="//www.tatmou.com/help/dsp/ref/dsp.lmsfilter-system-object.html" class="intrnllnk">y据/a>和所需的信号据一种href="//www.tatmou.com/help/dsp/ref/dsp.lmsfilter-system-object.html" class="intrnllnk">D.据/a>.步长越小,滤波器的收敛速度越小。为了提高收敛速度,增大步长。注意,如果步长较大,过滤器可能会变得不稳定。要计算过滤器在不变得不稳定的情况下可以接受的最大步长,请使用据一种href="//www.tatmou.com/help/dsp/ref/dsp.lmsfilter.maxstep.html"> 可调:据/strong>是的据/p>
此属性适用于您的时候据一种href="//www.tatmou.com/help/dsp/ref/dsp.lmsfilter-system-object.html" class="intrnllnk">StepSizeSource据/a>来据code class="literal">'财产'据/code>.据/p>
数据类型:据/strong> 实现泄漏LMS方法时使用的泄漏因子指定为范围的标量据code class="literal">[0 1]据/code>.当值为1时,自适应方法不存在泄漏。当值小于1时,过滤器实现一个泄漏的LMS方法。据/p>
例子:据/strong>0.5据/p>
可调:据/strong>是的据/p>
数据类型:据/strong> 属性的值指定为标量或长度为向量的滤波器权重的初始条件据一种href="//www.tatmou.com/help/dsp/ref/dsp.lmsfilter-system-object.html" class="intrnllnk">长度据/a>财产。当输入为实数时,此属性的值必须为实数。据/p>
例子:据/strong>0.据/p>
例子:据/strong>[1 3 1 2 7 8 9 0 2 2 8 2]据/p>
数据类型:据/strong> 用于调整过滤器权重的标志,指定为以下内容之一:据/p>
重置过滤器权重的标志,指定为以下之一:据/p>
触发过滤器权重重置的事件,指定为以下事件之一。只要在重置输入中检测到重置事件,对象就会重置过滤器权重。据/p>
从负值上升到正值或零。据/p> 从零到正值,上升不是从负值到零的延续。据/p>
从正值下降到负值或零。据/p> 从零落到负值,下降不是从正值到零的延续。据/p>
对象根据此属性的值和重置输入重置筛选器权重据code class="argument">R.据/code>提供给对象的算法。据/p>
此属性在设置据一种href="//www.tatmou.com/help/dsp/ref/dsp.lmsfilter-system-object.html" class="intrnllnk">weightsresetinputport.据/a>财产据code class="literal">真的据/code>.据/p>
要输出调整滤波器权重的方法,指定为以下之一:据/p>
指定定点操作的舍入模式。有关详细信息,请参见据一种href="//www.tatmou.com/help/dsp/ug/concepts-and-terminology.html" class="a">舍入模式据/a>.据/p>
定点操作的溢出操作,指定为以下操作之一:据/p>
有关溢出操作的更多详细信息,请参阅据一种href="//www.tatmou.com/help/dsp/ug/concepts-and-terminology.html" class="a">溢出模式据/a>对于定点操作。据/p>
步骤尺寸字长度和分数分数设置,指定为以下之一:据/p>
有关步骤大小数据类型此对象使用的更多信息,请参阅据一种href="//www.tatmou.com/help/dsp/ref/dsp.lmsfilter-system-object.html" class="intrnllnk">固定点据/a>部分。据/p>
步长的字和分数长度,指定为自动签名数字类型,字长为16,分数长度为15。据/p>
例子:据/strong>numerictype ([], 32)据/p>
此物业适用于下列条件:据/p>
泄漏因子字长度和分数分数设置,指定为以下之一:据/p>
有关泄漏因子数据类型此对象使用的更多信息,请参阅据一种href="//www.tatmou.com/help/dsp/ref/dsp.lmsfilter-system-object.html" class="intrnllnk">固定点据/a>部分。据/p>
泄漏系数的字和分数长度,指定为字长为16、分数长为15的自动签名数字类型。据/p>
例子:据/strong>numerictype ([], 32)据/p>
此属性在设置据一种href="//www.tatmou.com/help/dsp/ref/dsp.lmsfilter-system-object.html" class="intrnllnk">泄漏从事attoraty.据/a>财产据code class="literal">“自定义”据/code>.据/p>
权重字长和分数长度设置,指定为以下之一:据/p>
有关滤波器权重数据类型的更多信息,请参阅据一种href="//www.tatmou.com/help/dsp/ref/dsp.lmsfilter-system-object.html" class="intrnllnk">固定点据/a>部分。据/p>
筛选权重的单词和分数长度,指定为单词长度为16、分数长度为15的自动签名数字类型。据/p>
例子:据/strong>numerictype([], 32岁,20)据/p>
此属性在设置据一种href="//www.tatmou.com/help/dsp/ref/dsp.lmsfilter-system-object.html" class="intrnllnk">WeightsDataType据/a>财产据code class="literal">“自定义”据/code>.据/p>
能量产品字长度和分数分数设置,指定为以下之一:据/p>
有关能源产品数据类型的更多信息,请参阅据一种href="//www.tatmou.com/help/dsp/ref/dsp.lmsfilter-system-object.html" class="intrnllnk">固定点据/a>部分。据/p>
此属性在设置据一种href="//www.tatmou.com/help/dsp/ref/dsp.lmsfilter-system-object.html" class="intrnllnk">方法据/a>财产据code class="literal">'标准化LMS'据/code>.据/p>
能量乘积的字长和分数长度,指定为自动签名数字类型,字长为32,分数长度为20。据/p>
此属性在设置据一种href="//www.tatmou.com/help/dsp/ref/dsp.lmsfilter-system-object.html" class="intrnllnk">方法据/a>财产据code class="literal">'标准化LMS'据/code>和据一种href="//www.tatmou.com/help/dsp/ref/dsp.lmsfilter-system-object.html" class="intrnllnk">EnergyProductDattyp.据/a>财产据code class="literal">“自定义”据/code>.据/p>
能量累加器字长度和分数分数设置,指定为以下内容之一:据/p>
有关能量累加器数据类型此对象使用的更多信息,请参阅据一种href="//www.tatmou.com/help/dsp/ref/dsp.lmsfilter-system-object.html" class="intrnllnk">固定点据/a>部分。据/p>
此属性在设置据一种href="//www.tatmou.com/help/dsp/ref/dsp.lmsfilter-system-object.html" class="intrnllnk">方法据/a>财产据code class="literal">'标准化LMS'据/code>.据/p>
能量累加器的单词和分数长度,指定为自动定义的数字类型,单词长度为32和分数长20。据/p>
此属性在设置据一种href="//www.tatmou.com/help/dsp/ref/dsp.lmsfilter-system-object.html" class="intrnllnk">方法据/a>财产据code class="literal">'标准化LMS'据/code>和据一种href="//www.tatmou.com/help/dsp/ref/dsp.lmsfilter-system-object.html" class="intrnllnk">EnergyAccumulatorDataType据/a>财产据code class="literal">“自定义”据/code>.据/p>
卷积产品字长和分数分数设置,指定为以下之一:据/p>
有关此对象使用的卷积乘积数据类型的详细信息,请参阅据一种href="//www.tatmou.com/help/dsp/ref/dsp.lmsfilter-system-object.html" class="intrnllnk">固定点据/a>部分。据/p>
卷积乘积的字和分数长度,指定为字长为32、分数长为20的自动签名数字类型。据/p>
此属性在设置据一种href="//www.tatmou.com/help/dsp/ref/dsp.lmsfilter-system-object.html" class="intrnllnk">ConvolutionProductDataType据/a>财产据code class="literal">“自定义”据/code>.据/p>
卷积累加器字长和分数长度设置,指定为以下之一:据/p>
有关卷积累加器数据类型的更多信息,请参阅据一种href="//www.tatmou.com/help/dsp/ref/dsp.lmsfilter-system-object.html" class="intrnllnk">固定点据/a>部分。据/p>
卷积蓄能器的单词和分数长度,指定为自动定义的数字类型,字长为32,分数为20。据/p>
此属性在设置据一种href="//www.tatmou.com/help/dsp/ref/dsp.lmsfilter-system-object.html" class="intrnllnk">ConvolutionAccumulatorDataType据/a>财产据code class="literal">“自定义”据/code>.据/p>
步长误差积单词长度和分数长度设置,指定如下之一:据/p>
有关此对象使用的步长错误产品数据类型的详细信息,请参阅据一种href="//www.tatmou.com/help/dsp/ref/dsp.lmsfilter-system-object.html" class="intrnllnk">固定点据/a>部分。据/p>
步长错误乘积的字和分数长度,指定为字长为32、分数长为20的自动签名数字类型。据/p>
此属性在设置据一种href="//www.tatmou.com/help/dsp/ref/dsp.lmsfilter-system-object.html" class="intrnllnk">StepSizeErrorProductDataType据/a>财产据code class="literal">“自定义”据/code>.据/p>
滤波器权重更新产品的单词和分数分数设置,指定为以下之一:据/p>
有关此对象使用的筛选器权重更新产品数据类型的详细信息,请参阅据一种href="//www.tatmou.com/help/dsp/ref/dsp.lmsfilter-system-object.html" class="intrnllnk">固定点据/a>部分。据/p>
筛选权重更新产品的单词和分数长度,指定为单词长度为32,分数长度为20的自动签名数字类型。据/p>
此属性在设置据一种href="//www.tatmou.com/help/dsp/ref/dsp.lmsfilter-system-object.html" class="intrnllnk">theersupdateproductdattype.据/a>财产据code class="literal">“自定义”据/code>.据/p>
商字长度和分数分数设置,指定为以下之一:据/p>
有关此对象使用的商数据类型的更多信息,请参见据一种href="//www.tatmou.com/help/dsp/ref/dsp.lmsfilter-system-object.html" class="intrnllnk">固定点据/a>部分。据/p>
此属性在设置据一种href="//www.tatmou.com/help/dsp/ref/dsp.lmsfilter-system-object.html" class="intrnllnk">方法据/a>财产据code class="literal">'标准化LMS'据/code>.据/p>
筛选权重更新产品的单词和分数长度,指定为单词长度为32,分数长度为20的自动签名数字类型。据/p>
此属性在设置据一种href="//www.tatmou.com/help/dsp/ref/dsp.lmsfilter-system-object.html" class="intrnllnk">方法据/a>财产据code class="literal">'标准化LMS'据/code>和据一种href="//www.tatmou.com/help/dsp/ref/dsp.lmsfilter-system-object.html" class="intrnllnk">quotienddataType.据/a>财产据code class="literal">“自定义”据/code>.据/p>
释放据/code>功能解锁它们。据/p>
方法据/code>
-据span itemprop="purpose">计算滤波器权重的方法据/span>“LMS”据/code>
(默认)|据span itemprop="inputvalue">'标准化LMS'据/code>
|据span itemprop="inputvalue">'签名数据LMS'据/code>
|据span itemprop="inputvalue">“符号误差LMS”据/code>|据span itemprop="inputvalue">
'签名LMS'据/code>
“LMS”据/code>——求解Weiner-Hopf方程,找到自适应滤波器的滤波系数。据/p>
'标准化LMS'据/code>- LMS算法的归一化变化。据/p>
'签名数据LMS'据/code>- 对每个迭代的滤波器权重的校正取决于输入的符号据code class="argument">X据/code>.据/p>
“符号误差LMS”据/code>- 应用于每个连续迭代的当前滤波器权重的校正取决于错误的符号,据code class="argument">犯错据/code>.据/p>
'签名LMS'据/code>–每次连续迭代对当前过滤器权重的校正取决于据code class="argument">X据/code>和标志据code class="argument">犯错据/code>.据/p>
长度据/code>
-据span itemprop="purpose">冷杉滤波量重量传染媒介长度据/span>32据/code>
(默认)|据span itemprop="inputvalue">正整数据/span>单据/code>|据code>双倍的据/code>|据code>int8据/code>|据code>int16据/code>|据code>INT32.据/code>|据code>INT64.据/code>|据code>uint8据/code>|据code>uint16据/code>|据code>uint32据/code>|据code>UINT64据/code>
StepSizeSource据/code>
-据span itemprop="purpose">方法指定自适应步长据/span>'财产'据/code>
(默认)|据span itemprop="inputvalue">'输入端口'据/code>
'财产'据/code>- 物业据一种href="//www.tatmou.com/help/dsp/ref/dsp.lmsfilter-system-object.html" class="intrnllnk">一步的大小据/a>指定每个自适应步骤的大小。据/p>
'输入端口'据/code>——指定自适应步长作为对象的输入之一。据/p>
一步的大小据/code>
-据span itemprop="purpose">适应步长据/span>0.1据/code>
(默认)|据span itemprop="inputvalue">非负标量据/span>maxstep.据/code>功能。据/p>
依赖性据/h4>
单据/code>|据code>双倍的据/code>|据code>int8据/code>|据code>int16据/code>|据code>INT32.据/code>|据code>INT64.据/code>|据code>uint8据/code>|据code>uint16据/code>|据code>uint32据/code>|据code>UINT64据/code>
泄漏actor.据/code>
-据span itemprop="purpose">泄漏LMS法中使用的泄漏系数据/span>1据/code>
(默认)|据span itemprop="inputvalue">[0 1]据/code>
单据/code>|据code>双倍的据/code>|据code>int8据/code>|据code>int16据/code>|据code>INT32.据/code>|据code>INT64.据/code>|据code>uint8据/code>|据code>uint16据/code>|据code>uint32据/code>|据code>UINT64据/code>
InitialConditions据/code>
-据span itemprop="purpose">滤波器权重的初始条件据/span>0.据/code>
(默认)|据span itemprop="inputvalue">标量据/span>|据span itemprop="inputvalue">向量据/span>单据/code>|据code>双倍的据/code>|据code>int8据/code>|据code>int16据/code>|据code>INT32.据/code>|据code>INT64.据/code>|据code>uint8据/code>|据code>uint16据/code>|据code>uint32据/code>|据code>UINT64据/code>
复数的支持:金宝app据/strong>是的据/p>
AdaptInputPort据/code>
-据span itemprop="purpose">标志以适应过滤器权重据/span>假据/code>
(默认)|据span itemprop="inputvalue">真的据/code>
假据/code>——对象不断更新过滤器权重。据/p>
真的据/code>–调用对象的算法时,会向对象提供自适应控制输入。如果此输入的值为非零,则对象将持续更新过滤器权重。如果此输入的值为零,则过滤器权重将保持在其当前值。据/p>
weightsresetinputport.据/code>
-据span itemprop="purpose">标志以重置滤波器权重据/span>假据/code>
(默认)|据span itemprop="inputvalue">真的据/code>
假据/code>- 对象不会重置权重。据/p>
真的据/code>- 当您调用其算法时,将重置控制输入提供给对象。此设置启用据一种href="//www.tatmou.com/help/dsp/ref/dsp.lmsfilter-system-object.html" class="intrnllnk">WeightsResetCondition据/a>财产。基于的值,该对象重置滤波器权重据code class="property">WeightsResetCondition据/code>属性和提供给对象算法的复位输入。据/p>
WeightsResetCondition据/code>
-据span itemprop="purpose">事件以重置过滤器权重据/span>“零”据/code>
(默认)|据span itemprop="inputvalue">'上升沿'据/code>
|据span itemprop="inputvalue">的下降沿据/code>
|据span itemprop="inputvalue">'任一边'据/code>
“零”据/code>——当重置输入不为零时,在每个样本触发重置操作。据/p>
'上升沿'据/code>- 当重置输入执行以下操作之一时,触发重置操作:据/p>
的下降沿据/code>- 当重置输入执行以下操作之一时,触发重置操作:据/p>
'任一边'据/code>——当复位输入是上升沿或下降沿时,触发复位操作。据/p>
依赖性据/h4>
权力输出据/code>
-据span itemprop="purpose">用于输出适应滤波器权重的方法据/span>“最后一次”据/code>
(默认)|据span itemprop="inputvalue">'没有任何'据/code>
|据span itemprop="inputvalue">“所有”据/code>
“最后一次”据/code>(默认) - 对象返回对应于数据帧的最后一个样本的权重的列向量。权重向量的长度是由此提供的值据一种href="//www.tatmou.com/help/dsp/ref/dsp.lmsfilter-system-object.html" class="intrnllnk">长度据/a>财产。据/p>
“所有”据/code>- 对象返回一个据E.m class="varname">FrameLength据/em>-经过-据E.m class="varname">长度据/em>矩阵的权重。该矩阵对应于所有样本的全部权重历史据E.m class="varname">FrameLength据/em>输入值的样本。矩阵中的每一行对应于针对相应输入样本计算的一组LMS滤波权重。据/p>
'没有任何'据/code>- 此设置禁用权重输出。据/p>
RoundingMethod据/code>
-据span itemprop="purpose">定点运算的舍入法据/span>“地板”据/code>
(默认)|据span itemprop="inputvalue">'天花板'据/code>
|据span itemprop="inputvalue">'收敛'据/code>
|据span itemprop="inputvalue">'最近'据/code>|据span itemprop="inputvalue">
'圆形的'据/code>|据span itemprop="inputvalue">
“简单”据/code>|据span itemprop="inputvalue">
“零”据/code>
OverflowAction据/code>
-据span itemprop="purpose">定点操作的溢出操作据/span>'裹'据/code>
(默认)|据span itemprop="inputvalue">'饱和'据/code>
'裹'据/code>对象包装其定点操作的结果。据/p>
'饱和'据/code>- 对象使其定点操作的结果饱和。据/p>
StepSizeDataType据/code>
-据span itemprop="purpose">步长字长和分数长度设置据/span>'与第一个输入相同的字长'据/code>
(默认)|据span itemprop="inputvalue">“自定义”据/code>
'与第一个输入相同的字长'据/code>- 该对象指定步长大小的单词长度与第一个输入相同。计算分数长度以获得可能的最佳精度。据/p>
“自定义”据/code>- 步尺寸数据类型被指定为自定义数字类型据一种href="//www.tatmou.com/help/dsp/ref/dsp.lmsfilter-system-object.html" class="intrnllnk">customstepsizedataType.据/a>财产。据/p>
customstepsizedataType.据/code>
-据span itemprop="purpose">步长的单词和分数长度据/span>numerictype([],16,15)据/code>
(默认)据/span>依赖性据/h4>
StepSizeSource据/code>属性设置为据code class="literal">'输入端口'据/code>.据/p>
泄漏从事attoraty.据/code>
-据span itemprop="purpose">泄漏因子字长度和分数长度设置据/span>'与第一个输入相同的字长'据/code>
(默认)|据span itemprop="inputvalue">“自定义”据/code>
'与第一个输入相同的字长'据/code>——该对象指定泄漏因子的字长与第一次输入的字长相同。计算分数长度以获得可能的最佳精度。据/p>
“自定义”据/code>——泄漏因子数据类型指定为自定义数值类型据一种href="//www.tatmou.com/help/dsp/ref/dsp.lmsfilter-system-object.html" class="intrnllnk">CustomLeakageFactorDataType据/a>财产。据/p>
CustomLeakageFactorDataType据/code>
-据span itemprop="purpose">泄漏因子的单词和分数长度据/span>numerictype([],16,15)据/code>
(默认)据/span>依赖性据/h4>
WeightsDataType据/code>
-据span itemprop="purpose">权重词长和分数长度设置据/span>'与第一次输入相同'据/code>
(默认)|据span itemprop="inputvalue">“自定义”据/code>
'与第一次输入相同'据/code>- 该对象指定滤波器权重的数据类型与第一输入的数据类型相同。据/p>
“自定义”据/code>属性指定过滤器权重的数据类型为自定义数值类型据一种href="//www.tatmou.com/help/dsp/ref/dsp.lmsfilter-system-object.html" class="intrnllnk">自定义重量键据/a>财产。据/p>
自定义重量键据/code>
-据span itemprop="purpose">过滤权重的字和分数长度据/span>numerictype([],16,15)据/code>
(默认)据/span>依赖性据/h4>
EnergyProductDattyp.据/code>
-据span itemprop="purpose">能量产品字长度和分数长度设置据/span>'与第一次输入相同'据/code>
(默认)|据span itemprop="inputvalue">“自定义”据/code>
'与第一次输入相同'据/code>- 该对象指定能量产品的数据类型与第一个输入相同。据/p>
“自定义”据/code>——能源产品的数据类型指定为通过据一种href="//www.tatmou.com/help/dsp/ref/dsp.lmsfilter-system-object.html" class="intrnllnk">CustomenergyProductDattype.据/a>财产。据/p>
依赖性据/h4>
CustomenergyProductDattype.据/code>
-据span itemprop="purpose">单词和分数的能量产品长度据/span>numerictype([], 32岁,20)据/code>
(默认)据/span>依赖性据/h4>
EnergyAccumulatorDataType据/code>
-据span itemprop="purpose">能量累加器字长度和分数长度设置据/span>'与第一次输入相同'据/code>
(默认)|据span itemprop="inputvalue">“自定义”据/code>
'与第一次输入相同'据/code>–对象指定蓄能器的数据类型与第一个输入的数据类型相同。据/p>
“自定义”据/code>——能量累加器的数据类型指定为自定义数值类型据一种href="//www.tatmou.com/help/dsp/ref/dsp.lmsfilter-system-object.html" class="intrnllnk">customenergyAccumulatordataTyp.据/a>财产。据/p>
依赖性据/h4>
customenergyAccumulatordataTyp.据/code>
-据span itemprop="purpose">能量蓄能器的字和分数长度据/span>numerictype([], 32岁,20)据/code>
(默认)据/span>依赖性据/h4>
ConvolutionProductDataType据/code>
-据span itemprop="purpose">卷积乘积字长度和分数长度设置据/span>'与第一次输入相同'据/code>
(默认)|据span itemprop="inputvalue">“自定义”据/code>
'与第一次输入相同'据/code>- 该对象指定卷积产品的数据类型与第一个输入相同。据/p>
“自定义”据/code>属性指定卷积乘积的数据类型为自定义数值类型据一种href="//www.tatmou.com/help/dsp/ref/dsp.lmsfilter-system-object.html" class="intrnllnk">CustomConvolulateProductDataType.据/a>财产。据/p>
CustomConvolulateProductDataType.据/code>
-据span itemprop="purpose">卷积产品的单词和分数长度据/span>numerictype([], 32岁,20)据/code>
(默认)据/span>依赖性据/h4>
ConvolutionAccumulatorDataType据/code>
-据span itemprop="purpose">卷积累加器单词长度和分数长度设置据/span>'与第一次输入相同'据/code>
(默认)|据span itemprop="inputvalue">“自定义”据/code>
'与第一次输入相同'据/code>——该对象指定卷积累加器的数据类型与第一次输入的数据类型相同。据/p>
“自定义”据/code>- 卷积累加器的数据类型被指定为自定义数字类型据一种href="//www.tatmou.com/help/dsp/ref/dsp.lmsfilter-system-object.html" class="intrnllnk">CustomConvolutionAccumulatorDataType据/a>财产。据/p>
CustomConvolutionAccumulatorDataType据/code>
-据span itemprop="purpose">卷积蓄能器的单词和分数长度据/span>numerictype([], 32岁,20)据/code>
(默认)据/span>依赖性据/h4>
StepSizeErrorProductDataType据/code>
-据span itemprop="purpose">步长误差积字长度和分数长度设置据/span>'与第一次输入相同'据/code>
(默认)|据span itemprop="inputvalue">“自定义”据/code>
'与第一次输入相同'据/code>–对象指定步长误差产品的数据类型与第一次输入的数据类型相同。据/p>
“自定义”据/code>- 步尺寸错误产品的数据类型被指定为自定义数字类型据一种href="//www.tatmou.com/help/dsp/ref/dsp.lmsfilter-system-object.html" class="intrnllnk">CustomStepSizeErrorProductDataType据/a>财产。据/p>
CustomStepSizeErrorProductDataType据/code>
-据span itemprop="purpose">步长误差产品的单词和分数长度据/span>numerictype([], 32岁,20)据/code>
(默认)据/span>依赖性据/h4>
theersupdateproductdattype.据/code>
-据span itemprop="purpose">过滤权重更新产品字长度和分数长度设置据/span>'与第一次输入相同'据/code>
(默认)|据span itemprop="inputvalue">“自定义”据/code>
'与第一次输入相同'据/code>——对象指定过滤器权重更新产品的数据类型与第一次输入的数据类型相同。据/p>
“自定义”据/code>- 滤波器权重更新产品的数据类型被指定为自定义数字类型据一种href="//www.tatmou.com/help/dsp/ref/dsp.lmsfilter-system-object.html" class="intrnllnk">CustomweightSupdateProductDataType.据/a>财产。据/p>
CustomweightSupdateProductDataType.据/code>
-据span itemprop="purpose">字和分数长度的过滤器权重更新产品据/span>numerictype([], 32岁,20)据/code>
(默认)据/span>依赖性据/h4>
quotienddataType.据/code>
-据span itemprop="purpose">商字长度和分数长度设置据/span>'与第一次输入相同'据/code>
(默认)|据span itemprop="inputvalue">“自定义”据/code>
'与第一次输入相同'据/code>——该对象指定商数据类型与第一次输入的数据类型相同。据/p>
“自定义”据/code>属性指定商数据类型为自定义数值类型据一种href="//www.tatmou.com/help/dsp/ref/dsp.lmsfilter-system-object.html" class="intrnllnk">CustomQuotientDataType据/a>财产。据/p>
依赖性据/h4>
CustomQuotientDataType据/code>
-据span itemprop="purpose">词汇和分数的商量据/span>numerictype([], 32岁,20)据/code>
(默认)据/span>依赖性据/h4>
[据一种href="#mw_4f7962fc-d669-4ca5-af7e-d27994ae7c12" class="intrnllnk">
过滤输入信号,据code class="argument">X据/code>, 使用据code class="argument">D.据/code>作为所需的信号,并返回滤波后的输出据code class="argument">y据/code>,过滤器错误据code class="argument">犯错据/code>,以及估计的滤波器权重据code class="argument">WTS.据/code>. 这个LMS.filter object estimates the filter weights needed to minimize the error between the output signal and the desired signal.据/p>
y据/code>那据一种href="#mw_1e74b671-711b-486a-a14f-3660a116662f" class="intrnllnk">
犯错据/code>那据一种href="#mw_4e72967f-118d-4608-906e-5f36f4540872" class="intrnllnk">
WTS.据/code>] = LMS(据一种href="#mw_530d713b-71b8-4a14-a78e-a000adad6302" class="intrnllnk">
X据/code>那据一种href="#mw_db6b9f37-cc93-4e7f-8fd6-2bfe27289079" class="intrnllnk">
D.据/code>)据/code>
[据一种href="#mw_4f7962fc-d669-4ca5-af7e-d27994ae7c12" class="intrnllnk">
过滤输入信号,据code class="argument">X据/code>, 使用据code class="argument">D.据/code>作为所需的信号,并返回滤波后的输出据code class="argument">y据/code>滤波器出现了错误据code class="argument">犯错据/code>当。。。的时候据一种href="//www.tatmou.com/help/dsp/ref/dsp.lmsfilter-system-object.html" class="intrnllnk">权力输出据/a>属性设置为据code class="literal">'没有任何'据/code>.据/p>
y据/code>那据一种href="#mw_1e74b671-711b-486a-a14f-3660a116662f" class="intrnllnk">
犯错据/code>] = LMS(据一种href="#mw_530d713b-71b8-4a14-a78e-a000adad6302" class="intrnllnk">
X据/code>那据一种href="#mw_db6b9f37-cc93-4e7f-8fd6-2bfe27289079" class="intrnllnk">
D.据/code>)据/code>
[据span class="argument_placeholder">___据/span>] = LMS(据一种href="#mw_530d713b-71b8-4a14-a78e-a000adad6302" class="intrnllnk">
过滤输入信号,据code class="argument">X据/code>, 使用据code class="argument">D.据/code>作为所需的信号据code class="argument">亩据/code>作为阶梯尺寸,当据一种href="//www.tatmou.com/help/dsp/ref/dsp.lmsfilter-system-object.html" class="intrnllnk">StepSizeSource据/a>属性设置为据code class="literal">'输入端口'据/code>. 这个se inputs can be used with either of the previous sets of outputs.据/p>
X据/code>那据一种href="#mw_db6b9f37-cc93-4e7f-8fd6-2bfe27289079" class="intrnllnk">
D.据/code>那据一种href="#mw_a361d18d-f06c-4d7e-8ebd-3054f34d39d4" class="intrnllnk">
亩据/code>)据/code>
[据span class="argument_placeholder">___据/span>] = LMS(据一种href="#mw_530d713b-71b8-4a14-a78e-a000adad6302" class="intrnllnk">
过滤输入信号,据code class="argument">X据/code>, 使用据code class="argument">D.据/code>作为所需的信号据code class="argument">一种据/code>作为适应控制时据一种href="//www.tatmou.com/help/dsp/ref/dsp.lmsfilter-system-object.html" class="intrnllnk">AdaptInputPort据/a>属性设置为据code class="literal">真的据/code>.什么时候据code class="argument">一种据/code>是非零,系统对象连续更新滤波器权重。什么时候据code class="argument">一种据/code>为零,滤波器重量保持恒定。据/p>
X据/code>那据一种href="#mw_db6b9f37-cc93-4e7f-8fd6-2bfe27289079" class="intrnllnk">
D.据/code>那据一种href="#mw_cecf3006-18e5-4310-b90d-6809970ee595" class="intrnllnk">
一种据/code>)据/code>
[据span class="argument_placeholder">___据/span>] = LMS(据一种href="#mw_530d713b-71b8-4a14-a78e-a000adad6302" class="intrnllnk">
过滤输入信号,据code class="argument">X据/code>, 使用据code class="argument">D.据/code>作为所需的信号据code class="argument">R.据/code>当据一种href="//www.tatmou.com/help/dsp/ref/dsp.lmsfilter-system-object.html" class="intrnllnk">weightsresetinputport.据/a>属性设置为据code class="literal">真的据/code>. 这个据一种href="//www.tatmou.com/help/dsp/ref/dsp.lmsfilter-system-object.html" class="intrnllnk">WeightsResetCondition据/a>属性可用于设置重置触发条件。如果发生重置事件,System对象将过滤器权重重置为初始值。据/p>
X据/code>那据一种href="#mw_db6b9f37-cc93-4e7f-8fd6-2bfe27289079" class="intrnllnk">
D.据/code>那据一种href="#mw_db29e741-8beb-4e26-a9a8-29875bac5b1d" class="intrnllnk">
R.据/code>)据/code>
[据一种href="#mw_4f7962fc-d669-4ca5-af7e-d27994ae7c12" class="intrnllnk">
过滤输入信号,据code class="argument">X据/code>, 使用据code class="argument">D.据/code>作为所需信号,据code class="argument">亩据/code>至于步长,,据code class="argument">一种据/code>作为适应控制,和据code class="argument">R.据/code>作为复位信号,并返回过滤后的输出据code class="argument">y据/code>,过滤器错误据code class="argument">犯错据/code>,以及适应的滤波器重量据code class="argument">WTS.据/code>.据/p>
y据/code>那据一种href="#mw_1e74b671-711b-486a-a14f-3660a116662f" class="intrnllnk">
犯错据/code>那据一种href="#mw_4e72967f-118d-4608-906e-5f36f4540872" class="intrnllnk">
WTS.据/code>] = LMS(据一种href="#mw_530d713b-71b8-4a14-a78e-a000adad6302" class="intrnllnk">
X据/code>那据一种href="#mw_db6b9f37-cc93-4e7f-8fd6-2bfe27289079" class="intrnllnk">
D.据/code>那据一种href="#mw_a361d18d-f06c-4d7e-8ebd-3054f34d39d4" class="intrnllnk">
亩据/code>那据一种href="#mw_cecf3006-18e5-4310-b90d-6809970ee595" class="intrnllnk">
一种据/code>那据一种href="#mw_db29e741-8beb-4e26-a9a8-29875bac5b1d" class="intrnllnk">
R.据/code>)据/code>
X据/code>-据span itemprop="purpose">数据输入据/span>
标量据/span>|据span itemprop="inputvalue">柱矢量据/span>
要由LMS滤波器滤波的信号。输入,据code class="argument">X据/code>,以及所需的信号,据code class="argument">D.据/code>必须具有相同的大小、数据类型和复杂性。如果输入是定点的,则数据类型必须有签名,并且必须具有与所需信号相同的字长。据/p>
输入,据code class="argument">X据/code>可以是可变尺寸的信号。即使当对象被锁定,您也可以更改列向量中的元素数。当您调用对象以运行其算法时,系统对象锁定。据/p>
数据类型:据/strong>单据/code>|据code itemprop="datatype">双倍的据/code>|据code itemprop="datatype">int8据/code>|据code itemprop="datatype">int16据/code>|据code itemprop="datatype">INT32.据/code>|据code itemprop="datatype">INT64.据/code>|据code itemprop="datatype">fi据/code>
复数的支持:金宝app据/strong>是的据/p>
D.据/code>-据span itemprop="purpose">期望的信号据/span>
标量据/span>|据span itemprop="inputvalue">柱矢量据/span>
LMS过滤器适应其滤波器重量,据code class="argument">WTS.据/code>,以使误差最小化,据code class="argument">犯错据/code>,收敛输入信号据code class="argument">X据/code>到所需的信号据code class="argument">D.据/code>尽可能地接近。据/p>
输入,据code class="argument">X据/code>,以及所需的信号,据code class="argument">D.据/code>,必须具有相同的大小、数据类型和复杂性。如果所需信号是定点信号,则数据类型必须有符号,并且必须具有与数据输入相同的字长。据/p>
输入,据code class="argument">D.据/code>可以是可变尺寸的信号。即使当对象被锁定,您也可以更改列向量中的元素数。当您调用对象以运行其算法时,系统对象锁定。据/p>
数据类型:据/strong>单据/code>|据code itemprop="datatype">双倍的据/code>|据code itemprop="datatype">int8据/code>|据code itemprop="datatype">int16据/code>|据code itemprop="datatype">INT32.据/code>|据code itemprop="datatype">INT64.据/code>|据code itemprop="datatype">fi据/code>
复数的支持:金宝app据/strong>是的据/p>
亩据/code>-据span itemprop="purpose">步长据/span>
非负标量据/span>
适配步长因子,指定为标量,非负数字值。对于归一化LMS方法的收敛,步长应大于0且小于2.步长输入的数据类型必须与数据类型匹配据code class="argument">X据/code>和据code class="argument">D.据/code>. 如果数据类型为定点,则必须对数据类型进行签名。据/p>
小步长确保输出之间的稳态误差较小据code class="argument">y据/code>和所需的信号据code class="argument">D.据/code>.步长越小,滤波器的收敛速度越小。为了提高收敛速度,增大步长。注意,如果步长较大,过滤器可能会变得不稳定。要计算过滤器在不变得不稳定的情况下可以接受的最大步长,请使用据一种href="//www.tatmou.com/help/dsp/ref/dsp.lmsfilter.maxstep.html"> 该输入是必需的据一种href="//www.tatmou.com/help/dsp/ref/dsp.lmsfilter-system-object.html" class="intrnllnk">StepSizeSource据/a>属性设置为据code class="literal">'输入端口'据/code>.据/p>
数据类型:据/strong>maxstep.据/code>功能。据/p>
依赖性据/h4>
单据/code>|据code itemprop="datatype">双倍的据/code>|据code itemprop="datatype">int8据/code>|据code itemprop="datatype">int16据/code>|据code itemprop="datatype">INT32.据/code>|据code itemprop="datatype">INT64.据/code>|据code itemprop="datatype">fi据/code>
一种据/code>-据span itemprop="purpose">适应控制据/span>
标量据/span>
自适应控制输入,控制如何更新过滤器权值。如果该输入的值非零,则该对象持续更新筛选器权重。如果该输入的值为零,则筛选权重保持当前值。据/p>
该输入是必需的据一种href="//www.tatmou.com/help/dsp/ref/dsp.lmsfilter-system-object.html" class="intrnllnk">AdaptInputPort据/a>属性设置为据code class="literal">真的据/code>.据/p>
数据类型:据/strong>单据/code>|据code itemprop="datatype">双倍的据/code>|据code itemprop="datatype">int8据/code>|据code itemprop="datatype">int16据/code>|据code itemprop="datatype">INT32.据/code>|据code itemprop="datatype">uint8据/code>|据code itemprop="datatype">uint16据/code>|据code itemprop="datatype">uint32据/code>|据code itemprop="datatype">逻辑据/code>
R.据/code>-据span itemprop="purpose">复位信号据/span>
标量据/span>
基于值的值重置滤波器权重的重置信号据一种href="//www.tatmou.com/help/dsp/ref/dsp.lmsfilter-system-object.html" class="intrnllnk">WeightsResetCondition据/a>财产。据/p>
该输入是必需的据一种href="//www.tatmou.com/help/dsp/ref/dsp.lmsfilter-system-object.html" class="intrnllnk">weightsresetinputport.据/a>属性设置为据code class="literal">真的据/code>.据/p>
数据类型:据/strong>单据/code>|据code itemprop="datatype">双倍的据/code>|据code itemprop="datatype">int8据/code>|据code itemprop="datatype">int16据/code>|据code itemprop="datatype">INT32.据/code>|据code itemprop="datatype">uint8据/code>|据code itemprop="datatype">uint16据/code>|据code itemprop="datatype">uint32据/code>|据code itemprop="datatype">逻辑据/code>
y据/code>- 过滤输出据br>标量|列向量据/span>
过滤输出,返回标量或列向量。该对象适应其滤波器权重以收敛输入信号据code class="argument">X据/code>匹配所需的信号据code class="argument">D.据/code>. 这个filter outputs the converged signal.据/p>
数据类型:据/strong>单据/code>|据code>双倍的据/code>|据code>int8据/code>|据code>int16据/code>|据code>INT32.据/code>|据code>INT64.据/code>|据code>fi据/code>
复数的支持:金宝app据/strong>是的据/p>
犯错据/code>-输出与期望信号之间的差异据br>标量|列向量据/span>
输出信号之间的差异据code class="argument">y据/code>和所需的信号据code class="argument">D.据/code>,作为标量或列向量返回。的数据类型据code class="argument">犯错据/code>的数据类型据code class="argument">y据/code>. 这个objE.ctive of the adaptive filter is to minimize this error. The object adapts its weights to converge towards optimal filter weights that produce an output signal that matches closely with the desired signal. For more details on how据code class="argument">犯错据/code>计算,看到据一种href="//www.tatmou.com/help/dsp/ref/dsp.lmsfilter-system-object.html" class="intrnllnk">算法据/a>.据/p>
数据类型:据/strong>单据/code>|据code>双倍的据/code>|据code>int8据/code>|据code>int16据/code>|据code>INT32.据/code>|据code>INT64.据/code>|据code>fi据/code>
WTS.据/code>- 自适应滤波器重量据br>标量|列向量据/span>
自适应滤波器权重,返回为标量或由值指定的长度的列向量据一种href="//www.tatmou.com/help/dsp/ref/dsp.lmsfilter-system-object.html" class="intrnllnk">长度据/a>.据/p>
数据类型:据/strong>单据/code>|据code>双倍的据/code>|据code>int8据/code>|据code>int16据/code>|据code>INT32.据/code>|据code>INT64.据/code>|据code>fi据/code>
要使用对象函数,请指定System对象作为第一个输入参数。例如,释放名为system的对象的系统资源据code class="literal">obj据/code>,使用此语法:据/p>
释放(obj)据/pre>
maxstep.据/code> |
LMS自适应滤波器收敛的最大步长据/td> |
MSEPRED.据/code> |
LMS自适应滤波器的预测平均平方误差据/td> |
MSESIM据/code> |
自适应滤波器的估计均方误差据/td> |
均方误差(MSE)测量期望信号与自适应滤波器输入的主信号之间误差的平方的平均值。为了减少这个误差,将初级输入收敛到所需的信号。利用该方法确定各时刻MSE的预测值和模拟值据code class="literal">MSEPRED.据/code>和据code class="literal">MSESIM据/code>功能。将这些MSE值相互比较,并比较最小MSE值和稳态MSE值。另外,计算由系数协方差矩阵迹给出的系数误差的平方和。据/p>
请注意据/strong>如果你正在使用R2016a或更早的版本,用等价的步骤语法替换每个对象调用。例如,据code class="literal">obj (x)据/code>成为据code class="literal">步骤(obj,x)据/code>.据/p>
初始化据/b> 创建一个据code class="literal">dsp。FIRFilter据/code>表示未知系统的系统对象™。通过信号,据code class="literal">X据/code>那据/em>到FIR滤波器。未知系统的输出是期望的信号,据code class="literal">D.据/code>,即未知系统(FIR滤波器)的输出与加性噪声信号的和,据code class="literal">N据/code>.据/p>
LMS过滤器据/b> 创建一个据code class="literal">dsp.lmsfilter.据/code>系统对象创建一个适应输出所需信号的过滤器。将自适应滤波器的长度设置为32个抽头,步长到0.008,以及分析和模拟的抽取因子为5.变量据code class="literal">辛马斯据/code>表示未知系统输出之间的模拟MSE,据code class="literal">D.据/code>,以及自适应滤波器的输出。的变量据code class="literal">微卫星据/code>给出了相应的预测值。据/p>
绘制MSE结果据/b> 比较模拟MSE,预测的MSE,最低MSE和最终MSE的值。最终的MSE值由最低MSE和超额MSE的总和给出。据/p>
预测的MSE遵循与模拟的MSE相同的轨迹。这两个轨迹都会随着稳态(最终)MSE而收敛。据/p>
绘制系数轨迹据/b> 比较LMS滤波系数12、13、14和15的模拟值和预测值。据/p>
在稳态下,两个轨迹都收敛。据/p>
平方系数误差的总和据/strong> 比较的平方系数误差的总和据code class="literal">MSEPRED.据/code>和据code class="literal">MSESIM据/code>. 这个se values are given by the trace of the coefficient covariance matrix.据/p>
0.5 num = fir1(31日);冷杉= dsp。FIRFilter (据span style="color:#A020F0">'分子'据/span>,num);IIR = dsp.iirfilter(据span style="color:#A020F0">'分子'据/span>sqrt (0.75),据span style="color:#0000FF">...据/span>'分母'据/span>,[1-0.5]);x = IIR(符号(Randn(2000,25)));n = 0.1 * RANDN(尺寸(x));d = fir(x)+ n;据/pre>
l = 32;μ= 0.008;m = 5;lms = dsp.lmsfilter(据span style="color:#A020F0">'长度'据/span>l,据span style="color:#A020F0">“StepSize”据/span>μ);均方误差(mmse, emse meanW, traceK] = msepred (lms, x, d, m);[simmse, meanWsim Wsim traceKsim] = msesim (lms, x, d, m);据/pre>
nn=m:m:尺寸(x,1);符号学(nn,simmse,[0大小(x,1)],[(emse+mmse)据span style="color:#0000FF">...据/span>(emse + mmse)], nn, mse,大小(x, 1) [0], [mmse mmse])标题(据span style="color:#A020F0">“均方误差性能”据/span>)轴([0 size(x,1) 0.001 10])图例(据span style="color:#A020F0">'MSE(SIM。)'据/span>那据span style="color:#A020F0">“最后的MSE”据/span>那据span style="color:#A020F0">'妈妈'据/span>那据span style="color:#A020F0">“最小均方误差”据/span>)xlabel(据span style="color:#A020F0">“时间指数”据/span>)ylabel(据span style="color:#A020F0">的平方误差值据/span>)据/pre>
意思是据/code>所给出的模拟系数的平均值是据code class="literal">MSESIM据/code>.据code class="literal">意为据/code>预测系数的平均值为据code class="literal">MSEPRED.据/code>.据/p>
情节(nn meanWsim (: 12),据span style="color:#A020F0">“b”据/span>,nn,意思是(:12),据span style="color:#A020F0">'r'据/span>,nn,据span style="color:#0000FF">...据/span>含义WSIM(:,13:15),据span style="color:#A020F0">“b”据/span>,nn,意思是(:,13:15),据span style="color:#A020F0">'r'据/span>) PlotTitle = {据span style="color:#A020F0">'平均系数轨迹'据/span>;据span style="color:#0000FF">...据/span>“W(12), W(13), W(14),和W(15)”据/span>}据/pre>
绘图=据span class="emphasis">2 x1细胞据/em>{}{'W(12)、W(13)、W(14)和W(15)}据/pre>
标题(PlotTitle)传说(据span style="color:#A020F0">'模拟'据/span>那据span style="color:#A020F0">'理论'据/span>)xlabel(据span style="color:#A020F0">“时间指数”据/span>)ylabel(据span style="color:#A020F0">的系数值据/span>)据/pre>
半逻辑(NN,Traceksim,NN,Tracek,据span style="color:#A020F0">'r'据/span>) 标题(据span style="color:#A020F0">“Sum-of-Squared系数错误”据/span>轴([0 size(x,1) 0.0001 1])图例(据span style="color:#A020F0">'模拟'据/span>那据span style="color:#A020F0">'理论'据/span>)xlabel(据span style="color:#A020F0">“时间指数”据/span>)ylabel(据span style="color:#A020F0">的平方误差值据/span>)据/pre>
这据code class="literal">maxstep.据/code>函数计算自适应滤波器的最大步长。这个步长使滤波器在最大可能的收敛速度下保持稳定。创建原始输入信号,据code class="literal">X据/code>,通过将符号随机信号传递给IIR滤波器。信号据code class="literal">X据/code>每帧包含50帧2000个样本。创建一个LMS过滤器,点击32次,步长0.1。据/p>
x =零(2000,50);iirfilter = dsp.iirfilter(据span style="color:#A020F0">'分子'据/span>sqrt (0.75),据span style="color:#A020F0">'分母'据/span>,[1-0.5]);据span style="color:#0000FF">为据/span>k = 1:尺寸(x, 2) x (:, k) = IIRFilter(标志(randn(大小(x, 1), 1)));据span style="color:#0000FF">结束据/span>mu=0.1;LMSFilter=dsp.LMSFilter(据span style="color:#A020F0">'长度'据/span>32岁的据span style="color:#A020F0">“StepSize”据/span>μ);据/pre>
使用均值的均值均衡刻度计算最大自适应步长和最大步长据code class="literal">maxstep.据/code>功能。据/p>
[mumax,mumaxmse] = maxstep(lmsfilter,x)据/pre>
mumax = 0.0625据/pre>
Mumaxmse = 0.0536.据/pre>
系统辨识是用自适应滤波器辨识未知系统的系数的过程。该过程的总体概况显示在据一种href="//www.tatmou.com/help/dsp/ug/overview-of-adaptive-filters-and-applications.html" class="a">系统识别 - 使用自适应滤波器识别未知系统据/a>. 涉及的主要组成部分包括:据/p>
自适应滤波算法。在本例中,设置据code class="literal">方法据/code>的属性据一种href="//www.tatmou.com/help/dsp/ref/dsp.lmsfilter-system-object.html" class="a">dsp.lmsfilter.据/code>来据code class="literal">“LMS”据/code>选择LMS自适应滤波算法。据/p>
适应的未知系统或过程。在此示例中,由此设计的过滤器据一种href="//www.tatmou.com/help/dsp/ref/fircband.html" class="a">fircband据/code>是未知的系统。据/p>
适当的输入数据来练习适应过程。对于一般的LMS模型,这些是所需的信号据span class="inlineequation"> 输入信号据span class="inlineequation"> .据/p>
自适应滤波器的目标是使自适应滤波器输出之间的误差信号最小据span class="inlineequation"> 以及未知系统的输出(或要识别的系统)据span class="inlineequation"> .一旦错误信号最小化,自适应滤波器就与未知系统相似。两个滤波器的系数匹配得很好。据/p>
请注意据/strong>如果你正在使用R2016a或更早的版本,用等价的步骤语法替换每个对象调用。例如,据code class="literal">obj (x)据/code>成为据code class="literal">步骤(obj,x)据/code>.据/p>
未知的系统据/b> 创建一个据code class="literal">dsp。FIRFilter据/code>对象,表示要标识的系统。使用据code class="literal">fircband据/code>函数设计滤波系数。设计的滤波器为阻带波纹限制在0.2的低通滤波器。据/p>
传递信号据code class="literal">X据/code>到FIR滤波器。期望信号据code class="literal">D.据/code>是未知系统(FIR滤波器)的输出和添加噪声信号的总和据code class="literal">N据/code>.据/p>
自适应过滤器据/b> 使用未知过滤器设计和所需的信号,创建并应用自适应LMS滤波器对象以识别未知过滤器。据/p>
准备自适应滤波器对象需要估计滤波器系数和LMS步长的初始值(据code class="literal">亩据/code>). 可以从一组非零值开始,作为滤波器系数的估计值。此示例使用零作为13个初始过滤器权重。设定据code class="literal">InitialConditions据/code>的属性据code class="literal">dsp.lmsfilter.据/code>到期望的滤波器权重的初始值。对于步长而言,0.8是一个很好的折中方案,既要足够大,可以在250次迭代(250个输入样本点)内很好地收敛,又要足够小,可以对未知滤波器进行准确的估计。据/p>
创建一个据code class="literal">dsp.lmsfilter.据/code>对象表示使用LMS自适应算法的自适应滤波器。设置自适应过滤器的长度为13点,步长为0.8。据/p>
传递一次输入信号据code class="literal">X据/code>和所需的信号据code class="literal">D.据/code>到LMS过滤器。运行自适应滤波器以确定未知系统。输出据code class="literal">y据/code>自适应滤波器的信号是融合到所需信号的信号据span class="emphasis">D.据/em>从而最小化错误据code class="literal">E.据/code>在两个信号之间。据/p>
绘制结果。输出信号与预期的预期不匹配所需信号,使两个非活动之间的误差。据/p>
比较重量据/b> 重量矢量据code class="literal">W.据/code>表示适应于类似于未知系统的LMS滤波器(FIR滤波器)的系数。为了确定收敛性,将FIR滤波器的分子与自适应滤波器的估计权值进行比较。据/p>
估计的滤波器权重不与实际的滤波器权重不密切匹配,确认先前信号图中看到的结果。据/p>
改变阶梯尺寸据/b> 作为实验,将步长更改为0.2。重复这个例子据code class="literal">μ= 0.2据/code>结果如下茎图。滤波器不收敛,估计的权值不是实际权值的很好近似。据/p>
增加数据样本的数量据/b> 增加所需信号的帧大小。即使这增加了所涉及的计算,LMS算法现在也有更多的数据可用于适应。利用1000个信号数据和台阶尺寸为0.2,系数比以前更近,表示改善的收敛性。据/p>
通过迭代输入数据,进一步增加数据样本的数量。在4000个数据样本上运行算法,通过4次迭代的批量传递给LMS算法。据/p>
比较过滤器权重。LMS滤波器的权值与FIR滤波器的权值非常接近,表明具有良好的收敛性。据/p>
输出信号与所需信号非常匹配,使得两者之间的误差接近于零。据/p>
filt = dsp.FIRFilter;filt.numerator.=fircband(12,[0 0.4 0.5 1],[1 1 0 0],[1 0.2],据span style="color:#0000FF">...据/span>{据span style="color:#A020F0">' w '据/span>“c”据/span>});据/pre>
x=0.1*randn(250,1);n=0.01*randn(250,1);d=滤波器(x)+n;据/pre>
mu = 0.8;lms = dsp.lmsfilter(13,据span style="color:#A020F0">“StepSize”据/span>,亩)据/pre>
lms = dsp。LMSFilterW.ith properties: Method: 'LMS' Length: 13 StepSizeSource: 'Property' StepSize: 0.8000 LeakageFactor: 1 InitialConditions: 0 AdaptInputPort: false WeightsResetInputPort: false WeightsOutput: 'Last' Show all properties据/pre>
[y, e, w] = lms (x, d);情节(摘要[d, y, e])标题(据span style="color:#A020F0">“FIR滤波器的系统识别”据/span>) 传奇(据span style="color:#A020F0">'想要'据/span>那据span style="color:#A020F0">“输出”据/span>那据span style="color:#A020F0">“错误”据/span>)xlabel(据span style="color:#A020F0">“时间指数”据/span>)ylabel(据span style="color:#A020F0">的信号值据/span>)据/pre>
茎([(filt.Numerator)。' w])标题(据span style="color:#A020F0">“自适应LMS算法识别系统”据/span>) 传奇(据span style="color:#A020F0">'实际滤重权重'据/span>那据span style="color:#A020F0">“估计的过滤器权重”据/span>那据span style="color:#0000FF">...据/span>'地点'据/span>那据span style="color:#A020F0">'东北'据/span>)据/pre>
μ= 0.2;lms = dsp.lmsfilter(13,据span style="color:#A020F0">“StepSize”据/span>μ);(~ ~ w) = lms (x, d);茎([(filt.Numerator)。' w])标题(据span style="color:#A020F0">“自适应LMS算法识别系统”据/span>) 传奇(据span style="color:#A020F0">'实际滤重权重'据/span>那据span style="color:#A020F0">“估计的过滤器权重”据/span>那据span style="color:#0000FF">...据/span>'地点'据/span>那据span style="color:#A020F0">'东北'据/span>)据/pre>
释放(filt);x = 0.1 * randn (1000 1);n = 0.01 * randn (1000 1);D = filt(x) + n;[y, e, w] = lms (x, d);茎([(filt.Numerator)。' w])标题(据span style="color:#A020F0">“自适应LMS算法识别系统”据/span>) 传奇(据span style="color:#A020F0">'实际滤重权重'据/span>那据span style="color:#A020F0">“估计的过滤器权重”据/span>那据span style="color:#0000FF">...据/span>'地点'据/span>那据span style="color:#A020F0">'东北'据/span>)据/pre>
释放(filt);n = 0.01 * randn (1000 1);据span style="color:#0000FF">为据/span>索引= 1:4 x = 0.1 * Randn(1000,1);D = filt(x) + n;[y,e,w] = lms(x,d);据span style="color:#0000FF">结束据/span>茎([(filt.Numerator)。' w])标题(据span style="color:#A020F0">“自适应LMS算法识别系统”据/span>) 传奇(据span style="color:#A020F0">'实际滤重权重'据/span>那据span style="color:#A020F0">“估计的过滤器权重”据/span>那据span style="color:#0000FF">...据/span>'地点'据/span>那据span style="color:#A020F0">'东北'据/span>)据/pre>
情节(1:1000 [d, y, e])标题(据span style="color:#A020F0">“FIR滤波器的系统识别”据/span>) 传奇(据span style="color:#A020F0">'想要'据/span>那据span style="color:#A020F0">“输出”据/span>那据span style="color:#A020F0">“错误”据/span>)xlabel(据span style="color:#A020F0">“时间指数”据/span>)ylabel(据span style="color:#A020F0">的信号值据/span>)据/pre>
为了提高LMS算法的收敛性能,归一化变量(NLMS)采用了基于信号功率的自适应步长。随着输入信号功率的变化,算法计算输入功率并调整步长以保持合适的值。步长随时间而变化,因此在很多情况下,样本越少,归一化算法的收敛速度越快。对于随时间变化缓慢的输入信号,归一化LMS算法可能是一种更有效的LMS方法。据/p>
有关使用LMS方法的示例,请参见据一种href="//www.tatmou.com/help/dsp/ug/system-identification-fir-filter-using-lms-algorithm.html" class="a">使用LMS算法对FIR滤波器的系统识别据/a>.据/p>
请注意据/strong>如果你正在使用R2016a或更早的版本,用等价的步骤语法替换每个对象调用。例如,据code class="literal">obj (x)据/code>成为据code class="literal">步骤(obj,x)据/code>.据/p>
未知的系统据/b> 创建一个据code class="literal">dsp。FIRFilter据/code>对象,表示要标识的系统。使用据code class="literal">fircband据/code>函数设计滤波系数。设计的滤波器为阻带波纹限制在0.2的低通滤波器。据/p>
传递信号据code class="literal">X据/code>到FIR滤波器。期望信号据code class="literal">D.据/code>是未知系统(FIR滤波器)的输出和添加噪声信号的总和据code class="literal">N据/code>.据/p>
自适应过滤器据/b> 要使用归一化的LMS算法变化,请设置据code class="literal">方法据/code>土地上的财产据code class="literal">dsp.lmsfilter.据/code>来据code class="literal">'标准化LMS'据/code>.设置自适应滤波器的长度为13点,步长为0.2。据/p>
传递一次输入信号据code class="literal">X据/code>和所需的信号据code class="literal">D.据/code>到LMS过滤器。据/p>
输出据code class="literal">y据/code>自适应滤波器的信号是融合到所需信号的信号据span class="emphasis">D.据/em>从而最小化错误据code class="literal">E.据/code>在两个信号之间。据/p>
将适应的过滤器与未知系统进行比较据/b> 权值向量w表示适应于类似于未知系统的LMS滤波器(FIR滤波器)的系数。为了确定收敛性,将FIR滤波器的分子与自适应滤波器的估计权值进行比较。据/p>
filt = dsp.FIRFilter;filt.numerator.=fircband(12,[0 0.4 0.5 1],[1 1 0 0],[1 0.2],据span style="color:#0000FF">...据/span>{据span style="color:#A020F0">' w '据/span>“c”据/span>});据/pre>
x = 0.1 * randn (1000 1);n = 0.001 * RANDN(1000,1);d = filt(x)+ n;据/pre>
μ= 0.2;lms = dsp.lmsfilter(13,据span style="color:#A020F0">“StepSize”据/span>,穆,据span style="color:#A020F0">“方法”据/span>那据span style="color:#0000FF">...据/span>'标准化LMS'据/span>);据/pre>
[y, e, w] = lms (x, d);据/pre>
情节(1:1000 [d, y, e])标题(据span style="color:#A020F0">'通过归一化LMS算法的系统识别'据/span>) 传奇(据span style="color:#A020F0">'想要'据/span>那据span style="color:#A020F0">“输出”据/span>那据span style="color:#A020F0">“错误”据/span>)xlabel(据span style="color:#A020F0">“时间指数”据/span>)ylabel(据span style="color:#A020F0">的信号值据/span>)据/pre>
茎([(filt.Numerator)。' w])标题(据span style="color:#A020F0">'通过归一化LMS算法的系统识别'据/span>) 传奇(据span style="color:#A020F0">'实际滤重权重'据/span>那据span style="color:#A020F0">“估计的过滤器权重”据/span>那据span style="color:#0000FF">...据/span>'地点'据/span>那据span style="color:#A020F0">'东北'据/span>)据/pre>
自适应滤波器使其滤波系数与未知系统的系数相匹配。目标是最小化未知系统输出与自适应滤波器输出之间的误差信号。对于相同的输入,当这两个输出收敛并且非常匹配时,系数被称为非常匹配。这种状态下的自适应滤波器类似于未知系统。这个例子比较了归一化LMS (NLMS)算法和没有归一化的LMS算法的收敛速度。据/p>
未知的系统据/b>
创建一个据code class="literal">dsp。FIRFilter据/code>表示未知系统。传递信号据code class="literal">X据/code>作为未知系统的输入。期望的信号据code class="literal">D.据/code>是未知系统(FIR滤波器)的输出和添加噪声信号的总和据code class="literal">N据/code>.据/p>
filt = dsp.FIRFilter;filt.numerator.=fircband(12,[0 0.4 0.5 1],[1 1 0 0],[1 0.2],据span style="color:#0000FF">...据/span>{据span style="color:#A020F0">' w '据/span>“c”据/span>});x = 0.1 * randn (1000 1);n = 0.001 * RANDN(1000,1);D = filt(x) + n;据/pre>
自适应过滤器据/b>
创建两个据code class="literal">dsp.lmsfilter.据/code>对象,一个设置为LMS算法,另一个设置为归一化LMS算法。选择0.2的适配步长,并将自适应滤波器的长度设置为13个抽头。据/p>
μ= 0.2;lms_nonnormalized = dsp。LMSFilter (13,据span style="color:#A020F0">“StepSize”据/span>,穆,据span style="color:#0000FF">...据/span>“方法”据/span>那据span style="color:#A020F0">“LMS”据/span>);lms_normalized = dsp.lmsfilter(13,据span style="color:#A020F0">“StepSize”据/span>,穆,据span style="color:#0000FF">...据/span>“方法”据/span>那据span style="color:#A020F0">'标准化LMS'据/span>);据/pre>
传递一次输入信号据code class="literal">X据/code>和所需的信号据code class="literal">D.据/code>LMS算法的变化。的变量据code class="literal">e1据/code>和据code class="literal">e2据/code>分别表示期望信号与归一化滤波器和非归一化滤波器输出之间的误差。据/p>
[〜,e1,〜] = lms_normalized(x,d);[〜,e2,〜] = lms_nonnormized(x,d);据/pre>
绘制两个变体的错误信号。NLMS变量的错误信号比LMS变体的误差信号更快地收敛到零。归一化版本适应远远少的迭代,结果几乎与非全体化版本一样好。据/p>
图([E1,E2]);标题(据span style="color:#A020F0">“比较LMS和NLMS转换性能”据/span>); 传奇(据span style="color:#A020F0">'nlms派生滤波器权重'据/span>那据span style="color:#0000FF">...据/span>“LMS导出的滤波器权重”据/span>那据span style="color:#A020F0">'地点'据/span>那据span style="color:#A020F0">'东北'据/span>);包含(据span style="color:#A020F0">“时间指数”据/span>)ylabel(据span style="color:#A020F0">的信号值据/span>)据/pre>
用LMS自适应滤波器消除添加到未知系统的附加噪声n。LMS滤波器自适应其系数,直到其传递函数与未知系统的传递函数尽可能接近。自适应滤波器输出与未知系统输出的差值表示误差信号,据code class="literal">E.据/code>.使误差信号最小化是自适应滤波器的目标。据/p>
未知系统和LMS滤波器处理相同的输入信号,据code class="literal">X据/code>并产生输出据code class="literal">D.据/code>和据code class="literal">y据/code>分别地如果自适应滤波器的系数与未知系统的系数匹配,则误差,据code class="literal">E.据/code>,实际上代表着添加剂噪声。据/p>
请注意据/strong>如果你正在使用R2016a或更早的版本,用等价的步骤语法替换每个对象调用。例如,据code class="literal">obj (x)据/code>成为据code class="literal">步骤(obj,x)据/code>.据/p>
创建一个据code class="literal">dsp。FIRFilter据/code>系统对象表示未知系统。创建一个据code class="literal">dsp.lmsfilter.据/code>对象,并设置长度为11次,步长为0.05。创建一个正弦波来表示添加到未知系统中的噪声。在时间范围内查看信号。据/p>
创建随机输入信号,据span class="emphasis">X据/em>并将信号传递给FIR滤波器。向FIR滤波器的输出添加正弦波,以产生噪声信号,据span class="emphasis">D.据/em>. 这个信号那据span class="emphasis">D.据/em>是未知系统的输出。将噪声信号和一次输入信号传给LMS滤波器。在时间范围内查看噪声信号和错误信号。据/p>
错误信号,据code class="literal">E.据/code>,是加入到未知系统中的正弦噪声。使误差信号最小化,使添加到系统中的噪声最小化。据/p>
FrameSize = 100;硝石= 10;lmsfilt2 = dsp。LMSFilter (据span style="color:#A020F0">'长度'据/span>11据span style="color:#A020F0">“方法”据/span>那据span style="color:#A020F0">'标准化LMS'据/span>那据span style="color:#0000FF">...据/span>“StepSize”据/span>,0.05);firfilt2 = dsp.firfilter(据span style="color:#A020F0">'分子'据/span>,FiR1(10,[。5,.75]));sinewave = dsp.sinewave(据span style="color:#A020F0">'频率'据/span>,0.01,据span style="color:#0000FF">...据/span>“SampleRate”据/span>,1,据span style="color:#A020F0">“SamplesPerFrame”据/span>,框架);范围= timescope(据span style="color:#A020F0">'不时'据/span>那据span style="color:#A020F0">'秒'据/span>那据span style="color:#0000FF">...据/span>“YLimits”据/span>,[-3 3],据span style="color:#A020F0">“缓冲长度”据/span>,2 *框架化* niter,据span style="color:#0000FF">...据/span>“ShowLegend”据/span>,真的,据span style="color:#A020F0">“频道名称”据/span>那据span style="color:#0000FF">...据/span>{据span style="color:#A020F0">噪声信号的据/span>那据span style="color:#A020F0">误差信号的据/span>});据/pre>
为据/span>k = 1:niter x = Randn(框架,1);d = firfilt2(x)+ sinewave();[y,e,w] = lmsfilt2(x,d);范围([D,E])据span style="color:#0000FF">结束据/span>发布(范围)据/pre>
当推导自适应过滤器所需的计算量驱动您的开发过程时,LMS (SDLMS)算法的符号数据变体可能是一个非常好的选择,如本例所示。据/p>
在LMS自适应滤波器的标准和归一化变化中,适应滤波器的系数来自所需信号之间的平均方误差和来自未知系统的输出信号。符号数据算法通过使用输入数据的符号来改变均方误差计算来改变滤波器系数。据/p>
当错误是肯定的时,新系数是先前的系数加上误差乘以步长据span class="emphasis">μ.据/em>.如果误差是负的,新的系数还是先前的系数减去误差乘以据span class="emphasis">μ.据/em>- 请注意标志更改。据/p>
当输入为0时,新的系数与之前的集合相同。据/p>
在矢量形式中,标志数据LMS算法是:据/p>
在哪里据/p>
用载体据span class="inlineequation">
包含应用于滤波器系数和向量的权重据span class="inlineequation">
包含输入数据的。向量据span class="inlineequation">
为期望信号与滤波信号之间的误差。SDLMS算法的目的是最小化此错误。步长由据span class="inlineequation">
.据/p>
一个小的据span class="inlineequation">
,对于每个样本对滤波器权重的校正变小,并且SDLMS误差会慢得多。一个更大的据span class="inlineequation">
更改每个步骤的权重,因此错误更快地降低,但结果错误不会紧密地接近理想的解决方案。为保证良好的收敛速度和稳定性,选择据span class="inlineequation">
在下列实际范围内。据/p>
在哪里据span class="inlineequation">
是信号中的样本数量。另外,定义据span class="inlineequation">
作为两个有效计算的力量。据/p>
笔记:据/strong>如何设置符号数据算法的初始条件,将极大地影响自适应过程的有效性。由于算法本质上是对输入信号进行量化,因此算法很容易变得不稳定。据/p>
一系列大输入值,与量化过程耦合可能导致误差超过所有界限。通过选择小型步长,抑制符号数据算法的趋势来摆脱控制据span class="inlineequation">
并将算法的初始条件设置为非零正值和负值。据/p>
在此噪声取消示例中,设置据code class="literal">方法据/code>的属性据一种href="//www.tatmou.com/help/dsp/ref/dsp.lmsfilter-system-object.html" class="a"> 包含噪声损坏的信号的数据。在下面的框图中据一种href="//www.tatmou.com/help/dsp/ug/overview-of-adaptive-filters-and-applications.html" class="a">噪声或干扰消除 - 使用自适应滤波器去除未知系统的噪声据/a>,这是所需的信号据span class="inlineequation">
. 这个Noise cancellation process removes the noise from the signal.据/p> 包含随机噪声的数据。在下面的框图中据一种href="//www.tatmou.com/help/dsp/ug/overview-of-adaptive-filters-and-applications.html" class="a">噪声或干扰消除 - 使用自适应滤波器去除未知系统的噪声据/a>,这是据span class="inlineequation">
. 这个信号据span class="inlineequation">
与损坏信号数据的噪声相关联。如果噪声数据之间的相关性,则调整算法无法从信号中移除噪声。据/p> 对于信号,使用正弦波。注意据code class="literal">信号据/code>是1000个元素的列向量。据/p>
现在,加上相关的白噪声据code class="literal">信号据/code>.为了确保噪声是相关的,将噪声通过低通FIR滤波器,然后将滤波后的噪声添加到信号中。据/p>
准备据code class="literal">dsp.lmsfilter.据/code>处理对象,设置滤波器权重的初始条件据code class="literal">亩据/code>(据code class="literal">一步的大小据/code>).如本节前面所述,您设置的值据code class="literal">多项式系数据/code>和据code class="literal">亩据/code>确定自适应滤波器是否能去除信号路径中的噪声。据/p>
在据一种href="//www.tatmou.com/help/dsp/ref/dsp.lmsfilter-system-object.html" class="intrnllnk">使用LMS算法对FIR滤波器的系统识别据/a>,您构建了一个默认过滤器,将滤波器系数设置为零。在大多数情况下,方法不适用于符号数据算法。将初始滤波器系数越接近预期值,算法越有可能效果良好,并收敛到有效地消除噪声的过滤器解决方案。据/p>
对于本例,请从“噪波过滤器”中使用的系数开始(据code class="literal">filt.numerator.据/code>),并对它们稍加修改,使算法得以适应。据/p>
具有所需的输入参数据code class="literal">dsp.lmsfilter.据/code>,构造LMS过滤器对象,运行自适应,并查看结果。据/p>
什么时候据code class="literal">dsp.lmsfilter.据/code>运行,它使用比标准LMS算法中的乘法操作更少。此外,执行符号数据适应只需要乘法时乘以逐步转移,当步长是两个的功率时。据/p>
尽管如图所示的符号数据算法的性能相当好,但符号数据算法的稳定性远不如标准LMS变化。在这个噪声消除的例子中,处理后的信号与输入信号有很好的匹配,但是算法很容易不受限制地增长,而不能达到很好的性能。据/p>
改变重量初始条件(据code class="literal">InitialConditions据/code>) 和据code class="literal">亩据/code>(据code class="literal">一步的大小据/code>),甚至是用来创建相关噪声的低通滤波器,都可能导致噪声消除失败。据/p>
dsp.lmsfilter.据/code>来据code class="literal">'签名数据LMS'据/code>.此示例需要两个输入数据集:据/p>
信号=罪(2 *π* 0.055 * (0:1000-1)');据/pre>
噪声= Randn(1000,1);filt = dsp.FIRFilter;filt.numerator = fir1(11,0.4);fnoise = filt(噪音);d =信号+ fnoise;据/pre>
Fnoise.据/code>相关噪声和据code class="literal">D.据/code>是符号数据算法所需的输入。据/p>
coeffs =(filt.numerator).'- 0.01;据span style="color:#228B22">%设置过滤器的初始条件。据/span>μ= 0.05;据span style="color:#228B22">%设置算法更新的步长。据/span>
LMS = dsp.lmsfilter(12,据span style="color:#A020F0">“方法”据/span>那据span style="color:#A020F0">'签名数据LMS'据/span>那据span style="color:#0000FF">...据/span>“StepSize”据/span>,穆,据span style="color:#A020F0">'初始条件'据/span>、多项式系数);(~ e) = lms(噪音,d);L = 200;图(0:L-1,信号(1:1),0:L-1,E(1:L));标题(据span style="color:#A020F0">“用符号数据算法消除噪声”据/span>); 传奇(据span style="color:#A020F0">'实际信号'据/span>那据span style="color:#A020F0">“噪音消除的结果”据/span>那据span style="color:#0000FF">...据/span>'地点'据/span>那据span style="color:#A020F0">'东北'据/span>);包含(据span style="color:#A020F0">“时间指数”据/span>)ylabel(据span style="color:#A020F0">'信号值'据/span>)据/pre>
在LMS自适应滤波器的标准和归一化变化中,ADAPTing滤波器的系数来自计算所需信号与来自未知系统的输出信号之间的平均方误差,并将结果应用于电流滤波器系数。符号错误LMS(SELMS)算法通过使用错误的符号来替换均方误差计算来修改滤波器系数。据/p>
当错误是肯定的时,新系数是先前的系数加上误差乘以步长据span class="inlineequation"> .如果误差是负的,新的系数就是先前的系数减去误差乘以据span class="inlineequation"> - 请注意标志更改。当输入为0时,新的系数与之前的集合相同。据/p>
在矢量形式下,符号误差LMS算法为:据/p>
那据/p>
在哪里据/p>
用载体据span class="inlineequation"> 包含应用于滤波器系数和向量的权重据span class="inlineequation"> 包含输入数据的。向量据span class="inlineequation"> 为期望信号与滤波信号之间的误差。SelMS算法的目的是最小化此错误。据/p>
一个小的据span class="inlineequation"> 时,每个样本对滤波权值的校正值变小,SELMS误差下降得更慢。一个更大的据span class="inlineequation"> 为每一步改变更多的权值,因此误差下降得更快,但产生的误差并不接近理想的解决方案。为保证良好的收敛速度和稳定性,选择据span class="inlineequation"> 在下列实际范围内。据/p>
在哪里据span class="inlineequation"> 是信号中的样本数量。另外,定义据span class="inlineequation"> 作为两个有效计算的力量。据/p>
笔记:据/strong>如何设置符号错误算法的初始条件将深刻影响自适应过程的有效性。由于该算法本质上是对误差信号进行量化,因此该算法很容易变得不稳定。据/p>
一系列大的误差值,与量化过程耦合可能会导致误差超过所有界限。抑制符号错误算法的趋势通过选择小的步长而变得不稳定据span class="inlineequation">
并将算法的初始条件设置为非零正值和负值。据/p>
在此噪声取消示例中,设置据code class="literal">方法据/code>的属性据一种href="//www.tatmou.com/help/dsp/ref/dsp.lmsfilter-system-object.html" class="a"> 包含噪声损坏的信号的数据。在下面的框图中据一种href="//www.tatmou.com/help/dsp/ug/overview-of-adaptive-filters-and-applications.html" class="a">噪声或干扰消除 - 使用自适应滤波器去除未知系统的噪声据/a>,这是所需的信号据span class="inlineequation">
. 这个Noise cancellation process removes the noise from the signal.据/p> 包含随机噪声的数据。在下面的框图中据一种href="//www.tatmou.com/help/dsp/ug/overview-of-adaptive-filters-and-applications.html" class="a">噪声或干扰消除 - 使用自适应滤波器去除未知系统的噪声据/a>,这是据span class="inlineequation">
. 这个信号据span class="inlineequation">
与损坏信号数据的噪声相关联。如果噪声数据之间的相关性,则调整算法无法从信号中移除噪声。据/p> 对于信号,使用正弦波。注意据code class="literal">信号据/code>是1000个元素的列向量。据/p>
现在,加上相关的白噪声据code class="literal">信号据/code>.为了确保噪声是相关的,将噪声通过低通FIR滤波器,然后将滤波后的噪声添加到信号中。据/p>
准备据code class="literal">dsp.lmsfilter.据/code>处理的对象,设置滤波器权重的初始条件(据code class="literal">InitialConditions据/code>) 和据code class="literal">亩据/code>(据code class="literal">一步的大小据/code>).如本节前面所述,您设置的值据code class="literal">多项式系数据/code>和据code class="literal">亩据/code>确定自适应滤波器是否能去除信号路径中的噪声。据/p>
在据一种href="//www.tatmou.com/help/dsp/ref/dsp.lmsfilter-system-object.html" class="intrnllnk">使用LMS算法对FIR滤波器的系统识别据/a>,您构建了一个默认过滤器,将滤波器系数设置为零。在大多数情况下,方法不适用于符号错误算法。将初始滤波器系数越接近预期值,算法越有可能效果良好,并收敛到有效地消除噪声的过滤器解决方案。据/p>
对于本例,请从“噪波过滤器”中使用的系数开始(据code class="literal">filt.numerator.据/code>)并稍微修改它们,因此算法必须适应。据/p>
具有所需的输入参数据code class="literal">dsp.lmsfilter.据/code>准备,运行适应并查看结果。据/p>
当符号错误LMS算法运行时,它使用的乘法操作比标准LMS算法中的任何一个更少。此外,执行符号错误适配时只需要在步长时才需要位转换倍数。据/p>
虽然图中所示的符号误差算法的性能相当好,但是符号误差算法的稳定性远远低于标准LMS变化。在该噪声消除示例中,适应信号与输入信号非常好,但算法很容易变得不稳定而不是实现良好的性能。据/p>
改变重量初始条件(据code class="literal">InitialConditions据/code>) 和据code class="literal">亩据/code>(据code class="literal">一步的大小据/code>),甚至是用来创建相关噪声的低通滤波器,都会导致噪声消除失败,算法变得无用。据/p>
dsp.lmsfilter.据/code>来据code class="literal">“符号误差LMS”据/code>.此示例需要两个输入数据集:据/p>
信号=罪(2 *π* 0.055 * (0:1000-1)');据/pre>
噪声= Randn(1000,1);filt = dsp.FIRFilter;filt.numerator = fir1(11,0.4);fnoise = filt(噪音);d =信号+ fnoise;据/pre>
Fnoise.据/code>相关噪声和据code class="literal">D.据/code>现在是符号错误算法的所需输入。据/p>
coeffs =(filt.numerator).'- 0.01;据span style="color:#228B22">%设置过滤器的初始条件。据/span>μ= 0.05;据span style="color:#228B22">%设置算法更新的步长。据/span>
LMS = dsp.lmsfilter(12,据span style="color:#A020F0">“方法”据/span>那据span style="color:#A020F0">“符号误差LMS”据/span>那据span style="color:#0000FF">...据/span>“StepSize”据/span>,穆,据span style="color:#A020F0">'初始条件'据/span>、多项式系数);(~ e) = lms(噪音,d);L = 200;情节(0:199、信号(1:200)0:199 e (1:200));标题(据span style="color:#A020F0">'噪声取消性能由符号错误LMS算法'据/span>); 传奇(据span style="color:#A020F0">'实际信号'据/span>那据span style="color:#A020F0">“降噪后的错误”据/span>那据span style="color:#0000FF">...据/span>'地点'据/span>那据span style="color:#A020F0">'东北'据/span>)xlabel(据span style="color:#A020F0">“时间指数”据/span>)ylabel(据span style="color:#A020F0">的信号值据/span>)据/pre>
标志LMS算法(SSLMS)通过使用输入数据的符号来替换均方误差计算以改变滤波器系数。当错误是肯定的时,新系数是先前的系数加上误差乘以步长据span class="inlineequation"> .如果误差是负的,新的系数就是先前的系数减去误差乘以据span class="inlineequation"> - 请注意标志更改。当输入为0时,新的系数与之前的集合相同。据/p>
实质上,该算法通过将符号运算符应用于它们来量化错误和输入。据/p>
在矢量形式下,符号LMS算法为:据/p>
在哪里据/p>
向量据span class="inlineequation"> 包含应用于过滤系数和向量的权重据span class="inlineequation"> 包含输入数据。向量据span class="inlineequation"> 为期望信号与滤波信号之间的误差。SSLMS算法的目标是最小化此错误。据/p>
一个小的据span class="inlineequation"> ,对于每个示例,对过滤器权重的校正变得更小,SSLMS错误下降得更慢。一个更大的据span class="inlineequation"> 更改每个步骤的权重,因此错误更快地降低,但结果错误不会紧密地接近理想的解决方案。为保证良好的收敛速度和稳定性,选择据span class="inlineequation"> 在下列实际范围内。据/p>
在哪里据span class="inlineequation"> 是信号中的样本数量。另外,定义据span class="inlineequation"> 为有效计算的2的幂据/p>
笔记:据/strong>
如何设置符号算法的初始条件深刻地影响适应过程的有效性。因为算法基本上量化输入信号和误差信号,所以算法可以容易地变得不稳定。据/p>
一系列大的误差值,与量化过程耦合可能会导致误差超过所有界限。通过选择小的阶梯尺寸来抑制符号符算法的趋势变得不稳定据span class="inlineequation"> 并将算法的初始条件设置为非零正值和负值。据/p>
在此噪声取消示例中,设置据code class="literal">方法据/code>的属性据一种href="//www.tatmou.com/help/dsp/ref/dsp.lmsfilter-system-object.html" class="a"> 包含噪声损坏的信号的数据。在下面的框图中据一种href="//www.tatmou.com/help/dsp/ug/overview-of-adaptive-filters-and-applications.html" class="a">噪声或干扰消除 - 使用自适应滤波器去除未知系统的噪声据/a>,这是所需的信号据span class="inlineequation">
. 这个Noise cancellation process removes the noise from the signal.据/p> 包含随机噪声的数据。在下面的框图中据一种href="//www.tatmou.com/help/dsp/ug/overview-of-adaptive-filters-and-applications.html" class="a">噪声或干扰消除 - 使用自适应滤波器去除未知系统的噪声据/a>,这是据span class="inlineequation">
. 这个信号据span class="inlineequation">
与损坏信号数据的噪声相关联。如果噪声数据之间的相关性,则调整算法无法从信号中移除噪声。据/p> 对于信号,使用正弦波。注意据code class="literal">信号据/code>是1000个元素的列向量。据/p>
现在,加上相关的白噪声据code class="literal">信号据/code>.为了确保噪声相关,通过低通FIR滤波器通过噪声,然后将滤波噪声添加到信号。据/p>
准备据code class="literal">dsp.lmsfilter.据/code>处理的对象,设置滤波器权重的初始条件(据code class="literal">InitialConditions据/code>) 和据code class="literal">亩据/code>(据code class="literal">一步的大小据/code>).如本节前面所述,您设置的值据code class="literal">多项式系数据/code>和据code class="literal">亩据/code>确定自适应滤波器是否能去除信号路径中的噪声。在据一种href="//www.tatmou.com/help/dsp/ref/dsp.lmsfilter-system-object.html" class="intrnllnk">使用LMS算法对FIR滤波器的系统识别据/a>,您构建了一个默认过滤器,将滤波器系数设置为零。通常,该方法不适用于符号符号算法。据/p>
将初始滤波器系数越接近预期值,算法越有可能效果良好,并收敛到有效地消除噪声的过滤器解决方案。对于此示例,您从噪声滤波器中使用的系数开始(据code class="literal">filt.numerator.据/code>),并对它们稍加修改,使算法得以适应。据/p>
具有所需的输入参数据code class="literal">dsp.lmsfilter.据/code>准备,运行适应并查看结果。据/p>
什么时候据code class="literal">dsp.lmsfilter.据/code>运行时,它使用的乘法运算比标准LMS算法少得多。此外,当步长为2的幂时,执行符号自适应仅需要比特移位倍数。据/p>
虽然如本曲线中所示的符号符号算法的性能非常好,但标志符号算法比标准LMS变化要稳定得多。在该噪声消除示例中,适应信号与输入信号非常好,但算法很容易变得不稳定而不是实现良好的性能。据/p>
改变重量初始条件(据code class="literal">InitialConditions据/code>)和mu (据code class="literal">一步的大小据/code>),甚至是用来创建相关噪声的低通滤波器,都会导致噪声消除失败,算法变得无用。据/p>
dsp.lmsfilter.据/code>来据code class="literal">'签名LMS'据/code>.此示例需要两个输入数据集:据/p>
信号=罪(2 *π* 0.055 * (0:1000-1)');据/pre>
噪声= Randn(1000,1);filt = dsp.FIRFilter;filt.numerator = fir1(11,0.4);fnoise = filt(噪音);d =信号+ fnoise;据/pre>
Fnoise.据/code>相关噪声和据code class="literal">D.据/code>现在是标志符号算法的所需输入。据/p>
coeffs =(filt.numerator)。'-0.01;据span style="color:#228B22">%设置过滤器的初始条件。据/span>μ= 0.05;据/pre>
LMS = dsp.lmsfilter(12,据span style="color:#A020F0">“方法”据/span>那据span style="color:#A020F0">'签名LMS'据/span>那据span style="color:#0000FF">...据/span>“StepSize”据/span>,穆,据span style="color:#A020F0">'初始条件'据/span>、多项式系数);(~ e) = lms(噪音,d);L = 200;情节(0:199、信号(1:200)0:199 e (1:200));标题(据span style="color:#A020F0">基于符号LMS算法的噪声消除性能据/span>); 传奇(据span style="color:#A020F0">'实际信号'据/span>那据span style="color:#A020F0">“降噪后的错误”据/span>那据span style="color:#0000FF">...据/span>'地点'据/span>那据span style="color:#A020F0">'东北'据/span>)xlabel(据span style="color:#A020F0">“时间指数”据/span>)ylabel(据span style="color:#A020F0">的信号值据/span>)据/pre>
请注意据/strong>:此示例仅在R2017a或更高版本中运行。如果你使用的是R2017a之前的版本,对象不会输出过滤器权重的完整采样历史。如果你使用的是比R2016b更早的版本,那么将每个函数调用替换为等价的据code class="literal">步据/code>句法。例如,据code class="literal">myObject (x)据/code>成为据code class="literal">步骤(myObject x)据/code>.据/p>
初始化据code class="literal">dsp.lmsfilter.据/code>系统对象并设置据code class="literal">权力输出据/code>财产据code class="literal">“所有”据/code>.此设置使LMS滤波器能够输出具有尺寸的重量矩阵据code class="literal">[FrameLength长度]据/code>,对应于所有样本重量的完整逐样本历史记录据code class="literal">FrameLength据/code>输入值的样本。据/p>
运行一帧并输出完整的自适应权重历史记录,据code class="literal">W.据/code>.据/p>
在每一行据code class="literal">W.据/code>是对各输入样本估计的一组权重。每一列中据code class="literal">W.据/code>提供特定权重的完整历史。绘制33,34和35重量的实际体重和整个历史。在绘图中,您可以看到估计的权重输出最终通过实际权重收敛,因为自适应滤波器接收到输入样本并继续适应。据/p>
FrameSize = 15000;lmsfilt3 = dsp。LMSFilter (据span style="color:#A020F0">'长度'据/span>, 63,据span style="color:#A020F0">“方法”据/span>那据span style="color:#A020F0">“LMS”据/span>那据span style="color:#0000FF">...据/span>“StepSize”据/span>, 0.001,据span style="color:#A020F0">'泄漏就能'据/span>,0.99999,据span style="color:#0000FF">...据/span>“WeightsOutput”据/span>那据span style="color:#A020F0">“所有”据/span>);据span style="color:#228B22">%全权历史据/span>w_实际值=fir1(64,[0.50.75]);firfilt3=dsp.FIRFilter(据span style="color:#A020F0">'分子'据/span>, w_actual);sinewave = dsp.sinewave(据span style="color:#A020F0">'频率'据/span>,0.01,据span style="color:#0000FF">...据/span>“SampleRate”据/span>,1,据span style="color:#A020F0">“SamplesPerFrame”据/span>,框架);范围= timescope(据span style="color:#A020F0">'不时'据/span>那据span style="color:#A020F0">'秒'据/span>那据span style="color:#0000FF">...据/span>“YLimits”据/span>,[-0.25 0.75],据span style="color:#A020F0">“缓冲长度”据/span>,2*帧大小,据span style="color:#0000FF">...据/span>“ShowLegend”据/span>,真的,据span style="color:#A020F0">“频道名称”据/span>那据span style="color:#0000FF">...据/span>{据span style="color:#A020F0">'Coeff 33估计'据/span>那据span style="color:#A020F0">34多项式系数估计的据/span>那据span style="color:#A020F0">35多项式系数估计的据/span>那据span style="color:#0000FF">...据/span>'Coeff 33实际'据/span>那据span style="color:#A020F0">“多项式系数34实际”据/span>那据span style="color:#A020F0">“实际系数35”据/span>});据/pre>
x = RANDN(帧质化,1);据span style="color:#228B22">%输入信号据/span>D = firfilt3(x) +正弦波();据span style="color:#228B22">%噪声+信号据/span>[~ ~ w] = lmsfilt3 (x, d);据/pre>
idxBeg = 33;idxEnd = 35;范围([w (:, idxBeg: idxEnd) repmat (w_actual (idxBeg: idxEnd) FrameSize, 1)))据/pre>
LMS滤波器算法由以下等式定义。据/p>
此系统对象中可用的各种LMS自适应滤波器算法定义为:据/p>
LMS - 解决Weiner-Hopf方程,并找到自适应滤波器的滤波器系数。据/p>
归一化LMS——LMS算法的归一化变化。据/p>
在归一化LMS中,为了克服权重更新过程中潜在的数值不稳定性,在分母中添加了一个小的正常数ε。对于双精度浮点输入,ε为2.2204460492503131e-016。对于单精度浮点输入,ε为1.192092896e-07。对于定点输入,ε为0。据/p>
签名数据LMS - 校正每个迭代的滤波器权重取决于输入的符号据strong class="emphasis bold">你据/strong>(n)。据/p>
在哪里据strong class="emphasis bold">你据/strong>(n)是真实的。据/p>
符号错误LMS - 应用于每个连续迭代的当前滤波器权重的校正取决于错误的符号,据E.m class="varname">E.据/em>(n)。据/p>
签署LMS - 应用于每个连续迭代的当前滤波器权重的校正取决于标志据strong class="emphasis bold">你据/strong>(n)和标志据E.m class="varname">E.据/em>(n)。据/p>
在哪里据strong class="emphasis bold">你据/strong>(n)是真实的。据/p>
变量如下:据/p>
变量据/th> | 描述据/th> |
---|---|
N据/em> |
当前时间指数据/p> |
你据/strong>(据E.m class="varname">N据/em>)据/p> |
缓冲输入样本的矢量在步骤据E.m class="varname">N据/em> |
u *据/strong>(据E.m class="varname">N据/em>)据/p> |
缓冲输入样品的载体的复合缀合物据E.m class="varname">N据/em> |
W.据/strong>(据E.m class="varname">N据/em>)据/p> |
滤波器重量估计的矢量在步骤据E.m class="varname">N据/em> |
y (n)据/em> |
滤波后的输出步长据E.m class="varname">N据/em> |
e(n)据/em> |
步长估计误差据E.m class="varname">N据/em> |
D(n)据/em> |
步骤中所需的响应据E.m class="varname">N据/em> |
μ.据/em> |
适应步长据/p> |
α.据/em> |
泄漏因子(0 <α≤1)据/td> |
ε据/em> |
恢复在更新权重期间发生的任何潜在数值不稳定性的常数。据/td> |
[1] Hayes,M.H.据E.m class="citetitle">统计数字信号处理与建模。据/em>纽约:John Wiley&Sons,1996。据/p>
使用说明和限制:据/span>
看到据一种href="//www.tatmou.com/help/coder/ug/use-system-objects-in-matlab-code-generation.html" class="a">MATLAB代码生成中的系统对象据/a>(MATLAB编码器)据/span>.据/p>
这据code class="sysobj">dsp.lmsfilter.据/code>系统对象支持在以下条件下使用金宝appIntel AVX2技术生成SIMD代码:据/p>
输入信号为实值。据/p> 输入信号的数据类型为据code class="literal">单据/code>要么据code class="literal">双倍的据/code>.据/p> SIMD技术显著提高了生成代码的性能。据/p>
方法据/code>设置为据code class="literal">“LMS”据/code>要么据code class="literal">'标准化LMS'据/code>.据/p>
权力输出据/code>设置为据code class="literal">'没有任何'据/code>要么据code class="literal">“最后一次”据/code>.据/p>
下图显示了内部使用的数据类型据code class="sysobj">dsp.lmsfilter.据/code>对象为定点信号。下表总结了图表中使用的变量的定义:据/p>
变量据/th> | 定义据/th> |
---|---|
你据/strong> |
输入载体据/p> |
W.据/strong> |
过滤器重量矢量据/p> |
μ.据/em> |
步长据/p> |
E.据/em> |
错误据/p> |
问:据/em> |
商,据span class="inlineequation"> |
产品据strong class="emphasis bold">你据/strong>'据strong class="emphasis bold">你据/strong> |
能源计算图中的产品数据类型据/p> |
蓄电池据strong class="emphasis bold">你据/strong>'据strong class="emphasis bold">你据/strong> |
累加器数据类型在能量计算图中据/p> |
产品据strong class="emphasis bold">W.据/strong>'据strong class="emphasis bold">你据/strong> |
卷积图中的产品数据类型据/p> |
蓄电池据strong class="emphasis bold">W.据/strong>'据strong class="emphasis bold">你据/strong> |
卷积图中的累加器数据类型据/p> |
产品据span class="inlineequation"> |
产品数据类型在步长和错误图的产品中据/p> |
产品据span class="inlineequation"> |
权重更新图中的产品和累加器数据类型。据sup>1据/sup> |
1据/sup>此数量的累加器数据类型将自动设置为与产品数据类型相同。此累加器的最小、最大和溢出信息将作为产品信息的一部分记录下来。自动缩放将此产品和累加器视为一种数据类型。据/p>
在System对象属性中设置属性、权重、乘积、商和累加数的数据类型。下载188bet金宝搏定点输入、输出和System对象属性必须具有以下特征:据/p>
输入信号和所需信号必须具有相同的字长,但它们的分数长度可以不同。据/p> 步长和泄漏因子必须具有相同的字长,但它们的分数长度可以不同。据/p> 输出信号和错误信号具有与所需信号相同的字长和相同的分数长度。据/p> 商品和产品输出据strong class="emphasis bold">你据/strong>'据strong class="emphasis bold">你据/strong>那据strong class="emphasis bold">W.据/strong>'据strong class="emphasis bold">你据/strong>那据span class="inlineequation">
, 和据span class="inlineequation">
操作必须具有相同的单词长度,但它们的分数长度可以不同。据/p> 累加器数据类型的据strong class="emphasis bold">你据/strong>'据strong class="emphasis bold">你据/strong>和据strong class="emphasis bold">W.据/strong>'据strong class="emphasis bold">你据/strong>操作必须具有相同的单词长度,但它们的分数长度可以不同。据/p> 如果乘法器的至少一个输入是真实的,则乘法器的输出在产品输出数据类型中。如果乘法器的两个输入都很复杂,则乘法的结果是累加器数据类型。有关执行复杂乘法的详细信息,请参阅据一种href="//www.tatmou.com/help/dsp/ug/arithmetic-operations.html" class="a">乘法的数据类型据/a>.据/p>
maxstep.据/code>
|据span itemscope itemtype="//www.tatmou.com/help/schema/MathWorksDocPage/SeeAlso" itemprop="seealso">MSEPRED.据/code>
|据span itemscope itemtype="//www.tatmou.com/help/schema/MathWorksDocPage/SeeAlso" itemprop="seealso">MSESIM据/code>
dsp。AdaptiveLatticeFilter据/code>
|据span itemscope itemtype="//www.tatmou.com/help/schema/MathWorksDocPage/SeeAlso" itemprop="seealso">仿射投影滤波器据/code>
|据span itemscope itemtype="//www.tatmou.com/help/schema/MathWorksDocPage/SeeAlso" itemprop="seealso">dsp。BlockLMSFilter据/code>
|据span itemscope itemtype="//www.tatmou.com/help/schema/MathWorksDocPage/SeeAlso" itemprop="seealso">dsp.fasttransversalfilter.据/code>
|据span itemscope itemtype="//www.tatmou.com/help/schema/MathWorksDocPage/SeeAlso" itemprop="seealso">dsp.filteredxlmsfilter.据/code>
|据span itemscope itemtype="//www.tatmou.com/help/schema/MathWorksDocPage/SeeAlso" itemprop="seealso">dsp。FIRFilter据/code>
|据span itemscope itemtype="//www.tatmou.com/help/schema/MathWorksDocPage/SeeAlso" itemprop="seealso">dsp.frequencyDomainainAdaptiveFilter据/code>
|据span itemscope itemtype="//www.tatmou.com/help/schema/MathWorksDocPage/SeeAlso" itemprop="seealso">dsp.kalmanfilter.据/code>
|据span itemscope itemtype="//www.tatmou.com/help/schema/MathWorksDocPage/SeeAlso" itemprop="seealso">dsp.rlsfilter.据/code>
你点击一个链接对应于这个MATLAB命令:据/p>
在MATLAB命令窗口中输入它来运行命令。Web浏览器不支持MATLAB命令。金宝app据/p>
选择一个网站,在那里获得翻译的内容,并看到当地的活动和优惠。根据您的位置,我们建议您选择:据strong class="recommended-country">.据/p> 选择据span class="recommended-country">网站据/a>
你也可以从以下列表中选择一个网站:据/p>
选择中国网站(中文或英文)以获得最佳网站性能。其他MathWorks国家站点没有针对您所在位置的访问进行优化。据/p>