Wiki

Clone wiki

Radiomics Enabler / Functional and technical description

Functional and technical description

Introduction

Radiomics Enabler® is a web application developed by Medexprim, a French startup created in 2015, whose mission is to unleash the potential of medical images archives (PACS) for research and big data projects. Radiomics Enabler® automates the extraction of large amounts of specific studies/series from a PACS. It is combined with the Clinical Trials Processor, an open-source solution edited by the RSNA, which automates the de-identification process, filtering and specific routing according to predefined sets of rules. User rights and processing rules are defined per project.

The typical workflow for any bulk extraction is a 3-step process:

  1. Selection of relevant acquisitions: the user enters a list of patient identifiers or other search criteria, Radiomics Enabler® queries the PACS and displays the list of corresponding sequences. The user filters and selects the DICOM studies or series relevant to his research project.

  2. Image extraction and pre-processing: this process is automated, done in the background, according to a pre-configured set of rules defined for each research project.

  3. The user verifies that all studies/series have been extracted, processed and transmitted to the destination. Upon validation by the user, images are deleted from the server. The lists of extracted studies/series are kept for traceability purposes.

This document gives a functional overview of the solution, from a user perspective, as well as from an administrative one. It is composed of the following sections:

  • The first section gives an overview of the software architecture and main functionalities
  • The second section describes the steps for the user in three typical use cases : o Bulk extraction and de-identification for a big-data project o Extraction of studies for patients included in a clinical trial o Masking of pixel burnt-in information
  • The third part is an overview of administrative functionalities
  • The 4th part provides technical requirements for the installation.

##1 Overall software architecture of the combined solution ##

1.1 Radiomics Enabler®

Radiomics Enabler® is a web application, with a backend server connected to the PACS using a DICOM Query/Retrieve interface. It was developed in python, using the Django and Celery frameworks. It uses the dcmtk DICOM library. The data and user interface layers are separated (Model View Controller architecture), so that the core software could easily be integrated within another application. It is also possible to deploy the layers on separate servers to allow for different levels of network access. This would be particularly useful in a regional PACS setting where you need to provide user web access, while ensuring that data are securely stored.

The application is functionally structured around research projects, with user rights attached to each project as illustrated in Figure 1. For each project, users constitute lists of DICOM studies and/or series which are to be batch extracted from the PACS. Each batch has a status associated to it: in preparation, processing, interrupted, complete, in error or archived, as displayed in Figure 2.

Capture.PNG

Figure 1: Structure of Radiomics Enabler® around projects and batches

2.PNG

Figure 2: Different batch statuses within a project

Once a batch extraction is launched, studies/series to be extracted are queued and are individually retrieved from the PACS. The number of parallel extractions is configurable. Default is 3.

A video demonstration of the application is visible at https://www.medexprim.com/demonstration-video/.

Two user roles exist in the application: user and staff. Staff users have access to the administrative application allowing them to create new users and assigning users to existing research projects (see section 3.1).

1.2 RSNA Clinical Trials Processor

The RSNA Clinical Trials Processor (CTP) is a highly configurable and extensible java application, supporting multiple processing pipelines each comprised of multiple stages.

A few examples of processing that can be performed thanks to the RSNA’s Clinical Trials Processor are listed below:

  • De-identification: Replace DICOM header fields with elements, either generated randomly or retrieved from a look-up table containing the original identities and de-identified values. A correspondence table can be kept by the institution, should it be necessary to retrieve the original identity;

  • Filtering based on any DICOM tag: e.g. leave out specific series, such as those with pixel-burnt-in patient information (screenshots), or only keep series that match a specific acquisition protocol;

  • Mask pixel burnt-in patient sensitive information;
  • Secure Internet routing (DICOM over https or sftp).

This software is one of the few that fully complies with the recommendations of the DICOM standard on de-identification (supplement 142 : Clinical Trial De-identification Profiles).

The solution comes with two user interfaces:

  • a java client application, the RSNA CTP Launcher, which allows one to configure processing pipelines (see section 3.2)
  • a web application with different user roles per pipeline, allowing users to interact with the application when required, such as entering trial patient IDs (see section 2.2).

Complete information on the RSNA Clinical Trials Processor may be found at http://mircwiki.rsna.org/index.php?title=CTP-The_RSNA_Clinical_Trial_Processor.

1.3 Combined solution

Radiomics Enabler® extracts batches of studies/series and places them in a directory named after the project.

The RSNA CTP is configured so to have a pipeline watching this directory and processing incoming images according to the desired rules.

In short, one research project in Radiomics Enabler® = one pipeline in the RSNA CTP.

In many cases, the processing done by the RSNA CTP is completely transparent to the end user who only has to know how to use Radiomics Enabler® (see section 2.1) to select the studies/series to extract at the beginning of the process and to validate the batch at the end of the process (step 1 and 3 on Figure 3).

3.PNG

Figure 3: Radiomics Enabler and CTP working together

2 Details of typical use cases / steps for the user

Below are three examples of common use cases. The solution can however accommodate many different use cases, as explained in section 3.2.

