Dear Bruce, Doug and all, Thanks for your suggestion, it helped a lot.
(1) I load the fsaverage surface (lh.inflated) in tksurfer, and then load the fsaverage patch (lh.cortex.patch.flat). The flat map was shown for several seconds, and then an error occurred and tksurfer was shut down. The terminal said: ‘tksurfer.bin:tnl/t_vertex.c:407: update_input_ptrs: Assertion ‘a[j].inputstride == vptr-> stride’ failed. Abort(core dumped)’. Could you give me some advice? I use a 'CentOS release 6.2' system. The freesurfer is ‘freesurfer-Linux-centos6_x86_64-stable-pub-v5.3.0’.
(2) Indeed, I want to flatten all cortical thickness surfaces of 140 subjects onto the ‘lh.cortex.patch.flat’ of fsaverage. I just don’t understand your idea how to do this. After I load ‘lh.cortex.patch.flat’ of fsaverage, the tksurfer only shows this flat map (now it lasted for several seconds and crashed), so how can I ' load whatever overlay you want in the same way you would on the inflated surface’? Does it mean that I load the individual flat map on the individual inflated surface? But I haven’t got the individual flat map yet.
(3) I am wondering if there are some table recording the transformation relationships between the fsaverage surface vertices and the flat map vertices? If so, then I think all I need to do is extracting the cortical thickness value of every vertex in individual inflated surface, and then putting into the corresponding vertex in the flat map.
Thank you very much!
Best regards, Qiongmin
------------------------------------------------------------------------------------------------------------------------------------------------- Load the fsaverage surface in tksurfer (say lh.inflated) then load the patch we distribute with fsaverage (I think it's called something like lh.cortex.patch.flat) with file->load patch. Then load whatever overlay you want in the same way you would on the inflated surface
Cheers Bruce
On May 19, 2014, at 10:06 PM, Caka qiongmin.ma@gmail.com wrote:
Hi Doug, Thanks for your suggestion on tksurfer, it works. I would like to map all the subjects into a flat map because I am curious about the 2-D thickness patterns between different groups. I think there will be some distinctions. But if I flatten fsaverage, how can I map everyone?s 3D surface onto the fsaverage?s 2D map? Is there a command?
Best, Qiongmin
On 05/13/2014 11:19 PM, Caka wrote: Dear Doug and all, I have already done two things: (1) 'recon-all? to the segmentation for 140 subjects; (2) surface registration to fsaverage template for 1 subject using: mri_surf2surf --hemi lh --srcsubject sub001 --srcsurfval thickness --src_type curv --trgsubject fsaverage --trgsurfval ./sub001-thickness-lh.mgz Now I have got the 'sub001-thickness-lh.mgz' file. I have two questions: (1) Is this 'sub001-thickness-lh.mgz? a surface file or a volume file? How can I read it? I used ?freeview sub001-thickness-lh.mgz? to read it, but a dark scene was shown, nothing can be found. I also used ?mris_convert -c $SUBJECTS_DIR/sub001/sub001-thickness-lh.mgz $SUBJECTS_DIR/sub001/surf/lh.orig lh.thickness.asc?, an error occurred like ?ERROR: number of vertices in /disk250/data_analysis/sub001/sub001-thickness-lh.mgz does not match surface (163842, 132230)?.
Try tksurfer fsaverage lh inflated -aparc -overlay sub001-thickness-lh.mgz -fminmax .01 4
(2) After the registration, I want to flatten the surface of curvature or thickness into a full plane. The wiki says we should first specify 5 vertices and cut the whole area without the midline region, then ?kris_flatten? can be used. Indeed, this procedure requires quite a lot manually operation. I am wondering if there are some automatically commands that can do this flatten projects for 140 subject? Any reply would be really appreciated! Qiongmin _______________________________________________ Freesurfer mailing list Freesurfer@nmr.mgh.harvard.edu https://mail.nmr.mgh.harvard.edu/mailman/listinfo/freesurfer
I don't think so, though I think bruce was working on something. You could just flatten fsaverage and then map everyone to fsaverage (as you have already done). Why do you want to map everyone to a flat map?
doug ______________________________
Hi Qiongmin
1. I think this is a bug in the open GL code that is outside of our control. We will try to track it down
2. The flat maps aren't really any different than say the inflated fsaverage surface. If you can generate group (or individual maps) in fsaverage space you can display them on the flat maps.
3. The index of each vertex in the flattened space is stored in the patch files so you can always look up what vertex it was on inflated, sphere, etc...
cheers Bruce
On Mon, 26 May 2014, Caka wrote:
Dear Bruce, Doug and all, Thanks for your suggestion, it helped a lot.
(1) I load the fsaverage surface (lh.inflated) in tksurfer, and then load the fsaverage patch (lh.cortex.patch.flat). The flat map was shown for several seconds, and then an error occurred and tksurfer was shut down. The terminal said: ‘tksurfer.bin:tnl/t_vertex.c:407: update_input_ptrs: Assertion ‘a[j].inputstride == vptr-> stride’ failed. Abort(core dumped)’. Could you give me some advice? I use a 'CentOS release 6.2' system. The freesurfer is ‘freesurfer-Linux-centos6_x86_64-stable-pub-v5.3.0’.
(2) Indeed, I want to flatten all cortical thickness surfaces of 140 subjects onto the ‘lh.cortex.patch.flat’ of fsaverage. I just don’t understand your idea how to do this. After I load ‘lh.cortex.patch.flat’ of fsaverage, the tksurfer only shows this flat map (now it lasted for several seconds and crashed), so how can I ' load whatever overlay you want in the same way you would on the inflated surface’? Does it mean that I load the individual flat map on the individual inflated surface? But I haven’t got the individual flat map yet.
(3) I am wondering if there are some table recording the transformation relationships between the fsaverage surface vertices and the flat map vertices? If so, then I think all I need to do is extracting the cortical thickness value of every vertex in individual inflated surface, and then putting into the corresponding vertex in the flat map.
Thank you very much!
Best regards, Qiongmin
Load the fsaverage surface in tksurfer (say lh.inflated) then load the patch we distribute with fsaverage (I think it's called something like lh.cortex.patch.flat) with file->load patch. Then load whatever overlay you want in the same way you would on the inflated surface
Cheers Bruce
On May 19, 2014, at 10:06 PM, Caka <qiongmin.ma@gmail.com> wrote: Hi Doug, Thanks for your suggestion on tksurfer, it works. I would like to map all the subjects into a flat map because I am curious about the 2-D thickness patterns between different groups. I think there will be some distinctions. But if I flatten fsaverage, how can I map everyone?s 3D surface onto the fsaverage?s 2D map? Is there a command? Best, Qiongmin On 05/13/2014 11:19 PM, Caka wrote: Dear Doug and all, I have already done two things: (1) 'recon-all? to the segmentation for 140 subjects; (2) surface registration to fsaverage template for 1 subject using: mri_surf2surf --hemi lh --srcsubject sub001 --srcsurfval thickness --src_type curv --trgsubject fsaverage --trgsurfval ./sub001-thickness-lh.mgz Now I have got the 'sub001-thickness-lh.mgz' file. I have two questions: (1) Is this 'sub001-thickness-lh.mgz? a surface file or a volume file? How can I read it? I used ?freeview sub001-thickness-lh.mgz? to read it, but a dark scene was shown, nothing can be found. I also used ?mris_convert -c $SUBJECTS_DIR/sub001/sub001-thickness-lh.mgz $SUBJECTS_DIR/sub001/surf/lh.orig lh.thickness.asc?, an error occurred like ?ERROR: number of vertices in /disk250/data_analysis/sub001/sub001-thickness-lh.mgz does not match surface (163842, 132230)?. Try tksurfer fsaverage lh inflated -aparc -overlay sub001-thickness-lh.mgz -fminmax .01 4 (2) After the registration, I want to flatten the surface of curvature or thickness into a full plane. The wiki says we should first specify 5 vertices and cut the whole area without the midline region, then ?kris_flatten? can be used. Indeed, this procedure requires quite a lot manually operation. I am wondering if there are some automatically commands that can do this flatten projects for 140 subject? Any reply would be really appreciated! Qiongmin _______________________________________________ Freesurfer mailing list Freesurfer@nmr.mgh.harvard.edu https://mail.nmr.mgh.harvard.edu/mailman/listinfo/freesurfer I don't think so, though I think bruce was working on something. You could just flatten fsaverage and then map everyone to fsaverage (as you have already done). Why do you want to map everyone to a flat map? doug ______________________________
freesurfer@nmr.mgh.harvard.edu