Presentation is loading. Please wait.

Presentation is loading. Please wait.

Decimation-in-frequency FFT algorithm The decimation-in-time FFT algorithms are all based on structuring the DFT computation by forming smaller and smaller.

Similar presentations


Presentation on theme: "Decimation-in-frequency FFT algorithm The decimation-in-time FFT algorithms are all based on structuring the DFT computation by forming smaller and smaller."— Presentation transcript:

1 Decimation-in-frequency FFT algorithm The decimation-in-time FFT algorithms are all based on structuring the DFT computation by forming smaller and smaller subsequences of the input sequence x[n]. Alternatively, we can consider dividing the output sequence X[k] into smaller and smaller subsequences in the same manner. The even-numbered frequency samples are

2 Since and The above equation is the (N/2)-point DFT of the (N/2)-point sequence obtained by adding the first and the last half of the input sequence. Adding the two halves of the input sequence represents time aliasing, consistent with the fact that in computing only the even- number frequency samples, we are sub-sampling the Fourier transform of x[n].

3 We now consider obtaining the odd-numbered frequency points: Since

4 We obtain The above equation is the (N/2)-point DFT of the sequence obtained by subtracting the second half of the input sequence from the first half and multiplying the resulting sequence by W N n. Let g[n] = x[n]+x[n+N/2] and h[n] = x[n]  x[x+N/2], the DFT can be computed by forming the sequences g[n] and h[n], then computing h[n] W N n, and finally computing the (N/2)-point DFTs of these two sequences.

5 Flow graph of decimation-in-frequency decomposition of an N- point DFT (N=8).

6 Recursively, we can further decompose the (N/2)-point DFT into smaller substructures:

7 Finally, we have

8 Butterfly structure for decimation-in-frequency FFT algorithm: The decimation-in-frequency FFT algorithm also has the computation complexity of O(N log 2 N)

9 Chirp Transform Algorithm (CTA) This algorithm is not optimal in minimizing any measure of computational complexity, but it has been used to compute any set of equally spaced samples of the DTFT on the unit circle. To derive the CTA, we let x[n] denote an N-point sequence and X(e jw ) its DTFT. We consider the evaluation of M samples of X(e jw ) that are equally spaced in angle on the unit cycle, at frequencies

10 When w 0 =0 and M=N, we obtain the special case of DFT. The DTFT values evaluated at w k are with W defined as we have The Chirp transform represents X(e jw k ) as a convolution: To achieve this purpose, we represent nk as

11 Then, the DTFT value evaluated at w k is Letting we can then write To interpret the above equation, we obtain more familiar notation by replacing k by n and n by k: X(e jw k ) corresponds to the convolution of the sequence g[n] with the sequence W  n 2 /2.

12 The block diagram of the chirp transform algorithm is Since only the outputs of n=0,1,…,M  1 are required, let h[n] be the following impulse response with finite length (FIR filter): Then

13 The block diagram of the chirp transform algorithm for FIR is Then the output y[n] satisfies that Evaluating frequency responses using the procedure of chirp transform has a number of potential advantages:  We do not require N=M as in the FFT algorithms, and neither N nor M need be composite numbers. => The frequency values can be evaluated in a more flexible manner.  The convolution involved in the chirp transform can still be implemented efficiently using an FFT algorithm. The FFT size must be no smaller than (M+N  1). It can be chosen, for example, to be an appropriate power of 2.

14 In the above, the FIR filter h[n] is non-causal. For certain real- time implementation it must be modified to obtain a causal system. Since h[n] is of finite duration, this modification is easily accomplished by delaying h[n] by (N  1) to obtain a causal impulse response: and the DTFT transform values are  In hardware implementation, a fixed and pre-specified causal FIR can be implemented by certain technologies, such as charge- coupled devices (CCD) and surface acoustic wave (SAW) devices.

15 Two-dimensional Transform Revisited (c.f. Fundamentals of Digital Image Processing, A. K. Jain, Prentice Hall, 1989) One-dimensional orthogonal (unitary) transforms v=Au  u = A* T v = A H v  where A* T = A  1, i.e., AA H = A H A = I. That is, the columns of A H form a set of orthonormal bases, and so are the columns of A. The vector a k *  {a k,n *, 0  n  N  1} are called the basis vector of A. The series coefficients v[k] give a representation of the original sequence u[k], and are useful in filtering, data compression, feature extraction, and other analysis.

16 Two-dimensional orthogonal (unitary) transforms Let {u[m,n]} be an n  n image. where {a k,l [m,n]}, called an image transform, is a set of complete orthonormal discrete basis functions satisfying the properties: Orthonormality: where  [a,b] is the 2D delta function, which is one only when a=b=0, and is zero otherwise.

