Image processing and machine vision training with Halcon software

Industrial automation revolution with machine vision systems

  • Yes, I am aware of the latest revolution in industrial automation, which has transformed the methods of production and quality control across various industries.

  • Did you know that the use of machine vision and industrial image processing is a competitive advantage and leads to increased profitability?

  • Did you know that machine vision systems can be installed in all industries and factories, optimizing the production process, improving quality, enhancing safety, and reducing labor costs?

  • Would you like to learn a specialized skill that allows you to earn income both domestically and internationally?

    A machine vision system consists of a camera, lens, light source, computer, and image processing software. We can capture images of various products on the production line with a vision system, then analyze these images on a computer using image processing software to control product quality.

Practical machine vision training

The training course on machine vision using Halcon software is entirely project-based, covering the design and implementation of machine vision systems through multiple practical projects. In addition to teaching how to work with the Halcon program, various topics are covered, including working with industrial cameras, analyzing and designing vision systems to select various equipment such as cameras, lenses, and lighting. By participating in this course, you pay only once and gain the ability to undertake numerous projects in this thriving market.

In the machine vision training package, you will learn:

– Understanding the environment, capabilities, tools, and features of the Halcon software.
– How to code various image processing algorithms in the software.
– How to connect the software to PLCs.
– Ability to work with industrial cameras for automating quality control of products on the production line.
– Analysis, testing, and designing of a machine vision system.

Titles of industrial image processing course

In this chapter, you will get to know the HALCON software environment and we will explain the applications of HALCON and the projects we have done with this software, then with some simple examples, how to work in the software environment and use the features and facilities. We will learn it and finally we will provide additional tips for working with HALCON software. The content of this chapter is a prerequisite for all future episodes.

In this introduction, we will learn about HALCON software and its applications, then we will mention some of the projects we have done with this software. We also provide explanations about the content of this training course and the resources used.

In this section, by implementing the example of counting clamps, we will learn programming and using the HALCON environment, as well as how to work with two widely used tools We will teach histogram and its features, and finally we will explain the construction of the function in HALCON software.

In this example, our goal is to identify unhealthy wafers. By solving this example, we will learn how to use HALCON’s tools to look for features that separate the damaged product from the healthy one. We will also learn how to call a photo folder and use conditional commands in HALCON image processing software.

In this section, we will first learn the types of variables in HALCON software and how to use them. We also explain the additional points of working with HALCON software. Finally, we present the final exercises of the season.

Techniques for analyzing and processing geometric shapes are called morphology techniques. These techniques are used in area processing. The main idea of this chapter is to first obtain the desired area based on its brightness, then process the obtained area to distinguish different objects from each other or to detect product defects. Using the methods we learn in this chapter, we can use innovative and creative solutions to solve machine vision projects.

In this section, we explain the concept of areas and their conversion to each other, then we will talk about how to transfer areas and implement the said concepts in Halcon software. do. In the rest of this chapter, we will use the topics we have learned in this section.

Separating peas from beans is a great example to understand the concepts of this chapter and how to use morphological techniques in Halcon software. In this example, we use 4 important morphological operators.

In this section, using morphological techniques, we are looking for an innovative solution to find a specific part of the image.

In this example, we want to specify the lines of the highway on the images. By solving this simple example, we will learn how to select an area in Halcon software and write our processing codes only in the selected area.

The old machine vision systems all worked with black and white binoculars. These systems were not able to detect colors so some defects could not be detected by them. Gradually, color cameras entered the world of machine vision and were used in many industries. By identifying colors, we can recognize different colored products and separate them from each other. By using color image processing, color change in products can be detected. Also, by checking the colors, we can detect defects that cannot be detected in black and white photos.

In this section, we will learn how to take pictures in a digital camera, then we will compare color and black and white cameras, in terms of the type of photography, accuracy, use and price. In the following, we examine the concept of color space in HALCON software. We learn how we can produce and display different colors with Halcon software.

In this section, we examine the diaper quality control project. This project has been implemented for one of the companies producing health products. By implementing this example, we will learn how to use color space to solve lighting problems.

In this section, we teach how to identify and distinguish different parts based on their color.

In this section, we will learn how to write a program in HALCON software that can teach colors. In other words, we can teach the program different colors. After training, the program can distinguish different colors from each other.

car fuses are classified based on color. For example, 10 AMP fuses are red and 15 amp fuses are blue. In this section, we will write a program that detects the number and color of fuses in different photos.

