Documentation/3.6
Introduction
3D Slicer is a flexible platform that can be easily extended to enable development of both interactive and batch processing tools for a variety of applications.
3D Slicer provides image registration, processing of DTI (diffusion tractography), an interface to external devices for image guidance support, and GPU-enabled volume rendering, among other capabilities. 3D Slicer has a modular organization that allows the easy addition of new functionality and provides a number of generic features not available in competing tools. Finally, 3D Slicer is distributed under a non-restrictive BSD license.
The interactive visualization capabilities of 3D Slicer include the ability to display arbitrarily oriented image slices, build surface models from image labels, and high performance and high performance volume rendering. 3D Slicer also supports a rich set of annotation features (fiducials and measurement widgets, customized colormaps). To the best of our knowledge, no individual segmentation tool provides such powerful visualization capabilities for the user as 3D Slicer. (These paragraphs were provided by A. Fedorov and C. Lisle)
The 3.6 release of 3D Slicer contains significant changes both to the organization of the software and to the functionality. Please check the 3.6 Announcement page for a list of those changes. The community contributing to Slicer 3.6 is and the following acknowledged here.
- For information on how to use Slicer 3.6 please go to the training pages.
- For information on how to obtain Slicer 3.6 please go to the Download Pages.
- For sample data see here
Main GUI
- Main Application GUI (Wendy Plesniak)
- "Hot-keys" and Keyboard Shortcuts (Wendy Plesniak)
- Loading Data (scenes, DICOM, volumes, models, fiducials, transforms, etc.) (Wendy Plesniak)
- Saving Data (scenes, volumes, models, fiducials, transforms, etc.) (Wendy Plesniak)
- Creating and Restoring Scene Snapshots (Wendy Plesniak)
- Extensions Management Wizard (Wendy Plesniak)
Modules
Core
- Welcome Module (Wendy Plesniak, Steve Pieper, Sonia Pujol, Ron Kikinis)
- Data Module (Alex Yarmarkovich)
- Volumes Module (Alex Yarmarkovich, Steve Pieper)
- Diffusion Editor (CF Westin)
- Slices Module (Jim Miller)
- Volume Rendering Module (Yanling Liu, Alex Yarmarkovich)
- Editor (Steve Pieper)
- Models Module (Alex Yarmarkovich)
- Fiducials Module (Nicole Aucoin)
- Measurements (rulers and angles) (Nicole Aucoin)
- ROI Module (Alex Yarmarkovich)
- Transforms Module (Alex Yarmarkovich)
- Color Module (Nicole Aucoin)
Wizards
- ChangeTracker (Andriy Fedorov)
- IA FE Meshing Module (Vincent Magnotta, Curt Lisle)
Informatics Modules
- Fetch Medical Informatics Module (Wendy Plesniak, Dan Marcus)
- Query Atlas Module (Wendy Plesniak)
Registration
- Overview of all Registration Modules : This page provides guidance for selecting the module that is optimal for your task.
- Fast Registration
- Transforms: manual & interactive rigid registration , (Alex Yarmarkovich)
- Fast Affine Registration: automated fast affine registration , (Jim Miller)
- Fast Rigid Registration: automated fast rigid (6 DOF) registration , (Jim Miller)
- Fast Nonrigid BSpline Registration: fast non-rigid registration , (Bill Lorensen)
- Robust Registration
- Expert Automated Registration: automated registration (rigid to affine to nonrigid) with extensive parameter options, robust initialization, variable DOF and masking options, (Casey Goodlett)
- Robust Multiresolution Affine Registration: affine registration in multi-resolution scheme, robust to large differences in initial position or image content , (Casey Goodlett)
- BRAINSDemonWarp Hans Johnson (hans-johnson@uiowa.edu).
- BRAINSFit Hans Johnson (hans-johnson@uiowa.edu).
- BRAINSResample Hans Johnson (hans-johnson@uiowa.edu).
- Brain Only Registration
- ACPC Transform: calculate a transformation to align a single brain along theh AC-PC line (Nicole Aucoin)
- Non-Raster-Image Data Registration
- Fiducial Registration: align two sets of fiducials (translation, rigid or similarity) (Casey Goodlett)
- Surface Registration: automated surface-to-surface (model) registration (Luca Antiga, Daniel Blezek)
Segmentation
- Overview
- EM Segment Template Builder 3.6 (Kilian Pohl)
- EM Segment Command-Line (Kilian Pohl)
- EM Segment Simple (Kilian Pohl)
- Fast Marching segmentation (Andriy Fedorov)
- Otsu Threshold Segmentation (Bill Lorensen)
- Simple Region Growing (Jim Miller, Harini Veeraraghavan)
- RobustStatisticsSeg Yi Gao (yigao@gatech.edu).
- BRAINSROIAuto Hans Johnson (hans-johnson@uiowa.edu).
Quantification
- Label Statistics (Steve Pieper)
- PET/CT Fusion Module (Wendy Plesniak)
Diffusion MRI
- Diffusion MRI Welcome Module
- DWI Denoising
- Joint Rician LMMSE Image Filter (Antonio Tristán Vega, Santiago Aja-Fernandez)
- Rician LMMSE Image Filter (Antonio Tristán Vega, Santiago Aja-Fernandez, Marc Niethammer, C-F Westin)
- Unbiased Non Local Means filter for DWI (Antonio Tristán Vega, Santiago Aja-Fernandez)
- Diffusion Tensor Utilities
- Diffusion Tensor Estimation (Raul San Jose Estepar)
- Diffusion Tensor Scalar Measurements (Raul San Jose Estepar)
- Resample DTI Volume (Francois Budin)
- Tractography
- Label Seeding (Raul San Jose Estepar)
- Fiducial Seeding (Alex Yarmarkovich, Steve Pieper)
- FiberBundles (Alex Yarmarkovich)
- Python Stochastic Tractography (Ryan Eckbo)
- ROI Select (Lauren O'Donnell)
IGT
- OpenIGTLinkIF Module (Junichi Tokuda)
- NeuroNav Module (Haiying Liu)
- ProstateNav Module (Junichi Tokuda, Andras Lasso)
- Collect Patient Fiducials (Andrew Wiles)
- IGT Tool Selector (Andrew Wiles)
Time Series
- 4D Image (Viewer) (Junichi Tokuda)
Filtering
- Overview of Resampling Tools: available resampling methods, including tools to resample in place (e.g. change resolution or voxel anisotropy etc.)
- N4 Bias Field Correction (Andriy Fedorov), based on most recent version of ITK
- MRI Bias Field Correction (Sylvain Jaume)
- Checkerboard Filter (Bill Lorensen, Jim Miller)
- Histogram Matching (Bill Lorensen, Xiaodong Tao)
- Image Label Combine (Alex Yarmarkovich)
- Resample Volume (Bill Lorensen)
- Resample Scalar/Vector/DWI Volume (Francois Budin)
- Model Transform (Alex Yarmarkovich)
- Threshold Image (Nicole Aucoin)
- Otsu Threshold (Bill Lorensen)
- Arithmetic
- Add Images (Harini Veeraraghavan)
- Subtract Images (Harini Veeraraghavan)
- Cast Image (Nicole Aucoin)
- Mask Image (Nicole Aucoin) Can be used to apply a mask such as a brain mask to a grey scale image
- Multiply Images (Harini Veeraraghavan)
- Denoising
- Gradient Anisotropic Filter (Bill Lorensen)
- Curvature Anisotropic Diffusion (Bill Lorensen)
- Gaussian Blur (Julien Jomier, Stephen Aylward)
- Median Filter (Xiaodong Tao)
- Morphology
- Voting Binary Hole Filling (Jim Miller)
- Grayscale Fill Hole (Bill Lorensen)
- Grayscale Grind Peak (Bill Lorensen)
Surface Models
- ModelMaker (Nicole Aucoin)
- Grayscale Model Maker (Bill Lorensen)
- Mesh Contour Segmentation (Peter Karasev)
- Surface Connectivity (Luca Antiga, Daniel Blezek)
- Surface Toolbox (Luca Antiga, Daniel Blezek)
- Clip Model (Alex Yarmarkovich)
- Model into Label Volume (Nicole Aucoin)
- Merge Models (Nicole Aucoin)
- Model Mirror (Wendy Plesniak)
- PolyDataToLabelmap (Xiaodong Tao, Nicole Aucoin)
Converters
- Crop Volume (previously ExtractSubvolumeROI) (Andriy Fedorov)
- Create a Dicom Series (Xiaodong Tao)
- Dicom to NRRD (Xiaodong Tao)
- Orient Images (Xiaodong Tao)
- Explode Volume Transform (Luca Antiga, Daniel Blezek)
Endoscopy
- Virtual Endoscopy (Steve Pieper)
Slicer Extensions
Introduction
- Slicer Extensions are a mechanism for anybody, including third parties, to provide modules which extend the functionality of 3d Slicer.
- While the Slicer license is suggested, it is not required for extensions. Please review the documentation of the extension carefully.
- For a subset of extensions, you can use the extension wizard in Slicer to find their webpages and to install/uninstall individual extensions. In case of problems with those modules, please talk directly to the developers of the extensions.
- The version that is available through the extension manager is chosen by the developer of that extension
Available Extensions
- Import/Export
- Plastimatch > DICOM RT Import Greg Sharp (gcsharp@partners.org).
- Segmentation
- ABC Marcel Prastawa (prastawa@sci.utah.edu) (a.k.a. Atlas Based Classification) Not yet 3.6.
- FuzzySegmentationModule Xiaodong Tao (taox at research.ge.com) .
- SpineSegmentation Sylvain Jaume (sylvain@csail.mit.edu).
- SkullStripperModule Xiaodong Tao (taox@research.ge.com).
- Registration
- Robust
- CMTK Torsten Rohlfing (torsten@synapse.sri.com) (a.k.a. Computational Morphometry Toolkit)
- HammerRegistration GuorongWu, XiaodongTao, JimMiller, DinggangShen (dgshen@med.unc.edu).
- Plastimatch > B-spline deformable registration Greg Sharp (gcsharp@partners.org).
- Robust
- Wizards
- ARCTIC Cedric Mathieu and Clement Vachet (cvachet@email.unc.edu) (a.k.a Automatic Regional Cortical ThICkness) .
- LesionSegmentationApplications Mark Scully (mscully@mrn.org) (a.k.a. 3DSlicerLupusLesionModule) .
- Tractography
- EMFiberClusteringModule Mahnaz Maddah (mmaddah@alum.mit.edu) (a.k.a. Quantitative Diffusion Tools).
- DWI
- RicianNoiseFilter Ross Whitaker (whitaker@cs.utah.edu) .
- Time Series
- 4D Analysis (Time-series plotting and analysis including kinetic analysis of DCE MRI) Junichi Tokuda (tokuda@bwh.harvard.edu)
- Quantification
- LabelDiameterEstimation Andriy Fedorov (fedorov@bwh.harvard.edu) .
- The Vascular Modeling Toolkit in 3D Slicer, Daniel Haehn (haehn@bwh.harvard.edu)
- VmtkSlicerModule prerequisite install for all VMTK plug-ins
- VMTKCenterlines providing centerline computation of surface models
- VMTKEasyLevelSetSegmentation providing level-set segmentation of vessels, aneurysms and tubular structures using an easy interface
- VMTKLevelSetSegmentation providing level-set segmentation of vessels, aneurysms and tubular structures using different algorithms for initialization and evolution
- VMTKVesselEnhancement providing vessel enhancement filters to highlight vascular or tubular structures
Installation Instructions
- Click on the cogwheel icon to start the extensions wizard (highlighted in red)
To add extension modules to an installed binary of slicer:
- Use the View->Extension Manager menu option
- The dialog will be initialized with the URL to the extensions that have been compiled to match your binary of slicer.
- Note installing extensions from a different repository URL is likely to be unstable due to platform and software version differences.
- You can select a local install directory for your downloaded extensions (be sure to choose a directory with enough free space).
- Select the extensions you wish to install and click to download them. Installed extensions will be available when you restart slicer.
- To turn modules on or off, you can use the Module Settings page of the View->Application Settings dialog.
Info for Developers
- We are using NITRC as the primary repository for contributed extensions. As a general rule, we do not test the extensions ourselves. Use them at your own risk.
- Click here to see a listing of Slicer 3 extensions on NITRC.
- Extensions are compiled as part of the nightly build. In order to have your extension compiled nightly and made available to end users, please contact the Slicer team. For explanations for developers see here
- ExampleCommandLine Jim Miller
- ExampleLoadableGuiLessModule Steve Pieper
- ExampleLoadableModule Steve Pieper
- PythonSampleScriptedModule Steve Pieper
- TclSampleScriptedModule Steve Pieper
Other information
Developer Tools
- Camera Module (Sebastian Barre)
- Note: most developer tools are not documented for end users, but contain comments in the source code
- EM Segmenter batch (Julien Jomier, Brad Davis)
- Gaussian Blur batch (Julien Jomier, Stephen Aylward)
- Register Images batch (Julien Finet, Stephen Aylward)
- Resample Volume batch (Julien Finet)
Non-SPL Supported Compatibility Packages
- BioImageSuite Xenios Papademtrios Not yet 3.6
QA Table
Modules
- Please copy the template linked below, paste it into your page and customize it with your module's information.
Slicer3:Module_Documentation-3.6_Template
- See Requirements for Modules for info to be put into the Help and Acknowledgment Tabs
- To put your lab's logo into a module, see here
Please adhere to the naming scheme for the module documentation:
- [ [Modules:MyModuleNameNoSpaces-Documentation-3.6|My Module Name With Spaces] ] (First Last Name)
Requirements for Modules
|
Examples for the Help and
Acknowledgment Panels |
Please adhere to the naming scheme for the module documentation:
- [[Modules:MyModuleNameNoSpaces-Documentation-3.6|My Module Name With Spaces] ] (First Last Name)
Documentation Draft notes
Key for flagged modules below:
: Missing or stale link to 3.6 Documentation from Help Panel in software module. If you're not sure how/where to add the link and module description:
- for command line modules, see other xml files (such as that for the GradientAnisotropicDiffusion Module) for an example of how to add documentation and links to wiki help.
- for interactive modules, see other modules in Base/GUI for an example.