neauscan自带软件scan导出的.avg格式文件如何在matlab里面画图

本文主要是介绍neauscan自带软件scan导出的.avg格式文件如何在matlab里面画图,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

新手在处理脑电的时候不可避免的会使用scan这样的商业软件,然后处理完数据以后可能会想导入到matlab进行画图,可是商量软件导出的文件格式可能并不那么自由,这里提供一个将scan处理完的脑电数据导出到matlab并画图的脚本如下

% 代码由茗创科技工程师编写
%
% Written By Yizhou
% Using the code without proper understanding the code and relevant background
% of EEG may lead to confusion, incorrect data analyses,or misinterpretations
% of results.
% The author assumes NO responsibility for inappropriate or incorrect use
% of this code.
% WX:         17373158786% 使用neauscan提供的scan软件分析的脑电数据叠加平均以后会得到一个avg格式的文件,如果想要导出到matlab里面画图貌似并没有现成的方法
% 而eeglab界面并没有提供一个现成的选择框载入.avg文件,但是可以使用函数eeg_load_scan4_avg获得,这是本脚本的核心代码如下;% 函数:eeg_load_scan4_avg
% 
% 用法:[f,fid] = eeg_load_scan4_avg(filename)
% 
% 
% 
% 变量介绍:
% 
% f:这是一个结构体,里面包含了avg数据的所有内容,类似于读cnt的那个函数的输出变量,这个结构体里面包含
% 
% f.header        - general header parameters
% 
% f.electloc      - channel specific parameters
% 
% f.data.header   - small channel data header
% 
% f.data.samples  - channel data (not uV)
% 
% f.variance      - channel variance
% 
% f.tag           - scan4.1 file tags
% 
% fid: 文件的一个指针,这里基本没啥用
% 
% filename:文件名,和loadcnt当中的file一样。%% 祭天
clear all;clc;
load('EEG.mat');%% 载入数据 ERP的绘制
fig_path = 'D:\Docu\Project\draw_pic\data\ERP';cd(fig_path);
% 读取所有的avg格式文件;
fig_files = dir([fig_path,filesep,'*.avg']);
% 对每个文件进行读取
for fig_No = 1:length(fig_files)exp_con_name = fig_files(fig_No).name(1:end-4)% 每个avg文件生成一个文件夹mkdir([fig_path,filesep,exp_con_name]);cd([fig_path,filesep,exp_con_name]);% 读取avg文件[f,fid] = eeg_load_scan4_avg(['D:\Docu\Project\draw_pic\data',filesep,fig_files(fig_No).name]);% 将avg文件内的数据转为数组形式for i = 1:65EEG_avg(i,:)=(f.data(i).samples)';end% 每个通道电极点for chan_point = 1:65% chan_point = 28;% 因为不可知的原因,数据需要除以20才能得到真实的幅值mean_data = squeeze(EEG_avg(chan_point,:))./20; figure;plot(EEG.times, mean_data,'linewidth', 1.5); %% plot waveforms for different conditionsset(gca,'YDir','reverse','XAxisLocation','origin','YAxisLocation','origin','LineWidth',2.0,'box','off');axis([-200 1000 -4 12]);  %% define the region to displaytitle(['Group level data at',EEG.chanlocs(chan_point).labels],'fontsize',16);xlabel('Latency (ms)','fontsize',16);ylabel('Amplitude (uV)','fontsize',16);print(gcf,[exp_con_name,'_',EEG.chanlocs(chan_point).labels],'-dpdf','-r600');print 1.eps -depsc2 -r600;% 由于不知道如何设定合适的文件名,所以保存以后再使用下面的函数进行修改文件名movefile('1.eps',[exp_con_name,'_',EEG.chanlocs(chan_point).labels,'.eps']);close all;end
end

 

这篇关于neauscan自带软件scan导出的.avg格式文件如何在matlab里面画图的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1061073

相关文章

