IQ demodulation is a method to decompose a signal that is modulated with a carrier frequency into a signal , that is in phase with the carrier , and a signal , that has a phase shift:

Complex representation

The in-phase, and quadrature components are often represented as a single complex number:

Note

Note the sign difference between the two!

Performing I/Q demodulation

The most common way to perform I/Q demodulation on sampled data with carrier frequency is as follows:

  1. Compute the analytic signal using the Hilbert transform. The analytic signal is just the signal without the negative frequency components. This means that the analytic signal is complex-valued.
  2. Shift the one-sided spectrum to baseband by multiplying with a signal .
  3. Low-pass filter to remove noise from outside the bandwidth of the signal.
  4. If we then want to perform envelope detection this is as simple as taking the magnitude of the complex valued I/Q signal.

The figure below shows the different stages of the process. The code used to generate this image can be viewed in Google Colab:
Open In Colab