58
$\begingroup$

I understand the Fourier Transform which is a mathematical operation that lets you see the frequency content of a given signal. But now, in my comm. course, the professor introduced the Hilbert Transform.

I understand that it is somewhat linked to the frequency content given the fact that the Hilbert Transform is multiplying a FFT by $-j\operatorname{sign}(W(f))$ or convolving the time function with $1/\pi t$.

What is the meaning of the Hilbert transform? What information do we get by applying that transform to a given signal?

$\endgroup$

9 Answers 9

51
$\begingroup$

One application of the Hilbert Transform is to obtain a so-called Analytic Signal. For signal $s(t)$, its Hilbert Transform $\hat{s}(t)$ is defined as a composition:

$$s_A(t)=s(t)+j\hat{s}(t) $$

The Analytic Signal that we obtain is complex valued, therefore we can express it in exponential notation:

$$s_A(t)=A(t)e^{j\psi(t)}$$

where:

$A(t)$ is the instantaneous amplitude (envelope)

$\psi(t)$ is the instantaneous phase.


So how are these helpful?

The instantaneous amplitude can be useful in many cases (it is widely used for finding the envelope of simple harmonic signals). Here is an example for an impulse response:

enter image description here

Secondly, based on the phase, we can calculate the instantaneous frequency:

$$f(t)=\dfrac{1}{2\pi}\dfrac{d\psi}{dt}(t)$$

Which is again helpful in many applications, such as frequency detection of a sweeping tone, rotating engines, etc.


Other examples of usage include:

  • Sampling of narrowband signals in telecommunications (mostly using Hilbert filters).

  • Medical imaging.

  • Array processing for Direction of Arrival.

  • System response analysis.

$\endgroup$
0
19
$\begingroup$

In layman terms, the Hilbert transform, when used on real data, provides "a true (instantaneous) amplitude" (and some more) for stationary phenomena, by turning them into "specific" complex data. For instance, a cosine $\cos(t)$ is inherently of amplitude 1, which you do not see directly, since it visually wiggles between $-1$ and $1$, and periodically vanishes. THe Hilbert transform complements the cosine in "the most consistent manner" so that the resulting complex function $\cos(t)+i\sin(t)$ keeps all the initial information, plus its "amplitude" is directly a modulus of 1. All the above requires care, as the notion of band-limitedness and locality come into play.

The Hilbert transform (and the Riesz transform in higher dimensions) might be a more fundamental tool. I do like the prologue of Chapter 2 in Explorations in Harmonic Analysis with Applications to Complex Function Theory and the Heisenberg Group, by Steven G. Krantz:

Prologue: The Hilbert transform is, without question, the most important operator in analysis. It arises in so many different contexts, and all these contexts are intertwined in profound and influential ways. What it all comes down to is that there is only one singular integral in dimension 1, and it is the Hilbert transform. The philosophy is that all significant analytic questions reduce to a singular integral; and in the first dimension there is just one choice.

The applications in signal/image processing are numerous, possibly due to its fundamental properties: instantaneous amplitude/frequency estimation, construction of causal filters for amplitude only (Kramers-Krönig relations), small-redundancy 2D directional wavelets, shift-invariant edge detection, etc.

I would also suggest the two volumes by F. King, 2009, Hilbert transforms.

$\endgroup$
11
$\begingroup$

A transform (FT or Hilbert, etc.) doesn't create new information from nothing. It only represents the information already present in a different way. The "information we get", or the added dimension in the resultant analytic complex signal provided by a Hilbert transform of a 1D/real signal, is a form of summarization of the local environment of each point in that signal, joined to that point.

Information such as local phase and envelope amplitude is really information about some width or extent (up to an infinite extent) of the signal surrounding each local point. The Hilbert transform, in generating one component of a complex analytic signal from a 1D real signal, compacts some information from the surrounding extent of a real signal onto each single (complex) point of the result, thus allowing one to make more decisions (such a demodulating a bit, graphing an envelope amplitude, etc.) at each local (now complex) point or sample, without having to re-scan and/or process a new (wavelet, windowed Goertzel, etc.) window of some width on the signal at each point.

$\endgroup$
3
  • 2
    $\begingroup$ Thanks for this answer. I was a little confused about the need for the Hilbert transform, since it's already possible to extract the amplitude and inst. freq. for a point in the original signal (My understanding: take the abs. value to get the amplitude and use the time difference in a window around the point to get the inst. freq.). But what you say about summarizing this info into a single point makes sense, so I guess the Hilbert transform is mainly used for convenience. $\endgroup$
    – Aralox
    Sep 22, 2016 at 8:12
  • $\begingroup$ @hotpaw2, how is it 'compacting information from the surrounding extent of the signal onto each single point'? I see that the integral will be producing a 'summarization' of the environment, but the domain of the integral is from $-\infty$ to $+\infty$, so how is it local environment? $\endgroup$
    – Vass
    Mar 4, 2019 at 2:44
  • 1
    $\begingroup$ The integral is heavily weighted toward its center. In typical usage, an FFT or FIR implementation will clip the tails of the domain, where they are hopefully below some noise floor. $\endgroup$
    – hotpaw2
    Mar 4, 2019 at 6:55
10
$\begingroup$

The analytic signal produced by the Hilbert transform is useful in many signal analysis applications. If you bandpass filter the signal first, the analytic signal representation gives you information about the local structure of the signal:

  • phase indicates the local symmetry at the point, where 0 is positive symmetric (peak), $\pi$ is negative symmetric (trough), and $\pm \pi/2$ is anti-symmetric (rising / falling edge).
  • amplitude indicates the strength of the structure at the point, independent of the symmetry (phase).

