Edit this page

NA-MIC Project Weeks

Back to Projects List

mpReview Development of a streamlined Slicer module for manual image annotation

Key Investigators

Presenter location: In-person

Project Description

Currently, there does not exist a simple, streamlined way to annotate many DICOM series and save Segmentation objects. Users have to manually load data into Slicer, set up the layouts themselves (in the case of multi-parametric data), name the files, etc. – this is difficult to do for a large dataset!

There are extensions that already exist, for instance CaseIterator, FlywheelCaseIterator and SegmentationReview. Unfortunately, some do not take DICOM files as input, and so far cannot handle cases where a clinician needs to view multiple series at the same time.

The 3DSlicer module mpReview (part of the SlicerProstate extension) was previously developed to handle these cases, specifically for assisting with manual annotation of the prostate and other related anatomical regions. In previous project weeks, we have streamlined the extension here and updated the module to use the latest SegmentEditor, and incorporated the use of Google Cloud Platform here.

However, there are improvements that can be made in terms of functionality. For instance, we would like to allow the user to access multiple types of servers, and perform annotation of body parts other than the prostate.

In this project week we’d like to focus on getting user feedback on the current state of the extension, and ideas for improvements and features to add. We will try out extensions mentioned above to get ideas of how ours could be more streamlined.


  1. Get feedback from the current multiple_server_feature branch of the module.
  2. Try out CaseIterator, FlywheelCaseIterator, and SegmentationReview
  3. Brainstorm ideas for improvements and features to include.
  4. Define the steps that are needed to accomplish the changes.
  5. Release the module as a new Slicer extension

Approach and Plan

  1. We will provide instructions below how to setup the module, and download sample data, etc. –> see below “Installation Instructions for Users”
  2. We will ask users to experiment with the module and provide us feedback.
  3. We will make some changes to the module based on user feedback and from our experimentation with the other extensions
  4. At the same time we’ll test out other approaches

Progress and Next Steps

  1. I made some UI changes to the module from feedback from Nadya and Andrey
  2. I tested out two Slicer extensions that are also used for annotations – CaseIterator and SegmentationReview. Still waiting for Flywheel instance to test FlywheelCaseIterator
  3. I was able to get multiple users to try the module, and fixed some of the errors they found
  4. I also demo’d the module and received very useful feedback here
  5. Next week I will make a PR so the latest version of mpReview can be used. After that I will submit it as a separate extension with some additional features


Demo of the module

Background and References

We have worked on this during multiple project weeks, PW35 and PW37. The code from PW37 is available here.

Installation Instructions for Users

  1. Clone the mpReview multiple_server_feature branch
  2. Add the following extensions: SlicerDICOMWeb, DCMQI, QuantitativeReporting, SlicerDevelopmentToolbox
  3. Enable the developer mode in the Application settings and add the path from #1 to the module list
  4. If you want to use the local Slicer DICOM database to experiment with the module, download some sample data from this dropbox link here. We’ve provided data from a typical prostate MR imaging scan (collection QIN-Prostate-Repeatability) and a typical CT scan (from NLST).
  5. Or, if you want to be adventurous and try out using the Google Cloud Platform server, you will first need to have a google account and a project. You will have a 90 day free trial with credits, or go here to request $300 credits from Imaging Data Commons. Then follow this Google Colab notebook to set up your very own DICOM datastore which will hold the same data from above. You will also need to install the Google Cloud SDK on your machine (for Mac/Linux make sure you install it in your home directory and add to PATH). In windows it should be added to the path automatically.
  6. Install the mpReview module by going to Applications and adding the path.
  7. If you have time, it would be great to get your feedback on this google form :)