Anomaly of Surface
The Anomaly of Surface module is the unsupervised deep-learning method available, where detailed annotations are not required and the end-user is only required to assign OK class to at least 1 image.
The anomaly module looks for anomalies in images according to a model which was previously trained.
The model is trained using as a reference defect-free images. Therefore, finding defects on remaining images.
Find a video below demonstrating the overall functionality of this module:
ย
Alternativaley, if you would like step-by-step tutorial example for this module:
Open the application > Create new project > Start Interactive Tutorial
You will be guided throughout the main functionalities of our software, using this module.
Training Overview
ย
The input for training involves on classifying at least 1 image to โOKโ class.
There are 3 options to perform this classification:
1. [CLICKING] - When the image is selected, click on the option โOKโ, within the โAnnotationsโ box.
2. [NUMPAD] - When the image is selected, pressing numpad key โ1โ, it then categorizes it as a 'OK' image.
3. [SET BY FILENAME] - Click on โSET BY FILENAMEโ button, and type whatโs the prefix for the OK images within the field.
Tip: it is also possible to select multiple images at once using the โShiftโ key and classify them in bulk, by selecting the first image, then press 'Shift' and select the last image from the range.
Attention: For 3. [SET BY FILENAME], please note that if the filename standard is, for instance, โtestpart_OK52โ, you would have to type โtestpart_OK' - if you type only OK as part of the name it wonโt classify, as it classifies literally by prefix.
Assigning at least 1 image as โOKโ, already enables you to Start Training, but we usually recommend using at least 10 to 20 OK/NG images for optimal results, depending on the surface variability.
View-finder
The view-finder size should be determined depending on how detailed the inspection model should be.
If you choose a size which is too small, the algorith will not be able to to identify detaills on the surroundings, therefore, some defects may not be identified.
On the other hand, if you select a size which is too large, some details can be overlooked - resulting in large number of false positives.
Some errors are seen from a larger distance, and others can only be seen through a magnifying glass, just as when a human eye focuses on detecting errors.
Along with the view-finder size, the processing time will be directly proportional to it, as the user indicates how detailed the inspection should be.
There is no general rule on how to set the right size, however, the size of the defects you are searching for can be used a guideline. You need to try out a number of sizes in order to learn what works best for your inspection scenario.
The view-finder size, ideally, should be slightly larger than the largest defect
Tip: In order to be precise, you can use the mouse and drag the image until the defect fits within the pink square (the view-finder size), then you can adjust the its size to be slightly larger than the largest defect.
ย
Detection Area
A dotted rectangle is displayed on the image when in the Training tab.
Defects are only being detected in the area inside this rectangle, due to the way the algorithm works.
As a reference, as the view-finder size increases, less the software can inspect the edges of the image.
Types of training
Fast Training
Fast training is a type of training with a minimum number of training cycles.
At first, we recommend trying Fast Training using different sizes of view-finder and other training parameters to find out what combination works best in your case.
Deep Training
When you find suitable settings, but want to achieve even more precise results, you should then try Deep Training with more training cycles.ย
However, using the same settings as the best Fast Training model result, in order to compare them properly.
ย
Detection Results - Heatmap
The result of the detection is a heatmap. When validating, heatmaps are plotted in the image for better illustration. In the heatmaps, the detected areas are surrounded by rectangles that are added to the โdetectedRectanglesโ item in the context.
Sensitivity
Parameter indicating sensitivity to anomalies. It can be changed in model preview. Higher sensitivity value means more sensitive detection โ more anomalies are found. However, the anomalies, where deviation is still acceptable, can be displayed as well.
Automatic sensitivity
This functions helps you set the correct sensitivity. To apply this function you first need to classify OK and NG (Not Good/defective) images in the dialog window.
You cannot use images which were used as OK in anomaly training.
The software then computes a threshold for each sensitivity value. The threshold is computed as a mean of the amount of "red pixels" (marked as defective) in the "most red" OK image and the "least red" NOK image for a given sensitivity value.
As a result, you get a graph containing two curves showing percentages of OK images "less red" than the threshold and NOK images "more red" than the threshold for every sensitivity value. Ideally, you want to choose a sensitivity at which both curves are maximized. It is possible to choose the sensitivity by clicking into the graph.
ย