Object recognition by computer

Object recognition in computer vision is the task of finding a given object in an image or video sequence. Humans recognize a multitude of objects in images with little effort, despite the fact that the image of the objects may vary somewhat in different view points, in many different sizes / scale or even when they are translated or rotated. Objects can even be recognized when they are partially obstructed from view. This task is still a challenge for computer vision systems in general.

Approaches based on CAD-like object models
Edge detection, primal sketch, Marr, Mohan and Nevatia, Lowe, Faugeras

Recognition by parts
Binford (generalized cylinders), Biederman (geons), Dickinson, Forsyth and Ponce

Appearance-based methods
Histograms: Swain and Ballard, Schiele and Crowley, Schneiderman and Kanade, Linde and Lindeberg, Koenderink and van Doorn, Dalal and Triggs

Scale-invariant feature transform
David Lowe pioneered the computer vision approach to extracting and using scale-invariant SIFT features from images to perform reliable object recognition.

Other approaches
Template matching, gradient histograms, intraclass transfer learning, explicit and implicit 3D object models, global scene representations, shading, reflectance, texture, grammars, topic models, biologically inspired object recognition

Window-based detection, 3D cues, context, leveraging internet data, unsupervised learning, fast indexing

Applications
Object recognition methods has the following applications:
 * Image panoramas
 * Image watermarking
 * Global robot localization

Surveys
Daniilides and Eklundh, Edelman