Perelman School of Medicine at the University of Pennsylvania

Section for Biomedical Image Analysis (SBIA)

GLioma Image SegmenTation and Registration (GLISTR)

GLioma Image SegmenTation and Registration (GLISTR) [TMI2012], [MICCAI2014] is a software package designed for simultaneously segmenting brain scans of glioma patients and registering these scans to a normal, healthy atlas.

Automatic segmentation and atlas normalization of brain tumor images are extremely challenging and clinically important tasks. This method performs both a spatial normalization of a glioma image into a healthy atlas, and also a segmentation of the image into 10 tissue types: cerebrospinal fluid, gray matter, white matte, vessel, edema, necrosis, enhancing tumor, non-enhancing tumor, cerebellum , and background. The method introduces a glioma growth diffusion-reaction model into the segmentation procedure, and estimates the tissue labels, warping parameters and the diffusion-reaction model parameters in an EM framework. The tumor embedding in the atlas space is intended for subject-specific modification of the healthy atlas into an atlas with tumor and edema priors. This greatly improves the registration performance by allowing the inferred deformation field to be smooth.

GLISTR is available on the CBICA Image Processing Portal, It is also available for download as a command-line tool. It is semi-automatic and requires minimal user initializations. Users should use the visual interface, CaPTk, to easily make these initializations.

Please cite [TMI2012] and [MICCAI2014] when you used this version of GLISTR in your research:

About the Algorithm

Computerized analysis of glioma images can be clinically important for different reasons. Segmentation of multi-channel MR glioma images into different tissue classes might be insightful for neuro-surgical interventions as surgeons aim to resect the most of tumor while minimizing the risk of damaging the healthy surrounding tissues. However, manual tracing of tumor borders can be a very tedious task and might be inaccurate due to the errors introduced in border delineation process. Therefore, a reliable automatic segmentation algorithm can be helpful to provide labelings of the patient tissues and facilitate the subsequent expert editing.

On the other hand, deformable registration of brain tumor images allows us to map data from different brain tumor patients into a common stereotaxic space, thereby enabling us the construction of statistical brain tumor atlases. These atlases are based on collective morphological, functional, and pathological information and increase our understanding of the Glioma’s specific behaviour in various regions of the brain. For example, Glioma atlases are used for tasks such as learning the relative location of tumors with respect to the tumor grades.

Figure 1: An example of spatial probabilities for multifocal glioma. We show subject scans in (a)-(b), normal atlas in (h)-(i), spatial probabilities obtained by growing tumors on normal atlas in (c)-(f), tumor shape prior in (g), spatial probabilities aligned to the scan in (j)-(m), and tumor posterior in (n).

In Figure 1, an example of spatial probabilities for multifocal glioma obtained by GLISTR is shown. The spatial probabilities in (c)-(f) are modified from the atlas shown in (h)-(i) using the tumor growth model. The tumor shape prior is shown in (g) computer obtained applying the random walk with restart on the subject scan shown in (a)-(b). This shape prior shows high probability values in the tumor region. Aligned spatial probabilities are shown in (j)-(m) optimized via the EM algorithm. These spatial probabilities and the tumor posterior shown in (n) fit well to healthy tissue and pathological regions shown in (a)-(b).

GLISTR requires minimal user initializations including seed points and radius for each tumor and one sample point for each tissue class. Users could use the visual interface called CaPTk to easily mark each point. Another input to GLISTR consists of the preprocessed patient scans and a list of probabilistic atlas priors representing a healthy population (we use jakob or eve currently). For preprocessing, we coregistered all modalities, corrected MR field inhomogeneity, skull stripping, and scaled intensities to fit [0, 255]. The output of GLISTR consists of a label map corresponding to the patient scans, deformation field(s) warping the originally normal atlas into the patient space, and the estimated tumor model parameters.

The current implementation of GLISTR accepts four MR modalities: T1, T1-CE, T2, and FLAIR. It segments these images into 10 labels: cerebrospinal fluid (CSF), gray matter (GM), white matter (WM), vessel (VS), edema (ED), necrosis (NCR), enhancing tumor (TU), non-enhancing tumor (NE) (optional), cerebellum (CB), and background (BG). We also define NT as the union of NE and NCR.

