## Documentation Center |

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

If `xr` is a matrix, `x = hilbert(xr)` operates columnwise on the matrix,
finding the Hilbert transform of each column.

`x = hilbert(xr,n)` uses
an

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 the way in which 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.

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.

xr = [1 2 3 4]; x = hilbert(xr)

x = Columns 1 through 3 1.0000 + 1.0000i 2.0000 - 1.0000i 3.0000 - 1.0000i Column 4 4.0000 + 1.0000i

You can see that the imaginary part, `imag(x)` = `[1 -1 -1 1]`,
is the Hilbert transform of `xr`, and the real part, `real(x)` = `[1 2 3 4]`, is
simply `xr` itself. Note that the last half of `fft(x)` = `[10 -4+4i -2 0]` is
zero. (In this example, the last half of the transform is just the
last element.) Also note that the DC and Nyquist elements of `fft(x)`,
10 and -2 respectively, are purely real.

[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., and Ronald W. Schafer. *Discrete-Time
Signal Processing*. 2nd Ed. Upper Saddle River, NJ: Prentice
Hall, 1999.

Was this topic helpful?