请教FFT低通滤滤问题
如有100个点,我补28个,凑够128,即那28个点都是0。请问在FFT后,想把部分高频置0以实现低通滤波,比如FFT后频域是0-1,如想把高于0.4HZ的滤去,哪些FFT后的点应置0啊?如把0.4*128-128的点置0,再IFFT后,我发现是有点问题的,请高手指教,我弄了两天都没想起来。 能不能把你的程序贴出来看看 如果想把部分高频置0以实现低通滤波,实际上是把128点中的中间部分置0,保留两端。因为实数序列的FFT后得到的是对称谱,两端是正(负)低频部分,中间是正(负)高频部分。 好像把中间置0不行吧,我不是用matlab,我是自己编的程序,在一个大程序中用到这个小程序。 对于128个点的时域数据,做fft得到的频率信号应该是实部和虚部各64个点,或者幅频和相频各64个点。
可以尝试:
1、同时把0.4以后的实部和虚部,或者幅频和相频置零。
2、按倍频程滤波关系,削减0.4以后的数据。 应该是中间吧,我们老师讲过。
页:
[1]