Computer vision is the area of Artificial Intelligence concerned with modelling and replicating human vision using computer software and hardware. Computer vision is at the intersection of physiology, biology, psychology, computing and electronics, as it needs knowledge from all these fields in order to understand and simulate the operation of the human vision system, including the eyes and the relevant areas of the brain.
There are many uses for computers that can see what is going on around them. Robots who can see are more likely to interact with the real world in a satisfactory manner; they can choose objects, avoid obstacles, plan routes, calculate their velocity and orientation, identify dangerous situations, etc. Such robots will be useful in exploring dangerous or very distant environments (e.g. other planets, inside nuclear reactors). Vision is also useful for other purposes other than robotics: it may be used to help cameras follow the trajectory of people and vehicles, for example for traffic monitoring; it can help in the identification of faces for security clearance; it can be used for converting 2D images into 3D models that can then be rotated and manipulated, for example to present medical or sporting images from a better angle; they can be use for inspecting medical images for identifying tumours and other ailments.
But, why is computer vision difficult, when it is so simple for humans? The input to a vision system is an array of numbers indicating the colour and intensity of each picture element (pixel) in an image. From this array of numbers the computer needs to identify the edges of an object, work out what edges belong together in a single object, determine what objects are represented in the image, their relative position, and the distance between them and the camera. We as humans, with our eyes acting as cameras, can do all these calculations in an instant and to a high degree of accuracy. Computers on the other hand need to be programmed with each piece of information that is needed for seeing and recognising; but that's where the challenge lies: what is the information humans use for seeing?
Much progress has been made in the field, and computers can now follow moving objects like cars and people, they can recognise specific objects from a scattering of objects, they can recognise patterns and use them to determine the slope and direction of surfaces, they can automatically steer cars on motorways, determine the distance to an object, etc. However, most of these feats are at the experimental level, and there are still a few years before we use and interact with machines that can recognise us and the world around us.
© 2001 UNR Computer Science Department. All rights reserved.
Program related questions/comments: bebis@ cs.unr.edu