niwrap-freesurfer 0.5.1__py3-none-any.whl → 0.5.3__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of niwrap-freesurfer might be problematic. Click here for more details.

Files changed (153) hide show
  1. niwrap_freesurfer/freesurfer/__init__.py +0 -11
  2. niwrap_freesurfer/freesurfer/annot2std.py +32 -1
  3. niwrap_freesurfer/freesurfer/aparc2feat.py +19 -1
  4. niwrap_freesurfer/freesurfer/bbregister.py +143 -4
  5. niwrap_freesurfer/freesurfer/bmedits2surf.py +2 -2
  6. niwrap_freesurfer/freesurfer/compute_interrater_variability_csh.py +20 -2
  7. niwrap_freesurfer/freesurfer/compute_label_volumes_csh.py +17 -2
  8. niwrap_freesurfer/freesurfer/conf2hires.py +59 -1
  9. niwrap_freesurfer/freesurfer/connected_components.py +34 -2
  10. niwrap_freesurfer/freesurfer/dcmdir_info_mgh.py +3 -2
  11. niwrap_freesurfer/freesurfer/dcmdjpeg_fs.py +2 -2
  12. niwrap_freesurfer/freesurfer/dcmdrle_fs.py +2 -2
  13. niwrap_freesurfer/freesurfer/dicom_rename.py +21 -2
  14. niwrap_freesurfer/freesurfer/dmri_bset.py +14 -2
  15. niwrap_freesurfer/freesurfer/dmri_forrest.py +10 -1
  16. niwrap_freesurfer/freesurfer/dmri_mergepaths.py +2 -2
  17. niwrap_freesurfer/freesurfer/dmri_pathstats.py +2 -2
  18. niwrap_freesurfer/freesurfer/dmri_stats_ac.py +1 -3
  19. niwrap_freesurfer/freesurfer/exvivo_hemi_proc.py +10 -1
  20. niwrap_freesurfer/freesurfer/fiducials_calibration.py +15 -1
  21. niwrap_freesurfer/freesurfer/fiducials_correction.py +10 -3
  22. niwrap_freesurfer/freesurfer/fix_subject_corrected_rh.py +3 -2
  23. niwrap_freesurfer/freesurfer/fix_subject_rh.py +3 -2
  24. niwrap_freesurfer/freesurfer/fs_check_version.py +19 -1
  25. niwrap_freesurfer/freesurfer/fs_spmreg_glnxa64.py +19 -4
  26. niwrap_freesurfer/freesurfer/fs_temp_file.py +36 -1
  27. niwrap_freesurfer/freesurfer/fs_update.py +19 -1
  28. niwrap_freesurfer/freesurfer/fsl_sub_mgh.py +1 -2
  29. niwrap_freesurfer/freesurfer/fsr_import.py +55 -5
  30. niwrap_freesurfer/freesurfer/fvcompare.py +10 -1
  31. niwrap_freesurfer/freesurfer/gca_apply.py +3 -2
  32. niwrap_freesurfer/freesurfer/gdcmconv_fs.py +2 -2
  33. niwrap_freesurfer/freesurfer/get_label_thickness.py +1 -2
  34. niwrap_freesurfer/freesurfer/groupstats.py +97 -1
  35. niwrap_freesurfer/freesurfer/groupstatsdiff.py +4 -4
  36. niwrap_freesurfer/freesurfer/hiam_make_surfaces.py +1 -2
  37. niwrap_freesurfer/freesurfer/histo_synthesize.py +1 -2
  38. niwrap_freesurfer/freesurfer/inflate_subject_lh.py +3 -2
  39. niwrap_freesurfer/freesurfer/inflate_subject_new_lh.py +3 -3
  40. niwrap_freesurfer/freesurfer/inflate_subject_new_rh.py +3 -2
  41. niwrap_freesurfer/freesurfer/inflate_subject_rh.py +3 -2
  42. niwrap_freesurfer/freesurfer/inflate_subject_sc.py +28 -3
  43. niwrap_freesurfer/freesurfer/irepifitvol_glnx64.py +2 -2
  44. niwrap_freesurfer/freesurfer/is_surface.py +3 -2
  45. niwrap_freesurfer/freesurfer/isolate_labels_csh.py +17 -2
  46. niwrap_freesurfer/freesurfer/label_subject_flash.py +2 -2
  47. niwrap_freesurfer/freesurfer/label_subject_mixed.py +2 -2
  48. niwrap_freesurfer/freesurfer/listsubj.py +82 -2
  49. niwrap_freesurfer/freesurfer/long_stats_combine.py +1 -2
  50. niwrap_freesurfer/freesurfer/long_stats_tps.py +7 -7
  51. niwrap_freesurfer/freesurfer/long_submit_jobs.py +1 -5
  52. niwrap_freesurfer/freesurfer/longmc.py +10 -1
  53. niwrap_freesurfer/freesurfer/lta_convert.py +157 -1
  54. niwrap_freesurfer/freesurfer/make_average_volume.py +19 -1
  55. niwrap_freesurfer/freesurfer/make_folding_atlas.py +10 -1
  56. niwrap_freesurfer/freesurfer/map_all_labels_lh.py +11 -3
  57. niwrap_freesurfer/freesurfer/map_central_sulcus.py +2 -2
  58. niwrap_freesurfer/freesurfer/merge_stats_tables.py +58 -35
  59. niwrap_freesurfer/freesurfer/mideface.py +121 -14
  60. niwrap_freesurfer/freesurfer/mni152reg.py +2 -2
  61. niwrap_freesurfer/freesurfer/morph_only_subject_lh.py +3 -2
  62. niwrap_freesurfer/freesurfer/morph_only_subject_rh.py +3 -2
  63. niwrap_freesurfer/freesurfer/morph_rgb_lh.py +3 -2
  64. niwrap_freesurfer/freesurfer/morph_rgb_rh.py +3 -2
  65. niwrap_freesurfer/freesurfer/morph_subject_lh.py +3 -2
  66. niwrap_freesurfer/freesurfer/morph_subject_rh.py +3 -2
  67. niwrap_freesurfer/freesurfer/morph_tables_lh.py +3 -2
  68. niwrap_freesurfer/freesurfer/morph_tables_rh.py +3 -2
  69. niwrap_freesurfer/freesurfer/mri_aparc2aseg.py +10 -1
  70. niwrap_freesurfer/freesurfer/mri_apply_bias.py +1 -2
  71. niwrap_freesurfer/freesurfer/mri_average.py +10 -1
  72. niwrap_freesurfer/freesurfer/mri_brain_volume.py +23 -2
  73. niwrap_freesurfer/freesurfer/mri_ca_label.py +603 -2
  74. niwrap_freesurfer/freesurfer/mri_ca_train.py +10 -1
  75. niwrap_freesurfer/freesurfer/mri_convert.py +188 -2
  76. niwrap_freesurfer/freesurfer/mri_fuse_segmentations.py +10 -3
  77. niwrap_freesurfer/freesurfer/mri_gcab_train.py +15 -1
  78. niwrap_freesurfer/freesurfer/mri_gdfglm.py +13 -1
  79. niwrap_freesurfer/freesurfer/mri_gtmpvc.py +19 -1
  80. niwrap_freesurfer/freesurfer/mri_hausdorff_dist.py +1 -2
  81. niwrap_freesurfer/freesurfer/mri_head.py +19 -1
  82. niwrap_freesurfer/freesurfer/mri_jacobian.py +10 -1
  83. niwrap_freesurfer/freesurfer/mri_nl_align.py +27 -1
  84. niwrap_freesurfer/freesurfer/mri_relabel_nonwm_hypos.py +3 -3
  85. niwrap_freesurfer/freesurfer/mri_reorient_lr_csh.py +2 -2
  86. niwrap_freesurfer/freesurfer/mri_seg_diff.py +14 -1
  87. niwrap_freesurfer/freesurfer/mri_twoclass.py +1 -2
  88. niwrap_freesurfer/freesurfer/mri_validate_skull_stripped.py +2 -2
  89. niwrap_freesurfer/freesurfer/mri_warp_convert.py +131 -1
  90. niwrap_freesurfer/freesurfer/mri_z2p.py +37 -1
  91. niwrap_freesurfer/freesurfer/mris_add_template.py +11 -1
  92. niwrap_freesurfer/freesurfer/mris_apply_reg.py +1 -2
  93. niwrap_freesurfer/freesurfer/mris_curvature_stats.py +419 -7
  94. niwrap_freesurfer/freesurfer/mris_diff.py +255 -1
  95. niwrap_freesurfer/freesurfer/mris_distance_map.py +1 -2
  96. niwrap_freesurfer/freesurfer/mris_errors.py +1 -2
  97. niwrap_freesurfer/freesurfer/mris_info.py +45 -46
  98. niwrap_freesurfer/freesurfer/mris_label_calc.py +14 -1
  99. niwrap_freesurfer/freesurfer/mris_map_cuts.py +1 -2
  100. niwrap_freesurfer/freesurfer/mris_nudge.py +1 -2
  101. niwrap_freesurfer/freesurfer/mris_place_surface.py +1 -2
  102. niwrap_freesurfer/freesurfer/mris_preproc.py +16 -2
  103. niwrap_freesurfer/freesurfer/mris_spherical_average.py +93 -8
  104. niwrap_freesurfer/freesurfer/mris_thickness_diff.py +1 -5
  105. niwrap_freesurfer/freesurfer/mris_volmask_vtk.py +2 -2
  106. niwrap_freesurfer/freesurfer/pctsurfcon.py +2 -2
  107. niwrap_freesurfer/freesurfer/plot_structure_stats_tcl.py +2 -2
  108. niwrap_freesurfer/freesurfer/post_recon_all.py +39 -2
  109. niwrap_freesurfer/freesurfer/predict_v1_sh.py +11 -2
  110. niwrap_freesurfer/freesurfer/print_unique_labels_csh.py +34 -3
  111. niwrap_freesurfer/freesurfer/rbbr.py +37 -1
  112. niwrap_freesurfer/freesurfer/rca_base_init.py +3 -2
  113. niwrap_freesurfer/freesurfer/rca_config.py +3 -2
  114. niwrap_freesurfer/freesurfer/rca_config2csh.py +3 -2
  115. niwrap_freesurfer/freesurfer/recon_all.py +75 -1
  116. niwrap_freesurfer/freesurfer/register_elderly_subject.py +2 -2
  117. niwrap_freesurfer/freesurfer/reinflate_subject_lh.py +3 -2
  118. niwrap_freesurfer/freesurfer/reinflate_subject_rh.py +3 -2
  119. niwrap_freesurfer/freesurfer/renormalize_subject_keep_editting.py +13 -1
  120. niwrap_freesurfer/freesurfer/rtview.py +34 -1
  121. niwrap_freesurfer/freesurfer/run_qdec_glm.py +3 -2
  122. niwrap_freesurfer/freesurfer/samseg.py +14 -1
  123. niwrap_freesurfer/freesurfer/samseg_long.py +17 -8
  124. niwrap_freesurfer/freesurfer/samsegmesh2surf.py +5 -7
  125. niwrap_freesurfer/freesurfer/seg2filled.py +4 -4
  126. niwrap_freesurfer/freesurfer/segment_subject.py +2 -2
  127. niwrap_freesurfer/freesurfer/segment_subject_old_skull_strip.py +4 -4
  128. niwrap_freesurfer/freesurfer/segment_subject_sc.py +4 -4
  129. niwrap_freesurfer/freesurfer/segment_subject_t2_auto_estimate_alveus_ml.py +11 -1
  130. niwrap_freesurfer/freesurfer/segpons.py +2 -2
  131. niwrap_freesurfer/freesurfer/sphere_subject_lh.py +3 -2
  132. niwrap_freesurfer/freesurfer/sphere_subject_rh.py +3 -2
  133. niwrap_freesurfer/freesurfer/talairach.py +4 -4
  134. niwrap_freesurfer/freesurfer/trac_all.py +283 -1
  135. niwrap_freesurfer/freesurfer/train_gcs_atlas.py +19 -1
  136. niwrap_freesurfer/freesurfer/update_needed.py +13 -2
  137. niwrap_freesurfer/freesurfer/vertexvol.py +19 -1
  138. niwrap_freesurfer/freesurfer/vol2subfield.py +72 -1
  139. niwrap_freesurfer/freesurfer/wmsaseg.py +2 -2
  140. {niwrap_freesurfer-0.5.1.dist-info → niwrap_freesurfer-0.5.3.dist-info}/METADATA +1 -1
  141. {niwrap_freesurfer-0.5.1.dist-info → niwrap_freesurfer-0.5.3.dist-info}/RECORD +142 -153
  142. niwrap_freesurfer/freesurfer/bet_fsl.py +0 -441
  143. niwrap_freesurfer/freesurfer/epidewarp_fsl.py +0 -439
  144. niwrap_freesurfer/freesurfer/flirt_fsl.py +0 -604
  145. niwrap_freesurfer/freesurfer/fscalc_fsl.py +0 -196
  146. niwrap_freesurfer/freesurfer/fsfirst_fsl.py +0 -166
  147. niwrap_freesurfer/freesurfer/fslmaths_fsl.py +0 -196
  148. niwrap_freesurfer/freesurfer/fslorient_fsl.py +0 -207
  149. niwrap_freesurfer/freesurfer/fslswapdim_fsl.py +0 -216
  150. niwrap_freesurfer/freesurfer/fspython.py +0 -175
  151. niwrap_freesurfer/freesurfer/mri_motion_correct_fsl.py +0 -185
  152. niwrap_freesurfer/freesurfer/slicetimer_fsl.py +0 -291
  153. {niwrap_freesurfer-0.5.1.dist-info → niwrap_freesurfer-0.5.3.dist-info}/WHEEL +0 -0
