Spatial information in 2D segmentations

According to this post, 2D segmentation is possible in 3D Slicer. I am trying to figure out whether it is possible to incorporate spatial information such that I may calculate “area” instead of “volume (Volume Statistics extension)”.

Is it possible to incorporate spatial information into an image that is being segmented in 3D Slicer? If so, how would I approach integrating it and then calculate the segmented area? If not, how may I segment and calculate the pixel counts?

If you enter a 2D image in Slicer it will automatically converted to 3D. Then you can change the spacing (z-axis) of the scalarVolumeNode in Slicer to be 1mm. If you calculate the volume for a segmentation of this image it will be also the area just change the unit to mm2

1 Like

Segment Statistics module computes area and volume of each segment. Area is computed in 3D, which means both sides of a flat single-slice segments are included. You can divide the reported surface value by 2 to get the cross-sectional area, i.e., the area that you see on a single image.

There are also several modules for computing area. I generated this summary using ChatGPT, but I confirm that it is accurate (I reviewed it and fixed minor inaccuracies):


:pushpin: 1. Segment Cross‑Section Area (in Sandbox extension)

  • This module computes cross‑sectional area of a segmentation along an image axis (e.g., axial, sagittal, coronal or any IJK axis you choose).
  • You can install it by opening the Extensions Manager in Slicer and installing the Sandbox extension.

:backhand_index_pointing_right: Best when you want area per slice along standard image axes.


:pushpin: 2. SegmentGeometry (in SlicerBiomech extension)

  • This extension can compute cross‑sectional area (plus other shape metrics) along an arbitrary direction or line, not just the image axes.
  • It’s useful if you want cross‑sections in non‑orthogonal directions or aligned with a specific anatomical axis.
  • It outputs area and additional geometric properties like perimeter, Feret diameter, moments of inertia, etc.

:backhand_index_pointing_right: Best when you need cross‑section metrics oriented in a custom way.


:pushpin: 3. VMTK modules (in SlicerVMTK extension)

  • The Vascular Modeling Toolkit (VMTK) extension includes modules like Cross‑section analysis or Stenosis measurement.
  • These can compute cross‑sections along a centerline or curved path, often used for vessels or tubular structures.

:backhand_index_pointing_right: Best for vascular work or when the structure follows a path rather than straight sections.


:pushpin: 3. Markups module

  • If you need the area of a structure in a single 2D slice, you can draw a closed curve markup and enable area measurement in the Markups module’s Measurements section.

:backhand_index_pointing_right: Best for measuring area of a simple shape in a single 2D slice.


3 Likes

@mau_igna_06, that is a great idea! Thank you, this is a very intuitive and explainable approach.

@lassoan, regarding dividing the area calculated by the Segment Statistics module, wouldn’t the surface area be a slight overestimation because it would include half of the perimeter of the segmented area?

Probably the extra surface on the side is negligible (<1%), but you can measure the surface using all the other methods that I described to confirm.

Yeah, I agree that the difference would be minimal. I was trying to confirm my understanding of the method. Thanks!