Hilbert transform


Much of digital signal processing requires working with negative frequencies. Negative frequencies in practice do not mean anything and introducing such frequencies in digital signal processing analysis may be troublesome. It is easy to convert a signal that contains negative frequencies into one that does not.

A converter that removes negative frequencies from an analytical signal is called a Hilbert transform.

Consider the following complex signal x(t) which contains both the positive and negative frequencies ω and -ω.

A complex signal consisting of positive and negative frequencies

A good Hilbert transform H(x(t)) is something that would shift the signal by -π / 2 for positive frequencies and by π / 2 for negative frequencies.

Hilbert transform on a complex signal


Removing negative frequencies by adding the Hilbert transform

Thus, a Hilbert transform, multiplied by j and added to the original signal is of analytical interest, as it can be used to convert a signal containing positive and negative frequencies into a signal containing only positive frequencies. This Hilbert transform is also of practical interest, as it shifts all signals of positive frequencies by -π / 2, or a quarter of their cycle.

Finite impulse response (FIR) and infinite impulse response (IIR) filters that work as or at least approximate discrete Hilbert transforms exist. One way to design such a filter is to use its desired frequency response.

Desired frequency response of the Hilbert transform

or, more appropriately, the discrete version (for N odd)

Discrete form of the desired Hilbert transform magnitude response

and to apply the inverse discrete Fourier transform. We get the Hilbert transform

Hilbert transform formula for odd length

When N is even, we can similarly obtain

Hilbert transform formula for even length

In both cases, when N is odd and when N is even, a(k) = 0 for k = 0, 2, 4, ….

For very short transforms (e.g., N = 10), the Hilbert transform can be approximated by

Hilbert transform formula

A Hilbert transform FIR filter of 101 points is shown below.

Hilbert transform filter

The impact of this filter on a simple wave at 100 Hz sampled at 2000 Hz is shown on the figure below. This filter shifts the wave by a quarter of its cycle.

Example impact of the Hilbert transform

Since the filter is finite and thus imperfect, however, it does not preserve the magnitude of all frequencies. The magnitude response of the example filter for the beginning of the frequency spectrum is as follows.

Magnitude response of the Hilbert transform

This filter would exhibit similar loss of amplitude close to half of the sampling frequency. It is a band pass filter. This amplitude loss on both ends would be smaller for filters of larger length, and it would disappear faster for the upper end of the frequency spectrum and slower at the lower end. The magnitude responses of the Hilbert transform filters also show the characteristic Gibbs phenomenon ripples, which can be modified through windowing with the same windows applied to other FIR filters.

Using the Hilbert transform

The fact that the Hilbert transform filter shifts all frequencies of the signal by -π / 2 makes it ideal for use in envelope detection, although the fact that it acts as a band pass filter makes it more interesting in applications that use narrow frequency bands. To produce the amplitude envelope of a signal x(k), we take the Hilbert transform of the signal H(x(k)) and use the computation

Envelope detection formula

The graph below shows a complex signal x(k) sampled at 2000 Hz composed of two simple waves at 100 Hz and 130 Hz with varying amplitude. The amplitude envelope is computed using the formula above.

Envelope detection example

Envelope detectors have many applications. In audio production, envelope detectors are needed in compression or expansion of dynamics.

Rate This Page: Poor Great   |  Rate Content |
Average rating:  4.9   
Number of Ratings : 9
Add Comment
No Comments Yet

Copyright 2006 by Kaliopa Publishing, LLC