Courses in Graphics

(updated for academic year 2009-2010)


News flashes:
  • 6/18/09 - Distinction in Teaching candidate Andrew Adams will be teaching CS 448F in Autumn, on Image Processing for Photography and Vision.
  • 6/18/09 - New Stanford faculty member Fei-Fei Li will be teaching CS 223B, Introduction to Computer Vision, in Winter quarter.
  • 6/17/09 - There will be 4 (yes four!) offerings of CS 448 in 2009-2010. Check it out.
  • 3/31/09 - Starting in 2009-2010, CS 148 will be taught in Autumn, and CS 248 will be taught in Winter, Also, 148 will become a prereq to 248.

    Stanford offers the following courses in graphics:
    (Not all courses are offered every year.)

    CS/EE cross listings:
    (These are now deprecated, and will soon be removed.)

    The following courses are being offered this year (2009-2010).

    Autumn quarter:
    Winter quarter:
    Spring quarter:

    Press here for the Computer Science Department pages in the Stanford Course Bulletin.

    Press here for a listing of courses that are no longer offered.

    Press here to return to the home page.


    CS 48N - The Science of Art

    (formerly CS 99D)

    (Stanford Introductory Seminar)

    The interwoven histories of science and Western art from the Renaissance to the 19th century. Emphasis is on the revolutions in science and mathematics that have inspired parallel revolutions in the visual arts (e.g., Brunelleschi's invention of linear perspective, Newton's discoveries in geometric optics, and the theories of color vision proposed by Goethe, Young, Helmholtz, etc.). The scientific principles behind image making, including a brief survey of digital image synthesis (a.k.a. computer graphics). However, this is not a course in computer graphics. No programming experience is required. Intended primarily for freshmen and sophmores, with preference given to freshmen. Enrollment limited. Satisfies GER:DB-EngrAppSci.

    Units:
    3
    Prerequisites:
    none
    Quarter (in 2010-2011):
    Winter
    Time and place:
    Tue/Thu 2:15-3:45, 392 Gates Hall (graphics lab conference room)
    Instructor:
    Marc Levoy
    Televised?
    No
    Next offering:
    Winter 2013

    Past offerings:

    Look here for some outstanding student projects that we've placed online:


    CS 148 - Introductory Computer Graphics

    Introductory Computer Graphics and Imaging Topics: Image input and output devices such as cameras and displays, graphics hardware and software, input technologies and interactive techniques, typography and page layout, light and color representations, exposure and tone reproduction, image composition and imaging models, digital signal processing, sampling, aliasing and antialiasing, compression, two- and three-dimensional geometry and transformations, modeling techniques including curves and surfaces, reflection models and illumination algorithms, and basic methods of animation. Programming assignments using C++ and OpenGL. GER:DB-EngrAppSci

    Units:
    3
    Prerequisites:
    CS 107 and Math 103
    Quarter (in 2009-2010):
    Autumn
    Time:
    Tue/Thu 2:15 - 3:30
    Instructor:
    Pat Hanrahan
    Televised?
    No

    Past offerings:


    CS 164 - Computing with Physical Objects: Algorithms for Shape and Motion

    Algorithms and data structures deadling with the representation and manipulation of physical objects and entities in the computer. Computational structures for shape and motion, shape fitting and matching, triangulations and other spatial subdivisions, and low-dimensional search and optimization. Examples relevant to computer graphics, computer vision, robotics and geometric computation emphasizing algorithmic paradigms applicable to multidimensional data.

    Units:
    3
    Prerequisites:
    CS 103 or 103B, and CS 109 or STATS 116, and CS 106B/X or consent of instructor.
    Quarter (in 2009-2010):
    Spring
    Time:
    Mon/Wed 2:15 - 3:30
    Instructor:
    Leonidas Guibas
    Televised?
    No

    Past offerings:


    CS 178 - Digital Photography

    Scientific, artistic, and computing aspects of digital photography. Topics: lenses and optics, light and sensors, optical effects in nature, perspective and depth of field, sampling and noise, the camera as a computing platform, image processing and editing, history of photography, computational photography. Coursework is written assignments, exams, and photography assignments. Enrolled students will be given free access to Photoshop during the course. Counts as a CS elective in the Graphics Track. Also satisfies GER:DB-EngrAppSci.

    Note: Enrollment in this course is limited; see cs178.stanford.edu on March 1, 2010 for enrollment procedure.

    Units:
    3
    Prerequisites:
    Introductory calculus. No programming experience required.
    Students must have a digital camera with manual control over shutter speed and aperture.
    Loaner cameras will be available to students who need them.
    Quarter (in 2009-2010):
    Spring
    Time:
    Tue/Thu 2:15-3:30pm
    Instructor:
    Marc Levoy
    Televised?
    No

    Current offerings:

    Past offerings:

    Best photographs from each of the weekly assignments:


    CS 205A - Mathematical Methods for Computer Vision, Robotics, and Graphics

    Continuous mathematics background necessary for research in robotics, vision, and graphics. Possible topics: linear algebra; the conjugate gradient method; ordinary and partial differential equations; vector and tensor calculus.

    Units:
    3
    Prerequisite:
    106B or 106X; MATH 51 and 113; or equivalents.
    Quarter (in 2009-2010):
    Autumn
    Time:
    Tue/Thu 9:30-10:45am
    Instructor:
    Ron Fedkiw
    Televised?
    Yes

    Past offering:


    CS 205B - Mathematical Methods for Fluids, Solids and Interfaces

    (cross listed as CME 306)

    Numerical methods for simulation of problems involving solid mechanics and fluid dynamics. Focus is on practical tools needed for simulation, and continuous mathematics involving nonlinear hyperbolic partial differential equations. Possible topics: finite element method, highly deformable elastic bodies, plasticity, fracture, level set method, Burgers’ equation, compressible and incompressible Navier-Stokes equations, smoke, water, fire, and solid-fluid coupling.

    Units:
    3
    Prerequisite:
    205A or equivalent.
    Quarter (in 2009-2010):
    Spring
    Time:
    Tue/Thu 9:30-10:45am
    Instructor:
    Ron Fedkiw
    Televised?
    No

    Past offering:


    CS 223B - Introduction to Computer Vision

    Fundamental issues and techniques of computer vision. Image formation, edge detection and image segmentation, stereo, motion, shape representation, recognition.

    Units:
    3
    Prerequisite:
    A good background in linear algebra, statistics, programming in MATLAB and/or C++.
    Quarter (in 2009-2010):
    Winter
    Time:
    Tue/Thu 4:15 - 5:30
    Instructor:
    Fei-Fei Li (new Stanford faculty!)
    Televised?
    Yes

    Past offerings:


    CS 248 - Interactive Computer Graphics

    (formerly called Introduction to Computer Graphics)

    Rendering, animation and modeling for interactive computer graphics. Rasterization, graphics pipeline, graphics hardware; texture mapping and its applications; lighting and surface shading; rendering optimization; keyframing; physics simulation. Programming projects and final project. Prerequisite: CS 148.

    Units:
    3-5, at the student's discretion (no change in course requirements).
    Prerequisite:
    CS 148.
    Quarter (in 2009-2010):
    Winter
    Time:
    Mon/Wed 12:50 - 2:05
    Instructor:
    Vladlen Koltun
    Televised?
    Yes, but not offered to out-of-Bay-Area students.

    Past offerings:

    Look here for images and animations from the old CS 248 rendering competitions:

    And look here for results of the more recent CS 248 video game competitions:


    CS 268 - Geometric Algorithms

    (formerly CS 368)

    An introduction to the basic techniques used in the design and analysis of efficient geometric algorithms including: convexity, triangulation, sweeping, partitioning, and point location. Voronoi and Delaunay diagrams. Arrangements and convex polytopes. Intersection and visibility problems. Geometric searching and optimization. Random sampling methods. Impact of numerical issues in geometric computation. Example applications to robotic motion planning, visibility preprocessing in graphics, model-based recognition in computer vision, and structural molecular biology.

    Units:
    3
    Prerequisites:
    CS 161
    Quarter (in 2009-2010):
    (not offered)
    Next offering:
    2010-2011

    Past offerings (of CS268 or CS 368):


    CS 348A - Computer Graphics: Geometric Modeling

    (formerly called Mathematical Methods)

    The mathematical tools needed for the geometrical aspects of computer graphics and especially for modeling smooth shapes. Fundamentals: homogeneous coordinates, transformations, and perspective. Theory of parametric and implicit curve and surface models: polar forms, Bezier arcs and de Casteljau subdivision, continuity constraints, B-splines, tensor product, and triangular patch surfaces. Subdivision surfaces and multiresolution representations of geometry. Representations of solids and conversions among them. Surface reconstruction from scattered data points. Geometry processing on meshes, including simplification.

    Units:
    4. May be taken for 3 units by graduate students (same course requirements).
    Prerequisites:
    Linear algebra. Recommended: 164
    Quarter (in 2011-2012):
    Winter
    Time:
    Mon/Wed 9:15-10:45 am
    Instructor:
    Leonidas Guibas
    Televised? No
     
    Current offering:

    Past Offerings:


    CS 348B - Computer Graphics: Image Synthesis Techniques

    Intermediate level, emphasizing sampling, shading, and display aspects of computer graphics. Topics: local and global illumination methods including radiosity and distributed ray tracing, texture generation and rendering, volume rendering, strategies for anti-aliasing and photo-realism, human vision and color science as they relate to computer displays, and high-performance architectures for graphics. Written assignments and programming projects.

    Units:
    4. May be taken for 3 units by graduate students (same course requirements).
    Prerequisite:
    CS 248 or equivalent
    Recommended:
    Fourier analysis or digital signal processing
    Quarter (in 2009-2010):
    Spring
    Time:
    Tue/Thu 9:30 - 10:45
    Instructor:
    Pat Hanrahan
    Televised?
    No
    Past offerings: Look here for images and animations from the yearly CS 348B rendering competitions:

    CS 448 - Topics in Computer Graphics

    Topic changes each quarter. Recent topics: computational photography, data visualization, character animation, virtual worlds, graphics architectures, advanced rendering. Some offerings may be listed in the Stanford online course catalog. For a complete listing of offerings and prerequisites, see below. Course may be repeated for credit.

    Units:
    Depends on the course; usually 3, but sometimes 1-3, 1-4, or 3-4
    Prerequisites:
    Depends on the course
    Televised?
    No
    Offerings in 2009-2010:
    CS 448F - Image Processing for Photography and Vision (Andrew Adams, Autumn 2009, Tue/Thu 2:15 - 3:30, Gates 392)
    Image processing with a focus on implementation of new techniques from the literature. Topics include sampling and reconstruction, linear and non-linear filters, features and alignment, compositing, gradient-domain techniques, and recent techniques from conferences such as SIGGRAPH and Eurographics. Prerequisites: Students should be comfortable coding in C++. An introductory graphics course such as CS148 is helpful but not necessary.
    CS 448B - Data Visualization (Heer, Autumn 2009, Mon/Wed 12:35 - 2:05)
    CS 448B (Topics in Computer Graphics: Data Visualization). Techniques and algorithms for creating effective visualizations based on principles from graphic design, visual art, perceptual psychology, and cognitive science. Topics: graphical perception, data and image models, visual encoding, graph and tree layout, color, animation, interaction techniques, automated design. Lectures, reading, and project. Prerequisite: one of 147, 148, or equivalent. 3 units.
    CS 448A - Computational Photography (Levoy, Winter 2010, Tue/Thu 2:15 - 3:30, Gates 392)
    Sensing strategies and algorithmic techniques that extend traditional digital photography. Topics: high dynamic range imaging, flash-noflash, coded aperture, coded exposure, multi-perspective, panoramic stitching, digital photomontage, all-focus, and light field imaging. Lectures, readings, and project. Prerequisite: 148 or equivalent. 3-4 units.
    CS 448E - Research Topics (Koltun, Spring 2010, Mon/Wed 11:00 - 12:15)
    Selected topics in current computer graphics research. Analysis of research publications, class discussions, quarter-long research project. Topics change each offering. Sample topics: procedural modeling, character animation, multimodal interfaces, perception and cognition. May be repeated for credit. Prerequisite: CS 248. 1-4 units.

    Past offerings (under the number 348C through 1996-7)


    Look here for images and animations from the CS 348C student projects

    CS 468 - Topics in Geometric Algorithms

    Advanced seminar covering different topics related to geometric computing. Recent offerings: shape matching, proximity and nearest-neighbor problems, visibility and motion planning, and collision detection. Readings from the literature and a presentation or a project required. This course may be taken repeatedly for credit.
    Units:
    2
    Prerequisites:
    CS 268 or CS368 or consent of the instructor
    Quarters (in 2009-2010):
    Autumn 2009 (Dmitriy Morozov)
    Televised?
    No
    Past Offerings:

    CS 528 - AI/Graphics/Geometry/Vision/Robotics Seminar

    This colloquium began as a joint offering between what was known as the the Stanford Geometry, Graphics, Robotics, and Vision Seminar (GGRV) and the AI, Vision, and Robotics Colloquium (AIRV). We've consolidated the two seminars. Students can also take this seminar as a course, CS 528. This colloquium is intended to bring established and senior researchers from the fields of AI, geometry, graphics, robotics, and vision together to discuss and explain broad considerations and high-level tasks that the relevant communities are addressing. The talks are intended to create awareness and interest for all of the members of these communities, hopefully bridging the gaps and creating collaborations. All are invited.
    Units:
    1
    Prerequisites:
    none
    Quarters (in 2009-2010):
    (not offered)
    Past offerings:

    Last update: January 8, 2012 05:58:27 PM
    webmaster@graphics.stanford.edu