niwrap-freesurfer 0.5.1__py3-none-any.whl → 0.5.2__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.2.dist-info}/METADATA +1 -1
  141. {niwrap_freesurfer-0.5.1.dist-info → niwrap_freesurfer-0.5.2.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.2.dist-info}/WHEEL +0 -0
@@ -6,7 +6,7 @@ import pathlib
6
6
  from styxdefs import *
7
7
 
8
8
  MRIS_DIFF_METADATA = Metadata(
9
- id="30172af00f20644762a6e2ce032311fb482cfc14.boutiques",
9
+ id="8cd3b28eed03b89b73b4ad8e6f6e7309b348546c.boutiques",
10
10
  name="mris_diff",
11
11
  package="freesurfer",
12
12
  container_image_tag="freesurfer/freesurfer:7.4.1",
@@ -22,6 +22,28 @@ MrisDiffParameters = typing.TypedDict('MrisDiffParameters', {
22
22
  "subj_dir1": typing.NotRequired[str | None],
23
23
  "subj_dir2": typing.NotRequired[str | None],
24
24
  "hemisphere": str,
25
+ "surf": typing.NotRequired[str | None],
26
+ "curv": typing.NotRequired[str | None],
27
+ "aparc": typing.NotRequired[str | None],
28
+ "aparc2": typing.NotRequired[str | None],
29
+ "simple": bool,
30
+ "simple_patch": bool,
31
+ "thresh": typing.NotRequired[float | None],
32
+ "maxerrs": typing.NotRequired[float | None],
33
+ "renumbered": bool,
34
+ "worst_bucket": typing.NotRequired[str | None],
35
+ "grid": typing.NotRequired[str | None],
36
+ "no_check_xyz": bool,
37
+ "no_check_nxyz": bool,
38
+ "xyz_rms": typing.NotRequired[str | None],
39
+ "angle_rms": typing.NotRequired[str | None],
40
+ "seed": typing.NotRequired[float | None],
41
+ "min_dist": typing.NotRequired[str | None],
42
+ "debug": bool,
43
+ "gdiag_no": typing.NotRequired[float | None],
44
+ "check_opts": bool,
45
+ "help": bool,
46
+ "version": bool,
25
47
  })
26
48
 
27
49
 
@@ -72,6 +94,28 @@ def mris_diff_params(
72
94
  hemisphere: str,
73
95
  subj_dir1: str | None = None,
74
96
  subj_dir2: str | None = None,
97
+ surf: str | None = None,
98
+ curv: str | None = None,
99
+ aparc: str | None = None,
100
+ aparc2: str | None = None,
101
+ simple: bool = False,
102
+ simple_patch: bool = False,
103
+ thresh: float | None = None,
104
+ maxerrs: float | None = None,
105
+ renumbered: bool = False,
106
+ worst_bucket: str | None = None,
107
+ grid: str | None = None,
108
+ no_check_xyz: bool = False,
109
+ no_check_nxyz: bool = False,
110
+ xyz_rms: str | None = None,
111
+ angle_rms: str | None = None,
112
+ seed: float | None = None,
113
+ min_dist: str | None = None,
114
+ debug: bool = False,
115
+ gdiag_no: float | None = None,
116
+ check_opts: bool = False,
117
+ help_: bool = False,
118
+ version: bool = False,
75
119
  ) -> MrisDiffParameters:
76
120
  """
77
121
  Build parameters.
@@ -84,6 +128,30 @@ def mris_diff_params(
84
128
  hemisphere: Hemisphere (rh or lh).
85
129
  subj_dir1: Directory for Subject 1 (default is SUBJECTS_DIR).
86
130
  subj_dir2: Directory for Subject 2 (default is SUBJECTS_DIR).
131
+ surf: Compare surface.
132
+ curv: Compare curvature.
133
+ aparc: Compare aparc annotation.
134
+ aparc2: Optional different name to compare to aparc.
135
+ simple: Simple comparison of two surfaces to just report differences.
136
+ simple_patch: Simple comparison of two patches.
137
+ thresh: Threshold (default=0) [Note: Not currently implemented!].
138
+ maxerrs: Stop looping after N errors (default=10).
139
+ renumbered: Vertices or faces may have been renumbered and a few\
140
+ deleted.
141
+ worst_bucket: Compute the worst histogram bucket each vertex is in.
142
+ grid: Label the vertices of edges that span a grid based on the\
143
+ provided spacing float.
144
+ no_check_xyz: Do not check vertex xyz.
145
+ no_check_nxyz: Do not check vertex normals.
146
+ xyz_rms: Compute and save RMS diff between xyz.
147
+ angle_rms: Compute angle on sphere between xyz.
148
+ seed: Set random seed for degenerate normals.
149
+ min_dist: Compute vertex-by-vertex RMS distance between surfaces.
150
+ debug: Enable debugging output.
151
+ gdiag_no: Specify Gdiag_no.
152
+ check_opts: Only check options and exit.
153
+ help_: Display help information.
154
+ version: Display version information.
87
155
  Returns:
88
156
  Parameter dictionary
89
157
  """
@@ -94,11 +162,46 @@ def mris_diff_params(
94
162
  "subject1": subject1,
95
163
  "subject2": subject2,
96
164
  "hemisphere": hemisphere,
165
+ "simple": simple,
166
+ "simple_patch": simple_patch,
167
+ "renumbered": renumbered,
168
+ "no_check_xyz": no_check_xyz,
169
+ "no_check_nxyz": no_check_nxyz,
170
+ "debug": debug,
171
+ "check_opts": check_opts,
172
+ "help": help_,
173
+ "version": version,
97
174
  }
98
175
  if subj_dir1 is not None:
99
176
  params["subj_dir1"] = subj_dir1
100
177
  if subj_dir2 is not None:
101
178
  params["subj_dir2"] = subj_dir2
179
+ if surf is not None:
180
+ params["surf"] = surf
181
+ if curv is not None:
182
+ params["curv"] = curv
183
+ if aparc is not None:
184
+ params["aparc"] = aparc
185
+ if aparc2 is not None:
186
+ params["aparc2"] = aparc2
187
+ if thresh is not None:
188
+ params["thresh"] = thresh
189
+ if maxerrs is not None:
190
+ params["maxerrs"] = maxerrs
191
+ if worst_bucket is not None:
192
+ params["worst_bucket"] = worst_bucket
193
+ if grid is not None:
194
+ params["grid"] = grid
195
+ if xyz_rms is not None:
196
+ params["xyz_rms"] = xyz_rms
197
+ if angle_rms is not None:
198
+ params["angle_rms"] = angle_rms
199
+ if seed is not None:
200
+ params["seed"] = seed
201
+ if min_dist is not None:
202
+ params["min_dist"] = min_dist
203
+ if gdiag_no is not None:
204
+ params["gdiag_no"] = gdiag_no
102
205
  return params
103
206
 
104
207
 
@@ -141,6 +244,89 @@ def mris_diff_cargs(
141
244
  "--hemi",
142
245
  params.get("hemisphere")
143
246
  ])
