Advanced

Advanced modules include computer vision algorithms.

(Jump to top)

Closing

Closing is the erosion of the dilation of an image. It’s used to remove pepper noise (small dark spots) and connect small bright cracks. See `this tutorial`_ for more information.


Supports 2D? Supports 3D? Respects masks?
YES YES NO

(Jump to top)

DilateImage

DilateImage expands bright shapes in an image. See `this tutorial`_ for more information.


Supports 2D? Supports 3D? Respects masks?
YES YES NO

(Jump to top)

DilateObjects

DilateObjects expands objects based on the structuring element provided. This function is similar to the “Expand” function of ExpandOrShrinkObjects, with two major distinctions-

  1. DilateObjects supports 3D objects, unlike ExpandOrShrinkObjects.
  2. In ExpandOrShrinkObjects, two objects closer than the expansion distance will expand until they meet and then stop there. In this module, the object with the larger object number (the object that is lower in the image) will be expanded on top of the object with the smaller object number.

Supports 2D? Supports 3D? Respects masks?
YES YES NO

(Jump to top)

Erosion

Erosion shrinks bright shapes in an image. See `this tutorial`_ for more information.


Supports 2D? Supports 3D? Respects masks?
YES YES NO

(Jump to top)

FillObjects

FillObjects fills holes within all objects in an image.

FillObjects can be run after any labeling or segmentation module (e.g., ConvertImageToObjects or Watershed). Labels are preserved and, where possible, holes entirely within the boundary of labeled objects are filled with the surrounding object number.

FillObjects can also be optionally run on a “per-plane” basis working with volumetric data. Holes will be filled for each XY plane, rather than on the whole volume.


Supports 2D? Supports 3D? Respects masks?
YES YES NO

(Jump to top)

GaussianFilter

GuassianFilter will blur an image and remove noise. Filtering an image with a Gaussian filter can be helpful if the foreground signal is noisy or near the noise floor.


Supports 2D? Supports 3D? Respects masks?
YES YES NO

(Jump to top)

(Jump to top)

MatchTemplate

The MatchTemplate module uses normalized cross-correlation to match a template to a single-channel two-or-three dimensional image or multi-channel two-dimensional image. The output of the module is an image where each pixel corresponds to the Pearson product-moment correlation coefficient between the image and the template. Practically, this allows you to crop a single object of interest (i.e., a cell) and predict where other such objects are in the image. Note that this is not rotation invariant, so this module will perform best when objects are approximately round or are angled in a relatively unified direction.


Supports 2D? Supports 3D? Respects masks?
YES NO NO

(Jump to top)

MedianFilter

MedianFilter reduces salt-and-pepper noise in an image while preserving borders.


Supports 2D? Supports 3D? Respects masks?
YES YES NO

(Jump to top)

MedialAxis

MedialAxis computes the medial axis or topological skeleton of a binary image. Rather than by sequentially removing pixels as in MorphologicalSkeleton, the medial axis is computed based on the distance transform of the thresholded image (i.e., the distance each foreground pixel is from a background pixel). See `this tutorial`_ for more information.


Supports 2D? Supports 3D? Respects masks?
YES YES NO

(Jump to top)

MorphologicalSkeleton

MorphologicalSkeleton thins an image into a single-pixel wide skeleton. See `this tutorial`_ for more information.


Supports 2D? Supports 3D? Respects masks?
YES YES NO

(Jump to top)

Opening

Opening is the dilation of the erosion of an image. It’s used to remove salt noise (small bright spots) and connect small dark cracks. See `this tutorial`_ for more information.


Supports 2D? Supports 3D? Respects masks?
YES YES NO

(Jump to top)

ReduceNoise

ReduceNoise performs non-local means noise reduction. Instead of only using a neighborhood of pixels around a central pixel for denoising, such as in GaussianFilter, multiple neighborhoods are pooled together. The neighborhood pool is determined by scanning the image for regions similar to the area around the central pixel using a correlation metric and a cutoff value. See `this tutorial`_ for more information.


Supports 2D? Supports 3D? Respects masks?
YES YES NO

(Jump to top)

RemoveHoles

RemoveHoles fills holes smaller than the specified diameter.

This module works best on binary and integer-labeled images (i.e., the output of ConvertObjectsToImage when the color format is uint16). Grayscale and multichannel image data is converted to binary by setting values below 50% of the data range to 0 and the other 50% of values to 1.

The output of this module is a binary image, regardless of the input data type. It is recommended that RemoveHoles is run before any labeling or segmentation module (e.g., ConvertImageToObjects or Watershed).


Supports 2D? Supports 3D? Respects masks?
YES YES NO

(Jump to top)

RemoveObjectsBySize

RemoveObjectsBySize removes objects smaller or larger than the specified diameter.


Supports 2D? Supports 3D? Respects masks?
YES NO NO

(Jump to top)

ShrinkToObjectCenters

ShrinkToObjectCenters will transform a set of objects into a label image with single points representing each object. The location of each point corresponds to the centroid of the input objects.

Note that if the object is not sufficiently round, the resulting single pixel will reside outside the original object. For example, a ‘U’ shaped object, perhaps a C. Elegans, could potentially lead to this special case. This could be a concern if these points are later used as seeds or markers for a Watershed operation further in the pipeline.


Supports 2D? Supports 3D? Respects masks?
YES YES NO

(Jump to top)

Watershed

Watershed is a segmentation algorithm. It is used to separate different objects in an image. For more information please visit the scikit-image documentation on the Watershed implementation that CellProfiler uses.

Note, when using marker-based Watershed that it is typical to use the input binary image as the mask. Otherwise, if the mask is None, the background will be interpreted as an object and Watershed may yield unexpected results.


Supports 2D? Supports 3D? Respects masks?
YES YES YES

(Jump to top)