Book Image

TensorFlow 2.0 Computer Vision Cookbook

By : Jesús Martínez
Book Image

TensorFlow 2.0 Computer Vision Cookbook

By: Jesús Martínez

Overview of this book

Computer vision is a scientific field that enables machines to identify and process digital images and videos. This book focuses on independent recipes to help you perform various computer vision tasks using TensorFlow. The book begins by taking you through the basics of deep learning for computer vision, along with covering TensorFlow 2.x’s key features, such as the Keras and tf.data.Dataset APIs. You’ll then learn about the ins and outs of common computer vision tasks, such as image classification, transfer learning, image enhancing and styling, and object detection. The book also covers autoencoders in domains such as inverse image search indexes and image denoising, while offering insights into various architectures used in the recipes, such as convolutional neural networks (CNNs), region-based CNNs (R-CNNs), VGGNet, and You Only Look Once (YOLO). Moving on, you’ll discover tips and tricks to solve any problems faced while building various computer vision applications. Finally, you’ll delve into more advanced topics such as Generative Adversarial Networks (GANs), video processing, and AutoML, concluding with a section focused on techniques to help you boost the performance of your networks. By the end of this TensorFlow book, you’ll be able to confidently tackle a wide range of computer vision problems using TensorFlow 2.x.
Table of Contents (14 chapters)

Implementing a deep convolutional GAN

A GAN is comprised, in its simplest form, of two networks, a generator and a discriminator. The discriminator is just a regular Convolutional Neural Network (CNN) that must solve the binary classification problem of distinguishing real images from fakes. The generator, on the other hand, is similar to the decoder in an autoencoder because it has to produce an image from a seed, which is just a vector of Gaussian noise.

In this recipe, we'll implement a Deep Convolutional Generative Adversarial Network (DCGAN) to produce images akin to the ones present in EMNIST, a dataset that extends the well-known MNIST dataset with uppercase and lowercase handwritten letters on top of the digits from 0 to 9.

Let's begin!

Getting ready

We'll need to install tensorflow-datasets to access EMNIST more easily. Also, in order to display a nice progress bar during the training of our GAN, we'll use tqdm.

Both dependencies can be...