Difference between revisions of "Documentation/Nightly/Modules/ShapeVariationAnalyzer"
Line 32: | Line 32: | ||
ShapeVariationAnalyzer allows the classification of 3D models, according to their morphological variation. This classifier can be used to identify shapes, help to provide a diagnosis, evaluate the staging of a disease. | ShapeVariationAnalyzer allows the classification of 3D models, according to their morphological variation. This classifier can be used to identify shapes, help to provide a diagnosis, evaluate the staging of a disease. | ||
This tool is based on a deep learning neural network which evaluates all the possible options and learns from past experience. The aim of this extension is to help understand morphological variations and provide an idea of the classification. <br> | This tool is based on a deep learning neural network which evaluates all the possible options and learns from past experience. The aim of this extension is to help understand morphological variations and provide an idea of the classification. <br> | ||
− | In a first phase, the neural network needs to learn from well-known shapes, in order to be able to process new models in the classification phase.<br> | + | In a first phase, the neural network needs to learn from well-known shapes, in order to be able to process new models in the classification phase.<br><br> |
+ | |||
The module is composed of multiple panels to perform the different steps of the process: create the classification groups, compute their average shapes, train the classifier and classify shapes. | The module is composed of multiple panels to perform the different steps of the process: create the classification groups, compute their average shapes, train the classifier and classify shapes. | ||
<br><br> | <br><br> |
Revision as of 22:17, 9 May 2017
Home < Documentation < Nightly < Modules < ShapeVariationAnalyzer
For the latest Slicer documentation, visit the read-the-docs. |
Introduction and Acknowledgements
Extension: ShapeVariationAnalyzer Author: Priscille de Dumast (University of Michigan) License: Apache License, Version 2.0 |
|
Module Description
ShapeVariationAnalyzer allows the classification of 3D models, according to their morphological variation. This classifier can be used to identify shapes, help to provide a diagnosis, evaluate the staging of a disease.
This tool is based on a deep learning neural network which evaluates all the possible options and learns from past experience. The aim of this extension is to help understand morphological variations and provide an idea of the classification.
In a first phase, the neural network needs to learn from well-known shapes, in order to be able to process new models in the classification phase.
The module is composed of multiple panels to perform the different steps of the process: create the classification groups, compute their average shapes, train the classifier and classify shapes.
What is an artificial neural network?
A neural network is a computing system, inspired by our own human brain. It learns from a large dataset (training dataset) containing both the input and the expected output (in our case, the 3D model and its morphology classification). During the training, the network’s settings are adjusted until we achieve automatic classification that matches the expert classification.
The network can then be tested with any input, preferably not from the training dataset. This allows to evaluate the performance of the network.
Use Cases
Tutorials
Prerequisities
The classification can be performed with as many groups as desired.
Please note that the amount of data is very important. The more data you have, the more accurate the classification will be. Moreover, it is better to have a dataset equally divided into the classes.
Both the 3D models into the training dataset and those to classify must have the same number of points. The most correspondent the shapes are, the best it is for the computation.
Those 2 steps can be performed thanks to ShapeAnalysisModule and RigidAlignment/Groups.
Creation of CSV File
Add Group
Add one by one the directories containing the VTK files for each group. |
Modify Group
Each group can be edited, with a modification of its corresponding repository. |
Remove Group
Only the last group added can be removed. |
Preview/Update of the classification groups
This tab allows the visualization of the 3D models in ShapePopulationViewer, and update the group assigned to the shapes if needed. |
- Preview with ShapePopulationViewer
Computation of mean groups
- Perform the computation
- Preview of Group's mean
Morphological classification
This tab is divided into 2 panels:
|
- Create Network
- Classify shape(s)
Results/Analysis
Results of the classification are automatically loaded into this tab when the computation is done. |
Similar Modules
N/A
References
N/A
Information for Developers
The source code of this module is available on GitHub: [1] The source code of the CLI used to compute an average shape and extract the features is available on Github, independently of the module: [2]