Digital Signal Processing (DSP) From Ground Up™ in Python
4.1 (331 ratings)
Course Ratings are calculated from individual students’ ratings and a variety of other signals, like age of rating and reliability, to ensure that they reflect course quality fairly and accurately.
2,023 students enrolled

Digital Signal Processing (DSP) From Ground Up™ in Python

Practical DSP in Python : Over 70 examples, FFT,Filter Design, IIR,FIR, Window Filters,Convolution,Linear Systems etc
4.1 (331 ratings)
Course Ratings are calculated from individual students’ ratings and a variety of other signals, like age of rating and reliability, to ensure that they reflect course quality fairly and accurately.
2,023 students enrolled
Last updated 4/2020
English
English, Afrikaans, 7 more
  • Arabic
  • German
  • Japanese
  • Korean
  • Polish
  • Russian
  • Simplified Chinese
Current price: $90.99 Original price: $129.99 Discount: 30% off
5 hours left at this price!
30-Day Money-Back Guarantee
This course includes
  • 12.5 hours on-demand video
  • 76 downloadable resources
  • Full lifetime access
  • Access on mobile and TV
  • Certificate of Completion
Training 5 or more people?

Get your team access to 4,000+ top Udemy courses anytime, anywhere.

Try Udemy for Business
What you'll learn
  • Develop the Convolution Kernel algorithm in Python
  • Design and develop 17 different window filters in Python
  • Develop the Discrete Fourier Transform (DFT) algorithm in Python
  • Design and develop Type I Chebyshev filters in Python
  • Design and develop Type II Chebyshev filters in Python
  • Develop the Inverse Discrete Fourier Transform (IDFT) algorithm in Pyhton
  • Develop the Fast Fourier Transform (FFT) algorithm in Python
  • Perform spectral analysis on ECG signals in Python
  • Design and develop Windowed-Sinc filters in Python
  • Design and develop Finite Impulse Response (FIR) filters in Python
  • Design and develop Infinite Impulse Response (IIR) filters in Python
  • Develop the First Difference algorithm in Python
  • Develop the Running Sum algorithm in Python
  • Develop the Moving Average filter algorithm in Python
  • Develop the Recursive Moving Average filter algorithm in Python
  • Design and develop Butterworth filters in Python
  • Design and develop Match filters in Python
  • Design and develop Bessel filters in Python
  • Simulate Linear Time Invariant (LTI) Systems in Python
  • Perform linear and cubic interpolation in Python
