An advanced suite for image restoration, audio denoising, and phonetic formant analysis using Python 3.14.
Author: Mobi
This project showcases cutting-edge Digital Signal Processing (DSP) techniques applied across multiple modalities including image processing and audio analysis. Built with high-performance Python 3.14, it demonstrates sophisticated algorithms for noise removal, spectral analysis, and phonetic characterization.
- ๐ผ๏ธ Image Processing - Frequency-domain noise removal and blur estimation
- ๐ Audio Analysis - IIR filtering, spectral leakage, and formant extraction
- ๐ Spectral Visualization - Comprehensive plots and analysis reports
- ๐ Interactive Report - Live Persian dashboard with real-time simulations
- โก High Performance - Optimized with NumPy and SciPy
- ๐ฏ Modular Design - Clean, reusable components for each task
- Python 3.12 or higher
- uv package manager
# Clone the repository
git clone https://github.com/Mobiwn/multimodal-dsp-challenges.git
cd multimodal-dsp-challenges
# Install dependencies
uv syncRun the challenges individually to generate analysis results in the results/ folder:
# Image Processing Tasks
uv run src/image_dsp.py
# Audio Processing Tasks
uv run src/audio_dsp.py
# Spectral Analysis
uv run src/spectral_utils.pyExplore the DSP challenges interactively with a Persian-language dashboard hosted on GitHub Pages.
- Live Demo: View Interactive Report
- Features include real-time notch filter adjustments, motion blur analysis, spectral leakage comparisons, and vowel formant visualizations.
multimodal-dsp-challenges/
โโโ src/
โ โโโ audio_dsp.py # Audio processing and IIR filtering
โ โโโ data_utils.py # Data loading and utilities
โ โโโ image_dsp.py # Image processing in frequency domain
โ โโโ spectral_utils.py # Spectral analysis tools
โโโ data/ # Input audio files
โ โโโ input_speech.wav
โ โโโ test_speech.wav
โโโ docs/
โ โโโ index.html # Interactive Persian report (hosted on GitHub Pages)
โโโ results/
โ โโโ audio/ # Processed audio output
โ โโโ figures/ # Analysis visualizations
โโโ pyproject.toml # Project configuration
โโโ requirements.txt # Python dependencies
โโโ README.md # This file
Goal: Remove periodic noise from images using 2D frequency domain filtering.
Techniques:
- 2D FFT transformation
- Frequency domain notch filter design
- Inverse FFT reconstruction
Goal: Estimate blur length in motion-blurred images using spectral nulls.
Techniques:
- Spectral null detection
- Radial averaging in frequency domain
- Blur parameter estimation
Goal: Design and implement IIR notch filter for 50Hz hum removal.
Techniques:
- IIR filter design
- Pole-zero plot analysis
- Stability assessment
- Real-time audio filtering
Goal: Understand and visualize spectral leakage effects with different windows.
Techniques:
- Windowing functions (Hann, Hamming, Blackman)
- FFT bin analysis
- Leakage quantification
Goal: Extract and analyze vowel formants using LPC modeling.
Techniques:
- Linear Predictive Coding (LPC)
- Formant frequency extraction
- Phonetic vowel characterization
All analysis results are automatically generated and saved to:
- Audio Outputs:
results/audio/- Cleaned and processed audio files - Visualizations:
results/figures/- High-quality analysis plots
Core dependencies managed by uv:
| Package | Version | Purpose |
|---|---|---|
| NumPy | โฅ2.4.0 | Numerical computing |
| SciPy | โฅ1.16.3 | Signal processing |
| Matplotlib | โฅ3.10.8 | Data visualization |
| OpenCV | โฅ4.11.0 | Image processing |
| scikit-image | โฅ0.26.0 | Image algorithms |
| SoundFile | โฅ0.13.1 | Audio I/O |
| Streamlit | โฅ1.52.2 | Web interface |
See pyproject.toml for complete dependency list.
This project is licensed under the MIT License - see the LICENSE file for details.
Created with โค๏ธ by Mobi
Contributions, issues, and feature requests are welcome! Feel free to check the issues page.
- Built with modern Python 3.14 features
- Powered by scientific Python ecosystem
- Inspired by advanced DSP challenges
Made with ๐ by Mobi | GitHub





