How to Get skeleton of pulmonary vascular system

Hello Dear Developers and Users

Excuse me for asking a question that might be obvious to many:
Is there a difference between Skeleton and Centerline?

I want to extract a skeleton of the pulmonary vascular system (vascular tree) .

To do this, I did the following steps:

1- Segment pulmonary vascular system (tree) using Frangi filter on VMTK with vmtkimagevesselenhancement.

2- Convert it to labelMapVolume

3- In the last step, I want to use the Extract Skeleton module to extract the skeleton of vascular tree.

I have the following questions about this module:

A. What is the difference between tow modes 1D and 2D in Skeleton Type?

B. This module does not finish when I select Skeleton Type in 2D mode.

Although I select the number of 100 in the Number Of Points section, I see the coordinates of fewer points (about 40) in the skeleton.txt file. Why?

Why am I not able to get/see the Skeleton of these vessels in 3D view?

The image below is a demonstration of these pulmonary vessels in the type of Model.

Please guide me.
Thanks a lot.

I hope I have explained what I mean clearly.
I do not understand why the Extract Skeleton module cannot extract the skeleton.
Is this node (LabelMapVolume node) too complicated?

As can be seen in the following image, some parts of the vessels are disconnected and not connected to each other. Does this prevent this module from extracting the skeleton of vascular tree?

Can I have to isotropic spacing CT images at the beginning of processing?

Please guide me.
Thanks a lot.

To do this, I did the following steps.
The following steps were performed to extract the skeleton of pulmonary vascular system, respectively.

1- Segment the lung region from the chest CT image

2- Segment the pulmonary vessels by applying the Frangi filter (argument) in the command of vmtkimagevesselenhancement

3- Apply Threshold Effect in the module of Segment Editor

4- Removal of the outer edge of the lung region and the common border between the lung and the heart by the Sobel filter in the module of Simple Fiters

5- Split segmented vessel tree by Island Effect (Split islands to segments) in the module of Segment Editor

6- Convert the result of the previous step to Model and save them in vtp format

7- Merge vessel component models by the MergeModels (CLI)

The following image is shown in the result of above steps.

As you can be seen in the following image, the centerline of some parts of the vessels has not been extracted. Why?

In these regions, I extracted the centerlines using the module of Extract Centerline.

Please guide me.
Thanks a lot.

No difference, they both refer to the same thing: medial line or surface.

1D enforces extraction of a line (medial line), 2D extracts a surface (medial surface).

Computation time may be very long for 2D mode.

Number of points specifies the maximum. If your image has lower resolution and the centerline is short then the line may be represented with less points than what you have requested. If you need more points then you can get arbitrarily resampling of the curve using markups module.

Result of “Extract skeleton” module is a labelmap volume. You can use volume rendering or you can import it into Segmentation to visualize in 3D views.

If the difference between spacing along different axis is more than a few ten percent then I would recommend to use Crop volume to crop and resample the volume using isotropic spacing.

This is unnecessarily complicated and slow way of removing small islands. You can achieve the same by using “Remove small islands” method in Islands effect.

Probably those branches are too small. If you share the scene that contains the segmentation that you created using Thresholding effect (but before Island effect applied or other further processing is done) then I may have a look.

Dear Dr. Andras Lassoan

Thank you so much for your detailed explanation. Excuse me, but I do not understand how to share with you the scene that contains the segmentation. Do you mean a scene with .mrml extension (MRML scene) or .mrb extension (Medical Reality Bundle)? Where should I upload this file?

Best regards.

Upload the mrb file anywhere (dropbox, onedrive, google drive, …) and post the link here. Make sure not patient information is included.

I upload .mrb file in dropbox.

Thanks a lot.


I have a question. To which volume have you applied the filter? I have some problems with the segmentation of the vessels.

Thank you