Through the eyes of a robot: what is machine vision

Machine vision, in its essence, involves the analysis of visual information to further decide what action to perform in relation to an object that is in focus. The simplest example of the use of technology: checking the status of the product on the conveyor or before sending the parcel by mail. Also, machine vision is often used to assess the quality of printed circuit boards, instantly comparing each new product with a reference board before automatically transferring it to the next assembly stage. These technologies are an invaluable resource for assessing the quality and reducing the level of marriage where the human eye and brain are simply not able to give an objective assessment because of the need to look at the same objects hundreds or thousands of times a day.

Computational need for "machine vision"

As the resolution of optical systems grows, the machine vision potential also increases, since along with the resolution, the number of parts for evaluation also increases. More and more small objects can be processed according to the template principle, which leads to an increase in the load on the processor, which must analyze a significant amount of data and quickly decide on the next step (matches / does not match, delay, return to the beginning, etc.). )

For example, when sorting vegetables, simple decisions about conformity and size are already inappropriate, because the standards of different countries differ, and the quality of the products varies depending on the season. To minimize the amount of marriage for the manufacturer and at the same time ensure the right quality for the consumer, more detailed algorithms and categories are needed - and this is an almost impossible task for the human eyes and brain.

Say, there is a Danish company Qtechnology, which supplies “smart cameras” for sorting vegetables. They are capable of processing up to 25 tons of products per hour without human intervention. Such volumes are achieved through analysis of over 250, 000 individual products based on more than 500, 000 images. And since each picture takes about 6.2 MB, it turns out that as a result, an analysis of more than 2.5 terabytes of graphic data per hour is required - a huge amount of information! Only to transfer such an array will take more than 6 hours when using a gigabit Ethernet connection.

To solve this problem using simpler algorithms, it is necessary to break it down into stages and install several cameras, increase lighting zones, allocate more space in factories, and so on. Alternatively, you can use more efficient computing systems: with centralized power and faster connection or distributed processing of information by “smart cameras”, which will record data in real time at each stage, delivering only ready-made parameters to the final decision-making mechanism.

In standard visual inspection systems, the quality and safety of products are most often determined by external physical attributes, such as texture and color. Hyperspectral imaging gives the food industry the ability to evaluate products by additional chemical and biological parameters that can determine the level of sugar, fat, liquid and the number of bacteria in each product.

In hyperspectral imaging, three-dimensional sets of spatial and spectral information are obtained from each pixel. Additional spectral characteristics give a more detailed description of the parameters, allowing their classification. Three-dimensional sets include the intensity (reflected or transmitted light) of each pixel, which is calculated by measuring the length of all visible light waves, as a result, each data set carries a lot of information. This amount of information reflects the exponential growth in the computational task for conducting a qualitative and quantitative analysis of the state of the product in real time.

The use of heterogeneous computing

High-performance and scalable computing systems are needed to satisfy requests, as well as solve future problems.

Mentioned Qtechnology uses AMD's hybrid APU processors in smart camera platforms. These processors combine a GPU (graphics processor) and a CPU (central processing unit) on a single chip. As a result, the system has the ability to send arrays of graphic data directly to the GPU for processing without any delay in the transfer between components. And the CPU gets the opportunity to process other tasks without delay, increasing the performance of the entire system in real time and providing the necessary power for the modern requirements of machine vision systems.

The combination of different computing modules on one chip or in one system allows you to transfer each element the corresponding load - and this is the basis of heterogeneous calculations. The Heterogeneous System Architecture (HSA) Foundation Consortium was founded in 2012 to formulate open industry specifications for processors and systems that use all available computing elements to increase ultimate efficiency. AMD is promoting the concept of heterogeneous computing, the essence of which is the sharing of all the computing resources of the system: both central and graphic processors.

In particular, the GPU is a parallel computing module that can easily apply the same instructions to large data sets (in our case, pixels) simultaneously; and this is exactly what companies need to operate machine-vision systems. In addition, system performance can be increased by combining the capabilities of the APU with an external discrete graphics card. This approach allows companies to add GPU computing resources as needed to support even more complex machine vision tasks.

Extensive ecosystem support for the x86 architecture allows companies to use libraries for open source image processing or to connect solutions from third-party companies such as OpenCV, Mathworks Matlab and Halcon. Debugging tools, delay analyzers and profilers (perf, ftrace) are now also widely available. Machine vision is the latest example of using the processing power of semiconductors to reduce costs, accelerate production, improve quality, and obtain a number of other useful benefits used in many applications and industries. Thus, thanks to innovations and successful ideas of engineers for embedded solutions, a positive effect arises in general for the economy, culture and each of us in particular.

One way or another, we hope that machine vision will continue to be used for sorting vegetables, and not for preparing a machine revolt :)


Parker probe approached record distance to the Sun
12 snowmobiles produced in Russia: driving in the snow
Huawei Mate 30 Pro tested in AnTuTu