SpringBoot集成EasyPoi实现Excel模板导出成PDF文件

《SpringBoot集成EasyPoi实现Excel模板导出成PDF文件》在日常工作中,我们经常需要将数据导出成Excel表格或PDF文件,本文将介绍如何在SpringBoot项目中集成EasyPo... 目录前言摘要简介源代码解析应用场景案例优缺点分析类代码方法介绍测试用例小结前言在日常工作中,我们经

SpringBoot+EasyPOI轻松实现Excel和Word导出PDF

《SpringBoot+EasyPOI轻松实现Excel和Word导出PDF》在企业级开发中,将Excel和Word文档导出为PDF是常见需求,本文将结合​​EasyPOI和​​Aspose系列工具实... 目录一、环境准备与依赖配置1.1 方案选型1.2 依赖配置(商业库方案)二、Excel 导出 PDF

SpringBoot+EasyExcel实现自定义复杂样式导入导出

《SpringBoot+EasyExcel实现自定义复杂样式导入导出》这篇文章主要为大家详细介绍了SpringBoot如何结果EasyExcel实现自定义复杂样式导入导出功能,文中的示例代码讲解详细,... 目录安装处理自定义导出复杂场景1、列不固定,动态列2、动态下拉3、自定义锁定行/列,添加密码4、合并

Qt 设置软件版本信息的实现

《Qt设置软件版本信息的实现》本文介绍了Qt项目中设置版本信息的三种常用方法,包括.pro文件和version.rc配置、CMakeLists.txt与version.h.in结合,具有一定的参考... 目录在运行程序期间设置版本信息可以参考VS在 QT 中设置软件版本信息的几种方法方法一:通过 .pro

安装centos8设置基础软件仓库时出错的解决方案

《安装centos8设置基础软件仓库时出错的解决方案》:本文主要介绍安装centos8设置基础软件仓库时出错的解决方案,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐... 目录安装Centos8设置基础软件仓库时出错版本 8版本 8.2.200android4版本 javas

java中BigDecimal里面的subtract函数介绍及实现方法

《java中BigDecimal里面的subtract函数介绍及实现方法》在Java中实现减法操作需要根据数据类型选择不同方法,主要分为数值型减法和字符串减法两种场景,本文给大家介绍java中BigD... 目录Java中BigDecimal里面的subtract函数的意思?一、数值型减法(高精度计算)1.

如何确定哪些软件是Mac系统自带的? Mac系统内置应用查看技巧

《如何确定哪些软件是Mac系统自带的?Mac系统内置应用查看技巧》如何确定哪些软件是Mac系统自带的?mac系统中有很多自带的应用,想要看看哪些是系统自带,该怎么查看呢?下面我们就来看看Mac系统内... 在MAC电脑上,可以使用以下方法来确定哪些软件是系统自带的:1.应用程序文件夹打开应用程序文件夹

Mac备忘录怎么导出/备份和云同步? Mac备忘录使用技巧

《Mac备忘录怎么导出/备份和云同步?Mac备忘录使用技巧》备忘录作为iOS里简单而又不可或缺的一个系统应用,上手容易,可以满足我们日常生活中各种记录的需求,今天我们就来看看Mac备忘录的导出、... 「备忘录」是 MAC 上的一款常用应用,它可以帮助我们捕捉灵感、记录待办事项或保存重要信息。为了便于在不同

MySQL Workbench工具导出导入数据库方式

《MySQLWorkbench工具导出导入数据库方式》:本文主要介绍MySQLWorkbench工具导出导入数据库方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝... 目录mysql Workbench工具导出导入数据库第一步 www.chinasem.cn数据库导出第二步

Java如何根据word模板导出数据

《Java如何根据word模板导出数据》这篇文章主要为大家详细介绍了Java如何实现根据word模板导出数据,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... pom.XML文件导入依赖 <dependency> <groupId>cn.afterturn</groupId>