Matlab is very costly, but it has a good set of tool boxes and great community support. However what would be a best alternative to replace Matlab for EEG signal processing ?
Brain Vision Analyzer (version 2) is excellent. I prefer it over EEGlab, especially for things like ICA and time-frequency analyses. It has very good customer support (replies within a day or two) and you can easily export processed files to matlab or whatever for more specialised analyses.
Thank you very much for the replies. I am already studying EEGLab with octave. However I would like to try the pyEEG module also. Lizzie, Is Brain Vision Analyzer an open source package or do I have to have the relevant hardware of Brain Products in order to use the software ?
As commented, EEGLAB is a powerful toolbox running under MATLAB. It's specially indicated to compute Independent Component Analysis, Time-frequency Analysis. Moreover, it allows to export ERP data and ICA weights to sLORETA to compute neural sources.
By contrast, in my opinion, it allows statistical analysis for exploratory purposes. If you want a more friendly statistical solution, I prefer to use ERPLAB (a EEGLAB plugin).
As an open-source toolbox, personalizing functions is very flexible.
Finally, remark that EEGLAB's guys (Profs. Makeig and Delorme) certainly remain alive to attend any question or difficulty.
For the time being I am looking for fully open source based solution. When I search together with the hep of your answers there are several open source alternative for Matlab too, UNG Octave being a successful one. Do you have previous experience working with UNG ocatve together with EEGLAB?
According to the developers EEGLAB is compatible with UNG Octave. But when it comes to generating the GUI, it has some problems. Please advice me with your experiences.
I recommend Fieldtrip as well. Excellent for time frequency analyses, ERP and non paramtric statistics, quite flexible. It's a free toolbox for MATLAB and the help you receive in case of problems is given directly by the developers (R. Oostenveld and PhDs).
FieldTrip is also mostly GNU Octave compatible (and it's being worked on, http://bugzilla.fcdonders.nl/show_bug.cgi?id=2828).
Depending on what you do, you might also want to try BrainStorm (http://neuroimage.usc.edu/brainstorm/) or the MNE suite (http://martinos.org/mne/stable/index.html), both developed and maintained by excellent researchers and programmers.
The package working under windows developed by Denis Brunet at the Functional Brain Mapping Lab in Geneva is a very good tool, free, and allows not only EEG visualisation, ERP analysis and source localisation, but also statistical tools and ERP map series segmentation. Just visit the group site and register : https://sites.google.com/site/fbmlab/cartool
You can try Brainstorm: http://neuroimage.usc.edu/brainstorm
It is Matlab-based, but the package comes with a compiled version that runs without any Matlab license: http://neuroimage.usc.edu/brainstorm/Installation
EEGlab for Matlab (I think it will run on free Octave as well) is pretty advanced, mature yet still ongoing project-i.e. up2date, Extremaly flexible, with a ton of options, you wont run into incompatibility issues with any sort of data. Easy to disect and mod (and understand the underlying computations-if you need that but the documentation is strong as well) the code. It uses GUIs but one can run it in batch command line mode.
There are many plugins and extensions and there is a big community.
What if your emphasis is on metrics such as phase space plots, dynamic non-linear tools or higher order sychronization measures. Many years ago RRChaos filled part of this need and came from a very strong group in the netherlands. Its replacement is not clear.
If this thread is still alive, can someone recommend a good open source or free analysis tool for video-EEG (synchronized EEG and video) visualization and scoring?
I had a very pleasing experience with MNE for python. Great free and open-source alternative providing some cutting-edge algorithms. Related to that (also maintained by MNE-folks I believe), https://github.com/autoreject/autoreject saved my life.
I can also recommend my own EP Toolkit (Dien, 2010), a free open source EEG/ERP analysis suite that runs on Matlab. It is full-featured and is used by hundreds of users. It has an easy-to-use graphical user interface. https://sourceforge.net/projects/erppcatoolkit/
EEGLAB for simple ERP analysis. For more advance analysis I would use Fieldtrip. If you are good at python you can also try MNE (https://mne.tools/stable/index.html).
My master student bought cheap Bluetooth EEG headset from amazon and its work very well. It track your brain activity, heart rate, breathing, and body movements and review the raw data, His project use the EEG signal to move the wheelchair with arduino . You can check this link
EEGLab, MNE, and Brainstorm all provide relatively user-friendly and flexible environments for (pre-)processing and analysis of EEG. The latter two are not limited to EEG and can conveniently handle other neurological time series such as fMRI and MEG (Brainstorm can also handle fNIRS). MNE has the advantage of being a Python-native API and therefore does not require Matlab. Although Brainstorm is Matlab-dependent, to use it one does not need to have Matlab installed and can instead use "Matlab Runtime" which is freely available through Mathworks website.
Mohammed G. Ayoub , Please don't mention it. I am glad that you find my suggestion of some help. I am not aware of any other resources than what is available on MNE official website. It is quite a resourceful documentation with a number of tutorials and examples on how to use MNE for various (standard) analyses and visualizations.
Would like to plug my EP Toolkit (Dien, 2010) again, a free open source EEG/ERP analysis suite that runs on Matlab. It is full-featured and is used by hundreds of users. It has an easy-to-use graphical user interface. https://sourceforge.net/projects/erppcatoolkit/. Aside from all the basic features, it has a best-of-breed artifact correction routine (I'm finishing up a paper on it), easy-to-use PCA/ICA functions, and robust ANOVA to maximize replicability by providing better control over Type I error rates than conventional ANOVAs.m I just released the 2.90 version. It's been in development for about twenty years and so is considerably refined.
There's two levels of open source. There's the program itself and there's the platform it runs on. So the EP Toolkit is open source because the program is fully visible and free and you can see how it works and make changes to it and make it your own if you wish. Then there's the platform. Matlab is definitely not open-source this is true, although there is Octave, which is the open-source version of Matlab and does run Matlab programs. To be honest, I haven't tried running EP Toolkit on Octave though and expect it would have problems, especially with the GUI. But anyway, it's important to distinguish between these two levels. If the concern is with price, then the platform is important. If the concern is with freedom regarding the source code and with transparency of the algorithms then the platform is not important. The original question was about the platform but the answers have pretty much all been about the program, so that's how I oriented my response. As a developer, this is actually something I've been wondering about. How much of an issue is the platform? The research universities that I've worked at have mostly had Matlab licenses so I generally haven't had to pay for it and even when I did the academic licensing made it pretty affordable. How much of a problem is the cost? I could switch to Octave or Python but it would take a considerable amount of effort (converting at least a hundred thousand lines of code) and am not sure if it would be worth it. I could also make a compiled version available so users would not need Matlab, although they would not have the benefits of open source then. I'm switching to Linux so I'm certainly no fan of proprietary systems but I'm only going to do it if there is a clear benefit. Thoughts?
Yes: open source just for the sake of open source is irrational. If commercial products exist that are not prohibitively expensive, why re-invent the wheel? For example, what matters in statistics is the statistics you do, not the software you use. So if I can get Statistica for free, why do everything from scratch with R? The one good lesson to learn from open-source software comes from the history of Linux: Precisely because it was open and programmers all over the world could tinker with it, it developed into the most stable and secure operating systems ever. But for experimental psychologists, there are good reasons to use commercial software like E-Prime over open-source, simply because it has existed for a long time and undergone quality-improving development, works and is documented for a wide range if hardwares, and allows us to focus on what we're really into: science.
In software world, sometimes reinventing the wheel is a must (sometimes, while developing you can discover the wing). For example, access to cloud computing, what sometimes is necessary if you want to use new algorithms, is really limited staying in matlab world, at least for buget-limited research. Some packages used in R can do things that are not possible in commercial packages. And sharing code is a really great way to learn new tricks. EEGLAB, Fieldtrip, MNE-python and the good old c++ are my bets.
Derrick, yes, indeed, EEGLab is a great option! But if one is looking for a solution without Matlab, BiSigma (www.bisigma.de) is currently working on an Open Source Community Edition Software for the analysis and synchronisation of various biometric signals (EEG, Eye-Tracking, GSR, NIRS, EKG, etc.), available soon. At present academic beta trials are ongoing at Munich University, Baden-Wuerttemberg Cooperative State University and University of Leipzig.
I tried looking at the bisigma.de website and got a security warning from my browser so I didn't proceed any further. Juergen, if you're part of that group, you need to get your web certificate fixed. It looks like a typo. It said:
Websites prove their identity via certificates. Firefox does not trust this site because it uses a certificate that is not valid for www.bisigma.de. The certificate is only valid for bisigma.de.
A good alternative to Matlab is also Octave. A lot of Matlab code is actually running in Octave without any need for changes (e.g. see "Biosig for Octave and Matlab" http://biosig.sourceforge.net) .
pfica: Independent Component Analysis for Univariate Functional Data
from this paper: Vidal, M.; Rosso, M.; Aguilera , A.M. Bi-Smoothed Functional Independent Component Analysis for EEG Artifact Removal. Mathematics 2021, 9, 1243. https://doi.org/10.3390/math9111243
I recently did attend a workshop for the Unfold Toolbox: https://www.unfoldtoolbox.org/
A toolbox for deconvolution of overlapping EEG (Pupil, LFP etc.) signals and (non)-linear modeling, but it requires Matlab.
Latest development is Unfold.jl - a Beta-Toolbox available in Julia, although It is not feature-par with matlab-unfold yet, it might be a great alternative for those who do not use Matlab.
I'm going to keep plugging my EP Toolkit, free open-source running under Matlab. It does pretty much everything via an easy-to-use GUI interface. Especially good at PCA/ICA, artifact correction (I have a paper under revision that shows it does the best of ten open-source packages tested), and robust ANOVAs. It's been under development for over twenty years. Downloaded 1,139 times in 2021.
https://sourceforge.net/projects/erppcatoolkit/
Dien, J. (2010). The ERP PCA Toolkit: An Open Source Program For Advanced Statistical Analysis of Event Related Potential Data. Journal of Neuroscience Methods, 187(1), 138–145.