Main Content

Feature Detection and Extraction

Image registration, interest point detection, extracting feature descriptors, and point feature matching

Local features and their descriptors are the building blocks of many computer vision algorithms. Their applications include image registration, object detection and classification, tracking, and motion estimation. These algorithms use local features to better handle scale changes, rotation, and occlusion. Computer Vision Toolbox™ algorithms include the FAST, Harris, and Shi & Tomasi corner detectors, and the SURF, KAZE, and MSER blob detectors. The toolbox includes the SURF, FREAK, BRISK, LBP, ORB, and HOG descriptors. You can mix and match the detectors and the descriptors depending on the requirements of your application. You can also extract features using a pretrained convolutional neural network which applies techniques from the field of deep learning.


expand all

detectBRISKFeaturesDetect BRISK features and return BRISKPoints object
detectFASTFeaturesDetect corners using FAST algorithm and return cornerPoints object
detectHarrisFeaturesDetect corners using Harris–Stephens algorithm and return cornerPoints object
detectMinEigenFeaturesDetect corners using minimum eigenvalue algorithm and return cornerPoints object
detectMSERFeaturesDetect MSER features and return MSERRegions object
detectORBFeaturesDetect and store ORB keypoints
detectSURFFeaturesDetect SURF features and return SURFPoints object
detectKAZEFeaturesDetect KAZE features
extractFeaturesExtract interest point descriptors
extractLBPFeaturesExtract local binary pattern (LBP) features
extractHOGFeaturesExtract histogram of oriented gradients (HOG) features
matchFeaturesFind matching features
showMatchedFeaturesDisplay corresponding feature points
imwarpApply geometric transformation to image
estimateGeometricTransform2DEstimate 2-D geometric transformation from matching point pairs
estimateGeometricTransform3DEstimate 3-D geometric transformation from matching point pairs
vision.AlphaBlenderCombine images, overlay images, or highlight selected pixels
vision.BlockMatcherEstimate motion between images or video frames
vision.LocalMaximaFinderFind local maxima in matrices
vision.TemplateMatcherLocate template in image
insertMarkerInsert markers in image or video
insertShapeInsert shapes in image or video
showShapeDisplay shapes on image, video, or point cloud
insertObjectAnnotationAnnotate truecolor or grayscale image or video stream
insertTextInsert text in image or video
imshowDisplay image
imshowpairCompare differences between images
vision.GammaCorrectorApply or remove gamma correction from images or video streams
vision.ChromaResamplerDownsample or upsample chrominance components of images
binaryFeaturesObject for storing binary feature vectors
BRISKPointsObject for storing BRISK interest points
KAZEPointsObject for storing KAZE interest points
cornerPointsObject for storing corner points
SURFPointsObject for storing SURF interest points
MSERRegionsObject for storing MSER regions
ORBPointsObject for storing ORB keypoints
affine2d2-D affine geometric transformation
affine3d 3-D affine geometric transformation
rigid3d3-D rigid geometric transformation
projective2d 2-D projective geometric transformation


Local Feature Detection and Extraction

Learn the benefits and applications of local feature detection and extraction

Point Feature Types

Choose functions that return and accept points objects for several types of features

Coordinate Systems

Specify pixel Indices, spatial coordinates, and 3-D coordinate systems

Draw Shapes and Lines

When you specify the type of shape to draw, you must also specify it’s location on the image.

Featured Examples