Jump to: navigation, search

This will be a location to Test pages and links before moving the pages to the proper locations within EEGLAB, etc.

11 Dec 2010. This page is under construction...



This is a brief summary of the progress of the Enactor MATLAB toolbox that can be used to ‘enact’ an experiment in a virtual environment mapped onto an actual experimental motion capture space. By connecting to sn onlinr data stream via MatRiver functions, functions using Enactor objects can be used to control 3-D Mobile Brain/body Imaging (MoBI) experiments.

The Enactor toolbox is object oriented. It is compromised of a number of classes and many low-level atomic Matlab functions called in class methods. Enactor classes use MATLAB ‘Simulink 3-D’ (formerly Matlab VRML) nodes internally and wrap a hierarchy of them (Transform, Shape, Material, …) inside their transformNode field. In addition to holding MATLAB virtual reality nodes (objects), these classes provide functionalities based on their underlying geometry that can be used to support interactive MoBI experiments.

Figure 1. Class structure of the Enactor toolbox.

Figure 1 above shows the currently implemented class structure of the toolbox. Arrows indicate parent-child relationships. For each class, its properties (values) are listed below the class title. At the bottom of each class icon, its methods (functions) are shown. For example, since VrBox class is a child of vrPrism, it inherits its fields (prism and isFilled) and its distanceTo() method.

The vrObjectCollection (‘virtual object collection’) class holds an array of vrObject’s and calculates the minimum distance from a point (or an array of points) to each of them using its distanceTo() function. vrObjectCollection may be used to define a composite object in the virtual environment. For example, an instance of this class can form a connected maze composed of many vrVerticalWalls.

It is possible to calibrate vrBox and vrSphere objects can represent the location and geometry of actual physical objects. An instance of vrBox can represent an actual box, for example the LCD screen or table surface at which a subject is sitting. Similarly, an instance of vrSphere can represent the location and extent of an actual ball, or else a virtual ‘hotspot’ around a point in the experimental space. To achieve this, both these classes have a create_from_points() method, given a series of calibration point locations (in sequence) during calibration, constructs a corresponding virtual object location and shape. Figure 2 illustrates the calibration of these objects to points in the motion capture space.

Figure 2. Calibration points for instances of vrSphere and vrBox.

To calibrate the position of vrShpere, two opposite points on a diameter are used for calibration. Similarly, vrBox uses five points, four clockwise on one face and the fifth on one opposite corner as shown schematically in Figure 3.

Figure 3. Order of calibration points for vrBox.

Function Reference

Open Source Matlab Toolbox for Neuroelectromagnetic Forward Head Modeling


What is NFT?

Neuroelectromagnetic Forward Modeling Toolbox (NFT) is a MATLAB toolbox for generating realistic head models from available data (MRI and/or electrode locations) and for computing numerical solutions for solving the forward problem of electromagnetic source imaging (Zeynep Akalin Acar & S. Makeig, 2010). NFT includes tools for segmenting scalp, skull, cerebrospinal fluid (CSF) and brain tissues from T1-weighted magnetic resonance (MR) images. The Boundary Element Method (BEM) is used for the numerical solution of the forward problem. After extracting the segmented tissue volumes, surface BEM meshes may be generated. When a subject MR image is not available, a template head model may be warped to 3-D measured electrode locations to obtain an individualized BEM head model. Toolbox functions can be called from either a graphic user interface (gui) compatible with EEGLAB (sccn.ucsd.edu/eeglab), or from the MATLAB command line. Function help messages and a user tutorial are included. The toolbox is freely available for noncommercial use and open source development under the GNU Public License.

Why NFT?

The NFT is released under an open source license, allowing researchers to contribute and improve on the work for the benefit of the neuroscience community. By bringing together advanced head modeling and forward problem solution methods and implementations within an easy to use toolbox, the NFT complements EEGLAB, an open source toolkit under active development. Combined, NFT and EEGLAB form a freely available EEG (and in future, MEG) source imaging solution.

The toolbox implements the major aspects of realistic head modeling and forward problem solution from available subject information:

  1. Segmentation of T1-weighted MR images: The preferred method of generating a realistic head model is to use a 3-D whole-head structural MR image of the subject's head. The toolbox can generate a segmentation of scalp, skull, CSF and brain tissues from a T1-weighted image.

  2. High-quality BEM meshes: The accuracy of the BEM solution depends on the quality of the underlying mesh that models tissue conductance-change boundaries. To avoid numerical instabilities, the mesh must be topologically correct with no self-intersections. It should represent the surface using high-quality elements while keeping the number of elements as small as possible. The NFT can create high-quality linear surface BEM meshes from the head segmentation.

  3. Warping a template head model: When a whole-head structural MR image of the subject is not available, a semi-realistic head model can be generated by warping a standard template BEM mesh to the digitized electrode coordinates (instead of vice versa).

  4. Registration of electrode positions with the BEM mesh: The digitized electrode locations and the BEM mesh must be aligned to compute accurate forward problem solutions and lead field matrices.

  5. Accurate high-performance forward problem solution: The NFT uses a high-performance BEM implementation from the open source METU-FP Toolkit for bioelectromagnetic field computations.

Required Resources

Matlab 7.0 or later running under any operating system (Linux, Windows). A large amount of RAM is useful - at least 2 GB (4-8 GB recommended for forward problem solution of realistic head models). The Matlab Image Processing toolbox is also recommended.

NFT Reference Paper

Zeynep Akalin Acar & Scott Makeig, Neuroelectromagnetic Forward Head Modeling Toolbox. Journal of Neuroscience Methods, 2010


To download the NFT, go to the NFT download page.

Revision History

Current Version: xx.xx.xx (May 1st, 2010)

NFT User's Manual

(Note: The PDF is generated dynamically. Please do not refresh the page before it begins downloading.)

Creation and documentation by:

Zeynep Akalin Acar

Post Doctoral Fellow


Rev. ####

Wiki conversion by: Dev Sarma

Return to SCCN Wiki Home