Fourier and Hilbert Transforms

Total Page:16

File Type:pdf, Size:1020Kb

Fourier and Hilbert Transforms International Conference on Computer Systems and Technologies - CompSysTech’2005 Fourier and Hilbert Transforms Bozhan Zhechev Abstract: In the paper two types of discrete transforms - Fourier transform and Hilbert transform are analysed. These transforms are useful for many applications. It is shown that the analysing filters of the Discrete Fourier Transform (DFT) can be constructed applying the Hilbert transform. This approach gives us a new representation of the full recursive form of the Fast Fourier Transform (FFT). The results give new possibilities for fast realizations of the DFT. Key words: Discrete transforms, Fast Fourier transform (FFT), Hilbert transform, signal processing, fast transforms, filter banks, characters of groups and theory of groups. INTRODUCTION Signal processing has entered a period of comprehending its different parts in more coherent structure. In our age of fast progress in computer sciences “what brings these parts together and integrates them is hard to be overestimated”. Abstract harmonic analysis, which underlies linear signal processing technology, provides us with the tools we need. We are not only interested in the computational aspects of the algorithms, but also in their algebraical, geometrical and physical representations, which is the basis for further development. We present in this paper relations between the Fourier Transform and Hilbert Transform in connection with the fast realizations of these transforms. CIRCULAR CONVOLUTION The input and output signals of a linear time-invariant system are connected by the convolution operation [1]: y = x*h. (1) Here h is the impulse response of the system. The sets of the real numbers R, integer numbers Z and the integer numbers – multiple of some integer number n (i.e. nZ), with addition as a binary operation, are groups [2]. The signals are functions usually defined on the R, Z, the torus group T = R/Z, the residue system (mod n) Z/nZ, or their Cartesian products. As such they are elements of some functional space, most often a Hilbert space H, which is supplied with the form (x|y) that takes values in the field of the complex numbers C. This form, called an inner or scalar product, is Hermitian and positive definite [4]. If L2(Z/nZ) denotes n-dimensional complex vector space of functions (vectors), than we have a Hilbert spaces with an inner product [1][3][4] r r * (x| y) = ∑ xk .yk . (2) k∈Z/nZ The circular convolution (1) could be written as an inner product, if the right shift operator ρ and the sign operator σ are used. In the canonical basis of L2(Z/nZ), formed by vectors, {r }, r = ⎡δ ⎤ , l, k = 0,1,...,(n-1) (mod n), ( is the Kronecker's symbol), the two ek ek ⎣⎢ l, k⎦⎥ δl, k endomorphisms have the following (orthogonal) matrices [3]: - - II.6-1 -- International Conference on Computer Systems and Technologies - CompSysTech’2005 ρn = [δk−1,l ] , σ n =[δ k,n−l ] , k,l = 0,1,...,n−1()mod n ⎡0 0 0 1⎤ ⎡1 0 0 0⎤ (3) 1 0 0 0 ⎢0 0 0 1⎥ ρ 4 = ⎢ ⎥ , σ 4 = . ⎢0 1 0 0⎥ ⎢0 0 1 0⎥ ⎣0 0 1 0⎦ ⎣0 1 0 0⎦ In this case the k-th coordinate of the output vector yr in (1) has the form r k r yk = (x | ρ σ h), (4) and the convolution is cyclic. In (4) ρ and σ define a linear representation of the dihedral group Dn [2][3][7][8]: 2 n 2 Dn = 〈σ, ρ | σ = ρ = (σρ) = 1〉. (5) DISCRETE FOURIER TRANSFORM The discrete Fourier operator Fn is defined by the square matrix 2π k l − j 1 n k r r T − l Fn = ∑ e ρ δ δ ρ , n 0≤ k,l < n 1 k l − j 2π / n Fn = []w = Cn − jSn , w = e ;k,l = 0,1,...,n − 1; this operator is unitary [1][4], i.e. n the inverse one coincides with the Hermitian conjugate: F-1 = F * . In the abstract harmonic analysis discrete transform is considered to be an expansion by characters of the cyclic group Z/nZ [2][7][8]. A fundamental property of the Fourier operator is that it transforms convolution into algebraic multiplication [1], i.e. F(x*h) = Fx.Fh. n Let us introduce (by n = 2m ) the following rectangular ( × n ) "selection" matrices: 2 n E = δ ; O = δ ; U = δ ; L = δ ; i = 0,1,..., − 1; k = 0,1,..., n − 1 . (6) n / 2 []2i,k n / 2 [](2i +1),k n / 2 [ i,k ] n / 2 [ (i +n / 2),k ] 2 For n = 4 we have E = 1 0 0 0 ; O = 0 1 0 0 ; U = 1 0 0 0 ; L = 0 0 1 0 . [0 0 1 0 ] [0 0 0 1 ] [0 1 0 0 ] [0 0 0 1 ] The so introduced matrices have the following important properties: E TE + O T O = 1; UTU + LTL = 1; E E T = O O T = U UT = L LT = 1; E O T = L UT = 0. The full recursive form of the Fast Fourier Transform (FFT) is found in [3]: T T −1/2 2 Fn = (U + L) Fn/2 E + (U − L) µn/2 Fn/2 O, (7) 2 π 2 π 2 π j j k j (n−1) n n n µn = diag(1,e ,...,e ,...,e ). - - II.6-2 -- International Conference on Computer Systems and Technologies - CompSysTech’2005 DISCRETE HILBERT TRANSFORM The Hilbert transform (or more correctly endomorphism) κ (kappa) is applied in many areas: generating of single-sideband signals, inverse filtering, image processing, speech processing, radiolocation, compressing and etc. [5]. Let the dimension of the signals’ (vectors’) space n be an even number, and the discrete delta (vector) of Dirac has the form: r δ = [ 1, 0, 0,..., 0]T . In that case the sign vector by definition has the form: 1 r sr = (1− ρn/2 ) ∑ρk δ (8) n 0 < k < n/2 For n = 8 this vector looks like this: 1 sr = [0, 1, 1, 1, 0, − 1, − 1, − 1]Т . 8 r r If n is odd, the “middle” zero will disappear. This vector is odd, i.e. σ s = −s . One can obtain: r * r 2 π 2k− 1 r κ = Fn (− j s) = ∑ ctg( (2k − 1)) ρ δ , n 0≤ k < n/2 n (9) 2 π κ(ρ) = ∑ ctg( (2 k −1)) ρ2 k− 1 . n 0≤ k < n/2 n 2 1 r r 1 r r κ2 (ρ) = -1+ ∑ ρ2 k = −1+ 11T + µn/2 11T µ- n/2 n 0 ≤ k < n / 2 n n The first row of (9) is the impulse response, and the second one is the cyclic discrete endomorphism (system function) of Hilbert (an ideal cyclic Hilbert transformer or 90 degree phase shifter), that is antisymmetric and (anti-) commute with σ, i.e. κ T = − κ = σ κ σ ,.⇒ σ κ = − κ σ, ⇒ σ κ2 = κ2 σ r In (9) 1 is the vector of all 1’s. THE ANALYSING FILTERS OF THE FOURIER TRANSFORM The analysing filters of the Fourier Transform are found in [6]. Let us write (7) in the following form: T 1/2 T 1/2 T T 2Fn = U Fn/2 [E + ρ O] + L Fn/2 [E − ρ O] = U Fn/2G + L Fn/2H. (10) 1/ 2 * −1/ 2 n By definition ρ = Fn / 2 µn / 2 Fn / 2 is one of the square roots of ρ (2 in number). It could be presented in the following way: 2 πk 2 πk 2 πk n / 2−1 −j r r n / 2−1 −j n/2−1 −j 1/ 2 n * n k 2 r r T −k n k 2 −k ρ = ∑ e fk fk = ∑ e µ 11 µ = ∑ e µ Γ 0 (ρ)µ k=0 k=0 n k=0 n - - II.6-3 -- International Conference on Computer Systems and Technologies - CompSysTech’2005 It follows from the property of the commutator of a Heisenberg-Weyl's group [3] that 2 π k l µk ρl = ρl µk e n/2 (the dimension is n/2), so that finally: n/2−1 1/2 k 2 π ρ = ∑ rk ρn/2; rk = (1+ j ctg(2k −1) ). (11) k=0 n n From (11) it follows for the two operators G and H that: n / 2−1 1/ 2 1/ 2 2k−1 G = (E + ρ O) = E(1+ β); H = (E − ρ O) = E(1− β); β = ∑rk ρn . (12) k=0 If (11) is taken into consideration, it is easy to show that the following relations are valid [6]: 1 1 GH* = 0; GG* = HH* = 2;⇒ G+ = G* ; H+ = H* ; 2 2 (13) β = ET ρ1/ 2O + OT ρ1/ 2*E; The two projectors ontoran (G* ) and ran (H* ) (the pseudoinverse [4] matrices of G, H are G+ and H+): 1 1 G+G = (1+ β); H+H = (1− β) (14) 2 2 These projectors are orthogonal resolution of the identity obviously. It can be obtained from (11) and (12) that: β = ρ (1 + κ 2 ) + j κ ; β2 = 1; β* = β. (15) The automorphism β is an involution (its square is identity) and it is a Hermitian morphism i.e. coincides with its Hermitian-conjugated. In that case for the orthogonal projectors (1+β)/2 and (1-β)/2 we will have that: 1+ β r r F ( ) = diag (1, 0) F, 2 (16) 1− β r r F ( ) = diag (0, 1) F. 2 The first projector “cuts off” the upper n/2 co-ordinates of the spectrum of the signal, and the second one – the lower n/2 co-ordinates (Fourier transforms are “one sided”).
Recommended publications
  • Fourier Transforms and the Fast Fourier Transform (FFT) Algorithm Paul Heckbert Feb
    Notes 3, Computer Graphics 2, 15-463 Fourier Transforms and the Fast Fourier Transform (FFT) Algorithm Paul Heckbert Feb. 1995 Revised 27 Jan. 1998 We start in the continuous world; then we get discrete. De®nition of the Fourier Transform The Fourier transform (FT) of the function f (x) is the function F(ω), where: ∞ iωx F(ω) f (x)e− dx = Z−∞ and the inverse Fourier transform is 1 ∞ f (x) F(ω)eiωx dω = 2π Z−∞ Recall that i √ 1andeiθ cos θ i sin θ. = − = + Think of it as a transformation into a different set of basis functions. The Fourier trans- form uses complex exponentials (sinusoids) of various frequencies as its basis functions. (Other transforms, such as Z, Laplace, Cosine, Wavelet, and Hartley, use different basis functions). A Fourier transform pair is often written f (x) F(ω),orF ( f (x)) F(ω) where F is the Fourier transform operator. ↔ = If f (x) is thought of as a signal (i.e. input data) then we call F(ω) the signal's spectrum. If f is thought of as the impulse response of a ®lter (which operates on input data to produce output data) then we call F the ®lter's frequency response. (Occasionally the line between what's signal and what's ®lter becomes blurry). 1 Example of a Fourier Transform Suppose we want to create a ®lter that eliminates high frequencies but retains low frequen- cies (this is very useful in antialiasing). In signal processing terminology, this is called an ideal low pass ®lter. So we'll specify a box-shaped frequency response with cutoff fre- quency ωc: 1 ω ω F(ω) | |≤ c = 0 ω >ωc | | What is its impulse response? We know that the impulse response is the inverse Fourier transform of the frequency response, so taking off our signal processing hat and putting on our mathematics hat, all we need to do is evaluate: 1 ∞ f (x) F(ω)eiωx dω = 2π Z−∞ for this particular F(ω): 1 ωc f (x) eiωx dω = 2π ωc Z− 1 eiωx ωc = 2π ix ω ωc =− iωc x iωcx 1 e e− − = πx 2i iθ iθ sin ω x e e− c since sin θ − = πx = 2i ω ω c sinc( c x) = π π where sinc(x) sin(πx)/(πx).
    [Show full text]
  • Lecture 13: Practical Fourier Transforms Foundations of Digital Signal Processing
    Lecture 13: Practical Fourier Transforms Foundations of Digital Signal Processing Outline • The Discrete Fourier Transform (DFT) • Circular Convolution • The DTFT and the DFT: The Relationship • The Fast Fourier Transform Foundations of Digital Signal Processing Lecture 13: Practical Fourier Transforms 1 News Homework #5 . Due today . Submit via canvas Coding Problem #4 . Due today . Submit via canvas Foundations of Digital Signal Processing Lecture 13: Practical Fourier Transforms 2 Lecture 13: Practical Fourier Transforms Foundations of Digital Signal Processing Outline • The Discrete Fourier Transform (DFT) • Circular Convolution • The DTFT and the DFT: The Relationship • The Fast Fourier Transform Foundations of Digital Signal Processing Lecture 13: Practical Fourier Transforms 3 Deriving Transforms Consider the Inverse Discrete-Time Fourier Transform…. What happens if we sample X ? 1 = +n � 2 2 Foundations of Digital Signal Processing Lecture 13: Practical Fourier Transforms 4 Deriving Transforms Consider the Inverse Discrete-Time Fourier Transform…. What happens if we sample X ? 1 = +n � 1 2 2 = ∞ +n � 2 � − 2 2 =−∞ Foundations of Digital Signal Processing Lecture 13: Practical Fourier Transforms 5 Deriving Transforms Consider the Inverse Discrete-Time Fourier Transform…. What happens if we sample X ? 1 = +n � 1 2 2 = 2 ∞ +n � 2 � − 2 0 =−∞ 0 < 0 ≥ < 2 ≥ 2 Foundations of Digital Signal Processing Lecture 13: Practical Fourier Transforms 6 Deriving Transforms Consider the Inverse Discrete-Time Fourier Transform…. What happens if we sample X ? 1 = +n � 1 2 2 = 2 ∞ +n � 2 � − 2 0 =−∞ 2 Let 2 / = −1 = = 2 / +n � =0 Foundations of Digital Signal Processing Lecture 13: Practical Fourier Transforms 7 Deriving Transforms Consider the Inverse Discrete-Time Fourier Transform….
    [Show full text]
  • DSP Exercises
    Exercises in Digital Signal Processing 1 The Discrete Fourier Transform Ivan W. Selesnick 1.1 Compute the DFT of the 2-point signal by hand (without a calculator or computer). January 27, 2015 x = [20; 5] Contents 1.2 Compute the DFT of the 4-point signal by hand. 1 The Discrete Fourier Transform1 x = [3; 2; 5; 1] 2 The Fast Fourier Transform 16 1.3 The even samples of the DFT of a 9-point real signal x(n) are given by 3 Filters 18 X(0) = 3:1; 4 Linear-Phase FIR Digital Filters 29 X(2) = 2:5 + 4:6 j; 5 Windows 38 X(4) = −1:7 + 5:2 j; X(6) = 9:3 + 6:3 j; 6 Least Square Filter Design 50 X(8) = 5:5 − 8:0 j; 7 Minimax Filter Design 54 Determine the missing odd samples of the DFT. Use the properties of the DFT to solve this problem. 8 Spectral Factorization 56 1.4 The DFT of a 5-point signal x(n), 0 ≤ n ≤ 4 is 9 Minimum-Phase Filter Design 58 X(k) = [5; 6; 1; 2; 9]; 0 ≤ k ≤ 4: 10 IIR Filter Design 64 A new signal g(n) is defined by 11 Multirate Systems 68 −2 n g(n) := W5 x(n); 0 ≤ n ≤ 4: 12 Quantization 74 What are the DFT coefficients G(k) of the signal g(n), for 0 ≤ k ≤ 4? 13 Spectral Estimation 75 1.5 Compute by hand the circular convolution of the following two 4-point signals (do not use MATLAB, etc.) 14 Speech Filtering 82 g = [1; 2; 1; −1] 15 More Exercises 86 h = [0; 1=3; −1=3; 1=3] 16 Old Exercises 91 1.6 What is the circular convolution of the following two sequences? x = [1 2 3 0 0 0 0]; h = [1 2 3 0 0 0 0]; 1.7 What is the circular convolution of the following two sequences? 1 x = [1 2 3 0 0 0 0]; This vectors X1, X2, X3, X4 are shown below out of order.
    [Show full text]
  • Lecture 06: Finite Length Signals, DFT, and FFT January 28, 2019 Lecturer: Matthew Hirn
    Math 994-002: Applied and Computational Harmonic Analysis, MSU, Spring 2020 Lecture 06: Finite Length Signals, DFT, and FFT January 28, 2019 Lecturer: Matthew Hirn 3.3 Finite Length Signals In practice we cannot store an infinite number of samples f(n) n Z of a signal f;insteadwe { } 2 can only keep a finite number of samples, say f(n) 0 n<N .Wethusmustamendourdefini- { } tion of the Fourier transform as well as convolution, which will lead to the Discrete Fourier Transform (DFT) and circular convolution. One thing that will arise is that regardless of whether the original signal f is periodic, we will be forced to think of the finite sampling (f(n))0 n<N as a discrete periodic signal with period N. This will lead to border effects which must be accounted for. However, the circular convolution theorem and Fast Fourier Transform will allow for fast computations of convolution operators. Let x, y CN , which are vectors of length N,e.g.,N samples of a signal f such that 2 x[n]=f(n) for 0 n<N. The inner product between x and y is: N 1 − x, y = x[n]y⇤[n] h i n=0 X We must replace the sinusoids eit! (t R)andein! (n Z), which are continuous in the 2 2 frequency variable !, with discrete counterparts. The variable ! is replaced with an index k with 0 k<N: 2⇡ikn ek[n]=exp , 0 n, k < N (14) N ✓ ◆ The Discrete Fourier Transform (DFT) of x is defined as: N 1 − 2⇡ikn x[k]= x, e = x[n]exp , 0 k<N h ki − N n=0 X ✓ ◆ The following theoremb shows that the set of vectors ek 0 k<N is an orthogonal basis for { } CN .
    [Show full text]
  • A Novel High-Throughput Fft Architecture for Wireless
    A NOVEL HIGH-THROUGHPUT FFT ARCHITECTURE FOR WIRELESS COMMUNICATION SYSTEMS A Thesis Presented to the Faculty of San Diego State University In Partial Fulfillment of the Requirements for the Degree Master of Science in Electrical Engineering by Nikhilesh Vinayak Bhagat Spring 2016 iii Copyright c 2016 by Nikhilesh Vinayak Bhagat iv DEDICATION To Aai and Pappa. v ABSTRACT OF THE THESIS A Novel High-Throughput FFT Architecture for Wireless Communication Systems by Nikhilesh Vinayak Bhagat Master of Science in Electrical Engineering San Diego State University, 2016 The design of the physical layer (PHY) of Long Term Evolution (LTE) standard is heavily influenced by the requirements for higher data transmission rate, greater spectral efficiency, and higher channel bandwidths. To fulfill these requirements, orthogonal frequency division multiplex (OFDM) was selected as the modulation scheme at the PHY layer. The discrete Fourier transform (DFT) and the inverse discrete Fourier transform (IDFT) are fundamental building blocks of an OFDM system. Fast Fourier transform (FFT) is an efficient implementation of DFT. This thesis focuses on a novel high-throughput hardware architecture for FFT computation utilized in wireless communication systems, particularly in the LTE standard. We implement a fully-pipelined FFT architecture that requires fewer number of computations. Particularly, we discuss a novel approach to implement FFT using the combined Good-Thomas and Winograd algorithms. It is found that the combined Good-Thomas and Winograd FFT algorithms provides a significantly more efficient FFT solution for a wide range of applications. A detailed analysis and comparison between different FFT algorithms and potential architectures suitable for the requirements of the LTE standard is presented.
    [Show full text]
  • Efficient Convolution Using the Fast Fourier Transform, Application In
    Efficient convolution using the Fast Fourier Transform, Application in C++ Jeremy Fix May 30, 2011 Contents 1 Introduction 2 1.1 Convolution product : linear and circular . .2 1.1.1 Definition . .2 1.1.2 Linear convolutions as particular cases of circular convolution . .4 1.2 Discrete Fourier Transform . 10 1.2.1 Introduction . 10 1.2.2 Computing a 2D Fourier transform from 1D Fourier transforms . 11 1.2.3 Computing 2 DFT of real sequences at once . 11 1.2.4 The symmetry of DFT of real sequences . 12 1.2.5 Fast Fourier Transform . 12 1.2.6 Computational complexity . 13 2 Convolution product using the Fast Fourier Transform 15 2.1 Introduction . 15 2.1.1 Convolution theorem : circular convolution and fourier transform . 15 2.1.2 Convolutions and Fourier Transform . 16 2.1.3 Speeding-up by padding . 17 2.2 Benchmarks . 17 2.2.1 Convolutions with a direct implementation . 17 2.2.2 Convolutions with FFTW . 17 2.3 Comparison between FFT based and standard convolution . 19 3 C++ codes 20 2 Efficient convolution using the Fast Fourier Transform, Application in C++ 1 Introduction Convolution products are often encountered in image processing but also in other works such as evaluating a con- volutive neural network. A naive implementation of a convolution product of signals of size N involves an order of N 2 operations. An efficient implementation of convolution product can be designed by making use of the Fast Fourier Transform and mathematical properties linking convolution products and Fourier transforms. This can boil down the complexity of computing a convolution product to an order of N log N operations.
    [Show full text]