MVTec HALCON offers a well-equipped tool box, which contains everything you need for the entire deep learning process chain. With the integrated, user-friendly development environment HDevelop in HALCON all steps from image acquisition, data processing, pre-processing to inference can be performed. There are no interface issues to worry about.
Additionally we developed the MVTec Deep Learning Tool, a tool to label training data for HALCON's deep-learning-based object detection, classification and semantic segmentation. This data can be integrated seamlessly into HALCON.
The general workflow of deep learning classification consists of the following four steps.
Preparation: Acquire, label & review data
Acquire the deep learning image data under conditions that are similar or even identical to the expected scenario in the live application.
Label every object in the data set and every object within one class in the same way, ensuring the correctness and accuracy of the labeled data.
Review and check if there are mislabeled data. With the free MVTec Deep Learning Tool you can prepare the dataset easily and efficiently.
Training: Train your own deep learning CNNs
After exporting the data from the Deep Learning Tool to HDevelop, HALCON can analyze these images and automatically learn which features can be used to identify the given classes. A big advantage compared to traditional classification methods, where these features had to be "handcrafted" by the user.
You can train your own classifier based on pre-trained CNNs (Convolutional Neural Networks) included in HALCON. These networks have been highly optimized for industrial applications and are based on hundreds of thousands of images. Furthermore, previously created 3rd-party networks, which have been exported into the ONNX (Open Neural Network Exchange) format can be used in HALCON.
Evaluation: Verify the trained model on test data
In order to verify whether the performance of the trained deep learning model is sufficient for your application, you can choose between various visualisation options.
E.g., you can use the confusion matrix in HALCON to accurately read the proportion of true and false positives. The heatmap can show which areas in the image were particularly decisive for the decision of the network.
Inference: Deploy your evaluated network to new live images
Once the network has learned to differentiate between the given classes, e.g., to recognize if an image shows a scratched, contaminated or good sample, users can apply the newly created CNN classifier to new images – this is called "inference". This inference can be executed on GPUs as well as on CPUs (x86- and Arm®-based).
Tips & Tricks
Below you will find our tips and tricks for a successful start with deep learning.
MVTec offers trainings to pass on our expertise and experience to you. You can attend the MVTec Technology Days, which focus on deep learning technologies such as classification, object detection, semantic segmentation and anomaly detection.
Watch our tutorials as starting point for your applications. You can also use our HDevelop example programs with extensive explanations and background information.
HDevelop script for labeling your data for edge extraction