Skip to content
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

SyN-SDC may not be restricted to atlas priors #291

Open
effigies opened this issue Oct 19, 2022 · 1 comment
Open

SyN-SDC may not be restricted to atlas priors #291

effigies opened this issue Oct 19, 2022 · 1 comment
Labels

Comments

@effigies
Copy link
Member

Here's a report excerpt of SyN-SDC:

* fixed_image_masks : [
      '/scratch/fmriprep_22_0_wf/single_subject_EB_wf/syn_preprocessing_auto_00000/mask2epi/sub-EB_ses-x20220401_T1w_corrected_xform_rbrainmask_trans_uint8.nii.gz',
      '/scratch/fmriprep_22_0_wf/single_subject_EB_wf/syn_preprocessing_auto_00000/mask2epi/sub-EB_ses-x20220401_T1w_corrected_xform_rbrainmask_trans_uint8.nii.gz',
      '/scratch/fmriprep_22_0_wf/single_subject_EB_wf/fmap_preproc_wf/wf_auto_00000/atlas_msk/fmap_atlas_trans_mask.nii.gz'
  ]
* moving_image_masks : [
      '/scratch/fmriprep_22_0_wf/single_subject_EB_wf/fmap_preproc_wf/wf_auto_00000/epi_umask/clipped_mask_union.nii.gz',
      '/scratch/fmriprep_22_0_wf/single_subject_EB_wf/fmap_preproc_wf/wf_auto_00000/epi_umask/clipped_mask_union.nii.gz',
      '/scratch/fmriprep_22_0_wf/single_subject_EB_wf/fmap_preproc_wf/wf_auto_00000/epi_umask/clipped_mask_union.nii.gz'
  ]
