The world around us consists of objects, many of which are visible to us as surfaces. Examples are people, cars, machines, computers and bananas. In this book the authors describe recent research in computer vision aimed at recovering the 3D shape of surfaces from image sequences of their 'outlines'. They provide all the necessary background in differential geometry and in the analysis of visual motion. They also give a thorough introduction to the mathematical techniques and the details of the implementations, and apply the methods to data from real images.