Coder Social home page Coder Social logo

draibolit / slicerautomateddentaltools Goto Github PK

View Code? Open in Web Editor NEW

This project forked from dcbia-ortholab/slicerautomateddentaltools

0.0 0.0 0.0 4.42 MB

A 3D Slicer extension to use AMASSS, ALI-CBCT and ALI-IOS

License: Other

Python 98.13% CMake 1.87%

slicerautomateddentaltools's Introduction

Slicer Automated Dental Tools

Slicer automated dental tools is an extension for 3D Slicer to perform important automatic Dental and Cranio Facial analysis tasks via a GUI interface with no coding knowledge needed.

Extension Logo

Overview

Slicer automated dental tools is an extension that allows users to perform automatic segmentation and landmark identification on CBCT scans and Intra Oral Scan (IOS) using machine learning tools where the learning mdoels are continously updated.

Exemples

Features

  • Simple: Perform time consuming task with a few clicks.
  • Automatic: Automate important Dental and Cranio Facial analysis tasks.
  • Flexible: The user can choose which models to use to perform the automated task. New models can be added easily.

Modules

Name Description
AMASSS Perform automatic segmentation of CBCT scan. AMASSS is an acronym for Automatic Multi-Anatomical Skull Structure Segmentation.
ALI Perform automatic landmark identification on either CBCT or IOS scans. ALI is an acronym for Automatic Landmark Identification.

These modules provide a convenient user interface, are available through the Automated Dental Tools module category, and share common features :

Input

  • All modules can work with one file or a whole sample (folder) as input.
  • If the input is a single file already loaded, the result of the predicton will directly show up on the slice views.

Output

  • By selecting the "Group output in a folder" checkbox, all the ouput files will be grouped in a single folder for each patient.
  • All modules allows the user to save the output in the input folder, or by unchecking the "Save prediction in scan folder" the user can choose a custom output folder.
  • The "Prediction ID" field is for the user to choose what will appear on the output file name. ("Pred" by default)

Additionally, the following modules are implemented as python scripted command-line (CLI) modules available in the Automated Dental Tools.Advanced module category and are used internally by the modules described above.

Name Description
AMASSS_CLI Perform automatic segmentation of CBCT scan.
ALI-CBCT Perform automatic landmark identification in CBCT
ALI-IOS Perform automatic landmark identification in IOS

Requirements

  • In addition of the Slicer System requirements, for best performance, 12GB of memory is recommended.
  • โš ๏ธ Trained networks are required to be manually downloaded. See requirements section specific to each module.

AMASSS Module

Extension Logo

AMASSS module will allow you to segment CBCT scan using AMASSS algortihm.

Prerequisites

Module structure

Input file: The input has to be an oriented CBCT. It can be a single CBCT scan loaded on slicer or a folder containg CBCTs with the following extention:

.nrrd / .nrrd.gz
.nii  / .nii.gz
.gipl / .gipl.gz

Available sample data for testing: MG_test_scan.nii.gz

Load models: The user has to indicate the path of the folder containing the trained models for AMASSS.

Segmentation selection: The user can choose the structure to segment using the selection table. Depending on the type of CBCT to segment, the user can select the "Use small FOV models" checkbox to use on higher definition scans. SegTab

Output option: By selecting the "Generate surface files" checkbox. The user will also get a surface model of the segmentation that will be saved in a "VTK files" folder and will be automatically loaded in slicer at the end of the prediction if working on a single file.

Advanced option:

  • You can increase/decrease the precision of the segmentation (going above 50 will drastically increase the prediction time and is not necesary worth it, going under 50 will make the prediction much faster but less accurate)
  • If the user whant to generate surface files, he can choose the smothness applied on the model.
  • Depending on your computer power, you can increase the CPU and GPU usage to increase the predictio speed.

ALI Module

Extension Logo

ALI module provide a convenient user interface allowing to identify landmarks on different type of scans:

ALI-CBCT

The implementation is based on the ALI-CBCT algortihm originally developed by Maxime Gillot at https://github.com/Maxlo24/ALI_CBCT.

Prerequisites

Module structure

Input file: The input has to be an oriented CBCT. It can be a single CBCT scan loaded on slicer or a folder containg CBCTs with the following extention:

.nrrd / .nrrd.gz
.nii  / .nii.gz
.gipl / .gipl.gz

Available sample data for testing: MG_test_scan.nii.gz

Load models: The user has to indicate the path of the folder containing the trained models for ALI-CBCT.

Landmark selection: Once the folder containing the trained models is loaded. The user can choose the landmark he want to identify with the table showing the available landmarks: SegTab


ALI-IOS

The implementation is based on the ALI-IOS algortihm originally developed by Baptiste Baquero at https://github.com/baptistebaquero/ALIDDM.

Prerequisites

Module structure

Input file: The input has to be an oriented IOS segmented with the Universal Numbering System. This segmentation can be automatically done using the SlicerJawSegmentation extention. The input can be a single IOS loaded on slicer or a folder containg IOS with the following extention: The array name of labels in the vtk surface is: "Universal_ID" or "predictionid" or "PredictionID"

.vtk

Available sample data for testing: T1_01_L_segmented.vtk and T1_01_U_segmented.vtk

Load models: The user has to indicate the path of the folder containing the trained models for ALI-IOS.

Landmark selection: For the IOS landmarks, the user has to choose which tooth he need the landmakrs on by checking the label of the tooth on the left table. Once the folder containing the trained models is loaded. The user can choose the landmark he want to identify with the table on the right showing the available landmarks: LM_tab_ios

Acknowledgements

_Authors: Maxime Gillot (University of Michigan), Baptiste Baquero (UoM), Luc Anchling (UoM), Nathan Hutin(UoM), Lucia Cevidanes (UoM), Juan Carlos Prieto (UNC), David Allemang (Kitware), Jean-Christophe Fillion-Robin (Kitware), Connor Bowley (Kitware), James Butler (Kitware).

Supported by NIDCR R01 024450, AA0F Grabber Family Teaching and Research Award and by Research Enhancement Award Activity 141 from the University of the Pacific, Arthur A. Dugoni School of Dentistry.

License

This software is licensed under the terms of the Apache Licence Version 2.0.

slicerautomateddentaltools's People

Contributors

baptistebaquero avatar hutin1 avatar jcfr avatar juanprietob avatar lucanchling avatar luciacev avatar maxlo24 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.