luigir86 / DOST-DCST-Stockwell-Transform

This code allows the computation of the discrete orthonormal Stockwell transform (DOST) and the discrete cosine Stockwell transform (DCST) in 1D and 2D. The implemented algorithm is FFT-fast.
GNU General Public License v2.0
14 stars 2 forks source link

Help with DOST - Including Data and Example #1

Open jasonnicholson opened 3 years ago

jasonnicholson commented 3 years ago

First of all, thank you for posting your software!

The Stockwell Transform is very interesting to me. I use the STFT with a hamming window, and I correct the amplitude so that 1 unit of amplitude in the time domain is 1 unit of amplitude in the frequency domain. A sine/cosine wave has the same amplitude in the STFT at the same frequency. This is much more intuitive for Mechanical Engineers than the actual amplitudes of FFT's, windowed FFT's, etc at a particular frequency. While STFT does work, it is clear that in time-frequency analysis, the STFT is old technology. I want to work with the Stockwell Transform to explore its applications and improvements over the STFT. I want to produce spectrogram-like plots. I want to pull out phase, amplitude, and frequency information from the Stockwell Transform.

Attached is a script and some data. I am trying to plot an amplitude vs time and frequency. The challenges are listed below

Thank you for reading. Good luck.

Example.zip

luigir86 commented 3 years ago

Hi Jason, thanks for the questions.

Regarding the first warning: as mentioned in the tutorial the code works for signal of size 2^k. You should pad your signal before calling the dost function with something like this: paddedX = zeros(2^nextpow2(length(x)),1); paddedX(1:length(x)) = x;

Regarding the rearrangeDost function I haven't yet found a solution but I will look into it. Probably your suggestion could work.

Best, Luigi

jasonnicholson commented 3 years ago

Thank you!

Gray-ly commented 2 years ago

Thanks for the share,

Which value can I adjust to change the coefficient of the window function μ and σ, So as to obtain dost with higher resolution?

Thank you for answer. Good luck.