Machine vision software is used to control and drive machine vision systems. Machine vision (MV) is the application of computer vision to industrial and manufacturing applications. Whereas computer vision is mainly focused on machine-based image processing, machine vision most often requires digital input/output devices and computer networks to control other manufacturing equipment such as robotic arms.
Machine vision software typically takes several steps when processing an image. In most types of machine vision software, the image is first manipulated to reduce noise or to convert many shades of gray to a simple combination of black and white. After being initially simplified, the software will count, measure, and/or identify objects, dimensions, defects, or other features in the image. Finally, the software passes or fails the part according to programmed criteria. If a part fails, the machine vision software may signal a mechanical device to reject the part or the system may stop the production line and warn a human worker of the failure.
There are three main components in machine vision software: algorithms, developer interface (DI), and the user interface (UI). Machine vision software use algorithms locate the necessary information such as parts, measurements, barcode readings, etc. The developer interface, or design-time interface, specifies the algorithms and operations required to solve the vision problem. Lastly, the user interface is what the system’s users see. The UI tends to be easy to obvious to use for those unfamiliar with machine vision software. Sometimes the DI and UI are the same, but the DI is often locked to protect the underlying algorithms from user interference.
Machine vision software is commonly used in applications relating to biometrics, large-scale industrial manufacturing, machine vision, image analysis and image processing systems, measurement, control of automated guide vehicles (AVGs), automated safety monitoring, and more. There are different types of machine vision software available depending on the application; these types include pixel counting, thresholding, segmentation, barcode reading, optical character recognition, gauging, edge detection, and template matching. Other types and uses of machine vision software may also be available.