Book Image

Hands-On Convolutional Neural Networks with TensorFlow

By : Iffat Zafar, Giounona Tzanidou, Richard Burton, Nimesh Patel, Leonardo Araujo
Book Image

Hands-On Convolutional Neural Networks with TensorFlow

By: Iffat Zafar, Giounona Tzanidou, Richard Burton, Nimesh Patel, Leonardo Araujo

Overview of this book

Convolutional Neural Networks (CNN) are one of the most popular architectures used in computer vision apps. This book is an introduction to CNNs through solving real-world problems in deep learning while teaching you their implementation in popular Python library - TensorFlow. By the end of the book, you will be training CNNs in no time! We start with an overview of popular machine learning and deep learning models, and then get you set up with a TensorFlow development environment. This environment is the basis for implementing and training deep learning models in later chapters. Then, you will use Convolutional Neural Networks to work on problems such as image classification, object detection, and semantic segmentation. After that, you will use transfer learning to see how these models can solve other deep learning problems. You will also get a taste of implementing generative models such as autoencoders and generative adversarial networks. Later on, you will see useful tips on machine learning best practices and troubleshooting. Finally, you will learn how to apply your models on large datasets of millions of images.
Table of Contents (17 chapters)
Title Page
Copyright and Credits
Packt Upsell
Contributors
Preface
Index

Image classification with localization


After learning about image classification in the last chapter, we now know that when we classify an image, we are just trying to output the class label of an object inside that image. Usually, to make the task easier, there will be only one object in the image.

Moving forward, in many cases, we are also interested in finding the location of an object in the image. The name given to this task of locating an object is called localization. In this case, the output we want to produce is the coordinates of a box that goes around the object. The name for this box is the bounding box or bounding rectangle. The important detail about localization is that we only localize one object per image.

When we build a model responsible for predicting a class label as well as the bounding box around the object of interest, it is called image classification with localization.

Localization as regression

Localization can be achieved using a similar network architecture to the...