Electrical Engineering and Computer Science

A Real-World Approach to Digital Signal Processing

  Bookmark and Share

Digital signal processing for Where's Waldo - one group managed to automate the classic scene-search game.

For two semesters, Prof. Laura Balzano's Digital Signal Processing course (EECS 351, formerly 451) has incorporated a data collection and analysis project that gives the students firsthand experience with sensors and many signal processing techniques. Students could use sensors or other data collection tools to pursue a goal of their choosing, ranging from smart handwriting replicators to recreating the reverb of famous recording environments.

The course received funding support from U-M's Third Century Initiative to expand sensor options available to the students. The course's arsenal by the end of the Fall 2014 included moisture sensors, heart rate monitors, digital cameras, air quality monitors, Fitbits, thermometers, and more. All these tools were selected by undergraduate group projects or graduate individual projects to gather whatever raw data they may need.


Group members Mengtian Wang, Dengwang Tang, Yuening Zhang, and Qilu Guo built a "face averager," resulting in the hybrid group face at right.

Each group or student prepared a presentation of their findings, made available here:

Fall 2014

Fall 2013

The project has been a big success. Many students commented in evaluations that the project gave them a chance to really make a connection to how the algorithms work in real life on real data. Some students decided to pursue signal processing because of this experience.

"This is the kind of project that will allow students to take signal processing into their daily life in the future," says Prof. Balzano. "I am really impressed by the creativity the students had in pursuing interesting projects."

Prof. Balzano's project model has attracted interest from her colleagues, and professors who teach the course in future semesters may incorporate the additions. Faculty from other institutions have already expressed interest in how the projects expose students to a variety of tools that they wouldn’t otherwise have time for in an undergraduate course.


Group members Nora Farouk, Ashley Hou, Deepti Mahajan, and Jonathan Tan designed neural networks for handwriting recognition.

Grad student Olivia Palmer transcribed a violin melody to sheet music notation based on frequency and time.

To encourage undergraduate students to take the course earlier in their academic career, the Digital Signal Processing course has been renumbered from EECS 451 to EECS 351 beginning fall semester of 2015. The course will include the same basic material, and will incorporate more image processing and machine learning techniques.

"I believe this will only improve the opportunity to incorporate new material into the course," says Prof. Balzano, "including data analysis tools that will be useful for these projects."

With students taking the course as much as a year earlier, they will be better prepared to take additional 400-level courses that build off the material, such as EECS 445 (Intro. to Machine Learning), 452 (Digital Signal Processing Design Laboratory) , 453 (Applied Matrix Algorithms for Signal Processing, Data Analysis and Machine Learning), 455 (Digital Communication Signals and Systems), and 460 (Control Systems Analysis and Design).


Posted: August 25, 2015