Scalogram, for Morlet or Mexican hat wavelet.
[TFR,T,F,WT] = tfrscalo(X) [TFR,T,F,WT] = tfrscalo(X, T) [TFR,T,F,WT] = tfrscalo(X, T, WAVE, FMIN,FMAX) [TFR,T,F,WT] = tfrscalo(X, T, WAVE, FMIN,FMAX, N) [TFR,T,F,WT] = tfrscalo(X, T, WAVE, FMIN,FMAX, N, TRACE) [TFR,T,F,WT] = tfrscalo(...,'plot')
tfrscalo computes the scalogram (squared magnitude of a continuous wavelet transform).
signal (in time) to be analyzed (Nx=length(X)). Its analytic version is used (z=hilbert(real(X))).
a real Nt vector with elements in [1 Nx] : time instant(s) on wich the tfr is computed. (default: 1:NX).
half length of the Morlet analyzing wavelet at coarsest scale. If WAVE = 0, the Mexican hat is used. WAVE can also be a vector containing the time samples of any bandpass function, at any scale. (default : sqrt(Nx)).
a positive scalar in ]0 0.5], the normalized lower frequency bound in (Hz) of the analyzed signal. When unspecified, you have to enter it at the command line from the plot of the spectrum.
a positive scalar in ]0 0.5], the normalized upper frequency bound (in Hz) of the analyzed signal. When unspecified, you have to enter it at the command line from the plot of the spectrum.
positive integer: number of analyzed voices. When unspecified, you have to enter it at the command line from the plot of the spectrum.
A boolean (or a real scalar) if true (or nonzero),the progression of the algorithm is shown (default : %f).
if one input parameter is 'plot', tfrqview is called and the time-frequency representation will be plotted.
N by Nt real array: the time-frequency matrix containing the coefficients of the decomposition (abscissa correspond to uniformly sampled time, and ordinates correspond to a geometrically sampled frequency). First row of TFR corresponds to the lowest frequency.
vector of normalized frequencies (geometrically sampled from FMIN to FMAX).
N by Nt complex array containing the corresponding wavelet transform. The scalogram TFR is the square modulus of WT multiplied by a constant factor.
Interactive use
Non-interactive use
N = 128; sig = altes(N,0.1,0.45); T = 1:N; wave = sqrt(N); [fmin, fmax] = (0.1, 0.35); [tfr,t,f,wt] = tfrscalo(sig,T,wave,fmin,fmax,128); clf; gcf().color_map = jetcolormap(128); grayplot(t,f,tfr'); | ![]() | ![]() |