matlab 如何得到声音信号的频率-时间图,而不是频谱图???

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了matlab 如何得到声音信号的频率-时间图,而不是频谱图???相关的知识,希望对你有一定的参考价值。

参考技术A 语谱图是用来表示频率随时间的变化情况的。

matlab小波分析时频谱图 声音时频信号处理

1、内容简介


616-可以交流、咨询、答疑

2、内容说明

简单地说,任何信号(当然要满足一定的数学条件),都可以通过傅立叶变换而分解成一个直流分量(也就是一个常数)和若干个(一般是无穷多个)正弦信号的和。

每个正弦分量都有自己的频率和幅值;
这样,以频率值作横轴,以幅值作纵轴,
把上述若干个正弦信号的幅值画在其所对应的频率上,就做出了信号的幅频分布图,也就是所谓频谱图 。

3、仿真分析

clear
clc
close all
[x2,fs]=audioread('玻璃碎片碰撞6s.wav');
wavename='cmor3-3';
totalscal=64; %totalscal是对信号进行小波变换时所用尺度序列的长度(通常需要预先设定好)
Fc=centfrq(wavename); % 小波的中心频率  测得Fc = 
c=2*Fc*totalscal;    % 测得
scals=c./(1:totalscal);
f=scal2frq(scals,wavename,1/fs); % 将尺度转换为频率   频率在0-500Hz取1024<span style="font-family: Arial, Helvetica, sans-serif;">个点</span>
coefs = cwt(x2,scals,wavename); % 求连续小波系数
t=0:1/fs:size(x2)/fs;
figure
imagesc(t,f,(abs(coefs)));
set(gca,'YDir','normal')
colorbar;
xlabel('时间 t/s');
ylabel('频率 f/Hz');
title('后围小波时频图');

 基于小波变换的非平稳信号时频分析的研究及应用.caj

4、参考论文

以上是关于matlab 如何得到声音信号的频率-时间图,而不是频谱图???的主要内容,如果未能解决你的问题,请参考以下文章

matlab小波分析时频谱图 声音时频信号处理

matlab怎样进行频谱分析

关于用MATLAB设计确定信号的频谱分析和滤波

在 MATLAB 中根据信号数据确定频率

在matlab中,如何画出一个信号的频谱图?

在matlab中查找傅立叶变换的一秒样本