2.1 Bulk extraction and de-identification for a big data or radiomics project

After creating a new project, a user will create a first batch and will query the PACS based on a list of patient identifiers and/or standard DICOM search criteria as illustrated in Figure 4, at the study or series level. Please see the video demonstration on https://www.medexprim.com/demonstration-video/ to understand how easy and powerful it is to constitute batches in Radiomics Enabler®.

4.PNG

Figure 4: Possible search parameters in Radiomics Enabler

The RSNA CTP will automatically de-identify the exams and will place them in a shared directory (using Samba Share for instance).

After mounting the shared directory as a network drive in his file browser (eg. Windows Explorer), the user can copy/paste the de-identified studies on a removable media, and delete the images from the shared directory. He will eventually mark the batch as archived in Radiomics Enabler®.

In this use case, the user does not need to access the RSNA CTP. Everything is done in the background.

Our default configuration for the de-identification process is to hash patient IDs and patient names, decrement all dates by 3210 days, keep patient age, and remove all information related to institutions and physicians. Studies related to a same patient are under the same subject ID. A database keeps track of the original IDs and corresponding trial IDs and can be accessed through the CTP web application.

2.2 Extraction of studies for patients included in a clinical trial

In this use case, the process is the same as the previous one for the Radiomics Enabler® part. However, there is an extra step using the RSNA CTP web application to specify the correspondence between the original patient information and the trial patient information.

The CTP web application allows one to pre-enter corresponding matching patient information either patient by patient as illustrated in Figure 5, or by importing a CSV file using the top arrow of the same screen.

5.PNG

Figure 5: Lookup Table Editor

When exams pass through the pipeline, replacement values are taken from this lookup table. If there is no matching patient, exams are “quarantined” at the “LookupTableChecker” stage. The user needs to go to the “Lookup Table Checker” stage and fill in the replacement values for the unfound patients as illustrated in Figure 6, which will have the effect of feeding the lookup table.

6.PNG

Figure 6: Filling replacement values as exams go through

When all replacement values have been entered, the user re-queues the quarantined content as illustrated in Figure 7, so that the studies go through the pipeline again and pick-up the newly added values from the Lookup Table.

7.PNG

Figure 7: Re-­queuing the quarantined content

2.3 Masking pixel burnt-in information

If extracted studies contain pixel burnt-in patient information, you will need to configure a stage that will either remove these types of series if they are not required in the protocol, or configure a stage called “DicomPixelAnonymizer” that will blank the part of the images that may contain such information (see section 3.2).

Although this is automatically done, you will probably want to check that the information is indeed blanked, and that there is no remaining burned-in PHI before studies get exported.

You can set a stage that will let the user view the de-identified studies as illustrated in Figure 8 before they get moved to the final export stage.

8.PNG

Figure 8: Example of two masks applied to a screenshot : one on the patient information, one on the institution logo

3 Administration

3.1 Managing users and assigning users to a project

The administrative application of Radiomics Enabler® is the standard administrative web interface of the Django framework.

Users with administrative privilege will log on to this application to manage users and assign users to existing projects (which are created through the main application).

10.PNG

Creating new users and resetting passwords is done as illustrated in the figures below.

11.PNG

Figure 9: Creating a new user

12.PNG

13.PNG

Figure 10: Attributing administrative privileges to a user and promoting him to user manager

To assign a user to a project, you will need to go to profile, select the user and add the projects he should be affected to, like illustrated on Figure 11.

14.PNG

Figure 11: Assigning projects to a user

Django supports authentication through Active Directory.

The RSNA CTP has its own user database. New users and user roles are created through the CTP web application by a user with administrative privileges, as illustrated in Figure 12.

15.PNG

Figure 12: RSNA CTP User Manager

3.2 Configuring de-identification, filtering and routing pipelines

The RSNA CTP launcher is used to configure different processing pipelines. Each pipeline in CTP corresponds to one research project in Radiomics Enabler® and may be composed of multiple stages depending on the needs of the research project. Figure 13 is a screenshot of the application showing the list of all processing stages that can be configured. A description of each stage may be found on http://mircwiki.rsna.org/index.php?title=CTP-The_RSNA_Clinical_Trial_Processor.

16.PNG

Figure 13: RSNA CTP Launcher and pipeline configurations

For each stage, general parameters are set through the application, and finer rules based on DICOM tags are configured in scripts.

Below is an example of a script used by the DicomPixelAnonymizer.

{ [0008,0070].contains("GE MEDICAL") * [0040,0310].contains("DLP") } (0,0,512,110)

The script means that if the DICOM tag [0008,0070] of an incoming image contains « GE MEDICAL » and the tag [0040, 0310] contains « DLP », a 512x110 pixels mask will be applied on the top left corner of the image.

We will provide the hospital with all the support required to take advantage of the richness of the solution. We will adapt to the hospital wish to either be completely autonomous on the configuration of pipelines, or let us configure pipelines on their behalf each time a new research project is created, or somewhere in between.

Initial training will be adjusted accordingly.

Updated