v2.0.0
Loading...
Searching...
No Matches
spectrogram.h
Go to the documentation of this file.
1//=============================================================================================================
27
28#ifndef SPECTROGRAM_H
29#define SPECTROGRAM_H
30
31//=============================================================================================================
32// INCLUDES
33//=============================================================================================================
34
35#include "dsp_global.h"
36
37//=============================================================================================================
38// EIGEN INCLUDES
39//=============================================================================================================
40
41#include <Eigen/Core>
42
43//=============================================================================================================
44// DEFINE NAMESPACE UTILSLIB
45//=============================================================================================================
46
47namespace UTILSLIB
48{
49
54 Eigen::VectorXd vecInputData;
55 quint32 iRangeLow;
56 quint32 iRangeHigh;
58};
59
64{
65
66public:
67 //=========================================================================================================
76 static Eigen::MatrixXd makeSpectrogram(Eigen::VectorXd signal,
77 qint32 windowSize);
78
79private:
80 //=========================================================================================================
90 static Eigen::VectorXd gaussWindow (qint32 sample_count,
91 qreal scale,
92 quint32 translation);
93
94 //=========================================================================================================
102 static Eigen::MatrixXd compute(const SpectogramInputData& data);
103
104 //=========================================================================================================
111 static void reduce(Eigen::MatrixXd &resultData,
112 const Eigen::MatrixXd &data);
113};
114}//namespace
115
116#endif // SPECTROGRAM_H
117
Export/import macros and namespace declaration for the DSP library.
#define DSPSHARED_EXPORT
Definition dsp_global.h:50
Shared utilities (I/O helpers, spectral analysis, layout management, warp algorithms).
Input parameters for short-time Fourier transform spectrogram computation.
Definition spectrogram.h:53
Computes time-frequency spectrograms via short-time Fourier transform with configurable window and ov...
Definition spectrogram.h:64
static Eigen::MatrixXd makeSpectrogram(Eigen::VectorXd signal, qint32 windowSize)