Chapter 2
Platform Overview

2.1 MRiLab Simulation Platform

The MRiLab simulation platform consists of

  1. A Main Simulation Control Console
    The main simulation console (Figure 2.1) behaves analogous to a MR scanner console for graphically adjusting imaging setup and conducting simulation control. Simulation feedback are instantly updated on information panels during simulation.

    Figure 2.1: The MRiLab Main Simulation Control Console. This control console functions like a MR scanner console for graphically adjusting imaging setup and conducting simulation control.

  2. Design Toolboxes
    The Design toolboxes (Figure 2.2) provide independent interfaces for analyzing RF pulse (e.g. SLR, non-adiabatic and adiabatic pulse etc.), constructing arbitrary pulse sequence (e.g. SPGR, SSFP and FSE etc.), configuring coil profile and static field (i.e. B1+/- and B0 field), designing imaging object moving track and evaluating spatial specific absorption rate (SAR). Dedicated image display and analysis tools (SpinWatcher, SARWatcher, MatrixUser and arrayShow) are developed and tailored to work with multi-dimensional image array output.

    Figure 2.2: The Shortcut for Function Toolbox on Simulation Control Console. Each icon is associated with an individual toolbox with specific functions.

  3. Discrete Bloch-equation Solving Kernels
    The Bloch-equation solving kernels manipulate tissue spin evolution at discrete time interval with a desired spin model and at a given MR sequence. These kernels are accelerated using Matlab MEX functions that are optimized for running GPU and multi-threading CPU parallel computing techniques. Moreover, these kernels are also capable of preprocessing acquired MR signal and k-space locations prior to desirable image reconstruction. Further image reconstruction with stored k-space data is accomplished in corresponding reconstruction module.
  4. Macro Library
    MRiLab uses a concept of macros for simplifying experiment design. A macro in MRiLab is defined as a programming-free module that can be added, removed and modified in the process of constructing MR sequence, coil profile, magnet field and object moving track, etc. For instance, a Sinc RF pulse (rfSinc) is considered as a RF macro that can be used for constructing a gradient echo sequence, and the attributes of this macro include pulse starting time (tStart), pulse ending time (tEnd) and the time bandwidth product (TBP) etc. MRiLab provides a macro library (Figure 2.3) covering a wide range of macros. Using these predefined macros, you should be able to accomplish most of experimental design work. However, if special macros are needed, MRiLab also provides interfaces to work with user-defined macros. More detailed description for macros is provided in Chapter 5.

    Figure 2.3: The Macro Library Tree Structure in MRiLab. Individual tree nodes under SeqElem root are functional macros that can be used for designing MR sequences. Notice that only RF nodes are unfolded here for display purpose.

MRiLab applies flexible simulation information storage by using XML file system, which simplifies translating simulation across different studies. MRiLab also supports external plugins programmed using either Matlab or C language for creating extendable simulation environment.

2.2 Simulation Workflow


Figure 2.4: MRiLab Workflow Diagram

The workflow diagram of MRiLab simulation is shown in Figure 2.4. One typical simulation requires input of :

The input is configured at the main control console where the user can modify any aspect of the simulation experiment. The main console preprocesses the input information, then translates them into kernel signal, based on which the discrete solving kernel executes each voxel of imaging objects with either GPU or multi-threading CPU acceleration. The acquired MR signal k-space data from the kernel passes to image reconstruction module where either default recon code or external recon tool (e.g. Gadgetron) is applied. The reconstructed image can be analyzed using MRiLab image display tools including :

2.3 Gradient Echo: Start A Simple Scan

Up to this point, you may wonder how I can start to use MRiLab. Here below is a simple 3D Gradient Echo (GRE) simulation example to gain your first experience of using MRiLab.

The final result of this 3D GRE experiment should be somewhat similar to this (Figure 2.5).


Figure 2.5: The Simulation Result for A 3D GRE Experiment

If you managed to simulate this gradient echo image, congratulations! You have successfully performed your first MRiLab experiment. So you should be prepared for deeper understanding of MRiLab simulation platform by following the rest of this user guide.