Skip to content

A Slicer extension to apply convolutional neural network based classifiers on surface meshes (e.g. brain surface)

Notifications You must be signed in to change notification settings

mturja-vf-ic-bd/SlicerSurfaceLearner

Repository files navigation

SurfaceLearner

This is a GitHub repository containing an extension for Slicer/SlicerSALT. The primary objective of this extension is to facilitate the application of Deep Learning-based Image Classifiers on surface data, such as the Brain Cortical Surface, Hippocampus, or any other 3D surface with a spherical topology. The extension provides a user-friendly interface allowing users to effortlessly train and utilize complex deep-learning models without any coding.

The extension first transforms a 3D surface into a 2D grid through an area-preserving projection technique. These 2D images are then employed for training Deep Image Classifiers models, chosen from a selection of popular CNN-based architecutures (e.g. ResNet, EfficientNet, etc). The trained model can then be used to make prediction on a new surface dataset. SurfaceLearner consists of three modules that work together to achieve this goal:

  1. SurfacePlaneMapper: This module is responsible for mapping a 3D surface onto a 2D plane.
  2. PlaneCNN-Training: This module focuses on training a Deep Image Classifier using the 2D images obtained from the SurfacePlaneMapper module.
  3. PlaneCNN: This module uses the trained classifier to perform predictions on new sets of 2D images.

Each module is a standalone program and can work independently. For instance, you can use the PlaneCNN-Training module to train the CNN using any set of 2D images, even if they were not generated by the SurfacePlaneMapper module. ExtensionWorkflow

How To Use

To understand how to prepare input data, navigate through the user interface (UI), and interpret the results, refer to the links for specific module within the repository. Below are the snapshots of the UI's of each module. ExtensionUIs

About

A Slicer extension to apply convolutional neural network based classifiers on surface meshes (e.g. brain surface)

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages