关于运行reho运算时报错的问题,请老师抽空解答

尊敬的论坛老师,有一问题请教如下:

我们在matlab2012a下加载了REST V1.8,之后运行其中的reho运算。
首先想问一下,REST开始运行时出现的“set REST Workers”对话框中,Parallel computation toolbox detected是什么意思? How many workers do you want REST to use?这个问题,如果只是想在计算机完成一组数据的reho值计算,是不是输入默认值0,然后ok就可以了?
我们输入0然后ok,在reho对话框中输入相关的参数然后do all,滤波的步骤可以完成,但之后就报错了,具体如下:

Removing the linear trend: D:
estshouci
          Read 3D EPI functional images: "D:\restshouci\guoxiaohong\wra".........................................
 
          Detrend working. Wait.............
 
          Saving detrended images.     Wait...
          Detrend over.
         Elapsed time is 40.202579 seconds.
Elapsed time is 40.277889 seconds.
 
Ideal rectangular filter:   "D:\restshouci\guoxiaohong\wra_detrend"
          Read 3D EPI functional images: "D:\restshouci\guoxiaohong\wra_detrend".
 
          Load mask "Default".
          Band Pass Filter working.       Wait.............
          Saving filtered images. Wait...
Exception occured. (MATLAB:nomem)
         Error using double
Out of memory. Type HELP MEMORY for your options.
         70#line,             subsasgn, in "F:\chengxu\spm8\@file_array\subsasgn.m"
         65#line,             rest_Write4DNIfTI, in "F:\chengxu\REST_V1.8_130615\REST_V1.8_130615\rest_Write4DNIfTI.m"
         111#line,           rest_bandpass,         in "F:\chengxu\REST_V1.8_130615\REST_V1.8_130615\rest_bandpass.m"
         1265#line,                  (parfor body), in "F:\chengxu\REST_V1.8_130615\REST_V1.8_130615\reho_gui.m"
         470#line,           parallel_function,    in "E:\Program Files\MATLAB\R2012a\toolbox\matlab\lang\parallel_function.m"
         1249#line,                  BandPass,         in "F:\chengxu\REST_V1.8_130615\REST_V1.8_130615\reho_gui.m"
         307#line,           btnComputeReho_Callback,    in "F:\chengxu\REST_V1.8_130615\REST_V1.8_130615\reho_gui.m"
         96#line,             gui_mainfcn,    in "E:\Program Files\MATLAB\R2012a\toolbox\matlab\guide\gui_mainfcn.m"
         35#line,             reho_gui, in "F:\chengxu\REST_V1.8_130615\REST_V1.8_130615\reho_gui.m"
>> 

后来我们试着用比较旧的软件版本,matlabR2006b和REST v1.5,就可以顺利的计算出reho值,没有再报错。

请问老师,这种情况的报错是否和不同的软件版本有关?应该如何解决?

谢谢!

 Parallel computation toolbox detected是指检测到了你的matlab里有并行计算的工具包,这个工具包是用来并行计算的,也就是可以一次用多个核(CPU)来对多个人的数据同时计算,set REST Workers的意思就是让你指定有多少个核参与计算。你看看你的计算机有几个核就可以设置为几个核。输入默认值0的意思就是只用一个核不用并行计算。这样也是可以的。并行计算和不用并行计算结果是一样的,只是速度快慢而已。

你出错的信息显示你的内存不足,Out of memory。你需要换个内存大些的计算机,至少也得4G内存吧,最好把后台其他软件关掉。比较旧的软件版本,matlabR2006b和REST v1.5可能消耗内存小些,于是就可以跑了。但是还是建议用最近的版本比较好。