Process Menu

Smooth
Blurs the active image or selection. This filter replaces each pixel with the average of its 3x3 neighborhood.

Sharpen
Increases contrast and accentuates detail in the image or selection, but may also accentuate noise. This filter uses the following weighting factors to replace each pixel with a weighted average of the 3x3 neighborhood.

    -1 -1 -1
    -1 12 -1
    -1 -1 -1

Find Edges
Uses a Sobel edge detector to highlight sharp changes in intensity in the active image or selection. Two 3x3 convolution kernels (show below) are used to generate vertical and horizontal derivatives. The final image is produced by combining the two derivatives using the square root of the sum of the squares.

     1  2  1     1  0 -1
     0  0  0     2  0 -2
    -1 -2 -1     1  0 -1

Equalize
Uses histogram equalization to enhance image contrast. Create a selection and the equalization will be based on the histogram of the selection. Uses a modified algorithm that takes the square root of the histogram values. Hold the alt key down to use the standard histogram equalization algorithm.

Noise>
Use the commands in this submenu to add noise to images or remove it.

Add Noise
Adds random noise to the image or selection. The noise is Gaussian (normally) distributed with a mean of zero and standard deviation of 25.

Add More Noise
Adds Gaussian noise with a mean of zero and standard deviation of 75.

Salt and Pepper
Adds salt and pepper noise to the image or selection by randomly replacing 2.5% of the pixels with black pixels and 2.5% with white pixels. Note: this command only works with 8-bit images.

Despeckle
This is a median filter. It replaces each pixel with the median value in its 3 x 3 neighborhood. This is a time consuming operation because, for each pixel in the selection, the nine pixels in the 3x3 neighborhood must be sorted and the center pixel replaced with the median value (the fifth). Median filters a good at removing salt and pepper noise.

Shadows>
Commands in this submenu produce a shadow effect, with light appearing to come from a direction corresponding to the command name. The commands use Convolve3x3, ImageJ's 3x3 convolution function. Two of the convolution kernels are shown in the illustration. Shadows Demo uses all eight kernels to demonstrate the speed of Convolve3x3.

Binary>
This submenu contains commands that process binary (black and white) images. These commands assume objects are black and background is white. Some of the commands (Erode, Dilate, Open and Close) also work with continuous tone images

Threshold
Converts grayscale images to black and white and color images to the eight primary colors. The threshold level is determined by analysing the histogram of the current selection, or of the entire image if there is no selection. Uses a technique described originally by Ridler & Calvard in "Picture Thresholding Using an Iterative Selection Method", IEEE transactions on Systems, Man and Cybernetics, August, 1978.

Erode
Replaces each pixel with the minimum (lightest) value in the 3x3 neighborhood. With binary images, removes pixels from the edges of black objects. With grayscale and color images, reduces the size of objects that are darker than background.

Dilate
Replaces each pixel with the maximum (darkest) value in the 3x3 neighborhood. With binary images, adds pixels to the edges of black objects. With grayscale and color images, increases the size of objects that are darker than background.

Open
Performs an erosion operation, followed by dilation. With binary images, this smoothes objects and removes isolated pixels.

Close
Performs a dilation operation, followed by erosion. With binary images, this smoothes objects and fills in small holes.

Set Iterations...
Allows you to specify the number of times erosion, dilation, opening, and closing are performed. The default is one.

Outline
Generates a one pixel wide outline of black objects in a binary image.

Skeletonize
Repeatably removes pixels from the edges of objects in a binary image until they are reduced to single pixel wide skeletons. Objects are assummed to be black and backgound white.

Distance Map
Generates a Euclidian distance map (EDM). Each foreground (black) pixel in the binary image is replaced with a gray value equal to that pixel's distance from the nearest background (white) pixel.

Ultimate Points
Generates the ultimate eroded points (UEPs) of the EDM. Requires a binary image as input. The UEPs represent the centers of particles that would be separated by segmentation. The UEP's gray value is equal to the radius of the inscribed circle of the corresponding particle. Note that the EDM is smoothed which results in fewer noise induced errors but causes the gray values of the UEPs to be slightly lower, i.e. it slightly reduces the estimated particle sizes.

Math>
The commands in this submenu add (subtract, multiply, etc.) a constant to each pixel in the active image or selection. When the result value overflows/underflows the legal range of the image's data type, the value is reset to the maximum/minimum value. With stacks, selections are ignored and the specified operation is performed on all slices in the stack.

Add...
Adds a constant to the image. With 8-bit images, results greater than 255 are set to 255. With 16-bit signed images, results greater than 65,535 are set to 65,535.

Subtract...
Subtracts a constant from the image. With 8-bit and 16-bit images, results less than 0 are set to 0.

Multiply...
Multiplies the image by the specified real constant. With 8-bit images, results greater than 255 are set to 255. With 16-bit signed images, results greater than 65,535 are set to 65,535.

