Skip to content

Commit

Permalink
Merge pull request #9 from Maxlo24/main
Browse files Browse the repository at this point in the history
ToolTips and Readme changes
  • Loading branch information
Maxlo24 authored Jul 28, 2022
2 parents 5c13f99 + 4f813fd commit e894e69
Show file tree
Hide file tree
Showing 3 changed files with 95 additions and 14 deletions.
9 changes: 9 additions & 0 deletions ALI/Resources/UI/ALI.ui
Original file line number Diff line number Diff line change
Expand Up @@ -251,13 +251,22 @@
</property>
<item>
<widget class="QPushButton" name="DownloadTestPushButton">
<property name="toolTip">
<string>Initiate download of a test scan (~ 100MB) using an URL opened in default system browser</string>
</property>
<property name="text">
<string>Download test file</string>
</property>
</widget>
</item>
<item>
<widget class="QPushButton" name="DownloadModelPushButton">
<property name="toolTip">
<string>Open a GitHub realease to download the trained models using an URL opened in default system browser</string>
</property>
<property name="statusTip">
<string/>
</property>
<property name="text">
<string>Download latest models</string>
</property>
Expand Down
6 changes: 6 additions & 0 deletions AMASSS/Resources/UI/AMASSS.ui
Original file line number Diff line number Diff line change
Expand Up @@ -175,13 +175,19 @@
</property>
<item>
<widget class="QPushButton" name="DownloadScanButton">
<property name="toolTip">
<string>Initiate download of a test scan (~ 100MB) using an URL opened in default system browser</string>
</property>
<property name="text">
<string>Download test scan</string>
</property>
</widget>
</item>
<item>
<widget class="QPushButton" name="DownloadButton">
<property name="toolTip">
<string>Initiate download of the trained model (&gt; 1GB) using an URL opened in default system browser</string>
</property>
<property name="text">
<string>Download latest models</string>
</property>
Expand Down
94 changes: 80 additions & 14 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,37 +1,59 @@
# Slicer Automated Dental Tools

_Authors: Maxime Gillot (University of Michigan), Baptiste Baquero (UoM)_
---------------


<img src="SlicerAutomaticTools.png" alt="Extension Logo" width="100"/>
Slicer automated dental tools is an extension for 3D Slicer for creating and executing simple modules (aka pipelines) via a GUI interface with no coding knowledge needed.


<p align="center">
<img src="SlicerAutomaticTools.png" alt="Extension Logo" width="200"/>
</p>

## Overview

Slicer automated dental tools is an extension perform automatic **segmentation** and **landmark identification** using machine learning tools.

