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

相关文章

Python实现将实体类列表数据导出到Excel文件

《Python实现将实体类列表数据导出到Excel文件》在数据处理和报告生成中,将实体类的列表数据导出到Excel文件是一项常见任务,Python提供了多种库来实现这一目标,下面就来跟随小编一起学习一... 目录一、环境准备二、定义实体类三、创建实体类列表四、将实体类列表转换为DataFrame五、导出Da

Python数据处理之导入导出Excel数据方式

《Python数据处理之导入导出Excel数据方式》Python是Excel数据处理的绝佳工具,通过Pandas和Openpyxl等库可以实现数据的导入、导出和自动化处理,从基础的数据读取和清洗到复杂... 目录python导入导出Excel数据开启数据之旅:为什么Python是Excel数据处理的最佳拍档

Oracle Expdp按条件导出指定表数据的方法实例

《OracleExpdp按条件导出指定表数据的方法实例》:本文主要介绍Oracle的expdp数据泵方式导出特定机构和时间范围的数据,并通过parfile文件进行条件限制和配置,文中通过代码介绍... 目录1.场景描述 2.方案分析3.实验验证 3.1 parfile文件3.2 expdp命令导出4.总结

Ubuntu 怎么启用 Universe 和 Multiverse 软件源?

《Ubuntu怎么启用Universe和Multiverse软件源?》在Ubuntu中,软件源是用于获取和安装软件的服务器,通过设置和管理软件源,您可以确保系统能够从可靠的来源获取最新的软件... Ubuntu 是一款广受认可且声誉良好的开源操作系统,允许用户通过其庞大的软件包来定制和增强计算体验。这些软件

java poi实现Excel多级表头导出方式(多级表头,复杂表头)

《javapoi实现Excel多级表头导出方式(多级表头,复杂表头)》文章介绍了使用javapoi库实现Excel多级表头导出的方法,通过主代码、合并单元格、设置表头单元格宽度、填充数据、web下载... 目录Java poi实现Excel多级表头导出(多级表头,复杂表头)上代码1.主代码2.合并单元格3.

软件设计师备考——计算机系统

学习内容源自「软件设计师」 上午题 #1 计算机系统_哔哩哔哩_bilibili 目录 1.1.1 计算机系统硬件基本组成 1.1.2 中央处理单元 1.CPU 的功能 1)运算器 2)控制器 RISC && CISC 流水线控制 存储器  Cache 中断 输入输出IO控制方式 程序查询方式 中断驱动方式 直接存储器方式(DMA)  ​编辑 总线 ​编辑

【STM32】SPI通信-软件与硬件读写SPI

SPI通信-软件与硬件读写SPI 软件SPI一、SPI通信协议1、SPI通信2、硬件电路3、移位示意图4、SPI时序基本单元(1)开始通信和结束通信(2)模式0---用的最多(3)模式1(4)模式2(5)模式3 5、SPI时序(1)写使能(2)指定地址写(3)指定地址读 二、W25Q64模块介绍1、W25Q64简介2、硬件电路3、W25Q64框图4、Flash操作注意事项软件SPI读写W2

免费也能高质量!2024年免费录屏软件深度对比评测

我公司因为客户覆盖面广的原因经常会开远程会议,有时候说的内容比较广需要引用多份的数据,我记录起来有一定难度,所以一般都用录屏工具来记录会议内容。这次我们来一起探索有什么免费录屏工具可以提高我们的工作效率吧。 1.福晰录屏大师 链接直达:https://www.foxitsoftware.cn/REC/  录屏软件录屏功能就是本职,这款录屏工具在录屏模式上提供了多种选项,可以选择屏幕录制、窗口

HomeBank:开源免费的个人财务管理软件

在个人财务管理领域,找到一个既免费又开源的解决方案并非易事。HomeBank 正是这样一个项目,它不仅提供了强大的功能,还拥有一个活跃的社区,不断推动其发展和完善。 开源免费:HomeBank 是一个完全开源的项目,用户可以自由地使用、修改和分发。用户友好的界面:提供直观的图形用户界面,使得非技术用户也能轻松上手。数据导入支持:支持从 Quicken、Microsoft Money

matlab读取NC文件(含group)

matlab读取NC文件(含group): NC文件数据结构: 代码: % 打开 NetCDF 文件filename = 'your_file.nc'; % 替换为你的文件名% 使用 netcdf.open 函数打开文件ncid = netcdf.open(filename, 'NC_NOWRITE');% 查看文件中的组% 假设我们想读取名为 "group1" 的组groupName