I am a computer scientist at Adobe
Systems Inc., where I conduct research and develop software for
processing digital photographs. My primary research interests include
image processing, real-time rendering algorithms, and graphics
architectures. Relevant links: Camera
Raw, Lightroom,
DNG.
Before joining Adobe, I was a visiting scientist at Mitsubishi Electric Research
Laboratories, where I worked with Ron Perry on
the Saffron
Type System. Saffron has been licensed to Adobe and is shipping in
several Flash-based products, including the Flash Player. If you've
ever visited a web site that uses Flash, chances are you've seen
Saffron in action!
In Spring 2007, I co-taught CSCI E-234
Introduction to Computer Graphics and GPU Programming with Hanspeter
Pfister at the Harvard Extension School. I also helped teach this
course in Fall 2005. It's part of the Extension School's Distance
Education program; we had students from all over North America
taking the class.
In the summer of 2005, I worked in the hardware verification group at
ATI Research (now AMD), where I designed and implemented a randomized
testing infrastructure for the R600 desktop chip (Radeon X2xxx
series).
Frédo Durand and I
developed a method for rendering fake soft
shadows and a hybrid
algorithm that combines shadow maps and shadow volumes.
In August 2004 I taught in a
SIGGRAPH course on real-time shadowing techniques. My
presentation slides (on shadow
silhouette maps and on the
smoothie algorithm) are online.
Frédo and I also wrote a book chapter for GPU
Gems 2; this chapter describes a technique for rendering
prefiltered lines efficiently on graphics hardware. An earlier
version of this article is available
online.
Before coming to MIT, I worked in the Stanford Computer Graphics Lab
under the supervision of Pat Hanrahan and Bill Mark. We extended
the Real-Time
Shading Language and wrote compiler back ends for the ATI R300 and
NVIDIA NV30 architectures. We also developed a pass-decomposition algorithm to virtualize
graphics hardware resources.
Resources: S.M. thesis,
papers,
online articles, and
SIGGRAPH course talks

Old Veteran Cypress,
Point Lobos State Reserve, California
I enjoy nature photography and making prints.
Here is a collection of recent
images, updated every week or two.
Early in 2007, I retired my aging Epson Stylus Photo 2200 and moved up
to the Epson Stylus Pro 3800, which is fantastic. Two years later it's
running as well as ever. I have put together some notes and a FAQ for
this printer:
Here are some additional notes on Epson printer calibration and some
general notes on profile making:
RAW color image processing notes for Adobe Camera Raw (ACR) versions
4.5 and later (also applies to Lightroom 2.0 and later):
RAW color image processing notes for Adobe Camera Raw (ACR) prior to
version 4.5:
For static subjects, stitching two or more images is a good way to
gain additional resolution.
Here are some tables that show how various stitching arrangements
relate to print sizes:
I can make high-quality custom ICC printer profiles for you. If
you're interested, click here to learn
more.
|