计算动态功能连接(TDA-Volume_based)遇到问题

Submitted by 罗捷 on

严老师好!

在我计算动态功能连接的适合遇到问题。(尝试了matlab 2016b 2018a 2022a)首先是当我试图define ROI时,报错如下

 无法执行赋值,因为此类型的变量不支持使用点进行索引。 

出错 DPABI_ROIList>DPABI_ROIList_OpeningFcn (line 62) handles.Cfg.ROIDef = {};

于是我对DPABI_ROIList.m中function DPABI_ROIList_OpeningFcn的进行了修改,添加了蓝色内容,将handles.Cfg 转化为结构体,其他并未修改

function DPABI_ROIList_OpeningFcn...
if nargin > 3

   inputCell = varargin{1};
   inputStruct = struct();
   inputStruct.Config = inputCell;
   handles.Cfg = inputStruct;
 

   if  ~isfield(handles.Cfg,'ROIDef') 

然后我就按照如下的设置Run,很快又报错

错误使用 y_SCA_Window (line 163)
此类型的变量不支持使用大括号进行索引。

这个类型的变量我检查了是ROIDef{},于是我就检查了ROIDef,作了如下修改:

ROIDef_Cell = ROIDef.ROIDef;

for iROI = 1:length(ROIDef_Cell)

    for循环中所有ROIDef{iROI} 全部变为 ROIDef_Cell{iROI}

然后程序就能正常跑了,至少计算动态功能连接可能没问题。

这是我输出文件的内容,请严老师帮我看一下是否是计算成功了,每个类型截取了部分

问题:

1.请问文献中的滑动窗口的FC图是如何做的呢?因为我看输出文件只有一个ROI_FC_Sub_00x.mat文件,时间变量是如何体现的呢?

2.当我试图用Dosenbach的模板时候,然后Run,它提示我内存不足,请问老师这是个人电脑带不动的正常现象or是我修改代码造成的内存分配不当?

错误使用 y_SCA_Window (line 303)
请求的 61x73x61x196x160 (63.5GB)数组超过预设的最大数组大小。创建大于此限制的数组可能需要较长
时间,并且会导致 MATLAB 无响应。有关详细信息,请参阅数组大小限制或预设项面板。