NORMTIFF(1)

NAME
normtiff - tone-map and convert RADIANCE picture or HDR TIFF to standard TIFF

SYNOPSIS
normtiff [ options ] input output.tif

DESCRIPTION
Normtiff prepares a Radiance picture or high dynamic-range TIFF for output to a display or hard copy device. If the dynamic range of the scene exceeds that of the display (as is usually the case), normtiff will compress the dynamic range of the picture such that both dark and bright regions are visible. In addition, certain limitations in human vision may be mimicked in order to provide an appearance similar to the experience one might have in the actual scene.

Output is always an uncompressed RGB TIFF, which must be named on the command line along with the input file. If the input file has a ".tif" or ".tiff" extension, normtiff attempts to read it as a TIFF. Otherwise, normtiff first tries opening it as a RADIANCE picture, only opening it as a TIFF if it fails header inspection. (See the getinfo(1) program.) If the input is neither a RADIANCE picture nor a high dynamic-range TIFF, the program reports an error and exits.

The following command line options are understood. Since this program is very similar to pcond(1), several of the switches are identical.

-b  Toggle 8-bit black and white (grayscale) TIFF output. If the input is a grayscale TIFF, this switch is automatically selected. Otherwise, the output defaults to 24-bit RGB.

-z  Output LZW-compressed TIFF (smaller file).

-h  Mimic human visual response in the output. The goal of this process is to produce output that correlates strongly with a person's subjective impression of a scene. This switch turns on both the -s and -c switches, described below.

-s  Toggle the use of the human contrast sensitivity function in determining the exposure for the image. A darker scene will have relatively lower exposure with lower contrast than a well-lit scene.

-c  Toggle mesopic color correction. If parts of the image are in the mesopic or scotopic range where the cone photoreceptors lose their efficiency, this switch will cause a corresponding loss of color visibility in the output and a shift to a scotopic (blue-dominant) response function.

-l  Toggle the use of a linear response function versus the standard dynamic range compression algorithm. This may make some parts of the resulting image too dark or too bright to see.

-u Ldmax
    Specifies the top of the luminance range for the target output device. That is, the luminance (in candelas/m^2) for an output pixel value of (R,G,B)=(255,255,255). This parameter affects tone mapping only when the -s switch is on. The default value is 100 cd/m^2.

-d Lddyn
    Specifies the dynamic range for the target output device, which is the ratio of the maximum and minimum usable display luminances. The default value is 32, which is typical for CRT monitors.

-p xr yr xg yg xb yb xw yw
    Specifies the RGB primaries for the target output device. These are the 1931 CIE (x,y) chromaticity values for red, green, blue and white, respectively.

-g gamma
    Specifies the output device gamma correction value. The default value is 2.2, which is appropriate for most CRT monitors. (A value of 1.8 is common in color prepress and color printers.)

EXAMPLES
To convert a RADIANCE picture to an 8-bit grayscale TIFF:

    normtiff -b scene.hdr sceneb.tif

To condition a high dynamic-range TIFF for a particular film recorder with known color primaries, dynamic range and gamma response:

    pcond -d 50 -g 2.5 -p .580 .340 .281 .570 .153 .079 .333 .333 orig.tif filmrgb.tif

To simulate human visual response on a monitor with known maximum luminance:

    normtiff -h -u 80 scene.hdr sceneh.tif

REFERENCE
Greg Ward Larson, Holly Rushmeier, Christine Piatko, ``A Visibility Matching Tone Reproduction Operator for High Dynamic Range Scenes,'' IEEE Transactions on Visualization and Computer Graphics , December 1997.

http://positron.cs.berkeley.edu/gwlarson/pixformat/

AUTHOR
Greg Ward Larson

ACKNOWLEDGMENT
This work was supported by Silicon Graphics, Inc.

SEE ALSO
getinfo(1), pcond(1), pflip(1), pvalue(1), protate(1), ra_xyze(1), rpict(1), ximage(1)