(These scale commands change the scaled copy of the image for
display. To make a 'permanently scaled' copy of an image for further
processing, use the scale
pixel operations.

There are two scale buttons. The one in the images collumn
can work on some or all of the displayed images. The one in the
Top Image collumn will work on the front image window. Scaling
operations affect only the a copy of the array that is used for
display. The original image array is not affected. This means
that any scaling operation can be 'undone' by scaling differently.

There is one exception: if the Use
Orig 8-bit parameter is Yes, then the scaled array and the
original array for 8 bit images are one and the same. This saves
memory when working on large 8 bit images.

The scaled arrays are used for the gray level image display,
color overlays, Concentration Histogram Images, and histograms.
All of these are therefore affected (or controled by) the scaling
operations.

Scaling
Options

linear This is the default.
The maximum of the image is white, and the minimum is black.

equalize This brings
out detail in the background - larg dim features.

fixed limits Manual
selection of the limits, or scaling images as a group. For the
latter, the global limits for the group are the default.

linear

Linear scaling: Limits are asked for. The defaults are the
last limits used, unless the control key is held down. In that
case the defaults are always the limits of the image array, (that
is the original data).

(I plan to add a mouse scaling function). Typing in the limits
is particularly useful for fixing the scaling so that a CHI will
have the desired axis limits.

Clipping: Values equal to or less than the specified minimum
are set to zero. Values equal to or greater than the specified
maximum are set to 255. Values in between are scaled linearly.

Scaling is done primarily for display or for histogramming
and scatter plots (CHI's).

These scaling options need a histogram to work. Due to a certain
programmer's laziness (me), these work only on fixnums or positive
integers. Therefore, they won't work for ratio images, images
with negative values (many difference images), etc. This is because
the integer images have natural bins (the value of the pixels),
whereas the other images have to have bins made for ranges of
values.

Rather than doing that, I've included the prescale option,
which in effect does the same thing: an array is scaled to integer
values, and then this array can be scaled for display. (See the
note about the prescale menu item, below.)

This is the same as linear scaling, except that the limits
are chosen so that the specified percentage of outlying pixels
are clipped.

This function is fast for integer pixels (fixnum images - unsigned
byte 8, for example) and slow for real valued images. This is
because a histogram is calculated and used for the integer images,
but the entire image is sorted for the real valued images. Making
a histogram for the real valued images requires histograms variable
bin size, which is more complicated than what I have time to do
right now. DSB

Equalize

Histogram equalization flattens the intensity distribution
histogram. The pixel intentensities are shifted while still maintaining
their monotonic relationship such that equal numbers of pixels
are assigned to each gray level. (The limited number of gray levels
causes the 'flattened' histogram to not be really flat, but to
have spikes or a comb shaped appearance.) The result is that detail
appears in the image background or in features that cover a large
area of the image, while small objects become all black or white,
and tend to loose their detail. (Roughly, small objects have few
pixels, thus few gray levels.) See the example
in the tutorial article. Also see Russ
1990, pp. 34, 35

This is NOT linear scaling. Axes are not implemented for histograms
or CHI's for this type of scaling. For a group of images, each
image is equalized by itself - a group or cumulative histogram
is not used (I don't know why you would want it).

Fixed
Limits

Manually input what values in the image will be black (0) and
white (255). For a group of images, the global limits of the selected
group is presented as the default. All of the images in the group
will be scaled to these limits.