niwrap-freesurfer 0.5.0__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 (154) 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/tkregisterfv.py +7 -7
  135. niwrap_freesurfer/freesurfer/trac_all.py +283 -1
  136. niwrap_freesurfer/freesurfer/train_gcs_atlas.py +19 -1
  137. niwrap_freesurfer/freesurfer/update_needed.py +13 -2
  138. niwrap_freesurfer/freesurfer/vertexvol.py +19 -1
  139. niwrap_freesurfer/freesurfer/vol2subfield.py +72 -1
  140. niwrap_freesurfer/freesurfer/wmsaseg.py +2 -2
  141. {niwrap_freesurfer-0.5.0.dist-info → niwrap_freesurfer-0.5.2.dist-info}/METADATA +1 -1
  142. {niwrap_freesurfer-0.5.0.dist-info → niwrap_freesurfer-0.5.2.dist-info}/RECORD +143 -154
  143. niwrap_freesurfer/freesurfer/bet_fsl.py +0 -441
  144. niwrap_freesurfer/freesurfer/epidewarp_fsl.py +0 -439
  145. niwrap_freesurfer/freesurfer/flirt_fsl.py +0 -604
  146. niwrap_freesurfer/freesurfer/fscalc_fsl.py +0 -196
  147. niwrap_freesurfer/freesurfer/fsfirst_fsl.py +0 -166
  148. niwrap_freesurfer/freesurfer/fslmaths_fsl.py +0 -196
  149. niwrap_freesurfer/freesurfer/fslorient_fsl.py +0 -207
  150. niwrap_freesurfer/freesurfer/fslswapdim_fsl.py +0 -216
  151. niwrap_freesurfer/freesurfer/fspython.py +0 -175
  152. niwrap_freesurfer/freesurfer/mri_motion_correct_fsl.py +0 -185
  153. niwrap_freesurfer/freesurfer/slicetimer_fsl.py +0 -291
  154. {niwrap_freesurfer-0.5.0.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_NUDGE_METADATA = Metadata(
9
- id="6f298ed7d045a2ce709015d0cecce0980607d9d6.boutiques",
9
+ id="95de4ed7ce38c1344db48e4487148e75d7cd5ac7.boutiques",
10
10
  name="mris_nudge",
11
11
  package="freesurfer",
12
12
  container_image_tag="freesurfer/freesurfer:7.4.1",
@@ -115,7 +115,6 @@ def mris_nudge_cargs(
115
115
  cargs.append(str(params.get("vertex")))
116
116
  cargs.append(str(params.get("target_val")))
117
117
  cargs.append(str(params.get("nbhd")))
118
- cargs.append("[OUTPUT_SURF]")
119
118
  return cargs
120
119
 
121
120
 
@@ -6,7 +6,7 @@ import pathlib
6
6
  from styxdefs import *
7
7
 
8
8
  MRIS_PLACE_SURFACE_METADATA = Metadata(
9
- id="e4e973bfe64ca5b7e38915757ccc306ea96b6327.boutiques",
9
+ id="e71154f3ac212ed67a529db481c0c3cb77247351.boutiques",
10
10
  name="mris_place_surface",
11
11
  package="freesurfer",
12
12
  container_image_tag="freesurfer/freesurfer:7.4.1",
@@ -476,7 +476,6 @@ def mris_place_surface_cargs(
476
476
  "--fill-lat-vents",
477
477
  *map(str, params.get("fill_lateral_ventricles"))
478
478
  ])
479
- cargs.append("[COST_FUNCTION_ARGS]")
480
479
  return cargs
481
480
 
482
481
 
@@ -6,7 +6,7 @@ import pathlib
6
6
  from styxdefs import *
7
7
 
8
8
  MRIS_PREPROC_METADATA = Metadata(
9
- id="dd5edb4541571b929ce3905d2cb09807c8f4d850.boutiques",
9
+ id="19354ad334d567c1cc3b6d8c8a574e514f9d7eec.boutiques",
10
10
  name="mris_preproc",
11
11
  package="freesurfer",
12
12
  container_image_tag="freesurfer/freesurfer:7.4.1",
@@ -27,6 +27,7 @@ MrisPreprocParameters = typing.TypedDict('MrisPreprocParameters', {
27
27
  "qdec": typing.NotRequired[InputPathType | None],
28
28
  "qdec_long": typing.NotRequired[InputPathType | None],
29
29
  "surfmeasfile": typing.NotRequired[list[InputPathType] | None],
30
+ "volmeasfile_reg": typing.NotRequired[list[str] | None],
30
31
  "projfrac": typing.NotRequired[float | None],
31
32
  "projfrac_max": typing.NotRequired[list[float] | None],
32
33
  "projfrac_avg": typing.NotRequired[list[float] | None],
@@ -118,6 +119,7 @@ def mris_preproc_params(
118
119
  qdec: InputPathType | None = None,
119
120
  qdec_long: InputPathType | None = None,
120
121
  surfmeasfile: list[InputPathType] | None = None,
122
+ volmeasfile_reg: list[str] | None = None,
121
123
  projfrac: float | None = None,
122
124
  projfrac_max: list[float] | None = None,
123
125
  projfrac_avg: list[float] | None = None,
@@ -176,6 +178,8 @@ def mris_preproc_params(
176
178
  column is the "fsid".
177
179
  qdec_long: Specify list of subjects via longitudinal qdec table file.
178
180
  surfmeasfile: Specify full path to input surface measure file.
181
+ volmeasfile_reg: Specify full path to a volume file and its\
182
+ registration matrix file.
179
183
  projfrac: When sampling a volume onto the surface, sample a fraction of\
180
184
  the thickness along the surface normal.
181
185
  projfrac_max: When sampling a volume onto the surface, find max along\
@@ -261,6 +265,8 @@ def mris_preproc_params(
261
265
  params["qdec_long"] = qdec_long
262
266
  if surfmeasfile is not None:
263
267
  params["surfmeasfile"] = surfmeasfile
268
+ if volmeasfile_reg is not None:
269
+ params["volmeasfile_reg"] = volmeasfile_reg
264
270
  if projfrac is not None:
265
271
  params["projfrac"] = projfrac
266
272
  if projfrac_max is not None:
@@ -374,7 +380,11 @@ def mris_preproc_cargs(
374
380
  "--is",
375
381
  *[execution.input_file(f) for f in params.get("surfmeasfile")]
376
382
  ])
377
- cargs.append("[VOLMEASFILE]")
383
+ if params.get("volmeasfile_reg") is not None:
384
+ cargs.extend([
385
+ "--iv",
386
+ *params.get("volmeasfile_reg")
387
+ ])
378
388
  if params.get("projfrac") is not None:
379
389
  cargs.extend([
380
390
  "--projfrac",
@@ -565,6 +575,7 @@ def mris_preproc(
565
575
  qdec: InputPathType | None = None,
566
576
  qdec_long: InputPathType | None = None,
567
577
  surfmeasfile: list[InputPathType] | None = None,
578
+ volmeasfile_reg: list[str] | None = None,
568
579
  projfrac: float | None = None,
569
580
  projfrac_max: list[float] | None = None,
570
581
  projfrac_avg: list[float] | None = None,
@@ -630,6 +641,8 @@ def mris_preproc(
630
641
  column is the "fsid".
631
642
  qdec_long: Specify list of subjects via longitudinal qdec table file.
632
643
  surfmeasfile: Specify full path to input surface measure file.
644
+ volmeasfile_reg: Specify full path to a volume file and its\
645
+ registration matrix file.
633
646
  projfrac: When sampling a volume onto the surface, sample a fraction of\
634
647
  the thickness along the surface normal.
635
648
  projfrac_max: When sampling a volume onto the surface, find max along\
@@ -690,6 +703,7 @@ def mris_preproc(
690
703
  qdec=qdec,
691
704
  qdec_long=qdec_long,
692
705
  surfmeasfile=surfmeasfile,
706
+ volmeasfile_reg=volmeasfile_reg,
693
707
  projfrac=projfrac,
694
708
  projfrac_max=projfrac_max,
695
709
  projfrac_avg=projfrac_avg,
@@ -6,7 +6,7 @@ import pathlib
6
6
  from styxdefs import *
7
7
 
8
8
  MRIS_SPHERICAL_AVERAGE_METADATA = Metadata(
9
- id="1428559d3a56abaf727b5871834a354591593a62.boutiques",
9
+ id="183c7a343e730b5d37f38ae332c84cb1365ae30e.boutiques",
10
10
  name="mris_spherical_average",
11
11
  package="freesurfer",
12
12
  container_image_tag="freesurfer/freesurfer:7.4.1",
@@ -15,13 +15,20 @@ MRIS_SPHERICAL_AVERAGE_METADATA = Metadata(
15
15
 
16
16
  MrisSphericalAverageParameters = typing.TypedDict('MrisSphericalAverageParameters', {
17
17
  "__STYX_TYPE__": typing.Literal["mris_spherical_average"],
18
- "summary_statistics": typing.NotRequired[str | None],
19
18
  "which": typing.Literal["coords", "label", "vals", "curv", "area"],
20
19
  "fname": str,
21
20
  "hemi": typing.Literal["lh", "rh"],
22
21
  "spherical_surf": str,
23
22
  "subjects": list[str],
24
23
  "output": str,
24
+ "segment": bool,
25
+ "normalize": bool,
26
+ "orig": typing.NotRequired[str | None],
27
+ "output_subject_name": typing.NotRequired[str | None],
28
+ "output_subject_dir": typing.NotRequired[str | None],
29
+ "subjects_dir": typing.NotRequired[str | None],
30
+ "average_area": bool,
31
+ "summary_statistics": typing.NotRequired[str | None],
25
32
  })
26
33
 
27
34
 
@@ -71,6 +78,13 @@ def mris_spherical_average_params(
71
78
  spherical_surf: str,
72
79
  subjects: list[str],
73
80
  output: str,
81
+ segment: bool = False,
82
+ normalize: bool = False,
83
+ orig: str | None = None,
84
+ output_subject_name: str | None = None,
85
+ output_subject_dir: str | None = None,
86
+ subjects_dir: str | None = None,
87
+ average_area: bool = False,
74
88
  summary_statistics: str | None = None,
75
89
  ) -> MrisSphericalAverageParameters:
76
90
  """
@@ -83,6 +97,16 @@ def mris_spherical_average_params(
83
97
  spherical_surf: The spherical surface file.
84
98
  subjects: List of subjects.
85
99
  output: Output file or directory.
100
+ segment: Only use largest connected component of label.
101
+ normalize: Normalize output so it can be interpreted as a probability.
102
+ orig: Use <name> as original surface position; default=orig.
103
+ output_subject_name: Use <output subject name> as the space to write\
104
+ the results in instead of the last subject given.
105
+ output_subject_dir: Use <output subject dir> as the subjects dir for\
106
+ the output subject.
107
+ subjects_dir: Set the subjects directory.
108
+ average_area: Compute threshold for label that will give the average\
109
+ label approximately the average surface area.
86
110
  summary_statistics: Generate summary statistics and write them into\
87
111
  sigavg<cond #>-<hemi>.w and sigvar<cond #>-<hemi>.w.
88
112
  Returns:
@@ -96,7 +120,18 @@ def mris_spherical_average_params(
96
120
  "spherical_surf": spherical_surf,
97
121
  "subjects": subjects,
98
122
  "output": output,
123
+ "segment": segment,
124
+ "normalize": normalize,
125
+ "average_area": average_area,
99
126
  }
127
+ if orig is not None:
128
+ params["orig"] = orig
129
+ if output_subject_name is not None:
130
+ params["output_subject_name"] = output_subject_name
131
+ if output_subject_dir is not None:
132
+ params["output_subject_dir"] = output_subject_dir
133
+ if subjects_dir is not None:
134
+ params["subjects_dir"] = subjects_dir
100
135
  if summary_statistics is not None:
101
136
  params["summary_statistics"] = summary_statistics
102
137
  return params
@@ -117,17 +152,43 @@ def mris_spherical_average_cargs(
117
152
  """
118
153
  cargs = []
119
154
  cargs.append("mris_spherical_average")
120
- if params.get("summary_statistics") is not None:
121
- cargs.extend([
122
- "-s",
123
- params.get("summary_statistics")
124
- ])
125
155
  cargs.append(params.get("which"))
126
156
  cargs.append(params.get("fname"))
127
157
  cargs.append(params.get("hemi"))
128
158
  cargs.append(params.get("spherical_surf"))
129
159
  cargs.extend(params.get("subjects"))
130
160
  cargs.append(params.get("output"))
161
+ if params.get("segment"):
162
+ cargs.append("-segment")
163
+ if params.get("normalize"):
164
+ cargs.append("-n")
165
+ if params.get("orig") is not None:
166
+ cargs.extend([
167
+ "-orig",
168
+ params.get("orig")
169
+ ])
170
+ if params.get("output_subject_name") is not None:
171
+ cargs.extend([
172
+ "-o",
173
+ params.get("output_subject_name")
174
+ ])
175
+ if params.get("output_subject_dir") is not None:
176
+ cargs.extend([
177
+ "-osdir",
178
+ params.get("output_subject_dir")
179
+ ])
180
+ if params.get("subjects_dir") is not None:
181
+ cargs.extend([
182
+ "-sdir",
183
+ params.get("subjects_dir")
184
+ ])
185
+ if params.get("average_area"):
186
+ cargs.append("-average_area")
187
+ if params.get("summary_statistics") is not None:
188
+ cargs.extend([
189
+ "-s",
190
+ params.get("summary_statistics")
191
+ ])
131
192
  return cargs
132
193
 
133
194
 
@@ -181,6 +242,13 @@ def mris_spherical_average(
181
242
  spherical_surf: str,
182
243
  subjects: list[str],
183
244
  output: str,
245
+ segment: bool = False,
246
+ normalize: bool = False,
247
+ orig: str | None = None,
248
+ output_subject_name: str | None = None,
249
+ output_subject_dir: str | None = None,
250
+ subjects_dir: str | None = None,
251
+ average_area: bool = False,
184
252
  summary_statistics: str | None = None,
185
253
  runner: Runner | None = None,
186
254
  ) -> MrisSphericalAverageOutputs:
@@ -198,6 +266,16 @@ def mris_spherical_average(
198
266
  spherical_surf: The spherical surface file.
199
267
  subjects: List of subjects.
200
268
  output: Output file or directory.
269
+ segment: Only use largest connected component of label.
270
+ normalize: Normalize output so it can be interpreted as a probability.
271
+ orig: Use <name> as original surface position; default=orig.
272
+ output_subject_name: Use <output subject name> as the space to write\
273
+ the results in instead of the last subject given.
274
+ output_subject_dir: Use <output subject dir> as the subjects dir for\
275
+ the output subject.
276
+ subjects_dir: Set the subjects directory.
277
+ average_area: Compute threshold for label that will give the average\
278
+ label approximately the average surface area.
201
279
  summary_statistics: Generate summary statistics and write them into\
202
280
  sigavg<cond #>-<hemi>.w and sigvar<cond #>-<hemi>.w.
203
281
  runner: Command runner.
@@ -207,13 +285,20 @@ def mris_spherical_average(
207
285
  runner = runner or get_global_runner()
208
286
  execution = runner.start_execution(MRIS_SPHERICAL_AVERAGE_METADATA)
209
287
  params = mris_spherical_average_params(
210
- summary_statistics=summary_statistics,
211
288
  which=which,
212
289
  fname=fname,
213
290
  hemi=hemi,
214
291
  spherical_surf=spherical_surf,
215
292
  subjects=subjects,
216
293
  output=output,
294
+ segment=segment,
295
+ normalize=normalize,
296
+ orig=orig,
297
+ output_subject_name=output_subject_name,
298
+ output_subject_dir=output_subject_dir,
299
+ subjects_dir=subjects_dir,
300
+ average_area=average_area,
301
+ summary_statistics=summary_statistics,
217
302
  )
218
303
  return mris_spherical_average_execute(params, execution)
219
304
 
@@ -6,7 +6,7 @@ import pathlib
6
6
  from styxdefs import *
7
7
 
8
8
  MRIS_THICKNESS_DIFF_METADATA = Metadata(
9
- id="fbc123e8965a3bb3509ca33036327b032bbd57be.boutiques",
9
+ id="9296419cd2bc81214ca3b7a9b2157195a7f31223.boutiques",
10
10
  name="mris_thickness_diff",
11
11
  package="freesurfer",
12
12
  container_image_tag="freesurfer/freesurfer:7.4.1",
@@ -153,10 +153,6 @@ def mris_thickness_diff_cargs(
153
153
  """
154
154
  cargs = []
155
155
  cargs.append("mris_thickness_diff")
156
- cargs.append("[SURFACE1]")
157
- cargs.append("[DATA1]")
158
- cargs.append("[SURFACE2]")
159
- cargs.append("[DATA2]")
160
156
  if params.get("src_type") is not None:
161
157
  cargs.extend([
162
158
  "-src_type",
@@ -6,7 +6,7 @@ import pathlib
6
6
  from styxdefs import *
7
7
 
8
8
  MRIS_VOLMASK_VTK_METADATA = Metadata(
9
- id="800007184636ff21baf1531ccc9b9b9b778933b9.boutiques",
9
+ id="26e246fc04ff45f83eec1e536a78198e40089ef9.boutiques",
10
10
  name="mris_volmask_vtk",
11
11
  package="freesurfer",
12
12
  container_image_tag="freesurfer/freesurfer:7.4.1",
@@ -187,7 +187,7 @@ def mris_volmask_vtk_cargs(
187
187
  Command-line arguments.
188
188
  """
189
189
  cargs = []
190
- cargs.append("mris_volmask")
190
+ cargs.append("mris_volmask_vtk")
191
191
  if params.get("cap_distance") is not None:
192
192
  cargs.extend([
193
193
  "--cap_distance",
@@ -6,7 +6,7 @@ import pathlib
6
6
  from styxdefs import *
7
7
 
8
8
  PCTSURFCON_METADATA = Metadata(
9
- id="0e082a082c6b181a71427db52d685c35d4270743.boutiques",
9
+ id="ad5f62ba3adae77bc989e8136a6e5d45a335abd9.boutiques",
10
10
  name="pctsurfcon",
11
11
  package="freesurfer",
12
12
  container_image_tag="freesurfer/freesurfer:7.4.1",
@@ -147,7 +147,7 @@ def pctsurfcon_cargs(
147
147
  cargs.append("pctsurfcon")
148
148
  cargs.extend([
149
149
  "-s",
150
- "-" + params.get("subject")
150
+ params.get("subject")
151
151
  ])
152
152
  if params.get("fsvol") is not None:
153
153
  cargs.extend([
@@ -6,7 +6,7 @@ import pathlib
6
6
  from styxdefs import *
7
7
 
8
8
  PLOT_STRUCTURE_STATS_TCL_METADATA = Metadata(
9
- id="a74a29bbca7b8c304af58dc63af9e2298f4ac223.boutiques",
9
+ id="3da14e93a6edf0e5421e7aad0c1e0f8bf5f4b087.boutiques",
10
10
  name="plot_structure_stats.tcl",
11
11
  package="freesurfer",
12
12
  container_image_tag="freesurfer/freesurfer:7.4.1",
@@ -97,7 +97,7 @@ def plot_structure_stats_tcl_cargs(
97
97
  Command-line arguments.
98
98
  """
99
99
  cargs = []
100
- cargs.append("plot_structure_stats")
100
+ cargs.append("plot_structure_stats.tcl")
101
101
  cargs.append(execution.input_file(params.get("input_file")))
102
102
  cargs.append(params.get("output_file"))
103
103
  return cargs
@@ -6,7 +6,7 @@ import pathlib
6
6
  from styxdefs import *
7
7
 
8
8
  POST_RECON_ALL_METADATA = Metadata(
9
- id="043904c04e1a7c309fb6aa5cb7234831a996fdf4.boutiques",
9
+ id="4506cae7a1f970c99574dc4fac8b9e2fc2792099.boutiques",
10
10
  name="post-recon-all",
11
11
  package="freesurfer",
12
12
  container_image_tag="freesurfer/freesurfer:7.4.1",
@@ -16,9 +16,13 @@ POST_RECON_ALL_METADATA = Metadata(
16
16
  PostReconAllParameters = typing.TypedDict('PostReconAllParameters', {
17
17
  "__STYX_TYPE__": typing.Literal["post-recon-all"],
18
18
  "subject": str,
19
+ "subfields": bool,
19
20
  "no_subfields": bool,
21
+ "subregions": bool,
20
22
  "no_subregions": bool,
23
+ "cvs": bool,
21
24
  "no_cvs": bool,
25
+ "qcache": bool,
22
26
  "no_qcache": bool,
23
27
  "no_sclimbic": bool,
24
28
  "no_hthsu": bool,
@@ -75,9 +79,13 @@ class PostReconAllOutputs(typing.NamedTuple):
75
79
 
76
80
  def post_recon_all_params(
77
81
  subject: str,
82
+ subfields: bool = False,
78
83
  no_subfields: bool = False,
84
+ subregions: bool = False,
79
85
  no_subregions: bool = False,
86
+ cvs: bool = False,
80
87
  no_cvs: bool = False,
88
+ qcache: bool = False,
81
89
  no_qcache: bool = False,
82
90
  no_sclimbic: bool = False,
83
91
  no_hthsu: bool = False,
@@ -96,9 +104,13 @@ def post_recon_all_params(
96
104
 
97
105
  Args:
98
106
  subject: Subject identifier to be processed.
107
+ subfields: Run subfields extraction (default behavior).
99
108
  no_subfields: Do not run subfields extraction.
109
+ subregions: Run subregions extraction (default behavior).
100
110
  no_subregions: Do not run subregions extraction.
111
+ cvs: Run CVS processing.
101
112
  no_cvs: Do not run CVS processing (default behavior).
113
+ qcache: Run qcache processing (default behavior).
102
114
  no_qcache: Do not run qcache processing.
103
115
  no_sclimbic: Do not run sclimbic processing.
104
116
  no_hthsu: Do not run hypothalamic subunits processing.
@@ -117,9 +129,13 @@ def post_recon_all_params(
117
129
  params = {
118
130
  "__STYXTYPE__": "post-recon-all",
119
131
  "subject": subject,
132
+ "subfields": subfields,
120
133
  "no_subfields": no_subfields,
134
+ "subregions": subregions,
121
135
  "no_subregions": no_subregions,
136
+ "cvs": cvs,
122
137
  "no_cvs": no_cvs,
138
+ "qcache": qcache,
123
139
  "no_qcache": no_qcache,
124
140
  "no_sclimbic": no_sclimbic,
125
141
  "no_hthsu": no_hthsu,
@@ -151,16 +167,25 @@ def post_recon_all_cargs(
151
167
  Command-line arguments.
152
168
  """
153
169
  cargs = []
170
+ cargs.append("post-recon-all")
154
171
  cargs.extend([
155
172
  "-all",
156
- "post-recon" + params.get("subject")
173
+ params.get("subject")
157
174
  ])
175
+ if params.get("subfields"):
176
+ cargs.append("--subfields")
158
177
  if params.get("no_subfields"):
159
178
  cargs.append("--no-subfields")
179
+ if params.get("subregions"):
180
+ cargs.append("--subregions")
160
181
  if params.get("no_subregions"):
161
182
  cargs.append("--no-subregions")
183
+ if params.get("cvs"):
184
+ cargs.append("--cvs")
162
185
  if params.get("no_cvs"):
163
186
  cargs.append("--no-cvs")
187
+ if params.get("qcache"):
188
+ cargs.append("--qcache")
164
189
  if params.get("no_qcache"):
165
190
  cargs.append("--no-qcache")
166
191
  if params.get("no_sclimbic"):
@@ -236,9 +261,13 @@ def post_recon_all_execute(
236
261
 
237
262
  def post_recon_all(
238
263
  subject: str,
264
+ subfields: bool = False,
239
265
  no_subfields: bool = False,
266
+ subregions: bool = False,
240
267
  no_subregions: bool = False,
268
+ cvs: bool = False,
241
269
  no_cvs: bool = False,
270
+ qcache: bool = False,
242
271
  no_qcache: bool = False,
243
272
  no_sclimbic: bool = False,
244
273
  no_hthsu: bool = False,
@@ -262,9 +291,13 @@ def post_recon_all(
262
291
 
263
292
  Args:
264
293
  subject: Subject identifier to be processed.
294
+ subfields: Run subfields extraction (default behavior).
265
295
  no_subfields: Do not run subfields extraction.
296
+ subregions: Run subregions extraction (default behavior).
266
297
  no_subregions: Do not run subregions extraction.
298
+ cvs: Run CVS processing.
267
299
  no_cvs: Do not run CVS processing (default behavior).
300
+ qcache: Run qcache processing (default behavior).
268
301
  no_qcache: Do not run qcache processing.
269
302
  no_sclimbic: Do not run sclimbic processing.
270
303
  no_hthsu: Do not run hypothalamic subunits processing.
@@ -285,9 +318,13 @@ def post_recon_all(
285
318
  execution = runner.start_execution(POST_RECON_ALL_METADATA)
286
319
  params = post_recon_all_params(
287
320
  subject=subject,
321
+ subfields=subfields,
288
322
  no_subfields=no_subfields,
323
+ subregions=subregions,
289
324
  no_subregions=no_subregions,
325
+ cvs=cvs,
290
326
  no_cvs=no_cvs,
327
+ qcache=qcache,
291
328
  no_qcache=no_qcache,
292
329
  no_sclimbic=no_sclimbic,
293
330
  no_hthsu=no_hthsu,
@@ -6,7 +6,7 @@ import pathlib
6
6
  from styxdefs import *
7
7
 
8
8
  PREDICT_V1_SH_METADATA = Metadata(
9
- id="9dad70e954292a5df8dae706ae1d13ad401174c0.boutiques",
9
+ id="fa5102ea5c78705d9124599a58b8008cca2f5a92.boutiques",
10
10
  name="predict_v1.sh",
11
11
  package="freesurfer",
12
12
  container_image_tag="freesurfer/freesurfer:7.4.1",
@@ -20,6 +20,7 @@ PredictV1ShParameters = typing.TypedDict('PredictV1ShParameters', {
20
20
  "hemisphere": typing.NotRequired[str | None],
21
21
  "print_mode_flag": bool,
22
22
  "subjects": list[str],
23
+ "usage_flag": bool,
23
24
  })
24
25
 
25
26
 
@@ -68,6 +69,7 @@ def predict_v1_sh_params(
68
69
  inflated_surface_flag: bool = False,
69
70
  hemisphere: str | None = None,
70
71
  print_mode_flag: bool = False,
72
+ usage_flag: bool = False,
71
73
  ) -> PredictV1ShParameters:
72
74
  """
73
75
  Build parameters.
@@ -79,6 +81,7 @@ def predict_v1_sh_params(
79
81
  registration (backward compatibility).
80
82
  hemisphere: Hemisphere (rh or lh) default is both hemispheres.
81
83
  print_mode_flag: Print mode (do not run commands, just print them).
84
+ usage_flag: Print usage.
82
85
  Returns:
83
86
  Parameter dictionary
84
87
  """
@@ -87,6 +90,7 @@ def predict_v1_sh_params(
87
90
  "inflated_surface_flag": inflated_surface_flag,
88
91
  "print_mode_flag": print_mode_flag,
89
92
  "subjects": subjects,
93
+ "usage_flag": usage_flag,
90
94
  }
91
95
  if template is not None:
92
96
  params["template"] = template
@@ -124,7 +128,9 @@ def predict_v1_sh_cargs(
124
128
  ])
125
129
  if params.get("print_mode_flag"):
126
130
  cargs.append("-p")
127
- cargs.append("".join(params.get("subjects")) + "...")
131
+ cargs.extend(params.get("subjects"))
132
+ if params.get("usage_flag"):
133
+ cargs.append("-u")
128
134
  return cargs
129
135
 
130
136
 
@@ -177,6 +183,7 @@ def predict_v1_sh(
177
183
  inflated_surface_flag: bool = False,
178
184
  hemisphere: str | None = None,
179
185
  print_mode_flag: bool = False,
186
+ usage_flag: bool = False,
180
187
  runner: Runner | None = None,
181
188
  ) -> PredictV1ShOutputs:
182
189
  """
@@ -193,6 +200,7 @@ def predict_v1_sh(
193
200
  registration (backward compatibility).
194
201
  hemisphere: Hemisphere (rh or lh) default is both hemispheres.
195
202
  print_mode_flag: Print mode (do not run commands, just print them).
203
+ usage_flag: Print usage.
196
204
  runner: Command runner.
197
205
  Returns:
198
206
  NamedTuple of outputs (described in `PredictV1ShOutputs`).
@@ -205,6 +213,7 @@ def predict_v1_sh(
205
213
  hemisphere=hemisphere,
206
214
  print_mode_flag=print_mode_flag,
207
215
  subjects=subjects,
216
+ usage_flag=usage_flag,
208
217
  )
209
218
  return predict_v1_sh_execute(params, execution)
210
219