Algorithm Modules
- If the model performs poorly, how to identify the possible reasons?
-
Factors to consider: Quantity and quality of the training data, data diversity, on-site ROI parameters, and on-site lighting conditions.
-
Quantity: Whether the quantity of training data is enough to make the model achieve good performance.
-
Quality: Whether the data quality is up to standard, whether images are clear enough and are not over-exposed/under-exposed.
-
Data diversity: Whether the data cover all the situations that may occur on-site.
-
ROI parameters: Whether the ROI parameters for data acquisition are consistent with those for the actual application.
-
Lighting conditions: Whether the lighting conditions during the actual application change, and whether the conditions are consistent with those during data acquisition.
-
- How to troubleshoot the reason why a Defect Segmentation model is not effective?
-
-
Check the labels for errors.
-
Check that all kinds of defects are included in the training set.
-
Check that the input image size is reasonable. If the defect is too small it may not be effective for training the model.
-
- How to troubleshoot the reason why an Instance Segmentation model is not effective?
-
-
Check whether all types of target objects are created as label classes.
-
If some data cannot be recognized after improving image quality, preprocessing the images, or adjusting the ROI, additional data of this type should be acquired for model iteration.
-
- When to use the Defect Segmentation module and the Unsupervised Segmentation module?
-
Generally speaking, both modules can recognize the defect areas in images, but they remain quite different from each other. You may want to choose one by the following considerations:
-
The Defect Segmentation module aims to segment the defects; in other words, a high requirement of accuracy is put on this module in the position, shape, and size of defects. The Unsupervised Segmentation module, however, is designed to judge whether there is any defect in an image and display the possible areas with defects for NG images.
-
For the former, all types of defects should be labeled in the labeling process. The latter, however, poses no such requirement as defect labeling, and NG images are unnecessary for model training, namely that only OK images will be used as the training set.
-
The latter can only show a rough defect area of an image and cannot finely segment a defect. If you want to segment defects in an image, please use the Defect Segmentation module.
-
- What are the differences between the Classification module and the Unsupervised Segmentation module?
-
Both modules can divide images into several classes, but they are different in terms of usage and functions.
-
Data labeling
-
The main function of the Classification module is to classify images. Therefore, labeling data of each class is required to train a model.
-
The Unsupervised Segmentation module requires only the labeling data of OK images. You do not need to label NG images or specific defect types.
-
-
Implementation method
-
The Classification module uses the specified label to classify images. When the module detects NG images, it can only recognize NG images with specific one or more defects. NG images with one type of defects together form a class.
-
The Unsupervised Segmentation module determines whether an image is OK, NG, or Unknown on the basis of the specified thresholds. When the module detects NG images, the Unsupervised Segmentation module can recognize NG images with multiple defects.
-
-
Result display
-
The Classification module generates results based on the labels that you specified. The images can only be divided into specified classes.
-
The Unsupervised Segmentation module can divide images into the OK, NG, and Unknown classes. It can also specify the general range of the defects.
-
Overall, the Classification module is used when the number of defect classes are limited, and the Unsupervised Segmentation module is used to detect NG images and specify the general range of the defects without determining specific defect classes in advance.
-
- How is optical character recognition (OCR) realized in Mech-DLK?
-
It is realized by cascading the following two algorithm modules:
-
Text Detection: the first module, which is used to detect a single line or multiple lines of text in an image.
-
Text Recognition: the second module, which is used to recognize the characters in the text area.
-