我使用时频工具箱中的tfrwv.m函数运行
[B,T,F] = tfrwv(data, 1:length(data), length(data), 1);
B(1:130, :) = 0; % remove the duplicate part of the distribution
imagesc(T, F, abs(B));
colormap(hot);
xlabel('t [s]');
ylabel('f [Hz]');我得到了

频率应在0,180 Hz以内,时间为0,2.5s。
如何将时间和频率缩放到实际值?
手册上说
%TFRWV Wigner-Ville time-frequency distribution.
% [TFR,T,F]=TFRWV(X,T,N,TRACE) computes the Wigner-Ville distribution
% of a discrete-time signal X,
% or the cross Wigner-Ville representation between two signals.
%
% X : signal if auto-WV, or [X1,X2] if cross-WV.
% T : time instant(s) (default : 1:length(X)).
% N : number of frequency bins (default : length(X)).
% TRACE : if nonzero, the progression of the algorithm is shown
% (default : 0).
% TFR : time-frequency representation. When called without
% output arguments, TFRWV runs TFRQVIEW.
% F : vector of normalized frequencies.
%
% Example :
% sig=fmlin(128,0.1,0.4); tfrwv(sig);
% 我就跑了
[B,T,F] = tfrwv(data, 1:length(data), length(data), hamming(length(data)/10), hamming(length(data)/4));我得到了
Error using tfrwv
Too many input arguments.
Error in flow_wv (line 8)
[B,T,F] = tfrwv(data, 1:length(data), length(data),
hamming(length(data)/10), hamming(length(data)/4));我认为这里的问题是初始化窗口的时间和频率。我试图通过编辑参数的值来操作两个轴。
用Matlab的默认谱图函数对同一数据进行相应的谱图,但用右标号的轴来表示,讨论这里

发布于 2013-12-24 15:24:10
如果使用以下命令,我认为tfrwv等同于spectrogram。
时间间隔是t = 1/360.选择fs = 360.5。
imagesc(T*t, F*fs, abs(B)); tfrwv中有更多的峰值,可能是因为窗口大小和重叠与您在spectrogram中使用的不同。
结果

发布于 2014-12-19 17:47:56
Wigner分布中没有重叠的概念.这仅适用于STFT和光谱图,即STFT的平方模量。
“tfrwv”(以及TFTB中的所有TFR计算)的结果都是归一化频率单位。如果不提供采样频率\速率,就无法获得频率和秒的单位。
输入参数太多了。
B,T,F=tfrwv(数据,1:长度(数据),长度(数据),hamming(长度(数据)/10),hamming(长度(数据)/4));
有三个输出参数和最多四个输入参数,所以是的,给它五个会抛出一个错误。另外,第四个输入参数是一个用于打开跟踪的布尔值,它只是在Matlab命令窗口计算时将一些进度信息打印出来。
只是为了进行实际检查,让您的tfrwv调用没有输出参数(即>> tfrwv(blah, blah); ),这将导致它调用菜单驱动的绘图工具tfrqview。菜单中的选项之一是改变采样频率(在Matlab命令提示符下输入赫兹的采样频率),它将更新数字,使y轴上有实际频率,x轴上有时间。否则,默认的是归一化频率,y轴实际上是样本单位的时间。
要做到这一点,您将需要使用一个三维“图”,在这里,您可以使用采样率来转换T和F向量为真实时间和真频率,而不是样本和归一化频率(归一化频率为0 0.5)。然后,使用TFR对z轴(即>>imagesc(T.*1/Fs, F.*Fs, TFR); )应用颜色。
TFTB是一个非常棒的工具箱,它是我从开源第三方Matlab工具箱中看到的最好的文档。在里面挖"refguide.pdf“和"tutorial.pdf”。
https://stackoverflow.com/questions/20750660
复制相似问题