247
+ if params.get("surf") is not None:
248
+ cargs.extend([
249
+ "--surf",
250
+ params.get("surf")
251
+ ])
252
+ if params.get("curv") is not None:
253
+ cargs.extend([
254
+ "--curv",
255
+ params.get("curv")
256
+ ])
257
+ if params.get("aparc") is not None:
258
+ cargs.extend([
259
+ "--aparc",
260
+ params.get("aparc")
261
+ ])
262
+ if params.get("aparc2") is not None:
263
+ cargs.extend([
264
+ "--aparc2",
265
+ params.get("aparc2")
266
+ ])
267
+ if params.get("simple"):
268
+ cargs.append("--simple")
269
+ if params.get("simple_patch"):
270
+ cargs.append("--simple-patch")
271
+ if params.get("thresh") is not None:
272
+ cargs.extend([
273
+ "--thresh",
274
+ str(params.get("thresh"))
275
+ ])
276
+ if params.get("maxerrs") is not None:
277
+ cargs.extend([
278
+ "--maxerrs",
279
+ str(params.get("maxerrs"))
280
+ ])
281
+ if params.get("renumbered"):
282
+ cargs.append("--renumbered")
283
+ if params.get("worst_bucket") is not None:
284
+ cargs.extend([
285
+ "--worst-bucket",
286
+ params.get("worst_bucket")
287
+ ])
288
+ if params.get("grid") is not None:
289
+ cargs.extend([
290
+ "--grid",
291
+ params.get("grid")
292
+ ])
293
+ if params.get("no_check_xyz"):
294
+ cargs.append("--no-check-xyz")
295
+ if params.get("no_check_nxyz"):
296
+ cargs.append("--no-check-nxyz")
297
+ if params.get("xyz_rms") is not None:
298
+ cargs.extend([
299
+ "--xyz-rms",
300
+ params.get("xyz_rms")
301
+ ])
302
+ if params.get("angle_rms") is not None:
303
+ cargs.extend([
304
+ "--angle-rms",
305
+ params.get("angle_rms")
306
+ ])
307
+ if params.get("seed") is not None:
308
+ cargs.extend([
309
+ "--seed",
310
+ str(params.get("seed"))
311
+ ])
312
+ if params.get("min_dist") is not None:
313
+ cargs.extend([
314
+ "--min-dist",
315
+ params.get("min_dist")
316
+ ])
317
+ if params.get("debug"):
318
+ cargs.append("--debug")
319
+ if params.get("gdiag_no") is not None:
320
+ cargs.extend([
321
+ "--gdiag_no",
322
+ str(params.get("gdiag_no"))
323
+ ])
324
+ if params.get("check_opts"):
325
+ cargs.append("--checkopts")
326
+ if params.get("help"):
327
+ cargs.append("--help")
328
+ if params.get("version"):
329
+ cargs.append("--version")
144
330
  return cargs
