EEGLAB plug-ins allow users to build and publish new data processing and/or visualization functions using EEGLAB data structures and conventions. Plug-in functions can be easily used and tested by selecting the new menu items they introduce into the EEGLAB menus of users who download them. (See technical information here). After testing, plug-ins can just as easily be removed from the EEGLAB menu by moving or removing their plugin file from the EEGLAB "plugins" directory.
Plug-ins included in EEGLAB:
Several plug-ins are included in the main EEGLAB distribution:
- DIPFIT2: Dipole modeling of independent data components using a spherical or boundary element head model. Uses functions from the FIELDTRIP toolbox of Robert Oostenveld at the Donders Center, University of Nijmegen. A DIPFIT2 tutorial is available.
- BIOSIG data import: Import/export data in a wide variety of data formats. Data import and export functions of the BIOSIG toolbox of Alois Schloegl is included in the EEGLAB release. For a list of data formats supported by BIOSIG, refer to this page. The included BIOSIG data import functions are automatically detected and interfaced with EEGLAB. The BIOSIG toolbox contains additional functions. Download the full BIOSIG toolbox from Sourceforge. Uncompress them at the same level of the main EEGLAB folder.
- CTF data import: Import CTF MEG data. Available from Darren Weber's EEG sourceforge project, this plug-in imports MEG data (plus concurrent EEG, if any) plus sensor locations and data events from data in the CTF (Vancouver, CA) data format. To download this plugin separately, on the Unix/Linux commandline type % cvs -z3 -d:pserver:anonymous:@cvs.sourceforge.net:/cvsroot/eeg checkout ctf - Then follow the instructions in the downloaded file 'README_EEGLAB_PLUGIN.txt'.
- ANT data import (v1.03): Import data files in the EEP format. Contributed by ANT Software (Netherlands) to import data in their format. Download latest version updates here. Email contact: firstname.lastname@example.org.
- BVA data import/export: Import/export files from/to the Brain Vision Software Analyser suite. Contributed by Andreas Widmann of the University of Leipzig (Germany) with Arnaud Delorme. Download latest updates from the sourceforge bva-io project.
- Neuroimaging 4D: Christian Wienbruch of the University of Konstanz (Germany) has a plug-in available for loading Neuroimaging 4-D data into EEGLAB. Download link is here
- IIRfilt: Infinite impulse response filtering: Apply short non-linear filters to EEGLAB data. Contributed by Maksyn Pozdin.
- FMRIB: Remove FMRI-environment artifacts from EEGLAB data. This plug-in, by Rami Niazy of Cardiff University (Wales, UK), allows removal of scanner-related artifacts from EEG data collected during fMRI scanning. These tools provide a gui for removing FMRI gradient artifacts, detecting QRS complexes from an ECG channel, and removing pulse-related ballistocardiographic (BCG) artifacts from the EEG data. All of the tools can also be used from the Matlab command line, allowing expert users to use them in custom scripts. The plug-in, a tutorial and more information can be downloaded here.
- LORETA: Import/export commandline bridge function between EEGLAB and this well-known 'low-resolution' EEG source imaging approach by R.D. Pascual-Marqui. Plugin contributed by Arnaud Delorme.
- CLUSTSET: Cluster ICs of a single dataset by their residual mutual information. See tutorial here. Contributed by Nima Bigdely Shamlo of SCCN (UCSD, La Jolla)
Other available plug-ins:
Many other EEGLAB plug-ins are available from authors' or maintainers' web sites. The (alphabetically sorted) list below is not complete, and the methods they make available may have not been assessed by the EEGLAB developers. (We recommend that EEG researchers thoroughly study and consider the basis of any methods they apply to experimental data). To allow us to add new plug-ins or information to the list below, send an email to us at email@example.com:
- AAR (Automatic Artifact Removal toolbox): This toolbox (web page here) implemented as an EEGLAB plugin aims to integrate several state-of-the-art methods for automatic removal of ocular and muscular artifacts in the electroencephalogram (EEG). Contact is German Gomez Herrero (Tampere, Finland) for details.
- ADJUST: A completely automatic algorithm that identifies artifacted Independent Components by combining stereotyped artifact-specific spatial and temporal features. Features are optimised to capture blinks, eye movements and generic discontinuities. Once artifacted IC are identified, they can be simply removed from the data while leaving the activity due to neural sources almost unaffected. Download plug-in and tutorial here. Contact mail: ADJUST staff. Contributed by Andrea Mognon and Marco Buiatti.
- BATCH (aka NightCrew): A set of functions by James Desjardins of Brock University (Canada) that use EEG.history to minimize scripting time and to make history-based scripting more available to EEGLAB users who are not familiar with Matlab script writing. Under ideal conditions, scripting of complex procedures can be performed on several independent files from the EEGLAB user interface Batch menu with no script editing required. This plugin can take advantage of the Matlab Parallel Computing Toolbox (PCT) to perform scripts on multiple files simultaneously in order to reduce processing time. The batchplugin.zip file is available for download here. Email James here.
- BCILAB: An extensive toolbox by Christian Kothe for building and running online brain-computer interface (BCI) models for a wide variety of purposes (volitional control, cognitive monitoring, neurofeedback, etc.). Extensive documentation and code are available here.
- BERGEN: Removal of fMRI-related gradient artifacts from simultaneous EEG-fMRI data. The BERGEN plug-in for EEGLAB provides a gui with different methods for gradient artifact correction. Contributed by Matthias Moosmann and Emanuel Neto. Download plug-in here.
- BESAfit: dipole modeling using BESA3: Computes equivalent dipole locations for independent data components using BESA (old) version 3.0 (Megis Software, Germany) run external to Matlab. Download plug-in 1.0 here.
- CIAC (cochlear implant artifact correction): is a semi-automatic ICA-based tool for the correction of electrical artifacts originating from cochlear implants. A validation paper describing CIAC in detail has been published in Hearing Research. More info and download.
- CORRMAP: Semi-automatic identification of common EEG artifacts based in a template. The CORRMAP plug-in consists of a set of Matlab functions allowing the identification and clustering of independent components representing common EEG artifacts (eye blinks, other ocular artifacts and heartbeat artifacts) in a large number of datasets (requires STUDY structure). Contributed by Filipa Campos Viola. Download plug-in and tutorial available here.
- ERPLAB: The ERPLAB Toolbox is a set of open source Matlab routines for analyzing ERP data that operate as a set of plug-ins for EEGLAB. The development of ERPLAB Toolbox is being coordinated by Steve Luck and Javier Lopez-Calderon at UC Davis.
- EYELAB: The EYELAB Toolbox is a plug-in for the open-source toolbox EEGLAB. It was developed by Olaf Dimigen & Ulrich Reinacher in Werner Sommer's Biological Psychology lab at Humboldt University Berlin with the goal to facilitate integrated analyses of electrophysiological and oculomotor data. The plug-in parses, imports, and synchronizes simultaneously recorded eye tracking data and adds it as extra channels to the EEG. Saccades and fixations can be imported from the eye tracking raw data or detected with a velocity-based algorithm. Eye movements are added as new time-locking events to the existing EEGLAB event structure, allowing easy saccade- and fixation-related EEG analysis in the time and frequency domain (e.g., fixation-related potentials, FRPs). Alternatively, EEG data can be aligned to stimulus onsets and analyzed according to oculomotor behavior (e.g. pupil size, microsaccades) in a given trial. Saccade-related ICA components can be objectively identified based on their covariance with the electrically independent eye tracker.
- FASTER: a fully automated, unsupervised method for processing of high density EEG data. FASTER can be used to process EEGLAB datasets, .set and .bdf files. Includes common features such as data importing, epoching, re-referencing, and grand average creation, as well as automated channel, epoch and artifact rejection based on ICA. FASTER has been peer-reviewed, it is free and the software is open source. If you use FASTER, please reference: Nolan, H., Whelan, R., & Reilly, R.B. Journal of Neuroscience Methods, 192, 152-162, which can be obtained here. Download FASTER here. Contributed by Hugh Nolan and Robert Whelan.
- FIRfilt: Apply a variety of linear filters to EEGLAB data. Contributed by Andreas Widmann (Leipzig, Germany). Latest version updates are available here. For more information about this plugin, check firfilt FAQ.
- Grandaverage: Perform grand averaging across specified EEGLAB datasets. Contributed by Andreas Widmann of the University of Leipzig (Germany). Download here.
- LIINC plugins: Cogniscan data import, Linear Discrimination, Generalized Eigenvalue decomposition, Common Spatial Patterns, Peak Fitting, Eye Movement Removal: Paul Sajda and colleagues at the LIINC Lab at Columbia University (New York City) distribute several plug-ins for use in single-trial response detection. A reference article has been published here. The download link is here.
- LOC: Perform approximate localization of electrocorticographic electrode positions from x-ray images, as documented by Kai Miller (University of Washington, Seattle) in this J. Neurosci. Methods paper. The download link is currently unavailable.
- Mass Univariate ERP Toolbox: is a freely available set of MATLAB functions by David Groppe and colleagues for performing mass univariate analyses of event-related brain potentials (ERPs), a noninvasive measure of neural activity popular in cognitive neuroscience. A mass univariate analysis is the analysis of a massive number of simultaneously measured dependent variables via the performance of univariate hypothesis tests (e.g., t-tests). Savvy corrections for multiple comparisons are applied to make spurious findings unlikely while still retaining a useful degree of statistical power. This approach is popular in the fMRI community but has not been commonly used by ERP researchers. Compatible with EEGLAB and ERPLAB. Documentation and downloads here. See also David's lecture on multiple comparisons in the Online EEGLAB Workshop.
- Micromed data import: Micromed (Italy) has a plug-in available for loading their data format into EEGLAB. Contact Cristiano Rizzo for details.
- NFT: An elaborate application pipeline by Zeynep Akalin Acar, the Neuroelectromagnetic Forward Head Modeling Toolbox. Builds a custom Boundary Element Method forward head model from a subject MR image and/or from measured elecrode positions using a subject or MNI template head image. Web documentation and a reference paper are available here.
- PACT: Available from here is an EEGLAB plug-in (currently in beta, 4/13) for computing cross-frequency phase-amplitude coupling tests. Developed by Makoto Miyakoshi at SCCN/UCSD.
- REGICA: A plug-in by Manousos A. Klados of Aristotle University of Thessaloniki, Greece to remove EOG artifacts by regression performed on ICA components. A semi-simulated dataset that might be used in any artifact rejection study is also avaliable. A paper on the method is here. The download link is here. Email Manousos Klados here.
- SIFT: The Source Information Flow Toolbox by Tim Mullen computes a wide variety of multivariate granger causal models from source-filtered EEG data. Interactive visualzations and animations of event-related information flow networks are included. Extensive exposition, documentation, and (alpha) code are available here.
- TDT data import: Adam Wilson at the NITRO Lab at the University of Wisconsin Madison (USA) offers a plug-in available for loading Tucker-Davis Technology format data into EEGLAB. For more information and download, go here.
- NeurOne data import: EEGLAB plug-in for reading the file format of NeurOne system, please see the following link.
- Svarog data format: This web site allows to import Svarog data format. This is not a EEGLAB plugin but once Matlab variables have been imported in Matlab, they can be imported into EEGLAB link.
To install or update a plug-in:
Installing an EEGLAB plug-in is simple. For example, to begin using a plug-ing called 'myplugin'. uncompress the downloaded plug-in file in the main EEGLAB "plugins" sub-directory/sub-folder (or in exceptional circumstances, in the main EEGLAB folder in which the main function 'eeglab.m' is located). Remove the old version of the plugin if it is present in either directory. Then restart EEGLAB. During start-up, EEGLAB should print the following on the Matlab command line:
eeglab: adding plugin "eegplugin_myplugin" % (see >> help eegplugin_myplugin)
The plug-in will typically have added one or more new items to the EEGLAB menu (often under the Tools heading). To make EEGLAB ignore a downloaded plug-in, simply move or remove its folder from the EEGLAB plugins (or main) directory and restart EEGLAB.
To construct and publish a new plug-in:
See the simple instructions under How to contribute to EEGLAB.
Other environments with interfaces to EEGLAB:
- Fieldtrip: The Fieldtrip software is included in EEGLAB and is used for source localization. Fieldtrip also contains the FileIO module which is used to import some file formats.
- BIOSIG: The BIOSGIG Matlab toolbox is included in EEGLAB and is used to import some file formats (EDF for instance).
- bioelectromagnetism_light: The bioelectromagnetism Matlab toolbox is included in EEGLAB and is used to visualize some ERP features. Note that only a few files from this toolbox are included in EEGLAB.