Module 3. Convolution. Aim

Similar documents
Digital Signal Processing Lecture 4

! Circular Convolution. " Linear convolution with circular convolution. ! Discrete Fourier Transform. " Linear convolution through circular

ENT 315 Medical Signal Processing CHAPTER 2 DISCRETE FOURIER TRANSFORM. Dr. Lim Chee Chin

MAHALAKSHMI ENGINEERING COLLEGE-TRICHY

VU Signal and Image Processing. Torsten Möller + Hrvoje Bogunović + Raphael Sahann

Digital Signal Processing. Midterm 2 Solutions

EEO 401 Digital Signal Processing Prof. Mark Fowler

DFT-Based FIR Filtering. See Porat s Book: 4.7, 5.6

Chapter 8 The Discrete Fourier Transform

Interchange of Filtering and Downsampling/Upsampling

Discrete Fourier Transform

8 The Discrete Fourier Transform (DFT)

! Review: Discrete Fourier Transform (DFT) ! DFT Properties. " Duality. " Circular Shift. ! Circular Convolution. ! Fast Convolution Methods

E : Lecture 1 Introduction

DHANALAKSHMI COLLEGE OF ENGINEERING DEPARTMENT OF ELECTRICAL AND ELECTRONICS ENGINEERING EC2314- DIGITAL SIGNAL PROCESSING UNIT I INTRODUCTION PART A

Introduction to DFT. Deployment of Telecommunication Infrastructures. Azadeh Faridi DTIC UPF, Spring 2009

Frequency-domain representation of discrete-time signals

Lecture 10. Digital Signal Processing. Chapter 7. Discrete Fourier transform DFT. Mikael Swartling Nedelko Grbic Bengt Mandersson. rev.

Linear Convolution Using FFT

ESE 531: Digital Signal Processing

Definition. A signal is a sequence of numbers. sequence is also referred to as being in l 1 (Z), or just in l 1. A sequence {x(n)} satisfying

Therefore the new Fourier coefficients are. Module 2 : Signals in Frequency Domain Problem Set 2. Problem 1

Lecture 20: Discrete Fourier Transform and FFT

Discrete-time signals and systems

Z - Transform. It offers the techniques for digital filter design and frequency analysis of digital signals.

CS 179: GPU Programming. Lecture 9 / Homework 3

/ (2π) X(e jω ) dω. 4. An 8 point sequence is given by x(n) = {2,2,2,2,1,1,1,1}. Compute 8 point DFT of x(n) by

R13 SET - 1

Digital Signal Processing

Lecture 11 FIR Filters

LTI H. the system H when xn [ ] is the input.

EE-210. Signals and Systems Homework 7 Solutions

ELEG 305: Digital Signal Processing

CS 179: GPU Programming. Lecture 9 / Homework 3

The Fourier transform allows an arbitrary function to be represented in terms of simple sinusoids. The Fourier transform (FT) of a function f(t) is

Discrete Fourier transform (DFT)

The Convolution Sum for Discrete-Time LTI Systems

SIGNALS AND SYSTEMS. Unit IV. Analysis of DT signals

Analog vs. discrete signals

Flash File. Module 3 : Sampling and Reconstruction Lecture 28 : Discrete time Fourier transform and its Properties. Objectives: Scope of this Lecture:

Review of Discrete-Time System

DEPARTMENT OF EI DIGITAL SIGNAL PROCESSING ASSIGNMENT 1

Contents. Digital Signal Processing, Part II: Power Spectrum Estimation

VII. Discrete Fourier Transform (DFT) Chapter-8. A. Modulo Arithmetic. (n) N is n modulo N, n is an integer variable.

DSP Algorithm Original PowerPoint slides prepared by S. K. Mitra

University Question Paper Solution

HST.582J / 6.555J / J Biomedical Signal and Image Processing Spring 2007

Digital Signal Processing Chapter 10. Fourier Analysis of Discrete- Time Signals and Systems CHI. CES Engineering. Prof. Yasser Mostafa Kadah

IT DIGITAL SIGNAL PROCESSING (2013 regulation) UNIT-1 SIGNALS AND SYSTEMS PART-A

EE 225D LECTURE ON DIGITAL FILTERS. University of California Berkeley

ELEN E4810: Digital Signal Processing Topic 2: Time domain

Discrete-Time Signals and Systems

The z-transform Part 2

