Store Index - Photoshop / Plug-Ins Store:
by Chris Russ, John Russ
CD-ROM 3rd edition (January 5, 1999)
Reindeer Games, Inc.
The Image Processing Tool Kit comprises more than 150 Photoshop-compatible plug-ins (for both Mac and Windows) implementing image processing and measurement tools that provide as much or more capability than many high-end dedicated image analysis programs for a fraction of the cost, with algorithms that correspond to the methods described in J. C. Russ "The Image Processing Handbook" Third Edition.
Compatible with Adobe Photoshop and many similar image acquisition and editing programs (including among others Paint Shop Pro, Image Pro Plus, Canvas, NIH-Image, and Digital Darkroom, which is provided on the CD), these routines allow users to perform subtle and poweful image processing and enhancement, as well as quantitative and scientific image analysis.
The plug-in modules are organized into a series of hierarchical sub-menus that include extensive spatial domain processing (linear operations based on kernel arrays, nonlinear ranking filters, and many of the most modern edge and texture finders), Fourier space processing (including convolution and deconvolution), color processing, interactive and automatic thresholding and segmentation, morphological operators (based on both neighborhood pixels and the Euclidean distance map), Boolean and mathematical operations, and extensive measurement capabilites (including stereological measurements using grids).
New in version 3 is full recording of all plug-ins and entered values in Actions, expanded measurement capabilities including stored calibration and density curves, distribution and scatter plots for all measured parameters, advanced processing in both spatial and Fourier domains, plus new color processing and thresholding tools. The CD includes more than 300 images and a greatly expanded 350+ page tutorial with detailed step-by-step examples, virtually an entire course in image analysis.
Photoshop Plug-Ins Contents:
Process : Photoshop does contain fairly extensive image processing facilities, but these plug-ins add those features not present in the host program that are particularly useful in technical applications. Processing is normally used to correct image defects, enhance visibility of selected structures, or extract characteristics such as texture or orientation so that thresholding can be used to separate features from background. Frei and Chen, Kirsch, Sobel Magnitude, Stochastic Edge Detection, Difference of Gaussians, and Variance filters are generally used for edge enhancement. Haralick and Texture (actually a Hurst fractal dimension) are texture filters, and Variance also functions that way in some images. The Sobel Direction function is an orientation sensitive filter. Extremum and Kuwahara are step-sharpening operators. Local Equalization maximizes local contrast while suppressing large scale variations. The Olympic filter and Conditional Smoothing preserve edge sharpness while performing noise removal. Convolve allows the user to apply multiplicative filters like the built-in Custom filter in Photoshop but larger (up to 95x95) and using real numbers rather than being limited to integers, by loading the coefficients from a standard ascii text file (examples are provided on the CD).
Rank : Rank operators are nonlinear image processing filters that rank the pixels in a neighborhood (for most of these, a 5 pixel wide circle) in brightness order and then keep the Brightest, Darkest or Median value for the central pixel. Range is a texture and edge extraction filter that keeps the difference between the brightest and darkest values. Hybrid median uses a multiple neighborhoods to preserve corners better than isotropic rank operators. Ranking in color space, and grey-scale Opening and Closing operators with adjustable number of iterations, are also provided. The Top Hat filter ranks in two different size (adjustable) neighborhoods to detect pixels that are either darker or brighter than their surroundings, while the Rolling Ball filter uses the same logic to remove such pixels as noise. An Adjustable Radius rank operator is provided for round neighborhoods, and the Hit-or-Miss operator allows the user to define the pixel neighborhood that is used for the ranking
Math : The math routines provide ways to combine two grey scale images together. In addition to the basic arithmetic operations (Add, Subtract, Multiply, Divide, Absolute Difference), it is possible to keep the Brighter or Darker pixel value at each location, and to Blend together any proportions of two images. Like the Boolean operations (below), these use two images and so there is a selection to setup the second image (which is not altered in the process) before selecting the main image and performing the desired operation. These operations all automatically scale the resulting image to the full available grey scale range of the display.
Adjust : Adjustment routines modify the acquired image to correct defects such as shading (nonuniform illumination) and non-square pixels. Autolevel adjusts the brightness across the image by using a polynomial fit for background brightness as a function of X, Y position, which is automatically determined based on the assumption that the brightest or darkest phase present should be the same everywhere. The program divides the image into a grid, finds the brightest or darkest point in each region, and fits a polynomial to the points (rejecting statistical outliers). This function is then used to level the overall brightness. AutoContrast uses similar logic to find both brightest and darkest values and dynamically scales the image contrast between them across the image. It is also possible to fit a background function to selected portions of an image and then remove it from the entire image. An Interactive contrast adjustment allows adjustment of limits and gamma manually or automatically. PixelSquarer allows you to enter the dimensions in pixels of a reference square that has been acquired, and then interpolates between the horizontal pixel values to create an image in which the feature is square. Since this distortion is normally a constant for a given acquisition device, this allows you to easily correct other images for processing and measurement (where most functions assume that the pixels are square). The routine can either compress or expand the image horizontally. Equalization adjusts pixel values so that the cumulative histogram becomes a straight line, emphasizing subtle gradients in the original image.
Color : Photoshop contains within its basic functions many routines for dealing with color images. The additional functions listed under Color provide a Color Median filter to examine the 3x3 neighborhood of pixels around each location and select the pixel color values which are median in the sense that the color coordinates have the smallest sum of Euclidean distances to all of the neighboring pixel coordinates. The Optimal Grey reduction of a color image produces a monochromatic grey scale along an axis in RGB space that gives the greatest mathematical separation of the color coordinate values for the particular image. Both of these functions are described in technical papers by John Russ in the Journal of Computer Assisted Microscopy, volume 7, 1995. The Color Filter function applies an arbitrary color filter to an image or allows separating an image into RGB or HSI planes. A general purpose Color Space conversion routine transforms images between RGB, HSI and L*a*b space, while it is possible to Transfer one color plane (R, G, B, H, S or I) from one image to another. A Tristimulus correction routine allows input of measured camera factors to obtain true color images. Routines to invert the brightness or maximize saturation without altering hue are also provided, along with color-specific Morphology and Edge Enhancement functions. In addition to these specific color image procedures, the other processing routines in the IP Tool Kit also correctly deal with either RGB color or grey scale images.
FFT : The FFT functions provide comprehensive facilities for transforming images to and from the Fourier or Frequency domain, filtering it there, and retransforming it. Transform image calculates the FFT of the image and displays the power spectrum (log magnitude and phase). Inverse Transform calculates the real space image from the FFT stored by a previous transform operation. Apply Filter uses the current image as a multiplicative filter to scale the magnitude of the FFT. It can be used to selectively remove information corresponding to particular frequencies and directions. The convention is that white in the mask corresponds to zero and black to 1.0, and intermediate grey scales are treated proportionately. Power Spectrum and Phase can be used to redisplay the data from the stored FFT. Inverse and Filter applies the mask in the current image and then performs the inverse transform in a single step. Symmetry allows you to mark the power spectrum image with a manual tool to locate specific spikes or other features, and then duplicate one half of the power spectrum onto both halves. Generate Mask provides facilities for generating symmetrical high, low or bandpass frequency masks, as well as sector masks. Profile commands display various profiles across the power spectrum (at 90 and 45 degree angles or averaged over all directions). There are also powerful Cross-Correlation, Convolution and Deconvolution operators that use two images (often called Dyadic operations) which are not restricted in size (and need not be the same). Cross-correlation finds target patterns in images, Convolution applies one image as a filter to another, and Deconvolution can remove artefacts introduced by the imaging system such as out-of-focus blur or motion blur.
Morphology : Morphological operations on black and white (binary) images add or remove pixels from features depending on whether the neighbor pixels are black or white. Erode and Dilate are the basic removal and addition routines, while Open and Close perform the same operations in pairs. The Parameters selection allows entering the number of repetitions and neighbor criteria for action (the number of adjacent pixels of the opposite color that must be exceeded before pixel black/white reversal takes place). Fill Holes fills in any enclosed regions within features. Outline keeps only the outer hull or custer of features, while Skeletonize removes all pixels except those which form the midline that contains basic topological information about feature shape (it also codes the end points and nodes for subsequent counting). Prune removes branches from the skeleton that have end points while Thicken converts a standard 8-connected skeleton to a 4-connected path that can separate the pixels on either side from touching.
EDM : The EDM functions offer those operations that are based on the Euclidean Distance Map of the image. This replaces each black pixel in a binary image with a grey scale value that represents the distance of that pixel from the nearest background (white) pixel in any direction. It is useful in morphological operations such as Erosion, Dilation, Opening and Closing, providing more isotropic results than conventional morphological processing. The Watershed function creates and uses that distance map to separate touching convex features.
Boolean : Boolean functions are used to combine binary images using various logical combinations. The basic operations are AND, OR, Exclusive OR and NOT. Most of these are pixel-by-pixel methods that define the resulting pixel value as black or white depending on the values of the pixel in two original images, but one (Feature-AND) bases the comparison on entire features (contiguous sets of pixels) in the two images. Mask places all non-white pixels from one image into the second. Except for NOT (which inverts an image, interchanging black for white), these functions require two images. The procedure is to use the "Setup 2nd Image" selection to store a copy the image internally so that it can be used in the subsequent Boolean operation. Feature-And keeps entire features if any part of the feature overlaps a feature in the second image; amongst other uses this allows one image to act as a set of markers to select features from a second one.
Threshold : Photoshop offers a manual bi-level thresholding operator that separates dark from light pixels as the user slides a cursor across the histogram. These plug-ins offer additional functionality to select an arbitrary intermediate threshold slice of brightness values, either manually or with automatic assistance according to several algorithms, including least change in area, least change in perimeter, a fixed percentage of area, and a statistical F-test. Contour provides contour plots of images with lines of iso-brightness. Thresholding in HSI Space (either interactively or by using the eyedropper tool and entering a color range) facilitates selecting features by color.
Measure : Photoshop does not contain very many facilities for image and feature measurement. These plug-ins add that functionality with a very complete set of Global measurements and also Feature measurements. The global measurements are appropriate for stereological descriptions of microstructure, either manual stereology applying a variety ofgrids for point and intersection counting, or automatically determined values such as volume fraction, specific surface, ASTM grain size, etc. The feature measurements can be used to write disk files of data in ascii text format which can be read for analysis by most spreadsheet and statistical analysis programs. The 29 measured parameters for each feature include area, perimeter, maximum and minimum Feret's diameters, formfactor, location and orientation, and both RGB and HSI color values. Any of the feature measurement parameters can be used to label or color the features in the image. Measurement also provides a Cutoff function to eliminate features below a selected size, or those which touch two or four edges of the field of view (necessary for unbiased counting and measurement of random fields). The program also performs statistical corrections for edge-touching objects. Graphic presentation of distributions and correlation plots for any of the measured parameters are generated. The Select function keeps or eliminates features from the image according to the measurement values. Measurement operators also allow saving to disk the data from area histograms and brightness profiles. Linear Hough transforms (forward and inverse) are also provided as a tool for locating and measuring feature alignments, and the length, number of end points and number of branch points in skeletons are measured.
Render : Images of surfaces are often presented with elevation represented by grey scale (e.g. from atomic force microscopes, radar imagery, etc.). Presentation of other types of images in this mode can also be useful for visualization purposes. Functions are provided to Render such surfaces in true perspective with color or photorealistic shading, and to show surface Relief or produce a full Phong-rendered representation. Routines are also included to generate surfaces with Sinusoid, Random, Extrusion and Fractal characteristics. An additional set of routines perform various measurements on surface images including statistical measures (Sa, Sq, Sz, Firestone-Abbott curves, fractal dimension, etc.)
Related: CorelDRAW Wire
Other Topic: Programming Network | Language Learning Network | PC Games | Canon Digital Camera Review | MS Windows XP Resources
in association with amazon.com, amazon.ca, amazon.co.uk
Contact Photoshop Wire Copyright © 06 Photoshop Wire