We have used HALCON software to identify the color of fuses in the car fuse box quality control project. Our goal in this project is to detect whether the fuses are empty or moved. In this chapter, we will learn how to implement this program in HALCON software.

One of the most widely used machine vision algorithms is object recognition. With this algorithm, we can count the number of products, distinguish different models from each other, and control the position of objects. Also, this powerful algorithm helps us in solving many problems such as identifying letters and numbers, detecting printing failures, etc. It comes to find the desired object at the beginning of solving the problem.
One of the important applications of object recognition algorithm is its use in Robot Vision. In this application, we obtain the coordinates and rotation of the product using the object identification algorithm in HALCON , then we inform the robot of the obtained coordinates so that the robot can pick it up.

In this section, we explain the concept of identifying objects in HALCON software and how it works, then we will describe the most important applications of this method. In the following, we explain the various methods of identifying objects in HALCON software.

Halcon software has provided a useful tool for identifying objects. We can use this tool to create and find the model in HALCON software, in this section we will learn how to work with this powerful tool and set program parameters in it.

One of the applications of object recognition in industrial image processing is to count the number of products. In this section, the programming method using object identification to count the number of products is taught.

In this section we will learn how to identify different objects in an image. For this purpose, we have used the images of two different industrial pieces that can be placed next to each other or on top of each other in different ways. In solving this problem, we learn how to identify each of these parts to the program so that it can distinguish different parts from each other and separate them.

In this section, we will teach you how we can use object recognition to control the quality of our products.

When we want to check whether a barcode, a label or an electronic part is in place, we face the problem of position control. Position control has many applications in industrial machine vision, especially in the printing industry. In this section, we teach how we can control the position of an object. For this purpose, we will check the position of printing on a product by solving an example.

Sometimes in the images sent by the camera, we need to find an object whose shape does not change but its size changes; That is, it increases and decreases along the length or width. With the help of object recognition, we can find these objects. In this section, we will teach you how to write codes to find an object of different sizes in HALCON software.

When we want to measure the dimensions of an object or control its appearance quality, first of all we have to find it in the image; In other words, we should identify its position. In this section we will learn how to do this. For this purpose, we examine an example in which the goal is to find the position of numbers. After recognizing the coordinates of the number, we can read it with other HALCON algorithms.

Inspection of printing defects is used in packaging industries, products with labels and printing systems. With print inspection we can detect printing defects and remove damaged prints automatically; In this way, in addition to greater customer satisfaction, we avoid imposing additional costs for reprinting. In this chapter, we learn how to program printing systems.

The general idea of checking printing defects is to make a pattern from images with “correct printing” and then compare this pattern with other prints to find the defects. There are two methods for creating patterns in HALCON software. In the first method, the pattern is created using several correctly printed images, while in the second method, the pattern is created using only one correctly printed sample.

In this section, we will implement both mentioned methods in HALCON software and explain the use of each of them.

filter is a technique to improve and correct the image. In the world of machine vision, filters have many applications. With filters, we can reduce image noise, improve image quality, and highlight the defects we want in the image. These are just some of the applications of filters in the world of machine vision. We have divided this chapter into two parts. In the first part, we will talk about the types of image processing filters and their application, and in the second part, we will implement various examples of different types of filters in Halcon software.

In this part, we will first get acquainted with the definitions and applications of filters, then we will explain how each image processing filter works and uses. HALCON software library has various types of filters. In this section, we will learn the concept and application of color filters, edge detection filters, image quality improvement filters, image transfer filters, texture detection filters and dozens of filters. By looking at this section, we learn which category of filters we should go for in each of our projects.

In this section, we implement various examples of different types of filters in Halcon software. By solving these examples, we will learn how we can highlight image defects by filtering, remove image noise, segment the image, identify colors, and correct image brightness. Also, by implementing dozens of other examples, we will learn how to code all kinds of filters in HALCON software.

One of the widely used techniques in image processing is called auto thresholding. In this chapter, by solving some examples, we will learn how to implement various projects in Halcon software using this solution.

I will learn where and how to use the auto threshold technique in HALCON software by solving the example of finding the Braille line.

One of the important issues in controlling the quality of metal sheets is checking scratches. In this example, by combining the solutions we have learned so far, we find the scratch on the metal sheet and display it.

In this example we will learn how to find particles using automatic thresholding and calculate the area of each one. We will also make display settings in such a way that if we click on any of the holes, the desired area and its area will be displayed on the image. At the end of this section are the exercises of this season.