Course content
Expand all 151 lectures 12:43:30
+ Set Up
5 lectures 17:33
Installing Python
01:59
Using IDLE
02:52
Installing Python packages
03:37
Testing the packages
07:16
+ Python Essentials
10 lectures 01:22:37
Printing statements
06:06
Variables
07:19
Lists
05:17
Operators
12:23
Conditions
08:14
For Loops
07:28
While Loops
05:26
Functions
07:44
Dictionaries
10:17
Classes and Objects
12:23
+ Signal Statistics and Noise
12 lectures 01:04:51
Coding : Plotting signals with pyplot
07:35
Coding : Importing signals and dealing with subplots
12:31
Coding : Generating signals
12:07
Mean and Standard Deviation
04:10
Coding : Computing the Signal Mean
04:42
Coding : Developing the Signal Mean algorithm
05:33
Coding : Computing the Signal Variance
01:57
Coding : Developing the Signal Variance algorithm
07:27
Coding : Computing the Standard Deviation
02:19
Coding : Developing the Signal Standard Deviation algorithm
03:06
Signal-to-Noise ratio
00:58
+ Quantization and The Sampling Theorem
8 lectures 23:04
Quantization
02:31
Nyquist Theorem ( Sampling Theorem )
02:15
The Passive High-Pass Filter
02:29
The Modified Sallen-Key Filter
02:19
The Bessel, Chebyshev and Butterworth filters
03:28
Comparing the performance of the Bessel, Chebyshev and Butterworth filters
02:36
Information encoding : Time-domain and frequency-domain encoding
01:27
+ Linear Systems and Superposition
7 lectures 10:40
System Homogeneity
01:32
System Additivity
00:33
System Shift Invariance
01:06
Synthesis and Decomposition
02:11
Impulse Decomposition
02:10
Step Decomposition
01:51
+ Convolution
16 lectures 01:33:41
Introduction to Convolution
01:33
The Delta Function and Impulse Response
02:13
The Convolution Kernel
07:22
The Convolution Kernel (Part II)
00:53
The Output side analysis and the convolution sum equation
04:20
Coding : Examining the signals
07:19
Coding : Computing the convolution of two signals
07:07
Coding : Developing the Convolution algorithm
21:11
Coding : Computing the De-convolution of two signals
06:19
Coding : Correlation
07:17
The Identity property of convolution
01:30
The Running Sum and First Difference
02:02
Coding : Computing the running sum of a signal
08:04
Coding : Developing the Running Sum algorithm
06:52
Coding : Computing the First Difference of a signal
03:12
Coding : Developing the First Difference algorithm
06:27
+ Fourier Transsform
13 lectures 01:18:28
Introduction to Fourier Analysis
01:22
Introduction to Discrete Fourier Transform
04:50
DFT Basis Functions
03:23
Deducing the Inverse DFT
03:12
Calculating the Discrete Fourier Transform (DFT)
03:55
Coding : Developing the Discrete Fourier Transform (DFT) algorithm
15:53
Coding : Developing the DFT magnitude algorithm
10:03
Coding : Developing the Inverse Discrete Fourier Transform (IDFT) algorithm
20:35
Coding : Computing the IDFT of an ECG signal
05:25
Symmetry between Time domain and frequency domain -Duality
00:55
Polar Notation
02:50
Introduction to Spectral Analysis
02:31
The Frequency Response
03:34
+ Complex Numbers
5 lectures 08:46
The Complex Number System
02:05
Polar Representation of Complex Numbers
01:35
Euler's Relation
01:35
Representation of Sinusoids
01:57
Representing Systems
01:34
+ Complex Fourier Transform
4 lectures 07:14
Introduction to Complex Fourier Transform
01:43
Mathematical Equivalence
01:38
The Complex DFT Equation
00:36
Comparing Real DFT and Complex DFT
03:17
+ Fast Fourier Transform (FFT)
4 lectures 31:43
An Overview of how FFT works.
08:17
Understanding the complexity of calculating DFT directly
02:35
How the Decimation -in-Time FFT Algorithm works
09:00
Coding : Computing the FFT of a signal
11:51
Requirements
  • You will need just a good working computer for this course
Description

With a programming based approach, this course is designed to give you a solid foundation in the most useful aspects of Digital Signal Processing (DSP) in an engaging and easy to follow way. The goal of this course is to present practical techniques while avoiding  obstacles of abstract mathematical theories. To achieve this goal, the DSP techniques are explained in plain language, not simply proven to be true through mathematical derivations.


Still keeping it simple, this course comes in different programming languages and hardware architectures so that students can put the techniques to practice using a programming language or hardware architecture  of their choice. This version of the course uses the Python programming language.


By the end of this course you should be able develop the Convolution Kernel algorithm in python,  develop 17 different  types  of window  filters in python, develop the Discrete Fourier Transform (DFT) algorithm in python, develop the Inverse Discrete Fourier Transform (IDFT) algorithm in pyhton, design and develop Finite Impulse Response (FIR) filters in python, design and develop Infinite Impulse Response (IIR) filters in python, develop Type I Chebyshev filters in python, develop Type II Chebyshev filters in python, perform spectral analysis on ECG signals in python,  develop Butterworth filters in python, develop Match filters in python,simulate Linear Time Invariant (LTI) Systems in python, even give a lecture on DSP and so much more. Please take a look at the full course curriculum.

Who this course is for:
  • People working in the field of signal processing
  • University students taking classes in signal processing
  • Python developers who wish to expand their skills
  • People who want to understand signal processing practically and apply it to their respective fields.