Even though the machine is fully automated, it is also equipped with a vision software. The operator can control the machine by using an interface that displays what the cameras on the machine see. This way, there is no need for someone to be in close proximity to the machine while it’s operating. NOTE: All this information should go in the introduction paragraph.
The following are some examples of vision software offered by vizcam that can be used to operate an automated machine:
Open Computer Vision library for real-time image processing, or machine vision in general. It’s a cross-platform low-level API that has a bunch of functionalities for tasks such as object detection and recognition, camera calibration, etc.
9. Cognex SDK
Cognex produces a lot of machine vision products specialized for different industries, but the SDK is available only to their customers. They claim that it’s more than just an API; it’s hardware independent full-blown suite supporting everything you can imagine in the machine vision area (machine calibration, machine inspection, barcode reading, etc.).
8. MVTec HALCON
HALCON is a high-speed, hardware-optimized image processing library. It’s available from MVTec Software GmbH in C++ and .NET versions, with bindings for Python and Java too. It supports Windows, Linux, Mac OS X, and FreeBSD.
MATLAB is a very powerful programming language for technical computing applications which many vision libraries are written in (HDF5, OpenCV). It includes an image processing package called Image Processing Toolbox which provides basic operations like image filtering or image enhancement; it can be used for previewing images from a camera, but can’t do real-time processing.
Open VX is an API which is just recently added in OpenCV 3.0 BETA and it’s intended to provide fast implementations of simple vision tasks like filtering, edge detection, etc.; it’s closely related to OpenCL, but unlike OpenCL is supported already in a lot of important products like Android or iOS.
GStreamer is a library that seems to be more popular for media encoding and decoding than for vision applications but contains a very powerful side plugin called cupid which does support hardware acceleration, motion analysis, and SVM classification.
OpenWF is a C++ library that provides Windows-specific implementations of image processing algorithms like image stitching or stereo vision. You can use it for the calibration of industrial cameras too. It has an intuitive interface to configure the underlying OpenCL / CUDA implementations.
3. Intel CV SDK
The Intel Computer Vision SDK is a high-speed low-level API that provides many functions for applications like object detection, tracking, etc.; it’s available for Windows and Linux-based operating systems.
Cortona3D is a powerful library that provides a simpler interface to OpenCV and enables applications for augmented reality or robotics. It’s the only solution on the list which doesn’t provide low-level access to image data, but you can use it as a wrapper around OpenCV libraries.
VIGRA stands for Vision with Genetic Algorithms. It’s a very generic but efficient library that you can use for applications like motion analysis, camera calibration, etc. You can easily integrate it into any C++ project and it has bindings to Python too.
It’s also possible to use VIGRA in other frameworks like Qt or wxWidgets by using the provided wrappers.
Benefits of using machine vision software for automation
- Increase productivity
- Improve the quality of work by minimizing errors
- Increased accuracy in inspection tasks
- Reduce time for testing or debugging process
- Save money through better utilization of resources
There are machine vision software available that you can use to program automated machinery using computer vision. These libraries provide various functionalities for machine vision. These software’s vary according to their usability, learning curve, and features.
Some of the most popular machine vision SDKs are MVTec HALCON, OpenCV, GStreamer, Intel CV SDK, Cortona3D, and VIGRA. All these libraries provide easy to learn tools for programmers who do not have a lot of experience with computer vision.