Benjamin E. Dietrich1, Bertram J. Wilm1, and Klaas P. Prüssmann1
1Institute for Biomedical Engineering, ETH Zurich, Zurich, Switzerland
Synopsis
The ISMRM
raw data format enables vendor agnostic, reproducible image reconstruction
research. So far, the ISMRM raw data format ecosystem did not have a format
specific, fast data browser, which is capable of handling large datasets and
displaying the data in a convenient form. In this work, we present such a
software tool, open-source and platform independent.
Introduction
Research in the field of MR image
reconstruction has made continuous advances over the last decades. Input to
image reconstruction is raw MR data as well as k-space data, which is often
hardly accessible on clinical MRI systems and comes in many different vendor
specific formats. Towards the goal of reproducible research, the ISMRM has
taken steps to implement a discipline-specific, open raw data file format – the
ISMRM raw data format (ISMRMRD) 1. The purpose of this format is to
facilitate exchange of raw data along with the required physics parameters of
the acquisition process to provide all information necessary for vendor
agnostic image reconstruction.
The ISMRMRD format is based on the
widely used HDF5 file format and has programming libraries available for C++,
Matlab and Python, as well as data converters for GE, Siemens, Philips and
Bruker datasets. Developing, debugging and maintaining of related software,
such as file format converters, sequence raw data labeling, raw data processing,
as well as reconstruction algorithms often requires developers to visually
inspect the acquisition headers and data chunks contained in the ISMRMRD files,
which can easily grow to sizes of tens of gigabytes in case of diffusion or
fMRI experiments. Finding labeling or data inconsistencies can then often
results in “find the needle in a haystack” operations, wasting precious
development time.
While there are several free HDF5 data
exploration tools available, the ISMRMRD ecosystem lacks a specific, fast raw
data browser. In this work, we present such a tool, which allows fast browsing
through large ISMRMRD datasets. The presented cross platform ISMRMRD viewing tool is written in Python, freely
available as open-source project on GitHub 2 and builds on the
available ISMRMRD programming libraries.Implementation
An ISMRMRD
file consists of a flexible XML header and a set of fixed structures for the actual
coil and trajectory data. Each acquisition, which typically corresponds to one
k-space line, is described by a fixed size data header consisting of several
encoding counters and various data specific numbers such as number of samples,
channels and acquisition dwell time. These fixed size headers are most
conveniently displayed in a table with each column representing a header field
and each row corresponding to an acquisition. A model-view-viewmodel software
architecture based on the PyQt library 3 was selected for
implementation. An intermediate data buffer in the viewmodel class enables
browsing through very large files without running into performance and memory
issues.
Plotting of
individual acquisitions (coil and trajectory data), triggered by selecting a
corresponding row in the header table, is implemented using the PyQtGraph
library 4. The data can be displayed in various forms (magnitude,
real, imaginary, FFT, phase), easily extendable and selectable from a drop down
list above the plot area.
Figure 1
shows the main application window and Figure 2 a close-up of the acquisition
header table, delivering fast access to all encoding counters and header fields.Results and Discussion
A fast
ISMRMRD file browser was implemented which can easily handle large datasets of
tens of gigabytes. Opening a 2.6 GB diffusion dataset (64 diffusion direction,
217800 acquisitions) takes less than 1.46 seconds on an Intel Core i7-6700 @
3.4GHz with 480 GB Intel SSD DC S3500 disk. It show all acquisition header
fields in a table and selected coil and trajectory data (if available) can be
visualized in a plot area (see Figure 3). This makes it a very useful tool for
all activities involving ISMRM raw data. Further developments will involve more
viewing capabilities as well as adaptation to newer versions of the ISMRMRD
format.Acknowledgements
No acknowledgement found.References
1. Inati SJ, Naegele JD, Zwart NR, Roopchansingh V, Lizak MJ, Hansen MJ, Liu CY, Atkinson D, Kellman P, Kozerke S,
Xue H, Campbell-Washburn AE, Sorensen TS, Hansen MS. ISMRM Raw Data Format: A Proposed Standard for MRI Raw Datasets. Magn Reson
Med 2016.
2. Dietrich
BE. ISMRMRD Viewer. https://github.com/DietrichBE/ISMRMRD-Viewer. November
2017.
3.
Riverbank Computing Limited. https://riverbankcomputing.com/software/pyqt.
November 2017.
4. PyQtGraph
Scientific Graphics and GUI Library for Python. http://www.pyqtgraph.org.
November 2017.