OpenCV 3 Computer Vision with Python Cookbook

Alexey Spizhevoy, Aleksandr Rybnikov



Key Features

  • Build computer vision applications with OpenCV functionality via Python API
  • Get your hands dirty with image processing, image/video analysis, multiple view geometry, and machine learning
  • Learn how to use state-of-the-art deep learning models for image classification, object detection, and face recognition

Book Description

OpenCV 3 is a native cross-platform library for computer vision, machine learning, and image processing. OpenCV's convenient high-level APIs hide very powerful internals designed for computational efficiency and with a strong focus on real-time applications that can take advantage of multicore and GPU processing. This book will help you tackle increasingly challenging computer vision problems by providing number of recipes that you can improvise in your existing applications.

In this book, you will learn how to process an image by manipulating pixels and analyze an image using histograms. It will guide you on how to segment images into homogeous regions and extract meaningful objects. Then you will learn how to apply image filters to enhance image content and exploit the image geometry in order to relay different views of a pictured scene. Techniques to achieve camera calibration and perform multiple-view analysis will also be explained. You will be presented with various recipes on how to reconstruct a 3D scene from images. Later you will work on conversion of low level pixel information to high level concepts for applications such as object detection and recognition and scene monitoring and you'll discover how to process video from files or cameras, as well as how to detect and track moving objects. Finally, you'll also get acquainted with recent approaches in deep learning, object classification, and neural networks.

By the end of the book, you will be able to apply skills in OpenCV to create and explore computer vision applications in various domains.

What you will learn

  • Build OpenCV from sources with Python API support
  • Get familiar with low-level image processing methods
  • Learn common linear algebra tools needed in computer vision
  • Implement camera models and epipolar geometry tools
  • Find out how to detect interesting points in images and compare them
  • Binarize images and common image masks functionality
  • Detect objects and track them in video
  • Apply state-of-the-art deep learning models for image classification, object detection, and face recognition