How to Measure the Perimeter of Slices from a Full-Body 3D Model

Hi everyone,

I’m new to 3D Slicer. I have a full-body 3D STL model and would like to display slice images at arbitrary positions (see attached picture) and obtain both the perimeter and area of each slice.

I’ve found that if I manually draw a closed curve, Slicer will show the perimeter, but is there a way to have Slicer automatically extract the contour and measure the perimeter (and area) for me?

Thanks in advance for any guidance!

@chir.set Can any of your modules in VMTK extension compute perimeter of the cross-section (or could be easily added)?

1 Like

No, the perimeter of a cross-section was not a goal.

However, it should be scriptable fairly easily using vtkvmtkPolyDataBoundaryExtractor.

It would mean pulling in the VMTK libraries. StenosisMeasurement2D would be the elect module to add this functionality, as @yoshi can get both the area and the perimeter. But then, how to integrate this calculation in the module, since it does not fit in the spirit of the module?

An independent script still using VMTK is also an option.

The last option would be to consider the cell ids: investigate their neighbourhood relationship, so as not to require VMTK. I may start delving into that in the coming days.

What’s your opinion about these options?

1 Like

@lassoan
Thank you for your support.
@chir.set
I saw your reply here: VMTK - cross-sectional perimeter calculation - #4 by chir.set
It seems to describe exactly what I’m looking for.

For example, if I want to get the area and perimeter of the slice shown in the Red window, and the slice intersects both legs, two cross-sections are displayed.
Even if multiple cross-sections are present, I would like to obtain the area and perimeter for each one as separate closed curves.

I’m not sure what would be the best way to implement this, but if we could select the slice view (e.g., Red, Green, Yellow), run the calculation, and have the area and perimeter results appear in a table, it would be very useful for anatomical measurements.

Thank you again for your support.

@yoshi

You may consider this module that does what you wish.

I considered that it may be useful in clinical practice, for example, to measure/follow

  • the abdominal perimeter in bariatric surgery
  • the leg perimeter in deep veinous thrombosis
1 Like

Sorry for the late reply.
Thank you very much for creating the module!
I will try it out right away.
As you mentioned, I believe it will be useful for analyzing obesity and similar cases.
Just wanted to express my gratitude first.

@chir.set
I have installed it and tried various things. It was able to measure just as I expected.
Thank you very much for creating the module.
@lassoan
Thank you for your support.