Skip to content

Latest commit

 

History

History
45 lines (28 loc) · 4.02 KB

README.md

File metadata and controls

45 lines (28 loc) · 4.02 KB

Running SVRTK in Gadgetron (Work-in-progress)

Gadgetron (https://github.com/gadgetron) is an open-source software framework designed for the reconstruction of medical images. The framework offers a versatile platform for developing data processing pipelines that handle medical image data, guiding it through a sequence of modular components called "Gadgets." These Gadgets enable the transformation of raw data into fully reconstructed images. Gadgetron encourages the creation and sharing of reconstruction modules, facilitating the integration of new Gadgets into the system. The framework primarily supports C/C++ for Gadget implementation, while also including wrapper Gadgets to incorporate modules developed in the Python scripting language. Integrating the SVRTK reconstruction within the Gadgetron framework allows to perform the slice-to-volume reconstruction (SVR) process in the MR scanner environment. This integration enables exporting the acquired scanner-reconstructed TSE scans to an external server to be converted into NIFTI format and launching the SVRTK docker to perform slice-to-volume reconstruction once all TSE images have been collected. The main advantages of this implementation are the automatization of SVRTK, reducing the workload of radiographers, and the availability of the resulting 3D reconstructions in the duration of the fetal scan.

In this repository, the tools for launching 3D brain+body D/SVR reconstruction for TSE structural fetal MRI integrated directly into the scanner environment with the final 3D reconstructions made available during the ongoing fetal scan can be found. It combines the previous works on automated 3D SVR reconstruction with a real-time integrated scanner workflow.

How it works:

  • The TSE images are exported to an external GPU-accelerated server (Gadgetron PC) in real-time and converted to NIfTI format
  • Once all TSE images are collected, a 5-second dummy sequence is run to launch the SVRTK docker contained in the Gadgetron PC
  • Once the SVR results are available (for brain and body), two other short dummy sequences are run to pull both results to the MR scanner and store it in the medical image database

The repository and the code were created by Sara Neves Silva, supervised by Dr Jana Hutter.

svrtk-current

Requirements

To set up the Gadgetron development environment, please follow the instructions provided here https://github.com/hansenms/gadgetron/tree/hansenms/conda-install. Please refer to the instructions from https://github.com/gadgetron/GadgetronOnlineClass to get familiarized with the Gadgetron framework.

Testing the SVR Scanner Integration using Gadgetron:

In the remote server:

Step 1:

Copy the following configuration files into /miniconda3/envs/gadgetron/share/gadgetron/config: gadgetron_svrtk.xml, Generic_Cartesian_FFT_pull_svrtk_result_brain.xml, Generic_Cartesian_FFT_pull_svrtk_result_body.xml

Step 2:

Copy the following Python files into /miniconda3/envs/gadgetron/share/gadgetron/python: nifti_python_gadgetron_svrtk.py, nifti_python_gadgetron_svrtk_result_brain.py, nifti_python_gadgetron_svrtk_result_body.py

Step 3:

Export the scanner-reconstructed TSE images (from PACS) to the server and store them in the folder /home/"user"/data/t2-stacks/"today's date" and convert them to NIfTI (dcm2nii) - all the remaining processing is performed automatically

In the scanner:

Step 1:

Copy the following configuration files into the scanner Ice folder: IceProgramGadgetron_launchSVRTK.xml, IceProgramGadgetron_BrainSVRTK.xml, IceProgramGadgetron_BodySVRTK.xml

Step 2:

Ensure to use the sequences (HASTE, MP-RAGE)/protocols modified to establish the Gadgetron connection

Step 3:

Open a MARS_SSH terminal and ssh into the remote server

Step 4:

Activate Gadgetron in the terminal (gadgetron) - this establishes the communication between the scanner and the Gadgetron PC for the data/messages to be sent back and forth