17 V = {v[k,l]} is called the transformed image. The orthonormal property assures that any expansion of the basis images will be minimized by the truncated series When P=Q=N, the error of minimization will be zero. Separable Unitary Transforms The number of multiplications and additions required to compute the transform coefficients v[k,l] is O(N 4 ), which is quite excessive. The dimensionality can be reduced to O(N 3 ) when the transform is restricted to be separable.

18 A transform {a k,l [m,n]} is separable iff for all 0  k,l,m,n  N  1, it can be decomposed as follows: where A  {a[k,m]} and B  {b[l,n]} should be unitary matrices themselves, i.e., AA H = A H A = I and BB H = B H B = I. Often one choose B to be the same as A, so that Hence, we can simplify the transform as V = AUA T, and U = A* T VA* where V = {v[k,l]} and U = {u[m,n]}.

19 A more general form: for an M  N rectangular image, the transform pair is V = A M UA N T, and U = A M * T UA N * where A M and A N are M  M and N  N unitary matrices, respectively. themselves, i.e., AA H = A H A = I and BB H = B H B = I. These are called two-dimensional separable transforms. The complexity in computing the coefficient image is O(N 3 ).  The computation can be decomposed as computing T=UA T first, and then compute V= AT (for an N  N image)  Computing T=UA T requires N 2 inner products (of N-point vectors). Each inner product requires N operations, and so in total O(N 3 ).  Similarly, V= AT also requires O(N 3 ) operations, and finally we need O(N 3 ) to compute V.

20 A closer look at T=UA T : Let the rows of U be {U 1, U 2, …, U N }. Then T=UA T = [U 1 T, U 2 T, …, U N T ] T A T = [U 1 A T, U 2 A T, …, U N A T ] T. Note that each U i A T (i=1 … N) is a one-dimensional unitary transform. That is, this step performs N one-dimensional transforms for the rows of the image U, obtaining a temporary image T. Then, the step V= AT performs N 1-D unitary transforms on the columns of T. Totally, 2N 1-D transforms are performed. Each 1-D transform is of O(N 2 ).

21 Remember that the two-dimensional DFT is where The 2D DFT is separable, and so it can be represented as V = FUF where F is the N  N matrix with the element of k-th row and n- th element be F =

22 Fast computation of two-dimensional DFT:  According to V = FUF, it can be decomposed as the computation of 2N 1-D DFTs.  Each 1-D DFT requires N  log 2 N computations.  So, the 2-D DFT can be efficiently implemented in time complexity of O(N 2  log 2 N ) 2-D DFT is inherent in many properties of 1-D DFT (e.g., conjugate symmetry, shifting, scaling, convolution, etc.). A property not from the 1-D DFT is the rotation property. Rotation property: if we represent (m,n) and (k,l) in polar coordinate, and then That is, the rotation of an image implies the rotation of its DFT.

23 Until now, we have assumed that the signals are deterministic, i.e., each value of a sequence is uniquely determined. In many situations, the processes that generate signals are so complex as to make precise description of a signal extremely difficult or undesirable. A random or stochastic signal is considered to be characterized by a set of probability density functions. Discrete-time Random Signals (c.f. Oppenheim, et al., 1999)

24 Random (or stochastic) process (or signal) –A random process is an indexed family of random variables characterized by a set of probability distribution function. –A sequence x[n],  <n< . Each individual sample x[n] is assumed to be an outcome of some underlying random variable X n. –The difference between a single random variable and a random process is that for a random variable the outcome of a random-sampling experiment is mapped into a number, whereas for a random process the outcome is mapped into a sequence. Stochastic Processes

25 Probability density function of x[n] : Joint distribution of x[n] and x[m] : Eg., x 1 [n] = A n cos(wn+  n ), where A n and  n are random variables for all  < n < , then x 1 [n] is a random process. Stochastic Processes (continue)

26 x[n] and x[m] are independent iff x is a stationary process iff for all k. That is, the joint distribution of x[n] and x[m] depends only on the time difference m  n. Independence and Stationary

27 Particularly, when m = n for a stationary process: It implies that x[n] is shift invariant. Stationary (continue)

28 In many of the applications of discrete-time signal processing, random processes serve as models for signals, in the sense that a particular signal can be considered a sample sequence of a random process. Although such a signals are unpredictable – making a deterministic approach to signal representation is inappropriate – certain average properties of the ensemble can be determined, given the probability law of the process. Stochastic Processes vs. Deterministic Signal

