/pixelation_correction

This is an image de-pixelation project done under Intel Unnati Industrial Training Campaign.

Primary LanguageJupyter Notebook

Pixelated Image Detection and Correction

Depixelation Example Pixelated image (left), depixelated by our model (middle), and the ground truth (right)

Problem Statement

Pixelation is a common issue in images, leading to a loss of quality and important details.It generally arises due to downscaling an image by some factor and then upscaling it using some interpolation method. The objective of this project is to develop models capable of detecting and depixelating images, restoring them to a higher quality while maintaining computational efficiency.

Description

This repository contains two primary models: a detector model to identify pixelated images and a depixelator model to restore pixelated images to their original quality. Both models were inspired by the U-Net architecture but optimized for efficiency using depthwise and pointwise convolutions.

Repository Structure

Project Report

Project report can be found here.

Testing Files

These are the testing files. Users should follow the instructions in these files to test our detector and depixelator models.

Step-by-Step Guide to Test Our Models

  1. Update and Import Libraries: Ensure all required libraries are updated to the necessary versions and import them.

  2. Load the Models: Load the pre-trained detector or depixelator model.

  3. (Important) Implement the TODO Cell: Complete the TODO cell according to your own dataset, defining image_paths and image_labels or pixelated_image_paths, and optionally real_image_paths.

  4. Test the Model: Follow the steps provided in the testing files to effectively test the models on your dataset.

Training Files

These are the training files used for our detector and depixelator models. They are included for reference to show how we trained our models.

Model Architectures

These images depict the detailed architectures of our models.

Pre-trained Models

These files contain the pre-trained models with their corresponding architectures.

Depixelation Examples

This folder contains some successful and unsuccessful depixelation examples from our model.

Conclusion

This repository offers a comprehensive solution for detecting and depixelating images, utilizing state-of-the-art techniques for efficiency and accuracy. By following the provided instructions and completing the required steps, users can effectively apply these models to their datasets to achieve high-quality image restoration.

For any questions or issues, please feel free to open an issue on this repository.