俗话说:“工欲善其事必先利其器”,脑电信号处理当然离不开各种工具的支持呀。况且并不是所有的人都善于编程,有些没有GUI界面的工具就不太适合医生适用,而工程师可能就更加侧重于API接口的调用,对数据进行分析。因此对于工程师,医生来说工具的侧重点就会不一样。今天我就来系统的盘点一下各种工具的优缺点和适用人群。
平台:Linux/Windows/Mac OS
简介:EDFbroeser是一个开源、多平台的通用浏览应用,主要用于诸如EEG、SEEG、ECG等时间序列文件的分析,支持的格式包括EDF, EDF+, BDF, BDF+。它包括一个内置的EDF/EDF+/BDF/BDF+到ASCII转换器。
优点:
1、 便捷的信号分离功能。可以自由选择感兴趣的信道进行研究;
2、 支持信号序列的尺度变化。可以交互地更改振幅、时间片的尺度,以及偏置的上/下移动;
3、 便捷滤波。该软件支持基本的高通、低通、陷波滤波等功能;
4、 支持EDF与ASCII转换,便于不同软件平台的需求。
缺点:
1、 纯交互设计,对于需要高自定义化的操作不是十分自由;
2、 序列可视化种类较为单一。
总体来说是一个序列分析的十分友好的软件。
EDFbrowser 下载链接
平台:基于GCC的Linux系统/基于MinGW的Windows系统
简介:EDF是一种为C/C++读写EDF+/BDF+文件的程序库,支持annotations/events的标注,以及各种采样频率的结合。
优点:纯开源代码库,拓展性强,且配有Python平台以及Java平台的封装,可满足不同平台的需求。
缺点:提供的库调用主要集中为基础的信号读写以及标注,没有可视化功能,较为复杂的分析功能需要通过这些基础调用的灵活组合来实现,或者借助其他工具。文档简陋。
EDFlibwww.teuniz.net
简介:EEGLAB是美国加州大学圣地亚哥分校Swartz Center for Computational Neuroscience的Scott Makeig教授团队开发的,是EEG和MEG信号处理软件开源化的先行者之一,可能也是目前使用最多的EEG工具箱。
优点:
1、 拥有GUI界面,同时可以方便地进行脚本编程和批处理;
2、 支持读取多种格式的EEG数据,同时也可以根据自己的需要,编写读取特定文件格式的插件程序;
3、 拥有独立成分分析(independent component analysis,ICA)、时频分析(time-frequency analysis,TFA)以及基于ICA的偶极子成像(dipole source imaging);
4、 拥有针对特定信号处理和分析方法的插件,可以免费下载。
缺点:GUI界面略显古老和死板。
EEGLABsccn.ucsd.edu
简介:由荷兰Donders Institute for Brain, Cognition and Behaviour开发。同EEGLAB一样,FieldTrip提供了基本和高阶的EEG处理方法。与EEGLAB不同的是,FieldTrip没有稳定的版本,一般是每日更新。
优点:特色是分布式源成像(distributed source imaging)。
缺点:FieldTrip没有GUI界面,其所有使用均需要通过自行编程调用其中函数来实现,这也是FieldTrip的初衷:使研究者能专注于信号处理本身;但是这也在一定程度上限制了其用户需要有较高的MATLAB编程基础。
www.fieldtriptoolbox.org
简介:由美国南加州大学(University of Southern California)、Cleveland Clinic Neurological Institute、法国Centre Nationa de la Recherche Scientifique (CNRS, France) for the Cognitive Neuroscience & Brain Imaging Laboratory及加拿大麦吉尔大学(McGill University)等多个研究机构共同开发。
优点:
1、 除了可以处理EEG/MEG外,也可以处理其它电生理数据;
2、 拥有较为现代化的GUI界面,特色主要是分布式溯源.
缺点:在编写脚本的灵活性方面略差。
BrainStorm 官方文档
这个我已经在之前的文章介绍了这个模块,是当前Python的主流脑电信号处理模块。在这里就不过多的介绍了。特别适合用于脑电的数据挖掘相关的工作。
MNE 介绍
以上就是我推荐的几个比较常用的脑电处理工具,每个工具都有自己的特点,具体选择哪一款,就看你的需求了。
以下是我在知乎的AI 医疗数据挖掘专栏,欢迎大家关注:AI医疗数据挖掘
以下是我的Github,很多代码我都开源了,欢迎大家follow:GitHub