Divide...
Divides the image by the specified real constant. Attempts to divide by zero will be ignored.

AND...
Does a bitwise AND of the image and the specified binary constant.

OR...
Does a bitwise OR of the image and the specified binary constant.

XOR...
Does a bitwise XOR of the image and the specified binary constant.

Min...
Pixels in the image with a value less than the specified constant are replaced by the constant.

Max...
Pixels in the image with a value greater than the specified constant are replaced by the constant.

Gamma...
Applies the function f(p) = (p/255)^gamma*255 to each pixel (p) in the image or selection, where 0.1 <= gamma <= 5.0. For RGB images, this function is applied to all three color channels. For 16-bit images, the image min and max are used for scaling instead of 255.

Log...
Applies the function f(p) = log(p) * 255/log(255) to each pixel (p) in the image or selection. For RGB images, this function is applied to all three color channels. For 16-bit images, the image min and max are used for scaling instead of 255.

Reciprocal
Generates the reciprocal of the active image or selection. Only works with 32-bit real images.

Filters>
This submenu contains miscellaneous filters and plugin filters that have been installed by the Plugins/Utilities/Install Plugin command. For more information, refer to the Hypermedia Image Processing Reference at
http://www.dai.ed.ac.uk/HIPR2/. Click on Index and look up the keywords convolution, Guassian, median, mean, erode, dilate and unsharp.

Convolve...
Does spatial convolution using a kernel entered into a text area. A kernel is a matrix whose center corresponds to the source pixel and the other elements correspond to neighboring pixels. The destination pixel is calculated by multiplying each source pixel by its corresponding kernel coefficient and adding the results. There is no arbitrary limit to the size of the kernel but it must be square and have an odd with.

Rows in the text area must all have the same number of coefficients, the rows must be terminated with a carriage return, and the coefficients must be separated by one or more spaces. Kernels can be pasted into the text area using the control-V keyboard shortcut. Checking Normalize Kernel causes each coefficient to be divided by the sum of the coefficients, preserving image brightness.

The kernel shown is a 9 x 9 "Mexican hat", which does both smoothing and edge detection in one operation. Note that kernels can be saved in a text file (using copy (control-C) and paste), displayed as an image using File/Import/As Text Image, scaled to a reasonable size using Image/Adjust/Size, and plotted using the Surface Plot plugin.

Guassian Blur...
Smooths the current image by doing a convolution using a square, Gaussian (bell-shaped) kernel. The width of the kernel, in pixels, is 2*radius+1, where radius is entered into a dialog box.

Median...
Reduces noise in the active image by replacing each pixel with the median of the neighboring pixel values.

Mean...
Smooths the current image by replacing each pixel with the neighborhood mean. The size of the neighborhood is specified by entering its radius in a dialog box.

Minimum...
This filter does grayscale erosion by replacing each pixel in the image with the smallest pixel value in that pixel's neighborhood.

Maximum...
This filter does grayscale dilation by replacing each pixel in the image with the largest pixel value in that pixel's neighborhood.

Unsharp Mask...
Sharpens and enhances edges by subtracting an unsharp (smoothed) version of the image from the original.

Image Calculator...
Performs arithmetic and logical operations between two images selected from popup menus. Image1 or both the Image1 and Image2 can be stacks. If both are stacks, they must have the same number of slices. Image1 and Image2 must be the same data type but do not have to be the same size.

You can select one of 12 operators from the Operation: popup menu. Check Create New Window and a new image or stack will be created to hold the result. Otherwise, the result of the operation replaces some or all of Image1. With float images, pixels resulting from division by zero are set to the largest possible value (3.4e38). This value can be redefined in Edit/Options/Miscellaneous/Divide by Zero Value

Add img1 = img1+img2
Subtract img1 = img1-img2
Multiply img1 = img1*img2
Divide img1 = img1/img2
AND img1= img1 AND img2
OR img1 = img1 OR img2
XOR img1 = img1 XOR img2
Min img1 = min(img1,img2)
Max img1 = max(img1,img2)
Average img1 = (img1+img2)/2
Difference img1 = |img1-img2|
Copy img1 = img2

In these examples, the source and destination have inverted LUTs so zero pixels are white. Operations on images with non-inverted LUTs, and RGB images, will not produce the same results.

Subtract Background...
Removes smooth continuous backgrounds from gels and other images. Uses a rolling ball algorithm inspired by Stanley Sternberg's article, "Biomedical Image Processing", IEEE Computer, January 1983. Based on NIH Image Pascal code written by Michael Castle and Janice Keller of the University of Michigan Mental Health Research Institute. The Rolling Ball Radius should be at least as large as the radius of the largest object in the image that is not part of the background.

Repeat Command
Reruns the previous command. The Undo and Open commands are skipped. For a shortcut, type shift-R.

| Analyze Menu | Contents | Home |