FFT在分析信号频谱的时候,会有下面四个方面的误差: 1、频谱混叠 奈奎斯特定理已被众所周知了,所以几乎所有人的都知道为了不让频谱混叠,理论上采样频谱大于等于信号的最高频率。 那和时域上联系起来的关系是什么呢?采样周期的倒数是频谱分辨率,最高频率的倒数是采样周期。 设定采样点数为N,采样频率fs,最高频率fh,故频谱分辨率f=fs/N,而fs>=2fh,所以可以看出最高频率与频谱分辨率是相互矛盾的,提高频谱分辨率f 的同时,在N确定的情况下必定会导致最高频率fh的减小;同样的,提高最高频率fh的同时必会引起f 的增大,即分辨率变大。 2、栅栏效应 由于dft是只取k=0,1,2,.......N-1,只能取到离散值,如果频谱之间相隔较大的话也许会将一些中间的信息丢失掉,而用fft 计算dft是不可避免的,解决的办法就是增加采样点数N。这样频谱间隔变小,丢失信息的概率减小。 另外,增加0可以更细致观察频域上的信号,但不会增加频谱分辨率。 3、频谱泄露 是由加窗函数引起的,同样是计算量的问题(用fft、用dft必需要加窗函数),时域上的相乘,频域上卷积,引起信号的频谱失真,只有在很少的情况下,频谱泄露是不会发生的,大部分情况都会引起泄露。如: N点的fft 则不会发生泄露,但2N,或N+1,N+2等均会引起失真,而引起失真可以从表达式上看出:X(K)=卷积以后的频谱在2π/N*k的取样值,所以如果是2N的dft,为2π/2N*k,相当于N点dft结果各个值中间再取样了一个值,而2π/(N+2)*k就与N点fft完全不一样了。 解决办法,可以扩大窗函数的宽度(时域上的宽了,频域上就窄了,(时域频域有相对性),也就是泄露的能量就小了),或者不要加矩形的窗函数,可以加缓变的窗函数,也可以让泄露的能量变小。 因为泄露会造成频谱的扩大,所以也可能会造成频谱混叠的现象,而泄露引起的后果就是降低频谱分辨率。 4、谱间干扰 频谱泄露会令主谱线旁边有很多旁瓣,这就会造成谱线间的干扰,更严重就是旁瓣的能量强到分不清是旁瓣还是信号本身的,这就是所谓的谱间干扰。 来源:xuexiang0704 CSDN博客 |
GMT+8, 2024-11-25 14:47 , Processed in 0.056380 second(s), 23 queries , Gzip On.
Powered by Discuz! X3.4
Copyright © 2001-2021, Tencent Cloud.