Signal processing

COM-202

Media

EE-205 Signals and Systems - Spring 2021

EPFL EE-205 - cours 11 - 2025

25.05.2025, 10:13

Cours EPFL EE-205 Signaux et Systèmes
Cours 11
23 mai 2025
Prof. Jean-Philippe Thiran

EPFL EE-205 - cours 10 - 2025

16.05.2025, 16:28

Cours EPFL EE-205 Signaux et Systèmes
Cours 10
16 mai 2025
Prof. Jean-Philippe Thiran

EPFL EE-205 - cours 9 - 2025

14.05.2025, 21:13

Cours EPFL EE-205 Signaux et Systèmes
Cours 9
9 mai 2025
Prof. Jean-Philippe Thiran

EPFL EE-205 - cours 8 - 2025

03.05.2025, 17:53

Cours EPFL EE-205 Signaux et Systèmes
Cours 8
2 mai 2025
Prof. Jean-Philippe Thiran

EPFL EE-205 - cours 7 - 2025

04.04.2025, 23:45

Cours EPFL EE-205 Signaux et Systèmes
Cours 7
4 avril 2025
Prof. Jean-Philippe Thiran

EPFL EE-205 - cours 5 - 2025

21.03.2025, 21:09

Cours EPFL EE-205 Signaux et Systèmes
Cours 5
21 mars 2025
Prof. Jean-Philippe Thiran

EPFL EE-205 - cours 4 - 2025

14.03.2025, 16:28

Cours EPFL EE-205 Signaux et Systèmes
Cours 4
14 mars 2025
Prof. Jean-Philippe Thiran
Enter Description...

EPFL EE-205 - cours 3 - 2025

07.03.2025, 16:24

Cours EPFL EE-205 Signaux et Systèmes
Cours 3
7 mars 2025
Prof. Jean-Philippe Thiran

EPFL EE-205 - cours 2 - 2025

28.02.2025, 23:38

Cours EPFL EE-205 Signaux et Systèmes
Cours 2
28 février 2025
Prof. Jean-Philippe Thiran

EPFL EE- 205 - cours 1 - 2025

27.02.2025, 09:33

Cours EPFL EE-205 Signaux et Systèmes
Cours 1
21 février 2025
Prof. Jean-Philippe Thiran

EPFL - EE-205 – Signaux & Systèmes - intro 2025

21.02.2025, 15:35

Introduction au cours EPFL EE-205 Signaux et Systèmes
Section EL
Prof. Jean-Philippe Thiran - 21 février 2025

EPFL - EE-205 - cours 11

31.05.2024, 22:42

Cours EPFL EE-205 Signaux et Systèmes
Cours 11
31 mai 2024
Prof. Jean-Philippe Thiran

EPFL - EE-205 - cours 10

24.05.2024, 20:30

Cours EPFL EE-205 Signaux et Systèmes
Cours 10
24 mai 2024
Prof. Jean-Philippe Thiran

EPFL - EE-205 - cours 9

17.05.2024, 19:58

Cours EPFL EE-205 Signaux et Systèmes
Cours 9
17 mai 2024
Prof. Jean-Philippe Thiran

EPFL - EE-205 - cours 8

04.05.2024, 09:58

Cours EPFL EE-205 Signaux et Systèmes
Cours 8
3 mai 2024
Prof. Jean-Philippe Thiran

EPFL - EE-205 - cours 7

26.04.2024, 20:44

Cours EPFL EE-205 Signaux et Systèmes
Cours 7
26 avril 2024
Prof. Jean-Philippe Thiran

EPFL - EE-205 - cours 6

15.04.2024, 12:35

Cours EPFL EE-205 Signaux et Systèmes
Cours 6
12 avril 2024
Prof. Jean-Philippe Thiran

EPFL - EE-205 - cours 5

22.03.2024, 16:04

Cours EPFL EE-205 Signaux et Systèmes
Cours 5
22 mars 2024
Prof. Jean-Philippe Thiran

