首页 > 技术文章 > EEGLAB-批量处理.dat数据及保存脑电地形图

cpg123 2020-02-09 20:45 原文

步骤

1.先在图形界面操作一遍准备做的操作。


2.在命令行窗口输入 EEG.history 获取刚刚操作都用到哪些语句。

3.稍加修改即可以写一个批量化函数来读取生成数据。

4.在 EEGLAB\eeglab_current\eeglab2019_0\functions\popfunc\pop_spectopo.m 文件最后添加代码即可批量保存图片。

global X;% Cai 定义全局变量
% fileName = strcat('F:\\情感计算\\Results\\AutoPic\',num2str(X),'.png'); % Cai
fileName = strcat('F:\\情感计算\\Results\\AutoPic\',num2str(X)); % Cai
disp(X); % Cai
% saveas(gcf, fileName); % Cai
print(fileName,'-dpng','-r400'); %Cai (-r200——每英寸200分辨率
close;


5.对最终图片写个python代码批量切割自己想要的部分。

比如这样

import os
from PIL import Image
import pickle
import numpy as numpy

path = 'F:/情感计算/Results/eegpic20200209/'
for i in range(1):
    for j in range(2):
        path2 = path + str(i).zfill(4) + '-' + str(j).zfill(2) + '.png'
        data = []
        for k in range(4):
            filepath_in = path2
            img = Image.open(filepath_in)
            # 图片尺寸
            img_size = img.size
            # h = img_size[1]  # 图片高度
            # w = img_size[0]  # 图片宽度
            x = 320 + k * 481
            y = 215
            w = 330
            h = 330
            # 开始截取
            region = img.crop((x, y, x + w, y + h))
            # 保存图片
            filepath_out = 'F:/情感计算/Results/PicCut20200210/' + \
                           str(i).zfill(4) + '-' + str(j).zfill(2) + '-' + str(k) + '.png'
            # print(filepath_out)
            region.save(filepath_out)

缺点及不足:

  1. 无法直接保存脑电地形图,流程较繁琐
  2. 脑地形图黑边较宽
  3. 刚刚学习用matlab,技术拙略,还望高手指导

推荐阅读