Computer Science Department

CS491E/791E: Computer Vision (Spring 2004)

  • Meets: TR: 2:30pm - 3:45pm at SEM 326
  • Instructor: Dr. George Bebis

  • Text (required):
  • Optional Texts:

  • Other books (available in the DeLaMare library)

    • Horn, Berthold Robot vision, McGraw-Hill, 1986.
    • Baxes, Gregory Digital image processing: principles and applications, Wiley, 1994.
    • Ballard, Dana Computer vision, Prentice-Hall, 1982.
    • Bow, Sing-Tze Pattern recognition and image preprocessing, New York: M. Dekker, 1992.
    • Hall, Ernest Computer image processing and recognition, New York: Academic Press, 1979.
    • R. Gonzalez et. al Digital Image Proc essingAddison-Wesley, 1993.
    • K. Castleman Digital Image Processing Prentice-Ha ll, 1996.
    • J. RussImage Processing Handbook, CRC Press, 1998.
  • Major CV Journals:

  • Major CV Conferences:

  • Computer Vision resources

  • Useful links to Neural Networks and Genetic Algorithms resources

  • Useful links to Pattern Recognition resources

  • Useful links to Algorithms resources

  • Useful Mathematics, Statistics, and Geometry resources

    Course Description

    The goal of computer vision is to develop the theoretical and algorithmic basis by which useful information about the world can be automatically extracted and analyzed from an observed image, image set, or image sequence. Since images are two-dimensional projections of the three-dimensional world, the information is not directly available and must be recovered. This is a very difficult problem given that the inversion is a many-to-one mapping. To recover the information, knowledge about the objects in the scene and projection geometry is required.

    Computer Vision systems have many potential applications. Robots who can see are more likely to interact with the real world in a satisfactory manner; they can choose objects, avoid obstacles, plan routes, calculate their velocity and orientation, identify dangerous situations, etc. Such robots will be useful in exploring dangerous or very distant environments (e.g. other planets, inside nuclear reactors). Computer Vision can be used to help cameras follow the trajectory of people and vehicles, for example for traffic monitoring; it can help in the identification of faces for security clearance; it can be used for converting 2D images into 3D models that can then be rotated and manipulated, for example to present medical or sporting images from a better angle; they can be use for inspecting medical images for identifying tumours and other ailments.

    Over the next decade, it is anticipated that Computer Vision systems will become commonplace, and that vision technology will be applied across a broad range of business and consumer products. This implies that there will be strong industry demand for computer vision engineers - for people who understand vision technology and know how to apply it in real-world problems. This is course will cover the fundamentals of Computer Vision. It is suited for mainly students who are interested in doing research in the area of Computer Vision. For graduate students, there are many open problems in this area suitable for investigation leading to a Master thesis or a Ph.D. dissertation.

    Course Outline (tenative)

    Exams and Assignments

    Exams: There will be a midterm and a final exam.

    Homework: Homework problems will be assigned on a regular basis and will be collected at the beginning of the class on the due date. Solution sets will be provided for all problems assigned.

    Programming Assignments: there will about 4-5 programming assignments which should be done on an individual basis. For each programming assignment, you are to turn in a brief report which should include a description of the problem, a description of your approach, and your evaluation of the results. Details of the deliverables will be given for each assignment respectively. Discussion of the programming assignments is allowed and encouraged. However, each student should do his/her own work. Assignments which are too similar will receive a zero.

    Paper presentation: each student would be required to present a paper to the rest of the class. The presentations should be professional as if it were presented in a formal conference (i.e., slides/projector). More details will be provided in the class.

    Course Prerequisites

    The pre-requisite for this course are CS308 (Data Structures) and CS474/674 (Image Processing and Interpretation), however, I will waive the CS474/674 requirement depending on your background and interests. Good programming skills and mathematical background are essential.

    C++ information


    Ghostview(software for viewing postscript files)
    Gnuplot(a command-driven interactive function plotting program)
    ResearchIndex (a scientific literature digital library - find papers easy !)
  • Syllabus

  • Sample Midterm Exam and Study Guide

  • Image-Processing-Related Material

  • Source Code

  • Reading Assignments

  • Lectures

  • Homework

  • Programming Assignments

  • Paper Presentations

    Department of Computer Science, University of Nevada, Reno, NV 89557
    Page created and maintained by: Dr. George Bebis (