Figure 2: Segmentation and registration results for 3 subjects selected from the BRATS 2013 leaderboard data set. The top 1 row shows a single-focal glioma and bottom 2 rows show multi-focal gliomas. We show subject images in (a)-(b), segmentation results in (c) (indicating ET, NT, ED, WM, GM, and CSF in blue, red, cyan, white, gray, and yellow colors, respectively), spatial probabilities in (d)-(g), and tumor shape priors in (h).

In Figure 2, segmentation and registration results of GLISTR selected from the BRATS 2013 leaderboard data set are displayed. The top 1 row shows a single-focal glioma and bottom 2 rows show multi-focal gliomas. The subject images are shown in (a)-(b) and segmentation results are shown in (c) (indicating ET, NT, ED, WM, GM, and CSF in blue, red, cyan, white, gray, and yellow colors, respectively). The spatial probabilities aligned to the scan in (d)-(g) show that they fit well to the scan. The tumor shape priors in (h) help to align spatial probabilities for tumor as they initially estimate tumor regions reasonably well. However, GLISTR also showed robust estimation of tumor regions when the shape prior leaked into nearby regions as indicated by arrow in the fourth row of (h). The spatial probabilities for tumor were not expanded to this leaked region as the image likelihood for tumor kept lower values than those of healthy tissues on this region during the EM iterations. As a result, segmentations in (c) show visually reasonable tissue estimation especially for ET, NT, and ED regions.



Software License

The GLISTR software is freely available under a BSD-style open source license that is compatible with the Open Source Definition by The Open Source Initiative and contains no restrictions on use of the software. The full license text is included with the distribution package and available online.


GLISTR Software Manual: The software manual of GLISTR in PDF.

System Requirements

Operating System: Linux, Windows (64 bit)

Memory Requirement: 12GB or more.

To download, please visit:






Build Dependencies

Before building GLISTR, the following software libraries are required.

Package Version Description
CMake 2.8.4 or higher To compile and build GLISTR. Use version 2.8.4 or higher.
ITK 4.7 or greater For ITK 4.x, there’s no mandatory option. For Windows, use the platform-specific compiler generator (recommended is x64) combined with CMake to generate the project files.
LAPACK 3.2.1 Used for solving linear systems in GLISTR. In Windows, build CLAPACK using CMake with the Win64 (x64) solution platform of Visual Studio.

Note: To build in Windows, use CMake with the Win64 (x64) solution platform of Visual Studio. Our testing environment is Windows 7 64-bit and Visual Studio 2010.


Runtime Requirements

For the successful execution of GLISTR, the following software packages have to be installed.

Dependency Version Description
FSL (FLIRT) 3.3.11 – 5.0.7 GLISTR uses FLIRT for the affine alignment. For Linux and Mac OS, installation packages are provided. In Windows, it could be built from the patched source codes on the Cygwin environment. See the how-to guides How to build FLIRT in Windows.
HOPSPACK 2.0.2 Used for the optimization of the tumor growth model parameters. The mutithreaded version is used. Download and install the precompiled binary.
BrainTumorModeling_CoupledSolver 1.2.0 or higher Used for the tumor growth simulation. Note that this package depends on the PETSc library. In Windows, it could be built on the Cygwin environment. For details on the build of this tumor simulator, see the how-to guides How to build Tumor Simulator.
BrainTumorViewer 1.0.0 Used for making initializations of GLISTR. It is an optional program and not required for executing GLISTR. For details on the build of this viewer, see the how-to guides How to build BrainTumorViewer.

To build BrainTumorModeling_CoupledSolver, see How to build Tumor Simulator. To build FLIRT in Windows, see How to build FLIRT in Windows. To build BrainTumorViewer, see How to build BrainTumorViewer. For HOPSPACK, copy the HOPSPACK_main_threaded executable to the appropriate directory which could be found by the PATH environment variable or GLISTR’s installation bin folder.

Build and Installation

