Instantaneous phase and frequency

Instantaneous phase and frequency are important concepts in signal processing that occur in the context of the representation and analysis of time-varying functions. The instantaneous phase (also known as local phase or simply phase) of a complex-valued function s(t), is the real-valued function:
 * $$\varphi(t) = \arg\{s(t)\},$$

where arg is the complex argument function. The instantaneous frequency is the temporal rate of change of the instantaneous phase.

And for a real-valued function s(t), it is determined from the function's analytic representation, sa(t):
 * $$\begin{align}

\varphi(t) &= \arg\{s_\mathrm{a}(t)\} \\[4pt] &= \arg\{s(t) + j \hat{s}(t)\}, \end{align}$$ where $$\hat{s}(t)$$ represents the Hilbert transform of s(t).

When φ(t) is constrained to its principal value, either the interval $(−π, π]$ or $[0, 2π)$, it is called wrapped phase. Otherwise it is called unwrapped phase, which is a continuous function of argument t, assuming sa(t) is a continuous function of t. Unless otherwise indicated, the continuous form should be inferred.





Example 1

 * $$s(t) = A \cos(\omega t + \theta),$$

where ω > 0.
 * $$\begin{align}

s_\mathrm{a}(t) &= A e^{j(\omega t + \theta)}, \\ \varphi(t) &= \omega t + \theta. \end{align}$$ In this simple sinusoidal example, the constant θ is also commonly referred to as phase or phase offset. φ(t) is a function of time; θ is not. In the next example, we also see that the phase offset of a real-valued sinusoid is ambiguous unless a reference (sin or cos) is specified. φ(t) is unambiguously defined.

Example 2

 * $$s(t) = A \sin(\omega t) = A \cos\left(\omega t - \frac{\pi}{2}\right),$$

where ω > 0.
 * $$\begin{align}

s_\mathrm{a}(t) &= A e^{j \left(\omega t - \frac{\pi}{2}\right)}, \\ \varphi(t) &= \omega t - \frac{\pi}{2}. \end{align}$$ In both examples the local maxima of s(t) correspond to φ(t) = 2$\pi$N for integer values of N. This has applications in the field of computer vision.

Formulations
Instantaneous angular frequency is defined as:
 * $$\omega(t) = \frac{d\varphi(t)}{dt},$$

and instantaneous (ordinary) frequency is defined as:
 * $$f(t) = \frac{1}{2\pi} \omega(t) = \frac{1}{2\pi} \frac{d\varphi(t)}{dt}$$

where φ(t) must be the unwrapped phase; otherwise, if φ(t) is wrapped, discontinuities in φ(t) will result in Dirac delta impulses in f(t).

The inverse operation, which always unwraps phase, is:
 * $$\begin{align}

\varphi(t) &= \int_{-\infty}^t \omega(\tau)\, d\tau = 2 \pi \int_{-\infty}^t f(\tau)\, d\tau\\[5pt] &= \int_{-\infty}^0 \omega(\tau)\, d\tau + \int_0^t \omega(\tau)\, d\tau\\[5pt] &= \varphi(0) + \int_0^t \omega(\tau)\, d\tau. \end{align}$$

This instantaneous frequency, ω(t), can be derived directly from the real and imaginary parts of sa(t), instead of the complex arg without concern of phase unwrapping.


 * $$\begin{align}

\varphi(t) &= \arg\{s_\mathrm{a}(t)\} \\[4pt] &= \operatorname{atan2}(\mathcal{Im}[s_\mathrm{a}(t)],\mathcal{Re}[s_\mathrm{a}(t)]) + 2 m_1 \pi \\[4pt] &= \arctan\left( \frac{\mathcal{Im}[s_\mathrm{a}(t)]}{\mathcal{Re}[s_\mathrm{a}(t)]} \right) + m_2 \pi \end{align}$$

2m1π and m2π are the integer multiples of π necessary to add to unwrap the phase. At values of time, t, where there is no change to integer m2, the derivative of φ(t) is


 * $$\begin{align}

\omega(t) = \frac{d\varphi(t)}{dt} &= \frac{d}{dt} \arctan\left( \frac{\mathcal{Im}[s_\mathrm{a}(t)]}{\mathcal{Re}[s_\mathrm{a}(t)]} \right) \\[3pt] &= \frac{1}{1 + \left(\frac{\mathcal{Im}[s_\mathrm{a}(t)]}{\mathcal{Re}[s_\mathrm{a}(t)]} \right)^2} \frac{d}{dt} \left( \frac{\mathcal{Im}[s_\mathrm{a}(t)]}{\mathcal{Re}[s_\mathrm{a}(t)]} \right) \\[3pt] &= \frac{\mathcal{Re}[s_\mathrm{a}(t)] \frac{d\mathcal{Im}[s_\mathrm{a}(t)]}{dt} - \mathcal{Im}[s_\mathrm{a}(t)] \frac{d\mathcal{Re}[s_\mathrm{a}(t)]}{dt} }{(\mathcal{Re}[s_\mathrm{a}(t)])^2 + (\mathcal{Im}[s_\mathrm{a}(t)])^2 } \\[3pt] &= \frac{1}{|s_\mathrm{a}(t)|^2} \left(\mathcal{Re}[s_\mathrm{a}(t)] \frac{d\mathcal{Im}[s_\mathrm{a}(t)]}{dt} - \mathcal{Im}[s_\mathrm{a}(t)] \frac{d\mathcal{Re}[s_\mathrm{a}(t)]}{dt} \right) \\[3pt] &= \frac{1}{(s(t))^2 + \left(\hat{s}(t)\right)^2} \left(s(t) \frac{d\hat{s}(t)}{dt} - \hat{s}(t) \frac{ds(t)}{dt} \right) \end{align}$$

For discrete-time functions, this can be written as a recursion:
 * $$\begin{align}

\varphi[n] &= \varphi[n - 1] + \omega[n] \\ &= \varphi[n - 1] + \underbrace{\arg\{s_\mathrm{a}[n]\} - \arg\{s_\mathrm{a}[n - 1]\}}_{\Delta \varphi[n]} \\ &= \varphi[n - 1] + \arg\left\{\frac{s_\mathrm{a}[n]}{s_\mathrm{a}[n - 1]}\right\} \\ \end{align}$$

Discontinuities can then be removed by adding 2π whenever Δφ[n] ≤ −π, and subtracting 2π whenever Δφ[n] > π. That allows φ[n] to accumulate without limit and produces an unwrapped instantaneous phase. An equivalent formulation that replaces the modulo 2π operation with a complex multiplication is:
 * $$\varphi[n] = \varphi[n - 1] + \arg\{s_\mathrm{a}[n] \, s_\mathrm{a}^*[n - 1]\},$$

where the asterisk denotes complex conjugate. The discrete-time instantaneous frequency (in units of radians per sample) is simply the advancement of phase for that sample
 * $$\omega[n] = \arg\{s_\mathrm{a}[n] \, s_\mathrm{a}^*[n - 1]\}.$$

Complex representation
In some applications, such as averaging the values of phase at several moments of time, it may be useful to convert each value to a complex number, or vector representation:

e^{i\varphi(t)} = \frac{s_\mathrm{a}(t)}{|s_\mathrm{a}(t)|} = \cos(\varphi(t)) + i \sin(\varphi(t)). $$

This representation is similar to the wrapped phase representation in that it does not distinguish between multiples of 2π in the phase, but similar to the unwrapped phase representation since it is continuous. A vector-average phase can be obtained as the arg of the sum of the complex numbers without concern about wrap-around.