EPFL - EE-205 - cours 4

15.03.2024, 16:11

Cours EPFL EE-205 Signaux et Systèmes
Cours 4
15 mars 2024
Prof. Jean-Philippe Thiran

EPFL - EE-205 - cours 3

08.03.2024, 15:50

Cours EPFL EE-205 Signaux et Systèmes
Cours 3 - 8 mars 2024
Prof. Jean-Philippe Thiran

EPFL - EE-205 - cours 2

01.03.2024, 16:00

Cours EPFL EE-205 Signaux et Systèmes
Cours 2 - 1er mars 2024
Prof. Jean-Philippe Thiran

EPFL - EE-205 - cours 1

01.03.2024, 15:24

Cours EPFL EE-205 Signaux et Systèmes
Cours 1 - 23 férvier 2024
Prof. Jean-Philippe Thiran

EPFL - EE-205 - introduction 2024

01.03.2024, 15:21

Introduction au cours EPFL EE-205 Signaux et Systèmes
Section EL
Prof. Jean-Philippe Thiran - 23 février 2024

Final Exam Review Session - Sampling

16.06.2021, 13:10

Lecture 12 - Course Overview

03.06.2021, 14:41

Lecture 12 - System Composition

01.06.2021, 17:47

Lecture 12 - Difference Equations

01.06.2021, 17:36

Lecture 12 - LTI Systems and z-Transform

01.06.2021, 17:32

Lecture 11 - z-Transform and LTI Systems

26.05.2021, 14:19

Lecture 11 - ROC for rational transforms

26.05.2021, 14:17

Lecture 11 - Region of Convergence (ROC)

26.05.2021, 08:00

Lecture 11 - Introduction to the z-Transform

26.05.2021, 07:43

Lecture 10 - Control Systems

21.05.2021, 11:24

Lecture 10 - Block Diagrams

19.05.2021, 08:29

Lecture 10 - Differential Equations and System Composition

19.05.2021, 08:17

Lecture 10 - Laplace Transform and LTI Systems

19.05.2021, 08:01

Lecture 9 - LTI Systems and the Laplace Transform

12.05.2021, 08:26

Lecture 9 - ROC 2

12.05.2021, 08:24

Lecture 9 - ROC

12.05.2021, 07:57

Lecture 9 - Introduction to the Laplace Transform

12.05.2021, 07:53

Midterm Review - Problem 5

07.05.2021, 11:56

Midterm Review - Problem 4

07.05.2021, 11:55

Midterm Review - Probmes 1, 2, and 3

07.05.2021, 11:55

Lecture 8 - Sampling

06.05.2021, 08:39

Lecture 7 - Sampling and Reconstruction

29.04.2021, 10:09

Lecture 7 - The Sampling Theorem

28.04.2021, 11:56

Lecture 7 - Sampling Complex Exponentials

28.04.2021, 10:22

Lecture 7 - Introduction to Sampling

28.04.2021, 09:06

Midterm Review Session

21.04.2021, 08:33

Lecture 6.3 - Filters

14.04.2021, 15:15

Lecture 6.2 - Frequency Response and System Composition

14.04.2021, 10:06

Lecture 6.1 - Frequency Response

14.04.2021, 09:54

Lecture 5.4 - DTFT and stable LTI systems

23.03.2021, 17:53

Lecture 5.3 - DTFT Properties

23.03.2021, 17:50

Lecture 5.2 - DTFT

23.03.2021, 17:39

Lecture 5.1 - Partial Fraction Expansion

23.03.2021, 17:33

Lecture 4.4 - Stable LTI systems

16.03.2021, 15:17

Fourier Properties

16.03.2021, 15:15

Lecture 4.2 - Fourier Pairs

16.03.2021, 15:12

Lecture 4.1 - Fourier Transform

16.03.2021, 15:08

Lecture 3.4 - Differential and Difference Equations

10.03.2021, 16:46

Lecture 3.3 - LTI System Properties

09.03.2021, 14:31