In this section, we will learn how to connect to a regular webcam using Halcon software and make settings related to taking pictures. We will also learn about the problems of working with a webcam, such as changing the light of the image, etc. We will also learn how to do a simple project with a webcam.

In this section, we will learn how to connect to a normal webcam using Halcon software and make settings related to taking pictures. We also learn how to save webcam images. We will also learn about the problems of working with a webcam, such as changing the light of the image, etc. In the following, we will save different images of a dice so that in the next part we can count the number on the dice with the help of these images.

In this example, we want to write the program related to finding the dice; At first, we will use the images we saved in the previous part to write a program in the HALCON software and we will see how the use of a low-quality webcam will affect our programming. Then we will write our program based on functions and in a standard way, and finally we will test the written program online by connecting to the camera.

is one of the most widely used machine vision algorithms for object recognition. In Halcon software, this method is called matching.With this algorithm, we can count the number of products, distinguish different models from each other, control the position of objects, and this powerful algorithm can solve many problems such as identifying letters and numbers, detecting printing failures, etc. We come to find the desired object at the beginning of solving the problem.

In this section, we will get to know the Basler Dart cameras and explain the features of this camera, how to focus and how to install it.

In this section, we will check the inputs and outputs of the camera, the supply voltage, how to wire it, etc. Pylon) we will provide explanations and finally tell how to download this software.

Industrial cameras use an interface software, with the help of these software, you can make different imaging settings. For example, Basler cameras use pylon software to make these settings. In this section, we connect to the Basler Dart camera through the Pylon software and set the desired settings (such as image capture, focus, image size adjustment, camera inputs and outputs, etc.) to read the barcode. On a pill box, we do.

In this section, we will connect to a Basler industrial camera through Halcon software, and then read the barcode on the tablet package by making the desired settings. In addition, we learn how to access the inputs and outputs of the camera, and how to turn on and off the outputs of the camera.

Our goal in this example is to identify the number on several dice with different colors. By solving this example, we get to know the different issues and points of doing a real project. Object identification algorithm is used to solve this example.

In this section, using the photos we took in the previous part of the Pylon software, we write a program that can calculate the number on all the dice in the image. (with different colors) to recognize and display.

In this part, we connect the camera to the HALCON software to receive the number on the colored dice from the camera with the codes we have written and display the processing result on the image.

Generally industrial cameras are used to implement a machine vision system. These cameras can take pictures with a weak pressure signal and are suitable for use in industrial environments. The working procedure of industrial cameras is similar to each other. In this section, we want to connect to a Bassler Dart model camera and make the necessary settings to read the barcode and write its program in HALCON software.

In this chapter, we will get to know Basler network camera and we will learn details about the installation and operation of these cameras. We install Basler’s camera on a laboratory structure built to test the tablet quality control project in order to use it in the later parts to test the project.

Pylon software is used to adjust various parameters of Basler cameras. In this section, firstly, to work with the Pylon camera, we explain how to set the IP address of this camera, then make the necessary settings on the image (adjusting the brightness of the image, focus, length and width of the image, etc.) and click We save the camera.

In this section, we will make the settings related to the connection of the camera to the HALCON software and the program for taking photos with the camera in the HALCON software to test the tablet quality. We will write.

In this section, we learn how to receive the command reject from Basler’s camera, and by this we write our program in such a way that if the pill package is defective, an alarm will sound. be turned on.

To design a machine vision system we have to analyze different things. For this purpose, at the beginning of the work, we must get the required information such as the production speed, possible product defects, how to take pictures, etc. from the customer, then by analyzing the information and performing the necessary peripheral equipment calculations (type of camera, lens, light, computer, etc.) .. ) to choose.
In this chapter, we teach how to design and choose equipment for machine vision systems. For this purpose, we will use the practical projects that we have implemented in the industry.

In this section, we design a vision system to control the quality of diapers. In this project, a maximum of 3 diapers per second with different dimensions are produced, which requires the control of various items on the diapers. First, we will analyze the information received from the customer and based on them, we will perform the necessary calculations and select the project equipment such as cameras, lenses, lights, computers, power sources, communication cables, etc.</span >

In this section, we want to design and select the required equipment (camera, lens, light, PC and peripheral equipment) for a printing position control system. If the print is healthy, the yogurt lid will be removed by the robot, but otherwise the product will be rejected.

This project is related to one of the tobacco companies whose purpose is to read the data codes of cigarette packs. These packs of cigarettes are placed in a box with a plastic cover. Every second, three boxes of cigarettes (each box has 10 barcodes) pass on the conveyor belt. In this section, we teach how to analyze, design and select the equipment needed to implement this project. We also investigate a series of problems related to the plastic coating of the product.

