/ Features / Fundamentals / Production / Tutorials / Software / Home
3.6.2 Components: Core Digital Signal Processing Components
Section 3.6.2: Core Digital Signal Processing Components

This subset of the Algorithm library implements basic digital signal processing functions. The components included in this subset can be clustered into three types of analysis: temporal (e.g., Energy, Filter, and Window), frequency domain (e.g., FourierTransform and Spectrum), and statistical (e.g., Prediction, Reflection, and LogAreaRatio).

In terms of software implementations, the classes Filter and Window involve some fairly unique operations since they must deal with multiple frames of data and the history of the signal. Generator is also somewhat unique since it is used to generate user-specified data rather than process input data. The remaining classes are fairly close in terms of implementation and interfaces.

Some examples from each of these clusters are provided below: Section 3.6.2: Core Digital Signal Processing Components

  • Temporal Analysis: operates on multiple frames of signal data and produces time-varying estimates of the signal.

    • Energy: computes the energy using sum of squares or filter-based approaches.

    • Filter: implements finite and infinite impulse response filters, as well as non-causal filters.

    • Window: allows implementation of frame-based analysis with overlap, which is a common technique for time-varying signal analysis.

  • Frequency Domain Analysis: converts a temporal signal to a frequency domain representation.

    • Cepstrum: a homomorphic signal processing technique that converts the signal into a domain in which short-term and long-term variations in the signal can be separated.

    • FourierTransform: implements a variety of techniques for performing Fourier Transforms, including the most effective fast transforms (e.g., Split-Radix, fast Hartley).

    • Spectrum: an umbrella class that encapsulates most of the frequency domain techniques, and provides a uniform interface. This capability is used extensively in many of our front end implementations.

  • Statistical Analysis: uses more advanced techniques such as linear prediction to estimate the parameters of a model for the signal.

    • Correlation: implements crosscorrelation and autocorrelation; used extensively by the linear prediction classes.

    • Prediction: one of several representations for linear prediction coefficients; uses a finite impulse response filter representation for the linear prediction model.

    • Reflection: an alternate linear prediction representation in which a lattice filter structure is used; popular for compression and storage applications.
The theory behind the core digital signal processing classes are described in more detail in our workshop notes on signal processing. We also have several laboratory exercises available to teach you how to program with the algorithm classes.
   
Table of Contents   Section Contents   Previous Page Up Next Page
      Glossary / Help / Support / Site Map / Contact Us / ISIP Home