Adv. Morphology

NI Vision Assistant

Adv. Morphology

Perform high-level operations on particles in binary images. Use these functions for tasks such as removing small particles from an image, labeling particles in an image, or filling holes in particles. The following controls are available.

  • Step Name—Name to give the step.
  • Advanced Morphology Operations
    Image Source Opens the original input image.
    Remove small objects Removes small objects. A small object is defined by the number of erosions (specified in Iterations) needed to remove the object.
    Remove large objects Removes large objects. A large object is defined by the number of erosions (specified in Iterations) that do not remove the object.
    Remove border objects Eliminates particles that touch the borders of an image.
    Fill holes Fills holes found in a particle. Holes are filled with a pixel value of 1.
    Convex Hull Computes the convex hull of objects.
    Skeleton Applies a succession of thinnings until the width of each object equals one pixel. The Skeleton L function uses an L-shaped structuring element. The Skeleton M function extracts the skeleton with more dendrites. The Skiz function behaves like the Skeleton M function but it affects background regions, rather than object regions.
    Separate objects Breaks narrow isthmuses and separates objects that touch.
    Label objects Produces a labeled image using grayscale values equal to the number of objects in the image plus the grayscale 0 used in the background area.
    Distance Assigns to each pixel a grayscale value equal to the shortest distance to the border of the object, which might be to a hole within the object.
    Danielsson Creates a distance map similar to the Distance function. Danielsson uses a more accurate algorithm than Distance.
    Segment image Partitions an image into segments, each centered on an object, so that the segments do not overlap and leave empty zones.
  • Mode (Skeleton)—Specifies the type of Skeleton function you want to perform. The Skeleton L function uses an L-shaped structuring element. The Skeleton M function extracts the skeleton with more dendrites. The Skiz function behaves like the Skeleton L function but it affects background regions, rather than object regions.
  • Structuring Element
    2D array used as a binary mask to define the neighbors of a pixel. You can modify the structuring element by clicking its cells. If a cell is black, it has a value of 1. If a cell is white (empty), it has a value of 0. If cell is black, the corresponding pixel is considered to be a neighbor and its value is used during the morphology operation.
  • Size—Size of the structuring element. Valid values include 3 x 3, 5 x 5, and 7 x 7.
  • Iterations—Specifies the number of 3 x 3 erosions to apply to the image.
  • Connectivity 4/8—Specifies how the algorithm determines if an adjacent pixel is the same or a different particle.
    Connectivity-8. All adjacent pixels are considered neighbors.
    Connectivity-4. Only pixels adjacent in the horizontal and vertical directions are considered neighbors.
  • Square/Hexagon—Specifies if the pixel frame is treated as a square or hexagon during the transformation.
    Square pixel frame. Each pixel is surrounded by eight neighbors. The vertical and horizontal neighbors have a distance d from the pixel. Diagonal pixels have a slightly greater distance because they are farther away from the central pixel.
    Hexagon pixel frame. Each pixel is surrounded by six neighbors. Each neighbor is at an equal distance from the central pixel.