AnyMath 文档

EngeeDSP.MedianFilter

的中值滤波器。

库::`工程师` 座:: 中值滤波器

资料描述

*EngeeDSP系统对象。MedianFilter*独立计算每个通道的输入信号随时间的移动中位数。 要计算滑动中位数,对象使用滑动窗口方法。 在该方法中,给定长度的窗口以单计数增量移动通过每个通道,并且对象计算进入窗口的数据的中位数。 有关详细信息,请参阅算法。

和*EngeeDSP对象。MedianFilter*,和函数 movmedian 计算输入信号的移动中值。 但是,该对象能够实时处理大型数据流并自动管理系统状态。 该函数对现有数据执行一次性计算,不支持系统状态管理。

要计算移动中位数,请按照以下步骤操作:

  1. 创建*EngeeDSP对象。MedianFilter*并设置其属性。

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

若要了解有关如何使用系统对象的详细信息,请参阅 AnyMath系统对象.

语法

创造

  • medFilt=EngeeDSP。媒体过滤器() -返回中值滤波器系统对象。 梅德菲尔特 使用默认属性。

  • medFilt=EngeeDSP。中滤机(len) -返回中值滤波器系统对象。 梅德菲尔特,其中具有属性*WindowLength*设置为 伦.

  • medFilt=EngeeDSP。MedianFilter(名称=值) -返回中值滤波器系统对象。 梅德菲尔特 将指定的属性作为一对 名称=值,在哪里 姓名 -物业的名称,以及 价值 -适当的值。 您可以指定多个对 «名称-值» 对的顺序并不重要。 未指定的属性保留其默认值。

使用

争论

输入参数

# x — 输入信号

+ 向量资料 | 矩阵

Details

指定为矢量或矩阵的输入信号。 如果 x -矩阵,它的每一列被认为是一个独立的通道。 为每个通道计算移动中位数。 对象支持大小多通道输入数据 上 ,在哪里 -每个帧(或通道)中的样本数,以及 -通道数。

输入信号可以具有可变的大小。 锁定对象后,可以更改每个输入通道的大小,但不能更改通道数。

数据类型

漂浮物32, 漂浮64</无翻译>

输出参数

# y — 滤波后的输出信号

+ 向量资料 | 矩阵

Details

滤波后的输出信号作为矢量或矩阵返回。 输出信号的维度和数据类型与输入信号的维度和数据类型相对应。

数据类型

漂浮物32, 漂浮64</无翻译>

特征

# WindowLength — 滑动窗口长度
Int64 integer

Details

滑动窗口的长度以计数为单位,设置为正整数。

默认值 — 5.

方法

所有系统对象通用

步!::运行系统对象运算算法 释放!::允许更改系统对象属性的值 重置!::重置系统对象的内部状态

算法

滑动窗口方法

Details

在滑动窗口方法中,每个输入样本的输出值是基于当前样本和 以前的计数,在哪里 -这是计数窗口的长度。

来计算第一 当窗口中还没有足够的数据时,算法会用零填充窗口。 例如,要计算第二个输入样本到达时的中值,算法填充窗口。 用零;因此,数据向量 它由两个数据样本组成,然后是 零。 该对象实时执行输入数据的中值滤波。

让我们考虑使用滑动窗口方法计算流式输入数据的移动中位数的示例。 该算法使用长度的窗口 4. 当每个新的输入样本到达时,窗口是 4 沿着数据序列移动。

median filter cn

文学作品

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