Making machines see (and do things!)
Machine Vision or Computer Vision is a combination of software and hardware technologies that enables various types of machine to “see” their surroundings. This comes from the fact that, in order for machine, e.g. mobile robot, autonomous car, smartphone, etc., to perform useful tasks, they need a way to percept the world around them in a similar way that us human relies on our eyes to see the world.
Machine Vision generally includes three key technologies; (1) the optics and lighting where lighting provides the required illumination of the object and scene and the proper optic then projects the light from the object and the scene on the sensor, (2) the sensor that converts the light information into a digital signal which in turns produces an image or series of continuous images, i.e. video stream, and finally (3) the computer software that process the digital image so that the machine can make good use of the information from the image to perform desired task.
In order to achieve the best result out of a vision system, all these key technologies should be well understood and correctly utilized. Choose a wrong optics (lens) and bad lighting will result in poor image quality that can be hard or impossible to correct with software. Using wrong type of sensor technology may result in poor image quality or reduced usability and lastly the software can tremendously help shaping/transforming the image into something that is most useful for each end user.
Machine Vision knowledge can be used and applied in different places, e.g. in factory automation (process automation, part measurement/validation, QC), in mass product (smart CCTV system, finger print door access control, vacuum cleaning robot, autonomous car, QR code scanner) and in other systems such as traffic monitoring, robotics and much more.