PyTorch implementation of a deep neural network that utilizes a pre-trained VGG19 classification network together with a modified cascaded refinement network to (re-)colorize grayscale input images using only a small dataset of 10.000 images for training (scraped from unsplash.com). The network operates on images in the LAB color space.
In order to install all dependencies, you can simply create a new virtual environment with anaconda by using conda env create -f deep-image-colorization.yml
. Afterwards, you can execute the main script and specify your own data paths or hyperparameters using python main.py --data <PATH> --test_data <PATH> --g_lr <G_LR> --d_lr >D_LR> --batch_size 1 --epochs <E> --n_val <N>
.
Below you can find some example results from the validation (L+AB, AB, L, AB_fake, L+AB_fake) and the testing sets (L, AB_fake, L+AB_fake).