主要内容

dsp。MovingMinimum

移动的最小

描述

dsp。MovingMinimum系统对象™确定输入信号沿每个通道的移动最小值,随时间独立。该对象使用滑动窗口方法确定移动最小值。在这种方法中,指定长度的窗口在每个通道上移动,一个样本一个样本地移动,对象确定窗口中数据的最小值。详情请参见算法

要确定输入的移动最小值:

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

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

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

创建

描述

movMin= dsp。MovingMinimum返回一个移动的最小值对象,movMin,使用默认属性。

例子

movMin= dsp。MovingMinimum (Len设置WindowLength财产Len

movMin= dsp。MovingMinimum (名称,值使用名称,值对。未指定的属性有默认值。

例子:movMin = dsp.MovingMinimum(' specificywindowlength ',1,'WindowLength',10);

属性

全部展开

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

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

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

标志,以指定作为标量布尔值指定的窗口长度。

  • 真正的属性中指定的值WindowLength财产。

  • —滑动窗口的长度为无限大。在这种模式下,对象确定当前样本和所有过去样本的最小值。

样本中滑动窗口的长度,指定为正标量整数。

依赖关系

设置时应用此属性SpecifyWindowLength真正的

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

使用

语法

描述

例子

y= movMin (x确定输入信号的移动最小值,x,使用滑动窗口方法。

输入参数

全部展开

数据输入,指定为向量或矩阵。如果x是一个矩阵,每一列都被视为一个独立的通道。移动最小值是沿着每个通道确定的。对象还接受可变大小的输入。锁定对象后,您可以更改每个输入通道的大小,但不能更改通道的数量。

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

输出参数

全部展开

移动最小输出,作为向量或矩阵返回。

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

对象的功能

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

发行版(obj)

全部展开

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

例子

全部折叠

计算三个振幅变化的正弦波和的移动最小值。使用一个长度为30的滑动窗口。

初始化

设置一个输入信号,它是频率为2hz, 5hz和10hz的三个正弦波的和。采样频率为100hz。创建一个dsp。MovingMinimum窗口长度为30的对象。创建用于查看输出的时间范围。

Sin = dsp。SineWave (“SampleRate”, 100,...“频率”,[2 5 10],...“SamplesPerFrame”, 100);movMin = dsp.MovingMinimum(30);Scope = timescope(“SampleRate”, 100,...“TimeSpanSource”“属性”“时间间隔”10...“TimeSpanOverrunAction”“滚动”...“ShowGrid”,真的,“YLimits”[-4.5 - 4.5]);

计算移动最小值

输入信号的每个正弦波分量都有不同的振幅,随迭代而变化。使用movMin对象来确定当前样本和过去29个样本的输入信号的最小值。

指数= 1:100 sin。振幅= rand(1,3);X = sum(sin(),2);xmin = movMin(x);范围([x, xmin])结束范围。AxesScaling =“onceatstop”

算法

全部展开

参考文献

[1]波登汉姆,迪恩。流数据的自适应过滤和变化检测博士论文。帝国理工学院,伦敦,2012。

扩展功能

版本历史

在R2016b中引入