This repository contains implementations of various image restoration techniques. The code demonstrates the use of adaptive filters, blind deconvolution, homomorphic filters, Lucy-Richardson deconvolution, and Wiener filtering. Each method restores degraded images and evaluates the performance using metrics such as Peak Signal-to-Noise Ratio (PSNR).
- File:
Adaptive Filter.ipynb
- Description: Demonstrates adaptive filtering for noise reduction in images using Python.
- File:
Blind Deconvolution.m
- Description: Implements the blind deconvolution algorithm to restore blurred images without prior knowledge of the point spread function (PSF).
- Key Features:
- Simulates blur using Gaussian filters.
- Restores images using PSFs of varying sizes (undersized, oversized, and correctly sized).
- Evaluates PSNR for the restored images.
- File:
Homomorphic Filter.ipynb
- Description: Applies homomorphic filtering to enhance image contrast and remove noise, implemented in Python.
- File:
Lucy Richardson.m
- Description: Uses the Lucy-Richardson algorithm for image restoration, particularly effective for images degraded by Gaussian blur and noise.
- Key Features:
- Adds Gaussian noise to blurred images.
- Restores the image iteratively.
- Computes PSNR between the original and restored images.
- File:
Weiner.m
- Description: Implements Wiener filtering to restore blurred and noisy images.
- Key Features:
- Simulates blur using Gaussian filters.
- Introduces Gaussian noise to the blurred image.
- Restores the image using Fourier transforms.
- Visualizes frequency domain representations.
- Computes PSNR for the restored images.
- Upload the .ipynb file to your Google Drive.
- Open Google Colab.
- Select File > Upload notebook and upload the file.
- Navigate to MATLAB Online.
- Upload the .m file to your MATLAB Online workspace.
- Ensure the input image file is available in the same directory.
- Run the script to observe results.