📅  最后修改于: 2020-11-25 05:39:43             🧑  作者: Mango
FIR过滤器在进行过滤器的计算机辅助设计时很有用。让我们举个例子,看看它是如何工作的。下面给出的是所需滤波器的图。
在进行计算机设计时,我们将整个连续图形分解为离散值。在特定范围内,我们将其分为数量不定的64、256或512(依此类推)零件。
在上面的示例中,我们采用了-π到+π之间的限制。我们将其分为256个部分。这些点可以表示为H(0),H(1)…直至H(256)。在这里,我们应用IDFT算法,这将为我们提供线性相位特性。
有时,我们可能对某些特定顺序的过滤器感兴趣。让我们说,我们希望通过9阶滤波器来实现上述给定的设计。因此,我们将过滤器值设为h0,h1,h2 …. h9。数学上可以显示如下
$$ H(e ^ {j \ omega})= h_0 + h_1e ^ {-j \ omega} + h_2e ^ {-2j \ omega} + ….. + h_9e ^ {-9j \ omega} $$
在有大量错位的地方,我们以最高分。
例如,在上图中,B点和C点之间突然出现了坡度下降。因此,我们尝试在此点获取更多离散值,但C点和D点之间存在恒定的斜率。较少的离散值。
为了设计上述滤波器,我们将进行以下最小化过程;
$ H(e ^ {j \ omega1})= h_0 + h_1e ^ {-j \ omega1} + h_2e ^ {-2j \ omega1} + ….. + h_9e ^ {-9j \ omega1} $
$ H(e ^ {j \ omega2})= h_0 + h_1e ^ {-j \ omega2} + h_2e ^ {-2j \ omega2} + ….. + h_9e ^ {-9j \ omega2} $
同样,
$(e ^ {j \ omega1000})= h_0 + h_1eH ^ {-j \ omega1000} h_2e ^ {-2j \ omega1000} + ….. + h_9 + e ^ {-9j \ omega1000} $
以矩阵形式表示上述方程式,我们有-
$$ \ begin {bmatrix} H(e ^ {j \ omega_1})\\。\\。\\ H(e ^ {j \ omega_ {1000}})\ end {bmatrix} = \ begin {bmatrix} e ^ {-j \ omega_1}和…&e ^ {-j9 \ omega_1} \\。 &&。 \\。 &&。 \\ e ^ {-j \ omega_ {1000}}&…&e ^ {j9 \ omega_ {1000}} \ end {bmatrix} \ begin {bmatrix} h_0 \\。\\。\\ h_9 \ end {bmatrix} $$
让我们将1000×1矩阵作为B,将1000×9矩阵作为A,将9×1矩阵作为$ \ hat {h} $。
因此,为了解决上述矩阵,我们将编写
$ \ hat {h} = [A ^ TA] ^ {-1} A ^ {T} B $
$ = [A ^ {* T} A] ^ {-1} A ^ {* T} B $
其中A *代表矩阵A的复共轭。