/Lung-Lobes-Segmentation-in-CT-Scans

Segmentation of lung, pulmonary vessels and pulmonary fissures in CT Scans

Primary LanguageJupyter NotebookMIT LicenseMIT

Lung-Lobes-Segmentation-in-CT-Scans

Python and C++ implementation on vessel and fissure segmentation in Lung CT Scans based on Bianca's work

Usage

For lung and pulmonary vessel segmentation.

I create a ipython notebook for this part (in lung_segmentation.ipynb except the last two parts).

For pulmonary fissure segmentation.

Compile the two C++ files for fissure segmentation.

  1. cmake .
  2. make
  3. Use vector-based region growing for fissure segmention.
    ./vector_region_growing ORIGINAL_CT.mhd FISSURE_EXTRACT.mhd
    Use intensity-based region growing for removing small regions.
    ./region_growing FISSURE_EXTRACT.mhd FISSURE_EXTRACT_REFINED.mhd
  4. Running the last two sections in the ipython notebook to generate fissure mask and final lung-vessel-fissure mask.

Results

The result of lung segmentation:

The result of vessel segmentaton:

And in 3D view:

The result of fissure segmentation:
(From left to right: original, after vector-based region growing, after intensity-based region growing)

The 3D maps of Lung-Vessel-Fissure for 9 cases:

Dataset

The dataset I used is LOLA11, which contains 55 CT Scans.