Object detection
An object detection model labels an object in an image by using what is defined in the data set.
For information about preparing a data set for object detection, see Labeling objects.
The following model optimization types are available for object detection models:
- Faster R-CNN
-
- Highly accurate for locating object in images and videos.
- YOLOv3
-
- Models are optimized for speed and can be run anywhere.
- Generates small models that work well for embedded devices.
- Models use You Only Look Once (YOLO) v3 and might take longer to train for improved accuracy.
- Detects small objects more accurately than Tiny YOLOv3.
- A Core ML version of the model is generated at the end of model training. You can deploy this model in IBM® Maximo® Visual Inspection Mobile or you can download it from the Models page in Maximo Visual Inspection.
- Tiny YOLOv3
-
- Models are optimized for speed and use the same technique as YOLO v3.
- Models are faster, less accurate, and use less GPU memory.
- Generates small models that work well for embedded devices.
- Alternatively, a model can be deployed on the CPU.
- A Core ML version of the model is generated at the end of model training. You can deploy this model in IBM Maximo Visual Inspection Mobile or you can download it from the Models page in Maximo Visual Inspection.
- Detectron2
-
- Models are optimized for object detection and segmentation of small objects.
- Generates accurate but large models.
- Models use objects that are labeled with polygonal bounding boxes for greater training accuracy. These labels are useful for small, diagonal, and irregular objects.
Note:Disable segmentation when the objects you are detecting can be accurately labeled with bounding boxes or your data set contains bounding boxes only.
When you disable segmentation, the model trains faster and runs faster at deployment time. However, detected objects have a simple bounding box. Consider training with a different model type that does not detect object contours, for example Faster R-CNN training.
Detectron2 in version 8.8+
From Maximo Visual Inspectionversion 8.8, Detectron2 model optimization has the following training options:- Enable segmentation
- Enable auto early stop
- Enable online augmentation
Note: The same training options are available for high-resolution model optimization, but the images that are sent to the model during deployment are different. For more information about the images that are sent to models during deployment of a high-resolution model, see High resolution.Note: Only Detectron2 models that are trained on Maximo Visual Inspection version 8.8.0 or later can be used as a base model. Detectron2 models trained in earlier versions are not available for use. - High resolution
-
- Supports model training and inference on high-resolution images.
- Models are optimized to inspect large images and detect the unique features of smaller objects.
- Enable segmentation to indicate whether a model is trained to detect object contours.
- Enable auto early stop to signal to the training process to stop automatically when the most accurate model is found or the training process reaches the maximum number of iterations.
High-resolution models apply a pyramid tiling scheme to an image. Each of the tiles is sent to the model independently, and includes around 50 - 100 images. Detection results from each of the image tiles are merged and projected back to the original image scale. Select this option when your data set consists of high-resolution images, small objects, or both.
High resolution in version 8.7+
From Maximo Visual Inspection version 8.7, high-resolution models can be trained and deployed on NVIDIA Ampere GPUs. You can also combine this model type with other models in the same container and deploy the models locally on Maximo Visual Inspection Edge.
Enable online augmentation applies a sequence of four probabilistic transformation types to each image in a data set during model training. The transformation types increase a model's ability to generalize so that you do not need to apply offline augmentation to a data set before training.
- Single Shot Detector (SSD)
-
- Suitable for real-time inference and embedded devices.
- Almost as fast as YOLO but not as accurate as Faster R-CNN.
- Anomaly optimized
-
- Models are trained with data sets that contain images with objects that do not have any anomalies. At runtime, when the same type of objects are detected, the model locates anomalies in the objects. The detected anomalies might indicate defects such as scratches, dents, or chips.
- Provides confidence scores for detected objects and detected anomalies.
Anomaly model training occurs in two stages. The first stage is reflected in the progress bar on the model details page. For more information about preparing a data set for anomaly optimization, see Labeling objects.
Accuracy can decrease when the number of object classes that are in the training data set increases. Because model performance decreases as more objects are detected and depending on latency requirements, anomaly models are not suitable for situations in which multiple objects of interest appear in an image at the same time.
Anomaly optimized in 8.7+
Anomaly optimized models can be trained and deployed on NVIDIA Ampere GPUs. You can also combine this model type with other models in the same container and deploy the models locally on Maximo Visual Inspection.
Note: Anomaly models that were trained in earlier versions of Maximo Visual Inspection can run out of memory when the models are deployed in Maximo Visual Inspection 8.7. This issue can also occur in older versions of Maximo Visual Inspection and is affected by the number of images that trained the model and the available memory on the corresponding GPU. Anomaly models that are trained in Maximo Visual Inspection 8.7 require up to 8 GB of memory on the corresponding GPU.