Recognition, Object Detection, and Semantic Segmentation
Computer Vision Toolbox™ supports several approaches for image classification, object detection, semantic segmentation, instance segmentation, and recognition, including:
- Deep learning and convolutional neural networks (CNNs) 
- Bag of features 
- Template matching 
- Blob analysis 
- Viola-Jones algorithm 
A CNN is a popular deep learning architecture that automatically learns useful feature representations directly from image data. Bag of features encodes image features into a compact representation suitable for image classification and image retrieval. Template matching uses a small image, or template, to find matching regions in a larger image. Blob analysis uses segmentation and blob properties to identify objects of interest. The Viola-Jones algorithm uses Haar-like features and a cascade of classifiers to identify objects, including faces, noses, and eyes. You can train this classifier to recognize other objects.
Categories
- Object Detection
 Perform classification, object detection, transfer learning using convolutional neural networks (CNNs, or ConvNets), create customized detectors
 
- Semantic Segmentation
 Semantic image segmentation
 
- Instance Segmentation
 Perform instance segmentation using pretrained deep learning networks and train networks using transfer learning on custom data
 
- Image Category Classification
 Create vision transformer or bag of visual words image classifier
 
- Automated Visual Inspection
 Automate quality control tasks using anomaly detection and localization methods
 
- Text Detection and Recognition
 Detect and recognize text using image feature detection and description, deep learning, and OCR
 
- Keypoint Detection
 Detect keypoints in objects using convolutional neural networks (CNNs)
 
- Video Classification
 Perform video classification and activity recognition using deep learning
 







