Skip to content

Engr-umer-mohammed/MATLAB-to-Python-Deep-Learning-Pipeline-for-Signal-and-Image-Processing

Repository files navigation

MATLAB → Python → PyTorch pipeline for image processing, denoising, and super-resolution.

Overview

This project presents an end-to-end workflow that progresses from classical image processing techniques in MATLAB to Python-based numerical analysis and finally to deep learning–based image super-resolution using PyTorch. The project emphasizes reproducibility, cross-platform validation, and engineering reasoning through quantitative performance analysis rather than treating deep learning as a black-box solution.

Features

Classical Image Processing in MATLAB

  • Image normalization
  • Histogram analysis
  • Noise modeling
  • Gaussian filtering
  • Bilateral filtering
  • Contrast enhancement
  • Edge detection
  • Image quality evaluation

Python Reimplementation and Validation

  • Translation of MATLAB workflows into Python
  • Comparison of numerical differences between platforms
  • Parameter sensitivity analysis
  • Quantitative evaluation using standard metrics

Deep Learning Super-Resolution

  • Generation of paired low-resolution and high-resolution datasets
  • Implementation of SRCNN (Super-Resolution Convolutional Neural Network)
  • Model training using PyTorch
  • Evaluation using PSNR and SSIM
  • Visual comparison of input, output, and reference images

Programming Languages

  • MATLAB
  • Python 3

Libraries and Frameworks

  • PyTorch
  • NumPy
  • SciPy
  • OpenCV
  • scikit-image
  • Matplotlib

Technical Areas

  • Signal Processing
  • Image Processing
  • Image Enhancement
  • Denoising
  • Convolutional Neural Networks
  • Super-Resolution
  • Performance Evaluation

Project Structure

project_root/ │ ├── data/ │ ├── matlab_pipeline/ │ ├── main_processing.m │ └── results/ │ ├── python_pipeline/ │ ├── prepare_data.py │ ├── denoise.py │ ├── enhance.py │ ├── evaluate.py │ └── results/ │ ├── deep_learning/ │ ├── srcnn.py │ ├── dataset.py │ ├── train.py │ ├── evaluate.py │ ├── inference.py │ └── results/ │ └── docs/

Evaluation Metrics

The following metrics are used throughout the project:

  • Mean Squared Error (MSE)
  • Peak Signal-to-Noise Ratio (PSNR)
  • Structural Similarity Index (SSIM)

Key Engineering Insights

  • Numerical results vary across software platforms due to implementation differences.
  • Parameter tuning significantly affects image quality metrics.
  • Classical image processing techniques may outperform naïve deep learning models in some cases.
  • Understanding the reasons behind numerical differences is as important as improving benchmark scores.

Future Work

Possible future extensions include:

  • Enhanced Deep Super-Resolution (EDSR)
  • ESRGAN
  • Video Super-Resolution
  • Real-time image enhancement
  • Core ML deployment for Apple devices

Author

UMER UMER MOHAMMED

This project was developed as a portfolio project to demonstrate engineering reasoning, reproducibility, and practical experience in image processing and deep learning.

License

MIT

Acknowledgments

[salimlemma@gmail.com]

About

An end-to-end image processing and super-resolution workflow that combines MATLAB, Python, and PyTorch. It includes classical image processing techniques, cross-platform validation, and deep learning model training.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors