
信号的时频分析MATLAB,[转载]时频特性分析(Matlab)
最近瞅了⼀些关于时频分析⼯具箱的matlab函数使⽤⽅法,总结⼀下吧.
我使⽤的是2011a的matlab,貌似没有⾃带的时频分析⼯具箱,可以到⽹上下载,google⼀搜就能搜到,安装后就可以使⽤了(所谓安装就是把
⼯具箱的⽬录包含到matlab⼯作⽬录中即可).
下⾯说⼀些时频⼯具箱函数的⽤法(由于我下的⼯具箱没有html版的帮助,所以只能使⽤help
funname的⽅法查看帮助信息).
AMGAUSS
Generategaussianamplitudemodulation.
Y=AMGAUSS(N,T0,T)generatesagaussianamplitudemodulation
centeredonatimeT0,andwithaspreadproportionaltoT.
ThismodulationisscaledsuchthatY(T0)=1
andY(T0+T/2)andY(T0-T/2)areapproximatelyequalto0.5.
产⽣⾼斯幅值调制信号,其以信号点数为N,中⼼为T0,传播0.5的⽐例到T,即Y(T0)=1,Y(T0+T/2)=
Y(T0-T/2)=0.5。T0默认为N/2,T默认为2*sqrt(N)。
如z=amgauss(160,90,40);plot(z);
FMCONST
Signalwithconstantfrequencymodulation.
[Y,IFLAW]=FMCONST(N,FNORM,T0)generatesafrequency
modulation
withaconstantfrequencyfnorm.
Thephaofthismodulationissuchthaty(t0)=1.
产⽣⼀个固定频率的频率调制信号。N为产⽣信号的点数,FNORM为标准化频率(默认为0.25),T0表⽰此时刻为正幅值(默认为
round(N/2)),相当于规定了相位。IFLAW为设置的频率变化情况,这⾥就是⼀个常数。
如z=fmconst(128,0.05,50);plot(real(z));
FMLIN
Signalwithlinearfrequencymodulation.
[Y,IFLAW]=FMLIN(N,FNORMI,FNORMF,T0)generatesalinear
frequency
modulation.
ThephaofthismodulationissuchthatY(T0)=1.
产⽣⼀个线性调频信号。N为信号的点数,FNORMI为开始标准频率(默认为0.0),FNORMF为结束标准频率(默认为0.5),相位由T0规
定,即Y(T0)=1。IFLAW为设置的频率变化情况,这⾥就是⼀个线性变化的直线。
如[z,f]=fmlin(128,0.05,0.3,50);plot(real(z));figure,
plot(f)
以上是⽐较常⽤的产⽣信号的函数。
下⾯说⼀些时频分析常⽤的分析⽅法,主要有短时傅⾥叶变换STFT、Wigner-Ville分布WVD、伪Wigner-Ville分布PWVD等,其他还有很
多分析⽅法,都有相关函数,具体可以查看帮助。
短时傅⾥叶变换STFT
功能:计算时间序列的短时离散傅⾥叶变换,得到瞬时频率。
格式:
[tfr,t,f]=tfrstft(x)%
计算时间序列x的短时傅⾥叶变换,参数tfr为短时傅⾥叶变换系数,t为系数tfr对应的时刻,f为归⼀化频率向量
[tfr,t,f]=tfrstft(x,t)%计算对应时刻t的短时傅⾥叶变换
[tfr,t,f]=tfrstft(x,t,n)%计算n点对应时刻t的短时傅⾥叶变换
[tfr,t,f]=tfrstft(x,t,n,h)%参数h为归⼀化频率平滑窗
[tfr,t,f]=tfrstft(xt,n,h,trace)%trace显⽰算法进程
说明:
x--信号
t--时间(缺省值为1:length(x))
n--频率数(缺省值为length(x))
h--频率滑窗,h归⼀化为单位能量(缺省值为hamming(n/4))
trace--如果⾮零,显⽰算法的进程(缺省值为0)
tfr--时频分解(为复值),频率轴观察范围为-0.5~0.5
f--归⼀化频率
如
sig=[fmconst(128,0.2);
fmconst(128,0.4)];%产⽣由两个常值调频信号(即正弦信号)的组合信号
tfr=tfrstft(sig);
subplot(211);imagesc(abs(tfr));%瞬时频率
subplot(212);imagesc(angle(tfr));%瞬时相位
Wigner-Ville时频分布图
功能:计算时间序列的Wigner-Ville时频分布图,得到瞬时频率
格式:
[tfr,t,f]=tfrwv(x)
[tfr,t,f]=tfrwv(x,t)
[tfr,t,f]=tfrwv(x,t,n)
[tfr,t,f]=tfrwv(x,t,n,trace)
说明:
x--信号
t--时间(缺省值为1:length(x))
n--频率数(缺省值为length(x))
trace--如果⾮零,显⽰算法的进程(缺省值为0)
tfr--时频分解(为复值),频率轴观察范围为-0.5~0.5
f--归⼀化频率
如
sig=fmlin(128,0.1,0.4);
tfrwv(sig);
伪Wigner-Ville时频分布图
功能:计算时间序列的伪Wigner-Ville时频分布图,得到瞬时频率
格式:
[tfr,t,f]=tfrpwv(x)
[tfr,t,f]=tfrpwv(x,t)
[tfr,t,f]=tfrpwv(x,t,n)
[tfr,t,f]=tfrpwv(x,t,n,trace)
说明:
x--信号
t--时间(缺省值为1:length(x))
n--频率数(缺省值为length(x))
trace--如果⾮零,显⽰算法的进程(缺省值为0)
tfr--时频分解(为复值),频率轴观察范围为-0.5~0.5
f--归⼀化频率
如
sig=fmlin(128,0.1,0.4);
tfrpwv(sig);
还可以设置成三维显⽰,如下
其他时频分析
fmt
计算时间序列的快速梅林变换
ifmt
计算快速梅林逆变换。
tfrbj
⽣成时间序列的Bord-Jondan时频分布图,得到瞬时频率。
tfrbud
⽣成时间序列的Butterworth时频分布图,得到瞬时频率。
tfrcw
⽣成时间序列的Choi-Williams时频分布图,得到瞬时频率。
tfrgrd
⽣成时间序列的⼴义矩形时频分布图,得到瞬时频率。
tfrmh
⽣成时间序列的Margenau-Hill时频分布图,得到瞬时频率。
tfrmhs
⽣成时间序列的Margenau-HillP谱图时频分布图,得到瞬时频率。
tfrsp
计算时间序列的频谱图分布,得到瞬时频率。
tfrscalo
计算时间序列的尺度图时频表⽰,即连续⼩波变换的幅值的平⽅。
tfrrsp
计算时间序列的时频分布和它的重排形式,得到瞬时频率。
friedman
计算时间序列的瞬时频率密度。
ridges
从时间序列的重排时频分布中提取瘠。
tfrideal
计算给定时间序列的瞬时频率规律的理想时频表⽰。
以上给了很多函数,但常⽤的基本就是短时傅⾥叶变换STFT、Wigner-Ville分布WVD、伪Wigner-Ville分布PWVD和提取瘠ridges、得到
理想时频表⽰tfrideal。
本文发布于:2023-03-11 00:48:39,感谢您对本站的认可!
本文链接:https://www.wtabcd.cn/zhishi/a/1678466920120219.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文word下载地址:时频分析.doc
本文 PDF 下载地址:时频分析.pdf
| 留言与评论(共有 0 条评论) |