OpenCV 3 Computer Vision Application Programming Cookbook - Third Edition

Recipes to help you build computer vision applications that make the most of the popular C++ library OpenCV 3

OpenCV 3 Computer Vision Application Programming Cookbook - Third Edition

Cookbook
Robert Laganiere

Recipes to help you build computer vision applications that make the most of the popular C++ library OpenCV 3
$20.00
$49.99
RRP $39.99
RRP $49.99
eBook
Print + eBook

Instantly access this course right now and get the skills you need in 2017

With unlimited access to a constantly growing library of over 4,000 eBooks and Videos, a subscription to Mapt gives you everything you need to learn new skills. Cancel anytime.

Free Sample

Book Details

ISBN 139781786469717
Paperback474 pages

Book Description

Making your applications see has never been easier with OpenCV. With it, you can teach your robot how to follow your cat, write a program to correctly identify the members of One Direction, or even help you find the right colors for your redecoration.

OpenCV 3 Computer Vision Application Programming Cookbook Third Edition provides a complete introduction to the OpenCV library and explains how to build your first computer vision program. You will be presented with a variety of computer vision algorithms and exposed to important concepts in image and video analysis that will enable you to build your own computer vision applications.

This book helps you to get started with the library, and shows you how to install and deploy the OpenCV library to write effective computer vision applications following good programming practices. You will learn how to read and write images and manipulate their pixels. Different techniques for image enhancement and shape analysis will be presented. You will learn how to detect specific image features such as lines, circles or corners. You will be introduced to the concepts of mathematical morphology and image filtering.

The most recent methods for image matching and object recognition are described, and you’ll discover how to process video from files or cameras, as well as how to detect and track moving objects. Techniques to achieve camera calibration and perform multiple-view analysis will also be explained. Finally, you’ll also get acquainted with recent approaches in machine learning and object classification.

Table of Contents

Chapter 1: Playing with Images
Introduction
Installing the OpenCV library
Loading, displaying, and saving images
Exploring the cv::Mat data structure
Defining regions of interest
Chapter 2: Manipulating Pixels
Introduction
Accessing pixel values
Scanning an image with pointers
Scanning an image with iterators
Writing efficient image-scanning loops
Scanning an image with neighbor access
Performing simple image arithmetic
Remapping an image
Chapter 3: Processing the Colors of an Image
Introduction
Comparing colors using the Strategy design pattern
Segmenting an image with the GrabCut algorithm
Converting color representations
Representing colors with hue, saturation, and brightness
Chapter 4: Counting the Pixels with Histograms
Introduction
Computing an image histogram
Applying look-up tables to modify the image's appearance
Equalizing the image histogram
Backprojecting a histogram to detect specific image content
Using the mean shift algorithm to find an object
Retrieving similar images using the histogram comparison
Counting pixels with integral images
Chapter 5: Transforming Images with Morphological Operations
Introduction
Eroding and dilating images using morphological filters
Opening and closing images using morphological filters
Applying morphological operators on gray-level images
Segmenting images using watersheds
Extracting distinctive regions using MSER
Chapter 6: Filtering the Images
Introduction
Filtering images using low-pass filters
Downsampling images with filters
Filtering images using a median filter
Applying directional filters to detect edges
Computing the Laplacian of an image
Chapter 7: Extracting Lines, Contours, and Components
Introduction
Detecting image contours with the Canny operator
Detecting lines in images with the Hough transform
Fitting a line to a set of points
Extracting connected components
Computing components' shape descriptors
Chapter 8: Detecting Interest Points
Introduction
Detecting corners in an image
Detecting features quickly
Detecting scale-invariant features
Detecting FAST features at multiple scales
Chapter 9: Describing and Matching Interest Points
Introduction
Matching local templates
Describing and matching local intensity patterns
Matching keypoints with binary descriptors
Chapter 10: Estimating Projective Relations in Images
Introduction
Computing the fundamental matrix of an image pair
Matching images using random sample consensus
Computing a homography between two images
Detecting a planar target in images
Chapter 11: Reconstructing 3D Scenes
Introduction
Calibrating a camera
Recovering camera pose
Reconstructing a 3D scene from calibrated cameras
Computing depth from stereo image
Chapter 12: Processing Video Sequences
Introduction
Reading video sequences
Processing the video frames
Writing video sequences
Extracting the foreground objects in a video
Chapter 13: Tracking Visual Motion
Introduction
Tracing feature points in a video
Estimating the optical flow
Tracking an object in a video
Chapter 14: Learning from Examples
Introduction
Recognizing faces using nearest neighbors of local binary patterns
Finding objects and faces with a cascade of Haar features
Detecting objects and people with Support Vector Machines and histograms of oriented gradients

