A PhotoShop plugin, developed using FilterMeister, that permits independent highlight and shadow adjustments without the global side effects or flatness created by levels and curves adjustment. It works well as digital fill flash for shadow recovery, for improving washed-out skies, and as a precursor to conversion to black & white. Unlike the controls in PhotoShop (and like Sigma's fill flash) it can also make negative adjustments, for deliberately deepening shadows or washing out highlights.
This is a work in progress, but already works well on many images, so I'm sharing it now.
This tool grew out of some time I spent reviewing the academic high dynamic range image display literature, which is easy to find at http://citeseer.ist.psu.edu/. I've tested a few sophisticated codes from that work, but don't have time to implement them as plugins. This code is very simple, but also very effective in many cases.
Drop the filter (download below), which is an .8bf file, into your PhotoShop filters directory, usually something like c:\program files\Adobe\Photoshop\PlugIns\Filters. Then launch PhotoShop. I've tested this with Photoshop 5.0LE and CS, and PS Elements 2.0. It's not demanding and should work with other versions as well.
If you're using other software that accepts PhotoShop compatible plugins installation should be similar, but I don't have any examples to try. It might also run standalone with PluginCommander but I haven't tried that either.
Luminosity opens to a control dialog with a preview at left. You can drag on the preview to move around your image or selection. You can zoom using the +/- buttons below the image.
Running the filter on a 2mpix image takes about 6 seconds on a 2.4GHz P4.

The following examples illustrate the use of Luminosity. I made deliberately mild adjustments as I might do for a print, not dramatic eye-popping changes. Your mileage may vary.
| Original image: | Light shadow and highlight enhancement using the default settings: |
|
|
|
| Original (again): | Default intensity of changes, but using Gamma function and RGB method. Note two differences: shadow recovery is a little stronger due to the gamma setting, and sky and deep shadows are a little less saturated, as RGB setting moves colors toward gray: |
|
|
|
| Original image: | Filtered twice - first for shadow gamma to recover detail (shadows = 150; highlights = 100; function = gamma; defaults elsewhere), then for contrast enhancement in shadows (shadows = 150; highlights = 100; function = local contrast; defaults elsewhere) |
|
|
|
Luminosity is copyright 2004 Thomas Fiddaman. Use and distribute it freely. Other rights reserved. Not for resale or commercial distribution without prior written permission.
Luminosity includes absolutely no warranty express or implied - use at your own risk. Don't oversave your originals (duh).
Sorry, there's only a Windows version: Luminosity 0.1
I'm continuing to work on this out of my own curiousity. Rather than emailing me, please contribute to the Sony forum discussion at DPreview - otherwise I'll get too distracted from real work. I'm particularly interested in cases where this fails but other methods work well, and pathological cases of problems like haloes or posterization.