Overview
TheORBextractor class extracts ORB (Oriented FAST and Rotated BRIEF) features from images using a scale-space pyramid representation. Features are distributed across the image using an octree-based approach for uniform spatial coverage.
Header: include/ORBextractor.h
Constructor
ORBextractor
nfeatures- Target number of features to extractscaleFactor- Scale factor between pyramid levels (typically 1.2)nlevels- Number of pyramid levelsiniThFAST- Initial FAST detection thresholdminThFAST- Minimum FAST threshold if initial detection fails
Feature Extraction
operator()
_image- Input image_mask- Mask for extraction region (currently ignored)_keypoints- Output vector of detected keypoints_descriptors- Output matrix of ORB descriptorsvLappingArea- Lapping area information for stereo
- Features are dispersed uniformly using an octree structure
- Extracts features across multiple scale levels
- Computes 256-bit ORB binary descriptors
Scale Information
GetLevels
GetScaleFactor
GetScaleFactors
GetInverseScaleFactors
GetScaleSigmaSquares
GetInverseScaleSigmaSquares
Public Members
mvImagePyramid
Constants
Score Types
HARRIS_SCORE- Harris corner responseFAST_SCORE- FAST corner response
Implementation Details
FAST Detection
The extractor uses adaptive FAST corner detection:- Attempts detection with
iniThFASTthreshold - Falls back to
minThFASTif insufficient features found - Ensures robust feature detection in various conditions
Octree Distribution
Features are distributed uniformly using an octree structure:- Divides image into quadrants recursively
- Ensures spatial coverage across the image
- Prevents feature clustering in textured regions
Pyramid Levels
Scale-space representation properties:- Each level scaled by
scaleFactorfrom previous level - Features detected at all levels for scale invariance
- Typical configuration: 8 levels with scale factor 1.2
Usage Example
See Also
- ORBmatcher - Feature matching using ORB descriptors
- Frame - Frame representation using ORB features
- KeyFrame - Keyframe with ORB features