Как прочитать несколько файлов nifti в Matlab с помощью spm_select?
Я хочу использовать spm_select в цикле в Matlab, чтобы выбрать несколько файлов NIFTI. Тем не менее, кажется, что цикл не может работать правильно.
В каждой папке темы (всего 18 субъектов в subjList = {'2','3','6',...}, в каждой папке темы есть 4 прогона (в runList = {'run1','run2','run3','run4'}. И в каждом цикле нужно выбрать 254 файла nitfi. Использование spm_select выглядит так:
tmp = spm_select('expand',fullfile(SCAN_dir, 'SCAN.nii'));
tmp = cellstr(tmp(6:180,:));
Когда мой код выглядит следующим образом
if preprocess == 1
disp('------Preprocessing started------');
for subj = subjList
disp(strcat('Subject: ',subj));
clear matlabbatch;
cd(dataDir);
cd(char(strcat(dataDir,subj)));
files = {};
funFiles = {};
filename = {};
func = {};
for i = 1: length(runList)
files{i} = char(strcat(dataDir,subj,'/',runList{i}));
filename{i} = dir(fullfile(files{i}, '*.nii'));
funFiles{i} = strcat(filename{i}.folder,'/',filename{i}.name);
%read multiple nii files
func{i} = spm_select('expand',funFiles{i});
func{i} = cellstr(func{i}(1:254,:));
end;
funFiles = funFiles';
func = func';
preprocessing_job(funFiles);
end;
disp('------Preprocessing ended------');
end;
Когда сценарии запускаются перед предложениями spm_select, все хорошо. Однако при полном запуске этой части кода появляются следующие ошибки:
ошибка при использовании read_hdr (строка 36)
Ошибка чтения заголовочного файла "/".
ошибка nifti (строка 26)
vol = read_hdr (fname);
ошибка spm_select>spm_select_get_nbframes (строка 268)
N = nifti (файл);
ошибка spm_select>spm_select_expand (строка 254)
n = spm_select_get_nbframes (ifiles {i});
ошибка spm_select (строка 130)
varargout {1} = spm_select_expand (varargin {2});
ошибка main_analysis_script (строка 40)
func {i} = spm_select ('раскрыть',funFiles{i});
Я хочу знать причину первой ошибки о read_hdr. Есть ли проблемы с заголовочным файлом? Функциональный файл в формате 4D NIFTI. Я новичок в Matlab, хотя я знаю больше о пакете SPM. Я использую SPM12 и MatlabR2018b. Может ли кто-нибудь помочь мне цикл или предложения SPM? Большое спасибо и жду любых ваших слов.