dsp.AnalyticSignal System object

Package: dsp

Analytic signals of discrete-time inputs

Description

The AnalyticSignal object computes analytic signals of discrete-time inputs. The real part of the analytic signal in each channel is a replica of the real input in that channel, and the imaginary part is the Hilbert transform of the input. In the frequency domain, the analytic signal doubles the positive frequency content of the original signal while zeroing-out negative frequencies and retaining the DC component. The object computes the Hilbert transform using an equiripple FIR filter.

To compute the analytic signal of a discrete-time input:

  1. Define and set up your analytic signal calculation. See Construction.

  2. Call step to compute the analytic signal according to the properties of dsp.AnalyticSignal. The behavior of step is specific to each object in the toolbox.

Construction

H = dsp.AnalyticSignal returns an analytic signal object, H, that computes the complex analytic signal corresponding to each channel of a real M-by-N input matrix.

H = dsp.AnalyticSignal('PropertyName',PropertyValue,...) returns an analytic signal object, H, with each specified property set to the specified value.

H = dsp.AnalyticSignal(order,'PropertyName',PropertyValue,...) returns an analytic signal object, H, with the FilterOrder property set to order and other specified properties set to the specified values.

Properties

FilterOrder

Filter order used to compute Hilbert transform

Specify the order of the equiripple FIR filter used in computing the Hilbert transform as an even integer scalar. The default is 100.

FrameBasedProcessing

Process input as frames or samples

Set this property to true to enable frame-based processing. Set this property to false to enable sample-based processing. The default is true.

Methods

cloneCreate analytic signal object with same property values
getNumInputsNumber of expected inputs to step method
getNumOutputsNumber of outputs of step method
isLockedLocked status for input attributes and nontunable properties
releaseAllow property value and input characteristics changes
resetReset internal states of analytic signal object
stepAnalytic signal

Examples

Compute the analytic signal of a sinusoidal input.

 t = (-1:0.01:1)';
 x = sin(4*pi*t); 
 hanlytc = dsp.AnalyticSignal(200); 
 y = step(hanlytc,x);

 subplot(2,1,1), plot(t, x); 
 title('Original Signal');
 subplot(2,1,2), plot(t, [real(y) imag(y)]); 
 title('Analytic signal of the input')
 legend('Real signal','Imaginary signal',...
    'Location','best');

Algorithms

This object implements the algorithm, inputs, and outputs described on the Analytic Signal block reference page. The object properties correspond to the block parameters.

Both this object and its corresponding block let you specify whether to process inputs as individual samples or as frames of data. The object uses the FrameBasedProcessing property. The block uses the Input processing parameter. See Set the FrameBasedProcessing Property of a System object for more information.

See Also

|

Was this topic helpful?