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
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
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
"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
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
Does it work if you change the xfm for the T1s?
Darren Weber wrote:
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
Hi Doug,
yes, that works. My fix script looks like this:
cd ${SUBJECTS_DIR} foreach subject ( `ls -d ucsf_??` ) pushd ${subject}/mri set xfmFile="${SUBJECTS_DIR}/${subject}/mri/transforms/talairach.xfm" if (-e $xfmFile) then echo $xfmFile foreach vol ( brain filled nu orig T1 wm ) mri_add_xform_to_header -c $xfmFile $vol $vol end else echo "File does not exist:" echo $xfmFile endif popd end
My subjects directory was moved from one mount point to another, that was the source of these errors. So the paths in the COR-.info files was no longer valid, as they are a full path to the talairach.xfm file. I wonder if these would be better as relative paths?
Thanks for your patience and this easy fix.
Best, Darren
Doug Greve wrote:
Does it work if you change the xfm for the T1s?
Darren Weber wrote:
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
I'm not sure which version you are using, but the most recent one first looks at the absolute path, then looks at the relative path, so hopefully we will not run into this again.
Darren Weber wrote:
Hi Doug,
yes, that works. My fix script looks like this:
cd ${SUBJECTS_DIR} foreach subject ( `ls -d ucsf_??` ) pushd ${subject}/mri set xfmFile="${SUBJECTS_DIR}/${subject}/mri/transforms/talairach.xfm" if (-e $xfmFile) then echo $xfmFile foreach vol ( brain filled nu orig T1 wm ) mri_add_xform_to_header -c $xfmFile $vol $vol end else echo "File does not exist:" echo $xfmFile endif popd end
My subjects directory was moved from one mount point to another, that was the source of these errors. So the paths in the COR-.info files was no longer valid, as they are a full path to the talairach.xfm file. I wonder if these would be better as relative paths?
Thanks for your patience and this easy fix.
Best, Darren
Doug Greve wrote:
Does it work if you change the xfm for the T1s?
Darren Weber wrote:
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 > > > > > > >
I've got the rh9 dev version installed. I first extracted the 'stable' version and then the 'dev' version over the top.
Doug Greve wrote:
I'm not sure which version you are using, but the most recent one first looks at the absolute path, then looks at the relative path, so hopefully we will not run into this again.
Darren Weber wrote:
Hi Doug,
yes, that works. My fix script looks like this:
cd ${SUBJECTS_DIR} foreach subject ( `ls -d ucsf_??` ) pushd ${subject}/mri set xfmFile="${SUBJECTS_DIR}/${subject}/mri/transforms/talairach.xfm" if (-e $xfmFile) then echo $xfmFile foreach vol ( brain filled nu orig T1 wm ) mri_add_xform_to_header -c $xfmFile $vol $vol end else echo "File does not exist:" echo $xfmFile endif popd end
My subjects directory was moved from one mount point to another, that was the source of these errors. So the paths in the COR-.info files was no longer valid, as they are a full path to the talairach.xfm file. I wonder if these would be better as relative paths?
Thanks for your patience and this easy fix.
Best, Darren
Doug Greve wrote:
Does it work if you change the xfm for the T1s?
Darren Weber wrote:
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 >> >> >> >> >> >> >> >
freesurfer@nmr.mgh.harvard.edu