Note: This page has been translated by MathWorks. Please click here

To view all translated materials including this page, select Japan from the country navigator on the bottom of this page.

To view all translated materials including this page, select Japan from the country navigator on the bottom of this page.

Discrete-time analytic signal using Hilbert transform

`x = hilbert(xr)`

x = hilbert(xr,n)

`x = hilbert(xr)`

returns
a complex helical sequence, sometimes called the *analytic
signal*, from a real data sequence. The analytic signal `x`

= `xr`

+ `i*xi`

has a real part, `xr`

,
which is the original data, and an imaginary part, `xi`

,
which contains the Hilbert transform. The imaginary part is a version
of the original real sequence with a 90° phase shift. Sines are
therefore transformed to cosines and conversely. The Hilbert transformed
series has the same amplitude and frequency content as the original
sequence and includes phase information that depends on the phase
of the original.

If `xr`

is a matrix, `x = hilbert(xr)`

operates columnwise on the matrix,
finding the analytic signal corresponding to each column.

`x = hilbert(xr,n)`

uses
an `n`

point FFT to compute the Hilbert transform.
The input data `xr`

is zero-padded or truncated to
length `n`

, as appropriate.

The Hilbert transform is useful in calculating instantaneous attributes of a time series, especially the amplitude and frequency. The instantaneous amplitude is the amplitude of the complex Hilbert transform; the instantaneous frequency is the time rate of change of the instantaneous phase angle. For a pure sinusoid, the instantaneous amplitude and frequency are constant. The instantaneous phase, however, is a sawtooth, reflecting how the local phase angle varies linearly over a single cycle. For mixtures of sinusoids, the attributes are short term, or local, averages spanning no more than two or three points. See Hilbert Transform and Instantaneous Frequency for examples.

Reference [1] describes the
Kolmogorov method for minimum phase reconstruction, which involves
taking the Hilbert transform of the logarithm of the spectral density
of a time series. The toolbox function `rceps`

performs
this reconstruction.

For a discrete-time analytic signal, `x`

,
the last half of `fft(x)`

is zero, and the first
(DC) and center (Nyquist) elements of `fft(x)`

are
purely real.

The analytic signal for a sequence `x`

has
a *one-sided Fourier transform*. That is, the transform
vanishes for negative frequencies. To approximate the analytic signal, `hilbert`

calculates
the FFT of the input sequence, replaces those FFT coefficients that
correspond to negative frequencies with zeros, and calculates the
inverse FFT of the result.

In detail, `hilbert`

uses a four-step algorithm:

It calculates the FFT of the input sequence, storing the result in a vector

`x`

.It creates a vector

`h`

whose elements`h(i)`

have the values:1 for

`i`

= 1,`(n/2)+1`

2 for

`i`

= 2, 3, ... ,`(n/2)`

0 for

`i`

=`(n/2)+2`

, ... ,`n`

It calculates the element-wise product of

`x`

and`h`

.It calculates the inverse FFT of the sequence obtained in step 3 and returns the first

`n`

elements of the result.

This algorithm was first introduced in [2].
The technique assumes that the input signal, `x`

,
is a finite block of data. This assumption allows the function to
remove the spectral redundancy in `x`

exactly. Methods
based on FIR filtering can only approximate the analytic signal, but
they have the advantage that they operate continuously on the data.
See Single-Sideband Amplitude Modulation for another example
of a Hilbert transform computed with an FIR filter.

[1] Claerbout, Jon F. *Fundamentals
of Geophysical Data Processing with Applications to Petroleum Prospecting*.
Oxford, UK: Blackwell, 1985, pp. 59–62.

[2] Marple, S. L. “Computing the Discrete-Time
Analytic Signal via FFT.” *IEEE Transactions on Signal
Processing*. Vol. 47, 1999, pp. 2600–2603.

[3] Oppenheim, Alan V., Ronald W. Schafer,
and John R. Buck. *Discrete-Time Signal Processing*.
2nd Ed. Upper Saddle River, NJ: Prentice Hall, 1999.

Was this topic helpful?