1波恩癫痫数据集介绍
该数据集是由 5 个健康人和 5 个癫痫患者的脑电数据构成的,共包含有 5 个数据子集,分别是 F、S、N、Z、O。数据描述如表 2。波恩数据集为单通道数据集(一个导联),其中每个子数据集都包含 100 个数据片段,每个数据片段的时间长度为 23.6秒,数据点为 4097 个。信号的分辨率为 12 位,采样频率173.61Hz。
每一个子集包含100个长度为23.6秒,采样频率173.61Hz的单通道EEG。这些片段被从长程多通道EEG上人工剪切下来。在剪切过程中,一些可能存在的干扰被同时去除,这些干扰包含肌动伪迹,眼动伪迹,等等。子集A和B采自5个健康人构成的对照组。头皮电极分布为国际10-20系统。A中片段为受试者睁眼时EEG,B中为受试者闭眼时EEG。子集C/D/E为颅内EEG,采自5个术前已确诊病人。这些病人己经通过局部海马结构切除使得其癫痫完全可控。切除区域己通过临床验证确为致痫灶。子集D中包含从癫痫灶中采集的EEG,子集C中包含从癫痫灶对侧采集的EEG。C和D的采集与癫痫发作间期。子集E中包含了发作期EEG。子集C、D采自深部电极。在放置深部电极的同时,一些条状电极也被置于新皮质层的侧区和底区,子集E中包含了所有颅内电极采集到的发作期EEG。
上文中对应的关系是A_Z,B_O,C_N,D_F,E_S;
文件目录关系如下:
文件子目录文件(为’*.txt’文件):
2 数据处理
原始数据的输入是txt,为了方便训练需要将其转化为matlab中的矩阵文件。运行以下程序,先修改程序的目录地址,直接运行后可以得到5个变量,并将其保存为database.mat文件。保存在matlab运行目录下。
%%程序中有一个读取目录文件名的函数,以及txt转化为矩阵读入的函数
%% 下载源文件后解压到某个地址后。修改程序path地址就好其余程序完成;如果修改了无法运行重新打开matlab重新运行
path = 'G:\Desktop\波恩癫痫脑电\';%地址一定要手打,复制安全对象的名字,会有占位字符,虽然一样但是运行出错
%%
str={'A_Z','B_O','C_N','D_F','E_S'};%设定5个字符串
for class=1:5
[FileNames] = GetFileNames([path,str{class},'\'],'*.txt');
switch(class)
case 1
[A_Z]= WriteInTxtdata([path,str{class},'\'],FileNames);
case 2
[B_O]= WriteInTxtdata([path,str{class},'\'],FileNames);
case 3
[C_N]= WriteInTxtdata([path,str{class},'\'],FileNames);
case 4
[D_F]= WriteInTxtdata([path,str{class},'\'],FileNames);
case 5
[E_S]= WriteInTxtdata([path,str{class},'\'],FileNames);
end
end
save database.mat A_Z B_O C_N D_F E_S
function [FileNames] = GetFileNames(Path,Format)
% GetFileNames
% 函数的功能为获得某一路径下,某种格式所有文件名
% 函数的输入1为Path,要获取的路径。eg: 'D:\Program Files\FileZilla FTP Client\docs\'
% 函数的输入2为Format,要获取路径的文件格式。eg: '*.txt','*.docx','*.png'
fileFolder=fullfile(Path);
dirOutput=dir(fullfile(fileFolder,Format));
FileNames={dirOutput.name};
end
function [curve_data]= WriteInTxtdata(Path,FileNames)
% 函数的返回curve_data是一个3d矩阵,第三位为文件个数表示个文件
% Path:写入的文件地址目录字符串.eg: 'D:\Program Files\FileZilla FTP Client\docs\'
% FileNames:所有的文件名字胞组矩阵{'S001.txt','S002.txt','S003.txt',...}
files = dir(Path);
number_files = length(files)-2;
for i=1:number_files
fileID = fopen([Path,FileNames{i}],'r');
formatSpec = '%f';
curve_data(:,:,i)= fscanf(fileID,formatSpec);
fclose(fileID);
end
end
源文件下载链接如下:
文件中:预处理matlab直接运行的文件,还有可以database.mat
https://download.csdn.net/download/qq_43158059/16503057