主要内容

过滤器

一维数字滤波器

描述

例子

y=过滤器(b,一个,x)过滤输入数据x使用一个理性的传递函数定义的分子和分母系数b一个

如果(1)不等于1,然后过滤器可实现滤波器系数(1)。因此,(1)必须是零。

  • 如果x是一个矢量,然后呢过滤器返回过滤后的数据作为一个向量的大小一样x

  • 如果x是一个矩阵,然后呢过滤器就在第一维度并返回过滤每一列的数据。

  • 如果x是一个多维数组,那么过滤器就在第一数组大小不等于1的维度。

例子

y=过滤器(b,一个,x,)使用初始条件过滤器的延迟。的长度必须等于max(长度(a)、(b)) 1

例子

y=过滤器(b,一个,x,,昏暗的)徒沿着维度昏暗的。例如,如果x是一个矩阵,然后呢过滤器(b, a, x,子,2)为每一行返回过滤数据。

例子

(y,zf]=过滤器(___)也返回最后一个条件zf过滤器的延迟,使用任何以前的语法。

例子

全部折叠

移动平均滤波器是一种常见的方法用于平滑噪声数据。下面的例子使用了过滤器沿着向量函数来计算平均值的数据。

创建一个1 -到- 100行向量随机噪声的正弦数据损坏。

t = linspace(π-π,100);rng默认的%初始化随机数生成器x =罪(t) + 0.25 *兰德(大小(t));

移动平均滤波器幻灯片的窗口长度 w n d o w 年代 z e 沿着数据,计算平均值的数据包含在每个窗口中。下列差分方程定义一个向量的移动平均滤波器 x :

y ( n ) = 1 w n d o w 年代 z e ( x ( n ) + x ( n - - - - - - 1 ) + + x ( n - - - - - - ( w n d o w 年代 z e - - - - - - 1 ) ) )

5的窗口大小,计算合理的分子和分母系数传递函数。

windowSize = 5;b = (1 / windowSize) * 1 (1, windowSize);= 1;

找到数据的移动平均线和它对原始数据的阴谋。

y =过滤器(b, a, x);情节(t, x)情节(t、y)传说(输入数据的,过滤数据的)

图包含一个坐标轴对象。坐标轴对象包含2线类型的对象。这些对象代表输入数据,过滤数据。

这个例子过滤器与以下有理传递函数矩阵的数据。

H ( z ) = b ( 1 ) 一个 ( 1 ) + 一个 ( 2 ) z - - - - - - 1 = 1 1 - - - - - - 0 2 z - - - - - - 1

创建一个2-by-15矩阵随机输入数据。

rng默认的%初始化随机数生成器x =兰德(15);

定义的分子和分母系数合理的传递函数。

b = 1;一个= -0.2 [1];

应用传递函数的第二个维度x并返回每一行的一维数字滤波器。情节原始数据的第一行与过滤数据。

y =过滤器(b, a, x, [], 2);t = 0:长度(x) 1;%指数向量情节(t) x (1:))情节(t y(1:))传说(输入数据的,过滤数据的)标题(的第一行)

图包含一个坐标轴对象。坐标轴对象用标题第一行包含2线类型的对象。这些对象代表输入数据,过滤数据。

情节第二行输入数据的过滤数据。

图绘制(t) x (2:))情节(t y(2:))传说(输入数据的,过滤数据的)标题(“第二行”)

图包含一个坐标轴对象。坐标轴对象与标题第二行包含2线类型的对象。这些对象代表输入数据,过滤数据。

过滤延迟初始和最终使用条件来过滤数据部分,特别是内存限制是一个考虑。

生成一个大型的随机数据序列分割成两个部分,x1x2

x = randn (10000 1);x1 = x (1:5000);x2 = x(5001:结束);

整个序列,x的垂直连接x1x2

定义合理的传递函数的分子和分母系数,

H ( z ) = b ( 1 ) + b ( 2 ) z - - - - - - 1 一个 ( 1 ) + 一个 ( 2 ) z - - - - - - 1 = 2 + 3 z - - - - - - 1 1 + 0 2 z - - - - - - 1

b = (2、3);一个= (0.2);

筛选子序列x1x2一次一个。输出最终的条件过滤x1存储滤波器的内部状态的第一段。

[y₁, zf] =过滤器(b, a, x1);

用最后的条件过滤x1作为初始条件来过滤第二段,x2

y2 =过滤器(b, x2, zf);

日元过滤后的数据来自哪里x1,y2过滤后的数据来自哪里x2。整个过滤序列的垂直连接日元y2

滤波器的整个序列同时比较。

y =过滤器(b, a, x);isequal (y, y1, y2)
ans =逻辑1

输入参数

全部折叠

