Frequency Contour Measurement
(Release 17 November 2004, for XBAT)
Kathryn A. Cortopassi
SUMMARY
This measurement extracts a frequency versus time (FM) contour, in a specified frequency range, for the given signal. It uses an autoregressive (AR) process model (Kay & Marple 1981) to make estimates of the signal's frequency content over short-time periods, and then a Viterbi-based tracking algorithm (Forney 1973) to connect those estimates into a single smooth frequency contour. Multiple frequency estimates are typically returned for each shorttime period depending on the harmonic structure of the signal. The tracking algorithm connects one estimate from each time interval, returning the best overall contour by minimizing a penalty function based on contour deviation and smoothness (i.e., contour first and second derivatives). Estimates of signal duration, bandwidth, frequency location, and spectral entropy are made using a robust, order statistic based, energy distribution measurement (see the section on this site describing Robust Signal Measurement). AR frequency estimates are made only over the estimated signal duration. A number of summary measurements are returned, which characterize the shape of the estimated FM contour. In addition, the measurement uses the AR model to estimate the first two characteristic frequencies for the signal as a whole.
MEASUREMENT PARAMETER DESCRIPTIONS
|
Parameter Type |
Parameter Name |
Symbol |
Description |
Input Range |
Units |
|
Spectrogram generation |
FFT Size |
N |
Size of Fourier transform to use for spectrogram generation |
4 - 65536 |
points |
|
Data Window Size |
L |
Size of data block to use for generation of individual spectra in spectrogram; this also equals the data length to use for AR frequency estimation |
0 - 1 |
fraction of FFT size |
|
|
Window Function |
win |
Taper function to use for windowing the data blocks for spectrogram generation |
see list below* |
string value |
|
|
Window Overlap Size |
V |
Amount of overlap between current data block and next data block for spectrogram generation; this also equals the data overlap to use for AR frequency estimation |
0 - 1 |
fraction of data size |
|
|
Measurement range |
Standard Range Flag |
-- |
Flag indicating whether to use a standard or signal-specific frequency range for spectrogram bandlimiting and measurement |
'on' / 'off' |
string value |
|
Low Frequency |
F1SPC |
Low end of standard frequency range to use for spectrogram bandlimiting and measurement |
0 - Nyquist |
Hz |
|
|
High Frequency |
F2SPC |
High end of standard frequency range to use for spectrogram bandlimiting and measurement |
0 - Nyquist |
Hz |
|
|
Energy Percent |
P |
Fraction of the total signal energy to use for calculation of the order-statistic based bandwidth / duration measures |
0 - 1 |
fraction |
|
|
Contour Estimation |
Data Length |
|
Set by 'Data Window Size' |
|
|
|
Data Overlap |
|
Set by 'Window Overlap Size' |
|
|
|
|
Number of Poles |
k |
Number of poles to use in AR process model (set to be approximately two times the number of important frequencies components expected in the 0 to Nyquist range ) |
2 - 200 |
-- |
|
|
Pole Magnitude Cutoff |
M |
Threshhold magnitude value (minimum quality) of the frequency estimates to use for contour building (measured as the proximity of the Z-plane estimates (poles) to the unit circle) |
0 - 1 |
-- |
|
|
AR Low Frequency |
F1AR |
Low end of the allowed frequency range to use for connecting estimates into contours (all estimates below this frequency are discarded) |
0 - Nyquist |
Hz |
|
|
AR High Frequency |
F2AR |
High end of the allowed frequency range to use for connecting estimates into contours (all estimates above this frequency are discarded) |
0 - Nyquist |
Hz |
*Window list: 'Bartlett-Hann'; 'Bartlett'; 'Blackman';
'Blackman-Harris'; 'Bohman'; 'Flat Top'; 'Gaussian'; 'Hamming'; 'Hann';
'Nuttall Blackman-Harris'; 'Parzen de la Valle-Poussin'; 'Rectangular';
'Triangular'
MEASUREMENT VALUE DESCRIPTIONS
|
Value Type |
Value Name |
Symbol |
Description |
Units |
|
Bandwidth / Duration |
Duration |
-- |
Estimate of signal duration from order statistics on the spectrogram-based aggregate power envelope using the given energy fraction P (see IPR Time Range in Energy Distribution Measurement) |
sec |
|
Start Time |
-- |
Estimated start time for the signal (see P1 Time in Energy Distribution Measurement) |
sec |
|
|
Bandwidth |
-- |
Estimate of signal bandwidth from order statistics on the spectrogram-based aggregate power spectrum using the given energy fraction P (see IPR Frequency Range in Energy Distribution Measurement) |
Hz |
|
|
Start Frequency |
-- |
Estimated start frequency for the signal (see P1 Frequency Range in Energy Distribution Measurement) |
Hz |
|
|
Entropy |
Entropy |
-- |
Shannon entropy of the signal's aggregate power spectrum over the estimated duration and bandwidth |
|
|
Maximum Entropy |
-- |
Maximum possible value of Shannon entropy for the signal's aggregate power spectrum over the estimated duration and bandwidth |
|
|
|
FM Contour |
Frequency Contour |
-- |
Contour generated using the tracking algorithm and shorttime AR frequency estimates, smoothed |
frequency vs time |
|
Start |
-- |
Start frequency of the smoothed contour |
Hz |
|
|
End |
-- |
End frequency of the smoothed contour |
Hz |
|
|
Minimum |
-- |
Minimum frequency of the smoothed contour |
Hz |
|
|
Maximum |
-- |
Maximum frequency of the smoothed contour |
Hz |
|
|
Peak Time |
-- |
Time at which the contour maximum occurs |
sec |
|
|
Mean |
-- |
Mean frequency of the smoothed contour |
Hz |
|
|
Cumulative Absolute Derivative |
-- |
Sum of the absolute value of the derivatives of the smoothed contour |
Hz / sec |
|
|
Average Absolute Derivative |
-- |
Mean of the absolute value of the derivatives of the smoothed contour |
Hz / sec |
|
|
Inflexion Count |
-- |
Number of inflections, or derivative sign changes, in the smoothed contour |
|
|
|
Formant |
Formant 1 |
-- |
First AR frequency estimate (formant) for the entire signal over the estimated duration and bandwidth |
Hz |
|
Formant 2 |
-- |
Second AR frequency estimate (formant) for the entire signal over the estimated duration and bandwidth |
Hz |
BRIEF DESCRIPTION OF MEASUREMENT PROCEDURE
1) Generate a time-frequency power spectrogram using the specified spectrogram parameters, and bandlimit the spectrogram using the frequency range indicated (standard (F1SPC - F2SPC) or event-specific)
2) Generate an aggregate power versus time envelope by summing the power values in each short-time spectrum of the spectrogram, and an aggregate power versus frequency spectrum by summing the power values in each narrow-band envelope of the spectrogram; extract bandwidth and duration measures from the aggregate power versus time and frequency distributions using the specified energy fraction, P
3) Generate a new aggregate power versus frequency spectrum over the duration measured above, and calculate its Shannon entropy and maximum possible entropy
4) Starting from the original time waveform, use an AR process model with the parameters specified to make a series of estimates (using the time resolution and overlap specified) of the signal's short-time frequency content. Consider estimates only over the duration measured above, and only over the frequency range (F1AR - F2AR) specified. Using a Viterbi-based tracking algorithm, find the best path through the available frequency estimates (which minimizes first and second derivative penalties), to generate an FM contour for the signal.
5) Smooth the extracted FM contour, and summarize its shape by measuring its start, end, etc. frequencies, derivatives, and inflexion count as described
6) Starting from the original time waveform, and using only the duration measured above, estimate the entire signal's frequency content using the AR model. Consider estimates only over the frequency range (F1AR - F2AR) specified. Return the first and second frequency estimates (in ascending order).
REFERENCES
Forney, G. D., Jr. (1973) The Viterbi algorithm. Proceedings of the IEEE, 61(3):268 - 278.
Kay, S. M. & Marple, S. L., Jr. (1981) Spectrum analysis—A modern perspective. Proceedings of the IEEE, 69(11):1380 - 1419.