Lecture 3.2 - Graphical Convolution

09.03.2021, 14:31

Lecture 3.1 - System Composition

09.03.2021, 14:30

Lecture 2.4 - Convolution

02.03.2021, 17:26

Lecture 2.3 - CT Impulse Response

02.03.2021, 17:23

Lecture 2.2 - Dirac Delta

02.03.2021, 16:53

Lecture 2.1 - LTI Systmes

02.03.2021, 16:47

Lecture 1.4 - Systems

25.02.2021, 11:57

Lecture 1.3 - Signals

24.02.2021, 15:49

Lecture 1.2 - Course Logistics

24.02.2021, 11:38

Lecture 1.1 - Course Introduction

24.02.2021, 11:37

Review Session - Part 3

28.07.2020, 14:51

Open Problems 3 and 1

Review Session - Part 2

28.07.2020, 14:49

Open Problems 4 and 5

Review Session - Part 1

28.07.2020, 14:47

Multiple choice Q7, Q9, Q10, and Q11 from the sample final.

Lecture 13 (Midterm Solutions) - Part 2

02.06.2020, 13:53

We go over solutions to the sample midterm.

Part 2  is questions 2 and 3.

Lecture 13 (Midterm Solutions) - Part 1

02.06.2020, 13:51

We go through Midterm Solutions.

Part 1 is multiple choice questions.

Lecture 13 - Course Review

28.05.2020, 09:06

A review of theoretical concepts covered in the course.

Lecture 12 - Part 3

23.05.2020, 15:56

Questions about Lecture 12 Parts 1 and 2, System Composition Examples.

Lecture 12 - Part 2

21.05.2020, 11:47

Application of Laplace transform to LTI Systems

Lecture 12 - Part 1

21.05.2020, 11:10

Laplace transform, ROC with multiple poles

Lecture 11 - Part 3 (Interactive Lecture Session)

15.05.2020, 15:10

Questions on Laplace transform, Inverse Laplace transform example

Lecture 11 - Part 2

14.05.2020, 08:42

Lecture 11 - Part 1

14.05.2020, 08:26

Introduction to Laplace transform, Region of Convergence (ROC), Application to LTI systems.

Lecture 10 - Part 3

11.05.2020, 13:04

Lecture 10 - Part 2

07.05.2020, 07:54

Transfer function of composed LTI systems, difference equations

Lecture 10 - Part 1

07.05.2020, 07:47

Z-transform region of convergence, multiple poles example

Lecture 9 - Part 2

30.04.2020, 08:21

Z-Transforms, Region of Convergence (ROC), Poles and Zeros

Lecture 9 - Part 1

30.04.2020, 07:55

Introduction to the Z-Transform, transfer function for LTI systems

Lecture 8 - Part 3

25.04.2020, 16:38

Sampling review. Examples 2 and 3 on Nyquist rate of signals.

Lecture 8 - Part 2

23.04.2020, 11:55

Sampling reconstruction, aliasing, examples.

Lecture 8 - Part 1

23.04.2020, 09:41

Impulse-train sampling, the sampling theorem

Lecture 7 - Part 3

14.04.2020, 13:42

Supplementary example from the interactive lecture session. This example deals with modulation and is similar to problem 3 on problem set 7.

Lecture 7 - Part 2

14.04.2020, 13:41

Frequency response properties and filters.

Lecture 7 - Part 1

14.04.2020, 13:41

Frequency response interpretation

Lecture 6 - Part 3

14.04.2020, 13:39

DTFT pairs and properties

Lecture 6 - Part 2

14.04.2020, 13:38

Definition of discrete-time Fourier transform

Lecture 6 - Part 1

14.04.2020, 13:37

Introduction to discrete-time Fourier transform.

Lecture 5 - Part 4

14.04.2020, 13:09

Application of Fourier transform to LTI systems

Lecture 5 - Part 3

14.04.2020, 13:09

Fourier transform properties

Lecture 5 - Part 2

