I downloaded the most recent update, and untarred it. Now when I try to
view an SPM.mat, I get the following error message:
??? Error using ==> spm_sample_vol
Bad image handle dimensions.
Error in ==> spm_get_data at 41
Y(i,:) = spm_sample_vol(V(i),XYZ(1,:),XYZ(2,:),XYZ(3,:),0);
Error in ==> spm_getSPM at 540
Z = min(Z,spm_get_data(xCon(i).Vspm,XYZ));
Error in ==> spm_results_ui at 274
[SPM,xSPM] = spm_getSPM;
??? Error while evaluating uicontrol Callback
This won't require re-analyzing all the data, will it?
Chris
Simon Durrant wrote:
> Hi Chris,
>
> The fast and dirty solution is simply to turn the warning off by
> entering the following at the command prompt:-
>
> warning('off','MATLAB:FINITE:obsoleteFunction')
>
> This will stop it slowing down the processing. It's caused by the
> Matlab guys changing the "finite" function name to "isfinite" to make
> it more consistent with their other type-check functions,
> but unfortunately all code using the old version subsequently gets a
> warning. I'm sure the SPM authors know about it and will be updating
> that and many other version-specific issues (mex files compiled with
> older versions of Matlab are another notable example) in SPM8.
>
> Best,
>
> Simon
>
>
>
> ------------------------------------------------------------------------
>
> > Date: Fri, 8 Aug 2008 12:17:56 -0400
> > From: [log in to unmask]
> > Subject: [SPM] Warning, using Matlab 7.6 (R2008a)
> > To: [log in to unmask]
> >
> > Hello,
> > While doing preprocessing for a dataset, I receive this warning (I just
> > upgraded to Matlab 7.6):
> >
> > Warning: FINITE is obsolete and will be removed in future versions. Use
> > ISFINITE instead.
> > > In file_array.subsasgn>subfun at 95
> > In file_array.subsasgn at 63
> > In spm_write_plane at 33
> > In spm_slice_timing at 261
> > In spm_config_slice_timing>slicetiming at 170
> > In spm_jobman>run_struct1 at 1540
> > In spm_jobman>run_struct1 at 1548
> > In spm_jobman>run_struct1 at 1548
> > In spm_jobman>run_job at 469
> > In spm_jobman at 85
> >
> > This warning is spit out for just about every slice, and slows down the
> > process quite a bit. This is what a tech support guy from The Mathworks
> > had to say: (I originally thought the Matlab built-in 'subsasgn' was to
> > blame)
> >
> > "It is true that FINITE function has been deprecated in MATLAB and we
> > promote using ISFINITE instead of FINITE. As you mentioned that spm_*
> > files are from the SPM5 package, you will probably need to contact SPM
> > to incorporate the necessary changes about replacing the FINITE
> > functions to INFINITE in the files.
> > From the error messages, it does not seem that SUBASGN is using FINITE.
> > Although it is hard to say by looking at the error messages alone, but
> > it looks like SUBASGN has been overloaded for the FILE_ARRAY object in
> > SPM5 package. Hence, in this case as well, you will probably need to
> > contact SPM for further information."
> >
> > I already changed all instances of "finite" to "isfinite" in the spm
> > files. Is there anything else to be done? (I'm using SPM5 on RHEL4, for
> > reference).
> >
> > Thanks,
> > Chris Watson
>
>
> ------------------------------------------------------------------------
> Find out how to make Messenger your very own TV! Try it Now!
> <http://clk.atdmt.com/UKM/go/101719648/direct/01/>
|