145
331
 
146
332
 
@@ -195,6 +381,28 @@ def mris_diff(
195
381
  hemisphere: str,
196
382
  subj_dir1: str | None = None,
197
383
  subj_dir2: str | None = None,
384
+ surf: str | None = None,
385
+ curv: str | None = None,
386
+ aparc: str | None = None,
387
+ aparc2: str | None = None,
388
+ simple: bool = False,
389
+ simple_patch: bool = False,
390
+ thresh: float | None = None,
391
+ maxerrs: float | None = None,
392
+ renumbered: bool = False,
393
+ worst_bucket: str | None = None,
394
+ grid: str | None = None,
395
+ no_check_xyz: bool = False,
396
+ no_check_nxyz: bool = False,
397
+ xyz_rms: str | None = None,
398
+ angle_rms: str | None = None,
399
+ seed: float | None = None,
400
+ min_dist: str | None = None,
401
+ debug: bool = False,
402
+ gdiag_no: float | None = None,
403
+ check_opts: bool = False,
404
+ help_: bool = False,
405
+ version: bool = False,
198
406
  runner: Runner | None = None,
199
407
  ) -> MrisDiffOutputs:
200
408
  """
@@ -212,6 +420,30 @@ def mris_diff(
212
420
  hemisphere: Hemisphere (rh or lh).
213
421
  subj_dir1: Directory for Subject 1 (default is SUBJECTS_DIR).
214
422
  subj_dir2: Directory for Subject 2 (default is SUBJECTS_DIR).
423
+ surf: Compare surface.
424
+ curv: Compare curvature.
425
+ aparc: Compare aparc annotation.
426
+ aparc2: Optional different name to compare to aparc.
427
+ simple: Simple comparison of two surfaces to just report differences.
428
+ simple_patch: Simple comparison of two patches.
429
+ thresh: Threshold (default=0) [Note: Not currently implemented!].
430
+ maxerrs: Stop looping after N errors (default=10).
431
+ renumbered: Vertices or faces may have been renumbered and a few\
432
+ deleted.
433
+ worst_bucket: Compute the worst histogram bucket each vertex is in.
434
+ grid: Label the vertices of edges that span a grid based on the\
435
+ provided spacing float.
436
+ no_check_xyz: Do not check vertex xyz.
437
+ no_check_nxyz: Do not check vertex normals.
438
+ xyz_rms: Compute and save RMS diff between xyz.
439
+ angle_rms: Compute angle on sphere between xyz.
440
+ seed: Set random seed for degenerate normals.
441
+ min_dist: Compute vertex-by-vertex RMS distance between surfaces.
442
+ debug: Enable debugging output.
443
+ gdiag_no: Specify Gdiag_no.
444
+ check_opts: Only check options and exit.
445
+ help_: Display help information.
446
+ version: Display version information.
215
447
  runner: Command runner.
216
448
  Returns:
217
449
  NamedTuple of outputs (described in `MrisDiffOutputs`).
@@ -226,6 +458,28 @@ def mris_diff(
226
458
  subj_dir1=subj_dir1,
227
459
  subj_dir2=subj_dir2,
228
460
  hemisphere=hemisphere,
461
+ surf=surf,
462
+ curv=curv,
463
+ aparc=aparc,
464
+ aparc2=aparc2,
465
+ simple=simple,
466
+ simple_patch=simple_patch,
467
+ thresh=thresh,
468
+ maxerrs=maxerrs,
469
+ renumbered=renumbered,
470
+ worst_bucket=worst_bucket,
471
+ grid=grid,
472
+ no_check_xyz=no_check_xyz,
473
+ no_check_nxyz=no_check_nxyz,
474
+ xyz_rms=xyz_rms,
475
+ angle_rms=angle_rms,
476
+ seed=seed,
477
+ min_dist=min_dist,
478
+ debug=debug,
479
+ gdiag_no=gdiag_no,
480
+ check_opts=check_opts,
481
+ help_=help_,
482
+ version=version,
229
483
  )
230
484
  return mris_diff_execute(params, execution)
231
485
 
@@ -6,7 +6,7 @@ import pathlib
6
6
  from styxdefs import *
7
7
 
8
8
  MRIS_DISTANCE_MAP_METADATA = Metadata(
9
- id="3d8e889c4b656344736f94614b767e1d77d78242.boutiques",
9
+ id="686ff961ac8e9db74639a1364b1f5b20b600667e.boutiques",
10
10
  name="mris_distance_map",
11
11
  package="freesurfer",
12
12
  container_image_tag="freesurfer/freesurfer:7.4.1",
@@ -98,7 +98,6 @@ def mris_distance_map_cargs(
98
98
  """
