Page 10 -
P. 10

Preface






               The seeds for this book were first planted in 2001 when Steve Seitz at the University of Wash-
               ington invited me to co-teach a course called “Computer Vision for Computer Graphics”. At
               that time, computer vision techniques were increasingly being used in computer graphics to
               create image-based models of real-world objects, to create visual effects, and to merge real-
               world imagery using computational photography techniques. Our decision to focus on the
               applications of computer vision to fun problems such as image stitching and photo-based 3D
               modeling from personal photos seemed to resonate well with our students.
                  Since that time, a similar syllabus and project-oriented course structure has been used to
               teach general computer vision courses both at the University of Washington and at Stanford.
               (The latter was a course I co-taught with David Fleet in 2003.) Similar curricula have been
               adopted at a number of other universities and also incorporated into more specialized courses
               on computational photography. (For ideas on how to use this book in your own course, please
               see Table 1.1 in Section 1.4.)
                  This book also reflects my 20 years’ experience doing computer vision research in corpo-
               rate research labs, mostly at Digital Equipment Corporation’s Cambridge Research Lab and
               at Microsoft Research. In pursuing my work, I have mostly focused on problems and solu-
               tion techniques (algorithms) that have practical real-world applications and that work well in
               practice. Thus, this book has more emphasis on basic techniques that work under real-world
               conditions and less on more esoteric mathematics that has intrinsic elegance but less practical
               applicability.
                  This book is suitable for teaching a senior-level undergraduate course in computer vision
               to students in both computer science and electrical engineering. I prefer students to have
               either an image processing or a computer graphics course as a prerequisite so that they can
               spend less time learning general background mathematics and more time studying computer
               vision techniques. The book is also suitable for teaching graduate-level courses in computer
               vision (by delving into the more demanding application and algorithmic areas) and as a gen-
               eral reference to fundamental techniques and the recent research literature. To this end, I have
               attempted wherever possible to at least cite the newest research in each sub-field, even if the
               technical details are too complex to cover in the book itself.
                  In teaching our courses, we have found it useful for the students to attempt a number of
               small implementation projects, which often build on one another, in order to get them used to
               working with real-world images and the challenges that these present. The students are then
               asked to choose an individual topic for each of their small-group, final projects. (Sometimes
               these projects even turn into conference papers!) The exercises at the end of each chapter
               contain numerous suggestions for smaller mid-term projects, as well as more open-ended
   5   6   7   8   9   10   11   12   13   14   15