Here we will analyze and review the car fuse box quality control project and select the equipment needed for this project. This project has been implemented by the Vision System team for one of the electronics manufacturing companies. To control the quality of the car’s fuse box, the operator manually places it in front of the camera. If any of the fuses are not in place or the color of the fuses has changed, the error will be announced by the software and the operator will notice this error.

This section is related to the analysis of the project “Bottle Cap Sealing Detection”. In this project, the customer’s request is to identify the mineral water lids that are not properly sealed. Through the analysis and tests performed on this project, we will see that there are a series of problems (such as the different appearance and color spectrum of the bottle lids, etc.). ) can influence the analysis and selection of different project equipment.

In this section, we will review one of the projects we did for a medical equipment manufacturing company. In this issue, we want to check whether the medical needles are open or closed. Each package contains several thousand medical needles. Due to the small diameter of the needle (about 3 mm), we cannot see inside it with our eyes; Therefore, we want to design a system that can identify defective needles and determine its position in the image. In this way, the operator can remove the needle manually with a suitable tool. It is not possible to solve this problem using normal lenses, so we need to use other machine vision lenses.

In this issue, we want to check the quality of the bottle cap. One of the important items in bottle cap quality control is thread control. But with normal lenses, we cannot see the threads well in the image. For this reason, we will go to special lenses in machine vision to solve this problem.

In this section, we describe additional tips for designing vision systems.

To implement projects in the real world, we need to write our codes in HALCON software in such a way that our program is teachable and we can easily use programming languages such as C, CPP and NET. Create a suitable user environment for your program.
In order to achieve the mentioned goals, there are two important functions in HALCON software, one is the use of a dictionary and the other is the use of objects. In this chapter, we will teach you how to use these features to write a standard and teachable program in HALCON software by implementing step by step one of the projects we did (identifying the printing position). In addition, explanations about how to call HALCON program functions in other programming languages will be provided.

Here we check how to program in HALCON software to control the printing position. Using HALCON features (dictionary and objects), we write the program in such a way that it can be taught. The purpose of the program is to control the position of the print on our door. If the print is not correctly placed in the middle of our door, the HALCON program will detect it.

In this section, PLC communication with HALCON software will be taught through Modbus RS485 protocol. By establishing this connection, we can command the PLC. The two main applications of establishing a PLC connection with HALCON software are:

  • Quality control of various products
    In product quality control, we detect their defectiveness through image processing with HALCON software and notify the PLC to remove the product from the production line by activating the jack.
  • Position control
    For example, consider a part that is supposed to be drilled with a drill; It is possible to obtain the spatial position of the part by processing the image and transfer the spatial coordinates to the PLC using network protocols so that the PLC can guide the drill for accurate drilling of the part.

In this part, we will implement a simple example of how to establish communication between PLC and HALCON software through RS485 cable.

In this section, a label quality control system has been implemented in a laboratory manner. The purpose of this system was to check whether or not there is a label on the products that pass through the conveyor belt. If there is no label on the product, Halcon software will send a command reject to the PLC.

In this section, the method of connecting Holken to PLC through Ethernet (network cable) is examined and some examples for this connection are given. becomes
This solution can be used in all kinds of industrial projects such as bottle liquid level inspection, quality control of tablets and capsules and quality control of defective products< /a> used to reject defective products.

In this part, firstly, an introduction to the connection between HALCON and PLC is given, then we will describe its applications. Next, the communication protocol required to establish this communication is stated and its capabilities are briefly examined.

By implementing a simple example at first we will learn how to establish communication between HALCON software and PLC. Then the method of sending data from HALCON software to PLC has been taught.

Here we will implement the control system for the amount of liquid inside the bottle in HALCON software. Bottles of mineral water pass in front of the camera by a conveyor belt. If the liquid level is lower than the limit, HALCON will turn on the red warning light through the PLC, and otherwise the green warning light will turn on.

Sample video of the training course on image processing with an industrial camera

Lecturers of non-attendance training course on industrial image processing

قدیر حسینی

ghadir Hosseini

  • Master of Electrical Engineering from Amir Kabir University
  • Innovator and founder of machine vision and image processing training courses in Iran
  • Performer of various image processing and machine vision projects in the field of product quality control in Iran

