
Explore the generator for image super-resolution by replacing latent noise with a low-resolution patch, using a five-block image comprehension module with residual connections, and fourfold upsampling from 64x64 to 256x256.
Learn to build a fully convolutional generator that is input-size agnostic, handles images of varying sizes by sharing weights across patches and training on multiple resolutions.
Explore the generator code for image super-resolution, detailing base and super resolution handling, variably sized inputs, upsampling, and residual blocks with a 1x1 conversion to adjust the channel count.
Learn how image super-resolution GANs handle varying image sizes with dynamic shapes and transpose convolution. See how shape computation is deferred until runtime for TPU building and compilation.
describes a two-input discriminator for image super-resolution, using the super image and bass image, with a recursive body that downsamples, applies convolutions, and residual connections to produce a realism score.
Keep the loss function as is, using the R2 loss with regularization to produce sharp, realistic images from the low-resolution input, avoiding content loss and relying on the discriminator.
Train the generator and discriminator in alternating steps, using high-resolution, low-resolution, and super-resolution images. Employ the R2 loss, separate optimizers, and patch-based crops across multiple resolutions.
Explore the training loop’s resizing and cropping, featuring gamma correction and decoding, anti-aliasing, and random crop, with downsampling via average pooling to produce realistic base images.
Configure the image super-resolution GAN training pipeline by moving flip augmentation to the TPU, compiling multiple datasets, and generating visualizer ready super images via a random crop-and-resize pipeline.
Examine limitations when training on faces and observe artifacts on novel data like bears or city skylines; improve with paired high-resolution and low-resolution data and diverse, sharp samples.
We've all seen the gimmick in crime TV shows where the investigators manage to take a tiny patch of an image and magnify it with unrealistic clarity. Well today, Generative Adversarial Networks are making the impossible possible.
Dive into this course where I’ll show you how easily we can take the fundamentals from my High Resolution Generative Adversarial Networks course and build on this to accomplish this impressive feat known as Super-resolution. Not only will you be able to train a Generator to magnify an image to 4 times it’s original size (that’s 16 times the number of pixel!), but it will take relatively little effort on our end.
Just as in the first course, we’ll use Python and TensorFlow 2.0 along with Keras to build and train our convolutional neural networks. And since training our networks will require a ton of computational power, we’ll once again use Google CoLab to connect to a free Cloud TPU. This will allow us to complete the training in just a few days without spending anything on hardware!
If this sounds enticing, take a few minutes to watch the free preview of the “Results!” lesson. I have no doubt that you will come away impressed.