<--back--      home      --next-->
The interesting part of the paper is the method for luminance matching. It is for that task that we use a thresholded, bi-level image of a face. Here's the image that we used in the paper. We took an image of a face, lit from above, we thresholded it to make it bi-level, and then we flipped the contrast, and put a copy next to it. Having two copies of the face like this turns out to be key. Let me show you.
(Running demo)

When the color is much much darker than the shade of gray, you see the face on one side. When its much lighter, you see it on the other side.

As I slide the lightness of the color back and forth, keeping the gray fixed, most people just instinctively follow the positive face as it appears here on the left, and then the right, and back. I'm interested in that one point, where it flips, in the middle, where neither face stands out as the positive one.

The fact that there are two face images gives me this directional cue- telling me which direction I need to go in order to get closer to the middle.

Now let me quickly do the same thing for the other control points along the standard rainbow colormap, using the same gray level for all the control points ... and then I'll save out those values.

(Running a script to process output of demo)

So here are the control points in the rainbow colormap I started with, and here are the control points which I just generated by using my little applet.

We're done with the first stage: we've controlled the luminance of the control points, and now we need to interpolate between them.