考虑具有方差σ2y= 1.2的高斯白噪声过程y [n],其通过具有脉冲响应的长度为二的有限脉冲响应滤波器g [n]
g[0]=2, g[1]=0.6,
和
g[n]=0
for all other n.
结果输出过程是:
r[n] = g[n]*y[n] = ∑∞k=−∞ ( g[k] y[n−k] )
我如何在Matlab中设计FIR滤波器?
答案 0 :(得分:0)
这看起来比实际更复杂。对于给定的g
,其中过滤条件是IR过滤器的b
,很容易设计'过滤器。 b
已经是定义整个过滤器的过滤系数。以下代码在Filter Visualization Tool中打开过滤器:
b = [2; 0.6];
fvtool(b,1)
要应用此过滤器,请使用filter
。要生成正态分布式噪声,请使用randn
乘以标准偏差sqrt(1.2)
:
x = randn(1,100) * sqrt(1.2);
xf = filter(b,1,x);
xf
是过滤后的信号。