Computer vision From Wikipedia, the free encyclopedia Jump to: navigation, search //定义 Computer vision is the science and technology of machines that see. As a scientific discipline, computer vision is concerned with the theory and technology for building artificial systems that obtain information from images. The image data can take many forms, such as a video sequence, views from multiple cameras, or multi-dimensional data from a medical scanner. //应用场合 As a technological discipline, computer vision seeks to apply the theories and models of computer vision to the construction of computer vision systems. Examples of applications of computer vision systems include systems for Controlling processes (e.g. an industrial robot or an autonomous vehicle). Detecting events (e.g. for visual surveillance) Organizing information (e.g. for indexing databases of images and image sequences), Modeling objects or environments (e.g. industrial inspection, medical image analysis or topographical modeling), Interaction (e.g. as the input to a device for computer-human interaction). Computer vision can also be described as a complement (but not necessarily the opposite) of biological vision. In biological vision, the visual perception of humans and various animals are studied, resulting in models of how these systems operate in terms of physiological processes. Computer vision, on the other hand, studies and describes artificial vision system that are implemented in software and/or hardware. Interdisciplinary exchange between biological and computer vision has proven increasingly fruitful for both fields. Sub-domains of computer vision include scene reconstruction, event detection, tracking, object recognition, learning, indexing, ego-motion and image restoration. //研究和发展现状 [edit] State of the art Relation between Computer vision and various other fieldsThe field of computer vision can be characterized as immature and diverse. Even though earlier work exists, it was not until the late 1970s that a more focused study of the field started when computers could manage the processing of large data sets such as images. However, these studies usually originated from various other fields, and consequently there is no standard formulation of "the computer vision problem". Also, and to an even larger extent, there is no standard formulation of how computer vision problems should be solved. Instead, there exists an abundance of methods for solving various well-defined computer vision tasks, where the methods often are very task specific and seldom can be generalized over a wide range of applications. Many of the methods and applications are still in the state of basic research, but more and more methods have found their way into commercial products, where they often constitute a part of a larger system which can solve complex tasks (e.g., in the area of medical images, or quality control and measurements in industrial processes). In most practical computer vision applications, the computers are pre-programmed to solve a particular task, but methods based on learning are now becoming increasingly common. A significant part of artificial intelligence deals with planning or deliberation for system which can perform mechanical actions such as moving a robot through some environment. This type of processing typically needs input data provided by a computer vision system, acting as a vision sensor and providing high-level information about the environment and the robot. Other parts which sometimes are described as belonging to artificial intelligence and which are used in relation to computer vision is pattern recognition and learning techniques. As a consequence, computer vision is sometimes seen as a part of the artificial intelligence field or the computer science field in general. Physics is another field that is strongly related to computer vision. A significant part of computer vision deals with methods which require a thorough understanding of the process in which electromagnetic radiation, typically in the visible or the infra-red range, is reflected by the surfaces of objects and finallyis measured by the image sensor to produce the image data. This process is based on optics and solid state physics. More sophisticated image sensors even require quantum mechanics to provide a complete comprehension of the image formation process. Also, various measurement problems in physics can be addressed using computer vision, for example related to motion in fluids. Consequently, computer vision can also be seen as an extension of physics. A third field which plays an important role is neurobiology, specifically the study of the biological vision system. Over the last century, there has been an extensive study of eyes, neurons, and the brain structures devoted to processing of visual stimuli in both humans and various animals. This has led to a coarse, yet complicated, description of how "real" vision systems operate in order to solve certain vision related tasks. These results have led to a subfield within computer vision where artificial systems are designed to mimic the processing and behaviour of biological systems, at different levels of complexity. Also, some of the learning-based methods developed within computer vision have their background in biology. Yet another field related to computer vision is signal processing. Many methods for processing of one-variable signals, typically temporal signals, can be extended in a natural way to processing of two-variable signals or multi-variable signals in computer vision. However, because of the specific nature of images there are many methods developed within computer vision which have no counterpart in the processing of one-variable signals. A distinct character of these methods is the fact that they are non-linear which, together with the multi-dimensionality of the signal, defines a subfield in signal processing as a part of computer vision. Beside the above mentioned views on computer vision, many of the related research topics can also be studied from a purely mathematical point of view. For example, many methods in computer vision are based on statistics, optimization or geometry. Finally, a significant part of the field is devoted to the implementation aspect of computer vision; how existing methods can be realized in various combinations of software and hardware, or how these methods can be modified in order to gain processing speed without losing too much performance. //相关领域 Related fields Computer vision, Image processing, Image analysis, Robot vision and Machine vision are closely related fields. If you look inside text books which have either of these names in the title there is a significant overlap in terms of what techniques and applications they cover. This implies that the basic techniques that are used and developed in these fields are more or less identical, something which can be interpreted as there is only one field with different names. On the other hand, it appears to be necessary for research groups, scientific journals, conferences and companies to present or market themselves as belonging specifically to one of these fields and, hence, various characterizations which distinguish each of the fields from the others have been presented. The following characterizations appear relevant but should not be taken as universally accepted. Image processing and Image analysis tend to focus on 2D images, how to transform one image to another, e.g., by pixel-wise operations such as contrast enhancement, local operations such as edge extraction or noise removal, or geometrical transformations such as rotating the image. This characterization implies that image processing/analysis neither require assumptions nor produce interpretations about the image content. Computer vision tends to focus on the 3D scene projected onto one or several images, e.g., how to reconstruct structure or other information about the 3D scene from one or several images. Computer vision often relies on more or less complex assumptions about the scene depicted in an image. Machine vision tends to focus on applications, mainly in industry, e.g., vision based autonomous robots and systems for vision based inspection or measurement. This implies that image sensor technologies and control theory often are integrated with the processing of image data to control a robot and that real-time processing is emphasized by means of efficient implementations in hardware and software. There is also a field called Imaging which primarily focus on the process of producing images, but sometimes also deals with processing and analysis of images. For example, Medical imaging contains lots of work on the analysis of image data in medical applications. Finally, pattern recognition is a field which uses various methods to extract information from signals in general, mainly based on statistical approaches. A significant part of this field is devoted to applying these methods to image data. A consequence of this state of affairs is that you can be working in a lab related to one of these fields, apply methods from a second field to solve a problem in a third field and present the result at a conference related to a fourth field! //应用实例 Examples of applications for computer vision One of the most prominent application fields is medical computer vision or medical image processing. This area is characterized by the extraction of information from image data for the purpose of making a medical diagnosis of a patient. Generally, image data isin the form of microscopy images, X-ray images, angiography images, ultrasonic images, and tomography images. An example of information which can be extracted from such image data is detection of tumours, arteriosclerosis or other malign changes. It can also be measurements of organ dimensions, blood flow, etc. This application area also supports medical research by providing new information, e.g., about the structure of the brain, or about the quality of medical treatments. A second application area in computer vision isin industry. Here, information is extracted for the purpose of supporting a manufacturing process. One example is quality control where details or final products are being automatically inspected in order to find defects. Another example is measurement of position and orientation of details to be picked up by a robot arm. Military applications are probably one of the largest areas for computer vision. The obvious examples are detection of enemy soldiers or vehicles and missile guidance. More advanced systems for missile guidance send the missile to an area rather than a specific target, and target selection is made when the missile reaches the area based on locally acquired image data. Modern military concepts, such as"battlefield awareness", imply that various sensors, including image sensors, provide a rich set of information about a combat scene which can be used to support strategic decisions. In thiscase, automatic processing of the data is used to reduce complexity and to fuse information from multiple sensors to increase reliability. Artist's Concept of Rover on Mars, an example of an unmanned land-based vehicle. Notice the stereo cameras mounted on top of the Rover. (credit: Maas Digital LLC)One of the newer application areas is autonomous vehicles, which include submersibles, land-based vehicles (small robots with wheels, cars or trucks), aerial vehicles, and unmanned aerial vehicles (UAV). The level of autonomy ranges from fully autonomous (unmanned) vehicles to vehicles where computer vision based systems support a driver or a pilot in various situations. Fully autonomous vehicles typically use computer vision for navigation, i.e. for knowing where it is, or for producing a map of its environment (SLAM) and for detecting obstacles. It can also be used for detecting certain task specific events, e. g., a UAV looking for forest fires. Examples of supporting systems are obstacle warning systems in cars, and systems for autonomous landing of aircraft. Several car manufacturers have demonstrated systems for autonomous driving of cars, but this technology has still not reached a level where it can be put on the market. There are ample examples of military autonomous vehicles ranging from advanced missiles, to UAVs for recon missions or missile guidance. Space exploration is already being made with autonomous vehicles using computer vision, e. g., NASA's Mars Exploration Rover. Other application areas include: Support of visual effects creation for cinema and broadcast, e.g., camera tracking (matchmoving). Surveillance. //在生物识别方面的应用 [edit] Vision based biological species identification systems DAISY interface tool, DFE (Credit: Mark A. O'Neill) DAISY VHTML output display (Credit: Mark A. O'Neill) There are now also a growing number of systems which use computer vision technology for the automated identification of biological objects (individuals) and/or groups (e.g. species, guilds). Typically these systems are used by non-taxonomists (e.g. ecologists, pest control officers, parataxonomists) to rapidly identify specious tropical biota (e.g. parasitic wasp in Costa Rica). In Algorithmic terms, these systems fall into two broad classes: Holistic systems which use the entirety of the presented image, or of some region of interest thereof to make an identification. These systems are typically based on principal component analysis, self organising maps (e.g. the plastic self organising map, PSOM), nearest neighbour correlation (NNC) or some form of artificial neural net (ANN). Examples of systems of this kind include DAISY which uses a hybrid PSOM/NNC approach and SPIDA which uses a modified variant of the back propagation neural network. Feature based systems: These sorts of system extract features from the input imagery and then use these features for subsequent recognition. Examples of this kind of algorithm include the ABIS (Automated Bee Identification System) from Bonn University and the WEKA system from the University of Waikato in New Zealand. Although this type of system may achieve accuracies which are marginally superior to those achieved by the holistic systems, they are intrinsically less flexible. For example ABIS is restricted to identifying insects such as bees and flies which have membranous wings, and in the case of earlier versions of the system at least, significant operator expertise was needed. Both of the holistic approaches cited are essentially generic. For example, in addition to insects, the DAISY system has also been used to classify human faces, foraminifera, bones, aircraft contrails and (with suitable pre-processing) even sounds, all with some measure of success. The images above show the DAISY system in operation, identifying a specimen of the Belizian Sphingid Cocytius duponchel (Poey, 1832) which was caught in a light trap at the Las Cuevas Field Station in Belize. In order to normalise input imagery for the effects of scale and pose (specimens are live imaged using a digital camera) a PolyROI (polygonal region of interest) is drawn around the part which is being used to identify the specimen, inthiscase the wing (upper image). Once DAISY has identified the specimen it spawns an HTML browser which points to a URL providing information on the specimen it has identified (lower image). The DAISY backend is flexible: if there is no canned URL available, the backend system can automatically query web search engines such as google for appropriate information //视觉系统典型任务 Typical tasks of computer vision Each of the application areas described above employ a range of computer vision tasks; more or less well-defined measurement problems or processing problems, which can be solved using a variety of methods. Some examples of typical computer vision tasks are presented below. [edit] Recognition The classical problem in computer vision, image processing and machine vision is that of determining whether or not the image data contains some specific object, feature, or activity. This task can normally be solved robustly and without effort by a human, but is still not satisfactorily solved in computer vision for the general case: arbitrary objects in arbitrary situations. The existing methods for dealing with this problem can at best solve it only for specific objects, such as simple geometric objects (e.g., polyhedrons), human faces, printed or hand-written characters, or vehicles, and in specific situations, typically described in terms of well-defined illumination, background, and pose of the object relative to the camera. Different varieties of the recognition problem are described in the literature: Recognition: one or several pre-specified or learned objects or object classes can be recognized, usually together with their 2D positions in the image or 3D poses in the scene. Identification: An individual instance of an objectis recognized. Examples: identification of a specific person face or fingerprint, or identification of a specific vehicle. Detection: the image data is scanned for a specific condition. Examples: detection of possible abnormal cells or tissues in medical images or detection of a vehicle in an automatic road toll system. Detection based on relatively simple and fast computations is sometimes used for finding smaller regions of interesting image data which can be further analyzed by more computationally demanding techniques to produce a correct interpretation. Several specialized tasks based on recognition exist, such as: Content-based image retrieval: finding all images in a larger set of images which have a specific content. The content can be specified in different ways, for example in terms of similarity relative a target image (give me all images similar to image X), or in terms of high-level search criteria given as text input (give me all images which contains many houses, are taken during winter, and have no cars in them). Pose estimation: estimating the position or orientation of a specific object relative to the camera. An example application forthis technique would be assisting a robot arm in retrieving objects from a conveyor belt in an assembly line situation. Optical character recognition (or OCR): identifying characters in images of printed or handwritten text, usually with a view to encoding the text in a format more amenable to editing or indexing (e.g. ASCII). [edit] Motion Several tasks relate to motion estimation, in which an image sequence is processed to produce an estimate of the local image velocity at each point. Examples of such tasks are: Egomotion: determining the 3D rigid motion of the camera. Tracking: following the movements of objects (e.g. vehicles or humans). [edit] Scene reconstruction Given two or more images of a scene, or a video, scene reconstruction aims at computing a 3D model of the scene. In the simplest case the model can be a set of 3D points. More sophisticated methods produce a complete 3D surface model. [edit] Image restoration The aim of image restoration is the removal of noise (sensor noise, motion blur, etc.) from images. //视觉系统组成介绍 [edit] Computer vision systems The organization of a computer vision system is highly application dependent. Some systems are stand-alone applications which solve a specific measurement or detection problem, while other constitute a sub-system of a larger design which, for example, also contains sub-systems for control of mechanical actuators, planning, information databases, man-machine interfaces, etc. The specific implementation of a computer vision system also depends on if its functionality is pre-specified or if some part of it can be learned or modified during operation. There are, however, typical functions which are found in many computer vision systems. Image acquisition: A digital image is produced by one or several image sensor which, besides various types of light-sensitive cameras, includes range sensors, tomography devices, radar, ultra-sonic cameras, etc. Depending on the type of sensor, the resulting image data is an ordinary 2D image, a 3D volume, or an image sequence. The pixel values typically correspond to light intensity in one or several spectral bands (gray images or colour images), but can also be related to various physical measures, such as depth, absorption or reflectance of sonic or electromagnetic waves, or nuclear magnetic resonance. Pre-processing: Before a computer vision method can be applied to image data in order to extract some specific piece of information, it is usually necessary to process the data in order to assure that it satisfies certain assumptions implied by the method. Examples are Re-sampling in order to assure that the image coordinate system is correct. Noise reduction in order to assure that sensor noise does not introduce false information. Contrast enhancement to assure that relevant information can be detected. Scale-space representation to enhance image structures at locally appropriate scales. Feature extraction: Image features at various levels of complexity are extracted from the image data. Typical examples of such features are Lines, edges and ridges. Localized interest points such as corners, blobs or points. More complex features may be related to texture, shape or motion. Detection/Segmentation: At some point in the processing a decision is made about which image points or regions of the image are relevant for further processing. Examples are Selection of a specific set of interest points Segmentation of one or multiple image regions which contain a specific object of interest. High-level processing: At this step the input is typically a small set of data, for example a set of points or an image region which is assumed to contain a specific object. The remaining processing deals with, for example: Verification that the data satisfy model-based and application specific assumptions. Estimation of application specific parameters, such asobject pose or object size. Classifying a detected object into different categories. [edit] See also //相关文章 See also Computer vision subcategories Related articles List of computer vision topics Applications of computer vision Commercial computer vision systems Computer vision researchers Software for Computer vision Machine Vision Glossary Graph cuts in computer vision Affective computing Artificial intelligence Computer graphics Computer vision research groups Digital image processing Image processing Machine learning Machine vision Medical imaging Morphological image processing Pattern recognition //参考文献等 Further reading Sorted alphabetically with respect to first author's family name Wilhelm Burger and Mark J. Burge (2007). Digital Image Processing: An Algorithmic Approach Using Java. Springer. ISBN 1846283795 and ISBN 3540309403. J. L. Crowley and H. I. Christensen (Eds.) (1995). Vision as Process. Springer-Verlag. ISBN 3-540-58143-X and ISBN 0-387-58143-X. E. R. Davies (2005). Machine Vision : Theory, Algorithms, Practicalities. Morgan Kaufmann. ISBN 0-12-206093-8. Olivier Faugeras (1993). Three-Dimensional Computer Vision, A Geometric Viewpoint. MIT Press. ISBN 0-262-06158-9. R. Fisher, K Dawson-Howe, A. Fitzgibbon, C. Robertson, E. Trucco (2005). Dictionary of Computer Vision and Image Processing. John Wiley. ISBN 0-470-01526-8. David A. Forsyth and Jean Ponce (2003). Computer Vision, A Modern Approach. Prentice Hall. ISBN 0-12-379777-2. Gösta H. Granlund and Hans Knutsson (1995). Signal Processing for Computer Vision. Kluwer Academic Publisher. ISBN 0-7923-9530-1. Richard Hartley and Andrew Zisserman (2003). Multiple View Geometry in computer vision. Cambridge University Press. ISBN 0-521-54051-8. Berthold Klaus Paul Horn (1986). Robot Vision. MIT Press. ISBN 0-262-08159-8. Bernd Jähne and Horst Haußecker (2000). Computer Vision and Applications, A Guide for Students and Practitioners. Academic Press. ISBN 0-13-085198-1. Bernd Jähne (2002). Digital Image Processing. Springer. ISBN 3-540-67754-2. Reinhard Klette, Karsten Schluens and Andreas Koschan (1998). Computer Vision - Three-Dimensional Data from Images. Springer, Singapore. ISBN 981-3083-71-9. Tony Lindeberg (1994). Scale-Space Theory in Computer Vision. Springer. ISBN 0-7923-9418-6. David Marr (1982). Vision. W. H. Freeman and Company. ISBN 0-7167-1284-9. Gérard Medioni and Sing Bing Kang (2004). Emerging Topics in Computer Vision. Prentice Hall. ISBN 0-13-101366-1. Tim Morris (2004). Computer Vision and Image Processing. Palgrave Macmillan. ISBN 0-333-99451-5. Azriel Rosenfeld and Avinash Kak (1982). Digital Picture Processing. Academic Press. ISBN 0-12-597301-2. Linda G. Shapiro and George C. Stockman (2001). Computer Vision. Prentice Hall. ISBN 0-13-030796-3. Milan Sonka, Vaclav Hlavac and Roger Boyle (1999). Image Processing, Analysis, and Machine Vision. PWS Publishing. ISBN 0-534-95393-X. Emanuele Trucco and Alessandro Verri (1998). Introductory Techniques for3-D Computer Vision. Prentice Hall. ISBN 0132611082. External links [edit] General resources CMU's Computer Vision Homepage Wikia has a wiki about this topic: Computer Vision Keith Price's Annotated Computer Vision Bibliography and the Official Mirror Site Keith Price's Annotated Computer Vision Bibliography HIPR2 image processing teaching package USC Iris computer vision conference list [edit] Tutorials CVonline: The Evolving, Distributed, Non-Proprietary, On-Line Compendium of Computer Vision Introduction to computer vision (464KB pdf file) [edit] Papers Machine Perception of Three-Dimensional Solids - the paper mentioned by Joseph Mundy in the video Retrieved from "http://en.wikipedia.org/wiki/Computer_vision"
posted on
2007-07-02 21:19cutepig
阅读(1437)
评论(1)
编辑收藏举报