CS 184: COMPUTER GRAPHICS

Lecture #28 -- We: 5/5, 1999.

PREVIOUS < - - - - > CS 184 HOME < - - - - > CURRENT < - - - - > NEXT

Preparation:

Read: Ch. 3.17 - 3.17.2,   14.10 - 14.10.2, "Antialiasing".
Read: Ch. 15.10 - 15.10.2,  "Ray-casting, Ray-tracing".
 

Review Color Spaces

Exercises in color mixing, reflection.

Perceptual Colors

Learning by doing: Experiment with Metamers

CIE diagram.

Formal perceptual color space, defined in 1931 by Commission International de l’Eclairage.
Define a set of basis vectors that lie completely outside the range of visible RGB values,
so that all of the component become positive and
so that all perceptual colors map into a single octant of a rectilinear space.
(This is a linear transformation).
Then cut this cone with the plane x+y+z=1 and project this cut onto the x,y plane:
==> CIE chromaticity diagram.

What can you display from this range ? (only linear combinations of base colors)
==> typically a triangle ! --> Therefore, choose points as far apart as possible.
Every output device is rather limited in the range of colors it can display !
 

Antialiasing

Review the basic effects

==>  Moiré patterns with grids on VG projector.
What is going on here ?  What does aliasing have to do with C-graphics ?  Occurs in rendering.
Why is it called aliasing ? -- show relation to signal processing (for EE).
What does a computer graphics person have to know ? -- it is bad !
Occurs with all sampling techniques. Techniques to overcome it are called anti-aliasing. (show T-shirt symbol).
What rendering techniques do you think are particularly affected ? Ray-cast/trace, tex-map.

Aliasing
Sampling a fuzzy blob (low spatial frequencies) ==> no problem
Sampling a fence (periodic structure), need sufficient sampling, or ==> Moire pattern
Space domain versus frequency domain; no overlapping frequency humps
Sufficient versus insufficient sampling:
If sampling is lower, mean repetition in frequency domain move closer together,
==> overlapping humps, image distortion ==> too many low frequencies.
Get rid of aliasing by oversampling and combining samples, with or without weighting;
generalization = "digital filtering."
If we cannot increase sampling density,
then lower the spatial frequencies by lowpass filtering the input.
This cuts off frequency response so that the humps do not overlap.

Antialiasing
In CG -- what can we do against aliasing ? ==> Oversample.
Combine samples, possibly with different weights.
Watch out for aliasing problem in texture mapping.
 

Ray-casting and Ray-tracing

Shoot rays from eye through all pixels into scene and find out what gets hit first. (Ray-casting)
Optionally send a ray from the first hit to all light sources to check: visibility = illumination.

Obtionally send secondary rays off reflecting surfaces in the direction of the reflected ray
to compose a mirror image, and also send rays into transparent matrials under the refraction angle.
If these secondary rays hit other mirrored or transparent surfaces, continue by sending ternary rays.
Continue to build such a ray-tree until attenuation has decreased the intensity of a particular leaf-ray
to less than half a bit of RGB resolution.

The search for the ray intersection with some polygon in the database can be prohibitively expensive
unless we exploit the coherence of the spatial distribution of most physical scenes.
One solution is to embedd the scene into a grid or into an octree and process the cells of this
indexing data structure in a fron-to-back manner in the direction of the ray that we are following.
 


Current Homework Assignment:

ASG#10  "Your Final Project"
DUE: Wednesday 5/12/99, 11:59pm.
CAN BE DONE WITH YOUR PARTNER OF CHOICE !


--> Next Lecture

<-- Up to CS 184 HomePage


Page Editor: Carlo H. Séquin