浅谈频率归一化问题

浅谈频率归一化问题

一、问题来源

在用matlab处理声音信号时,读入的声音存入一个矩阵中。这些离散的数据可以很好的用信号与系统的工具处理。但是,在涉及到实际的问题时,总会有类似这样的要求:设计一个4kHz的低通滤波器。问题由此产生。

在信号与系统课程中,离散的信号都是在t为整数的情形下的一些取值。在这种情况下,读入的信号经过fft变换后,变成了:

exp(j*k/N*2*pi*n)

这样的形式。由:

exp(j*w*n)

的频率是

abs(w)/(2*pi)

可以得到以上的傅里叶变换的频率是从0到(N-1)/N,再由:

exp(j*n) =exp(j*(n+2*pi)

可以得到最高的频率出现在w=pi处。

问题是,即使最高的频率也仅仅是1/2罢了,如何与要求的4kHz对应呢?

二、归一化

问题的来源就是采样了。我们假设信号发生在t为整数的时刻,然而事实并非如此。设采样频率为fs,则每秒内会有fs个信号发生。那么,真正的各个频率成份应该是计算出来的频率乘以fs(因为实际比假设快了fs倍)。于是,实际的频率成份是从0到fs/2了(这一点符合采样定理)。

那么,对于给定的频率fc,如何计算对应的公式exp(j*k/N*2*pi*n)中的k呢?由以上的推理可知:

k = fc / (fs/ 2)  * l / 2= fc / fs * l

上式就是归一化了(fs / 2代表最高频率成份)。

三、归一化的应用

由于现在正处于课程设计阶段,在此公布matlab代码有代人写作业的嫌疑,因此这部分以后补齐。


你可能感兴趣的:(归一化)