@@ -6,7 +6,7 @@ import pathlib
6
6
  from styxdefs import *
7
7
 
8
8
  MRI_CA_LABEL_METADATA = Metadata(
9
- id="035eecaadad51f1937fb29e024f977f0c081a952.boutiques",
9
+ id="c1394ffdf41a9c43fe2d194cfb7472bc5e4fc8a8.boutiques",
10
10
  name="mri_ca_label",
11
11
  package="freesurfer",
12
12
  container_image_tag="freesurfer/freesurfer:7.4.1",
@@ -19,6 +19,54 @@ MriCaLabelParameters = typing.TypedDict('MriCaLabelParameters', {
19
19
  "transform_file": InputPathType,
20
20
  "gca_file": InputPathType,
21
21
  "output_volume": str,
22
+ "cross_sequence": bool,
23
+ "no_gibbs": bool,
24
+ "wm_segmentation": typing.NotRequired[str | None],
25
+ "conform": bool,
26
+ "topo_dist_thresh": typing.NotRequired[float | None],
27
+ "topo_volume_thresh1": typing.NotRequired[float | None],
28
+ "topo_volume_thresh2": typing.NotRequired[float | None],
29
+ "norm_pd": bool,
30
+ "thin_temporal_lobe": typing.NotRequired[str | None],
31
+ "debug_voxel": typing.NotRequired[list[float] | None],
32
+ "debug_node": typing.NotRequired[list[float] | None],
33
+ "debug_label": typing.NotRequired[float | None],
34
+ "tr": typing.NotRequired[float | None],
35
+ "te": typing.NotRequired[float | None],
36
+ "alpha": typing.NotRequired[float | None],
37
+ "example": typing.NotRequired[list[InputPathType] | None],
38
+ "pthresh": typing.NotRequired[float | None],
39
+ "niter": typing.NotRequired[float | None],
40
+ "write_probs": typing.NotRequired[str | None],
41
+ "novar": bool,
42
+ "regularize": typing.NotRequired[float | None],
43
+ "nohippo": bool,
44
+ "fixed_white_matter": typing.NotRequired[str | None],
45
+ "mri": typing.NotRequired[InputPathType | None],
46
+ "histogram_equalization": typing.NotRequired[InputPathType | None],
47
+ "renorm": typing.NotRequired[InputPathType | None],
48
+ "flash": bool,
49
+ "flash_params": typing.NotRequired[InputPathType | None],
50
+ "renormalize": typing.NotRequired[str | None],
51
+ "set_input_volume": typing.NotRequired[InputPathType | None],
52
+ "histogram_normalize": bool,
53
+ "mean_filter": typing.NotRequired[float | None],
54
+ "write_snapshots": typing.NotRequired[str | None],
55
+ "mask_final_labeling": typing.NotRequired[InputPathType | None],
56
+ "expand": typing.NotRequired[float | None],
57
+ "max_iterations": typing.NotRequired[float | None],
58
+ "filter_labeled_volume": typing.NotRequired[str | None],
59
+ "longitudinal_processing": typing.NotRequired[str | None],
60
+ "relabel_unlikely": typing.NotRequired[str | None],
61
+ "disables_wmsa": bool,
62
+ "fix_ventricle": typing.NotRequired[str | None],
63
+ "insert_wm_bet_putctx": typing.NotRequired[str | None],
64
+ "sa_insert_wm_bet_putctx": typing.NotRequired[str | None],
65
+ "insert_from_seg": typing.NotRequired[str | None],
66
+ "sa_insert_from_seg": typing.NotRequired[str | None],
67
+ "cblum_from_seg": typing.NotRequired[str | None],
68
+ "sa_cblum_from_seg": typing.NotRequired[str | None],
69
+ "threads": typing.NotRequired[int | None],
22
70
  })
23
71
 
24
72
 
@@ -69,6 +117,54 @@ def mri_ca_label_params(
69
117
  transform_file: InputPathType,
70
118
  gca_file: InputPathType,
71
119
  output_volume: str,
120
+ cross_sequence: bool = False,
121
+ no_gibbs: bool = False,
122
+ wm_segmentation: str | None = None,
123
+ conform: bool = False,
124
+ topo_dist_thresh: float | None = None,
125
+ topo_volume_thresh1: float | None = None,
126
+ topo_volume_thresh2: float | None = None,
127
+ norm_pd: bool = False,
128
+ thin_temporal_lobe: str | None = None,
129
+ debug_voxel: list[float] | None = None,
130
+ debug_node: list[float] | None = None,
131
+ debug_label: float | None = None,
132
+ tr: float | None = None,
133
+ te: float | None = None,
134
+ alpha: float | None = None,
135
+ example: list[InputPathType] | None = None,
136
+ pthresh: float | None = None,
137
+ niter: float | None = None,
138
+ write_probs: str | None = None,
139
+ novar: bool = False,
140
+ regularize: float | None = None,
141
+ nohippo: bool = False,
142
+ fixed_white_matter: str | None = None,
143
+ mri: InputPathType | None = None,
144
+ histogram_equalization: InputPathType | None = None,
145
+ renorm: InputPathType | None = None,
146
+ flash: bool = False,
147
+ flash_params: InputPathType | None = None,
148
+ renormalize: str | None = None,
149
+ set_input_volume: InputPathType | None = None,
150
+ histogram_normalize: bool = False,
151
+ mean_filter: float | None = None,
152
+ write_snapshots: str | None = None,
153
+ mask_final_labeling: InputPathType | None = None,
154
+ expand: float | None = None,
155
+ max_iterations: float | None = None,
156
+ filter_labeled_volume: str | None = None,
157
+ longitudinal_processing: str | None = None,
158
+ relabel_unlikely: str | None = None,
159
+ disables_wmsa: bool = False,
160
+ fix_ventricle: str | None = None,
161
+ insert_wm_bet_putctx: str | None = None,
162
+ sa_insert_wm_bet_putctx: str | None = None,
163
+ insert_from_seg: str | None = None,
164
+ sa_insert_from_seg: str | None = None,
165
+ cblum_from_seg: str | None = None,
166
+ sa_cblum_from_seg: str | None = None,
167
+ threads: int | None = None,
72
168
  ) -> MriCaLabelParameters:
73
169
  """
74
170
  Build parameters.
@@ -78,6 +174,61 @@ def mri_ca_label_params(
78
174
  transform_file: Transform file for the registration.
79
175
  gca_file: GCA file for the atlas.
80
176
  output_volume: Output labeled volume.
177
+ cross_sequence: Label a volume acquired with sequence different than\
178
+ atlas.
179
+ no_gibbs: Disable gibbs priors.
180
+ wm_segmentation: Use wm segmentation.
181
+ conform: Interpolate volume to be isotropic 1mm^3.
182
+ topo_dist_thresh: Ventricle segments distance threshold.
183
+ topo_volume_thresh1: First ventricle segments volume threshold.
184
+ topo_volume_thresh2: Second ventricle segments volume threshold.
185
+ norm_pd: Normalize PD image to GCA means.
186
+ thin_temporal_lobe: Use file to label thin temporal lobe.
187
+ debug_voxel: Debug voxel coordinates.
188
+ debug_node: Debug node coordinates.
189
+ debug_label: Debug label.
190
+ tr: Set TR in msec.
191
+ te: Set TE in msec.
192
+ alpha: Set alpha in radians.
193
+ example: Use T1 and segmentation as example.
194
+ pthresh: P threshold for adaptive renormalization.
195
+ niter: Number of iterations for max likelihood.
196
+ write_probs: Write label probabilities to filename.
197
+ novar: Do not use variance in classification.
198
+ regularize: Regularize variance to be sigma+nC(noise).
199
+ nohippo: Do not auto-edit hippocampus.
200
+ fixed_white_matter: Use fixed white matter segmentation.
201
+ mri: Write most likely MR volume to file.
202
+ histogram_equalization: Use histogram equalization from volume.
203
+ renorm: Renormalize using predicted intensity values.
204
+ flash: Use FLASH forward model to predict intensity values.
205
+ flash_params: Use FLASH forward model and tissue params to predict.
206
+ renormalize: Renormalize class means iter times after initial label\
207
+ with window of wsize.
208
+ set_input_volume: Set input volume.
209
+ histogram_normalize: Use GCA to histogram normalize input image.
210
+ mean_filter: Mean filter n time to conditional densities.
211
+ write_snapshots: Write snapshots of gibbs process every n times to\
212
+ filename.
213
+ mask_final_labeling: Use mri_vol to mask final labeling.
214
+ expand: Expand.
215
+ max_iterations: Set max iterations.
216
+ filter_labeled_volume: Filter labeled volume with threshold t.
217
+ longitudinal_processing: Longitudinal processing with registrations.
218
+ relabel_unlikely: Reclassify unlikely voxels.
219
+ disables_wmsa: Disables WMSA labels.
220
+ fix_ventricle: Fix underlabeled ventricle.
221
+ insert_wm_bet_putctx: Insert WM between putamen and cortex.
222
+ sa_insert_wm_bet_putctx: Stand-alone operation to insert WM between\
223
+ putamen and cortex.
224
+ insert_from_seg: Insert given indices from segmentation volume.
225
+ sa_insert_from_seg: Stand-alone insert given indices from segmentation\
226
+ volume.
227
+ cblum_from_seg: Insert indices into segmentation volume with default\
228
+ label set.
229
+ sa_cblum_from_seg: Stand-alone operation to insert indices into\
230
+ segmentation with default label set.
231
+ threads: Set the number of open mp threads.
81
232
  Returns:
82
233
  Parameter dictionary
83
234
  """
@@ -87,7 +238,94 @@ def mri_ca_label_params(
87
238
  "transform_file": transform_file,
88
239
  "gca_file": gca_file,
89
240
  "output_volume": output_volume,
241
+ "cross_sequence": cross_sequence,
242
+ "no_gibbs": no_gibbs,
243
+ "conform": conform,
244
+ "norm_pd": norm_pd,
245
+ "novar": novar,
246
+ "nohippo": nohippo,
247
+ "flash": flash,
248
+ "histogram_normalize": histogram_normalize,
249
+ "disables_wmsa": disables_wmsa,
90
250
  }
251
+ if wm_segmentation is not None:
252
+ params["wm_segmentation"] = wm_segmentation
253
+ if topo_dist_thresh is not None:
254
+ params["topo_dist_thresh"] = topo_dist_thresh
255
+ if topo_volume_thresh1 is not None:
256
+ params["topo_volume_thresh1"] = topo_volume_thresh1
257
+ if topo_volume_thresh2 is not None:
258
+ params["topo_volume_thresh2"] = topo_volume_thresh2
259
+ if thin_temporal_lobe is not None:
260
+ params["thin_temporal_lobe"] = thin_temporal_lobe
261
+ if debug_voxel is not None:
262
+ params["debug_voxel"] = debug_voxel
263
+ if debug_node is not None:
264
+ params["debug_node"] = debug_node
265
+ if debug_label is not None:
266
+ params["debug_label"] = debug_label
267
+ if tr is not None:
268
+ params["tr"] = tr
269
+ if te is not None:
270
+ params["te"] = te
271
+ if alpha is not None:
272
+ params["alpha"] = alpha
273
+ if example is not None:
274
+ params["example"] = example
275
+ if pthresh is not None:
276
+ params["pthresh"] = pthresh
277
+ if niter is not None:
278
+ params["niter"] = niter
279
+ if write_probs is not None:
280
+ params["write_probs"] = write_probs
281
+ if regularize is not None:
282
+ params["regularize"] = regularize
283
+ if fixed_white_matter is not None:
284
+ params["fixed_white_matter"] = fixed_white_matter
285
+ if mri is not None:
286
+ params["mri"] = mri
287
+ if histogram_equalization is not None:
288
+ params["histogram_equalization"] = histogram_equalization
289
+ if renorm is not None:
290
+ params["renorm"] = renorm
291
+ if flash_params is not None:
292
+ params["flash_params"] = flash_params
293
+ if renormalize is not None:
294
+ params["renormalize"] = renormalize
295
+ if set_input_volume is not None:
296
+ params["set_input_volume"] = set_input_volume
297
+ if mean_filter is not None:
298
+ params["mean_filter"] = mean_filter
299
+ if write_snapshots is not None:
300
+ params["write_snapshots"] = write_snapshots
301
+ if mask_final_labeling is not None:
302
+ params["mask_final_labeling"] = mask_final_labeling
303
+ if expand is not None:
304
+ params["expand"] = expand
305
+ if max_iterations is not None:
306
+ params["max_iterations"] = max_iterations
307
+ if filter_labeled_volume is not None:
308
+ params["filter_labeled_volume"] = filter_labeled_volume
309
+ if longitudinal_processing is not None:
310
+ params["longitudinal_processing"] = longitudinal_processing
311
+ if relabel_unlikely is not None:
312
+ params["relabel_unlikely"] = relabel_unlikely
313
+ if fix_ventricle is not None:
314
+ params["fix_ventricle"] = fix_ventricle
315
+ if insert_wm_bet_putctx is not None:
316
+ params["insert_wm_bet_putctx"] = insert_wm_bet_putctx
317
+ if sa_insert_wm_bet_putctx is not None:
318
+ params["sa_insert_wm_bet_putctx"] = sa_insert_wm_bet_putctx
319
+ if insert_from_seg is not None:
320
+ params["insert_from_seg"] = insert_from_seg
321
+ if sa_insert_from_seg is not None:
322
+ params["sa_insert_from_seg"] = sa_insert_from_seg
323
+ if cblum_from_seg is not None:
324
+ params["cblum_from_seg"] = cblum_from_seg
325
+ if sa_cblum_from_seg is not None:
326
+ params["sa_cblum_from_seg"] = sa_cblum_from_seg
327
+ if threads is not None:
328
+ params["threads"] = threads
91
329
  return params
92
330
 
93
331
 
@@ -110,7 +348,219 @@ def mri_ca_label_cargs(
110
348
  cargs.append(execution.input_file(params.get("transform_file")))
111
349
  cargs.append(execution.input_file(params.get("gca_file")))
112
350
  cargs.append(params.get("output_volume"))
113
- cargs.append("[OPTIONS]")
351
+ if params.get("cross_sequence"):
352
+ cargs.append("-cross-sequence")
353
+ if params.get("no_gibbs"):
354
+ cargs.append("-nogibbs")
355
+ if params.get("wm_segmentation") is not None:
356
+ cargs.extend([
357
+ "-wm",
358
+ params.get("wm_segmentation")
359
+ ])
360
+ if params.get("conform"):
361
+ cargs.append("-conform")
362
+ if params.get("topo_dist_thresh") is not None:
363
+ cargs.extend([
364
+ "-topo_dist_thresh",
365
+ str(params.get("topo_dist_thresh"))
366
+ ])
367
+ if params.get("topo_volume_thresh1") is not None:
368
+ cargs.extend([
369
+ "-topo_volume_thresh1",
370
+ str(params.get("topo_volume_thresh1"))
371
+ ])
372
+ if params.get("topo_volume_thresh2") is not None:
373
+ cargs.extend([
374
+ "-topo_volume_thresh2",
375
+ str(params.get("topo_volume_thresh2"))
376
+ ])
377
+ if params.get("norm_pd"):
378
+ cargs.append("-normpd")
379
+ if params.get("thin_temporal_lobe") is not None:
380
+ cargs.extend([
381
+ "-tl",
382
+ params.get("thin_temporal_lobe")
383
+ ])
384
+ if params.get("debug_voxel") is not None:
385
+ cargs.extend([
386
+ "-debug_voxel",
387
+ *map(str, params.get("debug_voxel"))
388
+ ])
389
+ if params.get("debug_node") is not None:
390
+ cargs.extend([
391
+ "-debug_node",
392
+ *map(str, params.get("debug_node"))
393
+ ])
394
+ if params.get("debug_label") is not None:
395
+ cargs.extend([
396
+ "-debug_label",
397
+ str(params.get("debug_label"))
398
+ ])
399
+ if params.get("tr") is not None:
400
+ cargs.extend([
401
+ "-tr",
402
+ str(params.get("tr"))
403
+ ])
404
+ if params.get("te") is not None:
405
+ cargs.extend([
406
+ "-te",
407
+ str(params.get("te"))
408
+ ])
409
+ if params.get("alpha") is not None:
410
+ cargs.extend([
411
+ "-alpha",
412
+ str(params.get("alpha"))
413
+ ])
414
+ if params.get("example") is not None:
415
+ cargs.extend([
416
+ "-example",
417
+ *[execution.input_file(f) for f in params.get("example")]
418
+ ])
419
+ if params.get("pthresh") is not None:
420
+ cargs.extend([
421
+ "-pthresh",
422
+ str(params.get("pthresh"))
423
+ ])
424
+ if params.get("niter") is not None:
425
+ cargs.extend([
426
+ "-niter",
427
+ str(params.get("niter"))
428
+ ])
429
+ if params.get("write_probs") is not None:
430
+ cargs.extend([
431
+ "-write_probs",
432
+ params.get("write_probs")
433
+ ])
434
+ if params.get("novar"):
435
+ cargs.append("-novar")
436
+ if params.get("regularize") is not None:
437
+ cargs.extend([
438
+ "-regularize",
439
+ str(params.get("regularize"))
440
+ ])
441
+ if params.get("nohippo"):
442
+ cargs.append("-nohippo")
443
+ if params.get("fixed_white_matter") is not None:
444
+ cargs.extend([
445
+ "-fwm",
446
+ params.get("fixed_white_matter")
447
+ ])
448
+ if params.get("mri") is not None:
449
+ cargs.extend([
450
+ "-mri",
451
+ execution.input_file(params.get("mri"))
452
+ ])
453
+ if params.get("histogram_equalization") is not None:
454
+ cargs.extend([
455
+ "-heq",
456
+ execution.input_file(params.get("histogram_equalization"))
457
+ ])
458
+ if params.get("renorm") is not None:
459
+ cargs.extend([
460
+ "-renorm",
461
+ execution.input_file(params.get("renorm"))
462
+ ])
463
+ if params.get("flash"):
464
+ cargs.append("-flash")
465
+ if params.get("flash_params") is not None:
466
+ cargs.extend([
467
+ "-flash_params",
468
+ execution.input_file(params.get("flash_params"))
469
+ ])
470
+ if params.get("renormalize") is not None:
471
+ cargs.extend([
472
+ "-renormalize",
473
+ params.get("renormalize")
474
+ ])
475
+ if params.get("set_input_volume") is not None:
476
+ cargs.extend([
477
+ "-r",
478
+ execution.input_file(params.get("set_input_volume"))
479
+ ])
480
+ if params.get("histogram_normalize"):
481
+ cargs.append("-h")
482
+ if params.get("mean_filter") is not None:
483
+ cargs.extend([
484
+ "-a",
485
+ str(params.get("mean_filter"))
486
+ ])
487
+ if params.get("write_snapshots") is not None:
488
+ cargs.extend([
489
+ "-w",
490
+ params.get("write_snapshots")
491
+ ])
492
+ if params.get("mask_final_labeling") is not None:
493
+ cargs.extend([
494
+ "-m",
495
+ execution.input_file(params.get("mask_final_labeling"))
496
+ ])
497
+ if params.get("expand") is not None:
498
+ cargs.extend([
499
+ "-e",
500
+ str(params.get("expand"))
501
+ ])
502
+ if params.get("max_iterations") is not None:
503
+ cargs.extend([
504
+ "-n",
505
+ str(params.get("max_iterations"))
506
+ ])
507
+ if params.get("filter_labeled_volume") is not None:
508
+ cargs.extend([
509
+ "-f",
510
+ params.get("filter_labeled_volume")
511
+ ])
512
+ if params.get("longitudinal_processing") is not None:
513
+ cargs.extend([
514
+ "-L",
515
+ params.get("longitudinal_processing")
516
+ ])
517
+ if params.get("relabel_unlikely") is not None:
518
+ cargs.extend([
519
+ "-RELABEL_UNLIKELY",
520
+ params.get("relabel_unlikely")
521
+ ])
522
+ if params.get("disables_wmsa"):
523
+ cargs.append("-nowmsa")
524
+ if params.get("fix_ventricle") is not None:
525
+ cargs.extend([
526
+ "-vent-fix",
527
+ params.get("fix_ventricle")
528
+ ])
529
+ if params.get("insert_wm_bet_putctx") is not None:
530
+ cargs.extend([
531
+ "-insert-wm-bet-putctx",
532
+ params.get("insert_wm_bet_putctx")
533
+ ])
534
+ if params.get("sa_insert_wm_bet_putctx") is not None:
535
+ cargs.extend([
536
+ "-sa-insert-wm-bet-putctx",
537
+ params.get("sa_insert_wm_bet_putctx")
538
+ ])
539
+ if params.get("insert_from_seg") is not None:
540
+ cargs.extend([
541
+ "-insert-from-seg",
542
+ params.get("insert_from_seg")
543
+ ])
544
+ if params.get("sa_insert_from_seg") is not None:
545
+ cargs.extend([
546
+ "-sa-insert-from-seg",
547
+ params.get("sa_insert_from_seg")
548
+ ])
549
+ if params.get("cblum_from_seg") is not None:
550
+ cargs.extend([
551
+ "-cblum-from-seg",
552
+ params.get("cblum_from_seg")
553
+ ])
554
+ if params.get("sa_cblum_from_seg") is not None:
555
+ cargs.extend([
556
+ "-sa-cblum-from-seg",
557
+ params.get("sa_cblum_from_seg")
558
+ ])
559
+ if params.get("threads") is not None:
560
+ cargs.extend([
561
+ "-threads",
562
+ str(params.get("threads"))
563
+ ])
114
564
  return cargs
115
565
 
116
566
 
@@ -163,6 +613,54 @@ def mri_ca_label(
163
613
  transform_file: InputPathType,
164
614
  gca_file: InputPathType,
165
615
  output_volume: str,
616
+ cross_sequence: bool = False,
617
+ no_gibbs: bool = False,
618
+ wm_segmentation: str | None = None,
619
+ conform: bool = False,
620
+ topo_dist_thresh: float | None = None,
621
+ topo_volume_thresh1: float | None = None,
622
+ topo_volume_thresh2: float | None = None,
623
+ norm_pd: bool = False,
624
+ thin_temporal_lobe: str | None = None,
625
+ debug_voxel: list[float] | None = None,
626
+ debug_node: list[float] | None = None,
627
+ debug_label: float | None = None,
628
+ tr: float | None = None,
629
+ te: float | None = None,
630
+ alpha: float | None = None,
631
+ example: list[InputPathType] | None = None,
632
+ pthresh: float | None = None,
633
+ niter: float | None = None,
634
+ write_probs: str | None = None,
635
+ novar: bool = False,
636
+ regularize: float | None = None,
637
+ nohippo: bool = False,
638
+ fixed_white_matter: str | None = None,
639
+ mri: InputPathType | None = None,
640
+ histogram_equalization: InputPathType | None = None,
641
+ renorm: InputPathType | None = None,
642
+ flash: bool = False,
643
+ flash_params: InputPathType | None = None,
644
+ renormalize: str | None = None,
645
+ set_input_volume: InputPathType | None = None,
646
+ histogram_normalize: bool = False,
647
+ mean_filter: float | None = None,
648
+ write_snapshots: str | None = None,
649
+ mask_final_labeling: InputPathType | None = None,
650
+ expand: float | None = None,
651
+ max_iterations: float | None = None,
652
+ filter_labeled_volume: str | None = None,
653
+ longitudinal_processing: str | None = None,
654
+ relabel_unlikely: str | None = None,
655
+ disables_wmsa: bool = False,
656
+ fix_ventricle: str | None = None,
657
+ insert_wm_bet_putctx: str | None = None,
658
+ sa_insert_wm_bet_putctx: str | None = None,
659
+ insert_from_seg: str | None = None,
660
+ sa_insert_from_seg: str | None = None,
661
+ cblum_from_seg: str | None = None,
662
+ sa_cblum_from_seg: str | None = None,
663
+ threads: int | None = None,
166
664
  runner: Runner | None = None,
167
665
  ) -> MriCaLabelOutputs:
168
666
  """
@@ -177,6 +675,61 @@ def mri_ca_label(
177
675
  transform_file: Transform file for the registration.
178
676
  gca_file: GCA file for the atlas.
179
677
  output_volume: Output labeled volume.
678
+ cross_sequence: Label a volume acquired with sequence different than\
679
+ atlas.
680
+ no_gibbs: Disable gibbs priors.
681
+ wm_segmentation: Use wm segmentation.
682
+ conform: Interpolate volume to be isotropic 1mm^3.
683
+ topo_dist_thresh: Ventricle segments distance threshold.
684
+ topo_volume_thresh1: First ventricle segments volume threshold.
685
+ topo_volume_thresh2: Second ventricle segments volume threshold.
686
+ norm_pd: Normalize PD image to GCA means.
687
+ thin_temporal_lobe: Use file to label thin temporal lobe.
688
+ debug_voxel: Debug voxel coordinates.
689
+ debug_node: Debug node coordinates.
690
+ debug_label: Debug label.
691
+ tr: Set TR in msec.
692
+ te: Set TE in msec.
693
+ alpha: Set alpha in radians.
694
+ example: Use T1 and segmentation as example.
695
+ pthresh: P threshold for adaptive renormalization.
696
+ niter: Number of iterations for max likelihood.
697
+ write_probs: Write label probabilities to filename.
698
+ novar: Do not use variance in classification.
699
+ regularize: Regularize variance to be sigma+nC(noise).
700
+ nohippo: Do not auto-edit hippocampus.
701
+ fixed_white_matter: Use fixed white matter segmentation.
702
+ mri: Write most likely MR volume to file.
703
+ histogram_equalization: Use histogram equalization from volume.
704
+ renorm: Renormalize using predicted intensity values.
705
+ flash: Use FLASH forward model to predict intensity values.
706
+ flash_params: Use FLASH forward model and tissue params to predict.
707
+ renormalize: Renormalize class means iter times after initial label\
708
+ with window of wsize.
709
+ set_input_volume: Set input volume.
710
+ histogram_normalize: Use GCA to histogram normalize input image.
711
+ mean_filter: Mean filter n time to conditional densities.
712
+ write_snapshots: Write snapshots of gibbs process every n times to\
713
+ filename.
714
+ mask_final_labeling: Use mri_vol to mask final labeling.
715
+ expand: Expand.
716
+ max_iterations: Set max iterations.
717
+ filter_labeled_volume: Filter labeled volume with threshold t.
718
+ longitudinal_processing: Longitudinal processing with registrations.
719
+ relabel_unlikely: Reclassify unlikely voxels.
720
+ disables_wmsa: Disables WMSA labels.
721
+ fix_ventricle: Fix underlabeled ventricle.
722
+ insert_wm_bet_putctx: Insert WM between putamen and cortex.
723
+ sa_insert_wm_bet_putctx: Stand-alone operation to insert WM between\
724
+ putamen and cortex.
725
+ insert_from_seg: Insert given indices from segmentation volume.
726
+ sa_insert_from_seg: Stand-alone insert given indices from segmentation\
727
+ volume.
728
+ cblum_from_seg: Insert indices into segmentation volume with default\
729
+ label set.
730
+ sa_cblum_from_seg: Stand-alone operation to insert indices into\
731
+ segmentation with default label set.
732
+ threads: Set the number of open mp threads.
180
733
  runner: Command runner.
181
734
  Returns:
182
735
  NamedTuple of outputs (described in `MriCaLabelOutputs`).
@@ -188,6 +741,54 @@ def mri_ca_label(
188
741
  transform_file=transform_file,
189
742
  gca_file=gca_file,
190
743
  output_volume=output_volume,
744
+ cross_sequence=cross_sequence,
745
+ no_gibbs=no_gibbs,
746
+ wm_segmentation=wm_segmentation,
747
+ conform=conform,
748
+ topo_dist_thresh=topo_dist_thresh,
749
+ topo_volume_thresh1=topo_volume_thresh1,
750
+ topo_volume_thresh2=topo_volume_thresh2,
751
+ norm_pd=norm_pd,
752
+ thin_temporal_lobe=thin_temporal_lobe,
753
+ debug_voxel=debug_voxel,
754
+ debug_node=debug_node,
755
+ debug_label=debug_label,
756
+ tr=tr,
757
+ te=te,
758
+ alpha=alpha,
759
+ example=example,
760
+ pthresh=pthresh,
761
+ niter=niter,
762
+ write_probs=write_probs,
763
+ novar=novar,
764
+ regularize=regularize,
765
+ nohippo=nohippo,
766
+ fixed_white_matter=fixed_white_matter,
767
+ mri=mri,
768
+ histogram_equalization=histogram_equalization,
769
+ renorm=renorm,
770
+ flash=flash,
771
+ flash_params=flash_params,
772
+ renormalize=renormalize,
773
+ set_input_volume=set_input_volume,
774
+ histogram_normalize=histogram_normalize,
775
+ mean_filter=mean_filter,
776
+ write_snapshots=write_snapshots,
777
+ mask_final_labeling=mask_final_labeling,
778
+ expand=expand,
779
+ max_iterations=max_iterations,
780
+ filter_labeled_volume=filter_labeled_volume,
781
+ longitudinal_processing=longitudinal_processing,
782
+ relabel_unlikely=relabel_unlikely,
783
+ disables_wmsa=disables_wmsa,
784
+ fix_ventricle=fix_ventricle,
785
+ insert_wm_bet_putctx=insert_wm_bet_putctx,
786
+ sa_insert_wm_bet_putctx=sa_insert_wm_bet_putctx,
787
+ insert_from_seg=insert_from_seg,
788
+ sa_insert_from_seg=sa_insert_from_seg,
789
+ cblum_from_seg=cblum_from_seg,
790
+ sa_cblum_from_seg=sa_cblum_from_seg,
791
+ threads=threads,
191
792
  )
192
793
  return mri_ca_label_execute(params, execution)
193
794