Book Image

Practical Computer Vision

By : Abhinav Dadhich
Book Image

Practical Computer Vision

By: Abhinav Dadhich

Overview of this book

In this book, you will find several recently proposed methods in various domains of computer vision. You will start by setting up the proper Python environment to work on practical applications. This includes setting up libraries such as OpenCV, TensorFlow, and Keras using Anaconda. Using these libraries, you'll start to understand the concepts of image transformation and filtering. You will find a detailed explanation of feature detectors such as FAST and ORB; you'll use them to find similar-looking objects. With an introduction to convolutional neural nets, you will learn how to build a deep neural net using Keras and how to use it to classify the Fashion-MNIST dataset. With regard to object detection, you will learn the implementation of a simple face detector as well as the workings of complex deep-learning-based object detectors such as Faster R-CNN and SSD using TensorFlow. You'll get started with semantic segmentation using FCN models and track objects with Deep SORT. Not only this, you will also use Visual SLAM techniques such as ORB-SLAM on a standard dataset. By the end of this book, you will have a firm understanding of the different computer vision techniques and how to apply them in your applications.
Table of Contents (12 chapters)

What is machine learning?

Let's say we have scanned images of several handwritten digits and want to make a piece of software that would recognize handwritten digits from an image scan. For simplicity, let's assume that we have only one digit. The target software that we develop takes in this image and outputs a number corresponding to that image. We can create an algorithm with several checks, such as: if there is a single vertical line, then output it as 1, or if there is an oval shape, then show it as zero. However, this is very naive and is a bad solution because we can have vertical lines for other digits too: 7, 9, and so on. The following figure explains the overall process, taking in one of the samples from the MNIST handwritten digit dataset:

There are several ways to model such a problem. We know that an image is made up of arrays of pixels and each pixel...