Please follow commands below in a shell/terminal (e.g., Bash). They will configure and build GLISTR using GNU Make (or Visual Studio in Windows). The main CMake configuration file (CMakeLists.txt) is located in the root directory of the package.

Step 1. Extract source files and create the build directory:
tar xzf glistr-${version}-source.tar.gz
mkdir glistr-${version}-build
cd glistr-${version}-build
Note: In Windows, use the appropriate zip program (e.g., 7-zip) to extract.
Step 2. Run CMake to configure the build tree:
ccmake ../glistr-${version}-source

After the execution of this command and proceed the configure once, you will see a screen like Figure 3.

Note: In Windows, use the CMake GUI instead and set the generator as Visual Studio (Win64).

Figure 3: Configuring GLISTR installation using ccmake.

In the CMake interface, follow these steps:

2.1. Change CMAKE_INSTALL_PREFIX to the folder you want to install GLISTR into. This folder should be outside the glistr-${version}-source folder. Make sure you have the write access to this folder. Change CMAKE_BUILD_TYPE (or CMAKE_CONFIGURATION_TYPES) to Release. Change ITK_DIR to the folder that ITK is installed if it fails to find it.

Note: In Windows, also change LAPACK_INCLUDE and LAPACK_LIB to the folder that LAPACK is installed it fails to find them.

2.2. Keep pressing letter c on your keyboard until option g is available/displayed on the screen.

2.3. Then press g on your keyboard to generate the makefiles and to quit this ccmake window.

Note: In the CMake GUI, c and g correspond to Configure and Generate buttons.

Step 3. Build:

Note: In Windows, launch the solution file of Visual Studio, select Release in the solution configurations (and confirm x64 in the soultion platforms), and then perform the rebuild solution.

Step 4. Test (optional):
make test

Note: In Windows, build the RUN_TESTS project. To perform tests, the BUILD_TESTING option in the CMake configuration is required to set ON.

In case of failing tests, re-run the tests, but this time by executing CTest directly with the -V option to enable verbose output and redirect the output to a text file:

ctest -V >& glistr-test.log

And send the file glistr-test.log as attachment of the issue report to sbia-software at


Step 5. Install:
make install

Note: In Windows, build the INSTALL project.

Upon the success of the above compilation and build process, GLISTR is installed into the directory specified by the CMAKE_INSTALL_PREFIX (set during build configuration in Step 2). The GLISTR [insert new link...Command-line Tools] are located in the bin subdirectory. Also, confirm the following programs could be found in the path or GLISTR’s bin folder: flirt, convert_xfm, HOPSPACK_main_threaded, and ForwardSolverDiffusion. If not, check Runtime Requirements again.





Software Authors:


  • Andreas Schuh
    • Reviewed and revised the software package.
    • Managed the software upto the version 2.
  • George Biros
    • Developed the tumor simulator used in GLISTR.

For questions contact: software (at)



  1. [MICCAI2014] D. Kwon, R.T. Shinohara, H. Akbari, C. Davatzikos, Combining Generative Models for Multifocal Glioma Segmentation and Registration, In: Proc. MICCAI (1): 763-770 (2014)
  2. [TMI2012] A. Gooya, K.M. Pohl, M. Bilello, L. Cirillo, G. Biros, E.R. Melhem, C. Davatzikos, GLISTR: Glioma Image Segmentation and Registration, IEEE Trans. Med. Imaging 31(10): 1941-1954 (2012)
  3. [MICCAI2011] A. Gooya, K.M. Pohl, M. Billelo, G. Biros and C. Davatzikos, Joint segmentation and deformable registration of brain scans guided by a tumor growth model, In: Proc. MICCAI (2): 532-540 (2011)
  4. [TMI2011] A. Gooya, G. Biros, and C. Davatzikos, Deformable registration of Glioma images using EM algorithm and diffusion reaction modeling, IEEE Trans. Med. Imaging 30(2): 375-390 (2011)
  5. [JMB2008] C. Hogea, C. Davatzikos, G. Biros, An image-driven parameter estimation problem for a reaction-diffusion glioma growth model with mass effects, J. Math. Biol. 56(6): 793-825 (2008)