주요 콘텐츠

timeFrequencyFeatureTransformOptions

Store time-frequency analysis-method information for feature extraction

Since R2026a

    Description

    Use a timeFrequencyFeatureTransformOptions object to store the names of time-frequency features and to specify the corresponding analysis method to use to extract the features. You can use the timeFrequencyFeatureTransformOptions object to set the Transform property of a signalTimeFrequencyFeatureExtractor object.

    Creation

    Description

    opts = timeFrequencyFeatureTransformOptions creates an object opts that stores the feature names supported by the signalTimeFrequencyFeatureExtractor object and the corresponding default time-frequency representations of a signal to extract the features from.

    opts = timeFrequencyFeatureTransformOptions(PropertyName=Value) specifies time-frequency representations using name-value arguments to extract each time-frequency signal feature. You can specify multiple name-value arguments. For example, opts = timeFrequencyFeatureTransformOptions(TFRidges="synchrosqueezedscalogram",InstantaneousEnergy="vmd") specifies "synchrosqueezedscalogram" and "vmd" as the time-frequency representations to extract the time-frequency ridges and the instantaneous energy feature, respectively. For more information about time-frequency analysis methods, see Time-Frequency Gallery.

    example

    Properties

    expand all

    Time-frequency analysis methods for the spectral kurtosis feature, specified as one of these:

    • "spectrogram" — Short-time Fourier transform (STFT)

    • "synchrosqueezedspectrogram" — Fourier synchrosqueezed transform (FSST)

    • "synchrosqueezedscalogram" — Wavelet synchrosqueezed transform (WSST)

    When you enable this signal feature for extraction, the signalTimeFrequencyFeatureExtractor object sets up the feature for extraction using the analysis method specified in this property. You can enable the extraction of signal features when creating the feature extractor object.

    For more information about the spectral kurtosis feature, see spectralKurtosis.

    Example: opts = timeFrequencyFeatureTransformOptions(SpectralKurtosis="synchrosqueezedspectrogram") sets the Fourier synchrosqueezed transform as the time-frequency analysis method to extract the spectral kurtosis feature.

    Data Types: char | string

    Time-frequency analysis methods for the spectral skewness feature, specified as one of these:

    • "spectrogram" — Short-time Fourier transform (STFT)

    • "synchrosqueezedspectrogram" — Fourier synchrosqueezed transform (FSST)

    • "synchrosqueezedscalogram" — Wavelet synchrosqueezed transform (WSST)

    When you enable this signal feature for extraction, the signalTimeFrequencyFeatureExtractor object sets up the feature for extraction using the analysis method specified in this property. You can enable the extraction of signal features when creating the feature extractor object.

    For more information about the spectral skewness feature, see spectralSkewness.

    Example: opts = timeFrequencyFeatureTransformOptions(SpectralSkewness="synchrosqueezedspectrogram") sets the Fourier synchrosqueezed transform as the time-frequency analysis method to extract the spectral skewness feature.

    Data Types: char | string

    Time-frequency analysis methods for the spectral crest feature, specified as one of these:

    • "spectrogram" — Short-time Fourier transform (STFT)

    • "synchrosqueezedspectrogram" — Fourier synchrosqueezed transform (FSST)

    • "synchrosqueezedscalogram" — Wavelet synchrosqueezed transform (WSST)

    When you enable this signal feature for extraction, the signalTimeFrequencyFeatureExtractor object sets up the feature for extraction using the analysis method specified in this property. You can enable the extraction of signal features when creating the feature extractor object.

    For more information about the spectral crest feature, see spectralCrest.

    Example: opts = timeFrequencyFeatureTransformOptions(SpectralCrest="synchrosqueezedspectrogram") sets the Fourier synchrosqueezed transform as the time-frequency analysis method to extract the spectral crest feature.

    Data Types: char | string

    Time-frequency analysis methods for the spectral flatness feature, specified as one of these:

    • "spectrogram" — Short-time Fourier transform (STFT)

    • "synchrosqueezedspectrogram" — Fourier synchrosqueezed transform (FSST)

    • "synchrosqueezedscalogram" — Wavelet synchrosqueezed transform (WSST)

    When you enable this signal feature for extraction, the signalTimeFrequencyFeatureExtractor object sets up the feature for extraction using the analysis method specified in this property. You can enable the extraction of signal features when creating the feature extractor object.

    For more information about the spectral flatness feature, see spectralFlatness.

    Example: opts = timeFrequencyFeatureTransformOptions(SpectralFlatness= "synchrosqueezedspectrogram") sets the Fourier synchrosqueezed transform as the time-frequency analysis method to extract the spectral flatness feature.

    Data Types: char | string

    Time-frequency analysis methods for the spectral entropy feature, specified as one of these:

    • "spectrogram" — Short-time Fourier transform (STFT)

    • "synchrosqueezedspectrogram" — Fourier synchrosqueezed transform (FSST)

    • "synchrosqueezedscalogram" — Wavelet synchrosqueezed transform (WSST)

    When you enable this signal feature for extraction, the signalTimeFrequencyFeatureExtractor object sets up the feature for extraction using the analysis method specified in this property. You can enable the extraction of signal features when creating the feature extractor object.

    For more information about the spectral entropy feature, see spectralEntropy.

    Example: opts = timeFrequencyFeatureTransformOptions(SpectralEntropy= "synchrosqueezedspectrogram") sets the Fourier synchrosqueezed transform as the time-frequency analysis method to extract the spectral entropy feature.

    Data Types: char | string

    Time-frequency analysis methods for the time-frequency ridges feature, specified as one of these:

    • "spectrogram" — Short-time Fourier transform (STFT)

    • "synchrosqueezedspectrogram" — Fourier synchrosqueezed transform (FSST)

    • "synchrosqueezedscalogram" — Wavelet synchrosqueezed transform (WSST)

    When you enable this signal feature for extraction, the signalTimeFrequencyFeatureExtractor object sets up the feature for extraction using the analysis method specified in this property. You can enable the extraction of signal features when creating the feature extractor object.

    For more information about the time-frequency ridge feature, see tfridge.

    Example: opts = timeFrequencyFeatureTransformOptions(TFRidges= "synchrosqueezedspectrogram") sets the Fourier synchrosqueezed transform as the time-frequency analysis method to extract the time-frequency ridges feature.

    Data Types: char | string

    Time-frequency analysis methods for the instantaneous bandwidth feature, specified as one of these:

    • "spectrogram" — Short-time Fourier transform (STFT)

    • "synchrosqueezedspectrogram" — Fourier synchrosqueezed transform (FSST)

    • "synchrosqueezedscalogram" — Wavelet synchrosqueezed transform (WSST)

    When you enable this signal feature for extraction, the signalTimeFrequencyFeatureExtractor object sets up the feature for extraction using the analysis method specified in this property. You can enable the extraction of signal features when creating the feature extractor object.

    For more information about the instantaneous bandwidth feature, see instbw.

    Example: opts = timeFrequencyFeatureTransformOptions(InstantaneousBandwidth= "synchrosqueezedspectrogram") sets the Fourier synchrosqueezed transform as the time-frequency analysis method to extract the instantaneous bandwidth feature.

    Data Types: char | string

    Time-frequency analysis methods for the instantaneous frequency feature, specified as one of these:

    • "spectrogram" — Short-time Fourier transform (STFT)

    • "synchrosqueezedspectrogram" — Fourier synchrosqueezed transform (FSST)

    • "synchrosqueezedscalogram" — Wavelet synchrosqueezed transform (WSST)

    • "emd" — Empirical mode decomposition (EMD)

    • "vmd" — Variational mode decomposition (VMD)

    • "wavelet" — Maximal overlap discrete wavelet transform (MODWT)

    • "waveletpacket" — Maximal overlap discrete wavelet packet transform (MODWPT)

    When you enable this signal feature for extraction, the signalTimeFrequencyFeatureExtractor object sets up the feature for extraction using the analysis method specified in this property. You can enable the extraction of signal features when creating the feature extractor object.

    For more information about the instantaneous frequency feature, see instfreq or hht.

    Example: opts = timeFrequencyFeatureTransformOptions(InstantaneousFrequency= "synchrosqueezedspectrogram") sets the Fourier synchrosqueezed transform as the time-frequency analysis method to extract the instantaneous frequency feature.

    Data Types: char | string

    Time-frequency analysis methods for the instantaneous energy feature, specified as one of these:

    • "emd" — Empirical mode decomposition (EMD)

    • "vmd" — Variational mode decomposition (VMD)

    • "wavelet" — Maximal overlap discrete wavelet transform (MODWT)

    • "waveletpacket" — Maximal overlap discrete wavelet packet transform (MODWPT)

    When you enable this signal feature for extraction, the signalTimeFrequencyFeatureExtractor object sets up the feature for extraction using the analysis method specified in this property. You can enable the extraction of signal features when creating the feature extractor object.

    For more information about the instantaneous energy feature, see hht.

    Example: opts = timeFrequencyFeatureTransformOptions(InstantaneousEnergy= "vmd") sets the variational mode decomposition as the time-frequency analysis method to extract the instantaneous energy feature.

    Data Types: char | string

    Time-frequency analysis method for the mean envelope energy feature, specified as "emd" (empirical mode decomposition).

    When you enable this signal feature for extraction, the signalTimeFrequencyFeatureExtractor object sets up the feature for extraction using the analysis method specified in this property. You can enable the extraction of signal features when creating the feature extractor object.

    For more information about the mean envelope energy feature, see emd.

    Data Types: char | string

    Time-frequency analysis methods for the wavelet entropy feature, specified as one of these:

    • "wavelet" — Maximal overlap discrete wavelet transform (MODWT)

    • "waveletpacket" — Maximal overlap discrete wavelet packet transform (MODWPT)

    When you enable this signal feature for extraction, the signalTimeFrequencyFeatureExtractor object sets up the feature for extraction using the analysis method specified in this property. You can enable the extraction of signal features when creating the feature extractor object.

    For more information about the wavelet entropy feature, see wentropy (Wavelet Toolbox).

    Example: opts = timeFrequencyFeatureTransformOptions(WaveletEntropy= "waveletpacket") sets the maximal overlap discrete wavelet packet transform as the time-frequency analysis method to extract the wavelet entropy feature.

    Data Types: char | string

    Time-frequency analysis method for the time-averaged wavelet spectrum feature, specified as "scalogram" (continuous wavelet transform).

    When you enable this signal feature for extraction, the signalTimeFrequencyFeatureExtractor object sets up the feature for extraction using the analysis method specified in this property. You can enable the extraction of signal features when creating the feature extractor object.

    For more information about the time spectrum feature, see timeSpectrum (Wavelet Toolbox).

    Data Types: char | string

    Time-frequency analysis method for the scale-averaged wavelet spectrum feature, specified as "scalogram" (continuous wavelet transform).

    When you enable this signal feature for extraction, the signalTimeFrequencyFeatureExtractor object sets up the feature for extraction using the analysis method specified in this property. You can enable the extraction of signal features when creating the feature extractor object.

    For more information about the scale spectrum feature, see scaleSpectrum (Wavelet Toolbox).

    Data Types: char | string

    Object Functions

    Examples

    collapse all

    Extract the scalar impulse factor and peak value of the instantaneous energy feature from the variational mode decomposition (VMD) of an oscillating signal.

    Set "vmd" as the time-frequency analysis method to extract the instantaneous energy feature.

    tfOpt = timeFrequencyFeatureTransformOptions(InstantaneousEnergy="vmd")
    tfOpt = 
      timeFrequencyFeatureTransformOptions with properties:
    
              SpectralKurtosis: "spectrogram"
              SpectralSkewness: "spectrogram"
                 SpectralCrest: "spectrogram"
              SpectralFlatness: "spectrogram"
               SpectralEntropy: "spectrogram"
                      TFRidges: "spectrogram"
        InstantaneousBandwidth: "spectrogram"
        InstantaneousFrequency: "spectrogram"
           InstantaneousEnergy: "vmd"
            MeanEnvelopeEnergy: "emd"
                WaveletEntropy: "wavelet"
                  TimeSpectrum: "scalogram"
                 ScaleSpectrum: "scalogram"
    
    

    Set impulse factor and the peak value as the scalarization methods for the instantaneous energy feature.

    scalarOpts = scalarFeatureOptions("timefrequency", ...
        InstantaneousEnergy={'ImpulseFactor';'PeakValue'});

    Create a signalTimeFrequencyFeatureExtractor object to extract vector and scalar values for the instantaneous energy feature from the VMD of a signal.

    tfFE = signalTimeFrequencyFeatureExtractor( ...
        InstantaneousEnergy=true, ...
        Transform=tfOpt,ScalarizationMethod=scalarOpts);

    Extract the vector and scalar features for a voltage-controlled oscillating signal.

    fs = 10000;
    t = 0:1/fs:2;
    x = vco(sawtooth(2*pi*t,0.75),[0.1 0.4]*fs,fs);
    [features,info] = extract(tfFE,x);

    Display the scalar feature values.

    % Impulse Factor of the Instantaneous Energy Vector
    features(info.InstantaneousEnergyVMDImpulseFactor)
    ans = 
    8.7551
    
    % Peak Value of the Instantaneous Energy Vector
    features(info.InstantaneousEnergyVMDPeakValue)
    ans = 
    1.3385
    

    Version History

    Introduced in R2026a