Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/aahouzi/facefocus
Generates high resolution face images from low resolution ones using SRGANs.
https://github.com/aahouzi/facefocus
colab-notebook computer-vision gan generative-adversarial-network google-cloud-platform image-processing super-resolution tpu-acceleration visualization
Last synced: 12 days ago
JSON representation
Generates high resolution face images from low resolution ones using SRGANs.
- Host: GitHub
- URL: https://github.com/aahouzi/facefocus
- Owner: aahouzi
- License: mit
- Created: 2020-12-20T14:19:53.000Z (about 4 years ago)
- Default Branch: master
- Last Pushed: 2022-07-30T11:21:43.000Z (over 2 years ago)
- Last Synced: 2024-11-05T06:40:42.328Z (about 2 months ago)
- Topics: colab-notebook, computer-vision, gan, generative-adversarial-network, google-cloud-platform, image-processing, super-resolution, tpu-acceleration, visualization
- Language: Jupyter Notebook
- Homepage:
- Size: 99.8 MB
- Stars: 3
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# FaceFocus Project with Colab TPUs | Super Resolution | Computer Vision
## :monocle_face: Description
This project aims to implement and train a Super Resolution Generative Adversarial Network (SRGAN), to generate high resolution face images from low resolution ones. The choice of faces is due to the task for which this algorithm can assist, which is enhancing the resolution of face images, by being embedded for example in surveillance cameras
, and help in face recognition tasks.## :rocket: Repository Structure
The repository contains the following files & directories:
- **Loss directory:** It contains an implementation of various loss functions used for training the SRGAN (Content loss, Adversarial loss, and Perceptual loss).
- **Model directory:** It contains an implementation of the Generator, and the Discriminator architecture of the SRGAN, as described in the original paper [Photo-Realistic Single Image Super-Resolution Using a Generative Adversarial Network](https://arxiv.org/pdf/1609.04802.pdf)
- **Train directory:** This directory contains an implementation of the training process used for training the SRGAN with Colab TPUs.
- **Utils directory:** It contains various functions used for visualizing some samples from High/Low resolution images from the dataset.
- **Dataset:** The dataset contains various High/Low resolution images (about 800 on each), and it's encoded into tfRecord files. It's then placed on a bucket of Google Cloud Storage **due to TPU specific requirements**.## :chart_with_upwards_trend: Training procedure
- The model was trained with the famous DIV2K dataset, containing around 800 high resolution images, and their corresponding low resolution images (obtained
by downscaling HR images with a factor of 4 using bicubic interpolation).- **IMPORTANT:** In order to avoid undesired local optima (i.e: for example when the discriminator loss converges to the value 0.0, and stays there), the generator was initialized with
the pre-trained MSE-based SRResNet network as it was mentioned in the original paper of the SRGAN (initialization can be found in weights/pre_gen_weights.h5).## :mailbox_closed: Contact
For any information, feedback or questions, please [contact me][anas-email][anas-email]: mailto:[email protected]