Skip to content

Theory of digital signal processing (DSP): signals, filtration (IIR, FIR, CIC, MAF), transforms (FFT, DFT, Hilbert, Z-transform) etc.

License

Notifications You must be signed in to change notification settings

hukenovs/dsp-theory

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

111 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Digital signal processing

Digital signal processing

Перед вами лекции по цифровой обработке сигналов (ЦОС) в виде тетрадок Jupyter Notebook на языке Python. Можно воспринимать их как полноценный курс по цифровой обработке или использовать как заметки по теоретическим аспектам и практическому применению в решении различных задач.

Материалы представлены с использованием библиотек на языке Python (numpy , scipy, librosa, matplotlib, seaborn etc). Основная информация взята из моих лекций, которые я читал студентам Московского Энергетического Института ("НИУ МЭИ") и которая была использована на обучающих семинарах в Центре Современной Электроники. Лекции содержат перевод различных статей, компиляцию материалов из достоверных источников и литературы по тематике цифровой обработки сигналов, а также официальную документацию по прикладным библиотекам языка Python. Некоторые лекции написаны с помощью моих хороших знакомых и коллег, за что им отдельная благодарность!

  1. Сигналы: аналоговые, дискретные, цифровые. Z-преобразование,
  2. Преобразование Фурье: амплитудный и фазовый спектр сигнала, ДПФ и БПФ,
  3. Свертка и корреляция. Линейная и циклическая свертка. Быстрая свёртка
  4. Случайные процессы. Белый шум. Функция плотности вероятностей
  5. Детерминированные сигналы. Модуляция: АМ, ЧМ, ФМ, ЛЧМ. Манипуляция
  6. Фильтрация сигналов: БИХ, КИХ фильтры
  7. Оконная фильтрация. Детектирование слабых сигналов с помощью наложения окна,
  8. Ресемплинг: децимация и интерполяция. CIC-фильтры, фильтры скользящего среднего
  9. Непараметрические методы спектрального анализа
  10. Полифазные схемы преобразования Фурье - усреднение по частоте и по времени
  11. Банки фильтров в задачах аудиокодирования
  12. Фильтры Фарроу
  13. Мел-спектрограммы
  14. Кепстр и MFCC
  15. Вейвлет-преобразование
  16. Алгоритм Герцеля

Установка

  • Установите miniconda
  • Создайте и активируйте виртуальную среду
  • Установите необходимые библиотеки из requirements.txt
  • Запустите jupyter notebooks через Jupyter server или JetBrains DataSpell
# Создайте среду и установите необходимые библиотеки
conda create -n "dsp_venv" python=3.9 -y
conda activate dsp_venv
pip install -r requirements.txt
# Запустите jupyter notebook server и перейдите по ссылке из консоли 
jupyter notebook

Для лекции 15 необходимо отдельно установить библиотку scaleogram

# Склонируйте репозиторий
git clone http://github.com/alsauve/scaleogram
cd scaleogram
# Установите библиотеку
python ./setup.py install --user

HTML / PDF

Для конвертации ноутбуков в html формат можно выполнить скрипт convert.sh. Могут потребоваться следующие библиотеки:

nbmerge
nbformat
nbconvert

Для конвертации в pdf может потребоваться pandoc

Пост на Habr

Первый релиз

  • 2019/07/10

Авторы

Лицензия

  • GNU GPL 3.0.

About

Theory of digital signal processing (DSP): signals, filtration (IIR, FIR, CIC, MAF), transforms (FFT, DFT, Hilbert, Z-transform) etc.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published