Skip to content

ENH: FreeSurfer Wrappings for Recon-All Workflow #1326

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 130 commits into from
Apr 6, 2016
Merged

ENH: FreeSurfer Wrappings for Recon-All Workflow #1326

merged 130 commits into from
Apr 6, 2016

Conversation

ellisdg
Copy link
Contributor

@ellisdg ellisdg commented Jan 21, 2016

This pull request add the wrappings for the following FreeSurfer commands:

  • mri_nu_correct.mni
  • mri_watershed
  • mri_normalize
  • mri_ca_normalize
  • mri_ca_register
  • mri_ca_label
  • mris_ca_label
  • mri_cc
  • mri_segment
  • mri_edit_wm_with_aseg
  • mri_concatenate_lta
  • mri_label2label
  • mris_label2annot
  • mris_spherical_average
  • mri_add_xform_to_header
  • talairach_afd
  • talairach_avi
  • tal_QC_AZS
  • mri_remove_neck
  • mri_fill
  • mris_inflate
  • mris_sphere
  • mris_fix_topology
  • mris_euler_number
  • mris_remove_intersection
  • mris_make_surfaces
  • mris_curvature
  • mris_curvature_stats
  • mris_jacobian
  • mris_calc
  • mris_volmask
  • mris_anatomical_stats
  • pctsurfcon
  • mri_relabel_hypointensities
  • mri_aparc2aseg
  • apas2aseg
  • mri_robust_template
  • mri_fuse_segmentations
  • mpr2mni305
  • avi2talxfm
  • mri_em_register
  • mris_register
  • mrisp_paint

This pull requests also adds inputs to some of the existing wrappings for FreeSurfer commands. These wrappings and changes were needed to create a a recon-all workflow in nipype that performs the same steps as recon-all. The workflows and usage information can be found here:
https://github.com/BRAINSia/BRAINSTools/tree/FreeSurferBreakout/AutoWorkup/fs_nipype

David Ellis added 30 commits January 19, 2016 09:58
…cort_gm, total_gray, euler,

in_intensity, and intensity_units to SegStatsInputSpec.
…gStats and SegStatsInputSpec for use in a recon-all workflow.
…documentation for 'mris_smooth'

The only positional arguments according to the documentation should be in_file and out_file.
The position for these inputs should be -2 and -1, respectively.
Other options do not require a fixed position.
Defaults are set automatically by 'mris_smooth' and do not need to be written into the nipype wrappings.
@coveralls
Copy link

Coverage Status

Changes Unknown when pulling 46a3042 on BRAINSia:FreeSurferBreakout into * on nipy:master*.

@coveralls
Copy link

Coverage Status

Changes Unknown when pulling c2bdc66 on BRAINSia:FreeSurferBreakout into * on nipy:master*.

@ellisdg
Copy link
Contributor Author

ellisdg commented Mar 29, 2016

@satra I added the freesurfer workflows and created an example (smri_fsreconall.py), but the cicleci tests are failing because during workflow setup, I require that the FREESURFER_HOME environmental variable be set. Should I just remove this requirement, or is there a way that I can get around this?

@coveralls
Copy link

Coverage Status

Changes Unknown when pulling b54c79f on BRAINSia:FreeSurferBreakout into * on nipy:master*.

…les so that it doesn't produce an error (just a warning) when testing without freesurfer.
@coveralls
Copy link

Coverage Status

Changes Unknown when pulling 8cde742 on BRAINSia:FreeSurferBreakout into * on nipy:master*.

@coveralls
Copy link

Coverage Status

Changes Unknown when pulling 07060d4 on BRAINSia:FreeSurferBreakout into * on nipy:master*.

@ellisdg
Copy link
Contributor Author

ellisdg commented Mar 31, 2016

@satra I added name source to simplify a lot of the interfaces. I also added an example workflow that runs recon-all on two subjects from the tutorial data and then gets the average subject. Everything works when running the workflow using FreeSurfer 6.0 and the outputs look identical to the standard recon-all workflow.

@satra
Copy link
Member

satra commented Mar 31, 2016

@dgellis90 - can you update the CHANGES file and push. i will merge it.

the freesurfer beta was yanked and they are planning to release 6.0 sometime before ohbm. have you tested this at all with freesurfer 5.3?

@ellisdg
Copy link
Contributor Author

ellisdg commented Mar 31, 2016

@satra I had been doing all my testing in 6.0 beta thinking it would be released soon. So I'll run some tests over the next few days and see if I can get it running on 5.3 as well.

@satra
Copy link
Member

satra commented Mar 31, 2016

@dgellis90 - you will also need to merge with current master, you probably have an older version of the CHANGES file.

@coveralls
Copy link

Coverage Status

Coverage increased (+0.04%) to 73.019% when pulling 4b850c8 on BRAINSia:FreeSurferBreakout into c46b932 on nipy:master.

@satra satra merged commit ee871ba into nipy:master Apr 6, 2016
@satra
Copy link
Member

satra commented Apr 6, 2016

@dgellis90 - let us know how tests with 5.3 go

@hjmjohnson
Copy link
Contributor

@satra David and I discussed this today, and we hope that it will be completed yet this week.

@hjmjohnson hjmjohnson deleted the FreeSurferBreakout branch April 6, 2016 02:46
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants