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 a Feature?

In the previous chapter, our main focus was filtering an image and applying different transformations on it. These are good techniques to analyze images but are not sufficient for the majority of computer vision tasks. For example, if we were to make a product detector for a shopping store, computing only edges may not be enough to say whether the image is of an orange or an apple. On the other hand, if a person is given the same task, it is very intuitive to differentiate between an orange and an apple. This is because of the fact that human perception combines several features, such as texture, color, surface, shape, reflections, and so on, to distinguish between one object with another. This motivates to look for more details that relates to complex features of objects. These complex features can then be used in high level image vision tasks like image recognition...