I am taking an intro to radar signal processing course and we are discussing the Hilbert Transform and how it take a real input and its output is analytically complex. I'm trying ) how a radar recextracts $p(t)$ and can $q(t)$ frathe in-phase and quadrature phase components ssband signal $t$, (sayo underst)and how and can give insight into amplitude and phase. Could someone shed light on this topic, or perhaps provide a block diagram of how this process works?

  • $\begingroup$ It doesn't "extract" anything. You can use it to mathematically define the analytical signal. How familiar are you with complex baseband? $\endgroup$ Commented Feb 21, 2021 at 17:48
  • $\begingroup$ Just starting to learn, so any info is appreciated $\endgroup$
    – Jun L.
    Commented Feb 21, 2021 at 17:51
  • 1
    $\begingroup$ Ah, OK. So, then, you should really start by learning what the analytical signal is, and what equivalent complex baseband is (Maybe you've heard of I and Q?). The definition of analytical signals is based on the Hilbert transform, and it allows to separate negative from positive frequencies. Complex baseband uses that decomposability to represent a real passband signal around a center frequency as complex signal around the 0 frequency. This is really in every RF/comms textbook and a bit of an overly broad question, if I'm honest. $\endgroup$ Commented Feb 21, 2021 at 17:54

1 Answer 1


First a definition: an analytic signal is one who's negative frequency components are zero.

For a real signal $x(t)$, the Hilbert transform computes the imaginary component of the corresponding analytic signal $x_{a}(t)$:

$$x_{a}(t) = x(t) + jH[x(t)]$$

where $j$ is the imaginary unit and $H[]$ indicates the Hilbert transform.

One way of thinking about this is that analytic signal zeros out the negative frequency portion of the input real signal's frequency domain response. The resulting real part is the "in-phase", I, component, and the imaginary is the "quadrature" or Q component.

Note that in Matlab, Octave, and Python (and perhaps in other numerical toolkits) the hilbert() function does not return the Hilbert transform of the input signal but rather returns the corresponding analytic signal. It is up to the user to extract the Hilbert transform component if that is what is desired.

This all makes most sense in the context of complex baseband representation of passband signals. A complete discussion of which is likely too involved for the StackExchange format.

Thanks to Dan Boschen for his helpful comments.


Your Answer

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

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