14.04.2020, 13:08

Definition of Fourier transform and Fourier transform pairs.

Lecture 5 - Part 1

14.04.2020, 13:05

Introduction to continuous-time Fourier transform.


This file is part of the content downloaded from Signal processing.
Course summary

Welcome to the spring 2025 edition of Signal Processing (COM-202)!



Practical information

Class Schedule:

Lectures:
Monday, 15:15 to 17:00, room BCH2201
Tuesday, 10:15 to 12:00, room CE14

Python lab sessions:
Monday, 17:15 - 19:00, rooms INF2, INF3

Exercise sessions:
Friday, 08:15-10:00, rooms INM10, INM11, INM201, INM202
Important: every student has been assigned to a specific room for all the exercise sessions in the semester and you can find your room number via this link. In order to avoid overcrowding, it is mandatory that you respect the official room assignment.
Update: Due to lack of attendance, there won't be any assistants in the room INM10 from now on. If you are assigned to INM10, you can use the room for self study or go to INM11. (28.03.2025)


Teaching Staff:

Instructors:
Shkel, Yanina
Prandoni, Paolo

Teaching Assistants:
Coban, Emre
Deschenaux, Justin
Song, Ryan
Çadir, Cemre


Homework, coding labs, and grading policy

Homework and Exercise Sessions 

Every Monday, a new problem set will be made available on Moodle; the exercises will focus on the topics covered during the lectures on Monday and Tuesday. Every Friday you will be able to attend a two-hour exercise session led by the teaching assistants, where you will be able to work on the problems and ask for clarifications or assistance if needed. Of course you are encouraged to start working on the problems before Friday's session in order to make the most of the interaction with the teaching staff.

Every week, one question from the homework will be selected for grading and ten percent of your final grade will be based on your answers, which will be graded on a pass/fail scale. The relevant question will be indicated on Moodle and you should upload your answer the day before the exercise session of the following week (in other words: homework sets will be posted on Monday and you will have ten days to submit your answer, with the deadline being on the Thursday of the following week at 23:59). For paper and pencil problems you can submit your answer as a legible photo or scan of your handwritten solution, or any other digital format.

The homework solution will be posted on Moodle after the submission deadline. You can of course discuss and ask questions about the homework on the class forum but please do not post explicit answers before the submission deadline; posts breaking this rule will be removed by the moderators.

It is essential that you do your homework and that you try to do it by yourself. Only by thinking hard and by solving the homework problems you can gain a true understanding of the course material and prepare yourself for the exam.


Weekly Lab Sessions

The great thing about Signal Processing is that almost everything that we will study in class can be implemented in practice as a computer program. To help you develop a feel for how to translate the theory into algorithmic implementations we have prepared a series of Jupyter Notebooks using Python that complete and cast in a computational light the topics discussed during the lectures.

Every Monday afternoon, you will have the opportunity to participate in a hands-on lab session where you can explore and play with the notebooks that have been released so far. In many cases, you will be asked to complete part of the code or write short functions that implement some signal processing functionality; teaching assistants will be there to answer your questions and help you if you get stuck. It is important that you complete the labs early in the week, as lectures will be based on the lab content. 

While the labs will not be graded directly, it is crucial that you work on them diligently since a) some of the homework problems will require you to write some code and 2) the final exam will include questions that require you to understand how to code signal processing algorithms in Python.

Python notebooks HOWTO:

Python notebooks are special .ipynb files that combine code, commentary in HTML or markup, audio, video and other media. They are meant to be edited and run in a browser, which acts as the user interface to an underlying Python interpreter.

From a practical point of view, ideally you will want to run the Python notebooks on your own PC; for this I recommend installing Anaconda, which includes Jupyer lab out of the box. In this case the Python interpreter and the associated environments will be running locally, with obvious efficiency and access to the local filesystem. The notebooks are hosted in GitHub and the easiest way to obtain them in one go is to simply clone this repository.