This representation has been used for

  • feature detection via local energy (amplitude)
  • feature classification using phase
  • feature detection via phase congruency

It has also been extending to higher dimensions using the Riesz transform, for example the monogenic signal.

$\endgroup$
9
$\begingroup$

Implementing a Hilbert transform enables us to create an analytic signal based on some original real-valued signal. And in the comms world we can use the analytic signal to easily and accurately compute the instantaneous magnitude of the original real-valued signal. That process is used in AM demodulation. Also from the analytic signal we can easily and accurately compute the instantaneous phase of the original real-valued signal. That process is used in both phase and FM demodulation. Your professor is correct in covering the Hilbert transform because it's so darned useful in comms systems.

$\endgroup$
6
$\begingroup$

Great answers already, but I wanted to add that converting a signal to its analytic version is easy in the digital domain (the half band filter required has half of its coefficients equal to zero), but once there, the sample rate can be cut in half, essentially splitting the processing into real and imaginary paths. Obviously, there is a cost here, and some cross terms need to be handled, but generally it is helpful in hardware implementations when clock rate is a factor.

$\endgroup$
5
$\begingroup$

As already explained in other answers that Hilbert transform is used to get anaytic signal which can be used to find envelope and phase of signal.

Another way of looking Hilbert transform is in frequency domain. As real signal have identical positive and negative frequency components, therefore in analysis this information is redundant.

Hilbert Transform is used to eliminate the negative frequency part and double the magnitude of positive frequency part (to keep power same).

Here, the designed Hilbert Transform filter is band pass in nature that passes frequencies from 50MHz to 450 MHz. The input is sum of two sinusoidal signals having frequencies equal to 200MHz and 500MHz.

From the PSD plot, we can see the negative frequency component of 200MHz signal gets attenuated while 500MHz signal passes as such. enter image description here

$\endgroup$
2
  • $\begingroup$ what do you mean by As real signal have identical positive and negative frequency components, therefore in analysis this information is redundant? That because there is a cycle the complete cycle information is not valuable? What is the negative frequency part that needs to be removed? $\endgroup$
    – Vass
    Mar 4, 2019 at 2:39
  • 1
    $\begingroup$ frequency response of real signals is mirror image across y axis or real part of the frequency response, is an even function of frequency, more details are here on page 8 , web.mit.edu/6.02/www/s2012/handouts/12.pdf $\endgroup$
    – pulkit
    Mar 15, 2019 at 9:13
5
$\begingroup$

This question already has many excellent answers, but I wanted to include this very simple example and explanation from this page that massively cleared up the concept and usefulness of the Hilbert transform:

A signal which has no negative-frequency components is called an analytic signal. Therefore, in continuous time, every analytic signal $ z(t)$ can be represented as

$$\displaystyle z(t) = \frac{1}{2\pi}\int_0^{\infty}Z(\omega)e^{j\omega t}d\omega $$ where $ Z(\omega)$ is the complex coefficient (setting the amplitude and phase) of the positive-frequency complex sinusoid $ \exp(j\omega t)$ at frequency $\omega$ . Any real sinusoid $ A\cos(\omega t + \phi)$ may be converted to a positive-frequency complex sinusoid $ A\exp[j(\omega t + \phi)]$ by simply generating a phase-quadrature component $ A\sin(\omega t + \phi)$ to serve as the ``imaginary part'':

$$\displaystyle A e^{j(\omega t + \phi)} = A\cos(\omega t + \phi) + j A\sin(\omega t + \phi) $$ The phase-quadrature component can be generated from the in-phase component by a simple quarter-cycle time shift. For more complicated signals which are expressible as a sum of many sinusoids, a filter can be constructed which shifts each sinusoidal component by a quarter cycle. This is called a Hilbert transform filter. Let $ {\cal H}_t\{x\}$ denote the output at time $ t$ of the Hilbert-transform filter applied to the signal $ x$ . Ideally, this filter has magnitude $ 1$ at all frequencies and introduces a phase shift of $ -\pi/2$ at each positive frequency and $ +\pi/2$ at each negative frequency. When a real signal $ x(t)$ and its Hilbert transform $ y(t) = {\cal H}_t\{x\}$ are used to form a new complex signal $ z(t) = x(t) + j y(t)$ , the signal $ z(t)$ is the (complex) analytic signal corresponding to the real signal $ x(t)$ . In other words, for any real signal $ x(t)$ , the corresponding analytic signal $ z(t)=x(t) + j {\cal H}_t\{x\}$ has the property that all ''negative frequencies'' of $ x(t)$ have been ''filtered out.''

(Disclaimer: I am not the author of the page)

$\endgroup$
1
  • 1
    $\begingroup$ I don't understand complicated signals which are expressible as a sum of many sinusoids, a filter can be constructed which shifts each sinusoidal component by a quarter cycle, why would this be performed? What is the motivation and practical value? $\endgroup$
    – Vass
    Mar 4, 2019 at 2:36
0
$\begingroup$

Hilbert Transform: If you have a sampled signal (equally spaced values of amplitude, of a time domain signal stored in an ARRAY), then the HILBERT transform provides the original timedomain signal (shifted by 90 degrees). It is up to you if you need to keep an array of the original signal and the shifted signal in a different ARRAY. The original and the Hilbert-transformed signal are ORTHOGONAL. (and if you have an applicatoin where the "I" and "Q" of a signal is required to process a signal), then the Hilbert transform gets you those 2 signals.

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.