Object shape measurements


Before starting this lesson, you should be familiar with:

Learning Objectives

After completing this lesson, learners should be able to:
  • Understand shape measurements and their limitations

  • Perform shape measurements on objects.


Our eyes are extremely good in distinguishing forms and patterns and this has proven to be a powerful tool for characterizing different cell-types, functions, phenotypes, etc. In image processing, we use shape measurements (e.g. area, volume, elongation, …) for an automated and objective characterization of forms. Consequently, one can address scientific questions or filter objects that should be used for further processing. Typically, we apply shape measurements on a labeled image. The labeled image, as obtained after a connected component analysis, defines a set of objects in 2D/3D.

Concept map

graph TD li[Label Image] --> sa("Shape Analysis") feature_columns -.- |"e.g."| ex["area (volume)
perimeter (surface)
circularity = 4 Pi A/P^2"] sa --> table("Results table") table --> object_rows["Rows are objects"] table --> feature_columns["Columns are shape features"]



Open an image and perform shape measurements. Explain simple shape features (area, volume, perimeter) and some more complexes like circularity, elongation. Show that results can also be represented as an image.

Show activity for:  

ImageJ GUI

  • Open image xy_8bit_labels__four_objects.tif
  • Perform shape measurements and discuss their meanings [Plugins > MorphoLibJ > Analyze > Analyze Regions]
  • Discuss (using a white board) some shape features and concepts (see also MorphoLibJ Documentation). For example:
    • Area
    • Perimeter
    • Circularity = ( 4 Pi Area ) / Perimeter^2
    • Solidity = Convexity = Area / Area-Convex-Hull
    • Ellipse fit
  • Explore results visualisation [Plugins > MorphoLibJ > Label Images > Assign Measure to Label]
  • Add a calibration of 2 micrometer to the image and check which shape measurements are affected.
  • Perform a shape analysis for 3D image xyz_16bit_labels__spindle_spots.tif and [Plugins > MorphoLibJ > Analyze > Analyze Regions 3D]
  • (Optional) Draw a square (=circle) of different size 2x2 pixels (paper, whiteboard, …)
    • Measure area, perimeter and circularity
    • Discuss the results
  • (Optional) To show effect of small sized objects use xy_8bit_labels__circles_different_size.tif. Discuss how discrete nature of image may give mathematically unprecise results for small objects

    diameter-circle (px) Area (theory) Perimeter (theory) Area (MLJ) Perimeter (MLJ)
    1 0.78 3.141 1 2.68
    3 7.06 9.42 5 8.04
    5 19.63 15.70 21 15.62
    11 95.03 34.55 97 33.94
    51 2042.82 160.22 2053 161.19
  • (Optional) Discuss the England’s coastline paradox Wiki


Show exercise/solution for:

ImageJ GUI

Open image xy_16bit_labels__nuclei.tif Using MorpholibJ:

  1. Measure object shapes and find the label index of the nucleus with the largest perimeter
  2. Change the pixel size to 0.5 um and repeat the measurements. Why do some parameters change while others don’t?
  3. (Optional) Create an image where each object is coloured according to the measured circularity


  1. [Plugins > MorphoLibJ > Analyze > Analyze Regions] the upper right nuclei.
  2. Some features are the ratio of dimensional features and so are independent of the spatial calibration.
  3. [Plugins > MorphoLibJ > Label Regions > Assign Measure to Label].


True or false? Discuss with your neighbour


  • Circularity is independent of image calibration True
  • Area is independent of image calibration. False
  • Perimeter can strongly depend on spatial sampling. True
  • Volume can strongly depend on spatial sampling. True
  • Drawing test images to check how certain shape parameters behave is a good idea. True

Follow-up material

Recommended follow-up modules:

Learn more: