Tags
Language
Tags
November 2024
Su Mo Tu We Th Fr Sa
27 28 29 30 31 1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30

A Simple Introduction To Digital Signal Processing

Posted By: ELK1nG
A Simple Introduction To Digital Signal Processing

A Simple Introduction To Digital Signal Processing
Last updated 7/2023
MP4 | Video: h264, 1280x720 | Audio: AAC, 44.1 KHz
Language: English | Size: 10.32 GB | Duration: 13h 46m

With Practical Applications in Python

What you'll learn

How signals are represented by sinusoids.

What it means for a system to be linear and time-invariant.

How digital filters can be represented by difference equations.

What the frequency response of a system is.

What convolution is and why it is important in signal processing.

What it means for two signals to be correlated.

How the discrete Fourier transform can be used to identify the frequencies present in a signal.

Get a crash course in Python.

How Python can be used to produce practical applications of digital signal processing.

Requirements

It would be nice to have had linear algebra, but most of what is taught can be understood without it.

If you wish to run the code, then you will need a computer that can run Python.

Python 3.x (directions for installing are given in the course).

Description

When I was an undergraduate I took a course called Linear Systems, which provides background theory for courses like Digital Signal Processing, Control Systems, and Communication Systems. While I did earn a grade of A in the course, I never really understood the purpose of the course beyond it being a prerequisite to other courses that I was required to take. My goal in this course is to introduce you to digital signal processing in such a way that you not only understand the purpose of the various topics, but that you also see how you can apply the material. In order to demonstrate practical applications of digital signal processing, I provide about a dozen Python programs for doing such things as removing noise from audio files, removing noise from images, identifying which phone numbers are pressed on a touch-tone phone, and analyzing temperature data. I go over each program, explaining how it works and how I designed it. I don't assume that you have already programmed using the Python programming language, so I also provide a crash course to get you up to speed. This course is not for someone wanting a rigorous, theory- and math-heavy course; there are many available options if this is what you are looking for.  This isn't to say that we will not use math in this course. I think that there is too much that you need to know that you can't really understand without some math.  To help you with the math that we will learn, I review complex numbers and complex exponentials at the beginning of the course. Then as we learn new topics I provide practice problems with my solved answers.

Overview

Section 1: Introduction

Lecture 1 Introduction

Lecture 2 Review of Complex Numbers

Lecture 3 Review of Complex Arithmetic (with practice problems)

Section 2: Python Crash Course

Lecture 4 Installing Anaconda on Linux (also watch if using Mac OS)

Lecture 5 Installing Anaconda on Windows

Lecture 6 Statements

Lecture 7 Booleans

Lecture 8 Conditionals

Lecture 9 Loops

Lecture 10 Program Development

Lecture 11 Functions

Lecture 12 Lists

Lecture 13 Strings

Lecture 14 Files

Lecture 15 Dictionaries

Lecture 16 Numpy

Lecture 17 Matplotlib

Section 3: Sinusoids and Basic Signals

Lecture 18 Sinusoids

Lecture 19 Sinusoids Example (with practice problems)

Lecture 20 Sampling

Lecture 21 Aliasing (with practice problems)

Lecture 22 Application: Music Generation

Lecture 23 Basic Filters

Lecture 24 Basic Signals

Lecture 25 Difference Equations (with practice problems)

Section 4: Linear, Time-Invariant (LTI) Systems

Lecture 26 Linear, Time-Invariant (LTI) Systems

Lecture 27 Linearity Examples, part 1

Lecture 28 Linearity Examples, part 2 (with practice problems)

Lecture 29 Time-Invariance Examples

Lecture 30 Application: Decoding a Digital Message

Section 5: Time-Domain Analysis

Lecture 31 Impulse Response

Lecture 32 FIR vs IIR Filters

Lecture 33 Linear Convolution

Lecture 34 Convolution Property: Commutativity

Lecture 35 Convolution Property: Associativity

Lecture 36 Convolution Property: Distributitvity (with practice problems)

Lecture 37 Application: Image Processing

Lecture 38 Correlation (with practice problems)

Lecture 39 Application: Template Matching

Section 6: Frequency-Domain Analysis

Lecture 40 Frequency-Domain Analysis

Lecture 41 Harmonics (with practice problems)

Section 7: Discrete Fourier Transform

Lecture 42 The Discrete Fourier Transform (DFT)

Lecture 43 DFT: A Conceptual Understanding (with practice problems)

Lecture 44 Application: Noise Removal from Audio using the DFT

Lecture 45 Application: Analyzing Temperature Data using the DFT

Section 8: Frequency Response

Lecture 46 Frequency Response of a Filter

Lecture 47 Frequency Response and Convolution

Section 9: Spectrogram

Lecture 48 The Spectrogram

Lecture 49 Application: Identifying a Phone Number using DTMF

Lecture 50 Feature Selection

Lecture 51 Application: Classifying Audio Files

Section 10: Design of Nonrecursive Filters

Lecture 52 Design of Nonrecursive Filters, part 1

Lecture 53 Design of Nonrecursive Filters, part 2

Lecture 54 Application: Noise Removal from Audio using an FIR Filter

Section 11: Frequency-Domain Analysis and the z-Transform

Lecture 55 The z-Transform

Lecture 56 The z-Transform: Poles and Zeros

Lecture 57 The z-Transform: Examples

Lecture 58 The z-Transform and Convolution (with practice problems)

Lecture 59 Application: Remove a Specific Frequency with a Notch Filter

Section 12: Design of Recursive Filters

Lecture 60 Design of Recursive Filters, part 1

Lecture 61 Design of Recursive Filters, part 2 (with practice problems)

Lecture 62 Application: Change Low Frequencies with a Shelving Filter

Lecture 63 Application: Separate Audio with Blind Source Separation

Section 13: End of Course

Lecture 64 Where to Go From Here

Someone without an electronics background who is interested in knowing more about Digital Signal Processing and some of its applications,.,Someone taking (or has taken) an undergraduate-level signal processing course that is mathematically rigorous but light on practical applications.