Hossein Tavakkoli

  • Building a smart robot with image processing and the ability to recognize geometric shapes in different colors
  • Building a traffic control program to track cars and recognize them by image processing
  • Performer of various projects in the field of robot-vision

Buy a comprehensive machine vision training course with industrial cameras

You can purchase one of the following packages to participate in the machine vision group with Halcon software:

  1. General Machine Vision Package: This package includes chapters one through eight of the tutorial. These eight chapters describe how to code various projects in Halcon software.

  2. Industrial Machine Vision Package: This package includes chapters nine through fourteen, covering topics related to designing machine vision systems, connecting to industrial cameras, and interfacing with PLCs.

  3. Comprehensive Machine Vision Package with Halcon Software: This package includes both the general and industrial courses.

You can see the details of each package’s topics in the section above (Headings).

To inquire about the cost, duration, support, and purchase of educational packages, please complete the form below:


  • This field is for validation purposes and should be left unchanged.

 

Frequently Asked Questions

Currently, this course is held only in person. By registering in this course, all the content of the course will be available to the participants.

No; The trainings can be downloaded and saved, and all course content will be available to the participants after registration.

Currently, the duration of the course training is about 23 hours.

You can find out about the duration of course support by register on the site

Investment with low risk

You pay nothing to use Halcon. Also, the Halcon software has the ability to connect to all kinds of industrial and non-industrial cameras, and depending on your needs, you can use an operating system with a suitable configuration, and finally, with the training given in the course, you can create a vision system with at least Plan the cost. By doing only one project, you can earn several times the amount of the course.

Learning practical experiences

The implementation of machine vision systems is associated with many subtleties and tips. Unfortunately, we have come across many cases where projects have failed and suffered losses due to insufficient knowledge and incorrect analysis after a lot of effort. In this course, how to analyze and design machine vision systems has been taught by mentioning practical experiences. By applying these experiences, you can prevent these problems from occurring in your projects.

Save time

To learn HALCON , you have to check thousands of examples and documents, and if you encounter any problems, you have no source or reference to answer. To design, select equipment, and design machine vision systems, you should search between different main language references to get answers to some of your questions, and most importantly, you should do several machine vision projects to gain practical experience. You can learn how to design, implement and program a machine vision system by mentioning several practical projects and save your time by paying a one-time fee for training.

In this course, the programming, analysis, design and implementation of a machine vision system are fully described with numerous examples and projects. So, by learning and mastering the topics of the course, you will be able to do different types of machine vision projects, such as identifying defects in different products, identifying prints, identifying objects, etc.

Yes. You can post your questions in the form of a ticket through the user panel and receive their answers.

Halcon meets all the needs of an industrial project.

Halcon is a comprehensive software and includes all new machine vision algorithms such as deep learning, 3D processing, etc. . is. In the Halcon software library, there are more than a thousand examples for solving various projects in the field of image processing and problem solving. Various machine vision such as barcode reading, control There are different product quality, object detection, print detection and… which can be used for He got ideas to solve different projects. Also, considering that this software is based on coding, innovative solutions can be used to solve the project by combining different methods.

Ability to receive image at high speed from the camera

Unlike many image processing software such as LabVIEW, Halcon has the ability to receive images from the camera online. That is, we can directly receive the photo from the camera with one line of code. For this reason, this software can be used to control the quality of products on the line, which are passing at a high speed.

Simplicity of working with the software

It is easy to do a project with HALCON software. The coding in this software is designed in such a way that there is no need to work with image pixels; For this reason, you can write your desired program with fewer codes. The Halcon software environment is great for testing and executing a project. In other words, this software is a powerful laboratory where there are various tools for testing and running an image processing program. In addition to that, in this software, at the same time, we have access to the display window and programming variables, and with the help of this tool, we can easily test our program and fix its problems.

Applicability

This software has been used to implement thousands of machine vision projects in the world. Many professional companies in the world do their projects with this software. While the use of Open CV is free, but to use HALCON , it must be purchased (of course, in Iran, we use the crack version of the software). In Iran, companies that work professionally in the field of machine vision use this software to carry out their projects. In addition, HALCON software has been used in the design of smart camera software such as Cognex.

No background or knowledge is required to participate in the course, and the necessary prerequisites and concepts are described in each section.

HALCON software has its own language. The library of this software can be used in C, C++, C# and Visual Basic languages.

Yes. Halcon software is used in valid practical articles (such as IEEE). Just search the word Halcon in google scholar.

2 thoughts on “Image processing and machine vision training with Halcon software

Leave a Reply

Your email address will not be published. Required fields are marked *