sd 发表于 2016-7-5 10:50

ZH----过客 发表于 2016-7-5 10:47
加不同的窗会造成的泄漏也会不尽相同,但是每个窗都有自己的优点!!!所以在实际中我们要根据具体的情况去 ...

比如呢举例说说

ZH----过客 发表于 2016-7-5 10:57

sd 发表于 2016-7-5 10:50
比如呢举例说说

(1)矩形窗(Rectangle):习惯上不加窗就是使信号通过了矩形窗。优点是主瓣比较集中,缺点是旁瓣较高并伴有负旁瓣。导致变换中带进了高频干扰和泄露,甚至出现负谱现象,频率识别精度较高,幅值识别精度最低,所以矩形窗不是一个理想窗。应用:如果仅要求精确读出主瓣频率,而不考虑幅值精度,则可选用矩形窗。例如测量物体的自振频率等也可以用在阶次分析中。
   (2)汉宁窗(Hanning):又称余弦窗。主瓣加宽并降低,旁瓣则显著减小。从减小泄露的观点出发,汉宁窗优于矩形窗,但汉宁窗主瓣加宽,相当于分析带宽加宽,频率分辨率下降。它与矩形窗相比泄露、波动都减小了并且选择性也提高。应用:如果测试信号有多个频率分量,频谱表现的十分复杂,且测试的目的更多关注频率点而非能量大小需要选择汉宁窗。如果被测信号是随机或未知的选择汉宁窗。

sd 发表于 2016-7-5 13:09

一个二维Hann窗的例子

由于hann函数只能得到一个1维的窗。所以要用一个矩阵乘法
f1 = imread('deglena00000.tif');
= size(f1);
W = hanning(N1) * hanning(N2)';                     
f1_fft = fft2(W.*double(f1));

TestGuru 发表于 2016-7-5 16:13

1. 如果DFT采集时间窗口内的信号的周期延拓与实际信号完全吻合,那么就不会出现泄漏现象。换句话说,对于周期信号,如果采集时间窗口内正好包含整数个信号周期,就能避免频谱泄漏。有时可利用这个特点来进行所谓的整周期采样(这里面还有更多的规矩细节)。



下面是一个1000.4882812Hz的正弦信号,采样频率为48kHz,FFT点数为32768(无窗,或矩形窗),因此一个FFT段包含32768/48000*1000.4882812=683个整信号周期,信号能量集中于单一谱线上,无泄漏。




2. 如果DFT采集时间窗口内的信号的周期延拓与实际信号不完全吻合,就会在周期延拓的边界上出现不连续点,就会出现泄漏现象。


下面是一个1000Hz的正弦信号,采样频率为48kHz,FFT点数为32768(无窗,或矩形窗),因此一个FFT段包含32768/48000*1000=682.6666667个信号周期,信号能量分散于多条谱线上,而且散布到离信号本身频率以外相当远的地方,出现了严重的频谱泄漏。





3. 减少频谱泄漏的方法就是将采集时间窗口内的数据乘以一个窗函数,再做DFT。与矩形窗给所有采集窗口内的数据同样的权重(即:1)不同,通常采用的窗函数都是给予采集窗口内中间的数据最大的权重(即:1),然后从中间到两边权重逐渐减小,最后在边界上变为0,这就强制了在DFT周期延拓的边界上,不会出现不连续的跳变。


加窗后,在周期延拓的边界上,被强制连续。


下面是一个1000Hz的正弦信号,采样频率为48kHz,FFT点数为32768(汉宁窗),因此一个FFT段包含32768/48000*1000=682.6666667个信号周期,加窗后信号能量集中于信号频率附近的几条谱线上,频谱泄漏的情况比不加窗时小。



sd 发表于 2016-7-5 16:23

TestGuru 发表于 2016-7-5 16:13
1. 如果DFT采集时间窗口内的信号的周期延拓与实际信号完全吻合,那么就不会出现泄漏现象。换句话说,对于周 ...

说的很详细很清楚要是能把程序也贴出来就更好了
加窗的意义就是要减少频谱泄露对吗?

TestGuru 发表于 2016-7-5 16:32

在时域乘以窗函数,相当于在频域对跟该窗函数的频谱做卷积。不同的窗函数有不同的频谱,那么在频谱泄漏不可避免的时候,如何选择合适的窗函数呢?这个得首先估计被测信号的频率成分。

1. 如果信号中的干扰信号的频率离所关注的信号的频率较远,则应选择旁瓣衰减率高的窗函数;
2. 如果信号中的干扰信号的频率离所关注的信号的频率较近,则应选择最高旁瓣幅度低的窗函数;
3. 如果信号中的干扰信号的频率离所关注的信号的频率非常接近,则应选择主瓣窄的窗函数;
4. 如果要准确测量信号的某一单频分量的幅度,则应选择主瓣宽的窗函数;
5. 如果信号是宽频噪音信号,则宜采用矩形窗。

总的来看,汉宁窗具有较好的频率分辨率,也大大减少了频谱泄漏,适用于大多数情形。

我们评估了MI所支持的55种窗函数,在这55种窗函数中选择了单项冠军。


1. 旁瓣衰减率高的窗函数 Cosine Window (Alfa = 5)


2. 最高旁瓣幅度低的窗函数 Kaiser-Bessel Window(Alfa = 19.0)



3. 主瓣窄的窗函数 Rectangle Window


4. 主瓣宽的窗函数 Kaiser-Bessel Window(Alfa = 20.0)


另一个常用的主瓣宽的窗函数是 Flat Top Window




5. 最常用的窗之一 Hanning Window



旧言虐心 发表于 2016-7-8 08:44

楼上给的资料太详细了谢谢谢谢!学习一下!

chukongde 发表于 2016-7-8 13:56

TestGuru 发表于 2016-7-5 16:13
1. 如果DFT采集时间窗口内的信号的周期延拓与实际信号完全吻合,那么就不会出现泄漏现象。换句话说,对于周 ...

楼主写的例子很好,我的疑问基本均已解决,十分感谢,顶!

怪咖先生 发表于 2016-7-11 08:56

TestGuru 发表于 2016-7-5 16:13
1. 如果DFT采集时间窗口内的信号的周期延拓与实际信号完全吻合,那么就不会出现泄漏现象。换句话说,对于周 ...

为啥说人家胡说八道啊

TestGuru 发表于 2016-7-14 08:38

怪咖先生 发表于 2016-7-11 08:56
为啥说人家胡说八道啊

你懂?说来听听
页: 1 2 3 4 [5]
查看完整版本: 傅里叶变换加窗的影响