Extracting instantaneous amplitude,phase,frequency – application of Analytic signal/Hilbert transform

1 Star2 Stars3 Stars4 Stars5 Stars (3 votes, average: 4.33 out of 5)
Loading...

Pre-requisites

Sampling theorem – baseband sampling
How to Interpret FFT results – complex DFT, frequency bins and FFTShift
Analytic signal, Hilbert Transform and FFT

Related topic:

Phase demodulation using Hilbert transform – application of analytic signal

Introduction

The concept of instantaneous amplitude/phase/frequency are fundamental to information communication and appears in many signal processing application. We know that a monochromatic signal of form \(x(t) = a cos(\omega t + \phi) \) cannot carry any information. To carry information, the signal need to be modulated. Take for example the case of amplitude modulation, in which a positive real-valued signal \(m(t)\) modulates a carrier \(cos(\omega_c t)\). That is, the amplitude modulation is effected by multiplying the information bearing signal \(m(t)\) with the carrier signal \(cos(\omega_c t)\).
$$ x(t) = m(t)  cos\left(\omega_c t\right)$$
Here, \(\omega_c\) is the angular frequency of the signal measured in radians/sec and is related to the temporal frequency \(f_c\) as \(\omega_c = 2 \pi f_c \). The term \(m(t)\) is also called instantaneous amplitude.

Similarly, in the case of phase or frequency modulations, the concept of instantaneous phase or instantaneous frequency is required for describing the modulated signal.
$$ x(t) = a  cos \left(\phi(t) \right)$$
Here, \(a\) is the constant amplitude factor (no change in the envelope of the signal) and \(\phi(t)\) is the instantaneous phase which varies according to the information. The instantaneous angular frequency is expressed as the derivative of instantaneous phase.
$$ \omega(t) = \frac{d}{dt} \phi(t) $$
$$ f(t) = \frac{1}{2 \pi} \frac{d}{dt} \phi(t) $$

Definition

Generalizing these concepts, if a signal is expressed as
$$ x(t) = a(t)  cos\left(\phi(t) \right) $$

  • The instantaneous amplitude or the envelope of the signal is given by \(a(t)\)
  • The instantaneous phase is given by  \(\phi(t)\)
  • The instantaneous angular frequency is derived as \(\omega(t) = \frac{d}{dt} \phi(t) \)
  • The instantaneous temporal frequency is derived as \(f(t) = \frac{1}{2 \pi} \frac{d}{dt} \phi(t) \)

Problem statement

An amplitude modulated signal is formed by multiplying a sinusoidal information and a linear frequency chirp. The information content is expressed as \(a(t) = 1 + 0.7 \; sin \left( 2 \pi 3 t\right) \) and the linear frequency chirp is made to vary from \(20 \; Hz\) to \(80 \; Hz\). Given the modulated signal, extract the instantaneous amplitude (envelope), instantaneous phase and the instantaneous frequency.

Solution

We note that the modulated signal is a real-valued signal. We also take note of the fact that amplitude/phase and frequency can be easily computed if the signal is expressed in complex form. Which transform should we use such that the we can convert a real signal to the complex plane without altering the required properties ?? Answer: Apply Hilbert transform and form the analytic signal on the complex plane.  Figure 1 illustrates this concept.

 Converting a real-valued signal to complex plane using Hilbert Transform
Figure 1: Converting a real-valued signal to complex plane using Hilbert Transform

If we express the real-valued modulated signal \(x(t)\) as an analytic signal, it is expressed in complex plane as
$$ z(t) = z_r(t) + j z_i(t)  = x(t) + j HT \left[ x(t) \right] $$
where, \(HT[]\) represents the Hilbert Transform operation. Now, the required parameters are very easy to obtain.

The instantaneous amplitude (envelope extraction) is computed in the complex plane as
$$ a(t) = |z(t)| =  \sqrt{z_r^2(t) + z_i^2(t)} $$

The instantaneous phase is computed in the complex plane as
$$\phi(t) = \angle z(t) = arctan \left[  \frac{z_i(t)}{z_r(t)}  \right]$$

The instantaneous temporal frequency is computed in the complex plane as
$$ f(t) = \frac{1}{2 \pi} \frac{d}{dt} \phi(t) $$

Once we know the instantaneous phase, the carrier can be regenerated as \(cos[\phi(t)]\). The regenerated carrier is often referred as Temporal Fine Structure (TFS) in Acoustic signal processing [1].

Matlab

Python

Results

 Amplitude modulation using a chirp signal and extraction of envelope and TFS
Figure 2: Amplitude modulation using a chirp signal and extraction of envelope and TFS
1 Star2 Stars3 Stars4 Stars5 Stars (3 votes, average: 4.33 out of 5)
Loading...

Reference

[1] Moon, Il Joon, and Sung Hwa Hong. “What Is Temporal Fine Structure and Why Is It Important?” Korean Journal of Audiology 18.1 (2014): 1–7. PMC. Web. 24 Apr. 2017.

  • Pingback: Phase demodulation using Hilbert transform – application of analytic signal – GaussianWaves()

  • Vitor Lopes Garcia

    Great article! It helped me to understand better how Hilbert Transform works, but I have a doubt about the instantaneous phase. Applying a modulating signal m(t) in a carrier cossine (doing the Phase Modulation) like this: x(t) = Cos(wt + m(t)), where w = 2*pi*f and t = time. If I use the Hilbert Transform to get the instantaneous phase of the analytic signal using the commands in matlab:
    z = hilbert(x);
    inst_phase = unwrap(angle(z));
    phase = inst_phase – wt;

    Am I demodulating the signal x(t) and getting just the signal m(t)? If I am not doing it, what should I do to demodulate a signal in phase after apply the Hilbert Transform? Thank you very much 🙂

    • You are absolutely right. What you have described is the essence of phase demodulation using hilbert transform. May be I can draft another article with Matlab examples for others to understand. Thanks for your comment.

      • Vitor Lopes Garcia

        Hey Mathuranathan! First or all, thank you very much for your reply! Oh yes! It would be really great if you could make another article with Matlab examples of Phase Demodulation using the Hilbert Transform. I am using that code on Matlab and using some modulating signals m(t) like cossines, square waves and Sawtooth waves just for examples of Phase Modulation/Demodulation, but, unfortunetely, I just can extract a line when I plot the phase signal.

        Once again, thank you very much to share this knowledge for us:)

  • Pingback: Analytic signal, Hilbert Transform and FFT – GaussianWaves()