几种常见窗函数及其MATLAB程序实现Word文件下载.docx

上传人:b****5 文档编号:17407573 上传时间:2022-12-01 格式:DOCX 页数:10 大小:292.55KB
下载 相关 举报
几种常见窗函数及其MATLAB程序实现Word文件下载.docx_第1页
第1页 / 共10页
几种常见窗函数及其MATLAB程序实现Word文件下载.docx_第2页
第2页 / 共10页
几种常见窗函数及其MATLAB程序实现Word文件下载.docx_第3页
第3页 / 共10页
几种常见窗函数及其MATLAB程序实现Word文件下载.docx_第4页
第4页 / 共10页
几种常见窗函数及其MATLAB程序实现Word文件下载.docx_第5页
第5页 / 共10页
点击查看更多>>
下载资源
资源描述

几种常见窗函数及其MATLAB程序实现Word文件下载.docx

《几种常见窗函数及其MATLAB程序实现Word文件下载.docx》由会员分享,可在线阅读,更多相关《几种常见窗函数及其MATLAB程序实现Word文件下载.docx(10页珍藏版)》请在冰豆网上搜索。

几种常见窗函数及其MATLAB程序实现Word文件下载.docx

不同的窗函数对信号频谱的影响是不一样的,这主要是因为不同的窗函数,产生泄漏的大小不一样,频率分辨能力也不一样。

信号的加窗处理,重要的问题是在于根据信号的性质和研究目的来选用窗函数。

图1是几种常用的窗函数的时域和频域波形,其中矩形窗主瓣窄,旁瓣大,频率识别精度最高,幅值识别精度最低,如果仅要求精确读出主瓣频率,而不考虑幅值精度,则可选用矩形窗,例如测量物体的自振频率等;

布莱克曼窗主瓣宽,旁瓣小,频率识别精度最低,但幅值识别精度最高;

如果分析窄带信号,且有较强的干扰噪声,则应选用旁瓣幅度小的窗函数,如汉宁窗、三角窗等;

对于随时间按指数衰减的函数,可采用指数窗来提高信噪比。

表1是几种常用的窗函数的比较。

如果被测信号是随机或者未知的,或者是一般使用者对窗函数不大了解,要求也不是特别高时,可以选择汉宁窗,因为它的泄漏、波动都较小,并且选择性也较高。

但在用于校准时选用平顶窗较好,因为它的通带波动非常小,幅度误差也较小。

表1 

几种常用的窗函数的比较

名称

特点

应用

矩形窗

Rectangle

矩形窗使用最多,习惯上不加窗就是使信号通过了矩形窗。

这种窗的优点是主瓣比较集中,缺点是旁瓣较高,并有负旁瓣,导致变换中带进了高频干扰和泄漏,甚至出现负谱现象。

频率识别精度最高,幅值识别精度最低,所以矩形窗不是一个理想的窗。

如果仅要求精确读出主瓣频率,而不考虑幅值精度,则可选用矩形窗,例如测量物体的自振频率等,也可以用在阶次分析中。

汉宁窗

Hanning

又称升余弦窗。

主瓣加宽并降低,旁瓣则显著减小,从减小泄漏观点出发,汉宁窗优于矩形窗.但汉宁窗主瓣加宽,相当于分析带宽加宽,频率分辨力下降。

它与矩形窗相比,泄漏、波动都减小了,并且选择性也提高。

是很有用的窗函数。

如果测试信号有多个频率分量,频谱表现的十分复杂,且测试的目的更多关注频率点而非能量的大小,需要选择汉宁窗。

如果被测信号是随机或者未知的,选择汉宁窗。

海明窗

(汉明窗)

Hamming

与汉宁窗都是余弦窗,又称改进的升余弦窗,只是加权系数不同,使旁瓣达到更小。

但其旁瓣衰减速度比汉宁窗衰减速度慢。

与汉明窗类似,也是很有用的窗函数。

平顶窗

FlapTop

平顶窗在频域时的表现就象它的名称一样有非常小的通带波动。

由于在幅度上有较小的误差,所以这个窗可以用在校准上。

凯塞窗

Kaiser

定义了一组可调的由零阶贝塞尔Bessel函数构成的窗函数,通过调整参数β可以在主瓣宽度和旁瓣衰减之间自由选择它们的比重。

对于某一长度的Kaiser窗,给定β,则旁瓣高度也就固定了。

布莱克曼窗

Blackman

二阶升余弦窗,主瓣宽,旁瓣比较低,但等效噪声带宽比汉宁窗要大一点,波动却小一点。

频率识别精度最低,但幅值识别精度最高,有更好的选择性。

常用来检测两个频率相近幅度不同的信号。

高斯窗

Gaussian

是一种指数窗。

主瓣较宽,故而频率分辨力低;

无负的旁瓣,第一旁瓣衰减达一55dB。

常被用来截短一些非周期信号,如指数衰减信号等。

三角窗

(费杰窗)

Fejer

是幂窗的一次方形式。

与矩形窗比较,主瓣宽约等于矩形窗的两倍,但旁瓣小,而且无负旁瓣。

切比雪夫窗(Chebyshev)

在给定旁瓣高度下,Chebyshev窗的主瓣宽度最小,具有等波动性,也就是说,其所有的旁瓣都具有相等的高度。

下面是几种窗函数归一化DTFT幅度的MATLAB程序:

附上DTFT函数():

function[X]=dtft(x,n,w)

ComputesDiscrete-timeFourierTransform

[X]=dtft(x,n,w)

 

X=DTFTvaluescomputedat

x=finitedurationsequenceovern

n=samplepositionvector

w=frequencylocationvector

X=x*exp(-j*n'

*w);

%

end

矩形窗:

%DTFTofaRectangularWindow,M=10,25,50,101

clc;

closeall;

Hf_1=figure;

set(Hf_1,'

NumberTitle'

'

off'

Name'

P0304a'

);

w=linspace(-pi,pi,501);

wtick=[-1:

:

1];

magtick=[0:

];

%M=10

M=10;

n=0:

M;

x=ones(1,length(n));

X=dtft(x,n,w);

magX=abs(X);

magX=magX/max(magX);

subplot(2,2,1);

plot(w/pi,magX,'

LineWidth'

;

axis([-110]);

ylabel('

|X|'

title(['

M=10'

]);

set(gca,'

XTick'

wtick,'

YTick'

magtick);

%M=25

M=25;

subplot(2,2,2);

title(['

M=25'

set(gca,'

%M=50

M=50;

subplot(2,2,3);

xlabel('

\omega/\pi'

ylabel('

title('

M=50'

%M=101

M=101;

subplot(2,2,4);

M=101'

三角窗:

%TriangularWindow:

%DTFTofaTriangularWindow,M=10,25,50,101

P0304b'

%M=10

x=(1-(abs(M-1-(2*n))/(M+1)));

x=dtft(x,n,w);

M=10'

%M=25

M=25'

%M=50

M=50'

%M=100

n=0:

M=101'

海宁窗:

%HannWindow

%DTFTofaHannWindow,M=10,25,50,101

closeall;

Hf_1=figure;

P0304c'

x=*(1-cos((2*pi*n)/(M-1)));

%M=101

哈明窗:

%HammingWindow:

P0304d'

x=magX=abs(X);

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 历史学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1