Tentative Schedule

8/27
    Suggested Reading:
  • The Rise of Mobile Visual Computing Systems (IEEE Pervasive Computing, 2016). The scope of visual computing discussed in this paper is mostly focused on graphics and computer vision, slightly narrower than what we cover in this course.
Preliminaries
8/30
    Required Reading:
  • Fundamentals of Computer Graphics (4e), Chapter 6. We didn't discuss the materials in 6.1.2, 6.1.4, 6.2.1, 6.2.2, 6.4; skip or skim them if you want.
    Suggested Reading:
  • Read Fundamentals of Computer Graphics (4e), Chapter 5 if you need to refresh basic linear algebra. Study 5.4 carefully if you haven't seen that material before.
9/3 9/5
    Required Reading:
  • Data-Driven Science and Engineering: Machine Learning, Dynamical Systems, and Control, Chapter 2.1, 2.2. Focus on getting the idea; skip the math proofs if you want; pay attention to how they see Fourier Transform from a vector-space perspective. Skim 2.6 if you want.
    Suggested Reading:
  • Play with the sample programs I used in the class today (reconstruct.py, filter.py, visterms.py). Run them and understand how they work.
9/5 9/10
    Suggested Reading:
  • Physically-Based Rendering (4ed), Chapter 8.1.
  • Image Filtering Tutorial. Nice illustrations of filtering/convolutions. Has more filter types than what we discussed in the class.
Human Visual System
9/12
    Suggested Reading:
  • Eye, Brain, and Vision, Chapter 3 and Chapter 4 (by David H. Hubel; eye, retina, and V1 wonderfully illustrated and elegantly explained)
  • Exploring the Visual Brain (a short YouTube video by Torsen Wiesel talking about their discovery of cortical architecture with a touching tribute to Hubel)
9/17
9/19
9/24
    Required Reading:
    Suggested Reading:
Displays and Imaging
9/26
    Required Reading:
    Suggested Reading:
9/26 10/1
    Required Reading:
10/3 10/8
    Required Reading:
  • Chapter 4.2 -- 4.5, Virtual Reality. Talks about cameras, lenses, and optical aberrations at a high level; an easy ready.
10/10
10/15
10/17
    Required Reading:
    Suggested Reading:
10/22
    Suggested Reading:
  • A Software Platform for Manipulating the Camera Imaging Pipeline (ECCV 2016). It's an open-source ISP pipeline implementation. Our discussion doesn't exactly follow and we will leave a few stages (e.g., tone mapping, white balancing) to later lectures.
  • Andrew Rowlands' Color conversion matrices in digital cameras: a tutorial is the definitive guide to camera color correction; give it a read if you are serious about it, which also talks about the connection between color correction and white balance.
  • These three articles in a series (1, 2, 3) has a good explanation of color correction too.
10/24
    Required Reading:
  • Tones and Contrast and Tone Curve in Photoshop. They talk about the notion of tone and contrast as well as how changing image tones on a standard DR image changes the visual effects. An interesting thing to note is that tone mapping in SDR images usually uses an S-shape curve that increases the contrast in midtones and compress contrasts in highlights and shadows, whereas tone mapping curves for HDR images tend to be inverse-S shape to bring out details in highlights and shadows.
10/29
10/31
11/5 11/7
    Required Reading:
  • Light Fields and Computational Imaging. Creating immersive content is fundamentally image-based rendering, which is fundamentally sampling and reconstructing the light field. The article has a nice overview of light-field capturing, processing, and rendering.
Graphics
11/12
11/14
    Required Reading:
  • Read the first four chapters on this Scratchapixel lession on Rasterization: a Practical Implementation.
  • Both this Scratchapixel article and Chapter 7.2 and 7.3 of Fundamentals of Computer Graphics (4e) talk about how to calculate the perspective transformation matrix. They use different conventions but the principle is the same. Go over them to reinforce your understanding. Pay attention to details.
11/19
11/21
11/26
Thanksgiving Holiday
11/28
Thanksgiving Holiday
12/3
12/5