99
99
  cargs = []
100
100
  cargs.append("mris_distance_map")
101
- cargs.append("[OPTIONS]")
102
101
  cargs.append(execution.input_file(params.get("input_surface_file")))
103
102
  cargs.append(params.get("output_scalar_field"))
104
103
  return cargs
@@ -6,7 +6,7 @@ import pathlib
6
6
  from styxdefs import *
7
7
 
8
8
  MRIS_ERRORS_METADATA = Metadata(
9
- id="ef9b47e313219e97d7f5d816c34ec14bc6f35660.boutiques",
9
+ id="84c4666dcea46df17569c6e5d435ebf2cb451d60.boutiques",
10
10
  name="mris_errors",
11
11
  package="freesurfer",
12
12
  container_image_tag="freesurfer/freesurfer:7.4.1",
@@ -91,7 +91,6 @@ def mris_errors_cargs(
91
91
  """
92
92
  cargs = []
93
93
  cargs.append("mris_errors")
94
- cargs.append("[OPTIONS]")
95
94
  cargs.append(execution.input_file(params.get("input_image_file")))
96
95
  return cargs
97
96
 
@@ -6,7 +6,7 @@ import pathlib
6
6
  from styxdefs import *
7
7
 
8
8
  MRIS_INFO_METADATA = Metadata(
9
- id="f8473bd4b6a90f8c8b3dbe8a7c1e45f9016b4d73.boutiques",
9
+ id="8c4d52b8480a8839ff1677fa53139a6b9fbea64a.boutiques",
10
10
  name="mris_info",
11
11
  package="freesurfer",
12
12
  container_image_tag="freesurfer/freesurfer:7.4.1",
@@ -18,23 +18,23 @@ MrisInfoParameters = typing.TypedDict('MrisInfoParameters', {
18
18
  "surfacefile": InputPathType,
19
19
  "outfile": typing.NotRequired[InputPathType | None],
20
20
  "subject_hemi_surfname": typing.NotRequired[str | None],
21
+ "talairach_xfm_flag": bool,
22
+ "rescale_flag": bool,
21
23
  "patchfile": typing.NotRequired[InputPathType | None],
22
24
  "vertex_number": typing.NotRequired[float | None],
23
25
  "extended_vertex_number": typing.NotRequired[float | None],
24
26
  "curvfile": typing.NotRequired[InputPathType | None],
25
27
  "annotfile": typing.NotRequired[InputPathType | None],
28
+ "area_stats_flag": bool,
26
29
  "edge_stats_id": typing.NotRequired[str | None],
27
30
  "edge_number": typing.NotRequired[float | None],
28
31
  "vtxno": typing.NotRequired[str | None],
29
32
  "matrix_format": typing.NotRequired[str | None],
33
+ "quality_stats_flag": bool,
34
+ "intersections_flag": bool,
30
35
  "mask_file": typing.NotRequired[InputPathType | None],
31
36
  "label_file": typing.NotRequired[InputPathType | None],
32
37
  "edge_file": typing.NotRequired[InputPathType | None],
33
- "talairach_xfm_flag": bool,
34
- "rescale_flag": bool,
35
- "area_stats_flag": bool,
36
- "quality_stats_flag": bool,
37
- "intersections_flag": bool,
38
38
  "nogifti_flag": bool,
39
39
  "version_flag": bool,
40
40
  "help_flag": bool,
@@ -89,23 +89,23 @@ def mris_info_params(
89
89
  surfacefile: InputPathType,
90
90
  outfile: InputPathType | None = None,
91
91
  subject_hemi_surfname: str | None = None,
92
+ talairach_xfm_flag: bool = False,
93
+ rescale_flag: bool = False,
92
94
  patchfile: InputPathType | None = None,
93
95
  vertex_number: float | None = None,
94
96
  extended_vertex_number: float | None = None,
95
97
  curvfile: InputPathType | None = None,
96
98
  annotfile: InputPathType | None = None,
99
+ area_stats_flag: bool = False,
97
100
  edge_stats_id: str | None = None,
98
101
  edge_number: float | None = None,
99
102
  vtxno: str | None = None,
100
103
  matrix_format: str | None = None,
104
+ quality_stats_flag: bool = False,
105
+ intersections_flag: bool = False,
101
106
  mask_file: InputPathType | None = None,
102
107
  label_file: InputPathType | None = None,
103
108
  edge_file: InputPathType | None = None,
104
- talairach_xfm_flag: bool = False,
105
- rescale_flag: bool = False,
106
- area_stats_flag: bool = False,
107
- quality_stats_flag: bool = False,
108
- intersections_flag: bool = False,
109
109
  nogifti_flag: bool = False,
110
110
  version_flag: bool = False,
111
111
  help_flag: bool = False,
@@ -117,6 +117,8 @@ def mris_info_params(
117
117
  surfacefile: Surface file to process.
118
118
  outfile: Save some data to outfile.
119
119
  subject_hemi_surfname: Instead of surfacefile.
120
+ talairach_xfm_flag: Apply talairach xfm before reporting info.
121
+ rescale_flag: Rescale group surface to match average metrics.
120
122
  patchfile: Load patch before reporting.
121
123
  vertex_number: Print out vertex information for vertex vnum.
122
124
  extended_vertex_number: Print out extended vertex information for\
@@ -124,21 +126,19 @@ def mris_info_params(
124
126
  curvfile: Check if curvature file vertices match surface vertices.
125
127
  annotfile: Check if annotation file vertices match surface vertices;\
126
128
  dump colortable.
129
+ area_stats_flag: Compute stats on triangle area (n, mean, std, min,\
130
+ max).
127
131
  edge_stats_id: Compute stats on edge metric (n, mean, std, min, max);\
128
132
  id=0=length, id=1=dot, id=2=angle, id<0= all.
129
133
  edge_number: Print out extended information about edge.
130
134
  vtxno: Write Matlab file to plot vertex neighborhood.
131
135
  matrix_format: Set format for matrix printing (e.g., %12.8f).
132
- mask_file: Only compute edge and area stats using vertices in mask.
133
- label_file: Only compute edge and area stats using vertices in label.
134
- edge_file: Print edge info for all edges into file.
135
- talairach_xfm_flag: Apply talairach xfm before reporting info.
136
- rescale_flag: Rescale group surface to match average metrics.
137
- area_stats_flag: Compute stats on triangle area (n, mean, std, min,\
138
- max).
139
136
  quality_stats_flag: Print out surface quality stats.
140
137
  intersections_flag: Print the number of vertices that belong to a face\
141
138
  that intersects another face.
139
+ mask_file: Only compute edge and area stats using vertices in mask.
140
+ label_file: Only compute edge and area stats using vertices in label.
141
+ edge_file: Print edge info for all edges into file.
142
142
  nogifti_flag: No dump of GIFTI struct, read .gii as surface instead.
143
143
  version_flag: Print version and exits.
144
144
  help_flag: No clue what this does.
@@ -214,6 +214,10 @@ def mris_info_cargs(
214
214
  "--s",
215
215
  params.get("subject_hemi_surfname")
216
216
  ])
217
+ if params.get("talairach_xfm_flag"):
218
+ cargs.append("--t")
219
+ if params.get("rescale_flag"):
220
+ cargs.append("--r")
217
221
  if params.get("patchfile") is not None:
218
222
  cargs.extend([
219
223
  "--patch",
@@ -239,6 +243,8 @@ def mris_info_cargs(
239
243
  "--a",
240
244
  execution.input_file(params.get("annotfile"))
241
245
  ])
246
+ if params.get("area_stats_flag"):
247
+ cargs.append("--area-stats")
242
248
  if params.get("edge_stats_id") is not None:
243
249
  cargs.extend([
244
250
  "--edge-stats",
@@ -259,6 +265,10 @@ def mris_info_cargs(
259
265
  "--mtx-fmt",
260
266
  params.get("matrix_format")
261
267
  ])
268
+ if params.get("quality_stats_flag"):
269
+ cargs.append("--quality")
270
+ if params.get("intersections_flag"):
271
+ cargs.append("--intersections")
262
272
  if params.get("mask_file") is not None:
263
273
  cargs.extend([
264
274
  "--mask",
@@ -274,17 +284,6 @@ def mris_info_cargs(
274
284
  "--edge-file",
275
285
  execution.input_file(params.get("edge_file"))
276
286
  ])
277
- if params.get("talairach_xfm_flag"):
278
- cargs.append("--t")
279
- if params.get("rescale_flag"):
280
- cargs.append("--r")
281
- if params.get("area_stats_flag"):
282
- cargs.append("--area-stats")
283
- cargs.append("[EDGE_STATS_FLAG]")
284
- if params.get("quality_stats_flag"):
285
- cargs.append("--quality")
286
- if params.get("intersections_flag"):
287
- cargs.append("--intersections")
288
287
  if params.get("nogifti_flag"):
289
288
  cargs.append("--nogifti-disp-image")
290
289
  if params.get("version_flag"):
@@ -343,23 +342,23 @@ def mris_info(
343
342
  surfacefile: InputPathType,
344
343
  outfile: InputPathType | None = None,
345
344
  subject_hemi_surfname: str | None = None,
345
+ talairach_xfm_flag: bool = False,
346
+ rescale_flag: bool = False,
346
347
  patchfile: InputPathType | None = None,
347
348
  vertex_number: float | None = None,
348
349
  extended_vertex_number: float | None = None,
349
350
  curvfile: InputPathType | None = None,
350
351
  annotfile: InputPathType | None = None,
352
+ area_stats_flag: bool = False,
351
353
  edge_stats_id: str | None = None,
352
354
  edge_number: float | None = None,
353
355
  vtxno: str | None = None,
354
356
  matrix_format: str | None = None,
357
+ quality_stats_flag: bool = False,
358
+ intersections_flag: bool = False,
355
359
  mask_file: InputPathType | None = None,
356
360
  label_file: InputPathType | None = None,
357
361
  edge_file: InputPathType | None = None,
358
- talairach_xfm_flag: bool = False,
359
- rescale_flag: bool = False,
360
- area_stats_flag: bool = False,
361
- quality_stats_flag: bool = False,
362
- intersections_flag: bool = False,
363
362
  nogifti_flag: bool = False,
364
363
  version_flag: bool = False,
365
364
  help_flag: bool = False,
@@ -376,6 +375,8 @@ def mris_info(
376
375
  surfacefile: Surface file to process.
377
376
  outfile: Save some data to outfile.
378
377
  subject_hemi_surfname: Instead of surfacefile.
378
+ talairach_xfm_flag: Apply talairach xfm before reporting info.
379
+ rescale_flag: Rescale group surface to match average metrics.
379
380
  patchfile: Load patch before reporting.
380
381
  vertex_number: Print out vertex information for vertex vnum.
381
382
  extended_vertex_number: Print out extended vertex information for\
@@ -383,21 +384,19 @@ def mris_info(
383
384
  curvfile: Check if curvature file vertices match surface vertices.
384
385
  annotfile: Check if annotation file vertices match surface vertices;\
385
386
  dump colortable.
387
+ area_stats_flag: Compute stats on triangle area (n, mean, std, min,\
388
+ max).
386
389
  edge_stats_id: Compute stats on edge metric (n, mean, std, min, max);\
387
390
  id=0=length, id=1=dot, id=2=angle, id<0= all.
388
391
  edge_number: Print out extended information about edge.
389
392
  vtxno: Write Matlab file to plot vertex neighborhood.
390
393
  matrix_format: Set format for matrix printing (e.g., %12.8f).
391
- mask_file: Only compute edge and area stats using vertices in mask.
392
- label_file: Only compute edge and area stats using vertices in label.
393
- edge_file: Print edge info for all edges into file.
394
- talairach_xfm_flag: Apply talairach xfm before reporting info.
395
- rescale_flag: Rescale group surface to match average metrics.
396
- area_stats_flag: Compute stats on triangle area (n, mean, std, min,\
397
- max).
398
394
  quality_stats_flag: Print out surface quality stats.
399
395
  intersections_flag: Print the number of vertices that belong to a face\
400
396
  that intersects another face.
397
+ mask_file: Only compute edge and area stats using vertices in mask.
398
+ label_file: Only compute edge and area stats using vertices in label.
399
+ edge_file: Print edge info for all edges into file.
401
400
  nogifti_flag: No dump of GIFTI struct, read .gii as surface instead.
402
401
  version_flag: Print version and exits.
403
402
  help_flag: No clue what this does.
@@ -411,23 +410,23 @@ def mris_info(
411
410
  surfacefile=surfacefile,
412
411
  outfile=outfile,
413
412
  subject_hemi_surfname=subject_hemi_surfname,
413
+ talairach_xfm_flag=talairach_xfm_flag,
414
+ rescale_flag=rescale_flag,
414
415
  patchfile=patchfile,
415
416
  vertex_number=vertex_number,
416
417
  extended_vertex_number=extended_vertex_number,
417
418
  curvfile=curvfile,
418
419
  annotfile=annotfile,
420
+ area_stats_flag=area_stats_flag,
419
421
  edge_stats_id=edge_stats_id,
420
422
  edge_number=edge_number,
421
423
  vtxno=vtxno,
422
424
  matrix_format=matrix_format,
425
+ quality_stats_flag=quality_stats_flag,
426
+ intersections_flag=intersections_flag,
423
427
  mask_file=mask_file,
424
428
  label_file=label_file,
425
429
  edge_file=edge_file,
426
- talairach_xfm_flag=talairach_xfm_flag,
427
- rescale_flag=rescale_flag,
428
- area_stats_flag=area_stats_flag,
429
- quality_stats_flag=quality_stats_flag,
430
- intersections_flag=intersections_flag,
431
430
  nogifti_flag=nogifti_flag,
432
431
  version_flag=version_flag,
433
432
  help_flag=help_flag,
@@ -6,7 +6,7 @@ import pathlib
6
6
  from styxdefs import *
7
7
 
8
8
  MRIS_LABEL_CALC_METADATA = Metadata(
9
- id="4566c0b5206cd4d9fc63822cdb713e50b1ee033e.boutiques",
9
+ id="0dc4043ecf2e55b53be6b5910c84a71bf8a1c707.boutiques",
10
10
  name="mris_label_calc",
11
11
  package="freesurfer",
12
12
  container_image_tag="freesurfer/freesurfer:7.4.1",
@@ -19,6 +19,7 @@ MrisLabelCalcParameters = typing.TypedDict('MrisLabelCalcParameters', {
19
19
  "input1": InputPathType,
20
20
  "input2": InputPathType,
21
21
  "output": str,
22
+ "iterations": typing.NotRequired[int | None],
22
23
  })
23
24
 
24
25
 
@@ -69,6 +70,7 @@ def mris_label_calc_params(
69
70
  input1: InputPathType,
70
71
  input2: InputPathType,
71
72
  output: str,
73
+ iterations: int | None = None,
72
74
  ) -> MrisLabelCalcParameters:
73
75
  """
74
76
  Build parameters.
@@ -79,6 +81,7 @@ def mris_label_calc_params(
79
81
  input2: Second input label file (used for 'invert', 'erode', 'dilate'\
80
82
  operations).
81
83
  output: Output label file.
84
+ iterations: Number of times to erode or dilate label.
82
85
  Returns:
83
86
  Parameter dictionary
84
87
  """
@@ -89,6 +92,8 @@ def mris_label_calc_params(
89
92
  "input2": input2,
90
93
  "output": output,
91
94
  }
95
+ if iterations is not None:
96
+ params["iterations"] = iterations
92
97
  return params
93
98
 
94
99
 
@@ -111,6 +116,11 @@ def mris_label_calc_cargs(
111
116
  cargs.append(execution.input_file(params.get("input1")))
112
117
  cargs.append(execution.input_file(params.get("input2")))
113
118
  cargs.append(params.get("output"))
119
+ if params.get("iterations") is not None:
120
+ cargs.extend([
121
+ "<n>",
122
+ str(params.get("iterations"))
123
+ ])
114
124
  return cargs
115
125
 
116
126
 
@@ -163,6 +173,7 @@ def mris_label_calc(
163
173
  input1: InputPathType,
164
174
  input2: InputPathType,
165
175
  output: str,
176
+ iterations: int | None = None,
166
177
  runner: Runner | None = None,
167
178
  ) -> MrisLabelCalcOutputs:
168
179
  """
@@ -178,6 +189,7 @@ def mris_label_calc(
178
189
  input2: Second input label file (used for 'invert', 'erode', 'dilate'\
179
190
  operations).
180
191
  output: Output label file.
192
+ iterations: Number of times to erode or dilate label.
181
193
  runner: Command runner.
182
194
  Returns:
183
195
  NamedTuple of outputs (described in `MrisLabelCalcOutputs`).
@@ -189,6 +201,7 @@ def mris_label_calc(
189
201
  input1=input1,
190
202
  input2=input2,
191
203
  output=output,
204
+ iterations=iterations,
192
205
  )
193
206
  return mris_label_calc_execute(params, execution)
194
207
 
@@ -6,7 +6,7 @@ import pathlib
6
6
  from styxdefs import *
7
7
 
8
8
  MRIS_MAP_CUTS_METADATA = Metadata(
9
- id="779b9e3d194c64fbf7ebe1bfe928f56ccdd44441.boutiques",
9
+ id="c694d790811be0a427c0f191c8203d1e2914b980.boutiques",
10
10
  name="mris_map_cuts",
11
11
  package="freesurfer",
12
12
  container_image_tag="freesurfer/freesurfer:7.4.1",
@@ -95,7 +95,6 @@ def mris_map_cuts_cargs(
95
95
  """
96
96
  cargs = []
97
97
  cargs.append("mris_map_cuts")
98
- cargs.append("[OPTIONS]")
99
98
  cargs.append(execution.input_file(params.get("input_patch")))
100
99
  cargs.append(params.get("output_patch"))
101
100
  return cargs