Alternatively, thanks to the NOTO team at EPFL, you have the option to use your browser to connect to a remote Python environment. In this case you do not need to install a local Python distribution and libraries but of course you will be limited by the fact that the computing resources are shared among many users. The NOTO environment is very convenient to explore notebooks from any PC and you can either import notebooks directly from GitHub or upload your own files. For your convenience, every week we will provide a link to open the current notebook in your NOTO sandbox.

Final exam and grading

There will be no midterm exam but we will hand out a take-home, non-graded midterm during the semester that you can use as a checkpoint to see if you're up to speed with the class. We expect to release the midterm the week of April 7, but we reserve the right to update this date if needed. To help you work on the midterm, we plan to not have a separate problem set that week; you will have the exercise session to work on it. When the time comes, please try to solve the mock midterm as if it were a real exam; the solution will be discussed in class the following week. 

The date and place for the final exam will be announced towards the end of the semester. The final exam is closed-book. However, you will be allowed to bring with you two double-sided A4 sheets of handwritten notes: photocopies are not allowed. Calculators and all other electronic devices are not allowed either. 

The final exam will be a mix of multiple choice and open answer questions. About half of the final exam will be multiple choice, and about half will be open questions. We will provide you with a sample final that will match the format of the actual final by the end of the semester. 

Grading: If you do not hand in your final exam your overall grade will be “NA”. Otherwise, your grade will be determined based on the following weighted average: 

  • 10% for the submitted homework questions (0 to 10 points)
  • 90% for the final exam (0 to 90 points)

The sum of your homework score and your final exam score will be mapped to your final grade using the following scale:

Points 0 - 9 10 - 14 15 - 19 20 - 24 25 - 29 30 - 34 35 - 39 40 - 44 45 - 49
Grade 1 2 2.25 2.5 2.75 3 3.25 3.5 3.75
Points 50 - 54 55 - 59 60 - 64 65 - 69 70 - 74 75 - 79 80 - 84 85 - 89 90+
Grade 4 4.25 4.5 4.75 5 5.25 5.5 5.75 6

Class material and additional resources

Every week, we will post lecture slides from in-person lectures, weekly problem sets, and problem set solutions on Moodle. Additional handouts will also be made available occasionally.

For those of you who prefer working on a textbook, please consider getting a copy of Signal processing for Communications, EPFL Press, 2008, by P. Prandoni and M. Vetterli. You can download a pdf copy online for free here (or purchase the printed edition online, although availability may vary). The book covers primarily the "discrete time" portions of the course.

Recommended additional textbooks:

  • Discrete-Time Signal Processing, by A. V. Oppenheim and R. W. Schafer (Prentice-Hall, 1989); this is the "bible" of digital signal processing and a must-have textbook if you are serious about DSP.
  • Signals & Systems, by A. V. Oppenheim, A. S. Willsky, S. H. Nawab (Prentice-Hall, 1997); another classic textbook, with a focus on continuous-time signals and systems.
  • Foundations of Signal Processing, by M. Vetterli, J. Kovacevic and V. Goyal; extremely comprehensive and rigorous reference; a must-read for the more mathematically inclined. The textbook is available for sale but you can also get a pdf copy online.

Online lectures:

Although this edition of COM-202 will not be recorded, a significant part of the material that we will cover in class is available as a four-part online class on Coursera. The online course has been available to the public free of charge for the past eight years and has attracted more than 100K students worldwide so far; this user volume made sure that most (if not all) typos and mistakes have been found and corrected. On top of the videos, the online material contains several sets of auto-graded exercises that provide you with additional ways to test your progress. You are welcome to use the online material as a supplemental resource or as a replacement for the on-campus lectures if you miss any. (Please note that Coursera will try to ask you for your credit card information when you enroll in the DSP classes; simply ignore their prompt and click on "Audit the course" to enroll for free). You may also wish to access the Signals and Systems 2021 Videos to supplement the online Coursera class.



Final Exam Information

Time: Friday 20.06.2025, from 15h15 to 18h15

