User Tools

Site Tools


NeuroElf logo

NeuroElf Introduction

NeuroElf is a Matlab-based toolbox for working with neuro-imaging data. Please be aware that NeuroElf was and is not meant as a replacement for any of the more traditional and full-fledged neuro-imaging tools (such as BrainVoyager QX, SPM, AFNI, FSL, FreeSurfer, …), but rather meant to be used in addition to those, as it augments some of their functionality, facilitating a few of the tasks that might otherwise be more difficult to achieve for those researchers who are not as familiar with coding their own routines in Matlab.

Core elements

Core elements of the toolbox's functionality are

  • a flexible file handling class, xff, which gives the user read and write access to the formats used by the above mentioned programs, and also makes certain “methods” available, with which these objects can be manipulated and the data be made available for various purposes
  • a GUI element handling class, xfigure, that ameliorates some of the issues I encountered while working with Matlab's uicontrols (such as applying changes to groups of elements and facilitate the somewhat cumbersome access to GUI settings)
  • a configuration file handling class, xini, allowing to store configuration settings in human readable form (as an alternative to MAT files)
  • as well as transimg, a class that allows stacking layers of image data for combination to images
  • and transio, an implementation allowing to work with large files without having to read their entire contents into memory

On top of this “core” functionality operates a GUI that allows the user to access some of the functionality of the core elements via dialogs and forms. In particular it is able to visualize voxel- and surface-based objects, to compute (in a limited capacity) and display statistical results, and create tables and screenshots of those.

Another set of features covers the ease by which data can be manipulated, but from the command line and the graphical user interface. Particularly the 3D drawing tools have been substantially enhanced in recent releases.

Additionally, some automatization routines (e.g. a small UI for batching preprocessing of multiple subjects using the functionality of SPM5/8), analysis functionality (e.g. robust regression of second-level neuroimaging data), as well as some further visualization capabilities (e.g. display of VOI-based averaged trial-locked BOLD responses) are provided.


For installation instructions, please read on... And you might also want to check out the list of features of the toolbox.


Given that Matlab's syntax has changed over the years, and some features are not available in very old versions, currently NeuroElf runs (to the best of my knowledge) under the following environments:

  • Microsoft Windows (tested under Windows XP and Windows 7), using Matlab Version v7.5 (R2007b) and onwards
  • Linux (tested under S.u.S.E. Linux 11.2, 64-bit edition as well as Ubuntu 10, 32-bit edition), using Matlab Version v7.5 (R2007b) and onwards
  • Mac OSX (tested under Mac OS 10.7 through Mac OS 10.9), using Matlab Version v7.5 (R2007b) and onwards
  • which beginning with NeuroElf v0.9c there is very basic support for GNU Octave–starting with version v3.4.0–please be aware that I am not regularly testing new functionality against Octave!
neuroelf_introduction.txt · Last modified: 2014/06/07 06:09 by jochen