multivariate | MLx Home | MLx menu | MLx buttons | Index | What's New | PCA


These tools are for handling stacks of images in a manner somewhat similar to the stacks in NIH Image .

Stack contents

(Up to date Principcal Component Analysis example.)


When loading image files:

Stack menu (in the Stacks... button)

  • Windows -> usb8 Stack Makes stack out of scaled arrays of the windows. (Note - scaling of windows will affect stack, and vs vs.)
  • Slices -> Windows Makes windows out of individual slices.
  • ---
  • Set Scaling Limits Choices of individual or global scaling, normal or clipped, or input fixed limits.
  • ---
  • Averaged Profile Mouse rectangle, see plotted profile.
  • Sum Image Sums all images in stack - for reducing noise.
  • Movie Shows stack as movie.
  • Scale to Byte Scales stack (read from TIFF or RAE files or RAW file to a byte stack - as if made from individual windows.
  • Montage Makes one image (rather large) with selected slices.
  • ---
  • Slice Sum Prints total counts for current slice.

Note: Stacks are cropped by setting the rectangle and then saving as TIFF files or as a Raw file.


Windows can be converted to and from a stack. A folder full of TIFF, RAE (Charles Evans Inc. format for their Resistive Anode Encoder imaging detector) or GATAN images can be loaded and viewed in various ways. The stack can be stored as one large file that is readable by MacLispix and by VoxBlast for 3-D rendering, or as a new folder with TIFF files of the separate images. All of the images can be cropped in the same way, and stored as a stack (Raw format) or as separate TIFF files.

The slices in a stack are images that can be copied and analyzed separately using Mlx tools. The slices can be 8 or 16 bit integer images, or RGB color images. Images can be registered (horizontally and vertically) using a stack, and principal component analysis is available (a widget) for a stack of up to about 100 images.

The top window is the stack plot window, which shows the intensity at a point in the image at all levels down the stack. Clicking in this window displays the image in the window below of the slice corresponding to the clicked position of the plot. Clicking on the title bar of the image window will bring the plot window to the front and position it directly over the image window.

Stacks in MacLispix vs. NIH Image

The differences between Stacks in NIH Image and Stacks in MacLispix are these:

  1. Stacks are read directly from files or made from windows. NIH Image initially makes a stack from a group of homogeneous windows, but then can read and write the stack either as one file, or as a group of files.
  2. MacLispix retains the original image file names. (When a slice is duplicated as a separate image, the new image name is the original image name with the number of the slice appended to it.)
  3. Color images are not made from stack slices, as in NIH Image. Individual slices can be RGB color images.
  4. Stacks in MacLispix can have different bit depths: 8 bit, 16 bit, signed, unsigned, RGB color.
  5. Slice registration tools are available (gra y level or color stacks)
    1. The display can flicker between any two slices
    2. The arrow buttons translate one slice with respect to another.
    3. The individual slice offsets can be saved as a text file, or the stack can be registered and saved.
  6. Stacks can be cropped and saved: a rectangular selection can be saved as a stack -- either as an individual file or as a folder of TIFFs. (As of 6/2/97, the individual file can save 8bit pixel images - all other types must be saved as a folder of TIFFs.)
  7. Stacks of gray level images can be shown as a 'move' both in NIH Image and MacLispix. NIH Image shows the slices either in cyclic or oscillating order, and shows them more quickly and smoothly than MacLispix.
    1. NIH also shows movies of indexed color images, MacLispix does not.
    2. MacLispix shows movies of RGB color image, NIH Image does not.
  8. Stacks cannot be resliced or projected from different viewpoints, as in NIH Image.
  9. Stacks cannot be blobbed in 3dimensions (but neither can they in NIH Image).

Some uses of stacks:

  1. Real time depth plots - as mouse is 'dragged' around image.
  2. Click on depth plot to see image at that point.
  3. Averaged depth plots.
  4. Montages
  5. Movies
  6. Registration of images for movies, stereo pairs, or depth profiling.

Example applications: SIMS depth profiling.

Concept and Rationale

A three dimensional image, where each pixel represents a little volume of sample rather than a little area, is stored as a stack or series of two dimensional images or slices. The stack is treated as pancake layers so as to visually represent the volume: programs such as NIH Image, Spyglass Dicer, VoxelView and others provide means of slicing the volume in directions other than the original slices, and of viewing the sample from different angles and rendered with realistic transparency and shading.

The stack tool in MacLispix is for different types of data. Typical data for this tool consists of a series of images as above, except that the third dimension, the one going through the stack perpendicular to the slice planes, is not spatial but represents something else such as x-ray wavelength, time, or electron energy. There is no provision to duplicate the other rendering tools and show the stack as a volume. Rather, the third dimension is shown as a profile plot that changes as the cursor is moved over the image. Conversely, when the profile plot is clicked on, the appropriate slice or image is displayed. In this way, the user can navigate quickly the 'volume' of data. Often, a specific profile plot is the key to the analysis, since it might represent a concentration depth profile. The plot quickly highlights when changes occur, for time series images.

The profile plot represents the intensity value a pixel at the cursor position, going down through the stack. Often this plot is noisy, and is smoothed, an area average for each slice giving a point in the profile plot.

Registration tools are available for moving slices with respect to each other. The allignment of any two slices is clearly shown using either a fast or slow flicker between the two. Images can be misalligned in the electron microscope due to stage drift or small errors in stage positioning. When two images are brought into registration using the flicker tool, it becomes quite clear when they are exactly in register - that is when they are alligned to within a pixel. The relative position of the slices being compared is controled with the arrow keys, allowing rapid and accurate placement. The values of the displacements may also be of interest, and can be saved (or imported) as a text file.

General Information

Stacks are windows that represent a number of images. They are similar in concept to the stacks in NIH Image. They are used for depth profiles, movies, and specialized analysis (see RAE ).

Unlike NIH Image, these stacks are not used for color overlays. Also unlike NIH Image, the intensity scaling is handled differently: If the images are byte (8 bits per pixel), they are used as-is. If they are not, then the image is scaled clipping 1% of the outliers.

(For color overlays: duplicate the desired slices, and use the individual images to make color overlays with the RGB Overlay button in the multivariate window.)



Note: Certain kinds of files (TIFF, RAE, Raw and GATAN) can be loaded directly into a stack.


... Miscl Topics...

Raw Files top

Loads / writes the stack to a raw format file. This is the fastest way to store and recall stacks. Only one byte pixel values are stored (with this format, two byte integers would double the size of the file).

Slices->Windows top

Select one or more slices (from the front stack window). These individual images will be copied into normal image windows for profiles, color overlays, and other processing.

Averaged Profile

Needs a rectangle. Will use the rectangle last moused (in any image window), and plot the averaged profile (all pixels inside the rectangle, going down through the stack) in a plot profile window, from which the (summed) values can be printed. Will work for more than one stack at a time.

The profiles are plotted in a profile plot window - the same type of window that is generated by the profiles button. Print the data with the print data menu under this button. The output can go to a text file, or directly to a spread sheet such as Kalidograph.

Stats top

The limits menus here set the global limits parameter, which is used for scaling the stack to byte values.

Scale to byte top

This scales ALL of the pixels in the stack using global limits. If the limits have not been set, or have been cleared, it will ask for them.

Miscl Details top