## 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](AMASSS) | Perform automatic segmentation of CBCT scan using the [AMASSS](https://github.com/Maxlo24/AMASSS_CBCT) algorithm. |
| [ALI-CBCT](ALI_CBCT) | Perform automatic landmark identification in CBCT using [ALI-CBCT](https://github.com/Maxlo24/ALI_CBCT) algorithm. |
| [ALI-IOS](ALI_IOS) | Perform automatic landmark identification in IOS using [ALI-IOS](https://github.com/baptistebaquero/ALIDDM) algorithm. |



This extension will allow you to :
- segment CBCT scan using [AMASSS](https://github.com/Maxlo24/AMASSS_CBCT)
- Identify landmarks in CBCT using [ALI-CBCT](https://github.com/Maxlo24/ALI_CBCT)
- Identify landmarks in IOS using [ALI-IOS](https://github.com/baptistebaquero/ALIDDM)


## Requirements

```
Slicer 5.1.0 or later
12GB of VRAM if possible
```

### :warning: Warning
* In addition of the [Slicer System requirements](https://slicer.readthedocs.io/en/latest/user_guide/getting_started.html#system-requirements), for best performance, 12GB of memory is recommended.
* :warning: Trained networks are required to be manually downloaded. See requirements section specific to each module.


<!-- ### :warning: IMPORTANT
- All modules relies on machine learning tools that **requires GPU** for optimal use
- The user will have to **download the trained networks** required for each module

- _This extension is under active development. Its content, API and behavior may change at any time !_ -->
---

<img src="ADT-exemple.png" alt="Exemples"/>

# How to use the modules

On slicer, in the module selection table, a new option named **"Automated dental tools"** will allo you to choose between the modules :
On slicer, in the module selection table, a new module category named **"Automated dental tools"** will allo you to choose between the modules :
- AMASSS (Automatic Multi-Anatomical Skull Structure Segmentation)
- ALI (Automatic Landmark Identification)

Expand All @@ -48,13 +70,21 @@ Both modules shares common features :

- The "Prediction ID" field is for the user to choose what will appear on the output file name. ("Pred" by default)

---
---------------

## AMASSS Module
<img src="AMASSS/Resources/Icons/AMASSS.png" alt="Extension Logo" width="50"/>

AMASSS module will allow you to segment CBCT scan using [AMASSS](https://github.com/Maxlo24/AMASSS_CBCT) algortihm.


### Prerequisites

* Download the [trained models for AMASSS](https://github.com/Maxlo24/AMASSS_CBCT/releases/download/v1.0.1/ALL_NEW_MODELS.zip) using the `Download latest models` button in the module `Input section`.


### 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:
Expand All @@ -63,8 +93,12 @@ It can be a single CBCT scan loaded on slicer or a folder containg CBCTs with th
.nii / .nii.gz
.gipl / .gipl.gz
```

Available sample data for testing: [MG_test_scan.nii.gz](https://github.com/Maxlo24/AMASSS_CBCT/releases/download/v1.0.1/MG_test_scan.nii.gz)

**Load models:**
The user has to indicate the path of the folder containing the [trained models for AMASSS](https://github.com/Maxlo24/AMASSS_CBCT/releases/download/v1.0.1/ALL_NEW_MODELS.zip).



**Segmentation selection:**
Expand Down Expand Up @@ -93,6 +127,15 @@ ALI module as 2 modes that will allow the user to identify landmarks on:


### ALI-CBCT

### Prerequisites

* Download the [trained models for ALI-CBCT](https://github.com/Maxlo24/ALI_CBCT/releases/tag/v0.1-models) using the `Download latest models` button in the module `Input section`.


### 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:
Expand All @@ -101,9 +144,12 @@ It can be a single CBCT scan loaded on slicer or a folder containg CBCTs with th
.nii / .nii.gz
.gipl / .gipl.gz
```
Available sample data for testing: [MG_test_scan.nii.gz](https://github.com/Maxlo24/AMASSS_CBCT/releases/download/v1.0.1/MG_test_scan.nii.gz)

**Load models:**
The user has to indicate the path of the folder containing the [trained models for ALI-CBCT](https://github.com/Maxlo24/ALI_CBCT/releases/tag/v0.1-models).


**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](https://user-images.githubusercontent.com/46842010/180010603-37dce4c3-e7f8-4b3a-98a1-2874918320cb.png)
Expand All @@ -112,6 +158,14 @@ Once the folder containing the trained models is loaded. The user can choose the

### ALI-IOS

### Prerequisites

* Download the [trained models for ALI-IOS](https://github.com/baptistebaquero/ALIDDM/releases/tag/v1.0.3) using the `Download latest models` button in the module `Input section`.


### Module structure


**Input file:**
The input has to be an oriented IOS segmented with the [Universal Numbering System](https://en.wikipedia.org/wiki/Universal_Numbering_System).
This segmentation can be automatically done using the [SlicerJawSegmentation](https://github.com/MathieuLeclercq/SlicerJawSegmentation) extention.
Expand All @@ -120,12 +174,24 @@ The input can be a single IOS loaded on slicer or a folder containg IOS with the
.vtk
```

Available sample data for testing: [T1_01_L_segmented.vtk and T1_01_U_segmented.vtk](https://github.com/baptistebaquero/ALIDDM/releases/tag/v1.0.4)

**Load models:**
The user has to indicate the path of the folder containing the [trained models for ALI-IOS](https://github.com/baptistebaquero/ALIDDM/releases/tag/v1.0.3).


**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](https://user-images.githubusercontent.com/46842010/180010083-4f7b6e31-edd3-41a2-a696-6a6a1a4d9260.png)



# Acknowledgements

_Authors: Maxime Gillot (University of Michigan), Baptiste Baquero (UoM),Lucia Cevidanes (UoM), Juan Carlos Prieto (UNC)_

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](LICENSE).

0 comments on commit e894e69

Please sign in to comment.