Lecture 19 IIR Filters

EEL3135: Homework #4

EE123 Digital Signal Processing

Digital Signal Processing I Final Exam Fall 2008 ECE Dec Cover Sheet

Properties of LTI Systems

Discrete-Time Signals & Systems

Digital Signal Processing

A NOVEL APPROACH FOR HIGH SPEED CONVOLUTION OF FINITE AND INFINITE LENGTH SEQUENCES USING VEDIC MATHEMATICS

EE6604 Personal & Mobile Communications. Week 15. OFDM on AWGN and ISI Channels

EE538 Final Exam Fall :20 pm -5:20 pm PHYS 223 Dec. 17, Cover Sheet

! Introduction. ! Discrete Time Signals & Systems. ! Z-Transform. ! Inverse Z-Transform. ! Sampling of Continuous Time Signals

Discrete-Time Systems

DFT & Fast Fourier Transform PART-A. 7. Calculate the number of multiplications needed in the calculation of DFT and FFT with 64 point sequence.

ELEG 305: Digital Signal Processing

DIGITAL SIGNAL PROCESSING

EE538 Final Exam Fall 2007 Mon, Dec 10, 8-10 am RHPH 127 Dec. 10, Cover Sheet

QUESTION BANK SIGNALS AND SYSTEMS (4 th SEM ECE)

Chap 2. Discrete-Time Signals and Systems

ECE538 Final Exam Fall 2017 Digital Signal Processing I 14 December Cover Sheet

VU Signal and Image Processing

6.02 Fall 2012 Lecture #10

The objective of this LabVIEW Mini Project was to understand the following concepts:

Computer Engineering 4TL4: Digital Signal Processing

Frequency-Domain C/S of LTI Systems

Lecture 3: Linear Filters

SIDDHARTH GROUP OF INSTITUTIONS:: PUTTUR Siddharth Nagar, Narayanavanam Road QUESTION BANK (DESCRIPTIVE)

ELEG 305: Digital Signal Processing

EE482: Digital Signal Processing Applications

UNIT 1. SIGNALS AND SYSTEM

DIGITAL SIGNAL PROCESSING LECTURE 1

DISCRETE FOURIER TRANSFORM

2.161 Signal Processing: Continuous and Discrete Fall 2008

Lecture 3: Linear Filters

Chirp Transform for FFT

Multidimensional digital signal processing

Roll No. :... Invigilator s Signature :.. CS/B.Tech (EE-N)/SEM-6/EC-611/ DIGITAL SIGNAL PROCESSING. Time Allotted : 3 Hours Full Marks : 70

ECE-S Introduction to Digital Signal Processing Lecture 3C Properties of Autocorrelation and Correlation

N-Point. DFTs of Two Length-N Real Sequences

Fall 2011, EE123 Digital Signal Processing

Advanced Digital Signal Processing -Introduction

Digital Signal Processing. Lecture Notes and Exam Questions DRAFT

Test 2 Electrical Engineering Bachelor Module 8 Signal Processing and Communications

PS403 - Digital Signal processing

LAB 2: DTFT, DFT, and DFT Spectral Analysis Summer 2011

Introduction to Digital Signal Processing

Question Paper Code : AEC11T02

The Discrete Fourier Transform

Transcription:

