I am gradually making available a set of lecture notes on visual computing, covering topics on the human visual system, computer imaging, and their applications in computer graphics. I teach them in CSC 259 Computer Imaging and Graphics, and a lot of my research revolves around these incredibly exciting and intellectually inspiring topics. Some variant of the collection of these notes will appear in a book, hopefully in late 2025, so stay tuned for that as well.
What is visual computing, why is it an incredibly exciting area of research, and how you should study it.
Human Visual System
A brief introduction of the Human Visual System (HVS), covering both retinal processing and post-retinal processing in the LGN and cortex. It lays the groundwork for the rest of our discussions on the HVS.
The physiological and neural mechanisms behind photoreceptors and how they are connected to behavoiral responses of humans.
The behavioral experiences of color vision and the two mechanisms underlying our color vision: wavelength encoding at the photoreceptors and opponent processes post-receptors. We will also discuss the evolution of human color vision and how that affects color vision deficiencies.
Now that we can put color, a subjective experience, to numbers, we can start quantitatively studying colors. This chapter discusses a number of different ways to quantify colors and their practical uses.
Visual Adaptation: Light, Dark, and Chromatic Adaptations
Retinal Computation: Spatial and Temporal Aspects
Rendering
Ever wonder why things look the way they do? It's all about the different forms of light can interact with matters. This chapter builds light-matter interaction models, grounded in geometrical optics and radiometry, from first principles. If nothing else, you wantn to read this to appreciate the roots of modern neural radiance-field rendering in classic radiative transfer equations, volume rendering, and point-based graphics.
Imaging
Photographic Optics
Image Sensor Architecture
Noise and Dynamic Range
Image Signal Processing