Contents of opencv_contrib
This following list gives an overview of all modules available inside the opencv_contrib repository as of this writing. These modules must be downloaded and built separately. If you do decide to build this repository, but do not want to build all of the functions, you can turn off building any given function by replacing <reponame>
in the build code that follows with the name of the function.
$ cmake -D OPENCV_EXTRA_MODULES_PATH=<opencv_contrib>/modules
-D BUILD_opencv_<reponame>=OFF
<opencv_source_directory>
The functions in opencv_contrib as of this writing are:
aruco
- ArUco and ChArUco markers. Includes augmented reality ArUco markers and ChARUco markers (ArUco markers embedded inside the white areas of the checkerboard).
bgsegm
- Background segmentation. Improved adaptive background mixture model and use for real-time human tracking under variable lighting conditions.
bioinspired
- Biological vision. A biologically inspired vision model providing methods to minimize noise and luminance variance, handle transient event segmentation, and perform high-dynamic-range (HDR) tone mapping.
ccalib
- Custom calibration. Patterns for 3D reconstruction, omnidirectional camera calibration, random pattern calibration, and multicamera calibration.
cnn_3dobj
- Deep object recognition and pose. Uses Caffe deep neural net library to build, train, and test a CNN model of visual object recognition and pose.
contrib_world
- opencv_contrib holder.
contrib_world
is the module that, when built, contains all other opencv_contrib modules. It may be used for the more convenient redistribution of OpenCV binaries.
cvv
- Computer vision debugger. Simple code that you can add to your program that pops up a GUI allowing you to interactively and visually debug computer vision programs.
datasets
- Data sets reader. Code for reading existing computer vision databases and samples of using the readers to train, test, and run using that data set’s data.
dnn
- Deep neural networks (DNNs). This module can read in image-recognition networks trained in the Caffe neural network library and run them efficiently on CPU.
dnns_easily_fooled
- Subvert DNNs. This code can use the activations in a network to fool the networks into recognizing something else.
dpm
- Deformable part model. Felzenszwalb’s cascade with deformable parts object recognition code.
face
- Face recognition. Face recognition techniques include Eigen, Fisher, and local binary pattern histograms (LBPH) methods.
fuzzy
- Fuzzy logic in vision. Fuzzy logic image transform and inverse; Fuzzy image processing.
hdf
- Hierarchical data storage. This module contains I/O routines for hierarchical data format; meant to store large amounts of data.
line_descriptor
- Line segment extract and match. Methods of extracting, describing, and latching line segments using binary descriptors. One of the authors, Gary, built a robotic box handling company (Industrial Perception Inc.) out of a modification of this algorithm.
matlab
- MATLAB interface. OpenCV MATLAB Mex wrapper code generator for certain OpenCV core modules.
optflow
- Optical flow. Algorithms for running and evaluating deepflow, simpleflow, sparsetodenseflow, and motion templates (silhouette flow).
plot
- Plotting. The plot module allows you to easily plot data in 1D or 2D.
reg
- Image registration. Pixel-based image registration for precise alignment. Follows the paper by Richard Szeliski [Szeliski04].
rgbd
- RGB depth processing module. Linemod 3D object recognition; fast surface normal, and 3D plane finding. 3D visual odometry.
saliency
- Saliency API. Where humans would look in a scene. Has routines for static, motion, and “objectness” saliency.
sfm
- Structure from motion. This module contains algorithms to perform 3D reconstruction from 2D images. The core of the module is a light version of Libmv.
stereo
- Stereo correspondence. Stereo matching done with different descriptors: Census, CS-Census, MCT, BRIEF, and MV.
structured_light
- Structured light use. How to generate and project gray code patterns and use them to find dense depth in a scene.
surface_matching
- Point pair features. Implements 3D object detection and localization using multimodal point pair features.
text
- Visual text matching. In a visual scene, detect text, segment words, and recognize the text!
tracking
- Vision-based object tracking. Use and/or evaluate one of five different visual object tracking techniques.
xfeatures2d
- Features2D extra. Extra 2D features framework containing experimental and paid 2D feature detector/descriptor algorithms: SURF, SIFT, BRIEF, Censure, Freak, LUCID, Daisy, and Self-similar.
ximgproc
- Extended image processing. Includes structured forests, domain transform filter, guided filter, adaptive manifold filter, joint bilateral filter, and superpixels.
xobjdetect
- Boosted 2D object detection. Uses a Waldboost cascade and local binary patterns computed as integral features for 2D object detection.
xphoto
- Extra computational photography. Provides additional photo processing algorithms: color balance, denoising, and inpainting.