Segmentation Analysis

The Wolfram Language includes a variety of low- and high-level image segmentation techniques from clustering, watershed and region growing to semantic and object segmentation using neural networks. Segmentation functions can be used together with a rich set of functions for pre- and post-processing for more robust results as well as analysis functions performed on the result of the segmentation.

Foreground-Background Separation

RemoveBackground separate background from the foreground of the image

ImageSegmentationFilter segment an object or region in an image

Binary Segmentation

Binarize segmentation by thresholding pixel intensities

MorphologicalBinarize  ▪  LocalAdaptiveBinarize  ▪  RegionBinarize  ▪  ChanVeseBinarize

Multi-Component Segmentation

ImageSegmentationComponents high-level segmentation using neural networks

ClusteringComponents segmentation based on cluster analysis

WatershedComponents segmentation based on watershed methods

GrowCutComponents segmentation using cellular automata evolution

MorphologicalComponents find morphologically connected components

ImageForestingComponents segmentation based on pixel graph connectivity

ArrayComponents find identical components

Object Segmentation

ImageCases, ImageContents detect, recognize and segments objects in an image

Semantic Segmentation

Neural networks for semantic segmentation.

"YOLO V8 Segment Trained on MS-COCO Data"  ▪  "Ademxapp Model A1 Trained on Cityscapes Data"  ▪  "Dilated ResNet-22 Trained on Cityscapes Data"  ▪ 

Component Analysis

ComponentMeasurements shape and color analysis

SelectComponents  ▪  DeleteSmallComponents  ▪  DeleteBorderComponents

Colorize color every segment differently

HighlightImage highlight region of interest

Image Preparation

ColorQuantize reduce the number of distinct colors in an image

FillingTransform reduce noise to create smooth regions in an image

GradientFilter, RangeFilter create an edge map from an image

FindThreshold  ▪  Threshold  ▪  ImageClip