Ran csh script with
foreach subject ( `ls -d ucsf_??` ) pushd ${subject}/mri set newpath="${SUBJECTS_DIR}/${subject}/mri/transforms/talairach.xfm" echo $newpath mri_add_xform_to_header -c $newpath orig orig popd end
and that worked, it now has the right xform path in the header for the orig volume. I assume tksurfer obtains the talairach matrix after reading the header info for the mri volume. Should this be run on all the mri volumes under ${subject}/mri/ (ie, orig, wm, filled, T1, nu)?
The tksurfer startup still reports a problem finding that file:
dnlweber:~/freesurfer/subjects> tksurfer -ucsf_cj lh orig surfer: current subjects dir: /home/dweber/freesurfer/subjects surfer: not in "scripts" dir ==> using cwd for session root surfer: session root data dir ($session) set to: surfer: /data/freesurfer/subjects can't find talairach file '/home/dweber/freesurfer/subjects/ucsf_cj/mri/T1/COR-.info/../transforms/talairach.xfm' surfer: Reading header info from /home/dweber/freesurfer/subjects/ucsf_cj/mri/T1/COR-.info INFO: NOT fixing vertex area surfer: vertices=156081, faces=312158 surfer: single buffered window surfer: using interface /home/dweber/freesurfer/home/lib/tcl/tksurfer.tcl Reading /home/dweber/freesurfer/home/lib/tcl/tkm_common.tcl Reading /home/dweber/freesurfer/home/lib/tcl/tkm_wrappers.tcl Reading /home/dweber/freesurfer/home/lib/tcl/fsgdfPlot.tcl Reading /home/dweber/freesurfer/home/lib/tcl/tkUtils.tcl Successfully parsed tksurfer.tcl % exit
Somewhere in tksurfer, the path manipulation is slightly off; that is, the file does exist and it is nonzero size, so the culprit here is the path specification. The path above does not work, but removing the COR-.info from that path works:
'/home/dweber/freesurfer/subjects/ucsf_cj/mri/T1/../transforms/talairach.xfm'
dnlweber:~/freesurfer/subjects> ls -l /home/dweber/freesurfer/subjects/ucsf_cj/mri/T1/../transforms/talairach.xfm -rw-r--r-- 1 dweber dnl 837 2005-10-27 22:46 /home/dweber/freesurfer/subjects/ucsf_cj/mri/T1/../transforms/talairach.xfm
Somewhere in tksurfer there is a relative path specification, it may be preferable to use a specification like
${SUBJECTS_DIR}/$subject/mri/transforms/talairach.xfm
Best, Darren
Doug Greve wrote:
"newpath" was supposed to be the full path to the talairach.xfm
Darren Weber wrote:
No luck,
dnlweber:~/freesurfer/subjects> cd ucsf_cj/mri/ dnlweber:~/freesurfer/subjects/ucsf_cj/mri> mri_add_xform_to_header -c newpath orig orig dnlweber:~/freesurfer/subjects/ucsf_cj/mri> cd .. dnlweber:~/freesurfer/subjects/ucsf_cj> cd .. dnlweber:~/freesurfer/subjects> tksurfer -ucsf_cj lh orig surfer: current subjects dir: /home/dweber/freesurfer/subjects surfer: not in "scripts" dir ==> using cwd for session root surfer: session root data dir ($session) set to: surfer: /data/freesurfer/subjects can't find talairach file '/home/dweber/freesurfer/subjects/ucsf_cj/mri/T1/COR-.info/../transforms/talairach.xfm'
surfer: Reading header info from /home/dweber/freesurfer/subjects/ucsf_cj/mri/T1/COR-.info INFO: NOT fixing vertex area surfer: vertices=156081, faces=312158 can't find talairach file '/home/dweber/freesurfer/subjects/ucsf_cj/surf/../mri/orig/COR-.info/../transforms/talairach.xfm'
surfer: single buffered window surfer: using interface /home/dweber/freesurfer/home/lib/tcl/tksurfer.tcl Reading /home/dweber/freesurfer/home/lib/tcl/tkm_common.tcl Reading /home/dweber/freesurfer/home/lib/tcl/tkm_wrappers.tcl Reading /home/dweber/freesurfer/home/lib/tcl/fsgdfPlot.tcl Reading /home/dweber/freesurfer/home/lib/tcl/tkUtils.tcl Successfully parsed tksurfer.tcl %
Doug Greve wrote:
you can do something like:
cd ucsf_cj/mri mri_add_xform_to_header -c newpath orig orig
Our newest versions are better at locating these things.
doug
Darren Weber wrote:
I have some path problems when using tksurfer, eg
dnlweber:/data/freesurfer/subjects> tksurfer -ucsf_cj rh inflated surfer: current subjects dir: /home/dweber/freesurfer/subjects surfer: not in "scripts" dir ==> using cwd for session root surfer: session root data dir ($session) set to: surfer: /data/freesurfer/subjects can't find talairach file '/home/dweber/freesurfer/subjects/ucsf_cj/mri/T1/COR-.info/../transforms/talairach.xfm'
surfer: Reading header info from /home/dweber/freesurfer/subjects/ucsf_cj/mri/T1/COR-.info INFO: NOT fixing vertex area surfer: vertices=154539, faces=309074 can't find talairach file '/home/dweber/freesurfer/subjects/ucsf_cj/surf/../mri/orig/COR-.info/../transforms/talairach.xfm'
surfer: single buffered window surfer: using interface /home/dweber/freesurfer/home/lib/tcl/tksurfer.tcl Reading /home/dweber/freesurfer/home/lib/tcl/tkm_common.tcl Reading /home/dweber/freesurfer/home/lib/tcl/tkm_wrappers.tcl Reading /home/dweber/freesurfer/home/lib/tcl/fsgdfPlot.tcl Reading /home/dweber/freesurfer/home/lib/tcl/tkUtils.tcl Successfully parsed tksurfer.tcl
The .xfm file exists, ie
dnlweber:/data/freesurfer/subjects> ls ucsf_cj/mri/transforms/ talairach.xfm
So the question is, how can I work around this failure to find the talairach.xfm file? Do I need to edit the tksurfer.tcl script? It seems to have a strange way of using relative paths (..) to find the talairach.xfm file.
In case it makes any difference, this is my set up:
Setting up environment for FreeSurfer/FS-FAST (and FSL) FREESURFER_HOME /home/dweber/freesurfer/home FSFAST_HOME /home/dweber/freesurfer/home/fsfast SUBJECTS_DIR /home/dweber/freesurfer/subjects FUNCTIONALS_DIR /home/dweber/freesurfer/sessions MINC_BIN_DIR /home/dweber/freesurfer/home/mni/bin MINC_LIB_DIR /home/dweber/freesurfer/home/mni/lib PERL5LIB /home/dweber/freesurfer/home/mni/lib/perl5/5.8.0 GSL_DIR /home/dweber/freesurfer/home/lib/gsl QTDIR /home/dweber/freesurfer/home/lib/qt TCLLIBPATH /home/dweber/freesurfer/home/lib/tcltktixblt/lib FSL_DIR /usr/local/fsl
where the /home/dweber/freesurfer contains symlinks (please don't ask me why), eg:
dnlweber:/data/freesurfer/subjects> ls -l /home/dweber/freesurfer/ total 0 lrwxrwxrwx 1 dweber dnl 25 2006-02-24 20:26 functionals -> /data/freesurfer/sessions lrwxrwxrwx 1 dweber dnl 21 2006-02-24 20:26 home -> /usr/local/freesurfer lrwxrwxrwx 1 dweber dnl 25 2006-02-24 20:26 sessions -> /data/freesurfer/sessions lrwxrwxrwx 1 dweber dnl 25 2006-02-24 20:26 subjects -> /data/freesurfer/subjects