As said on the introduction page, NeuroElf requires one of the following environments:
-foption to override the check for the Matlab release/version!
For a video demonstration, please watch the video on the right side (go to the NeuroElf installation video page for a full-size view).
In case you downloaded the installer, unzip the archive to a temporary location, which contains three files:
.m file contains the code that unpacks the files from the
.mat file within Matlab/Octave, runs some preliminary checks and, eventually, calls
neuroelf_setup, which performs some of the setup tasks (e.g. compiling the MEX files if necessary and creating the file format cache). To install the toolbox, change the current directory in Matlab to the temporary folder where you unzipped the archive and then call the installing
.m file with the
-i input argument:
% change into folder containing installer cd ~/Desktop % call installer (in this case for version v0.9c) NeuroElf_v09c -i % when using Octave, you must use % NeuroElf_v09c -f % to override the Matlab release check!
You will then be asked where to install the toolbox. Please make sure to choose a path/folder that is writable to the user(s) regularly using the toolbox!!
The folder into which the toolbox is installed will be added to Matlab/Octave path temporarily; in other words, if you wish to keep the toolbox on the path, please open the Path settings under File → Set Path… or, alternatively, issue the
savepath command on the Matlab/Octave prompt.
In case the MEX files were not compiled on your platform and also not part of the installation package, please first read the page on MEX file compilation and, if that doesn't help, get in touch with me (see the error reporting page for instructions).
In case you downloaded the flat folder or snapshot archive, simply unzip this archive to its final destination. The archive contains one folder which is named according to the version of the toolbox, e.g.
To finalize the installation, change into the installation folder in Matlab and issue the
neuroelf_setup function manually:
% change into NeuroElf installation folder cd /usr/local/matlab/toolbox/NeuroElf_v09b % call NeuroElf's setup neuroelf_setup
This time, you'll have to add the path manually and then save it, e.g. by issuing these commands:
_files/cache/cache.mat; it is thus important that this folder is writable to the toolbox (particularly when the format files are updated!)
_files/colinsubfolder of the installation
Given that the setup function (
neuroelf_setup) will try to compile some C-based code into MEX files (see NeuroElf MEX files for infos), it is possible that you will see some warning or error messages in case your system doesn't have a functional compiler installed or setup in Matlab. These error messages should only occur the first time you set up a particular NeuroElf version!
In that case, the setup function will try to copy the MEX files that come with the package into the NeuroElf installation folder, after which all subsequent routines should work without further problems.
Note: On Windows machines that don't have a compiler installed, the
mex function still asks to select a compiler and upon selecting “none” (0), the function exits without error. One user reported that it might be necessary to 1.) keep selecting
0 for each of the MEX files to be compiled, which is about 30 times, during the installation of NeuroElf (
NeuroElf_v0XY -i internally runs
neuroelf_setup) and then 2.) manually re-run the
neuroelf_setup function again so that the MEX files are properly copied into the installation folder.
If you receive further warning/error messages about missing MEX files, the platform you're using is not supported (as of yet) by pre-built MEX files, and I would like to ask you to get in touch with me (at info _at_ neuroelf _dot_ net), so that I can add support for this platform by adding compiled files accordingly (for which I might require your assistance and some patience…).
Once the toolbox is installed and setup, the following folder structure should be present:
NeuroElf_vXY- root folder containing the functions that are added to the path and are available for scripting
@transimg- class directory of the transimg class that handles blending several RGBA layers to one image
@transio- class directory of the transio class that handles transparent I/O access for large numerical arrays
private- transio's privately used functions
@xff- class directory of the xff class that handles complex file/object I/O and method access
private- xff's privately used functions (this folder also contains all objects' method files as type_Method.m files!)
@xfigure- class directory of the xfigure class that handles additional functionality of Matlab's graphics handles
@xini- class directory of the xini class that handles configuration file I/O and access to settings
@xprogress- class directory of the xprogress class that provides a simplified access to graphics-based progress bars
private- this folder contains all functions that are used by the GUI of NeuroElf
_core- this folder contains required auxiliary files in sub-folders
config- this folder contains the configuration (ini) files read and written to by the xini class; this folder must be writable!
dicom- this folder contains the (partial) DICOM dictionaries available in NeuroElf
OFFIS- this is a copy of an (older) dictionary of the OFFIS DICOM software package
Philips_Achieva- this is a (manually edited and partial) dictionary for Philips Achieva DICOM files
Philips_Intera- this is a (manually edited and partial) dictionary for Philips Intera DICOM files
formats- this folder contains the BFF (binary format file) and TFF (text format file) specifications that describe how xff files are read/written
icons- this folder contains TIF icons for the GUI
lut- this folder contains the LUT (look-up table) definition files (in BrainVoyager's OLT format)
splash- this folder contains the splash images used for the setup routine (neuroelf_setup)
tfg- this folder contains the text-based representation of all complex figures (UI windows) of the toolbox
_files- this folder contains optional auxiliary files in sub-folders
cache- this folder contains the cached version of the
_files/formatsfiles' contents and the methods of all xff objects; this folder must be writable!
colin- this folder contains the colin_27 template and additional files that can be used to display data that is in MNI/ICBM space (during installation, additional files will be created in this folder!)
compiled- this folder (or rather, its subfolders) contain pre-compiled MEX files in case compilation of those files fails during installation
a64- compiled MEX files for the A64 (Linux) platform
glx- compiled MEX files for the GLX (Linux) platform
mac- compiled MEX files for the MAC (PowerPC-Mac) platform
maci- compiled MEX files for the MACI (Intel-Mac) platform
maci64- compiled MEX files for the MACI64 (64-bit Intel-Mac) platform
octave- compiled MEX files for Octave (subfolders for platforms, not listed here)
w32- compiled MEX files for the W32 (32-bit MS Windows) platform
w64- compiled MEX files for the W64 (64-bit MS Windows) platform
contrib- files that are not part of the main functionality but can potentially be useful for interested users (content not fix between distributions!)
libSVM- files bundled as a reference for the libSVM functionality
spm- files required for running SPM5/8 based processing steps (e.g. when using spm5_preprojobs for data preprocessing)
srf- additional surface files used for some of the surface-manipulating methods (unit cube, unit cylinder, and unit sphere)
tal- files required by the tdlocal2 function for Talairach Demon Database inquiries as well as files for coordinate conversion from TAL to ICBM and vice versa
todo- if present (usually SNAPSHOTs only), a collection of files and folders that still require work