[comp.graphics] Generating photographic grain imperfection in computer graphics?

ereidell@media-lab.MEDIA.MIT.EDU (Evan A. Reidell) (04/12/91)

Rendering using stochastic sampling with jittered subpixel locations
introduces noise into computer animations that makes each frame appear
"alive" and flickering.  Pretty neat, but it still doesn't have that
"film" look, it just looks a bit noisy and fuzzy.

Richard Greenberg of R/Greenberg Associates hinted that he had some
interesting algorithms which faked "the look" for use with his stuff,
but he didn't say what they were.  probably top-quality trade secret, eh?

can anyone "in the know" think of good SIGGRAPH papers that do their
best to describe why film stock looks the way it does, and how that
might be synthesized as a filter through which CGI rendering takes place?

how about scientific photography papers, are there any good books or
documents that discuss the mathematics of that "film" look?  why we can
recognize the difference between a black-and-white movie made in the 50s
and a black-and-white movie made today, within seconds?  how can we port
that look to computer graphics?

Any pointers or discussion welcome, especially about the "look" of
visual displays, video, film and animation.

Evan A. Reidell (ereidell@media-lab.media.mit.edu)

mccool@dgp.toronto.edu (Michael McCool) (04/12/91)

ereidell@media-lab.MEDIA.MIT.EDU (Evan A. Reidell) writes:

>can anyone "in the know" think of good SIGGRAPH papers that do their
>best to describe why film stock looks the way it does, and how that
>might be synthesized as a filter through which CGI rendering takes place?

Don't know of any Siggraph papers on the subject, but I think a good
start would be:

	1) Simulation of Grain Noise
	2) Simulation of Logarithmic Intensity Response.

Film grain is Poisson, wheras stochastic ray-tracing uses jittered
or Poisson-disk sampling, which have different characteristics.  In
particular, they introduce less low-frequency noise, and hence let
the Monte-Carlo integration technique converge with fewer samples.
To get the "photographic" look, you need to sample completely at
random.  You could probably do it by randomly sampling an image,
but make sure you interpolate between pixel values.  You should
use a different pattern for each frame.  Then average the samples
down.  I'm not sure off the top of my head if you can just add noise,
it may be image intensity-dependent.  There's probably some way to
figure this out and just add the noise without having to 
simulate the resampling.    The apparent amplitude of the 
noise interacts with the intensity response.

Film also has a logarithmic intensity response, and you would
have to simulate the correct "gamma" for film.  This is fairly
straightforward, just map the colours.  Most image processing
books talk about film response and then ignore it for the rest
of the book.  I think Wintz has a discussion of film response.

Also see Barrett and Swindell, "Radiological Imaging", for a 
really good discussion of this topic.  In general, I think the 
curve for film bends *opposite* TV monitor response, at least
for negative film.  This reference talks about both noise and
response.

Other effects are possible with film, such as "Solarization"... like
in (too many) music videos (Eurythmics comes to mind).  Flash some
light on the film just as it finishes developing, and you get
and edge-enhancement effect, and washing out of colour.  This 
should be pretty easy to simulate with a little image processing.

In the shadow of the sun,
Michael McCool@dgp.toronto.edu,
Dynamic Graphics Project, University of Toronto.

rthomson@mesa.dsd.es.com (Rich Thomson) (04/13/91)

In article <5644@media-lab.MEDIA.MIT.EDU>
	ereidell@media-lab.media.mit.edu (Evan A. Reidell) writes:
>[...]  why we can
>recognize the difference between a black-and-white movie made in the 50s
>and a black-and-white movie made today, within seconds?

When I worked in a movie theatre I learned that different film stock
degrades over time in different ways.  Technicolor is nice because it
keeps its colors "bright" without much decay.  Other film stocks can
fade to a purple color, even when the original movie was black and
white.  These may be the differences you're seeing between old B&W movies 
and new ones.  Film stock has changed considerably in the past 40
years, I imagine.

						-- Rich
-- 
  ``Read my MIPS -- no new VAXes!!'' -- George Bush after sniffing freon
	    Disclaimer: I speak for myself, except as noted.
UUCP: ...!uunet!dsd.es.com!rthomson		Rich Thomson
ARPA: rthomson@dsd.es.com			PEXt Programmer

spworley@athena.mit.edu (Spaceman Spiff) (04/13/91)

I would think that the color sensitivity of film would play a bigger role
in the "film" look than the finite grain size. The film color gamut is
typically much larger than any video display. A video display also has a nearly
flat color sensitivity, wheras file does not have a uniform sensitivity to
color. Delicate aquas are one example that comes to mind- they're definately
less vibrant in film as opposed to pinks.

Another thought about simulating the film "look" is a more detailed camera
model. Certainly depth-of-field and motion blur are known and used, but 
how about subtler effects like change of focal character from the center of
the focal plane to the edge? Or the film shutter- exactly how much time should
be integrated over to characterize the light entering the camera? What about
the beginning and end of the integration where the shutter is half-way
covering the lens? I don't know how much effect these would have on a 
computer generated image, but if you're after a film-like look, these should
probably be looked into.

Scratches and dirt might also be interesting. Wow- try to model a hair
or piece of lint that moves up the screen, and finally disappears. We've
ALL seen this at the theatre!

Good luck, Evan, on your quest. 

-Steve

---------------------------------------------------------------------------
Steve Worley                                        spworley@athena.mit.edu
---------------------------------------------------------------------------

rhbartel@watcgl.waterloo.edu (Richard Bartels) (04/13/91)

The discussion reminds me of a topic we had in my freshman anthropology
class oodles of years ago.  Whenever a new technology arrived during
the development of civilization, it was invariably packaged to look
like old technology until the innovators learned how to exploit its
distinctive potential and the consumers learned to accept its strange
novelty.

Examples included the fact that the earliest recorded pottery was
invariably decorated with incisions that made it look like basketry.

-Richard