Machine (deep) learning and neural networks

Advanced image analysis using deep learning methods also enables camera inspections in machine vision applications where conventional methods cannot be used.


Methods of deep learning, sometimes also referred to as neural networks, which are part of the broader category of algorithms known as machine learning, are capable of learning from sample image data how to properly evaluate data. Instead of inventing and programming complex rules, a special training algorithm is able to "learn" these rules and dependencies on its own. This is accomplished by presenting (usually many) sample images to the training algorithm along with the correct results. The output of the training is then the so-called model of the neural network, which is used to evaluate all other (including "previously unknown" to the model) images.

Although deep learning methods can significantly simplify solving various tasks of machine vision, their proper deployment also requires a certain expertise. Depending on the type of task, the correct type of model and possibly also the architecture of the neural network must be chosen. It is also important to optimize the model's parameters, the methodology of its training, and the proper annotation of sample images. As with all machine vision tasks, the design of the proper image capture system (selection and optimal configuration of cameras, optics, and lighting) also plays a primary role. All of these factors significantly contribute to the success of solving machine vision tasks using deep learning methods.

Because our experts have been working in the field of deep learning and neural networks for a long time and have tested their skills on many projects and studies, we can handle even very non-standard customer requirements.

Advantages and Disadvantages of Using Deep Learning Methods

Since a neural network functions externally similarly to the brain, methods can be used where it is possible to "train" the neural network on a large number of sample pieces. Some tasks and applications are therefore suitable for deep learning methods, while others can be more efficiently solved using conventional methods.

Advantages 

  • Can be used in tasks with ambiguously defined product defects where conventional methods fail.
  •  With a sufficient amount of training data, machine learning can often achieve higher evaluation accuracy – i.e., when checking for defects, there is a lower rate of both undetected defects and falsely detected ones. 
  • Universal adaptation to various changes in production (changes in material, type of product being produced, etc.) – unlike conventional methods, there is a straightforward and relatively fast solution through retraining the model of the neural network. 
  • Increased possibilities for defect analysis – deep learning provides broader options not only in detecting individual defects but also in their classification (precise defect classification is often not possible using conventional methods). 
  • Uniform approach for different types of products and various types of inspections on products. 
  • The model can be continuously retrained with production, and changing the learned model is solved by loading one model file – can also be done during full operation. 
  • Advanced methods can be used for detecting defects that are difficult to recognize even with the naked eye, such as cracks on solar panels, chips, wafers, etc. 
  • When the object's position varies, it allows selecting the region of interest (ROI), even if its boundaries are blurred, partially overlapped, or defined in a complex manner, which allows focusing only on the area of the image that interests us and significantly improving its evaluation. 

Disadvantages 

  • The process of training models is random, so it is not possible to train two identical models for the same training data (However, the evaluation of images itself is strictly deterministic). 
  • Deep learning cannot be used for evaluation based on precise measurements of the dimensions and angles of a given object; conventional image processing methods must be used here. 
  • Successful model training requires having a certain amount of images available for each category (so-called dataset) – for example, with conventional methods, we may be able to design an algorithm for detecting a specific product defect even if only one sample of this defect exists. This is not possible with deep learning; an adequate number of instances of each defect must be available (usually at least around 10 pieces). 
  • The neural network model is a "black box" that cannot be examined to determine why a particular image was evaluated with a specific result and not otherwise. However, there are visualization tools – so-called probability maps – that allow at least partial insight into the model's "decision-making" process. 
  • There is a slightly higher cost for specialized software applying deep learning methods – however, this is relative, as when evaluating with conventional methods, there are higher costs for developing image processing algorithms, or some tasks are not solvable at all. 

Whether it is more appropriate to solve a machine vision task using deep learning methods or conventional tools depends on the type of task; sometimes it is advantageous to combine both approaches.

ATEsystem has extensive experience in applying classical image processing methods and has been actively involved in utilizing deep learning methods in machine vision since 2018. By combining this knowledge with a good understanding of camera system components, we can successfully address complex machine vision tasks with various customer requirements.

Examples of Using Machine Learning Methods (Deep Learning)

We will now present several cases of using neural networks in specific machine vision applications that we have implemented or prepared case studies for. 

Images for individual tasks can be viewed in the photo gallery. 

Wood Surface Inspection  

Inspecting the surface and detecting defects, but also scratches or impurities, is one of the typical tasks for deep learning methods and neural networks. After loading a sufficiently large dataset, the neural network is able to learn to detect various defects and flaws in the material corresponding to the specifications.

Need help? We will find a custom solution for you.

We will find a custom solution for you

Do you need an advice or you want to ask something?

Projects and applications

System integration department Tel.: +420 595 172 720
E-mail: atesystem@atesystem.cz