Engee 文档

毁灭,毁灭

抽取是采样速率降低整数倍。

库::`工程师`

语法

函数调用

争论

输入参数

# 模式 — 使用FIR滤波器

+ 通行证:[线路]

Details

如果值设置为 "冷杉",则函数 毁灭 使用函数 fir1 用于设计具有截止频率的低通FIR滤波器 1/<参数:r>>.

# x — 输入信号

+ 传递:[向量]

Details

输入信号是矢量的形式。

数据类型

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

# *r*是 抽取系数

+ 通行证:[标量]

Details

的抽取系数,设为正整数。 时获得最佳效果 r 更多 13,分 r 使用较小的乘法器并调用 毁灭 好几次了。

数据类型

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

# n — 过滤顺序

+ 通行证:[标量]

Details

滤波顺序指定为正整数。 不建议对IIR滤波器使用较高的滤波顺序。 13 由于数值不稳定。 在这种情况下,函数输出警告。

数据类型

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

输出参数

# *y*是 采样率降低的信号

Details

采样率降低的信号。

数据类型

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

例子:

信号抽取

Details

产生具有采样频率的正弦信号 4 千赫。 将采样率降低四倍。

import EngeeDSP.Functions: decimate

t = 0:1/4e3:1
x = sin.(2*pi*30*t) + sin.(2*pi*60*t)
y = decimate(x, 4)

让我们用降低的采样率绘制源和信号的图形。

p1 = plot(0:120, x[1:121],
          seriestype = :stem,
          marker = :circle,
          markersize = 3,
          xlabel = "Sample Number",
          ylabel = "Original",
          grid = true,
          legend = false)

p2 = plot(0:30, y[1:31],
          seriestype = :stem,
          marker = :circle,
          markersize = 3,
          xlabel = "Sample Number",
          ylabel = "Decimated",
          grid = true,
          legend = false)

plot(p1, p2, layout = (2, 1))

decimate 1

使用切比雪夫滤波器对信号进行抽取

Details

我们将从两个正弦生成信号。 我们将使用五阶的切比雪夫滤波器将采样率降低13倍。 让我们绘制源信号和输出信号。

import EngeeDSP.Functions: decimate

r = 13
n = 16:365
lx = length(n)
x = sin.(2*pi*n/153) + cos.(2*pi*n/127)
y = decimate(x, r, 5)

plot(0:lx-1, x,
     seriestype=:scatter,
     marker=:circle,
     label="Original",
     framestyle=:origin,
     grid = true)
plot!(lx-1:-r:0, reverse(y),
      seriestype=:scatter,
      marker=:circle,
      color=:red,
      markersize=4,
      label="Decimated",
      grid = true)

xlabel!("Sample number")
ylabel!("Signal")

decimate 2

使用FIR滤波器对信号进行抽取

Details

产生具有采样频率的正弦信号 4 千赫。 将采样率降低四倍。

我们将从两个正弦生成信号。 使用FIR滤波器将采样率降低13倍。 让我们绘制源信号和输出信号。

import EngeeDSP.Functions: decimate

r = 13
n = 16:365
lx = length(n)
x = sin.(2*pi*n/153) + cos.(2*pi*n/127)
y = decimate(x, r, 82, "fir")

plot(0:lx-1, x,
     seriestype=:scatter,
     marker=:circle,
     label="Original",
     framestyle=:origin,
     grid=true)

plot!(0:r:lx-1, y,
      seriestype=:scatter,
      marker=:circle,
      color=:red,
      markersize=4,
      label="Decimated",
      grid=true)

xlabel!("Sample number")
ylabel!("Signal")

decimate 3

算法

抽取将序列的初始采样率降低到较低的采样率。 这与插值相反。 功能 毁灭 对输入信号应用低通滤波,防止频谱混叠并抽取结果。 该函数使用[1]中的抽取算法8.2和8.3。

  1. 毁灭 创建低通滤波器。 默认情况下,使用Chebyshev I BIH过滤器。 该滤波器具有归一化截止频率等于 0.8/<参数:r>>,和带宽纹波等于 0.05 分贝。 有时,由于创建传递函数所需的卷积而累积的舍入误差,指定的滤波顺序会导致带宽失真。 功能 毁灭 当失真导致截止频率处的振幅响应与纹波相差超过 10-6.

    选择选项时 "冷杉" 功能 毁灭 使用函数 fir1 用于设计具有截止频率的低通FIR滤波器 1/<参数:r>>.

  2. 当使用FIR滤波器时,功能 毁灭 仅在一个方向上过滤输入序列。 这可以节省内存,并且对于处理长序列非常有用。 在IIR滤波器的情况下,功能 毁灭 在正向和反向方向上应用过滤器,使用 过滤 以消除相位失真。 实际上,此过程使过滤顺序加倍。 在这两种情况下,该函数通过匹配端点条件来最小化信号两端的瞬态效应。

  3. 最后,功能 毁灭 重新采样数据,选择全部 [参数:r]-e点内的滤波信号。 在重新采样序列中(y), y(完) 回应 x(完) 当使用IIR滤波器时,以及 y(1) 回应 x(1) 时使用FIR滤波器。

文学作品

  1. Ieee®Acoustics,Speech,And Signal Processing Society,eds的数字信号处理委员会。 _用于数字信号处理的程序。_纽约:IEEE出版社,1979年。