Location: CO 1, CO 2, CO 3, SG 0211


week 1 Mon, 1pm   Lecture  
  Introduction to COM 202 and practical information
Mon, 5pm   Lab (INF2, INF3)     Introduction to Python & NumPy (warmup)
Tue, 10am   Lecture 
  Discrete-time signals and their properties 
Fri, 8am   Exercises     Exercise session for Homework #1

week 2 Mon, 3pm   Lecture  
 Review of linear algebra and vector space  
Mon, 5pm   Lab (INF2, INF3) 
 Work on released notebooks
Tue, 10am   Lecture  
 Vector spaces for signals 
Fri, 8am   Exercises    Homework #2

week 3 Mon, 1pm   Lecture 
  Introduction to Fourier Analysis  
Mon, 5pm   Lab (INF2, INF3) 
 Notebook #2: the DFT  
Tue, 10am   Lecture  
 The Discrete Fourier Transform  
Fri, 8am   Exercises    Homework #3 

week 4 Mon, 3pm   Lecture  
 The short-time Fourier Transform (STFT)  
Mon, 5pm   Lab (INF2, INF3) 
 Work on released notebooks
Tue, 10am   Lecture  
 IC Boost - no class today  
Fri, 8am   Exercises    Homework #4

week 5 Mon, 3pm   Lecture  
 The DTFT  
Mon, 5pm   Lab (INF2, INF3) 
 Lab #3: DTMF dialing 
Tue, 10am   Lecture  
 DTFT and wrap-up of Fourier analysis  
Fri, 8am   Exercises    Homework #5 

week 6 Mon, 3pm   Lecture 
 Linear Time-Invariant Discrete-Time Systems  
Mon, 5pm   Lab 
 Work on released notebooks
Tue, 10am   Lecture 
 Ideal filters 
Fri, 8am   Exercises     Homework #6

week 7 Mon, 3pm   Lecture  
  The z-transform 
Mon, 5pm   Lab  
  Work on released notebooks    
Tue, 10am   Lecture  
  Filter design 
Fri, 8am   Exercises     Homework #7

week 8 Mon, 3pm   Lecture
  Filter implementation 
Mon, 5pm   Lab  
  Lab#4: discrete-time filters  
Tue, 10am   Lecture 
  Real-time audio processing 
Fri, 8am   Exercises     Homework #8

week 9 Mon, 3pm   Lecture 
  Signal Processing in the Wild (by S. Kashani) 
Mon, 5pm   Lab   You can use the lab session to work on Mock Midterm
Tue, 10am   Lecture 
  Continuous-time signal processing and Fourier analysis 
Fri, 8am   Exercises     no exercise session (holiday)


week 10 Mon, 3pm   Lecture 
  Sampling
Mon, 5pm   Lab   No new lab today   
Tue, 10am   Lecture  
  Interpolation 
Fri, 8am   Exercises     Homework #10 

week 11 Mon, 3pm   Lecture 
  Applications of sampling and interpolation, multirate  
Mon, 5pm   Lab
  Lab #5: Audio signal processing
Tue, 10am   Lecture 
  Solution and discussion of midterm exercises
Fri, 8am   Exercises     Homework #11

week 12 Mon, 3pm   Lecture  
 Stochastic and adaptive signal processing 
Mon, 5pm   Lab
 Lab #6: adaptive echo cancellation
Tue, 10am   Lecture (CM12)    Quantization
Fri, 8am   Exercises    Review of past homework 

week 13 Mon, 3pm   Lecture 
  Image processing
Mon, 5pm   Lab  
  Work on released notebooks  
Tue, 10am   Lecture  
  Final review and discussion of typical exam questions
Fri, 8am   Exercises     Homework #12

week 14 Mon, 3pm   Lecture
  Compression
Mon, 5pm   Lab 
  No lab (but you can come to the lab room to ask questions!)  
Tue, 10am   Lecture 
  Final review and discussion of typical exam questions
Fri, 8am   Exercises     review session

recycle bin