This repository contains a collection of Jupyter notebooks discussing various topics of Digital Signal Processing. The notebooks provide an introduction into the foundations of spectral analysis, random signals, quantization and filtering. A basic understanding of discrete signals and systems is assumed. See index.ipynb for an overview on the available topics. The theory is accompanied by computational examples written in IPython 3. These examples are best explored in an interactive manner. The notebooks constitute the lecture notes to the masters course Digital Signal Processing read by Sascha Spors, Institute of Communications Engineering, Universität Rostock.
You can give the repository a Star if you like the notebooks. You are invited to contribute by reporting errors and suggestions as issues or directly via Sascha.Spors@uni-rostock.de. I am also looking forward to new examples or topics. The long term vision is a community driven knowledge base for the foundations and applications of Digital Signal Processing.
The Jupyter notebooks are available
- Online as static web pages
- Online for interactive use using binder
- Local (offline) use on your computer
The local use on your computer requires a local Jupyter/IPython installation. The Anaconda distribtution provides a good starting point. You have to download or clone the notebooks from Github. Use a Git client to clone the notebooks and then start your local Jupyter server. For manual installation of Jupyter under OS X/Linux please refer to your packet manager.
The notebooks are provided as Open Educational Resources. Feel free to use the notebooks for your own purposes. The text/images are licensed under Creative Commons Attribution 4.0, the code of the IPython examples under the MIT license. Please attribute the work as follows: Sascha Spors, Digital Signal Processing - Lecture notes featuring computational examples, 2016-18.