分子的系数理性的传递函数,指定为一个向量。

数据类型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64|逻辑
复数的支持:万博1manbetx是的

分母系数的理性的传递函数,指定为一个向量。

数据类型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64|逻辑
复数的支持:万博1manbetx是的

输入数据,指定为一个向量,矩阵,或多维数组。

数据类型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64|逻辑
复数的支持:万博1manbetx是的

初始条件过滤延误,指定为一个向量,矩阵,或多维数组。

  • 如果是一个向量,那么它的长度必须max(长度(a)、(b)) 1

  • 如果是一个矩阵或多维数组,然后主要尺寸的大小必须吗max(长度(a)、(b)) 1。每个剩余的大小尺寸的大小必须匹配相应的尺寸x。例如,考虑使用过滤器在第二个维度(昏暗的= 23-by-4-by-5数组)x。数组必须有大小(max(长度(a)、(b)) 1-by-3-by-5。

指定的默认值[],初始化所有过滤器延迟为零。

数据类型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64|逻辑
复数的支持:万博1manbetx是的

维操作,指定为一个正整数标量。如果你不指定维度,那么默认的是第一个数组大小尺寸大于1。

考虑输入一个二维数组,x

  • 如果昏暗的= 1,然后过滤器(b, a, x,子,1)操作的列x并返回过滤器应用于每一列。

    过滤器(b, a, x,子,1)列操作

  • 如果昏暗的= 2,然后过滤器(b, a, x,子,2)沿着一排排的运作x并返回过滤器应用于每一行。

    过滤器(b, a, x,子,2)row-wise操作

如果昏暗的大于ndims (x),然后过滤器返回x

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

输出参数

全部折叠

过滤数据,返回为一个向量,矩阵,或相同大小的多维数组作为输入数据,x

如果x的类型是,然后过滤器在单精度本地计算,y类型的也。否则,y返回类型

数据类型:|

最后条件过滤延误,返回为一个向量,矩阵,或多维数组。

  • 如果x是一个矢量,然后呢zf是一个列向量的长度max(长度(a)、(b)) 1

  • 如果x是一个矩阵或多维数组,然后呢zf是一个列向量数组的长度max(长度(a)、(b)) 1,这样的列数zf等于列数x。例如,考虑使用过滤器在第二个维度(昏暗的= 23-by-4-by-5数组)x。数组zf有大小max(长度(a)、(b)) 1-by-3-by-5。

数据类型:|

更多关于

全部折叠

理性的传递函数

的输入输出描述过滤器操作一个向量在z变换域是一个理性的传递函数。一个理性的传递函数的形式

Y ( z ) = b ( 1 ) + b ( 2 ) z 1 + + b ( n b + 1 ) z n b 1 + 一个 ( 2 ) z 1 + + 一个 ( n 一个 + 1 ) z n 一个 X ( z ) ,

负责处理FIR和IIR滤波器[1]n一个反馈滤波器的顺序,nb前馈滤波器的顺序。由于正常化,假设一个(1)= 1。

你也可以理性的传递函数表示为差分方程

一个 ( 1 ) y ( n ) = b ( 1 ) x ( n ) + b ( 2 ) x ( n 1 ) + + b ( n b + 1 ) x ( n n b ) 一个 ( 2 ) y ( n 1 ) 一个 ( n 一个 + 1 ) y ( n n 一个 )

此外,您可以使用它代表了理性的传递函数直接形式二转置实现,如以下图。在这里,n一个= nb= n - 1

框图,说明了直接形式二转置的IIR数字滤波器实现n - 1。

的操作过滤器在示例是由时域差分方程

y ( ) = b ( 1 ) x ( ) + w 1 ( 1 ) w 1 ( ) = b ( 2 ) x ( ) + w 2 ( 1 ) 一个 ( 2 ) y ( ) = w n 2 ( ) = b ( n 1 ) x ( ) + w n 1 ( 1 ) 一个 ( n 1 ) y ( ) w n 1 ( ) = b ( n ) x ( ) 一个 ( n ) y ( )

提示

  • 使用过滤器函数与b系数的滤波器使用y =过滤器(b, 1, x)

  • 如果你有信号处理工具箱™,使用y =过滤器(d, x)过滤输入信号x与一个digitalFilter(信号处理工具箱)对象d。生成d基于频率特性的规格、使用designfilt(信号处理工具箱)

  • 看到数字滤波(信号处理工具箱)更多关于过滤功能。

引用

[1]奥本海姆,艾伦·V。,Ronald W. Schafer, and John R. Buck.离散时间信号处理。上台北:普伦蒂斯·霍尔出版社,1999年。

扩展功能

版本历史

之前介绍过的R2006a

另请参阅

|

主题