DGTtool
DGTtool for computing STFT/DGT
A simple and user-friendly MATLAB tool for computing the short-time Fourier transform (STFT) and the discrete Gabor transform (DGT). It is designed to be easy and fast for practical use.
The following features of DGTtool might be different from the other tools:
- Parameters are stored inside DGTtool object for user-friendliness.
- All pre-computation runs only once so that repeated computation of DGT/STFT is fast.
- Many computations run in parallel for all channels (for multi-channel signal).
- Perfect reconstruction is very easily realized.
- Number of frequency bins can be smaller than the window length.
- Dual and tight windows can be computed easily.
- Sparse time-frequency representation (reassigned spectrogram) is implemented.
- Phase visualization tool (plotPhase) is implemented.
- STFT/DGT can be written in an operator form.
How to Use
Download DGTtool.m and place it in the Current Folder.
1. Create DGTtool object
Create a DGTtool object F
by specifying its parameters.
F = DGTtool('windowShift',500,'windowLength',1500,'FFTnum',2000,'windowName','Blackman')
(Note: This step can be done without parameters: F = DGTtool
. Unspecified parameters are set to default values.)
2. Compute spectrogram
Compute a spectrogram X
from a signal x
.
X = F(x);
3. Convert spectrogram back to signal
Compute the signal x
from its spectrogram X
.
x = F.pinv(X);
4. Visualize spectrogram
Three visualization functions are implemented. A spectrogram is computed and plotted from a time-domain signal x
(and sampling frequency fs
, optional).
F.plot(x,fs)
F.plotPhase(x,fs)
F.plotReassign(x,fs)
Documentation
To check all functions in DGTtool, please read and run demo.m.
help DGTtool
and
doc DGTtool
provide detailed usage.
Cite As
Yatabe, Kohei. DGTtool. Zenodo, 2021, doi:10.5281/ZENODO.5010751.
Kohei Yatabe (2021). DGTtool (https://github.com/KoheiYatabe/DGTtool), GitHub.
MATLAB Release Compatibility
Platform Compatibility
Windows macOS LinuxTags
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!Discover Live Editor
Create scripts with code, output, and formatted text in a single executable document.
Version | Published | Release Notes | |
---|---|---|---|
1.0.0 |