fMRI数据处理(随时更新)

要开始学习处理fMRI的数据了。

fMRI的数据一般有 dcm 格式和 nii 格式。

Nifti(Neuroimaging Informatics Technology Initiative,神经影像信息学技术倡议)文件格式,是目前各大神经影像分析工具普遍兼容的体素水平的数据格式,也是在进行神经影像研究中最常见的一种数据格式。它是一个三维数组 (sMRI)或者四维数组 (fMRI、dMRI),再套上一个头部数据。数组里包含的就是图像体素值数据本身,头部数据里包含空间和体素信息。

Matlab从2017b后就引入了专门的Nifti文件的解析函数,SPM12(Statistical Parametric Mapping,统计参数映射)。

一、使用matlab工具包SPM12读取fMRI数据(*.nii)

(1)首先得安装工具包SPM12,我参考的是下面这篇博客:

在matlab下安装spm工具_spmas包matlab-CSDN博客

(2)使用SPM12读取数据,举例如下:

Matlab 复制代码
inputDir='D:\2_chenfang_labs\ECG-fMRI\result_removePhysio_40sub';
num=40; % number of subject
subSample=dir([inputDir,filesep]);

for i=1:num
    sub=i+2;
    imgNameSample = dir([inputDir,filesep,subSample(sub,1).name,filesep,'*.nii']);
    imgnum=length(imgNameSample);
    for jj=1:imgnum
        Dir_img=[inputDir,filesep,subSample(sub,1).name,filesep,imgNameSample(jj).name];
        vSub=spm_vol(Dir_img);  dim=vSub.dim; mat=vSub.mat;
        imgSub=spm_read_vols(vSub);
        data=reshape(imgSub,dim(1)*dim(2)*dim(3),1);
        data(isnan(data))=0;
        data1(jj,:,:,:)=data;% 读取fMRI数据
    end
end



   
相关推荐
焱焱枫1 小时前
Oracle |Oracle ORA-00845 错误深度解析与实战解决
经验分享
Dev7z2 小时前
基于Matlab遗传算法与蚁群算法的风光储并网微电网容量优化研究
算法·matlab·蚁群算法·多能源微电网
jllllyuz6 小时前
基于粒子群优化(PSO)的特征选择与支持向量机(SVM)分类
开发语言·算法·matlab
一只肥瘫瘫7 小时前
基于MATLAB的滑膜观测器仿真搭建
单片机·嵌入式硬件·matlab
草莓熊Lotso8 小时前
C++ STL set 系列完全指南:从底层原理、核心接口到实战场景
开发语言·c++·人工智能·经验分享·网络协议·算法·dubbo
hygge99913 小时前
Spring Boot + MyBatis 整合与 MyBatis 原理全解析
java·开发语言·经验分享·spring boot·后端·mybatis
jiushun_suanli1 天前
FPGA(现场可编程门阵列)详解
经验分享·学习·fpga开发
不会写代码的里奇1 天前
VMware Ubuntu 22.04 NAT模式下配置GitHub SSH完整教程(含踩坑实录+报错_成功信息对照)
linux·经验分享·笔记·git·ubuntu·ssh·github
智者知已应修善业1 天前
【给定英文字符串统计最多小写最前输出】2023-2-27
c语言·开发语言·c++·经验分享·笔记·算法