Full report
Node: single_subject_EB_wf (fmap_preproc_wf (wf_auto_00000 (syn (fixes)
=======================================================================


 Hierarchy : fmriprep_22_0_wf.single_subject_EB_wf.fmap_preproc_wf.wf_auto_00000.syn
 Exec ID : syn


Original Inputs
---------------


* args : --write-interval-volumes 2
* collapse_output_transforms : True
* convergence_threshold : [1e-06, 1e-08]
* convergence_window_size : [5, 2]
* dimension : 3
* environ : {'NSLOTS': '8'}
* fixed_image : ['/scratch/fmriprep_22_0_wf/single_subject_EB_wf/syn_preprocessing_auto_00000/anat2epi/clipped_noise_corrected_trans.nii.gz', '/scratch/fmriprep_22_0_wf/single_subject_EB_wf/fmap_preproc_wf/wf_auto_00000/lap_anat_norm/clipped_noise_corrected_trans_maths_norm.nii.gz']
* fixed_image_mask : <undefined>
* fixed_image_masks : ['/scratch/fmriprep_22_0_wf/single_subject_EB_wf/syn_preprocessing_auto_00000/mask2epi/sub-EB_ses-x20220401_T1w_corrected_xform_rbrainmask_trans_uint8.nii.gz', '/scratch/fmriprep_22_0_wf/single_subject_EB_wf/syn_preprocessing_auto_00000/mask2epi/sub-EB_ses-x20220401_T1w_corrected_xform_rbrainmask_trans_uint8.nii.gz', '/scratch/fmriprep_22_0_wf/single_subject_EB_wf/fmap_preproc_wf/wf_auto_00000/atlas_msk/fmap_atlas_trans_mask.nii.gz']
* float : <undefined>
* initial_moving_transform : <undefined>
* initial_moving_transform_com : <undefined>
* initialize_transforms_per_stage : False
* interpolation : Linear
* interpolation_parameters : <undefined>
* invert_initial_moving_transform : <undefined>
* metric : [['Mattes', 'Mattes'], ['Mattes', 'Mattes']]
* metric_item_trait : <undefined>
* metric_stage_trait : <undefined>
* metric_weight : [[0.5, 0.5], [0.5, 0.5]]
* metric_weight_item_trait : 1.0
* metric_weight_stage_trait : <undefined>
* moving_image : ['/scratch/fmriprep_22_0_wf/single_subject_EB_wf/fmap_preproc_wf/wf_auto_00000/clip_epi/clipped.nii.gz', '/scratch/fmriprep_22_0_wf/single_subject_EB_wf/fmap_preproc_wf/wf_auto_00000/lap_epi_norm/clipped_maths_norm.nii.gz']
* moving_image_mask : <undefined>
* moving_image_masks : ['/scratch/fmriprep_22_0_wf/single_subject_EB_wf/fmap_preproc_wf/wf_auto_00000/epi_umask/clipped_mask_union.nii.gz', '/scratch/fmriprep_22_0_wf/single_subject_EB_wf/fmap_preproc_wf/wf_auto_00000/epi_umask/clipped_mask_union.nii.gz', '/scratch/fmriprep_22_0_wf/single_subject_EB_wf/fmap_preproc_wf/wf_auto_00000/epi_umask/clipped_mask_union.nii.gz']
* num_threads : 8
* number_of_iterations : [[200, 100], [10]]
* output_inverse_warped_image : True
* output_transform_prefix : fmap_syn
* output_warped_image : True
* radius_bins_item_trait : 5
* radius_bins_stage_trait : <undefined>
* radius_or_number_of_bins : [[48, 48], [48, 48]]
* random_seed : <undefined>
* restore_state : <undefined>
* restrict_deformation : [[0.1, 1.0, 0.1], [0.1, 1.0, 0.1]]
* sampling_percentage : [[0.8, 0.8], [1.0, 1.0]]
* sampling_percentage_item_trait : <undefined>
* sampling_percentage_stage_trait : <undefined>
* sampling_strategy : [['Random', 'Random'], [None, None]]
* sampling_strategy_item_trait : <undefined>
* sampling_strategy_stage_trait : <undefined>
* save_state : <undefined>
* shrink_factors : [[1, 1], [1]]
* sigma_units : ['vox', 'vox']
* smoothing_sigmas : [[2.0, 0.0], [0.0]]
* transform_parameters : [(0.8, 6.0, 3.0), (0.8, 2.0, 1.0)]
* transforms : ['SyN', 'SyN']
* use_estimate_learning_rate_once : [True, True]
* use_histogram_matching : [True, True]
* verbose : False
* winsorize_lower_quantile : 0.001
* winsorize_upper_quantile : 0.998
* write_composite_transform : False


Execution Inputs
----------------


* args : --write-interval-volumes 2
* collapse_output_transforms : True
* convergence_threshold : [1e-06, 1e-08]
* convergence_window_size : [5, 2]
* dimension : 3
* environ : {'NSLOTS': '8'}
* fixed_image : ['/scratch/fmriprep_22_0_wf/single_subject_EB_wf/syn_preprocessing_auto_00000/anat2epi/clipped_noise_corrected_trans.nii.gz', '/scratch/fmriprep_22_0_wf/single_subject_EB_wf/fmap_preproc_wf/wf_auto_00000/lap_anat_norm/clipped_noise_corrected_trans_maths_norm.nii.gz']
* fixed_image_mask : <undefined>
* fixed_image_masks : ['/scratch/fmriprep_22_0_wf/single_subject_EB_wf/syn_preprocessing_auto_00000/mask2epi/sub-EB_ses-x20220401_T1w_corrected_xform_rbrainmask_trans_uint8.nii.gz', '/scratch/fmriprep_22_0_wf/single_subject_EB_wf/syn_preprocessing_auto_00000/mask2epi/sub-EB_ses-x20220401_T1w_corrected_xform_rbrainmask_trans_uint8.nii.gz', '/scratch/fmriprep_22_0_wf/single_subject_EB_wf/fmap_preproc_wf/wf_auto_00000/atlas_msk/fmap_atlas_trans_mask.nii.gz']
* float : <undefined>
* initial_moving_transform : <undefined>
* initial_moving_transform_com : <undefined>
* initialize_transforms_per_stage : False
* interpolation : Linear
* interpolation_parameters : <undefined>
* invert_initial_moving_transform : <undefined>
* metric : [['Mattes', 'Mattes'], ['Mattes', 'Mattes']]
* metric_item_trait : <undefined>
* metric_stage_trait : <undefined>
* metric_weight : [[0.5, 0.5], [0.5, 0.5]]
* metric_weight_item_trait : 1.0
* metric_weight_stage_trait : <undefined>
* moving_image : ['/scratch/fmriprep_22_0_wf/single_subject_EB_wf/fmap_preproc_wf/wf_auto_00000/clip_epi/clipped.nii.gz', '/scratch/fmriprep_22_0_wf/single_subject_EB_wf/fmap_preproc_wf/wf_auto_00000/lap_epi_norm/clipped_maths_norm.nii.gz']
* moving_image_mask : <undefined>
* moving_image_masks : ['/scratch/fmriprep_22_0_wf/single_subject_EB_wf/fmap_preproc_wf/wf_auto_00000/epi_umask/clipped_mask_union.nii.gz', '/scratch/fmriprep_22_0_wf/single_subject_EB_wf/fmap_preproc_wf/wf_auto_00000/epi_umask/clipped_mask_union.nii.gz', '/scratch/fmriprep_22_0_wf/single_subject_EB_wf/fmap_preproc_wf/wf_auto_00000/epi_umask/clipped_mask_union.nii.gz']
* num_threads : 8
* number_of_iterations : [[200, 100], [10]]
* output_inverse_warped_image : True
* output_transform_prefix : fmap_syn
* output_warped_image : True
* radius_bins_item_trait : 5
* radius_bins_stage_trait : <undefined>
* radius_or_number_of_bins : [[48, 48], [48, 48]]
* random_seed : <undefined>
* restore_state : <undefined>
* restrict_deformation : [[0.1, 1.0, 0.1], [0.1, 1.0, 0.1]]
* sampling_percentage : [[0.8, 0.8], [1.0, 1.0]]
* sampling_percentage_item_trait : <undefined>
* sampling_percentage_stage_trait : <undefined>
* sampling_strategy : [['Random', 'Random'], [None, None]]
* sampling_strategy_item_trait : <undefined>
* sampling_strategy_stage_trait : <undefined>
* save_state : <undefined>
* shrink_factors : [[1, 1], [1]]
* sigma_units : ['vox', 'vox']
* smoothing_sigmas : [[2.0, 0.0], [0.0]]
* transform_parameters : [(0.8, 6.0, 3.0), (0.8, 2.0, 1.0)]
* transforms : ['SyN', 'SyN']
* use_estimate_learning_rate_once : [True, True]
* use_histogram_matching : [True, True]
* verbose : False
* winsorize_lower_quantile : 0.001
* winsorize_upper_quantile : 0.998
* write_composite_transform : False


Execution Outputs
-----------------


* composite_transform : <undefined>
* elapsed_time : <undefined>
* forward_invert_flags : [False]
* forward_transforms : ['/scratch/fmriprep_22_0_wf/single_subject_EB_wf/fmap_preproc_wf/wf_auto_00000/syn/fmap_syn0Warp.nii.gz']
* inverse_composite_transform : <undefined>
* inverse_warped_image : /scratch/fmriprep_22_0_wf/single_subject_EB_wf/fmap_preproc_wf/wf_auto_00000/syn/fmap_syn_InverseWarped.nii.gz
* metric_value : <undefined>
* reverse_forward_invert_flags : [False]
* reverse_forward_transforms : ['/scratch/fmriprep_22_0_wf/single_subject_EB_wf/fmap_preproc_wf/wf_auto_00000/syn/fmap_syn0Warp.nii.gz']
* reverse_invert_flags : [False]
* reverse_transforms : ['/scratch/fmriprep_22_0_wf/single_subject_EB_wf/fmap_preproc_wf/wf_auto_00000/syn/fmap_syn0InverseWarp.nii.gz']
* save_state : <undefined>
* warped_image : /scratch/fmriprep_22_0_wf/single_subject_EB_wf/fmap_preproc_wf/wf_auto_00000/syn/fmap_syn_Warped.nii.gz


Runtime info
------------


* cmdline : antsRegistration --write-interval-volumes 2 --collapse-output-transforms 1 --dimensionality 3 --initialize-transforms-per-stage 0 --interpolation Linear --output [ fmap_syn, fmap_syn_Warped.nii.gz, fmap_syn_InverseWarped.nii.gz ] --transform SyN[ 0.8, 6.0, 3.0 ] --metric Mattes[ /scratch/fmriprep_22_0_wf/single_subject_EB_wf/syn_preprocessing_auto_00000/anat2epi/clipped_noise_corrected_trans.nii.gz, /scratch/fmriprep_22_0_wf/single_subject_EB_wf/fmap_preproc_wf/wf_auto_00000/clip_epi/clipped.nii.gz, 0.5, 48, Random, 0.8 ] --metric Mattes[ /scratch/fmriprep_22_0_wf/single_subject_EB_wf/fmap_preproc_wf/wf_auto_00000/lap_anat_norm/clipped_noise_corrected_trans_maths_norm.nii.gz, /scratch/fmriprep_22_0_wf/single_subject_EB_wf/fmap_preproc_wf/wf_auto_00000/lap_epi_norm/clipped_maths_norm.nii.gz, 0.5, 48, Random, 0.8 ] --convergence [ 200x100, 1e-06, 5 ] --smoothing-sigmas 2.0x0.0vox --shrink-factors 1x1 --use-estimate-learning-rate-once 1 --use-histogram-matching 1 --restrict-deformation 0.1x1.0x0.1 --masks [ /scratch/fmriprep_22_0_wf/single_subject_EB_wf/syn_preprocessing_auto_00000/mask2epi/sub-EB_ses-x20220401_T1w_corrected_xform_rbrainmask_trans_uint8.nii.gz, /scratch/fmriprep_22_0_wf/single_subject_EB_wf/fmap_preproc_wf/wf_auto_00000/epi_umask/clipped_mask_union.nii.gz ] --transform SyN[ 0.8, 2.0, 1.0 ] --metric Mattes[ /scratch/fmriprep_22_0_wf/single_subject_EB_wf/syn_preprocessing_auto_00000/anat2epi/clipped_noise_corrected_trans.nii.gz, /scratch/fmriprep_22_0_wf/single_subject_EB_wf/fmap_preproc_wf/wf_auto_00000/clip_epi/clipped.nii.gz, 0.5, 48 ] --metric Mattes[ /scratch/fmriprep_22_0_wf/single_subject_EB_wf/fmap_preproc_wf/wf_auto_00000/lap_anat_norm/clipped_noise_corrected_trans_maths_norm.nii.gz, /scratch/fmriprep_22_0_wf/single_subject_EB_wf/fmap_preproc_wf/wf_auto_00000/lap_epi_norm/clipped_maths_norm.nii.gz, 0.5, 48 ] --convergence [ 10, 1e-08, 2 ] --smoothing-sigmas 0.0vox --shrink-factors 1 --use-estimate-learning-rate-once 1 --use-histogram-matching 1 --restrict-deformation 0.1x1.0x0.1 --masks [ /scratch/fmriprep_22_0_wf/single_subject_EB_wf/syn_preprocessing_auto_00000/mask2epi/sub-EB_ses-x20220401_T1w_corrected_xform_rbrainmask_trans_uint8.nii.gz, /scratch/fmriprep_22_0_wf/single_subject_EB_wf/fmap_preproc_wf/wf_auto_00000/epi_umask/clipped_mask_union.nii.gz ] --winsorize-image-intensities [ 0.001, 0.998 ]  --write-composite-transform 0
* duration : 3952.306526
* hostname : 907e8201e117
* prev_wd : /tmp
* working_dir : /scratch/fmriprep_22_0_wf/single_subject_EB_wf/fmap_preproc_wf/wf_auto_00000/syn


Terminal output
~~~~~~~~~~~~~~~


 


Terminal - standard output
~~~~~~~~~~~~~~~~~~~~~~~~~~


 *Stage1_level1_Iter0001.nii.gz
*Stage1_level1_Iter0002.nii.gz
*Stage1_level1_Iter0004.nii.gz
*Stage1_level1_Iter0006.nii.gz
*Stage1_level1_Iter0008.nii.gz
*Stage1_level1_Iter0010.nii.gz
*Stage1_level1_Iter0012.nii.gz
*Stage1_level1_Iter0014.nii.gz
*Stage1_level1_Iter0016.nii.gz
*Stage1_level1_Iter0018.nii.gz
*Stage1_level1_Iter0020.nii.gz
*Stage1_level1_Iter0022.nii.gz
*Stage1_level1_Iter0024.nii.gz
*Stage1_level1_Iter0026.nii.gz
*Stage1_level1_Iter0028.nii.gz
*Stage1_level1_Iter0030.nii.gz
*Stage1_level1_Iter0032.nii.gz
*Stage1_level1_Iter0034.nii.gz
*Stage1_level1_Iter0036.nii.gz
*Stage1_level1_Iter0038.nii.gz
*Stage1_level1_Iter0040.nii.gz
*Stage1_level1_Iter0042.nii.gz
*Stage1_level1_Iter0044.nii.gz
*Stage1_level1_Iter0046.nii.gz
*Stage1_level1_Iter0048.nii.gz
*Stage1_level1_Iter0050.nii.gz
*Stage1_level1_Iter0052.nii.gz
*Stage1_level1_Iter0054.nii.gz
*Stage1_level1_Iter0056.nii.gz
*Stage1_level1_Iter0058.nii.gz
*Stage1_level1_Iter0060.nii.gz
*Stage1_level1_Iter0062.nii.gz
*Stage1_level1_Iter0064.nii.gz
*Stage1_level2_Iter0001.nii.gz
*Stage1_level2_Iter0002.nii.gz
*Stage1_level2_Iter0004.nii.gz
*Stage1_level2_Iter0006.nii.gz
*Stage1_level2_Iter0008.nii.gz
*Stage1_level2_Iter0010.nii.gz
*Stage1_level2_Iter0012.nii.gz
*Stage1_level2_Iter0014.nii.gz
*Stage1_level2_Iter0016.nii.gz
*Stage1_level2_Iter0018.nii.gz
*Stage1_level2_Iter0020.nii.gz
*Stage1_level2_Iter0022.nii.gz
*Stage1_level2_Iter0024.nii.gz
*Stage1_level2_Iter0026.nii.gz
*Stage1_level2_Iter0028.nii.gz
*Stage1_level2_Iter0030.nii.gz
*Stage1_level2_Iter0032.nii.gz
*Stage1_level2_Iter0034.nii.gz
*Stage1_level2_Iter0036.nii.gz
*Stage1_level2_Iter0038.nii.gz
*Stage1_level2_Iter0040.nii.gz
*Stage1_level2_Iter0042.nii.gz
*Stage1_level2_Iter0044.nii.gz
*Stage1_level2_Iter0046.nii.gz
*Stage1_level2_Iter0048.nii.gz
*Stage1_level2_Iter0050.nii.gz
*Stage1_level2_Iter0052.nii.gz
*Stage1_level2_Iter0054.nii.gz
*Stage1_level2_Iter0056.nii.gz
*Stage1_level2_Iter0058.nii.gz
*Stage1_level2_Iter0060.nii.gz
*Stage1_level2_Iter0062.nii.gz
*Stage1_level2_Iter0064.nii.gz
*Stage1_level2_Iter0066.nii.gz
*Stage1_level2_Iter0068.nii.gz
*Stage1_level2_Iter0070.nii.gz
*Stage1_level2_Iter0072.nii.gz
*Stage1_level2_Iter0074.nii.gz
*Stage1_level2_Iter0076.nii.gz
*Stage1_level2_Iter0078.nii.gz
*Stage1_level2_Iter0080.nii.gz
*Stage1_level2_Iter0082.nii.gz
*Stage1_level2_Iter0084.nii.gz
*Stage1_level2_Iter0086.nii.gz
*Stage1_level2_Iter0088.nii.gz
*Stage1_level2_Iter0090.nii.gz
*Stage1_level2_Iter0092.nii.gz
*Stage1_level2_Iter0094.nii.gz
*Stage1_level2_Iter0096.nii.gz
*Stage1_level2_Iter0098.nii.gz
*Stage1_level2_Iter0100.nii.gz
*Stage2_level1_Iter0001.nii.gz
*Stage2_level1_Iter0002.nii.gz
*Stage2_level1_Iter0004.nii.gz
*Stage2_level1_Iter0006.nii.gz
*Stage2_level1_Iter0008.nii.gz
*Stage2_level1_Iter0010.nii.gz

[snip]

And here's an excerpt of the command:

antsRegistration [...]
    --masks [ /scratch/fmriprep_22_0_wf/single_subject_EB_wf/syn_preprocessing_auto_00000/mask2epi/sub-EB_ses-x20220401_T1w_corrected_xform_rbrainmask_trans_uint8.nii.gz, \
              /scratch/fmriprep_22_0_wf/single_subject_EB_wf/fmap_preproc_wf/wf_auto_00000/epi_umask/clipped_mask_union.nii.gz ] \
    [...]
    --masks [ /scratch/fmriprep_22_0_wf/single_subject_EB_wf/syn_preprocessing_auto_00000/mask2epi/sub-EB_ses-x20220401_T1w_corrected_xform_rbrainmask_trans_uint8.nii.gz, \
              /scratch/fmriprep_22_0_wf/single_subject_EB_wf/fmap_preproc_wf/wf_auto_00000/epi_umask/clipped_mask_union.nii.gz ] 
    [...]

Nowhere is fmap_atlas_trans_mask.nii.gz present in the command, indicating that it is not getting used. This change follows from #239, when we switched from a three-stage to a two-stage SyN-SDC.

Since the first two masks are identical in both the fixed and moving, my guess is that this was an oversight. I'm going to try adjusting this. @oesteban Your thoughts here would be most welcome.

This may be the root of #290, nipreps/fmriprep#2777 nipreps/fmriprep#2878.

@effigies
Copy link
Member Author

Dropping the middle mask results in the following fieldmap:

image

This still seems more extreme than I would expect.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

1 participant