Lecture 11

  • Uploaded by: asdsd
  • 0
  • 0
  • February 2021
  • PDF

This document was uploaded by user and they confirmed that they have the permission to share it. If you are author or own the copyright of this book, please report to us by using this DMCA report form. Report DMCA


Overview

Download & View Lecture 11 as PDF for free.

More details

  • Words: 845
  • Pages: 15
Loading documents preview...
Remote Sensing Laboratory Dept. of Information Engineering and Computer Science University of Trento Via Sommarive, 14, I-38123 Povo, Trento, Italy

Digital Signal Processing Lecture 11

Begüm Demir

E-mail: [email protected] Web page: http://rslab.disi.unitn.it

DFT: Filtering of Long Data Sequences  The input signal x[n] is often very long especially in real-time signal processing applications.  There are applications where we need to perform a linear convolution of a finite length sequence with a sequence that is of length that is much greater than that of the first sequence.  Let h[n] be a finite length sequence of length M and x[n] be a sequence of a finite length much greater than M.  Our objective is develop computationally efficient DFT based methods to implement linear convolution of h[n] and x[n].  The strategy is to segment the input signal into fixed-size blocks prior to processing and to compute DFT based methods for each block separately. University of Trento, Italy

B. Demir

DFT: Filtering of Long Data Sequences

 Two approaches to real-time linear filtering of long inputs:  Overlap-Add Method  Overlap-Save Method

University of Trento, Italy

B. Demir

Overlap Add  The linear convolution of a discrete-time signal of length L and a discrete-time signal of length M produces a discrete-time convolved result of length L+M-1.  Remember:

( x1[n] + x2 [n]) ∗ h[n] = x1[n] ∗ h[n] + x2 [n] ∗ h[n]

 In overlap add method, input signal x[n] is divided into non overlapping blocks xm[n] with length L.  Each input block xm[n] is individually convolved with h[n] to produce the output ym[n].

University of Trento, Italy

B. Demir

Overlap Add

University of Trento, Italy

B. Demir

Overlap Add-Filtering  Apply N-DFT and N-IDFT where N=L+M-1.  Thus, if L and M are smaller than N apply zero padding to xm[n] and h[n].  We set N = L + M -1 (the length of the linear convolution result) and zero pad xm[n] and h[n] to define n = 0,1, … ,N -1.  Using DFT for Linear Convolution: 1. Take N-DFT of xm[n] to give Xm[k], k = 0,1, … ,N -1. 2. Take N-DFT of h[n] to give H[k], k = 0,1, … ,N -1. 3. Multiply: Ym[k] = Xm[k]H[k], k = 0,1, … ,N -1. 4. Take N-IDFT of Ym[k] to give ym[n], n = 0,1, … ,N -1. University of Trento, Italy

B. Demir

Overlap Add

University of Trento, Italy

B. Demir

Overlap Add

University of Trento, Italy

B. Demir

Overlap Add

 Output blocks ym[n] must be fitted together appropriately to generate: x[n]*h[n]

 If you DO NOT overlap and add, but only append the output blocks ym[n] , then you will not get the true y[n] sequence.

University of Trento, Italy

B. Demir

Overlap Save

 The Overlap-Save method aims at segmenting x[n] into overlapping blocks.  Accordingly, all input blocks xm[n] are of length N = (L + M - 1) and contain sequential samples from x[n].  Input block xm[n] for m > 1 overlaps containing the first M-1 points of the previous block xm-1[n].

 For m = 1, there is no previous block, so the first M-1 points are zeros.

University of Trento, Italy

B. Demir

Overlap Save

University of Trento, Italy

B. Demir

Overlap Save

  x1[n ] = 0, 0,...0, x[0], x[1],..., x[ L − 1]   M −1 zeros    x2 [n ] =   x[ L − M  +  1],..., x[ L − 1], x[ L],..., x[2 L − 1]  last M −1 samples from x1 [n]    x3 [n ] =   x[2 L − M + 1],..., x[2 L − 1] , x[2 L],..., x[3L − 1]   last M −1 samples from x 2 [n] ⋮ The last M-1 samples from the previous input block must be used for use in the current input block.

University of Trento, Italy

B. Demir

Overlap Save

 Apply the N-DFT and N-IDFT where: N = L + M -1  Only a one-time zero-padding of h[n] of length M << L < N is required to have h[n] with n = 0,1,…,N-1  The input blocks xm[n] are of length N to start, so no zero-padding is necessary.

University of Trento, Italy

B. Demir

Overlap Save N = L + M- 1.  Let xm[n] is defined for n = 0,1,…,N-1 and h[n] is defined for n = 0,1,…,M-1  We zero pad h[n] to have n = 0,1,…,N-1 1. Take N-DFT of xm[n] to give Xm[k], k = 0,1,…,N-1. 2. Take N-DFT of h[n] to give H[k], k = 0,1,…,N-1. 3. Multiply: Ym[k] = Xm[k] H[k], k = 0,1,…,N-1. 4. Take N-IDFT of Ym[k] to give ym[n], n = 0,1,…,N-1.  The first M -1 points of each output block are discarded due to overcome with aliasing. The remaining L points of each output block are appended to form y[n]. University of Trento, Italy

B. Demir

Overlap Save

University of Trento, Italy

B. Demir

Related Documents

Lecture 11
February 2021 1
Lecture
February 2021 3
Italy Lecture
January 2021 1
Lecture Notes
February 2021 1
Amba Lecture
February 2021 0

More Documents from "Dusica Veselinovic"

Lecture 21
February 2021 1
Lecture 20
February 2021 2
Lecture 2-done.pdf
February 2021 1
Lecture22.pdf
February 2021 1
Lecture 19
February 2021 1
Lecture 14
February 2021 1