Volume and minimal cross section areas in the nasal cavity

Hello! I would like to segment the nasal cavity with the aim to get:

  • the total volume of the whole nasal cavity
  • the volume of different parts of the nasal cavity
  • the minimal cross section areas of the right and the left nasal cavity?

How would you do it? I’m relatively new to 3D Slicer.
Would you start by defining the nasal cavity with thresholding? Or is it better to set points, landmarks and planes to define the cavity?
Thresholding is quite difficult, as the nasal cavity has no proper boundaries nor a starting or end point, as it’s open to the outside.

Is there a way to define different planes and then to get the volume between them? And is there a way to get the program to calculate the minimal cross section area of a volume?

Many thanks for your help!!

Probably the easiest is to segment the nasal cavity (e.g., Draw tube effect, with masking settings set to paint only inside air), then you can extract the centerline using “Extract centerline” module and get the cross-sectional areas using “Cross-section analysis module”. These tools are provided by SegmentEditorExtraEffects and VMTK extensions.

Hi Andras,
many thanks for your help!!
I`m stuck right at the beginning. What is the easiest way, to get the „Draw tube“ effect only painting the inside air? Do I have to create a master-segment first, or is there an easier way?

Im trying with the sample data of 3D Slicer (Post dental surgery) and I think because of the anatomy of the nasal cavity (many curves, thin walls etc.) and also because of the fact, that the contrast differences between air and bone/mucosa/nasal epithelium isnt that sharp, the tool might be struggling with defining the nasal cavity.

I think, once I get the nasal cavity isolated properly, the rest (volume, minimum cross sections etc.) will be easy, but I can‘t really get the nasal cavity defined :frowning:

Many, many thanks in advance!!!

Use Threshold effect to find intensity range of air then click “use for masking”.

I got that! But when using „draw tube effect“ I only get a tube of a set radius and not the nasal cavity with all its junctions, widenings and constrictions.

I may be possible that the “Draw tube” effect Ig ores intensity thresholding. I’ll check.

In the meantime, you can erase the non-air regions using Erase effect, as that effect respects editable intensity range for sure.


Now I started with “Grow from seeds” to define the nasal cavity. With this it took quite a long time, because the contrast between air / soft tissue / mucosa / cartilage isn’t that high. Do you have a different idea to speed this up? Also the nasal cavity can be quite narrow, what makes it more difficult for 3D Slicer to differentiate.

For the minimum cross sectional areas I just draw a line where I assumed them to be? Is there a more elegant way to get an automatic calculation by the software?

I tried different ways with the “Draw tube” effect, but as the nasal cavity is no proper tube and has different junctions this didn’t really work well.
So better using the volume tool? Is there a way to get the software calculating the minimum cross section ares or do I have to assume where I can find the most narrow areas.

Many thanks!!!

After you segment the nasal cavity, you can extract the centerline using “Extract centerline” module and get the cross-sectional areas using “Cross-section analysis module”. These tools are provided by SegmentEditorExtraEffects and VMTK extensions.

A lot may depend on the complexity of the cavity, so it would be useful if you could share a sample data set (if cannot share your own data then you can get a similar image from “Sample Data” module).

Hello Andras! With the help of your YouTube videos, I now got the centerline figured out. Do you know, if there’s a way to get two centerlines (right and left nasal cavity) which have the same starting and same ending point?


I am working with the sample data given by 3DSlicer “Post Dental surgery”

If you have one segmentation and specify two endpoints then you’ll get only one (the best) centerline between them. To get an alternative route, I would recommend to use a single inlet point and two slightly different outlet points (each closer to the nasal cavity on one side). If you really want to use the exact same inlet and outle points then you could extract one centerline, edit the segmentation to disrupt that path (e.g., erase a part of it), and then extract centerline on this modified segmentation.