Industry tracking
Comparisons of Machine Vision Development Platforms
The current popular development mode of machine vision is "Software Platform + Toolkit"
Software platform:
C++/VC: Microsoft's C++ development tool, with an integrated development environment, can provide editing C language, C++ and C++/CLI programming languages. VC++ integrates convenient debugging tools, especially Microsoft Windows Windows Operating System Application Program Interface (Windows API), 3D Animation DirectX API and Microsoft.NET framework. Most toolkits support VC development. It's the platform you choose.
C: C# is a secure, stable, simple and elegant object-oriented programming language derived from C and C++. It inherits the powerful functions of C and C++ while removing some of their complex features (such as no macros and no multiple inheritance allowed). C# combines the simple visual operation of VB with the high running efficiency of C++. With its powerful operation ability, elegant grammar style, innovative language features and convenient component-oriented programming support, C# becomes the preferred language for. NET development. Compared with C++, C# is relatively simple. At present, many camera manufacturers'SDK begin to use C# as an application program.
LabVIEW: LabVIEW is a graphical programming language development environment, which is widely accepted by industry, academia and research laboratories as a standard data acquisition and instrument control software. LabVIEW integrates all functions of hardware and data acquisition card communication with GPIB, VXI, RS-232 and RS-485 protocols. It also has built-in library functions that facilitate the application of software standards such as TCP/IP and ActiveX. This is a powerful and flexible software. Using it, we can easily build our own virtual instrument. Its graphical interface makes the programming and using process lively and interesting. The development cycle is shorter and the maintenance is more convenient.
VB, delphi: Compared with the current use of fewer people
Java and so on did not see others using it very much
Python has been popular in recent years, but I haven't seen it used for industry-oriented visual projects.
Tool kit:
Halcon: HALCON originates from academia and is different from commercial software packages on the market. In fact, this is a set of image processing library, which consists of more than 1,000 independent functions and the underlying data management core. It is a set of perfect and standard machine vision algorithm package developed by German MVtec company. It has a widely used integrated development environment of machine vision. It saves product cost and shortens software development cycle - HALCON flexible architecture facilitates rapid development of machine vision, medical image and image analysis applications. The development of this software requires certain software background and image processing theory.
VisionPro: Cognex Image Processing Toolkit. The performance of most algorithms is very good. Visionpro's positioning, measurement, OCR, OCV and so on are better than Halcon's, but defect checking is weaker than Halcon's, project development cycle is shorter, and even a project can be completed in two days.
NI Vision: NI's feature is that most of the software and hardware needed for automated testing have solutions. Some things are software graphical programming, fast start, fast development cycle. The disadvantage is that not every software is very strong. The advantage of visual toolkits is that they are much cheaper than most toolkits or algorithmic astronomical figures, and the entire toolkit is sold at a price, rather than an algorithmic one. The performance of visual toolkits is not as good as that of the first two software.
OpenCV: OpenCV is a cross-platform computer vision library based on (open source) distribution, which can run on Linux, Windows and Mac OS operating systems. It is lightweight and efficient-composed of a series of C functions and a small number of C++ classes. It also provides the interfaces of Python, Ruby, MATLAB and other languages. It realizes many general algorithms in image processing and computer vision. Vision covers a wide range of fields. OpenCV is more used in the field of computer vision. In fact, it is not too much in the field of machine vision. It is a good tool for teaching. Good choice.
MIL: Canada's Maxtrox product is short for Matrox Imaging Library. Early promotion and popularization is good. At present, it seems that the main users are still some of the early users of laser equipment, so they are used for positioning more.
CK Vision: The software package of Chuangke Company, the software supplier of Chuangke Vision, which has the ability of developing low-level algorithms in China, has obvious price advantage compared with the previous toolkits. In addition, the functions required by machine vision are basically all available. The processing speed is fast and the measurement accuracy is also acceptable. Therefore, the domestic automation equipment, especially batch equipment, needs to protect copyright at the same time. In other words, the amount is large and the promotion is good, and the software has a 90-day trial period. If you pay attention to the Visual Public Number of Chuangke, you can get the software toolkit.
Maisken: Maisken's main visual products are barcode reading. The image toolkit is unused, unknown and not evaluated.
Others: There are other image toolkits from other manufacturers, either with little market influence or without my own use or evaluation.