Image Super-Resolution with SRGAN

Learn about the concept of SRGAN and how to use it for image super resolution.

Image restoration is a vast field. There are three main processes involved in image restoration:

  • Image super-resolution: Expanding an image to a higher resolution.

  • Image deblur: Turning a blurry image into a sharp one.

  • Image inpainting: Filling in holes or removing watermarks in an image.

All of these processes involve estimating pixel information from existing labels. The term restoration of the pixels actually refers to estimating the way they should have looked. Take image super-resolution, for example, to expand the image size by 2, we need to estimate 3 additional pixels to form 2×22 \times 2 region with the current pixel. Image restoration has been studied by researchers and organizations for decades and many profound mathematical methods have been developed, which kind of discourages non-mathematicians from having fun with it. Now, intriguingly enough, GANs are starting to gain popularity.

In this chapter, we will introduce another member of the GAN family, SRGANLedig, Christian, Lucas Theis, Ferenc Huszár, Jose Caballero, Andrew Cunningham, Alejandro Acosta, Andrew Aitken et al. "Photo-realistic single image super-resolution using a generative adversarial network." In Proceedings of the IEEE conference on computer vision and pattern recognition, pp. 4681-4690. 2017., to upscale our images to a higher resolution. SRGAN(Super-Resolution Generative Adversarial Network) is considered the first method to successfully upscale images by four. Its structure is very straightforward. Like many other GANs, it consists of one generator network and one discriminator network. The architectures are shown in the following sections.

Creating a generator

Let's take a look at the components of the generator network:

Get hands-on with 1200+ tech skills courses.