Signal hilbert transformation
By Martin on Regards: education; Article; python; sip;The hilbert transform
This text is from the category SIP (Signal and image processing). Previous text signal filtering
Signals in the time domain are dynamic as the time series is changing in time. if we transform them to the frequency domain we lose this time component. now the time series is expressed by a sum of oscillations and every oscillation is time invariant as it has a fixed amplitude and a fixed phase. the linear superposition of all the oscillations generates the time series.
The hilbert transformation is a convention to construct (or “reconstruct”) the complex signal from the projection of its real valued part. It is assuming that the complex valued signal is a projection of the real axis.
The fourier transform gives a spectrum decomposition which is constant in time. Oscillation that change amplitude and phase instantaneous.
Assume that |Z(t)| and $\frac{d \sphericalangle Z(t)}{dt}$ are constant and considered the projection of Z(t) onto the real axis: Re{Z(t)}=Z(t)
By the hilbert transform we aim to reconstruct a complex-valued signal from its projection to the real axis.
computation of hilbert transformation:
- Take original signal go in frequency domain and calculate X(ω) using the d(t)ft
- and then double the amplitude for the positive frequencies and set all amplitues of the negative frequencies to zero
- Then we have spectrum of our analytics signal
- go back to time domain (inverse d(t)ft) and the result would be the complex time signal
z[n] = x[n] + j ⋅ zi[n]
Z(ω) = X(ω) + jZi(ω)
Z(ω) = X(ω) + jZi(ω)
$Z(\omega)=X(\omega)+\overbrace{jH(\omega) \cdot Z(\omega)}^{Z_i(\omega)}$
$H(\omega)=\begin{cases} e^{-j\frac{\pi}{2}}=-j; 0\leq\omega\leq\pi \\ e^{j\frac{\pi}{2}}=j; -\pi<\omega<0 \end{cases}$
$Z(\omega)=\begin{cases} 2X(\omega); 0\leq\omega\leq\pi \\ 0; -\pi<\omega<0 \end{cases}$
Practical implementation
How to apply hilbert transform to a real valued signal:
- band pass-filter x[n] in the frequency range of interested
- compute X(ω) via the d(t)ft
- Set all X(ω) = 0 for all ω <0 and rescale X(ω) by a factor of two for all ω >= 0
- compute the inverse d(t)ft to obtain the analytic signal z[n]
- instantaneous amplitude |Z(t)|
- instantaneous phase ∢Z(t)
- instantaneous frequency $\frac{d \sphericalangle Z(t)}{dt}$
Continue to Discrete cosine transform
Sources:
- transcript of course signal image processing