MRIReco.jl: An MRI Reconstruction Framework written in Julia

01/29/2021
by   Tobias Knopp, et al.
0

Purpose: The aim of this work is to develop a high-performance, flexible and easy-to-use MRI reconstruction framework using the scientific programming language Julia. Methods: Julia is a modern, general purpose programming language with strong features in the area of signal / image processing and numerical computing. It has a high-level syntax but still generates efficient machine code that is usually as fast as comparable C/C++ applications. In addition to the language features itself, Julia has a sophisticated package management system that makes proper modularization of functionality across different packages feasible. Our developed MRI reconstruction framework MRIReco.jl can therefore reuse existing functionality from other Julia packages and concentrate on the MRI-related parts. This includes common imaging operators and support for MRI raw data formats. Results: MRIReco.jl is a simple to use framework with a high degree of accessibility. While providing a simple-to-use interface, many of its components can easily be extended and customized. The performance of MRIReco.jl is compared to the Berkeley Advanced Reconstruction Toolbox (BART) and we show that the Julia framework achieves comparable reconstruction speed as the popular C/C++ library. Conclusion: Modern programming languages can bridge the gap between high performance and accessible implementations. MRIReco.jl leverages this fact and contributes a promising environment for future algorithmic development in MRI reconstruction.

READ FULL TEXT

page 1

page 6

page 7

page 13

page 17

page 19

research
05/17/2017

Nemo/Hecke: Computer Algebra and Number Theory Packages for the Julia Programming Language

We introduce two new packages, Nemo and Hecke, written in the Julia prog...
research
05/24/2019

Phoenix – The Arabic Object-Oriented Programming Language

A computer program is a set of electronic instructions executed from wit...
research
03/27/2018

Fast, Flexible, Polyglot Instrumentation Support for Debuggers and other Tools

Context: Software development tools that interact with running programs ...
research
03/23/2020

Julia Language in Machine Learning: Algorithms, Applications, and Open Issues

Machine learning is driving development across many fields in science an...
research
06/15/2021

Rcall: Calling R from Matlab

Summary: R and Matlab are two high-level scientific programming language...
research
12/22/2020

NetworkDynamics.jl – Composing and simulating complex networks in Julia

NetworkDynamics.jl is an easy-to-use and computationally efficient packa...
research
07/30/2017

Owl: A General-Purpose Numerical Library in OCaml

Owl is a new numerical library developed in the OCaml language. It focus...

Please sign up or login with your details

Forgot password? Click here to reset