I would like to announce the release of my official Julia package for the analysis of dynamic contrast enhanced (DCE) MRI data: DCEMRI.jl.

Why Julia?

From the Julia website,

Julia is a high-level, high-performance dynamic programming language for technical computing, with syntax that is familiar to users of other technical computing environments. It provides a sophisticated compiler, distributed parallel execution, numerical accuracy, and an extensive mathematical function library. The library, largely written in Julia itself, also integrates mature, best-of-breed C and Fortran libraries for linear algebra, random number generation, signal processing, and string processing.

Put simply, it looks like Matlab, which is simple to learn and familiar to most MRI researchers, but it works better and faster and is completely free. In particular, for the problem of DCE MRI, Julia’s simple and flexible parallel computing model allows almost perfect parallelization of the nonlinear least squares fitting problem. In my informal testing, the intrinsic speed of Julia coupled to my parallel implementation produced a factor of 20-40 speedup over comparable Matlab and Python.

Installation

Installation is simple. First you need Julia. The simplest way to get Julia is to download the current release.

Next run Julia, typically by double clicking the icon in the Applications folder or Start menu. You should see a terminal window with the julia> prompt pop up. This is analogous to the command line in Matlab. To install DCEMRI.jl, run in the terminal window:

julia> Pkg.add(“DCEMRI”)

This might take a minute, because the validation data must be downloaded, as well as a few supporting packages.

If you want to DCEMRI.jl to create plots for you, you also need Python with Matplotlib installed. Most OS X and Linux machines probably already have a version of Python with Matplotlib installed. If you don’t have Python with Matplotlib, such as if you are on Windows, you can grab the excellent, free Anaconda python distribution, which comes with Matplotlib pre-installed.

See the README for more detailed information, and feel free to contact me or file an issue if you have problems.

Enjoy!