Book description
Apply neural network architectures to build state-of-the-art computer vision applications using the Python programming language
Key Features
- Gain a fundamental understanding of advanced computer vision and neural network models in use today
- Cover tasks such as low-level vision, image classification, and object detection
- Develop deep learning models on cloud platforms and optimize them using TensorFlow Lite and the OpenVINO toolkit
Book Description
Computer vision allows machines to gain human-level understanding to visualize, process, and analyze images and videos. This book focuses on using TensorFlow to help you learn advanced computer vision tasks such as image acquisition, processing, and analysis. You'll start with the key principles of computer vision and deep learning to build a solid foundation, before covering neural network architectures and understanding how they work rather than using them as a black box. Next, you'll explore architectures such as VGG, ResNet, Inception, R-CNN, SSD, YOLO, and MobileNet. As you advance, you'll learn to use visual search methods using transfer learning. You'll also cover advanced computer vision concepts such as semantic segmentation, image inpainting with GAN's, object tracking, video segmentation, and action recognition. Later, the book focuses on how machine learning and deep learning concepts can be used to perform tasks such as edge detection and face recognition. You'll then discover how to develop powerful neural network models on your PC and on various cloud platforms. Finally, you'll learn to perform model optimization methods to deploy models on edge devices for real-time inference. By the end of this book, you'll have a solid understanding of computer vision and be able to confidently develop models to automate tasks.
What you will learn
- Explore methods of feature extraction and image retrieval and visualize different layers of the neural network model
- Use TensorFlow for various visual search methods for real-world scenarios
- Build neural networks or adjust parameters to optimize the performance of models
- Understand TensorFlow DeepLab to perform semantic segmentation on images and DCGAN for image inpainting
- Evaluate your model and optimize and integrate it into your application to operate at scale
- Get up to speed with techniques for performing manual and automated image annotation
Who this book is for
This book is for computer vision professionals, image processing professionals, machine learning engineers and AI developers who have some knowledge of machine learning and deep learning and want to build expert-level computer vision applications. In addition to familiarity with TensorFlow, Python knowledge will be required to get started with this book.
Table of contents
- Title Page
- Copyright and Credits
- About Packt
- Contributors
- Preface
- Section 1: Introduction to Computer Vision and Neural Networks
-
Computer Vision and TensorFlow Fundamentals
- Technical requirements
- Detecting edges using image hashing and filtering
- Extracting features from an image
- Object detection using Contours and the HOG detector
- An overview of TensorFlow, its ecosystem, and installation
- Summary
- Content Recognition Using Local Binary Patterns
- Facial Detection Using OpenCV and CNN
- Deep Learning on Images
- Section 2: Advanced Concepts of Computer Vision with TensorFlow
- Neural Network Architecture and Models
- Visual Search Using Transfer Learning
- Object Detection Using YOLO
- Semantic Segmentation and Neural Style Transfer
- Section 3: Advanced Implementation of Computer Vision with TensorFlow
- Action Recognition Using Multitask Deep Learning
-
Object Detection Using R-CNN, SSD, and R-FCN
- An overview of SSD
- An overview of R-FCN
- An overview of the TensorFlow object detection API
- Detecting objects using TensorFlow on Google Cloud
- Detecting objects using TensorFlow Hub
-
Training a custom object detector using TensorFlow and Google Colab
- Collecting and formatting images as .jpg files
- Annotating images to create a .xml file
- Separating the file by train and test folders
- Configuring parameters and installing the required packages
- Creating TensorFlow records
- Preparing the model and configuring the training pipeline
- Monitoring training progress using TensorBoard
- Training the model
- Running an inference test
- Caution when using the neural network model
- An overview of Mask R-CNN and a Google Colab demonstration
- Developing an object tracker model to complement the object detector
- Summary
- Section 4: TensorFlow Implementation at the Edge and on the Cloud
-
Deep Learning on Edge Devices with CPU/GPU Optimization
- Overview of deep learning on edge devices
- Techniques used for GPU/CPU optimization
- Overview of MobileNet
- Image processing with a Raspberry Pi
- Model conversion and inference using OpenVINO
- Converting a TensorFlow model developed using the TensorFlow Object Detection API
- Application of TensorFlow Lite
- Object detection on Android phones using TensorFlow Lite
- Object detection on Raspberry Pi using TensorFlow Lite
- Object detection on iPhone using TensorFlow Lite and Create ML
- A summary of various annotation methods
- Summary
-
Cloud Computing Platform for Computer Vision
-
Training an object detector in GCP
- Creating a project in GCP
- The GCP setup
- The Google Cloud Storage bucket setup
- Setting up the Google Cloud SDK
- Linking your terminal to the Google Cloud project and bucket
- Installing the TensorFlow object detection API
- Preparing the dataset
- Training in the cloud
- Viewing the model output in TensorBoard
- The model output and conversion into a frozen graph
- Executing export tflite graph.py from Google Colab
- Training an object detector in the AWS SageMaker cloud platform
- Training an object detector in the Microsoft Azure cloud platform
- Training at scale and packaging
- The general idea behind cloud-based visual search
- Analyzing images and search mechanisms in various cloud platforms
- Summary
-
Training an object detector in GCP
- Other Books You May Enjoy
Product information
- Title: Mastering Computer Vision with TensorFlow 2.x
- Author(s):
- Release date: May 2020
- Publisher(s): Packt Publishing
- ISBN: 9781838827069
You might also like
book
Hands-On Computer Vision with TensorFlow 2
A practical guide to building high performance systems for object detection, segmentation, video processing, smartphone applications, …
book
TensorFlow 2.0 Computer Vision Cookbook
Get well versed with state-of-the-art techniques to tailor training processes and boost the performance of computer …
book
Hands-On Neural Networks with TensorFlow 2.0
A comprehensive guide to developing neural network-based solutions using TensorFlow 2.0 Key Features Understand the basics …
book
TensorFlow 2 Pocket Reference
This easy-to-use reference for TensorFlow 2 design patterns in Python will help you make informed decisions …