What You Will Learn

  • Install and create a program using the OpenCV library
  • Process an image by manipulating its pixels
  • Analyze an image using histograms
  • Segment images into homogenous regions and extract meaningful objects
  • Apply image filters to enhance image content
  • Exploit the image geometry in order to relay different views of a pictured scene
  • Calibrate the camera from different image observations
  • Detect people and objects in images using machine learning techniques
  • Reconstruct a 3D scene from images

Authors

Table of Contents

Chapter 1: Playing with Images
Introduction
Installing the OpenCV library
Loading, displaying, and saving images
Exploring the cv::Mat data structure
Defining regions of interest
Chapter 2: Manipulating Pixels
Introduction
Accessing pixel values
Scanning an image with pointers
Scanning an image with iterators
Writing efficient image-scanning loops
Scanning an image with neighbor access
Performing simple image arithmetic
Remapping an image
Chapter 3: Processing the Colors of an Image
Introduction
Comparing colors using the Strategy design pattern
Segmenting an image with the GrabCut algorithm
Converting color representations
Representing colors with hue, saturation, and brightness
Chapter 4: Counting the Pixels with Histograms
Introduction
Computing an image histogram
Applying look-up tables to modify the image's appearance
Equalizing the image histogram
Backprojecting a histogram to detect specific image content
Using the mean shift algorithm to find an object
Retrieving similar images using the histogram comparison
Counting pixels with integral images
Chapter 5: Transforming Images with Morphological Operations
Introduction
Eroding and dilating images using morphological filters
Opening and closing images using morphological filters
Applying morphological operators on gray-level images
Segmenting images using watersheds
Extracting distinctive regions using MSER
Chapter 6: Filtering the Images
Introduction
Filtering images using low-pass filters
Downsampling images with filters
Filtering images using a median filter
Applying directional filters to detect edges
Computing the Laplacian of an image
Chapter 7: Extracting Lines, Contours, and Components
Introduction
Detecting image contours with the Canny operator
Detecting lines in images with the Hough transform
Fitting a line to a set of points
Extracting connected components
Computing components' shape descriptors
Chapter 8: Detecting Interest Points
Introduction
Detecting corners in an image
Detecting features quickly
Detecting scale-invariant features
Detecting FAST features at multiple scales
Chapter 9: Describing and Matching Interest Points
Introduction
Matching local templates
Describing and matching local intensity patterns
Matching keypoints with binary descriptors
Chapter 10: Estimating Projective Relations in Images
Introduction
Computing the fundamental matrix of an image pair
Matching images using random sample consensus
Computing a homography between two images
Detecting a planar target in images
Chapter 11: Reconstructing 3D Scenes
Introduction
Calibrating a camera
Recovering camera pose
Reconstructing a 3D scene from calibrated cameras
Computing depth from stereo image
Chapter 12: Processing Video Sequences
Introduction
Reading video sequences
Processing the video frames
Writing video sequences
Extracting the foreground objects in a video
Chapter 13: Tracking Visual Motion
Introduction
Tracing feature points in a video
Estimating the optical flow
Tracking an object in a video
Chapter 14: Learning from Examples
Introduction
Recognizing faces using nearest neighbors of local binary patterns
Finding objects and faces with a cascade of Haar features
Detecting objects and people with Support Vector Machines and histograms of oriented gradients

Book Details

ISBN 139781786469717
Paperback474 pages
Read More

Read More Reviews