The following list of courses are offered by the computer science department and would be of interest to students wishing to specialize in computer graphics and/or computer vision. Please consult the Student Information System (SIS) for scheduling information.
- CS445(4810): Introduction to Computer Graphics
This course covers the fundamentals of 2D and 3D computer graphics including image processing, the modern rendering pipeline, ray tracing, and animation. This course does not cover (and students are not required to have any experience with) software such as Maya or 3D Studio Max. You will instead come to understand the principles upon which those types of systems are built. All the software you use will be your own creation in C/C++ and you should expect to do a lot of programming. - CS451(n/a): Advanced Computer Graphics
This course reviews advanced topics in computer graphics, focusing on fundamental developments in the field, and forms the second part of our undergraduate computer graphics sequence. We will review concepts related to representing and modeling 3D geometry; radiometry, light transport and physically-based rendering; image-based modeling and rendering; and advanced topics in computer animation. - CS451(n/a): Computer Vision
This course serves as an introduction to 2D and 3D computer vision. Topics include: principles of image formation; edge and feature detection; segmentation and clustering; feature recognition; feature tracking and optical flow; camera calibration; stereo-based scene reconstruction; photometric stereo; and image-based rendering and modeling. - CSXXX(n/a): The Art and Science of Computational Photography
Computational photography is the field that aims to advance the science and technology of digital photography: the practice of photography as an art form and craft using computational tools, methods, and materials. This course provides an introduction to computational photography grounded in a knowledge and actual practice of photography. Subjects in photography include history, aesthetics, optics, composition, exposure, and post-processing. Computational topics include perception; sensing and sampling; filters and transforms; color spaces and transformations; hardware and software technologies, and selected advanced topics.
In addition to the courses listed above, graduate level seminars are occasionally offered that cover specific areas within this broader discipline in much greater depth (e.g., "CS651: Data-Driven Models in Computer Graphics" and "CS651: Topics in Computer Vision"). Please consult the SIS for scheduling information and feel free to contact the relevant faculty if you're unsure whether or not your background is sufficient for one of these seminars.
Several courses that are no longer offered inadvertently appear from time to time on various course lists: CS446(4820) Real-Time Rendering; CS447(4830) Image Synthesis; CS448(4840) Computer Animation. Please note that these topics are covered in the courses above.
Students wishing to specialize in this area should also consider taking a number of advanced courses offered by the mathematics and applied mathematics departments:
- APMA3080: Linear Algebra
- APMA3100: Probability
- APMA3110: Applied Probability and Statistics
- APMA3140: Applied Partial Differential Equations
- APMA5070: Numerical Methods
- APMA6150: Advanced Linear Algebra
- MATH1110: Probability/Finite Mathematics
- MATH3100: Introduction to Probability
- MATH5220: Partial Differential Equations and Applied Mathematics