【问题标题】:FIR frequency responce坚定的频率响应
【发布时间】:2013-04-02 10:02:37
【问题描述】:

我是 DSP 新手。我正在尝试在 java 上创建用于教育目的的应用程序。 我想计算 FIR 滤波器系数并绘制它的频率响应。

为了计算系数,我想使用理想频率响应的 ifft,它基本上是矩形窗口。 我可以用这种方法和我的 FIR 滤波信号计算系数。 然后我想探索它的频率响应。据我所知,我可以通过 fft 从滤波器的脉冲响应中得到它(但那将是同一个矩形窗口,对吧?)。 我得到相同的矩形理想频率响应,但我想要真实的频率响应。就像那张照片一样。

我该怎么做?

【问题讨论】:

    标签: java signal-processing


    【解决方案1】:

    记住使用 fft 或 ifft 你假设你的信号是周期性的(所以它不是一个矩形,它是无限的)。此外,理想的响应是幅度的矩形窗口和相位的线性窗口。所以你必须制作一个具有线性相位的信号

    F = exp(-i*w*0.1);
    F(51:end-50) = 0;
    impulse = real(ifft(F));
    

    您仍然会有虚部(但它会非常小),因为当您将高通频带“归零”时相位不精确。在示例中,截止频率为 50,所需的群延迟为 0.1。

    【讨论】:

      【解决方案2】:
      1. 创建理想的频率响应。
      2. 要创建滤波器系数,请使用理想频率响应的 ifft。
      3. 要计算实际频率响应,请将零添加到系数数组并调用该数组的 fft。 我的问题是,我没有向系数数组添加零。当然,从系数中我会得到同样理想的频率响应。

      【讨论】:

        猜你喜欢
        • 2016-10-16
        • 2013-06-06
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-12-02
        • 1970-01-01
        • 2016-08-05
        相关资源
        最近更新 更多