Module Convolution Digital Signal Processing. Slide 4. Aim How to perform convolution in real-time systems efficiently? Is convolution in time domain equivalent to multiplication of the transformed sequence? x (n) x (n) 6 5 4 - - 4 sample 4 - - 4 x ( n) DFT X ( k) X ( k) x ( n) x ( DFT x IDFT X ( x ( n) x ( n) x x 5 5 Linear Convolution - - 4 5 6 7 IFFT(X.*X) 5 5 - - 4 5 Digital Signal Processing. Slide 4.

Contents Review of convolution techniques Linear convolution and circular convolution relationship to filtering Fast algorithms for digital filters block filtering Digital Signal Processing. Slide 4. Introduction δ ( n) hn ( ) LTI system, n = Let δ ( n) be the unit impulse sequence δ (n) =, otherwise We can write xn ( ) = xk ( ) δ ( n- k) k = - represent x(n) as sum of delayed and weighted impulse Let hn ( ) be the output for δ ( n) input hn ( ) is the impulse response Then hn ( k) is the output for δ ( n k) input LTI linear time invariance Digital Signal Processing. Slide 4.4

xn ( ) y( n) LTI system hn ( ) Then by superposition y( n) = x( k) h( n k) k = y(n) is sum of lots of delayed impulse responses This equation is called the CONVOLUTION SUM Digital Signal Processing. Slide 4.5 Linear Convolution xn ( ) y( n) Filter hn ( ) Consider unit step input: And example filter: Task: find y(n) xn ( ) = un ( ) hn ( ) = aun n ( ) Filtering is the operation of convolving a signal with the filter s impulse response. yn ( ) = xn ( )* hn ( ) = x( mhn ) ( m) m= Digital Signal Processing. Slide 4.6

For this example: yn ( ) =, n< y() = x() h() = (all other terms are zero) yn a a a n ( ) = + + + +, > a = a n+ un ( ) x(n) h(n) y(n).5 x(n) h(n) for a= -.8 5 5-5 5-5 5 5 5 4 x(n) h(n) y(n).5 x(n) h(n) for a=. 5 5 5 5 5 5 5 5 5 4 x(n) h(n) y(n).5 x(n) h(n) for a=.7 5 5.5 5 5 4 5 5 5 5 4 Digital Signal Processing. Slide 4.7 Periodic and Circular Convolution Develop ideas in terms of periodic signals and DFS, then extend to aperiodic signals. Given periodic signals x ( ) p n and x ( ) p n with discrete Fourier series coefficients given by what is x ( ) p n formed from { } x ( n) = IDFS X ( k) = X ( k) X ( k) p p p p X ( ) p k and X ( ) p k x ( ) p n x ( ) p n DFS DFS X ( ) p k x X ( ) p k X ( ) p k x IDFS ( ) p n Digital Signal Processing. Slide 4.8

Write N N X ( k) = x ( l) x ( r) e p p p l= r= then N x ( n) = X ( k) e p p N k = N p p p l= m= π j nk N π j ( lk rk) N and finally (proof-tutorial question) x ( n) = x ( l) x ( n l). Compare to linear convolution x ( n) = x ( m) x ( n m) Linear convolution: Sum over infinite extent of signals Periodic convolution: Sum over one period Digital Signal Processing. Slide 4.9 Example A Digital Signal Processing. Slide 4.

Example B So far we have x ( ) p n from a convolution of x ( ) p n with x ( ) p n Since Xp( k) = Xp( k) Xp( k) we can also obtain x ( ) p n from the IDFS of X ( ) k p Similarly Hence X ( k) = x ( n) e p p n= p = - j. nk π jπ 6 + jπ 6 [6, e, e ] X k e e jπ 6 jπ 6 ( ) = [6,, ] X k = e e p x ( n) = X ( k) e p p k = jπ jπ ( ) [6,, ] π. nk = [,, ] - as before j Digital Signal Processing. Slide 4. Periodic - Aperiodic So far we have considered periodic signals Periodic convolution Direct Via DFS Now consider aperiodic signals Circular convolution Treat aperiodic signals as one period of periodic signals Digital Signal Processing. Slide 4.

Circular Convolution Consider aperiodic signals x ( n) and x ( n) x ( n) and x ( n) are periodic extensions of x ( n) and x ( n). p p N - x( n) = one period of xp( l) xp( n l) l= x ( n) = x ( n) x ( n) { } { } DFT x ( n) = DFT x ( n) x ( n) = X ( k) X ( k) The symbol means circular convolution Perform periodic extension Take one period of the result of periodic convolution Digital Signal Processing. Slide 4. Example Consider Linear convolution of x ( n) x ( n) Consider Circular convolution of x ( n) x ( n) different length different values Digital Signal Processing. Slide 4.4

Relationship between Linear Convolution and Circular Convolution Why are we interested? Linear convolution is the filtering operation Filters are a very important application of DSP Would like to implement filters efficiently FFT is a fast DFT Maybe we can use FFTs to implement filters (?) Digital Signal Processing. Slide 4.5 We desire that circular and linear convolution give identical results, then we can use FFTs for fast filtering This can be achieved by applying zero-padding to the signals before performing circular convolution For a signal of length N and signal of length N Zero-pad with N zeros Zero-pad with N zeros Digital Signal Processing. Slide 4.6

Example For a signal of length N and signal of length N Zero-pad with N zeros to give ' Zero-pad ' with N zeros to give Equivalent to linear convolution Digital Signal Processing. Slide 4.7 Summary { } x ( n)* x ( n) = x ( n) x ( n) = IDFT X ( k) X ( k) ' ' ' ' given that and { } X ( k) = DFT x( n) x ' ( n) is a zero-padded version of x ( n) * means Linear Convolution means Circular Convolution Digital Signal Processing. Slide 4.8

6 x (n) x (n) 5 4 - - 4 sample 4 x ( n) x ( n) N.... N x'( n) x'( n) DFT DFT X ( k) x X ( k) X ( k) IDFT x ( n) - - 4 Linear Convolution x ( n) x ( n) x - 4 6 IFFT(X.*X) x - 4 6 Digital Signal Processing. Slide 4.9 Direct implementation N multiplies Complexity DFT Implementation 4 [ ( ) + + ( ) ] = 48 + 8 N N N N N for complex multiplications DFTs of N- points FFT Implementation Product of sequences of length N IDFT N N 4 logn + N + logn = Nlog N + 8N Number of multiplications.5.5.5.5 4 x 4 Direct Implementation FFT Implementation 5 5 N Digital Signal Processing. Slide 4.

Block Filtering FFT-based convolution has advantage of lower computational complexity But if data is long, must wait until all the data is captured Long delay Solution Use block filtering Use FFT-based convolution on short blocks of data Then join blocks together Sectioned convolution: two main methods Overlap add Overlap save Digital Signal Processing. Slide 4. Overlap-add Procedure yn ( ) = xmhn ( ) ( m) m= xn ( ) : data; divide into blocks of length hn ( ) : impulse response; length M L Perform linear convolution using FFT Each block of xn ( ) padded with M- zeros Each block of hn ( ) padded with L- zeros { } y ( n) = IFFT X ' ( k) H '( k) First block Computed once and stored Size of FFT: next integer power of greater than or equal to L+M- M is fixed by the filter impulse response Choose to obtain convenient size of FFT Digital Signal Processing. Slide 4.

Note that the length of y ( n) is L+M- first L are true values M- are in the overlap { } y ( n) = IFFT X ' ( k) H '( k) second block y ( n) is added to y ( n) with a shift of L L L L M zeros M zeros M zeros + + Digital Signal Processing. Slide 4. Overlap-save Procedure yn ( ) = xmhn ( ) ( m) m= xn ( ) : data; divide into blocks of length hn ( ) : impulse response; length M L Perform linear convolution using FFT Each block of xn ( ) consists of the last M- data points from previous data block follow by L new points Each block of hn ( ) padded with L- zeros { } y ( n) = IFFT X ' ( k) H '( k) First block Computed once and stored Size of FFT: next integer power of greater than or equal to L+M- M is fixed by the filter impulse response Choose to obtain convenient size of FFT Digital Signal Processing. Slide 4.4

Note that the length of is L+M- last L are true values M- are in the overlap { } y ( n) = IFFT X ' ( k) H '( k) second block Discard the first M-, only last L are saved M zeros L L L L x [ n] M x [ n] M x [ n] M y[ n] M y [ n] M y [ n] Digital Signal Processing. Slide 4.5 Correlation Operation to determine some measure of similarity between two signals Correlation of two signals xn ( ) and y( n) is defined as r ( l) = x( n) y( n l), l =, ±, ±,... xy n= l is the index of the correlation function rxy () l and is referred to as lag Autocorrelation is the special case when xn ( ) = y( n) Digital Signal Processing. Slide 4.6

Relationship between correlation and convolution Convolution s( n) = x( m) y( n m) m= = xn ( ) y( n) Time reversed and delayed of y[m] Correlation r () l = x( n) y( n l) xy n= = xny ( ) ( ( l n)) n= = xl () y( l) Delayed of y[n] Therefore, correlation can be implemented by a convolution algorithm providing one of the inputs is given time-inversed Digital Signal Processing. Slide 4.7 We can write Property of Correlation r () l = x( n) y( n l) xy n= = xn ( + l) yn ( ), l=, ±, ±... n= Similarly, r ( ) ( ) ( ) yx l = y nxn l n= = yn ( + lxn ) ( ), l=, ±, ±... n= From which, we can deduce that r () l = r ( l) xy For the autocorrelation function, we obtain an even function r () l = r ( l) xx yx xx Digital Signal Processing. Slide 4.8