A system that learns to recognize 3-D objects
thesisposted on 18.10.2010, 13:20 by Gabriel Gabrielides
A system that learns to recognize 3-D objects from single and multiple views is presented. It consists of three parts: a simulator of 3-D figures, a Learner, and a recognizer. The 3-D figure simulator generates and plots line drawings of certain 3-D objects. A series of transformations leads to a number of 2-D images of a 3-D object, which are considered as different views and are the basic input to the next two parts. The learner works in three stages using the method of Learning from examples. In the first stage an elementary-concept learner learns the basic entities that make up a line drawing. In the second stage a multiple-view learner learns the definitions of 3-D objects that are to be recognized from multiple views. In the third stage a single-view learner learns how to recognize the same objects from single views. The recognizer is presented with line drawings representing 3-D scenes. A single-view recognizer segments the input into faces of possible 3-D objects, and attempts to match the segmented scene with a set of single-view definitions of 3-D objects. The result of the recognition may include several alternative answers, corresponding to different 3-D objects. A unique answer can be obtained by making assumptions about hidden elements (e. g. faces) of an object and using a multiple-view recognizer. Both single-view and multiple-view recognition are based on the structural relations of the elements that make up a 3-D object. Some analytical elements (e. g. angles) of the objects are also calculated, in order to determine point containment and conveziti. The system performs well on polyhedra with triangular and quadrilateral faces. A discussion of the system's performance and suggestions for further development is given at the end. The simulator and the part of the recognizer that makes the analytical calculations are written in C. The learner and the rest of the recognizer are written in PROLOG.
- Computer Science