前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >matlab函数加窗

matlab函数加窗

作者头像
FPGA开源工作室
发布2022-05-18 08:18:53
1.1K0
发布2022-05-18 08:18:53
举报
文章被收录于专栏:FPGA开源工作室FPGA开源工作室

1 概要

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

2 matlab 中窗函数

代码语言:javascript
复制
%   @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.

查看一个创函数

代码语言:javascript
复制
wvtool(hamming(64)),title('hamming');

3 函数加窗

代码语言:javascript
复制
close all
clear all
clc

Fs=44100;%44.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);

版权归原作者所有,如有侵权,请联系删除。

‧‧‧‧‧‧‧‧‧‧‧‧‧‧‧‧ END ‧‧‧‧‧‧‧‧‧‧‧‧‧‧‧‧

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2022-04-28,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 FPGA开源工作室 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1 概要
  • 2 matlab 中窗函数
  • 3 函数加窗
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档