Courses in computer graphics
CMPSCI 473 - Introduction to Computer Graphics
This course teaches the fundamentals of 2D and 3D graphics. The topics we cover include image processing, curves and surfaces, standard graphics pipeline, transformation, shading, texture mapping,
ray tracing and programmable shaders. Students will learn OpenGL and implement fundamental algorithms behind modern graphics techniques. At the end of the course we will cover a broader range of topics including photography basics, HDR imaging, interacting with the physical world, and global illumination.
CMPSCI 474 - Advanced Image Synthesis
This course provides a broad overview of the theory and practice of rendering. Classic rendering algorithms will be covered, however, most of the course will cover current results in physically-based rendering algorithms. Specific topics to be covered include: ray tracing, monte carlo techniques, physically-based reflection models, global illumination rendering, radiosity, path tracing, photon mapping, image and signal processing, textures and texture synthesis, lightfields, camera and film.
CMPSCI 691AC - Graduate Seminar on Computational Photography
This course is a convergence between computer graphics, computer vision, image processing, and digital photography. It will discuss three main research areas in-depth: computational illumination, computational optics, and computational image/video processing. Specific topics include basic photography techniques, image-based lighting, high dynamic range imaging, structured lighting, coded aperture imaging, light field photography, image mosiacing, matting, super-resolution, time-lapse video etc.
CMPSCI 691AD - General Purpose Computation on the GPU
Graphics processors (GPUs) on today's commodity video cards have evolved into powerful engines capable of a variety of computations beyond computer graphics. This course takes a
detailed look at both basic and advanced topics related to general-purpose computation on graphics hardware (GPGPU). The aim of the course is to provide students with knowledge and hand-on
experience in developing applications on modern GPUs using NVIDIA's CUDA programming interface.