Get to grips with deep learning techniques for building image processing applications using PyTorch with the help of code notebooks and test questions
Key Features
Implement solutions to 50 real-world computer vision applications using PyTorch
Understand the theory and working mechanisms of neural network architectures and their implementation
Discover best practices using a custom library created especially for this book
Book Description
Deep learning is the driving force behind many recent advances in various computer vision (CV) applications. This book takes a hands-on approach to help you to solve over 50 CV problems using PyTorch1.x on real-world datasets.
You'll start by building a neural network (NN) from scratch using NumPy and PyTorch and discover best practices for tweaking its hyperparameters. You'll then perform image classification using convolutional neural networks and transfer learning and understand how they work. As you progress, you'll implement multiple use cases of 2D and 3D multi-object detection, segmentation, human-pose-estimation by learning about the R-CNN family, SSD, YOLO, U-Net architectures, and the Detectron2 platform. The book will also guide you in performing facial expression swapping, generating new faces, and manipulating facial expressions as you explore autoencoders and modern generative adversarial networks. You'll learn how to combine CV with NLP techniques, such as LSTM and transformer, and RL techniques, such as Deep Q-learning, to implement OCR, image captioning, object detection, and a self-driving car agent. Finally, you'll move your NN model to production on the AWS Cloud.
By the end of this book, you'll be able to leverage modern NN architectures to solve over 50 real-world CV problems confidently.
What you will learn
Train a NN from scratch with NumPy and PyTorch
Implement 2D and 3D multi-object detection and segmentation
Generate digits and DeepFakes with autoencoders and advanced GANs
Manipulate images using CycleGAN, Pix2PixGAN, StyleGAN2, and SRGAN
Combine CV with NLP to perform OCR, image captioning, and object detection
Combine CV with reinforcement learning to build agents that play pong and self-drive a car
Deploy a deep learning model on the AWS server using FastAPI and Docker
Implement over 35 NN architectures and common OpenCV utilities
Who this book is for
This book is for beginners to PyTorch and intermediate-level machine learning practitioners who are looking to get well-versed with computer vision techniques using deep learning and PyTorch. If you are just getting started with neural networks, you'll find the use cases accompanied by notebooks in GitHub present in this book useful. Basic knowledge of the Python programming language and machine learning is all you need to get started with this book.
Table of Contents
Artificial Neural Network Fundamentals
PyTorch Fundamentals
Building a Deep Neural Network with PyTorch
Introducing Convolutional Neural Networks
Transfer Learning for object Classification
Practical Aspects of Image Classification
Basics of Object detection
Advanced object detection
Image segmentation
Applications of object detection and localization
Autoencoders and Image Manipulation
Image generation using GAN
Advanced GANs to manipulate images
Training with minimal data points
Combining Computer Vision and NLP techniques
Combining Computer Vision and Reinforcement Learning
Moving a Model to Production
OpenCV utilities for image analysis