The notion of GAN has been extensively used in SR with the aim to enrich texture details in an upscaled image.
There are two popular approaches to deploy GANs for this task.
The more common paradigm [1]}, [2]}, [3]} trains a generator to handle the upscaling task, where adversarial training is performed by using a discriminator to differentiate real images from the upscaled images produced by the generator.
Another possible way to exploit GAN for the task is by GAN inversion [4]}, [5]}, [6]}, [7]}. In this setting, one will need to `invert' the generation process of a pre-trained GAN by mapping a corrupted image back to the latent space. A restored image can then be reconstructed from the optimal vector in the latent space.
