Back to Index 

Multi Menu


The Multi menu provides a wide variety of useful commands for composing images and transforming images from one domain or format into another.

The Combine and Compare commands each create a new image from a composition of two images. The Principal Components Transform and Principal Components Stretch commands perform spectral decorrelation on multi-band images (min=2 bands). The RGB -> HSV, HSV -> RGB, BIL -> BSQ and BSQ to BIL commands each perform special operations on three-band (color) images. The Complex -> Real, and Real -> Complex commands convert complex format images to real format images and vice-versa. The Rotate Image Cube Axes command performs spatial-spectral rotation on multi-band images.


Combine

The Combine command computes a weighted combination of two images. Parameters are the two images, their respective weights, and the combination function. The two images must have the same number of bands, lines/band, and pixels/line. Each image is chosen from a pop-up menu that lists all images that are currently open. The combination function is chosen from a pop-up menu.

The graylevel of a pixel in the output image O is computed from the graylevels of the corresponding pixels in the input images I and J as

where and are the weights for the first and second image, respectively, as specified in the dialog. Note that if you want to compute the quotient of images I and J, must not be equal to zero; if equals zero, then is set to (or, if equals zero and k equals one, is set to zero).

The Combine command is useful, for example, for detecting changes in images (minus "-"), or for overlaying binary text or graphics onto an image ("min" and "max").


Compare

The Compare command computes a binary output image, representing the result of a comparison between corresponding pixels in two input images. Parameters are the two input images and the comparison function. The two images must have the same number of bands, lines/band, and pixels/line. Each image is chosen from a pop-up menu that lists all images that are currently open. The comparison function is chosen from a pop-up menu.

The input images are treated as binary images in the case of the logical connectives "and," "or," "xor," and "not;" with a graylevel value of zero being the equivalent of the boolean value "false," and all other graylevel values being equivalent to "true."

The graylevel of a pixel in the output image O is computed from the graylevels of the corresponding pixels in the input images I and J as: (Note: " != " is equivalent to "not equal")

Note that the output image is a function of only the second input image in the case of the "not" combination function.

The Compare command is useful for creating and manipulating binary images and masks.


Principal Components Transform

Principal Components Transform

The Principal Components Transform (PCT) command performs a Karhunen-Loeve (KL) transform on the input image. The subsample increment parameter defines the pixel and line increment for graylevel subsampling. The PCT is a feature space transformation designed to remove the band-to-band (spectral) correlation often found in multi-spectral images. See the Principal Components Stretch command for a diagrammatic view of the PCT.

The graylevel of a pixel in the output image O is computed from the graylevel of the corresponding pixel in the input image I as

where the input image is of size m-by-n-by-o, and , 1 <= l <= m, are the eigenvectors of the covariance matrix of the input image. The covariance matrix is computed among the bands of the input image. The subsample increment parameter allows for a tradeoff between accuracy and speed in the calculation of the covariance matrix. A smaller value uses more pixels to compute the statistics and is therefore relatively slow; a larger value uses fewer pixels and is faster.

Please see Robert A. Schowengerdt, Remote Sensing: Models and Methods for Image Processing, Academic Press, San Diego, CA, 1997, pp. 187-197 for further discussion of this transformation.

The Principal Components Transform command decorrelates the different bands of an image and orders the transformed bands by decreasing variance.


Principal Components Stretch

The Principal Components Stretch command (also known as a Decorrelation Stretch) performs a color contrast enhancement based on decorrelating the spectral bands. For example, if three correlated bands are displayed and their pixel value distributions lie along a straight line in the color cube from the darkest to the brightest pixels, then very little of the available color space has been used. Differences in pixel values will be very difficult to see.

The Principal Components Stretch command performs a Principal Components Transform (PCT) to decorrelate the bands, equalizes the variance among the bands (to fill the color space), and then performs an inverse PCT to transform the results back to RGB space. The result enhances the contrast of the original image. The procedure is shown graphically as follows:

 

 

Please see Robert A. Schowengerdt, Remote Sensing: Models and Methods for Image Processing, Academic Press, San Diego, CA, 1997, pp. 219-220 for further discussion of this transformation.


RGB -> HSV

