Dear all,
It looks like I have found a workaround for the problem that I encountered when calculating the local gyrification index. I am not sure how common my problem is, but as the solution might interest some other people aswell I decided to post it here.
The problem was that in my case Matlab did not find the temporary directory 'tmp-mris_compute_lgi-?h.pial' and its file '?h.pial.filled.mgz' - both created by the mris_compute_lgi script (see terminal error message below).
My solution was to edit mris_compute_lgi (which can be found in $FREESURFER_HOME/bin) in line 68 replacing
set tmpdir = (tmp-mris_compute_lgi-${input})
with
set tmpdir = ($PWD/tmp-mris_compute_lgi-${input})
$PWD is a unix environment variable for the path to the current directory (which in this case is $SUBJECTS_DIR/subjid/surf). I have started the computation now and so far everything seems to work fine.
Best wishes, Christian Scheel
--- ps: this is the terminal error message before editing mris_compute_lgi:
[r...@localhost christian]$ recon-all -s bert -localGI Subject Stamp: freesurfer-Linux-centos4-stable-pub-v4.1.0 Current Stamp: freesurfer-Linux-centos4-stable-pub-v4.1.0 INFO: SUBJECTS_DIR is /home/freesurfer/christian Actual FREESURFER_HOME /usr/local/freesurfer_410 -rw-rw-r-- 1 freesurfer freesurfer 906671 Jan 20 14:30 /home/freesurfer/christian/bert/scripts/recon-all.log Linux localhost.localdomain 2.6.9-67.ELsmp #1 SMP Fri Nov 16 12:48:03 EST 2007 i686 i686 i386 GNU/Linux INFO: current FREESURFER_HOME does not match that of previous processing. Current: /usr/local/freesurfer_410 Previous: /space/freesurfer/build/pub-releases/freesurfer /home/freesurfer/christian/bert/surf #-------------------------------------------- #...@# Local Gyrification Index lh Tue Jan 20 14:43:39 CET 2009
mris_compute_lgi --i lh.pial
================= rm -Rf tmp-mris_compute_lgi-lh.pial ================= ================= mkdir -p tmp-mris_compute_lgi-lh.pial ================= ================= mris_fill -c -r 1 lh.pial tmp-mris_compute_lgi-lh.pial/lh.pial.filled.mgz ================= reading surface from lh.pial... writing filled volume to tmp-mris_compute_lgi-lh.pial/lh.pial.filled.mgz... conforming output volume setting resolution for intermediate calculations to 1.0000 ================= make_outer_surface('tmp-mris_compute_lgi-lh.pial/lh.pial.filled.mgz',15,'tmp-mris_compute_lgi-lh.pial/lh.pial-outer'); exit =================
---------------------------------------------------------------------------- Warning: glibc 2.3.4 - Your version glibc 2.3.6 - MATLAB built using this version ----------------------------------------------------------------------------
Warning: Unable to open display 'iconic'. You will not be able to display graphics on the screen.
< M A T L A B (R) > Copyright 1984-2008 The MathWorks, Inc. Version 7.7.0.471 (R2008b) September 17, 2008
To get started, type one of these: helpwin, helpdesk, or demo. For product information, visit www.mathworks.com.
reading filled volume...
zcat: tmp-mris_compute_lgi-lh.pial/lh.pial.filled.mgz.gz: No such file or directory ERROR: problem reading fname ??? SWITCH expression must be a scalar or string constant.
Error in ==> load_mgh at 158 switch type
Error in ==> MRIread at 88 [mri.vol, M, mr_parms, volsz] = load_mgh(fspec,[],[],headeronly);
Error in ==> make_outer_surface at 24 vol=MRIread(filled_volume);
ERROR: make_outer_surface did not create output file 'tmp-mris_compute_lgi-lh.pial/lh.pial-outer'! Linux localhost.localdomain 2.6.9-67.ELsmp #1 SMP Fri Nov 16 12:48:03 EST 2007 i686 i686 i386 GNU/Linux
recon-all exited with ERRORS at Tue Jan 20 14:43:55 CET 2009
freesurfer@nmr.mgh.harvard.edu