Signal processing problems, solved in MATLAB and in Python
What you'll learn
- Understand commonly used signal processing tools
- Design, evaluate, and apply digital filters
- Clean and denoise data
- Know what to look for when something isn't right with the data or the code
- Improve MATLAB or Python programming skills
- Know how to generate test signals for signal processing methods
- *Fully manually corrected English captions!
- Basic programming experience in MATLAB or Python
- High-school math
Why you need to learn digital signal processing.
Nature is mysterious, beautiful, and complex. Trying to understand nature is deeply rewarding, but also deeply challenging. One of the big challenges in studying nature is data analysis. Nature likes to mix many sources of signals and many sources of noise into the same recordings, and this makes your job difficult.
Therefore, one of the most important goals of time series analysis and signal processing is to denoise: to separate the signals and noises that are mixed into the same data channels.
The big idea of DSP (digital signal processing) is to discover the mysteries that are hidden inside time series data, and this course will teach you the most commonly used discovery strategies.
What's special about this course?
The main focus of this course is on implementing signal processing techniques in MATLAB and in Python. Some theory and equations are shown, but I'm guessing you are reading this because you want to implement DSP techniques on real signals, not just brush up on abstract theory.
The course comes with over 10,000 lines of MATLAB and Python code, plus sample data sets, which you can use to learn from and to adapt to your own coursework or applications.
In this course, you will also learn how to simulate signals in order to test and learn more about your signal processing and analysis methods.
You will also learn how to work with noisy or corrupted signals.
Are there prerequisites?
You need some programming experience. I go through the videos in MATLAB, and you can also follow along using Octave (a free, cross-platform program that emulates MATLAB). I provide corresponding Python code if you prefer Python. You can use any other language, but you would need to do the translation yourself.
I recommend taking my Fourier Transform course before or alongside this course. However, this is not a requirement, and you can succeed in this course without taking the Fourier transform course.
What should you do now?
Watch the sample videos, and check out the reviews of my other courses -- many of them are "best-seller" or "top-rated" and have lots of positive reviews. If you are unsure whether this course is right for you, then feel free to send me a message. I hope you to see you in class!
Who this course is for:
- Students in a signal processing or digital signal processing (DSP) course
- Scientific or industry researchers who analyze data
- Developers who work with time series data
- Someone who wants to refresh their knowledge about filtering
- Engineers who learned the math of DSP and want to learn about implementations in software
I am a full-time educator and writer, and former professor of neuroscience. I "retired" from that position so I could focus my time and energy creating high-quality educational material just for you.
I have 20 years of experience teaching programming, data analysis, signal processing, statistics, linear algebra, and experiment design. I've taught undergraduate students, PhD candidates, postdoctoral researchers, and full professors. I have taught in "traditional" university courses, special week-long intensive courses, and Nobel prize-winning research labs. I have >100 hours of online lectures on neuroscience data analysis that you can find on my website and youtube channel. And I've written several technical books about these topics with a few more on the way.
I'm not trying to show off -- I'm trying to convince you that you've come to the right place to maximize your learning from an instructor who has spent two decades refining and perfecting his teaching style.
Over 200,000 students have watched over 15,000,000 minutes of my courses. Come find out why!
I have several free courses that you can enroll in. Try them out! You got nothing to lose ;)
By popular request, here are suggested course progressions for various educational goals:
MATLAB programming: MATLAB onramp; Master MATLAB; Image Processing
Python programming: Master Python programming by solving scientific projects; Master Math by Coding in Python
Applied linear algebra: Complete Linear Algebra; Dimension Reduction
Signal processing: Understand the Fourier Transform; Generate and visualize data; Signal Processing; Neural signal processing