InTech-Hilbert Transform and Applications
InTech-Hilbert Transform and Applications
InTech-Hilbert Transform and Applications
www.intechopen.com
292 2
which states that real part of the extended function is equal to the original given function f ( x ) on the real line. The companion function g( x ) is called the Hilbert transform of f ( x ). This simple example brings forth a few questions. First, is analytic extension always possible for reasonably smooth f ( x )? If so, is the companion function g( x ) unique, in the sense that Eq. (1) would hold? The answer to the second question is a denite No, because any f c ( x ) = f ( x ) + i { g( x ) + g0 } also satises Eq. (1), where g0 is an arbitrary constant. Therefore, the original simple quest needs to be rened as follows.
2.1 Hilbert transform as a boundary-value problem
To establish the uniqueness of the companion function, we rst note that any analytic function f ext (z) = f R (z) + i f I (z) dened on the complex plane z = x + iy must satisfy Cauchy-Riemann equations, fR f = I, x y f fI = R. x y Consequently, both f R and f I satisfy Laplaces equation, 2 FR 2 FR + = 0, x2 y2 2 FI 2 FI + =0 2 x y2 (2) (3)
over the region where f ext (z) is analytic. Conventionally, by requiring f ext (z) to be analytic in the upper half-plane, the quest of nding the Hilbert transform for any given function f ( x ) can be formulated as a boundary value problem (Scott, 1970). By specifying the boundary conditions that f R ( x, 0) = f ( x ), and that f R ( x, y) = 0 as x or y , f R ( x, y) can be uniquely determined by solving Laplaces equation (Eq. 2) in the upper half plane. Then, through Cauchy-Riemann equations, f I ( x, y) can be calculated in the entire upper half plane and in particular on its boundary the x-axis (Scott, 1970). Thus g( x ) = FI ( x, 0) is the Hilbert transform of the given function f ( x ).
2.2 Calculation through improper integrals
The above formulation of Hilbert transform as a boundary-value problem is hardly mentioned in recent texts [except as an exercise problem in Oppenheim & Schafer (2010)].1 : Instead,
The boundary-value-problem formulation is missing for a reason it does not tell us how to compute the Hilbert transform.
www.intechopen.com
293 3
Here, note that the convolution kernel function h( x ) = 1/ x is singular at x = 0. Therefore, the integral in Eq. 4 is improper in the sense of Cauchys principal value: g( x ) = lim
x
Hilbert transform is commonly introduced and dened through an improper integral [e.g., (Hahn, 1996)]: 1 1 g( x ) = du. (4) f (u) xu
x +
f (u) h( x u)du.
(5)
To be convinced that Eq. 4 indeed produces the Hilbert transform, we need to think about the effects of Hilbert transform in the frequency domain. First, for any frequency k, note that the Hilbert transform of f k ( x ) = cos(kx ) is gk ( x ) = sin(kx ). So, we can understand Hilbert transform as a phase shifter which gives every sinusoidal function 90 degrees of phase shift. Therefore, in the frequency domain, we have G (k) = F (k) (i sgn(k)) , (6)
where G (k ) and F (k) are the Fourier transform of g( x ) and f ( x ), respectively, and sgn( x ) is the sign function (i.e., sgn(k) = 1 if k > 0 and sgn(k) = 1 if k < 0.) Therefore, if we think of H (k) = i sgn(k) as the transfer function of a phase-shift kernel h( x ), the kernel can be written as the inverse Fourier transform of the transfer function; that is, h( x ) =
1 H (k)eikx dk. 2
(7)
Note that H (k) = i for k > 0 and H (k) = i for k < 0. Therefore, H (k)s rst derivative with respect to k is H = 2i ( k ) , (8) k where (k) is the Dirac delta function. Since the operator /k in the frequency domain corresponds to multiplication by ix in the space domain, we can take the inverse Fourier transform on both sides of Eq. 8 and obtain the following,
ix h( x ) = 2i
1 (k)eikx dk 2
i .
(9)
The phase-shifter interpretation of Hilbert transform leads to the fact that if f ( x )s Hilbert transform is g( x ), then g( x )s Hilbert transform is f ( x ); in this sense, f ( x ) and g( x ) form a Hilbert transform pair. This symmetric property can be understood as follows. Note that the H 2 (k) = 1 for all k since H (k) = i. This means that if we take the Hilbert transform twice, the result would be the original function with a negative sign.
www.intechopen.com
294 4
This makes sense because Hilbert transform introduces a 90-degree phase shift to all simple harmonics. Therefore, Hilbert transform repeated twice introduces a 180-degree phase shift to all simple harmonics, which means multiplication of the original function by 1. A table of commonly used Hilbert transform pairs can be found in the Appendix of Hahn (1996) for applications in signal processing. A thorough 80-page table of Hilbert transform pairs can be found in the Appendix of King (2009b) and transform pairs are also plotted in a 20-page atlas.
2.4 The convolution kernel h( x ) as the Hilbert transform of ( x )
We now introduce another way to derive the convolution kernel of Hilbert transform. To begin, note that Eq. 5 essentially states that Hilbert transform is a ltering process which is characterized by its impulse response h( x ). Therefore, h( x ) must be regarded as the Hilbert transform of the impulse function ( x ). Then, it is of our interest to check that f c ( x ) = ( x ) + ih( x ) can be regarded as an analytic function in the sense of Eq. 1. To see it, consider a family of complex analytic functions f (z) = i / (z + i ) parametrized by a variable > 0. Since the only singularity of f (z) is at z = i , f (z) is analytic in the entire upper half plane. Therefore, the real part and imaginary part of f (z) form a Hilbert transform pair on the real line x R. With a little algebra, the real and imaginary parts can be written as f (x) = where f R (x) = and f I (x) = form a Hilbert transform pair for any > 0. Now we let approach zero and observe f R ( x ) and f I ( x ). Note that f R ( x )dx = 1 regardless of the value of , and that f R (0) = 1/ approaches innity as 0. So we can claim that lim f R ( x ) = ( x ). (11)
0
i = f R ( x ) + i f I ( x ), ( x + i ) ( x2 + 2 ) x ( x2 + 2 )
(10)
lim f I ( x ) = 1/ x.
(12)
From the arguments above, we can be convinced that the Hilbert transform of ( x ) is indeed 1/ x, for f c ( x ) = ( x ) + i (1/ x ) is equal to the limit function of f ( x ) as 0 (Scott, 1970).
www.intechopen.com
295 5
T is the sampling period. In this section, we denote the sampled waveform as x [n] = x (nT ), using the square brackets [] to indicate that the signal is sampled in discrete time. So the discrete-time Fourier transform (DTFT) is dened as follows:2
X ( j ) =
n=
x [ n] e j n .
Note that X ( j ) is periodic at every 2 in the frequency domain.3 Next, we show how Hilbert transform can be dened in discrete time.
3.1 The discrete-time Hilbert transform and Hilbert transformers
Recall that the Hilbert transform introduce a 90-degree phase shift to all sinusoidal components. In the discrete-time periodic-frequency domain, the transfer function of Hilbert transform is specied as follows, H ( j ) =
j, j,
0<<
< < 0
(13)
The convolution kernel for H ( j ) can be calculated through inverse Fourier transform (Oppenheim & Schafer, 2010): h[n] =
1 H ( j )e j n d 2
2 2 sin ( n) , n
(14) (15)
n=0 n=0
0,
Note that h[n] has a innite support from n = to . In practice, the entire function can not be stored digitally. To circumvent this difculty, we now discuss two major methods for calculating the discrete-time Hilbert transform.
3.1.1 The MATLAB approach
The universally popular scientic-computing software MATLAB (MathWorks, Natick, Massachusetts, USA) has a hilbert() function that computes the so-called discrete-time analytic signal X = Xr + i*Xi such that Xi is the Hilbert transform of Xr.4 MATLABs implementation of the hilbert() function takes advantage of the fast Fourier transform (FFT). Essentially, the hilbert() function completes the calculation in three steps: Do the FFT of Xr. Set the elements in FFT which correspond to frequency < < 0 to zero. Do the inverse FFT.
2 3 4
We now switch to the electrical-engineering convention of using j to refer to 1. Hereafter, we use capital letters X , Y , Z, H , ... to denote spectrums in the frequency domain, and lowercase letters x, y, z, h for signals in the time domain. This is what MATLABs help le shows.
www.intechopen.com
296 6
That the three steps above can work is a consequence of the fact that, if xi [n] is the discrete Hilbert transform of xr [n], the Fourier transform of xr [n] + jxi [n] vanishes for all negative frequencies < < 0. This can be veried by inspecting the denition given in Eq. 13. Remarks: Perhaps because of MATLABs popularity and easiness to use, many have allegedly mis-regard the returned vector X=hilbert(Xr) as the Hilbert transform of Xr. One must be aware of these deviations from the conventional denition to avoid unnecessary confusion.
3.1.2 Hilbert transform as a lter design problem
Thanks to FFT, MATLABs implementation of Hilbert transform is very efcient. However, it should be used with caution note that the Hilbert transform dened in Eq. 13 has a discontinuity at = 0. Consequently (due to Gibbs phenomenon), the convolution kernel h[n] in Eq. 15 has an innite support in time. As a result, when implemented through FFT, the Hilbert transform kernel wraps around itself and time-domain aliasing comes in (Oppenheim & Schafer, 2010). The time-domain aliasing could be perceived as artifacts in applications such as audio and video signal processing. To avoid time-domain aliasing, one can formulate discrete Hilbert transform as a lter-design problem. The ideal transfer function is specied by Eq. 13, and there are standard techniques to design nite impulse response (FIR) or innite impulse response (IIR) lters that appraoch the ideal transfer function. For example, one can truncate the ideal impulse response by multiplying it with a window function w[n] which has a nite support (lets say from n = N to N ). Then the resulting function w[n] h[n] yields an approximate magnitude response Hw ( j ) that has a smooth transition between negative and positive frequencies as well as ripples in both regions. The height of the ripples can be reduced by selecting the window function wisely, while the transition bandwidth is inversely proportional to the window length. Interested readers can refer to Chapter 7 and 12 of Oppenheim & Schafer (2010). The FIR or IIR lters designed to approximate Hilbert transform are called Hilbert transformers. Next, we discuss applications of Hilbert transformers in communication and in biomedical engineering.
3.2 Sampling of bandpass signals for communication
An important application of Hilbert transformers is in sampling bandpass signals.5 To explain this, let us assume that a bandpass signal s(t) is has a region of support f c f f c + f in the frequency domain, where f = 0.2 f c . Based on Nyquists theorem, the sampling rate needs to be at least two times the highest frequency, or 2.4 f c , to avoid frequency-domain aliasing. However, the bandwidth of this signal is really f = 0.2 f c , so f s = 2.4 f c is in fact an oversampling. To take advantage of the narrow bandwidth, we initially need to sample at 2.4 f c to obtained an oversampled signal sr [n] = s(nT ), where T = 1/ f s . Then, we can use a Hilbert transformer to obtain si [n] such that the Fourier transform of s[n] = sr [n] + jsi [n] has no components at negative frequencies < < 0. Now, S( j )s region of support is (5 /6, ). Therefore, we can down sample s[n] by a factor of 6 and there would be no frequency-domain aliasing.
5
This part is adapted from Sec. 12.4.3 of Oppenheim & Schafer (2010)
www.intechopen.com
297 7
Transmitting sd [n] = s[6n] is more efcient than transmitting sr [n] because the sampling rate is lowered. To reconstruct sr [n] from sd [n], we can do the following: Expand sd [n] by a factor of 6; i.e., construct se [n] = sd [n/6], 0, if n = 0, 6, 12, ... otherwise.
Filter se [n] with the passband of (5 /6, ). Take the real part, and the result is a reconstructed copy of sr [n]. In practice, since all Hilbert bandpass lters are not ideal, one needs to consider sampling at slightly higher than 2.4 f c . That would protect the passband from ripple interference both during downsampling and during signal reconstruction.
3.3 AM-FM decomposition for auditory prostheses
A cochlear implant device consists of up to tens of electrodes which are inserted as an array to the cochlea to stimulate auditory nerves by electrical currents (Zeng et al., 2008). Each channel (electrode) represents an acoustic frequency band; the amount of currents sent to an electrode should faithfully reect how acoustic energy entering through the ear microphone varies in time in the corresponding frequency band. Typically, acoustic waveforms are processed with a bank of lters and the resulting envelopes control the electrical currents sent to individual electrodes. In this application scenario, a Hilbert transformer has been found useful for envelope extraction. This can be understood by noting that the Hilbert transform produces a sin( t) for every cos( t). For a narrow-band signal s R (t), we can factor it as a product of slow-varying envelope A(t) and fast-varying ne structure f (t): s R (t) = A(t) f (t) = A(t) cos[(t)] where d(t)/dt can be regarded as an instantaneous frequency of the signal. It can be shown that, if A(t) varies sufciently slowly, the Hilbert transform produces approximately s I (t) = A(t) sin[(t)]. Then, the envelope A(t) can simply be estimated by taking the root of sum of squares: A(t)
2 s2 R ( t ) + s I ( t ).
(16)
Clinically, encoding the currents based on A(t) provides clear speech perception for cochlear-implant users (Nie et al., 2006). Moreover, auditory pitch information can be extracted by taking the time-derivation of (t), which can be determined by the relative phase between s I and s R : s I (t) . (t) = tan1 s R (t) Pitch is arguably the utmost important feature for music perception as well as understanding tonal languages. Here, we see Hilbert transform can serve as an efcient computation tool to extract it.
www.intechopen.com
298 8
It turns out that, for any given magnitude response, the uniqueness of phase response can be established if the transfer function satises a minimum-phase criterion; the criterion requires
6
( t ) = h ( t ). in fact, h
www.intechopen.com
299 9
that all zeros and poles of the transfer function H (s) to be located in the left-half plane. This criterion ensures that all the singularities of log H (s) are located in the left-half plane so the real and imaginary parts of log H (s) become a Hilbert transform pair. Otherwise, any transfer function can be uniquely factorized as a product of a minimum-phase function M ( j ) and an all-pass function P( j ). It is noteworthy that the system whose transfer function is M( j ) has the minimal energy delay among all linear time-invariant systems of the same magnitude response. Further readings are recommended in Chapter 5 and 12 of Oppenheim & Schafer (2010).
6. Acknowledgement
This work is supported by Taiwans National Science Council through research grant No. 100-2221-E-007-011.
7. References
Hahn, S. L. (1996). Hilbert Transforms in Signal Processing, Artech House, Inc., Norwood, MA, USA. Hardy, G. H. (1932). On hilbert transforms, Quart. J. Math. (Oxford) 3: 102112. King, F. W. (2009a). Hilbert Transforms, Vol. 1, Cambridge University Press, Cambridge, UK. King, F. W. (2009b). Hilbert Transforms, Vol. 2, Cambridge University Press, Cambridge, UK.
www.intechopen.com
300 10
Liu, Y.-W. & Smith, J. O. (2002). Perceptually similar orthogonal sounds and applications to multichannel acoustic echo canceling, Proc. Audio Eng. Soc. 22nd Int. Conf., Espoo, Finland. Nie, K., Barco, A. & Zeng, F.-G. (2006). Spectral and temporal cues in cochlear implant speech perception, Ear Hear. 27: 208217. Oppenheim, A. V. & Schafer, R. W. (2010). Discrete-Time Signal Processing, 3rd Edition, Pearson, Boston. Potamianos, A. & Maragos, P. (1994). A comparison of the energy operator and the hilbert transform approach to signal and speech demodulation, Signal Processing 37(1): 95 120. Recio-Spinoso, A., Fan, Y.-H. & Ruggero, M. (2011). Basilar-membrane responses to broadband noise modeled using linear lters with rational transfer functions, Biomedical Engineering, IEEE Transactions on 58(5): 1456 1465. Scott, A. (1970). Active and Nonlinear Wave Propagation in Electronics, Wiley-Interscience, New York. Smith, Z. M., Delgutte, B. & Oxenham, A. J. (2002). Chimaeric sounds reveal dichotomies in auditory perception, Nature 416: 8790. van Drongelen, W. (2007). Signal Processing for Neuroscientists: Introduction to the analysis of physiological signals, Academic Press, London. Zeng, F.-G., Rebscher, S., Harrison, W., Sun, X. & Feng, H. (2008). Cochlear implants: System design, integration, and evaluation, IEEE Rev. Biomed. Eng. 1: 115142.
www.intechopen.com
Published in print edition April, 2012 The book focuses on Fourier transform applications in electromagnetic field and microwave, medical applications, error control coding, methods for option pricing, and Helbert transform application. It is hoped that this book will provide the background, reference and incentive to encourage further research and results in these fields as well as provide tools for practical applications. It provides an applications-oriented analysis written primarily for electrical engineers, control engineers, signal processing engineers, medical researchers, and the academic researchers. In addition the graduate students will also find it useful as a reference for their research activities.
How to reference
In order to correctly reference this scholarly work, feel free to copy and paste the following: Yi-Wen Liu (2012). Hilbert Transform and Applications, Fourier Transform Applications, Dr Salih Salih (Ed.), ISBN: 978-953-51-0518-3, InTech, Available from: http://www.intechopen.com/books/fourier-transformapplications/hilbert-transform-and-applications
InTech Europe
University Campus STeP Ri Slavka Krautzeka 83/A 51000 Rijeka, Croatia Phone: +385 (51) 770 447 Fax: +385 (51) 686 166 www.intechopen.com
InTech China
Unit 405, Office Block, Hotel Equatorial Shanghai No.65, Yan An Road (West), Shanghai, 200040, China Phone: +86-21-62489820 Fax: +86-21-62489821