Segmentation

Revision as of 12:01, 26 April 2013 by Rueden (talk | contribs) (Add a brief walkthrough for segmentation workflows)

Introduction

Image segmentation is "the process of partitioning a digital image into multiple segments." (Wikipedia)

Segmentation-overlay.jpg Segmentation-boundaries.jpg

It is typically used to locate objects and boundaries.

More precisely, image segmentation is the process of assigning a label to every pixel in an image such that pixels with the same label share certain visual characteristics.

Easy workflow

One option which is designed to be very powerful, yet easy to use for non-experts in image processing:

< Advanced Weka Segmentation >

Give it a try—you might like it!

Flexible workflow

One good workflow for segmentation in ImageJ is as follows:

  1. Preprocess the image using filters, to make later thresholding more effective. Which filter(s) to use is highly dependent on your data, but some commonly useful filters include:
  2. Apply a Threshold.
    • Ideally you want to use one of the auto-threshold methods, rather than manually tweaking, so that your result is reproducible later on the same data, and on multiple other datasets.
  3. Create a mask.
  4. Manipulate the mask as needed; e.g.:
    • Dilate to grow the included pixels
    • Erode to shrink the included pixels
  5. Create a selection from the mask.
  6. Transfer the selection back to your original image with the original (non-processed) pixel data.
    • If you ran filters on your data, you probably want to Revert those changes first.
  7. Do some numerical analysis on the selected data; e.g.:
    • Measure the entire selection directly.
    • Use Analyze Particles to extract desirable objects from your selection and report individual statistics on them.
    • Use the ROI Manager to Add the selection and then Split it (under the More button), then use Multi Measure (also under More) to report statistics on the objects.
    • Write a macro to automate this sort of analysis, loop over objects in the ROI manager, measure and manipulate them, etc.

See also

For a list of Fiji plugins which perform image segmentation, see: Category:Segmentation.