29 Mean (or average)  denotes the expectation operator For independent random variables Expectation

30 Mean squared value Variance Mean Square Value and Variance

31 Autocorrelation Autocovariance Autocorrelation and Autocovariance

32 For a stationary process, the autocorrelation is dependent on the time difference m  n. Thus, for stationary process, we can write If we denote the time difference by k, we have Stationary Process

33 In many instances, we encounter random processes that are not stationary in the strict sense. If the following equations hold, we call the process wide-sense stationary (w. s. s.). Wide-sense Stationary

34 For any single sample sequence x[n], define their time average to be Similarly, time-average autocorrelation is Time Averages

35 A stationary random process for which time averages equal ensemble averages is called an ergodic process: Ergodic Process

36 It is common to assume that a given sequence is a sample sequence of an ergodic random process, so that averages can be computed from a single sequence. Ergodic Process (continue) In practice, we cannot compute with the limits, but instead the quantities. Similar quantities are often computed as estimates of the mean, variance, and autocorrelation.

37 Property 1: Properties of correlation and covariance sequences

38 Property 2: Property 3 Properties of correlation and covariance sequences (continue)

39 Property 4: Properties of correlation and covariance sequences (continue)

40 Property 5: –If Properties of correlation and covariance sequences (continue)

41 Since autocorrelation and autocovariance sequences are all (aperiodic) one-dimensional sequences, there Fourier transform exist and are bounded in |w| . Let the Fourier transform (DTFT) of the autocorrelation and autocovariance sequences be Fourier Transform Representation of Random Signals

42 Consider the inverse Fourier Transforms: Fourier Transform Representation of Random Signals (continue)

43 Consequently, Denote to be the power density spectrum (or power spectrum) of the random process x. Fourier Transform Representation of Random Signals (continue)

44 The total area under power density in [ ,  ] is the total energy of the signal. P xx (w) is always real-valued since  xx (n) is conjugate symmetric For real-valued random processes, P xx (w) =  xx (e jw ) is both real and even. Power Density Spectrum ( using Fourier transform to represent a random signal)

45 Consider a linear system with frequency response h[n]. If x[n] is a stationary random signal with mean m x, then the output y[n] is also a stationary random signal with mean m x equaling to Since the input is stationary, m x [n  k] = m x, and consequently, Mean and Linear System DC response

46 If x[n] is a real and stationary random signal, the autocorrelation function of the output process is Since x[n] is stationary,  { x[n  k]x[n+m  r] } depends only on the time difference m+k  r. Stationary and Linear System

47 Therefore, The output power density is also stationary. Generally, for a LTI system having a wide-sense stationary input, the output is also wide-sense stationary. Stationary and Linear System (continue)

48 By substituting l = r  k, where A sequence of the form of c hh [l] is called a deterministic autocorrelation sequence. Power Density Spectrum and Linear System

49 A sequence of the form of C hh [l], l = r  k, where C hh (e jw ) is the Fourier transform of c hh [l]. For real h, Thus Power Density Spectrum and Linear System (continue)

50 We have the relation of the input and the output power spectrums to be the following: Power Density Spectrum and Linear System (continue)

51 Key property: The area over a band of frequencies, w a <|w|<w b, is proportional to the power in the signal in that band. To show this, consider an ideal band-pass filter. Let H(e jw ) be the frequency of the ideal band pass filter for the band w a <|w|<w b. Note that |H(e jw )| 2 and  xx (e jw ) are both even functions. Hence, after ideal low pass filtering, Power Density Property

52 A white noise signal is a signal for which –Hence, its samples at different instants of time are uncorrelated. The power spectrum of a white noise signal is a constant The concept of white noise is very useful in quantization error analysis. White Noise (or White Gaussian Noise)

53 The average power of a white-noise is therefore White noise is also useful in the representation of random signals whose power spectra are not constant with frequency. –A random signal y[n] with power spectrum  yy (e jw ) can be assumed to be the output of a linear time-invariant system with a white-noise input. White Noise (continue)

54 The cross-correlation between input and output of a LTI system: That is, the cross-correlation between the input output is the convolution of the impulse response with the input autocorrelation sequence. Cross-correlation

55 By further taking the Fourier transform on both sides of the above equation, we have This result has a useful application when the input is white noise with variance  x 2. –These equations serve as the bases for estimating the impulse or frequency response of a LTI system if it is possible to observe the output of the system in response to a white-noise input. Cross-correlation (continue)


Download ppt "Decimation-in-frequency FFT algorithm The decimation-in-time FFT algorithms are all based on structuring the DFT computation by forming smaller and smaller."

Similar presentations


Ads by Google