OpenCV 2 Computer Vision Application Programming
Cookbook
Welcome to the Author's Website
0. Introduction
1. Playing with Images
Installing the OpenCV Library
Creating an OpenCV project with MS Visual C++
Creating an OpenCV project with Qt
Loading, displaying and saving images
Creating a GUI application using Qt
2. Manipulating the Pixels
Accessing the pixel values
Scanning an image with pointers
Scanning an image with iterators
Writing efficient image scanning loops
Scanning an image with neighbour access
Performing simple image arithmetic
Defining regions of interest
3. Processing Images with Classes
Using the Strategy Pattern in Algorithm Design
Using the Controller Pattern to Communicate with Processing Modules
Using the Singleton Design Pattern
Using the Model-View-Controller Pattern to Design an Application
Converting Colour Spaces
4. Counting the Pixels with Histograms
Computing the Image Histogram
Applying Look-up Tables to Modify Image Appearance
Equalizing the Image Histogram
Backprojecting a Histogram to Detect Specific Image Content
Using the Meanshift Algorithm to Find an Object
Retrieving Similar Images using Histogram Comparison
5. Transforming images with morphological operations
Eroding and Dilating Images using Morphological Filters
Opening and Closing Images using Morphological Filters
Detecting edges and corners using morphological filters
Segmenting images using watersheds
Extracting foreground objects with the GrabCut algorithm
6. Filtering the Images
Filtering Images using Low-pass Filters
Filtering Images using a Median Filter
Applying Directional Filters to Detect Edges
Computing the Laplacian of an Image
7. Extracting Lines, Contours and Components
Detecting Image Contours with the Canny Operator
Detecting Lines in Images with the Hough Transform
Fitting a Line to a Set of Points
Extracting the Components’ Contours
Computing Components’ Shape Descriptors
8. Detecting and Matching Interest Points
Detecting Harris Corners
Detecting Fast Features
Detecting the Scale-Invariant SURF Features
Describing SURF Features
9. Estimating Projective Relations in Images
Calibrating a camera
Computing the Fundamental Matrix of an Image Pair
Matching Images using Random Sample Consensus
Computing a homography between two images
10. Processing Video Sequences
Reading Video Sequences
Processing the Video Frames
Writing Video Sequences
Tracking Feature Points in Video
Extracting the Foreground Objects in Video
[an error occurred while processing this directive]
(c) Robert Laganiere 2011