Colours enhance the information as well as the expressiveness of an image. Colour images contain more visual information than a gray-scale image and is useful for extracting information for high-level tasks. Humans have the ability to manually fill gray-scale images with colours taking into consideration the contextual cues. This clearly indicates that black-and-white images contain some latent information sufficient for the task of colourization. The modelling of this latent information to generate chrominance values of pixels of a target gray-scale image is called colourization. Image colourization is a daunting problem because a colour image consists of multi-dimensional data according to defined colour-spaces whereas a gray-scale image is just single-dimensional. The main obstacle is that different colour compositions can lead to a single gray level but the reverse is not true. For example, multiple shades of blue are possible for the sky, leaves of trees attain colours according to seasons, different colours of a pocket billiards (pool) ball. The aim of the colourization process is not to hallucinate the exact colour of an object (See Fig. 1), but to transfer colours plausible enough to fool the human mind. Image colourization is a widely used technique in commercial applications and a hot researched topic in the academia world due to its application in heritage preservation, image stylization and image processing.
In the last few years, Convolutional Neural Networks (CNNs) have emerged as compelling new state-of-the-art learning frameworks for Computer Vision and Pattern RecognitionBengio (2009); He et al. (2016) applications. With the recent advent of Generative Adversarial Networks (GANs) Goodfellow et al. (2014), the problem of transferring colours have also been explored in the context of GANs using Deep Convolutional Neural Networks Isola et al. (2017); Nazeri et al. (2018)
. The proposed method involves utilizing conditional Generative Adversarial Networks (cGANs) modelled as an image-to-image translation framework.
The main contribution of this paper is proposing a variant of Conditional-GANs which tries to learn a functional mapping from input grayscale image to output colourized image by minimizing the adversarial loss, per pixel loss, classification loss and the high-level perceptual loss. The proposed model is validated using an elaborate qualitative and quantitative comparison with existing methods. A detailed ablation study which demonstrates the efficiency and potential of our model over baselines is also presented.
The rest of this paper is arranged as Section 2 describes previous works described in literature. Section 3 describes our proposed Perceptual-cGAN. Section 4 demonstrates a detailed qualitative and quantitative analysis of images colourized by our proposed system along with ablation studies of different objective functions. The final Section 5 consists of concluding remarks.
2 Related Work
The problem of colourization has been studied extensively by numerous researchers due to its importance in real-world applications. Methods involving user-assisted scribble inputs were the primary methods explored for the daunting problem of assigning colours to a one-dimensional gray-scale image. Levin et al. (2004) used user-based scribble annotations for video-colourization which propagated colours in the spatial and temporal dimensions ensuring consistency to produce colourized films. This method relied on neighbouring smoothness by optimization through a quadratic cost function. Sapiro (2005)
proposed a framework where the geometry and the structure of the luminance input was considered on top of user-assisted information for colourization by solving a partial differential equation.Noda et al. (2006) formulates the colourization problem into a maximum a posteriori (MAP) framework using Markov Random Field (MRF) as a prior.
User-involved methods achieve satisfying results but they are severely time-consuming, needs manual labour and the efficacy is dependant on the accuracy of the user interaction. In order to alleviate these problems, researchers resorted to example-based or reference-based image colourization. Example-based methods require a reference image from the user for the transfer of colours from a source image to a target gray-scale image.Reinhard et al. (2001) used simple statistical analysis to establish mapping functions that impose a source image’s colour characteristics onto a target image. Welsh et al. (2002) proposed to transfer only chrominance values to a target image from a source by matching the luminance and textural information. The luminance values of the target image are kept intact. The success of example-based methods rely heavily on the selection of an appropriate user-determined reference image. Hence it faces a limitation as there is no standard criterion for choosing an example image and hence depends on the user skill. Also the reference image may have different illumination conditions resulting in anomalous colour transfer.
In recent years, the use of Deep Learning methods have emerged as prominent methods for the task of Pattern Recognition, even outperforming human ability He et al. (2015). They have shown promising results in colourization by directly mapping gray-scale target images to output colors by learning to combine low level features and high-level cues. Cheng et al. (2015) proposed the first deep learning framework using low-level features from patch, intermediate DAISY features Tola et al. (2010) and a high-level semantic features as output to a neural network ensemble. Zhang et al. (2016) proposed an automatic colourization process by posing it as a multinomial classification task for ab values. They observed that in natural images the distribution of ab values were desaturated and used class re-balancing for obtaining accurate chromatic components. A joint end-to-end method using two parallel CNNs and incorporation of local and global priors was proposed by Iizuka et al. (2016). The potential of GANs in learning expressive features trained under an unsupervised scheme propelled researchers to use GANs for the task of colourization. Isola et al. (2017)
explored the idea of Conditional-GANs in an image-to-image framework by learning a loss function for mapping input to output images.
3 Proposed Method
In this section, we describe our proposed algorithm along with the architecture of the Convolutional Neural Networks employed for our method. We explore the situation of GANs in a conditional setting Isola et al. (2017); Nazeri et al. (2018) where the objective function of the generator is constrained on the conditional information and consequentially generates the output. The addition of this conditional variables enhanced the stability of the original GAN frame-work proposed by Goodfellow et al. (2014). Our proposed method builds upon the cGAN by incorporating adjunct losses. In addition to the adversarial loss and the per-pixel constraint, we add the perceptual loss and the classification loss in our objective function. We explain in detail about the loss functions and the networks used.
3.1 Loss function
Conditional-GANs Isola et al. (2017) try to learn a mapping from the input image to output . In this case, the generator not only aspires to win the mini-max game by fooling the discriminator but also has to be as close as possible with the ground truth. The per-pixel loss is utilized for this constraint. While the discriminator network of the cGAN remains the same when compared to the original GAN, the objective function of the Generator networks are different. The objective function of cGAN Isola et al. (2017) is
Here represents the input image, represents the coloured image, represents the Generator amd represents the Discriminator. Isola et al. Isola et al. (2017) established through their work that is better due to their less blurring effect and also helps in reducing artifacts that are introduced by using only cGAN. Our proposed model Colourization using Perceptual Generator Adversarial Network (CuPGAN), builds up on this cGAN with incorporated additive perceptual loss and classification loss. Traditional loss functions that operate at per-pixel level are found to be limited in their attempt to capture the contextual and the perceptual features. Recent researches have demonstrated the competence of loss functions based on the difference of high-level feature in generating compelling visual performance [ Johnson et al. (2016)]. However, in many cases they fail to preserve the low-level colour and texture information Zhang et al. (2017). Therefore, we incorporate both the perceptual loss and the per-pixel loss for preservation of both the high-level and the low-level features. The high-level features are extracted from VGGNet model by Simonyan and Zisserman (2014)
trained on the ImageNet datasetDeng et al. (2009). Like Iizuka et al. (2016), we add an additional classification loss that helps our model to guide the training of the high-level features.
For input gray-scale image and colourized image , the perceptual loss between and in this case is defined as:
represents a non-linear transformation by thelayer of the VGGNet, represents the transformation function of the generator and are the channels, width and height respectively. The loss between and is defined as:
Here, represents in CIELAB color space. The difference between and is fundamentally the difference of their values.
The final objective function of the proposed generator network is
Here is the adversarial loss, is the content-based per-pixel loss, is the classification loss and is the perceptual loss and are positive constants.
3.2 Generator Network
The generator network in the proposed architecture follows a similar architecture like U-Net by Ronneberger et al. (2015). The U-Net was originally proposed for bio-medical image segmentation. The architecture of U-Net consists of a contracting path which acts as an encoder and expanding path which acts as a decoder. The skip connections are present to avoid any information and content loss due to convolutions. The success of U-Net propelled the utilization of U-Net architecture in many subsequent works. The elaborate generator network along with the feature map dimensions and the convolutional kernel sizes is shown in Fig.2. In the encoding process, the input feature map is reduced in height and width by a factor of 2 at every level. In the decoding process, the feature maps are enlarged in height and width by a factor of 2. At every decoding level, there is a step of feature-fusion from the opposite contracting path. The final transposed convolutional layer obtained are the values which when concatenated with the
(luminance) channel, gives us a colourized version of the input gray-scale image. The feature vector at the point of deflection of the encoding and the decoding path is processed through two fully-connected layers to obtain the vector for the classification loss. All the layers use the ReLU activation function except for the last transpose convolutional layer which uses the hyperbolic tangent (tanh) function.
3.3 Discriminator Network
The discriminator network used for the proposed method consists of four convolutional layers with kernel size
and stride length
followed by 2 fully-connected (FC) layers. The final FC-layer uses a Sigmoid activation to classify the image as real or fake. Fig.3 shows the architecture of the discriminator network used for the proposed CuPGAN.
4 Experimental Results
4.1 Experimental Settings
All the training images are converted from RGB into the CIELAB colour space. Only the
channel of images are fed into the network and the network tries to estimate the chromatic components. The values of the luminance and the chrominance components are normalized between . The training images are re-sized to
in all cases. Every convolutional transpose layer in the decoder part of the generator network has a dropout with probability 0.5. Each layer in both the discriminator and the generator is followed by a batch-normalization layer. We use the Places365-Standard datasetZhou et al. (2018) which contains about 1.8 million images. We filter the images that are grayscale and also those that have negligible colour variations which reduces our training dataset to 1.6 million images. For our experiments, we empirically set , and as the weights of the per-pixel, classification and perceptual loss respectively. We use the relu1_2
layer of the VGGNet for computing the perceptual loss. The proposed system is implemented in Tensorflow. We train our network using the Adagrad optimizer with a learning rate of
and a batch-size of 16. Under these settings, the model is trained for 20 epochs on a system with NVIDIA TitanX Graphics Processing unit (GPU).
4.2 Quantitative Evaluations
We evaluate our proposed algorithm on different metrics and compare it with the existing state-of-the art colourization methods like Zhang et al. (2016) and Iizuka et al. (2016). The metrics used for comparison are Peak Signal to Noise Ratio (PSNR) Mannos and Sakrison (2006), Structural Similarity Index Measure (SSIM) Wang et al. (2004), Mean Squared Error (MSE), Universal Quality Index (UQI) Wang and Bovik (2002) and Visual Information Fidelity (VIF) Sheikh and Bovik (2006). We carry out our quantitative comparison on the test dataset of Places365. It contains multiple images of the 365 different classes used in the training dataset. The quantitative evaluations are shown in Table 1. The proposed method CuPGAN performs better in all metrics except for the VIF and UQI where it shows competitive performance on the Places365 test dataset by Zhou et al. (2018).
|Grayscale||Zhang et al.||Iizuka et al.||CuPGAN||Ground Truth|
4.3 Qualitative Evaluations
We demonstrate and compare our results in a qualitative manner against the existing methods Iizuka et al. (2016) and Zhang et al. (2016). Fig. 4 displays the comparative qualitative results. We observe that in the first image Zhang et al. (2016) hallucinates bluish colour for the grass while Iizuka et al. (2016) produces a less saturated image compared to ours and the ground-truth. In the second image, both methods Iizuka et al. (2016) and Zhang et al. (2016) tend to over-saturate the colour of the structure while our result is closest to the ground-truth. In the third image of the indoor scene, Zhang et al. (2016) tends to impart yellowish colour to the indoors contrasting our and Zhang et al. (2016) result and also the ground-truth. In the fourth and the last image, both methods Iizuka et al. (2016) and Zhang et al. (2016) tend to distort colours in the grass and the road respectively. Our method does not demonstrate any such colour distortions. In the fifth image, our method tends to over-estimate the grass regions near the foothills of the mountain but displays more vibrancy as compared to Iizuka et al. (2016) and Zhang et al. (2016). The results of the sixth and the seventh images are satisfactory for all methods. From what we observed, Zhang et al. (2016) tends to over-saturate the colours of the image. The qualitative comparison ensures that not only does our method produce images of crisp quality and of adequate saturation, but it also tends to produce less colour distortions and colour anomalies.
4.4 Real World Images
|Grayscale||Zhang et al.||Iizuka et al.||CuPGAN|
In order to establish the efficiency of our model we collect some images from the internet randomly and colourize these images using all the competing methods used in the quantitative evaluations as discussed in Section 4.2. Fig. 5 shows the colourization on real world images. We can observe that Zhang et al. (2016) tends to over-saturate the colour components as visible from the first and the third image. Also, Zhang et al. (2016) produces some colour anomalies visible from the zebras (fourth image) and the road (fifth image). Iizuka et al. (2016) tends to under-saturate the images as visible from the third and fourth image. The colourization from our proposed method produces more visually-appealing and sharp results comparatively.
4.5 Ablation studies
For demonstrating the effectiveness of our loss function, we train our model using a subset of the Places365 data-set Zhou et al. (2018). We created the subset by randomly selecting 30 different classes from the complete data-set. We train our proposed model using three different component loss functions: 1) using only loss, 2) using only and 3) using both and (ours). The use of the first loss function corresponds directly to the objective function used in the cGAN model proposed by Isola et al. (2017). We provide both qualitative and quantitative comparisons for validating our point. The qualitative results are displayed in 6. The results display the effectiveness of using both and loss together over using them discretely. Table 2 displays the quantitative comparison of using the mentioned loss functions. We can infer both qualitatively and quantitatively that our objective function performs better than using only or only only .
4.6 Historic black and white images
We also test our model on century black and white images. Due to the type of films and cameras used in the past, we can never be perfectly sure about the type of colours and shades that was originally there. The images used have significant artifacts and have irregular borders which makes it an ill-posed task to reckon colours. In spite of all these issues, our model is able to colourize these images producing satisfactory results. In Fig. 7 we show some examples of colourization of these historic images and we observe visually pleasing results.
In order to establish the adaptability of our proposed method, we train our model on a very different dataset than the Places365 dataset Zhou et al. (2018). We use the large-scale CelebFaces Attributes or the CelebA dataset by Liu et al. (2015) for training. CelebA is a large-scale dataset which contains more than 200K images with 40 attributes. The classification loss of the generator objective is calculated using the cross-entropy loss of the attributes. We provide a visual analysis and quantitative evaluation of our method on this dataset as well. We use the metrics described in 4.2. Table 3 shows the evaluation of our model on the CelebA dataset. The quantitative evaluations assure that our model can be employed easily to another dataset for the process of colourization. Fig. 8 demonstrates the visual results on the CelebA dataset by Liu et al. (2015) supplements our claim of adaptability to versatile datasets.
In this paper, we develop on the Conditional Generative Adversarial Networks (cGANs) framework to deal with the task of image colourization by incorporating the recently flourished perceptual loss and cross-entropy classification loss. We train our proposed model CuPGAN in an end-to-end fashion. Quantitative and qualitative evaluations establish the significant enhancing effects of adding the perceptual and classification loss as compared to the vanilla Conditional-GANs. Also, experiments conducted on standard data-sets show promising results when compared to the standard exclusive state-of-the art image colourization methods evaluated using five standard image quality measures like PSNR, SSIM, MSE, UIQ and VIF. Our proposed method performs appreciably well producing clear and crisp quality colourized pictures even in cases of images picked from the internet and historic black and white images.
We would like to thank Mr. Ayan Kumar Bhunia for his guidance and help regarding implementation and development of the model. We would also like to thank Mr. Ayush Daruka and Mr. Prashant Kumar for their valuable discussions.
- Bengio  Y Bengio. Learning deep architectures for ai. Found. Trends Mach. Learn., 2:1–55, 2009.
Cheng et al. 
Zezhou Cheng, Qingxiong Yang, and Bin Sheng.
Deep colorization.In Proceedings of the IEEE International Conference on Computer Vision, pages 415–423, 2015.
- Deng et al.  Jia Deng, Wei Dong, Richard Socher, Li-Jia Li, Kai Li, and Li Fei-Fei. Imagenet: A large-scale hierarchical image database. In Computer Vision and Pattern Recognition, 2009. CVPR 2009. IEEE Conference on, pages 248–255. IEEE, 2009.
- Goodfellow et al.  Ian Goodfellow, Jean Pouget-Abadie, Mehdi Mirza, Bing Xu, David Warde-Farley, Sherjil Ozair, Aaron Courville, and Yoshua Bengio. Generative adversarial nets. In Advances in neural information processing systems, pages 2672–2680, 2014.
- He et al.  K. He, X. Zhang, S. Ren, and J. Sun. Delving deep into rectifiers: Surpassing human-level performance on imagenet classification. In 2015 IEEE International Conference on Computer Vision (ICCV), pages 1026–1034, 2015. doi: 10.1109/ICCV.2015.123.
- He et al.  Kaiming He, Xiangyu Zhang, Shaoqing Ren, and Jian Sun. Identity mappings in deep residual networks. In Bastian Leibe, Jiri Matas, Nicu Sebe, and Max Welling, editors, Computer Vision – ECCV 2016, pages 630–645, Cham, 2016. Springer International Publishing.
- Iizuka et al.  Satoshi Iizuka, Edgar Simo-Serra, and Hiroshi Ishikawa. Let there be Color!: Joint End-to-end Learning of Global and Local Image Priors for Automatic Image Colorization with Simultaneous Classification. ACM Transactions on Graphics (Proc. of SIGGRAPH 2016), 35(4), 2016.
Isola et al. 
Phillip Isola, Jun-Yan Zhu, Tinghui Zhou, and Alexei A Efros.
Image-to-image translation with conditional adversarial networks.arXiv preprint, 2017.
- Johnson et al.  Justin Johnson, Alexandre Alahi, and Fei-Fei Li. Perceptual losses for real-time style transfer and super-resolution. CoRR, abs/1603.08155, 2016. URL http://arxiv.org/abs/1603.08155.
- Levin et al.  Anat Levin, Dani Lischinski, and Yair Weiss. Colorization using optimization. In ACM SIGGRAPH 2004 Papers, SIGGRAPH ’04, pages 689–694, New York, NY, USA, 2004. ACM. doi: 10.1145/1186562.1015780. URL http://doi.acm.org/10.1145/1186562.1015780.
- Liu et al.  Ziwei Liu, Ping Luo, Xiaogang Wang, and Xiaoou Tang. Deep learning face attributes in the wild. In Proceedings of International Conference on Computer Vision (ICCV), 2015.
- Mannos and Sakrison  J. Mannos and D. Sakrison. The effects of a visual fidelity criterion of the encoding of images. IEEE Trans. Inf. Theor., 20(4):525–536, 2006. ISSN 0018-9448. doi: 10.1109/TIT.1974.1055250. URL https://doi.org/10.1109/TIT.1974.1055250.
- Nazeri et al.  Kamyar Nazeri, Eric Ng, and Mehran Ebrahimi. Image colorization using generative adversarial networks. In International Conference on Articulated Motion and Deformable Objects, pages 85–94. Springer, 2018.
- Noda et al.  H. Noda, M. Niimi, and Jin Korekuni. Simple and efficient colorization in ycbcr color space. In 18th International Conference on Pattern Recognition (ICPR’06), volume 3, pages 685–688, 2006. doi: 10.1109/ICPR.2006.1053.
- Reinhard et al.  E. Reinhard, M. Adhikhmin, B. Gooch, and P. Shirley. Color transfer between images. IEEE Computer Graphics and Applications, 21(5):34–41, 2001. ISSN 0272-1716. doi: 10.1109/38.946629.
- Ronneberger et al.  Olaf Ronneberger, Philipp Fischer, and Thomas Brox. U-net: Convolutional networks for biomedical image segmentation. CoRR, abs/1505.04597, 2015. URL http://arxiv.org/abs/1505.04597.
- Sapiro  G. Sapiro. Inpainting the colors. In IEEE International Conference on Image Processing 2005, volume 2, pages II–698–701, 2005. doi: 10.1109/ICIP.2005.1530151.
- Sheikh and Bovik  H. R. Sheikh and A. C. Bovik. Image information and visual quality. IEEE Transactions on Image Processing, 15(2):430–444, 2006. ISSN 1057-7149. doi: 10.1109/TIP.2005.859378.
- Simonyan and Zisserman  K. Simonyan and A. Zisserman. Very deep convolutional networks for large-scale image recognition. CoRR, abs/1409.1556, 2014.
- Tola et al.  Engin Tola, Vincent Lepetit, and Pascal Fua. Daisy: An efficient dense descriptor applied to wide-baseline stereo. IEEE transactions on pattern analysis and machine intelligence, 32(5):815–830, 2010.
- Wang and Bovik  Zhou Wang and Alan C. Bovik. A universal image quality index. IEEE Signal Processing Letters, 9(3):81–84, 2002. ISSN 1070-9908. doi: 10.1109/97.995823.
- Wang et al.  Zhou Wang, A. C. Bovik, H. R. Sheikh, and E. P. Simoncelli. Image quality assessment: from error visibility to structural similarity. IEEE Transactions on Image Processing, 13(4):600–612, 2004. ISSN 1057-7149. doi: 10.1109/TIP.2003.819861.
- Welsh et al.  Tomihisa Welsh, Michael Ashikhmin, and Klaus Mueller. Transferring color to greyscale images. In Proceedings of the 29th Annual Conference on Computer Graphics and Interactive Techniques, SIGGRAPH ’02, pages 277–280, New York, NY, USA, 2002. ACM. ISBN 1-58113-521-1. doi: 10.1145/566570.566576. URL http://doi.acm.org/10.1145/566570.566576.
- Zhang et al.  He Zhang, Vishwanath Sindagi, and Vishal M Patel. Image de-raining using a conditional generative adversarial network. arXiv preprint arXiv:1701.05957, 2017.
- Zhang et al.  Richard Zhang, Phillip Isola, and Alexei A Efros. Colorful image colorization. In ECCV, 2016.
Zhou et al. 
Bolei Zhou, Agata Lapedriza, Aditya Khosla, Aude Oliva, and Antonio Torralba.
Places: A 10 million image database for scene recognition.IEEE Transactions on Pattern Analysis and Machine Intelligence, 40(6):1452–1464, 2018.