Biomedical Signal Processing


Credit Hours:


Learning Objective:

  1. Understand practical problems in objective analyses of biomedical signals.
  2. Understand the theoretical background underlying the use of digital signal processing and statistical techniques for biomedical applications.
  3. Identify the best solution for specific problems by considering the benefits and limitations of various digital signal processing approaches.
  4. Implement appropriate signal processing algorithms for practical problems involving biomedical signals and systems.
  5. Propose, carry out, orally present, and write up in conference-proceedings format, a biomedical-research mini project using signal-processing.


This is a biomedical "data-science" course covering the application of signal processing and stochastic methods to biomedical signals and systems. A "hands-on" approach is taken throughout the course (see section on required software). While an orientation to biomedical data is key to this course, the tools and concepts covered here will provide foundational skills that are useful in many domains. Topics include: overview of biomedical signals; Fourier transforms review and filter design, linear-algebraic view of filtering for artifact removal and noise suppression (e.g., frequency filtering, regression, noise-cancellation, PCA, ICA); statistical inference on signals and images; estimation theory with application to inverse imaging and system identification; spectra, spectrograms and wavelet analyses; pattern classification and diagnostic decisions (machine learning approaches and workflow).
This course is distinct from other classic offerings in ECE/MA/STAT in at least three ways:

  1. relevant theory in signal processing and statistical methods is covered as needed, but a major focus is on implementation/application of the fundamental techniques to real-world biomedical signals.
  2. Statistical methods that are typically taught with a "univariate" perspective are expanded ot topologically organized high-dimensional data such as time-series and images, and done so motivated by the needs in biomedical applications (e.g., electrophysiology, neuroimaging).
  3. This course uses practical applications to integrate probabilistic methods with classic linear-algebraic tools (such as Fourier transforms). These foundational areas are ofthen introduced in separate courses, but are powerful when brought together.

Fall 2021 Syllabus

Topics Covered:

Sep28 Statistical inference (II) - Inference on 1D signals<.>
Aug 24,26Introduction; Orientation to Python; Fourier transform and general intuitions about different signal representations (linear-space view) PS0
Aug 31, Sep 02Noise reduction (I) - Triggered averaging; Filter design & trade-offs
Sep 07, 09Noise reduction (II) - Filtering beyond just frequencies using linear-space thinking, noise "cancellation" and regressionPS1 due
Sep14,16<.>Noise reduction (III) - Multichannel filtering, PCA and applications
Sep 21,23Statistical inference (I) - Basics, ROC curves, multiple comparisonsPS2 due
Sep 30Midterm project overview - P300 brain-computer interfacePS3 due
Oct 05, 07Statistical inference (III) - Review, extension of methods from 1D to images
Oct 12October Break - No Class
Oct 14Spectral and time-frequency analysis (I) - Auto/cross-correlation review; Spectrum estimation with preview of bias/variance tradeoff
Oct 19, 21Spectral and time-frequency analysis (II) - Tapering and multitaper methods Midterm project due
Oct 26, 28Spectral and time-frequency analysis (III) - Non-stationary signals and wavelets
Nov 02Modeling of biomedical signals and systems (I) - Introduction to statistical estimation (ML), bias, and variance
Nov 04Modeling of biomedical signals and systems (II) - Regularization (i.e., priors, MAP) and model selection
Nov 09Modeling of biomedical signals and systems (III) - Minimum norm estimation and deconvolution example, Loess regression PS4 due
Nov 11, 16Spectral and time-frequency analysis (IV) - Cross-spectrum, coherence, and phase lockingFinal proposal due>
Nov 18, 23Machine learning approaches (I) - ROC curve review; Linear classifiers and perceptron example; Support vector machines
Nov 25Thanksgiving - No Class
Nov 30, Dec 02Machine learning approaches (II) - The 'training ->Validation ->Testing" workflow and combating overfitting; unsupervised clustering
Dec 07Machine learning approaches (III) - Worked examples; External resources on neural networks and deep learningMultiple choice due
Dec 09Review and consolidation with more examples
Dec 13-17Final project presentations during exam week (no exam)Final report due


ECE 301 or equivalent (Signals and Systems), ECE 302 or equivalent (Probability/Random Processes), Familiarity with Python (Python will be the default language used in class, but if you strongly prefer using MATLAB instead, that is an option too). If you have questions about whether you have the requisite background, please feel free to get in touch in advance, or within the first week of classes.

Applied / Theory:

60 / 40

Web Address:


Problem sets


Midterm Project (about 2-3 weeks):
A pre-defined midterm project will apply signal processing to a brain-computer interface (BCI) dataset that is based on the so-called "P300" response measured using electroencephalography (EEG). Detailed instructions will be provided to walk through the problem at hand and specify the deliverables. The data set comes from Hoffmann et al. (2008) and includes measurements both from typical control individuals and individuals with limited muscle control.
Hoffmann, U., Vesin, J. M., Ebrahimi, T., & Diserens, . (2008). An efficient P300-based brain-computer interface for disabled subjects. Journal of Neuroscience methods, 167(1), 115-125.
Final Project (final 4 weeks or so):
An independent project will apply signal processing to a research question of interest to each student. This project can either be related to ongoing research in a lab or can replicate a published study. The final projects are intended to be extensive as they will hopefully be in an area of direct interest and familiarity to each student. Projects will be presented to the class during the final two weeks of the semester (modeled after a ~10-min conference talk) and will be written up in a final report (modeled after a brief conference proceedings paper, ~2000 words + figures + references). Grading is based on content, oral presentation, and written presentation. Note: content is judged based on waht you accomplish by submission of your written report, i.e., you are welcome to keep working after your oral presentation and include a more complete version in your written report.


No exams


No required textbooks. Class notes and code examples will be provided.

Computer Requirements:

  1. Python>= 3.6 (or MATLAB if you prefer
  2. Any software to typeset PDF documents (e.g., Jupyter notebooks converted to PDF, or Microsoft (TM) Word -> convert/print to PDF, or LaTeX)
  3. Software for final project presentations (e.g., Powerpoint, LaTeXBeamer, etc. converted to PDFs)

ProEd Minimum Requirements: