时频分析:短时傅里叶变换应用
目录:
- 前言
- 实验环境
- Matlab spectrogram函数
- 1语法
- 2举栗子:
- 2.1跟踪声音信号里的鸟声轨迹
- 2.2谱图3d可视化
- 参考:
前言
之前讲了时频分析的原理,和matlab里面的相关实现,现在展示一下它的应用。
想要复习原理的同学,可以参照一下这篇:短时傅里叶分析(1)
想要熟悉函数语句的同学:
基础的可以参见前面的:短时傅里叶实现(1)
中阶的可以参见前面的:短时傅里叶实现(2)
高阶的可以参见前面的:短时傅立叶实现(3)
进阶的可以参见前面的:短时傅里叶实现(4)
终极的可以参见前面的:短时傅里叶实现(5)
实验环境
本文的所有实验都是在matlab2016a下通过的。
Matlab spectrogram函数
谱图函数:使用短时傅里叶变换化成短时傅里叶变换的谱图。
1语法
前面的几个帖子,已经详细的介绍了这个函数,不清楚的可以参看一下,本篇只演示应用。
2举栗子:
本文会介绍一些常见的应用,重要的是结合原理去理解它,这样才好应用到自己的应用上。
2.1跟踪声音信号里的鸟声轨迹
加载一个包含两个下降鸟声信号和宽带飞溅声的声音信号。计算短时傅里叶变换,将信号分割成400个段落,300个重叠,画出谱图。
load splat
% To hear, type soundsc(y,Fs)
sg = 400;
ov = 300;
spectrogram(y,sg,ov,[],Fs,'yaxis')
colormap bone
如图所示
%可以使用谱图函数获得信号的功率谱密度信息
[s,f,t,p] = spectrogram(y,sg,ov,[],Fs);
%可以使用medfreq来追踪这两个鸟声信号,为了找到最强的,低频鸟声信号,限制这个搜索在频率大于100hz,时间
%在宽带信号之前
f1 = f > 100;
t1 = t < 0.75;
m1 = medfreq(p(f1,t1),f(f1));
%为了找到虚弱的高频鸟声信号,限制搜索在2500hz以上,时间在0.3秒到0.65秒之间。
f2 = f > 2500;
t2 = t > 0.3 & t < 0.65;
m2 = medfreq(p(f2,t2),f(f2));
%将结果叠加在谱图上。将频率值除以1000,以kHz表示。
hold on
plot(t(t1),m1/1000,'linewidth',4)
plot(t(t2),m2/1000,'linewidth',4)
hold off
如图所示:
2.2谱图3d可视化
%产生一个两秒的信号,采样频率为10khz,瞬时频率信号是一个时间的三角函数
fs = 10e3;
t = 0:1/fs:2;
x1 = vco(sawtooth(2*pi*t,0.5),[0.1 0.4]*fs,fs);
%计算并画出信号的谱图,使用256点shape为5的kaiser窗,特别地重叠点数是220,512点DFT,在y轴画出颜色图
spectrogram(x1,kaiser(256,5),220,512,fs,'yaxis')
%改变视角,并展示瀑布样的谱图,颜色设置为bone
colormap bone
view(-45,65)
参考:
mathworks
时频分析:短时傅里叶变换应用相关推荐
- matlab 小波变换_matlab小波工具箱实例(二):时频分析和连续小波变换
本文讲解matlab小波工具箱实例(二):时频分析和连续小波变换.目录如下: 链接:https://www.mathworks.com/help/wavelet/ug/time-frequency-a ...
- 2021-05-10 Matlab短时傅里叶变换和小波变换的时频分析
Matlab短时傅里叶变换和小波变换的时频分析 简介 本文主要给定一小段音频,通过短时傅里叶变换和小波变换制作时频图.音频的采样率为44100, 短时傅里叶变换 在matlab中,短时傅里叶变换的分析 ...
- 时频分析:短时傅里叶变换实现(2)
目录: 文章目录 补充 #前言 之前讲了时频分析的原理,现在来讲讲它在matlab里面的实现. 想要复习原理的同学,可以参照一一下这篇: 短时傅里叶分析 本次讲解中阶的函数,基础的可以参见前面的: 短 ...
- 时频分析:短时傅里叶变换实现(1)
目录: 前言 实验环境 Matlab spectrogram函数 1语法 2使用说明 3代码如下: 前言 之前讲了时频分析的原理,现在来讲讲它在matlab里面的实现. 想要复习原理的同学,可以参照一 ...
- 数字信号处理——时频分析(短时傅里叶变换)
短时傅里叶变换的概念 背景: 傅里叶变换的局限性:在做傅里叶变换的时候,使用的是(-∞,∞)的时间信息来计算单个频率的频谱,所以傅里叶变换是一种全局性的描述,不能反映信号局部区域的信息,故如果信号在某 ...
- matlab 时频分析(短时傅里叶变换、STFT)
短时傅里叶变换,short-time fourier transformation,有时也叫加窗傅里叶变换,时间窗口使得信号只在某一小区间内有效,这就避免了传统的傅里叶变换在时频局部表达能力上的不足, ...
- 时频分析:短时傅里叶变换
目录 1 傅里叶变换的缺陷 2 短时傅里叶变换(窗式傅里叶变换) 3 小波部分 4 补充部分 1 傅里叶变换的缺陷 FFT在平稳信号的分析和处理中有着突出贡献的原因在于,人们利用它可以把复杂的时间信号 ...
- matlab时频分析之短时傅里叶变换 spectrogram
matlab时频分析之短时傅里叶变换 spectrogram 短时傅里叶变换常用于缓慢时变信号的频谱分析,可以观察沿时间变化的频谱信号. 其优点如下图所示,弥补了频谱分析中不能观察时间的缺点,也弥补了 ...
- 时频分析:短时傅里叶变换(1)
目录: 文章目录 目录: 前言 1傅里叶变换的缺陷 2短时傅里叶变换(窗式傅里叶变换) 3小波部分 4补充部分 补充 前言 最近需要对处理的数据做时频分析,因此恶补了一下相关的知识,光是学习并没有用处 ...
最新文章
- vue中axios如何实现token验证
- OSINT系列:网站信任评估WOT
- DOM中元素节点、属性节点、文本节点的理解
- HDU - 1429 胜利大逃亡(续) (BFS+状压)
- 利用Chrome的Heap Snapshot功能分析一个时间段内的内存占用率
- Bootstrap3 警告框插件的使用方法
- 客户端连接idea_IDEA新特性:提前知道代码怎么走!
- ⭐️C#零基础到入门 ⭐️| 带你认识编程中的—23种设计模式 六大设计原则
- python源代码编译后的文件扩展名-python源代码被解释器转换后的格式是什么?
- 学习沟通技巧--- SOFTEN法则与SOLER法则
- 用python实现人脸识别毕设_用Python实现一个简单的人脸识别,原来我和这个明星如此相似...
- L2-016 愿天下有情人都是失散多年的兄妹 (25 分) fill函数、bfs
- 23种设计模式中英文对照
- uni-app以h5网页的方式发布企业微信应用
- 毕设系列之Libx264实时视频流(YUV 420P转H264视频编码篇)
- 自己制作Chrome绿色版本。
- 【Proteus仿真】Arduino UNO+PCF8574+LCD1602+MPX4250电子秤
- 联想服务器td340安装精简版win10
- USB协议和接口梳理,Type-C,USB3.0,USB3.1,线序
- 自定义Modal组件