Skip to content

A list of openly available software tools for (mostly human) electrophysiology.

Notifications You must be signed in to change notification settings

hillhillll/ElectrophysiologySoftware

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

21 Commits
 
 

Repository files navigation

Open Software for Human Electrophysiology

This is a list of openly available software and code for working with electrophysiological data, particularly for EEG, MEG, ECoG/iEEG, and LFP data.

Table of Contents

Overview

The goal here is to list re-usable tools for working with the specified data, and is not generally focused on code that is available for specific analysis on particular datasets (though these may be included where they are licensed for re-use, and are the best available starting point for a particular use case).

By 'open', here we mean that source code is provided and is released with a permissive license. Commercial products are not listed. Be sure to double check the license before using / modifying linked code. Note that some tools may require non-open dependencies (for example, Matlab tools are listed, but are not fully open).

General Purpose Tools

The following are general purpose platforms, with functionality including: loading data, preprocessing, visualization, standard analysis, and making figures.

MNE

Language

MNE is a general purpose tool for processing, analyzing and visualizing M/EEG data.

HomePage - Github - Paper

Neural Ensemble Tools

Language

Neural Ensemble, an initiative for open-source software in neuroscience, includes a set of tools that comprise a platform for managing and analyzing electrophysiology data.

Neo: for representing electrophysiology data, and reading neurophysiological file formats.

HomePage - Github

Elephant: for analyzing electrophysiological data.

HomePage - Github

Wonambi

Language Language

Wonambi is a general purpose tool for processing, analyzing and visualizing EEG data, including specific tools focused on sleep scoring and analysis.

HomePage - Github

NeuroKit

Language

NeuroKit is a tool for neurophysiological signal processing.

HomePage - Github

FieldTrip

Language Language

FieldTrip is a general purpose tool for processing, analyzing and visualizing M/EEG and iEEG/ECoG data.

HomePage - Github - Paper

BrainStorm

Language Language

BrainStorm is a general purpose tool for processing, analyzing and visualizing focused primarily on MEG data, but includes support for EEG & ECoG data.

HomePage - Github - Paper

EEGLab

Language Language

EEGLab is a general purpose tool for processing, analyzing and visualizing EEG data.

HomePage - Paper

SPM

Language Language

SPM is a general purpose toolbox for neuroimaging, that includes support for processing M/EEG data.

HomePage

NutMEG

Language

NutMEG is a general purpose tool for processing, analyzing and visualizing MEG data.

HomePage - Github - Paper

EEGUtils

Language

EEGUtils is a general purpose tool for processing, analyzing and visualizing EEG data.

HomePage - Github

EEGuana

EEGuana is a package for working with EEG data.

Language

HomePage - Github

EEG.jl

Language

EEG.jl is an EEG processing library.

HomePage - Github

CarTool

Language

CarTool is an EEG analysis toolbox.

HomePage - Paper

Standalone Tools

The following are standalone tools, independent of general software platforms, for specific purposes.

NeuroDSP

Language

NeuroDSP is a package for calculating a broad range of measures on neural time series, including a range of time-domain measures such as waveform shape analyses.

Github - Paper

FOOOF

Language

FOOOF is a package for parameterizing neural power spectra.

Github - Paper

ByCycle

Language

Bycycle is a tool for cycle-by-cycle analyses of neural oscillations.

Github - Paper

Spectral Connectivity

Language

Spectral connectivity is a package including a group of functional connectivity and coherence related measures.

HomePage - Github

PACTools

Language

PACTools is a package for calculating phase-amplitude coupling measures in neural time series.

HomePage - Github

Tensor PAC

Language

Tensor PAC is a tool for calculating phase-amplitude coupling measures, using tensors and parallel computing.

HomePage - Github

PyEEG

Language

PyEEG includes some implementations of information theoretic and complexity related measures for neural time series.

Github - Paper

ECoGTools

Language

A collection of tools for analyzing ECoG data.

Github

EELBrain

Language

EELBrain is a tool for statistical analysis of M/EEG data

HomePage - Github

restingIAF

Language

RestingIAF is a tool for estimating the peak individual alpha frequency.

Github - Paper

Phase Opposition Code

Language

Phase Opposition is a collection of functions for calculating phase opposition measures.

HomePage - Paper

ADAM - Amsterdam Decoding and Modeling Toolbox

Language

The Amsterdam Decoding and Modeling Toolbox does encoding and decoding model analysis on M/EEG data.

Github - Paper

HERMES

Language

HERMES is tool for estimating connectivity measures between M/EEG signals.

HomePage - Github - Paper

SEREEGA - Simulating Event-Related EEG Activity

Language

SEREEGA is a package for simulating synthetic data that mimic event-related EEG activity.

Github - Paper

UNFOLD

Language

Unfold is a tool for deconvolving overlapping EEG signals and for non-linear modeling.

HomePage - Github - Paper

ept-TFCE

Language

A tool for statistical analysis of already preprocessed M/EEG data, focused mainly around the 'threshold-free cluster enhancement' method.

Github - Paper

ERP Reliability Analysis (ERA)

Language

ERA is a tool for calculating reliability estimates for ERP data.

HomePage - Github - Paper

SynchSqueezing

Language

SynchroSqueezing is a tool for time-frequency and time-scale analyses.

Github

AutoMagic

Language

AutoMagic is a standardized toolbox for preprocessing EEG datasets.

Github - Paper

Multivariate Granger Causality Toolbox (MVGC)

Language

The MVGC toolbox is designed to run Granger-causal analysis on multivariate time-series data.

HomePage - Code - Paper

OpenMEEG

Language

OpemMEEG is a package for solving forward problems for EEG & MEG data.

HomePage - Github - Paper

Plugins

The following are plugins, designed primary for use with one of the aforementioned general purpose tools.

AutoReject

Language PlugIn

AutoReject is a tool for preprocessing M/EEG data, but algorithmically determining and applying rejection thresholds, with MNE.

HomePage - Github - Paper

MNE-BIDS

Language PlugIn

MNE-BIDS is a tool for creating BIDS compatible datasets with MNE.

HomePage - Github - Paper

PREP Pipeline (Standardized EEG preprocessing)

Language PlugIn

The PREP pipeline is a standardized processing tool for EEG data, using EEGLab.

HomePage - Github - Paper

ADJUST

Language PlugIn

ADJUST is an automatic artifact identification and removal tool, using EEGLab.

HomePage - Paper

ERPlab

Language PlugIn

ERPLab is a tool for event-related potential (ERP) analysis of EEG data, with EEGLab.

HomePage - Github - Paper

LIMO - Linear Modeling

Language PlugIn

LIMO is a tool for Linear Modeling of EEG data, with EEGLab.

HomePage - Github - Paper

SIFT - Source Information Flow Toolbox

Language PlugIn

The Source Information Flow Toolbox (SIFT) is a tool for causality and information flow measures, with EEGLab.

HomePage

MPT - Measure Projection Toolbox

Language PlugIn

The Measure Projection Toolbox (MPT) is a tool for probabilistic multi-subject EEG independent component analysis, with EEGLab.

HomePage

Other Software Tools Lists

The Physionet project maintains a list of software available in the PhysioToolkit, which includes some software that can be used with electrophysiology data.

About

A list of openly available software tools for (mostly human) electrophysiology.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published