GithubHelp home page GithubHelp logo

baskadym / ismrmrd Goto Github PK

View Code? Open in Web Editor NEW

This project forked from fil-physics/ismrmrd

0.0 0.0 0.0 1.32 MB

ISMRM Raw Data Format

License: Other

C++ 69.34% C 10.45% MATLAB 16.93% CMake 3.27%

ismrmrd's Introduction

Build Status

ISMRM Raw Data Format (ISMRMRD)

A prerequisite for sharing magnetic resonance (imaging) reconstruction algorithms and code is a common raw data format. This document describes such a common raw data format and attempts to capture the data fields that are require to describe enough details about the magnetic resonance experiment to reconstruct images from the data. This standard was developed by a subcommittee of the ISMRM Sedona 2013 workshop. Please see the ISMRMRD Documentation for more information.

Obtaining and Installing

To download the source code, clone the git archive:

git clone https://github.com/ismrmrd/ismrmrd

API Documentation can be found at https://ismrmrd.github.io/api/.

You will need CMake, HDF5, and optionally Boost and FFTW to build the C/C++ code. To generate the API documentation you will need Doxygen. Please see the ISMRMRD documentation for specific installation instructions for Linux, Mac OS X, and Windows.

Overview

The raw data format combines a mix of flexible data structures (XML header) and fixed structures (equivalent to C-structs).

A raw data set consist mainly of 2 sections:

  1. A flexible XML format document that can contain an arbitrary number of fields and accommodate everything from simple values (b-values, etc.) to entire vendor protocols, etc. The purpose of this XML document is to provide parameters that may be meaningful for some experiments but not for others. This XML format is defined by an XML Schema Definition file (ismrmrd.xsd). Please see the example header, schema, and the documentation for more information.

  2. Raw data section. This section contains all the acquired data in the experiment. Each data item is preceded by a C-struct with encoding numbers, etc. Following this data header is a channel header and data for each acquired channel. The raw data headers are defined in a C/C++ header file (ismrmrd.h). Please see the C header and the documentation for more information.

In addition to these sections, the ISMRMRD format also specifies an image header for storing reconstructed images and the accompanying C/C++ library provides a convenient way of writing such images into HDF5 files along with generic arrays for storing less well defined data structures, e.g. coil sensitivity maps or other calibration data.

Other Resources

External Use of ISMRMRD in other source packages

Build and install ISMRMRD by setting

   cmake -DCMAKE_INSTALL_PREFIX=<your install directory>

To use ISMRMRD for your externally developed projects, add the following to your CMakeLists.txt file:

  find_package( ISMRMRD REQUIRED )
  link_directories( ${ISMRMRD_LIBRARY_DIRS} )
  include_directories( ${ISMRMRD_INCLUDE_DIRS} )
  target_link_libraries( mytarget ${ISMRMRD_LIBRARIES} )

then when configuring your package use set the following cmake variables (command line variant shown):

  cmake -DISMRMRD_DIR:PATH=<path to build/install tree of ISMRMRD> <path to my source tree>

ismrmrd's People

Contributors

danajk avatar dchansen avatar ghisvail avatar hansenms avatar hjmjohnson avatar inati avatar isolovey avatar kristhielemans avatar kvahed avatar mortenengell avatar mrireconner avatar naegelejd avatar ojosephs avatar pini-gh avatar puletic avatar pvelasco avatar rfdougherty avatar tsangild avatar twhelan3 avatar xueh2 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.