How to start with deep learning
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.
Workflow
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).
Helpful services to get you started with deep learning
Trainings
MVTec and MVTec partners offers trainings to help you to start and work with deep learning in MVTec products. Feel free to take a look in our training and workshop program.
Videos
Watch our tutorials as starting point for your applications. You can also use our HDevelop example programs with extensive explanations and background information.
Example scripts
Description | Download |
---|---|
HDevelop script for labeling your data for edge extraction | Zip-File (8 MB) |
HDevelop example script that demonstrates how to create a DLDataset dictionary for object detection from existing labeled data | (3.4 MB) |
Minimal version of the object detection example | (3 KB) |
Minimal version of the semantic segmentation example | (3 KB) |
Special requirements
- 64-bit operating system: Windows or Linux
- Training deep learning networks is recommended on NVIDIA GPUs or Intel® CPUs
- More information in the HALCON Installation Guide
You can try HALCON for free and download it on our website. Get more information here.