凡亿教育-思敏
凡事用心,一起进步
打开APP
公司名片
凡亿专栏 | matlab函数加窗
matlab函数加窗

1 概要

数字信号处理的主要数学工具是傅里叶变换.而傅里叶变换研究的是整个时间域和频率域的关系。不过,当运用计算机实现工程测试信号处理时,不可能对无限长的信号进行测量和运算,而是取其有限的时间片段进行分析。做法是从信号中截取一个时间片段,然后用截取的信号时间片段进行周期延拓处理,得到虚拟的无限长的信号,然后就可以对信号进行傅里叶变换、相关分析等数学处理。无限长的信号被截断以后,其频谱发生了畸变,原来集中在f(0)处的能量被分散到两个较宽的频带中去了(这种现象称之为频谱能量泄漏)。
为了减少频谱能量泄漏,可采用不同的截取函数对信号进行截断,截断函数称为窗函数,简称为窗。
窗函数就是时域有限宽的信号。
泄漏与窗函数频谱的两侧旁瓣有关,如果两侧瓣的高度趋于零,而使能量相对集中在主瓣,就可以较为接近于真实的频谱,为此,在时间域中可采用不同的窗函数来截断信号。

2 matlab 中窗函数%   @bartlett       - Bartlett window.
%   @barthannwin    - Modified Bartlett-Hanning window.
%   @blackman       - Blackman window.
%   @blackmanharris - Minimum 4-term Blackman-Harris window.
%   @bohmanwin      - Bohman window.
%   @chebwin        - Chebyshev window.
%   @flattopwin     - Flat Top window.
%   @gausswin       - Gaussian window.
%   @hamming        - Hamming window.
%   @hann           - Hann window.
%   @kaiser         - Kaiser window.
%   @nuttallwin     - Nuttall defined minimum 4-term Blackman-Harris window.
%   @parzenwin      - Parzen (de la Valle-Poussin) window.
%   @rectwin        - Rectangular window.
%   @taylorwin      - Taylor window.
%   @tukeywin       - Tukey window.
%   @triang         - Triangular window.

查看一个创函数

wvtool(hamming(64)),title('hamming');

d287e579cd28564c1a0848b6a8f008.jpg

3 函数加窗close all
clear all
clc

Fs=44100;D.1khz

fs =1000;%1khz
t =1/Fs:1/Fs:256/Fs;%1s
x= sin(2*pi*fs*t); %I

L =length(x);
win = hann(L);
win =win';
y =x.*win;

figure(1),
subplot(311),stem(x);
subplot(312),stem(win);
subplot(313),stem(y);

de8f903e3eb4673c9ff07027f22d68.jpg

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表凡亿课堂立场。文章及其配图仅供工程师学习之用,如有内容图片侵权或者其他问题,请联系本站作侵删。
相关阅读
进入分区查看更多精彩内容>
精彩评论

暂无评论