The RGB -> HSV command transforms a color image from the RGB (red-green-blue) color space to the HSV (hue-saturation-value) space. The transformation requires that all graylevel values in the input image be equal to or greater than zero.

The graylevel of a pixel in the output image O is computed from the graylevel of the corresponding pixel in the input image I as

where hsv( ) is the color space transformation function. This function is described in detail in A. R. Smith, "Color Gamut Transform Pairs," Computer Graphics, Vol. 12, No. 3 (August 1978), pp. 12—19.

The RGB -> HSV command is the functional inverse of the HSV -> RGB command described below.


HSV -> RGB

The HSV -> RGB command transforms a color image from the HSV (hue-saturation-value) color space to the RGB (red-green-blue) space. The transformation requires that all graylevel values in the input image be in the range .

The graylevel of a pixel in the output image O is computed from the graylevel of the corresponding pixel in the input image I as

where rgb( ) is the color space transformation function. This function is described in detail in A. R. Smith, "Color Gamut Transform Pairs," Computer Graphics, Vol. 12, No. 3 (August 1978), pp. 12—19.

The HSV -> RGB command is the functional inverse of the RGB -> HSV command described above.


BIL -> BSQ (RGB to 3 Bands)

The BIL -> BSQ (band-interleaved-by-line to band-sequential) command separates a three-band (color) image into three single-band images.

The graylevel of a pixel in the output image R, G, or B is computed from the graylevel of the corresponding pixel in the input image I as

The BIL -> BSQ command is useful for separating individual bands for further processing.


BSQ -> BIL (3 Bands to RGB)

The BSQ -> BIL (band-sequential to band-interleaved-by-line) command combines three single-band images into a three-band (color) image. Parameters are the three input images. The three input images must all be single-band and have the same number of lines/band and pixels/line. Each image is chosen from a pop-up menu that lists all images currently open.

The graylevel of a pixel in the output image O is computed from the graylevels of the corresponding pixels in the input images R, G, and B as

The BSQ -> BIL command is useful for composing three images into a color composite. Note that the output image will appear to be a grayscale image if the three input images are identical; however, it is nonetheless a three-band image.


Complex -> Real

The Complex -> Real command converts an input image in complex format to two images in real format. The command will separate a complex into either: (1) real and imaginary components, or (2) magnitude and phase components.

The graylevel of a pixel in the output images O and P are computed from the input image I as

where () represents the trigonometric arc tangent function.

The Complex -> Real command is useful for separating an image in complex format created by the Filter > FFT or Filter > FHT command into its separate components for further processing.


Real > Complex

The Real -> Complex command converts two input images in real format to one image in complex format. The command will compose the complex image from either: (1) real and imaginary components, or (2) magnitude and phase components. Both images default to the image in the frontmost window. The input images must have the same number of bands, lines/band, and pixels/line. Each image is chosen from a pop-up menu that lists all images currently open.

The graylevel of a pixel in the output image O is computed from the input images I and J as

where cos( ) and sin( ) represent the trigonometric cosine and sine functions.

The Real -> Complex command is useful for creating an image in complex format from two images in real format, as required by the Filter > FFT and Filter > FHT commands.


Rotate Image Cube Axes

The Rotate Image Cube Axes command allows for switching the relative view position of bands, lines, or pixels, as well as flipping the order of pixels on an axis.

When representing an image as a cube, pixels default to the x-axis, lines default to the y-axis, and bands default to the z-axis. tclSADIE displays a view of the image cube as seen from the positive z-axis. Most image processing functions are performed on the 2D view of the cube as seen from the positive z-axis as well.

Using the Rotate Image Cube Axes command, any data item (bands, lines, pixels) may be assigned to any axis (x, y, or z). For example, assigning bands to the x-axis and pixels to the z-axis is equivalent to a view from the negative x-axis. This rotation allows image processing on 2D views that might otherwise be difficult to perform.

Simply click on the pop-up menu under "To Axis:" to assign the data to the image cube axis. The order of the data along the axis may be reversed using the Normal and Flip checkbuttons. The result of the Flip operation is similar to mirroring.


Last Updated: August 2000
University of Arizona
Electrical and Computer Engineering Department
Digital Image Analysis Laboratory © 1999,2000