目录:

  • 前言
  • 实验环境
  • Matlab spectrogram函数
    • 1语法
    • 2使用说明
    • 3代码如下
      • 3.1重新分配平方鸟声的谱图
      • 3.2设置了下限的谱图
  • 参考:

前言

之前讲了时频分析的原理,现在来讲讲它在matlab里面的实现。
想要复习原理的同学,可以参照一下这篇:短时傅里叶分析(1)
本次讲解进阶的函数使用,
基础的可以参见前面的:短时傅里叶实现(1)
中阶的可以参见前面的:短时傅里叶实现(2)
高阶的可以参见前面的:短时傅立叶实现(3)

实验环境

本文的所有实验都是在matlab2016a下通过的。

Matlab spectrogram函数

谱图函数:使用短时傅里叶变换化成短时傅里叶变换的谱图。

1语法

标准函数引用方式如下:

[___,ps] = spectrogram(___)
[___] = spectrogram(___,'reassigned')
[___,ps,fc,tc] = spectrogram(___) 

2使用说明

[,ps] = spectrogram()
返回一个谱密度估计的矩阵
[] = spectrogram(,’reassigned’)
将谱的能量定位到时域的中心,如果你的信号包含中心稳定的视频成分,则这个操作会生成一个更尖锐的谱图。
[,ps,fc,tc] = spectrogram()
返回两个矩阵,fc和tc,包含着每个谱密度和功率谱估计的频率和时域中心

3代码如下

3.1重新分配平方鸟声的谱图

%产生一个平方鸟声(chirp)信号,采样频率是1khz,采样时间是2秒,前一秒的信号是100hz,后一秒的信号是200hz。
Fs = 1000;
t = 0:1/Fs:2-1/Fs;
y = chirp(t,100,1,200,'quadratic');
%估计重新浓缩的信号谱图
% 将信号划分成长度为128个点,使用KAiser窗加窗,床的参数是18
%每个间隔段,重叠120个样本
%在【128/2+1】=65个点处和【(length(x)-120)/(128-120)】=235时间块处得到频率点
spectrogram(y,kaiser(128,18),120,128,Fs,'reassigned','yaxis')

如图所示

3.2设置了下限的谱图

%产生一个平方鸟声(chirp)信号,采样频率是1khz,采样时间是2秒,前一秒的信号是100hz,后一秒的信号是200hz。
Fs = 1000;
t = 0:1/Fs:2-1/Fs;
y = chirp(t,100,1,200,'quadratic');
%估计信号的时间依赖的功率谱密度
%将信号划分成长度为128个点,使用KAiser窗加窗,床的参数是18
%每个间隔段,重叠120个样本
%在【128/2+1】=65个点处和【(length(x)-120)/(128-120)】=235时间块处得到频率点
%输出频率和时间的功率谱密度估计的中心,将功率谱密度低于30的设置为0
[~,~,~,pxx,fc,tc] = spectrogram(y,kaiser(128,18),120,128,Fs, ...'MinThreshold',-30);
画出非零部分的时间频率函数
plot(tc(pxx>0),fc(pxx>0),'.')

如图所示:


参考:

mathworks

