OpenCV 3 Computer Vision Application Programming Cookbook - Third Edition Table of Contents OpenCV 3 Computer Vision Application Programming Cookbook - Third Edition Credits About the Author About the Reviewer www.PacktPub.com Why subscribe? Customer Feedback Preface What this book covers What you need for this book Who this book is for Sections Getting ready How to do it… How it works… There's more… See also Conventions Reader feedback Customer support Downloading the example code Downloading the color images of this book Errata Piracy Questions 1. Playing with Images Introduction Installing the OpenCV library Getting ready How to do it... How it works... There's more... The Visualization Toolkit and the cv::viz module The OpenCV developer site See also Loading, displaying, and saving images Getting ready How to do it... How it works... There's more... Clicking on images Drawing on images See also Exploring the cv::Mat data structure How to do it... How it works... There's more... The input and output arrays Manipulating small matrices See also Defining regions of interest Getting ready How to do it... How it works... There's more... Using image masks See also 2. Manipulating Pixels Introduction Accessing pixel values Getting ready How to do it... How it works... There's more... The cv::Mat_ template class See also Scanning an image with pointers Getting ready How to do it... How it works... There's more... Other color reduction formulas Having input and output arguments Efficient scanning of continuous images Low-level pointer arithmetic See also Scanning an image with iterators Getting ready How to do it... How it works... There's more... See also Writing efficient image-scanning loops How to do it... How it works... There's more... See also Scanning an image with neighbor access Getting ready How to do it... How it works... There's more... See also Performing simple image arithmetic Getting ready How to do it... How it works... There's more... Overloaded image operators Splitting the image channels Remapping an image How to do it... How it works... See also 3. Processing the Colors of an Image Introduction Comparing colors using the Strategy design pattern How to do it… How it works… There's more… Computing the distance between two color vectors Using OpenCV functions The floodFill function Functor or function object The OpenCV base class for algorithms See also Segmenting an image with the GrabCut algorithm How to do it… How it works… See also Converting color representations How to do it… How it works… See also Representing colors with hue, saturation, and brightness How to do it... How it works… There's more… Using colors for detection - skin tone detection See also 4. Counting the Pixels with Histograms Introduction Computing an image histogram Getting ready How to do it... How it works... There's more... Computing histograms of color images See also Applying look-up tables to modify the image's appearance How to do it... How it works... There's more... Stretching a histogram to improve the image contrast Applying a look-up table to color images See also Equalizing the image histogram How to do it... How it works... Backprojecting a histogram to detect specific image content How to do it... How it works... There's more... Backprojecting color histograms See also Using the mean shift algorithm to find an object How to do it... How it works... See also Retrieving similar images using the histogram comparison How to do it... How it works... See also Counting pixels with integral images How to do it... How it works... There's more... Adaptive thresholding Visual tracking using histograms See also 5. Transforming Images with Morphological Operations Introduction Eroding and dilating images using morphological filters Getting ready How to do it... How it works... There's more... See also Opening and closing images using morphological filters How to do it... How it works... See also Applying morphological operators on gray-level images How to do it... How it works... See also Segmenting images using watersheds How to do it... How it works... There's more... See also Extracting distinctive regions using MSER How to do it... How it works... See also 6. Filtering the Images Introduction Filtering images using low-pass filters How to do it... How it works... See also Downsampling images with filters How to do it... How it works... There's more... Interpolating pixel values See also Filtering images using a median filter How to do it... How it works... Applying directional filters to detect edges How to do it... How it works... There's more... Gradient operators Gaussian derivatives See also Computing the Laplacian of an image How to do it... How it works... There's more... Enhancing the contrast of an image using the Laplacian Difference of Gaussians See also 7. Extracting Lines, Contours, and Components Introduction Detecting image contours with the Canny operator How to do it... How it works... See also Detecting lines in images with the Hough transform Getting ready How to do it... How it works... There's more... Detecting circles See also Fitting a line to a set of points How to do it... How it works... There's more... Extracting connected components How to do it... How it works... There's more... Computing components' shape descriptors How to do it... How it works... There's more... Quadrilateral detection 8. Detecting Interest Points Introduction Detecting corners in an image How to do it... How it works... There's more... Good features to track See also Detecting features quickly How to do it... How it works... There's more... See also Detecting scale-invariant features How to do it... How it works... There's more... The SIFT feature-detection algorithm See also Detecting FAST features at multiple scales How to do it... How it works... There's more... The ORB feature-detection algorithm See also 9. Describing and Matching Interest Points Introduction Matching local templates How to do it... How it works... There's more... Template matching See also