Fast Hilbert Transform VI

Owning Palette: Transforms VIs

Requires: Full Development System

Computes the fast Hilbert transform of the input sequence X.

Details  Example

 Add to the block diagram  Find on the palette
X specifies the number of elements in the data array.
Hilbert{X} is the fast Hilbert transform of the input sequence.
error returns any error or warning from the VI. You can wire error to the Error Cluster From Error Code VI to convert the error code or warning into an error cluster.

Fast Hilbert Transform Details

The Hilbert transform of a function x(t) is defined as

.

Using Fourier identities, you can show the Fourier transform of the Hilbert transform of x(t) is

h(t) H(f) = - j sgn(f) X(f),

where x(t) X(f) is a Fourier transform pair and

The Fast Hilbert Transform VI performs the discrete implementation of the Hilbert transform with the aid of the FFT routines based upon the h(t) H(f) Fourier transform pair by taking the following steps.

  1. Fourier transform the input sequence X
    Y = F{X}
  2. Set the DC component to zero
    Y0 = 0.0
  3. If the sequence Y is an even size, set the Nyquist component to zero
    YNyq = 0
  4. Multiply the positive harmonics by -j.
  5. Multiply the negative harmonics by j. Call the new sequence H, which is of the form
    Hk = –jsgn(k)Yk
  6. Inverse Fourier transform H to obtain the Hilbert transform of X.

Refer to the output format of the Complex FFT instance of the FFT VI for more information.

You use the Hilbert transform to extract instantaneous phase information and obtain the single-sideband spectra, obtain the envelope of an oscillating signal, detect echoes, and reduce sampling rates.

The output sequence Y = Inverse FFT [X] is complex and it is returned in one complex array: Y = (Yre,Yim).

Note  Because the Fast Hilbert Transform VI sets the DC and Nyquist components to zero when the number of elements in the input sequence is even, you cannot always recover the original signal with an inverse Hilbert transform. The Hilbert transform works well with bandpass limited signals, which exclude the DC and the Nyquist components.

Example

Refer to the Echo Detector VI in the labview\examples\Signal Processing\Transforms directory for an example of using the Fast Hilbert Transform VI.

 Open example  Find related examples