Dear surfers, 

Could you please help me with the following analysis workflow: 

I am doing an analysis where I identify patterns on the ?h.orig surfaces. What I want to do now is to resample these patterns over vertices, such that I have vertex-wise correspondence across subjects. I believe this essentially requires the construction of and projection to a group template (although I'm aware this could be done with e.g. fsaverage). 

Here is where I'm at:


cd(freesurfer dir)


1. Read ?h.orig surfaces; compute patterns

(...some in-house stuff...)

2. Write patterns out to .mgh file 

Matlab
save_mgh(pat,outfile,eye(4));    

Python
nibabel.MGHImage(pat[:,numpy.newaxis,numpy.newaxis].astype(np.float32),numpy.eye(4)).to_filename(outfile)
    
3. Generate group template

make_average_subject --out avgsub --sd <fs dir> -subjects subj1 subj2 subj3 ....


4. Register a single example subject to the new group template

mris_register -curv subj1/surf/lh.sphere avgsub/lh.reg.template.tif subj1/surf/lh.sphere.reg.avgsub



5. Project the surface patterns identified above on to the new group template, so that the vertex values correspond across subjects, and can be averaged, statistically compared. etc. 

mri_surf2surf --srcsubject subj1 --srcsurfreg sphere.reg.avg_sub --trgsubject avg_sub --trgsurfreg sphere.reg --hemi lh --sval <pattern mgh file> --tval /tmp/test_avgsub.mgh


However this breaks down at mri_surf2surf, and I'm not particularly confident that the earlier parts are exactly right either. 


Could you please show me what commands I should be using for the aims as described above?

Many thanks, 

John





--

Dr. John Griffiths

Post-Doctoral Research Fellow

Rotman Research Institute, Baycrest

Toronto, Canada

and

Honorary Associate

School of Physics

University of Sydney