主要内容

dsp.MovingAverage

移动平均线

描述

dsp.MovingAverage系统对象™的移动平均值计算输入信号沿着每个通道独立。对象使用滑动窗口方法或指数加权法计算移动平均线。在滑动窗口方法中,一个窗口移动指定长度的数据,样本的样本,平均计算中的数据窗口。指数加权法,对象复制数据样本的加权因素。加法计算的加权平均数据。对这些方法的更多细节,请参阅算法

计算输入的移动平均:

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

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

了解更多关于系统对象是如何工作的,看到的系统对象是什么?

创建

描述

movAvg= dsp.MovingAverage返回一个对象移动平均,movAvg使用缺省属性。

movAvg= dsp.MovingAverage (Len)设置WindowLength财产Len

movAvg= dsp.MovingAverage (Len,重叠)设置WindowLength财产LenOverlapLength财产重叠

例子

movAvg= dsp.MovingAverage (名称,值)指定使用附加属性名称,值对。未指定的属性有默认值。

例子:movAvg = dsp.MovingAverage(“方法”,指数权重的,“ForgettingFactor”,0.9);

属性

全部展开

属性,除非另有注明nontunable后,这意味着你不能改变它们的值调用对象。对象锁当你叫他们,释放函数打开它们。

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

改变属性值的更多信息,请参阅系统设计在MATLAB使用系统对象

平均方法,指定为“滑动窗口”指数权重的

  • “滑动窗口”——一个窗口指定的长度SpecifyWindowLength输入数据以及每个通道移动。为每个样本窗口移动,对象计算的平均数据窗口。

  • 指数权重的——对象增加样本的加权因素。权重因素的大小减少指数随着年龄的数据的增加,永远不会达到零。计算平均算法和加权数据。

对这些方法的更多细节,请参阅算法

标记指定一个窗口长度,指定为一个标量布尔。

  • 真正的——滑动窗口的长度等于中指定的值WindowLength财产。

  • 滑动窗口的长度是无限的。在这种模式下,计算平均使用当前样本和所有过去的样品。

依赖关系

适用于当您设置这个属性方法“滑动窗口”

样本长度的滑动窗口,指定为一个积极的标量整数。

依赖关系

适用于当您设置这个属性方法“滑动窗口”SpecifyWindowLength真正的

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

重叠长度之间的滑动窗口,指定为一个非负整数。重叠长度的值变化范围在[0,WindowLength−1]。如果没有指定,重叠长度WindowLength−1。

依赖关系

适用于当您设置这个属性方法“滑动窗口”SpecifyWindowLength真正的

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

指数权重因子,指定为一个积极的真正的标量范围(0,1)。遗忘因子0.9给年长的数据更多的重量比遗忘因子为0.1。遗忘因子1.0意味着无限的记忆。所有过去的样品都被给予了同等的重量。

由于这个属性是可调的,你可以改变它的值,即使对象是锁着的。

可调:是的

依赖关系

适用于当您设置这个属性方法指数权重的

数据类型:|

使用

描述

例子

y= movAvg (x)计算输入信号的移动平均线,x,使用滑动窗口方法或指数加权法。

输入参数

全部展开

数据输入,指定为一个向量或矩阵。如果x是一个矩阵,每一列都被视为一个独立的通道。沿每个通道的移动平均计算。

对象接受适应输入。一旦锁定对象,您可以更改每个输入通道的大小,但你不能改变通道的数量。

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

输出参数

全部展开

移动平均线的输入信号,作为一个向量或矩阵返回。

当你输入一个信号的大小——- - - - - -n的对象,如果你设置方法“滑动窗口”SpecifyWindowLength真正的,输出有一个上界的大小装天花板(/跳)———大小n。跳大小窗口长度−重叠长度。在其他情况下,输出的大小——- - - - - -n

当你从这个对象生成代码,适应行为在生成的代码的输出取决于输入帧长度和输入信号的大小是固定的还是可变的。更多细节,请参阅代码生成

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

对象的功能

使用一个目标函数,指定系统对象作为第一个输入参数。例如,释放系统资源的系统对象命名obj使用这个语法:

发行版(obj)

全部展开

一步 运行系统对象算法
释放 释放资源,并允许修改系统对象属性值和输入特征
重置 重置的内部状态系统对象

例子

全部折叠

计算一个嘈杂的斜坡信号的移动平均线使用dsp.MovingAverage对象。

初始化

设置movavgWindow,movavgWindow_overlap,movavgExp对象。movavgWindow使用滑动窗口方法50个样品和一个默认的窗口长度重叠49样品的长度,这是一个示例小于指定的窗口长度。movavgWindow_overlap使用一个窗口的长度50个样品和一个重叠45个样本的长度。movavgExp采用指数加权方法遗忘因子为0.95。

创建时间范围查看输出。

FrameLength = 1001;Fs = 1000;movavgWindow = dsp.MovingAverage (50);45 movavgWindow_overlap = dsp.MovingAverage(50岁);movavgExp = dsp.MovingAverage (“方法”,指数权重的,“ForgettingFactor”,0.95);范围= timescope (“SampleRate”,[Fs, Fs, Fs / (50-45), Fs),“TimeSpanOverrunAction”,“滚动”,“ShowGrid”,真的,“YLimits”[-0.5 - 1.5]);title =“移动平均”;范围。标题=标题;范围。ChannelNames = {原始信号的,“50个样品用默认重叠的滑动窗口”,滑动窗口的50个样本的重叠45个样本的,的指数加权遗忘因子为0.95};

计算的平均

生成一个斜坡信号的振幅1和2秒的时间跨度。应用滑动窗口平均和指数加权平均坡道。查看输出的时间范围。

我= 1:50 0 t = (0:0.001:1) ';unitstep = t > = 0;斜坡= t。* unitstep;x =坡道+ 0.1 * randn (FrameLength, 1);日元= movavgWindow (x);y2 = movavgWindow_overlap (x);y3 = movavgExp (x);范围(x, y1, y2, y3);结束

算法

全部展开

引用

[1]Bodenham,院长。“自适应过滤,流数据变化检测。“博士论文。伦敦帝国理工学院,2012。

扩展功能

版本历史

介绍了R2016b

全部展开