The Hilbert Transform - Part 1

This is part one of a multi-part series that defines The Hilbert Transform and its significance.

1. Definition

The Hilbert transform \mathscr{H}[g(t)] of a signal g(t) is defined as

\mathscr{H}[g(t)] = g(t) * \frac{1}{\pi t} = \frac{1}{\pi} \int_{-\infty}^{\infty} \frac{g(\tau)}{t-\tau} d\tau = \frac{1}{\pi} \int_{-\infty}^{\infty} \frac{g(t-\tau)}{\tau} d\tau

The Hilbert transform of g(t) is the convolution of g(t) with the signal 1/t. It is the response to g(t) of a linear time-invariant filter (called a Hilbert transformer) having impulse response 1/t. The Hilbert transform \mathscr{H}[g(t)] is often denoted as \hat{g}(t) or as [g(t)]^\wedge.

A technicality arises immediately. The alert reader will already be concerned with the definition (1) as the integral is improper: the integrand has a singularity and the limits of integration are infinite. In fact, the Hilbert transform is properly defined as the Cauchy principal value of the integral in (1), whenever this value exists. The Cauchy principal value is defined—for the first integral in (1)—as

\mathscr{H}[g(t)] = \frac{1}{\pi} \lim_{\epsilon \to 0^+} \left(\int_{t-1/\epsilon}^{t-\epsilon} \frac{g(\tau)}{t-\tau} d\tau + \int_{t+\epsilon}^{t+ 1/\epsilon} \frac{g(\tau)}{t-\tau} d\tau \right) \cdot

We see that the Cauchy principal value is obtained by considering a finite range of integration that is symmetric about the point of singularity, but which excludes a symmetric subinterval, taking the limit of the integral as the length of the interval approaches \infty while, simultaneously, the length of the excluded interval approaches zero. Henceforth, whenever we write an integral as in (1), we will mean the Cauchy principal value of that integral (when it exists).

2. Some Basic Properties

Some obvious properties of the Hilbert transform follow directly from the definition. Clearly the Hilbert transform of a time-domain signal g(t) is another time-domain signal \hat{g}(t). If g(t) is real-valued, then so is \hat{g}(t).

Linearity: The Hilbert transform is linear, i.e., if a_1 and a_2 are arbitrary (complex) scalars, and g_1(t) and g_2(t) are signals, then

[a_1g_1(t) + a_2g_2(t)]^\wedge = a_1\hat{g}_1(t) + a_2\hat{g}_2(t).

(This follows immediately from the fact that the Hilbert transform is the output of a linear system.)

The Hilbert transform of a constant signal: Note that, for any constant c, the Hilbert transform of the constant signal g(t) = c is \hat{g}(t) = \hat{c} = 0. From linearity it follows that \mathscr{H}[g(t) + c] = \hat{g}(t) + \hat{c} = \hat{g}(t). Thus, like an ideal differentiator, a Hilbert transformer “loses” dc offsets. Later we will define an inverse Hilbert transform which can recover the original signal up to an additive constant (in the same way that integration can undo differentiation only up to an additive constant).

Time-shifting and time-dilation: If g(t) has Hilbert transform \hat{g}, then g(t-t_0) has Hilbert transform \hat{g}(t-t_0), and g(at) has Hilbert transform \text{sgn}(a)\hat{g}(at) (assuming a a\neq0).

Convolution: The Hilbert transform behaves nicely with respect to convolution, since

 [g_1(t)*g_2(t)]^\wedge = \hat{g}_1(t)*g_2(t) = g_1(t)*\hat{g}_2(t).

 To see this, observe from the associative and commutative properties of convolution that [g_1(t)*g_2(t)]*\frac{1}{\pi t} can be written as [g_1(t)*\frac{1}{\pi t}]*g_2(t) or as g_1(t)*[g_2(t)*\frac{1}{\pi t}].

Time-derivative: The Hilbert transform of the derivative of a signal is the derivative of the Hilbert transform, i.e.,


To see this, recall Leibniz’s Integral Rule, which states that

\frac{d}{dc}\int_{a(c)}^{b(c)}f(x,c) dx = \int_{a(c)}^{b(c)}\frac{\partial}{\partial c}f(x,c)dx+f(b,c)\frac{d}{dc} b(c) - f(a,c) \frac{d}{dc}a(c).

In particular, if a and b are definite limits (independent of c), we have

\frac{d}{dc}\int_{a}^{b}f(x,c) dx = \int_{a}^{b}\frac{\partial}{\partial c}f(x,c)dx.


where g'(t)=\frac{d}{dt}g(t).

[1] S. L. Hahn, “Comments on ‘A Tabulation of Hilbert Transforms for Electrical Engineers’,” IEEE Trans. on Commun., vol. 44, p. 768, July 1996.
[2] S. L. Hahn, “Hilbert transforms,” in The Transforms and Applications Handbook (A. Poularakis, Ed.), Boca Raton FL: CRC Press, 2010.


About the author

Frank KschischangFrank R. Kschischang received the B.A.Sc. degree (with honors) from the University of British Columbia, Vancouver, BC, Canada, in 1985 and the M.A.Sc. and Ph.D. degrees from the University of Toronto, Toronto, ON, Canada, in 1988 and 1991, respectively, all in electrical engineering. He is a Professor of electrical and computer engineering at the University of Toronto, where he has been a faculty member since 1991. During 1997–98, he was a visiting scientist at MIT, Cambridge, MA and in 2005 he was a visiting professor at the ETH, Zurich.
His research interests are focused primarily on the area of channel coding techniques, applied to wireline, wireless and optical communication systems and networks. In 1999, he was a recipient of the Ontario Premier’s Excellence Research Award and in 2001 (renewed in 2008) he was awarded the Tier I Canada Research Chair in Communication Algorithms at the University of Toronto. In 2010, he was awarded the Killam Research Fellowship by the Canada Council for the Arts. Jointly with Ralf Koetter, he received the 2010 Communications Society and Information Theory Society Joint Paper Award. He is a Fellow of IEEE and of the Engineering Institute of Canada. During 1997–2000, he served as an Associate Editor for Coding Theory for the IEEE TRANSACTIONS ON INFORMATION THEORY. He also served as technical program co-chair for the 2004 IEEE International Symposium on Information Theory (ISIT), Chicago, and as general co-chair for ISIT 2008, Toronto. He served as the 2010 President of the IEEE Information Theory Society. He is currently serving as Editor-in-Chief of the IEEE Transactions on Information Theory.

If you have enjoyed reading this post, please subscribe to Minutify, so we can send you an email each time a new post is available.