- The epochs directory contains the model checkpoints
- The pixel_rest_src directory contains source files
- The statistics directory stores graphs of metrics after model training.
- Dependencies are described in pyproject.toml
We want to develop a deep pixel restoration model to improve the image quality (see papyr. https://arxiv.org/pdf/1702.00783.pdf)
-
- It's fanout. A user can upload an image and the output is something better. Or give a sketch of a certain picture and get a a finalized one.
- It allows you to reconstruct missing information or even decipher scrolls (https://www.bloomberg.com/features/2024-ai-unlock-ancient-world-secrets/)
DIV2K dataset (https://data.vision.ee.ethz.ch/cvl/DIV2K/), which contains high quality images of various resolutions. This dataset was used in the original Pixel Recursive Super Resolution article, but you can also use other datasets from the google repository. other datasets from the google repository.
800 images for training and 100 images for testing. Different domains.
-
- Not enough data to train the model. (It is possible to find other datasets for other domains).
- Also, there may be problems with differences in lighting, noise, some other artifacts in the images.
SRGAN (Super-Resolution Generative Adversarial Network) or EDSR (Enhanced Deep Super-Resolution).
The model will be trained on the DIV2K training dataset. The model will have a convolutional architecture with multiple layers and will utilize a loss function such such as mean square error (MSE) or perceptual loss (perceptual loss) for training.
Once the model is trained, it can be integrated into the production pipeline.
The payline is planned as follows:
1. Uploading images
2. Pre-processing (e.g. resizing images)
3. Inferring the deep pixel restoration model and saving the improved images.
The final application of the model can be to improve the quality of images in real time. For example, one could reconstruct people's faces in real time or make a sticky service to infinitely deep reconstruct a photos.