时频分析:短时傅立叶变换实现(4)相关推荐

  1. 时频分析:短时傅立叶变换实现(5)

    目录: 前言 实验环境 Matlab spectrogram函数 1语法 2使用说明 3代码如下 3.1谱图聚集和门限设置 参考: 前言 之前讲了时频分析的原理,现在来讲讲它在matlab里面的实现. ...

  2. matlab求时频分布图,Matlab时频分析TFD程序集(时频分布、chirplet分解、变形分数傅立叶变换)源代码...

    码农 &nbsp2020年08月10日 学习一下 ikkki &nbsp2018年06月14日 希望有用 ahha &nbsp2018年06月13日 谢谢分享 YXJ1280  ...

  3. 时频分析:短时傅里叶实现(3)

    目录: 前言 实验环境 Matlab spectrogram函数 1语法 2使用说明 3代码如下 3.1谱图和瞬时频率 3.2鸟声信号功率谱密度追踪 参考: 前言 之前讲了时频分析的原理,现在来讲讲它 ...

  4. 时频分析:短时傅里叶变换

    目录 1 傅里叶变换的缺陷 2 短时傅里叶变换(窗式傅里叶变换) 3 小波部分 4 补充部分 1 傅里叶变换的缺陷 FFT在平稳信号的分析和处理中有着突出贡献的原因在于,人们利用它可以把复杂的时间信号 ...

  5. 时频分析:短时傅里叶变换(1)

    目录: 文章目录 目录: 前言 1傅里叶变换的缺陷 2短时傅里叶变换(窗式傅里叶变换) 3小波部分 4补充部分 补充 前言 最近需要对处理的数据做时频分析,因此恶补了一下相关的知识,光是学习并没有用处 ...

  6. 2021-05-10 Matlab短时傅里叶变换和小波变换的时频分析

    Matlab短时傅里叶变换和小波变换的时频分析 简介 本文主要给定一小段音频,通过短时傅里叶变换和小波变换制作时频图.音频的采样率为44100, 短时傅里叶变换 在matlab中,短时傅里叶变换的分析 ...

  7. 时频分析:短时傅里叶变换应用

    目录: 前言 实验环境 Matlab spectrogram函数 1语法 2举栗子: 2.1跟踪声音信号里的鸟声轨迹 2.2谱图3d可视化 参考: 前言 之前讲了时频分析的原理,和matlab里面的相 ...

  8. 数字信号处理——时频分析(短时傅里叶变换)

    短时傅里叶变换的概念 背景: 傅里叶变换的局限性:在做傅里叶变换的时候,使用的是(-∞,∞)的时间信息来计算单个频率的频谱,所以傅里叶变换是一种全局性的描述,不能反映信号局部区域的信息,故如果信号在某 ...

  9. 同步压缩变换在时频分析和盲源分离等方面的应用

    时频分析方法使用时-频域联合分布描述信号的瞬态特征,并通过瞬时频率估计来表征信号特征频率随时间变化的趋势.广泛使用的短时傅里叶变换STFT 和小波变换WT的时频分辨率取决于窗口和基函数的选择,但是由于 ...

最新文章

  1. 用python实现语音的传输功能_用Python打造一款智能语音聊天小软件!
  2. Teamviewer连接服务器显示不能够全屏 或 向日葵连接服务器不能够全屏 或 Teamviewer只显示一个640x480的分辨率选项
  3. Zookeeper是什么?
  4. mongorepository查询条件_MongoRepository实现增删改查和复杂查询【支持的查询类型】...
  5. java 视频监控 分屏ui_视频监控网页ActiveX视频分屏播放控件开发
  6. [FreeProxy]FreeProxy代理服务器端软件介绍 之一
  7. 【01】魔芋使用MDN的一点点经验
  8. mysql把A表的数据插入到B表
  9. 智能算法——蚁群算法
  10. win8 完全禁用uac的方法
  11. 利用gitlab pages和hexo搭建一个个人博客
  12. 商家自研美团闪购开放平台SDK对接
  13. python_习题一
  14. infercnv报错Error in base::rowMeans(x, na.rm = na.rm, dims = dims, ...) : ‘x‘ must be an array of a
  15. 2021全球程序员收入报告出炉,字节高级码农年薪274万元排第5!
  16. ios键盘弹起页面被顶上去的问题
  17. swagger支持中英文
  18. 科技型中小企业认定条件和好处
  19. Linux修改文件时间或创建新文件:touch
  20. Atitit 经济学常见的流派 古典主义与凯恩斯主义

热门文章

  1. marting mate 是真的香喷喷的 学术英语必备
  2. 啊,苏黎世联邦理工的拒信,最想去的学校啊
  3. 【转】D3DLOCK详解
  4. Linux内核中的进程组及会话
  5. 从零学前端第十四讲:AngularJs进阶-作用域和控制器
  6. CSS3 总结(一)
  7. 10月份个人技术指标
  8. 【临实战】CentOS 批量配置
  9. 半导体公司IC设计环境概况
  10. 阿里云云主机添加swap分区与swap性能优化