Slicer DentalSegmentator

repository·main·Indexed 41 days ago

https://github.com/gaudot/slicerdentalsegmentator

A 3D Slicer extension for fully-automatic, deep-learning-based segmentation of dental structures—including teeth, mandible, and maxilla—from CT and CBCT scans using the nnU-Net framework. Compatible with 3D Slicer version 5.8.0 or later.

Tokens
840
Snippets
1
Records
6
Agent score
2%

What's inside Slicer DentalSegmentator

  1. Use the DentalSegmentator extension for dental segmentation

    main

    The extension provides fully-automatic segmentation of CT and CBCT dental volumes, generating segmentations for:

    • Maxilla & Upper Skull
    • Mandible
    • Upper Teeth
    • Lower Teeth
    • Mandibular canal

    Workflow:

    1. Load Data: Drag and drop a dental CT/CBCT into 3D Slicer or use the DATA or DCM load buttons. (You can use CBCT Dental Surgery volumes from the Sample Data module for testing).
    2. Select Module: Switch to the DentalSegmentator module.
    3. Select Volume: Choose your loaded volume from the first dropdown menu.
    4. Run: Click the Apply button.

    Note: On the first launch, the module will automatically install dependencies including AI model weights, Light the torch, PyTorch, and nnUNet V2. If your device lacks CUDA, a confirmation dialog will appear before starting the (potentially long) CPU-based process.

    Post-Processing:

    • Cancel: Use the Stop button during execution.
    • Edit: Use the Segment Editor tools to modify results.
    • Smooth: Adjust the Surface smoothing slider to change the 3D view surface smoothing algorithm.
    • Export: Use the Export segmentation menu to save your results.
  2. Install Slicer DentalSegmentator via Extension Manager

    main

    Slicer DentalSegmentator can be installed directly within 3D Slicer using the built-in Extension Manager.

    1. Open 3D Slicer (compatible with version 5.8.0 or later).
    2. Open the Extension Manager.
    3. Search for DentalSegmentator in the search bar.
    4. Click install and restart Slicer to complete the process.

    After restarting, the module will be available under Segmentation > DentalSegmentator in the module explorer or via the find module button.

  3. Troubleshoot Windows Torch CUDA installation

    main

    On Windows, the torch CUDA dependency might not be correctly detected or installed.

    Solution:

    1. Install the PyTorch Utils extension in Slicer.
    2. Uninstall the current version of PyTorch.
    3. Reinstall PyTorch by setting the Computation backend to one compatible with your hardware.
    4. Ensure the PyTorch version is greater than 2.0.0 to maintain compatibility with nnUNet.
  4. Troubleshoot Linux/WSL memory hangs

    main

    On Linux or WSL systems, the inference process may hang at the stage "done with volume". This typically indicates the system has run out of memory.

    Recommendation:

    • Use a system with at least 32 GB of RAM.
    • If you have less RAM, create a 16 GB SWAP file on an SSD to resolve the issue.
  5. Manually install DentalSegmentator model weights

    main

    If the automatic download of weights fails, you can install them manually:

    1. Go to the SlicerDentalSegmentator releases page and download the latest .zip file.
    2. Locate your DentalSegmentator folder (found via the module finder window in Slicer).
    3. Unzip the downloaded file into the DentalSegmentator\Resources\ML folder.
    4. Create a file named download_info.json in the DentalSegmentator folder with the following content to satisfy future reference checks:
    {
      "download_url": "https://github.com/gaudot/SlicerDentalSegmentator/releases/download/v1.0.0-alpha/Dataset111_453CT_v100.zip"
    }
    {
      "download_url": "https://github.com/gaudot/SlicerDentalSegmentator/releases/download/v1.0.0-alpha/Dataset111_453CT_v100.zip"
    }