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.
- niwrap_freesurfer/freesurfer/__init__.py +0 -11
- niwrap_freesurfer/freesurfer/annot2std.py +32 -1
- niwrap_freesurfer/freesurfer/aparc2feat.py +19 -1
- niwrap_freesurfer/freesurfer/bbregister.py +143 -4
- niwrap_freesurfer/freesurfer/bmedits2surf.py +2 -2
- niwrap_freesurfer/freesurfer/compute_interrater_variability_csh.py +20 -2
- niwrap_freesurfer/freesurfer/compute_label_volumes_csh.py +17 -2
- niwrap_freesurfer/freesurfer/conf2hires.py +59 -1
- niwrap_freesurfer/freesurfer/connected_components.py +34 -2
- niwrap_freesurfer/freesurfer/dcmdir_info_mgh.py +3 -2
- niwrap_freesurfer/freesurfer/dcmdjpeg_fs.py +2 -2
- niwrap_freesurfer/freesurfer/dcmdrle_fs.py +2 -2
- niwrap_freesurfer/freesurfer/dicom_rename.py +21 -2
- niwrap_freesurfer/freesurfer/dmri_bset.py +14 -2
- niwrap_freesurfer/freesurfer/dmri_forrest.py +10 -1
- niwrap_freesurfer/freesurfer/dmri_mergepaths.py +2 -2
- niwrap_freesurfer/freesurfer/dmri_pathstats.py +2 -2
- niwrap_freesurfer/freesurfer/dmri_stats_ac.py +1 -3
- niwrap_freesurfer/freesurfer/exvivo_hemi_proc.py +10 -1
- niwrap_freesurfer/freesurfer/fiducials_calibration.py +15 -1
- niwrap_freesurfer/freesurfer/fiducials_correction.py +10 -3
- niwrap_freesurfer/freesurfer/fix_subject_corrected_rh.py +3 -2
- niwrap_freesurfer/freesurfer/fix_subject_rh.py +3 -2
- niwrap_freesurfer/freesurfer/fs_check_version.py +19 -1
- niwrap_freesurfer/freesurfer/fs_spmreg_glnxa64.py +19 -4
- niwrap_freesurfer/freesurfer/fs_temp_file.py +36 -1
- niwrap_freesurfer/freesurfer/fs_update.py +19 -1
- niwrap_freesurfer/freesurfer/fsl_sub_mgh.py +1 -2
- niwrap_freesurfer/freesurfer/fsr_import.py +55 -5
- niwrap_freesurfer/freesurfer/fvcompare.py +10 -1
- niwrap_freesurfer/freesurfer/gca_apply.py +3 -2
- niwrap_freesurfer/freesurfer/gdcmconv_fs.py +2 -2
- niwrap_freesurfer/freesurfer/get_label_thickness.py +1 -2
- niwrap_freesurfer/freesurfer/groupstats.py +97 -1
- niwrap_freesurfer/freesurfer/groupstatsdiff.py +4 -4
- niwrap_freesurfer/freesurfer/hiam_make_surfaces.py +1 -2
- niwrap_freesurfer/freesurfer/histo_synthesize.py +1 -2
- niwrap_freesurfer/freesurfer/inflate_subject_lh.py +3 -2
- niwrap_freesurfer/freesurfer/inflate_subject_new_lh.py +3 -3
- niwrap_freesurfer/freesurfer/inflate_subject_new_rh.py +3 -2
- niwrap_freesurfer/freesurfer/inflate_subject_rh.py +3 -2
- niwrap_freesurfer/freesurfer/inflate_subject_sc.py +28 -3
- niwrap_freesurfer/freesurfer/irepifitvol_glnx64.py +2 -2
- niwrap_freesurfer/freesurfer/is_surface.py +3 -2
- niwrap_freesurfer/freesurfer/isolate_labels_csh.py +17 -2
- niwrap_freesurfer/freesurfer/label_subject_flash.py +2 -2
- niwrap_freesurfer/freesurfer/label_subject_mixed.py +2 -2
- niwrap_freesurfer/freesurfer/listsubj.py +82 -2
- niwrap_freesurfer/freesurfer/long_stats_combine.py +1 -2
- niwrap_freesurfer/freesurfer/long_stats_tps.py +7 -7
- niwrap_freesurfer/freesurfer/long_submit_jobs.py +1 -5
- niwrap_freesurfer/freesurfer/longmc.py +10 -1
- niwrap_freesurfer/freesurfer/lta_convert.py +157 -1
- niwrap_freesurfer/freesurfer/make_average_volume.py +19 -1
- niwrap_freesurfer/freesurfer/make_folding_atlas.py +10 -1
- niwrap_freesurfer/freesurfer/map_all_labels_lh.py +11 -3
- niwrap_freesurfer/freesurfer/map_central_sulcus.py +2 -2
- niwrap_freesurfer/freesurfer/merge_stats_tables.py +58 -35
- niwrap_freesurfer/freesurfer/mideface.py +121 -14
- niwrap_freesurfer/freesurfer/mni152reg.py +2 -2
- niwrap_freesurfer/freesurfer/morph_only_subject_lh.py +3 -2
- niwrap_freesurfer/freesurfer/morph_only_subject_rh.py +3 -2
- niwrap_freesurfer/freesurfer/morph_rgb_lh.py +3 -2
- niwrap_freesurfer/freesurfer/morph_rgb_rh.py +3 -2
- niwrap_freesurfer/freesurfer/morph_subject_lh.py +3 -2
- niwrap_freesurfer/freesurfer/morph_subject_rh.py +3 -2
- niwrap_freesurfer/freesurfer/morph_tables_lh.py +3 -2
- niwrap_freesurfer/freesurfer/morph_tables_rh.py +3 -2
- niwrap_freesurfer/freesurfer/mri_aparc2aseg.py +10 -1
- niwrap_freesurfer/freesurfer/mri_apply_bias.py +1 -2
- niwrap_freesurfer/freesurfer/mri_average.py +10 -1
- niwrap_freesurfer/freesurfer/mri_brain_volume.py +23 -2
- niwrap_freesurfer/freesurfer/mri_ca_label.py +603 -2
- niwrap_freesurfer/freesurfer/mri_ca_train.py +10 -1
- niwrap_freesurfer/freesurfer/mri_convert.py +188 -2
- niwrap_freesurfer/freesurfer/mri_fuse_segmentations.py +10 -3
- niwrap_freesurfer/freesurfer/mri_gcab_train.py +15 -1
- niwrap_freesurfer/freesurfer/mri_gdfglm.py +13 -1
- niwrap_freesurfer/freesurfer/mri_gtmpvc.py +19 -1
- niwrap_freesurfer/freesurfer/mri_hausdorff_dist.py +1 -2
- niwrap_freesurfer/freesurfer/mri_head.py +19 -1
- niwrap_freesurfer/freesurfer/mri_jacobian.py +10 -1
- niwrap_freesurfer/freesurfer/mri_nl_align.py +27 -1
- niwrap_freesurfer/freesurfer/mri_relabel_nonwm_hypos.py +3 -3
- niwrap_freesurfer/freesurfer/mri_reorient_lr_csh.py +2 -2
- niwrap_freesurfer/freesurfer/mri_seg_diff.py +14 -1
- niwrap_freesurfer/freesurfer/mri_twoclass.py +1 -2
- niwrap_freesurfer/freesurfer/mri_validate_skull_stripped.py +2 -2
- niwrap_freesurfer/freesurfer/mri_warp_convert.py +131 -1
- niwrap_freesurfer/freesurfer/mri_z2p.py +37 -1
- niwrap_freesurfer/freesurfer/mris_add_template.py +11 -1
- niwrap_freesurfer/freesurfer/mris_apply_reg.py +1 -2
- niwrap_freesurfer/freesurfer/mris_curvature_stats.py +419 -7
- niwrap_freesurfer/freesurfer/mris_diff.py +255 -1
- niwrap_freesurfer/freesurfer/mris_distance_map.py +1 -2
- niwrap_freesurfer/freesurfer/mris_errors.py +1 -2
- niwrap_freesurfer/freesurfer/mris_info.py +45 -46
- niwrap_freesurfer/freesurfer/mris_label_calc.py +14 -1
- niwrap_freesurfer/freesurfer/mris_map_cuts.py +1 -2
- niwrap_freesurfer/freesurfer/mris_nudge.py +1 -2
- niwrap_freesurfer/freesurfer/mris_place_surface.py +1 -2
- niwrap_freesurfer/freesurfer/mris_preproc.py +16 -2
- niwrap_freesurfer/freesurfer/mris_spherical_average.py +93 -8
- niwrap_freesurfer/freesurfer/mris_thickness_diff.py +1 -5
- niwrap_freesurfer/freesurfer/mris_volmask_vtk.py +2 -2
- niwrap_freesurfer/freesurfer/pctsurfcon.py +2 -2
- niwrap_freesurfer/freesurfer/plot_structure_stats_tcl.py +2 -2
- niwrap_freesurfer/freesurfer/post_recon_all.py +39 -2
- niwrap_freesurfer/freesurfer/predict_v1_sh.py +11 -2
- niwrap_freesurfer/freesurfer/print_unique_labels_csh.py +34 -3
- niwrap_freesurfer/freesurfer/rbbr.py +37 -1
- niwrap_freesurfer/freesurfer/rca_base_init.py +3 -2
- niwrap_freesurfer/freesurfer/rca_config.py +3 -2
- niwrap_freesurfer/freesurfer/rca_config2csh.py +3 -2
- niwrap_freesurfer/freesurfer/recon_all.py +75 -1
- niwrap_freesurfer/freesurfer/register_elderly_subject.py +2 -2
- niwrap_freesurfer/freesurfer/reinflate_subject_lh.py +3 -2
- niwrap_freesurfer/freesurfer/reinflate_subject_rh.py +3 -2
- niwrap_freesurfer/freesurfer/renormalize_subject_keep_editting.py +13 -1
- niwrap_freesurfer/freesurfer/rtview.py +34 -1
- niwrap_freesurfer/freesurfer/run_qdec_glm.py +3 -2
- niwrap_freesurfer/freesurfer/samseg.py +14 -1
- niwrap_freesurfer/freesurfer/samseg_long.py +17 -8
- niwrap_freesurfer/freesurfer/samsegmesh2surf.py +5 -7
- niwrap_freesurfer/freesurfer/seg2filled.py +4 -4
- niwrap_freesurfer/freesurfer/segment_subject.py +2 -2
- niwrap_freesurfer/freesurfer/segment_subject_old_skull_strip.py +4 -4
- niwrap_freesurfer/freesurfer/segment_subject_sc.py +4 -4
- niwrap_freesurfer/freesurfer/segment_subject_t2_auto_estimate_alveus_ml.py +11 -1
- niwrap_freesurfer/freesurfer/segpons.py +2 -2
- niwrap_freesurfer/freesurfer/sphere_subject_lh.py +3 -2
- niwrap_freesurfer/freesurfer/sphere_subject_rh.py +3 -2
- niwrap_freesurfer/freesurfer/talairach.py +4 -4
- niwrap_freesurfer/freesurfer/trac_all.py +283 -1
- niwrap_freesurfer/freesurfer/train_gcs_atlas.py +19 -1
- niwrap_freesurfer/freesurfer/update_needed.py +13 -2
- niwrap_freesurfer/freesurfer/vertexvol.py +19 -1
- niwrap_freesurfer/freesurfer/vol2subfield.py +72 -1
- niwrap_freesurfer/freesurfer/wmsaseg.py +2 -2
- {niwrap_freesurfer-0.5.1.dist-info → niwrap_freesurfer-0.5.2.dist-info}/METADATA +1 -1
- {niwrap_freesurfer-0.5.1.dist-info → niwrap_freesurfer-0.5.2.dist-info}/RECORD +142 -153
- niwrap_freesurfer/freesurfer/bet_fsl.py +0 -441
- niwrap_freesurfer/freesurfer/epidewarp_fsl.py +0 -439
- niwrap_freesurfer/freesurfer/flirt_fsl.py +0 -604
- niwrap_freesurfer/freesurfer/fscalc_fsl.py +0 -196
- niwrap_freesurfer/freesurfer/fsfirst_fsl.py +0 -166
- niwrap_freesurfer/freesurfer/fslmaths_fsl.py +0 -196
- niwrap_freesurfer/freesurfer/fslorient_fsl.py +0 -207
- niwrap_freesurfer/freesurfer/fslswapdim_fsl.py +0 -216
- niwrap_freesurfer/freesurfer/fspython.py +0 -175
- niwrap_freesurfer/freesurfer/mri_motion_correct_fsl.py +0 -185
- niwrap_freesurfer/freesurfer/slicetimer_fsl.py +0 -291
- {niwrap_freesurfer-0.5.1.dist-info → niwrap_freesurfer-0.5.2.dist-info}/WHEEL +0 -0
|
@@ -1,439 +0,0 @@
|
|
|
1
|
-
# This file was auto generated by Styx.
|
|
2
|
-
# Do not edit this file directly.
|
|
3
|
-
|
|
4
|
-
import typing
|
|
5
|
-
import pathlib
|
|
6
|
-
from styxdefs import *
|
|
7
|
-
|
|
8
|
-
EPIDEWARP_FSL_METADATA = Metadata(
|
|
9
|
-
id="0b6f576dc06a529efd6bb20065d0ee4307b24409.boutiques",
|
|
10
|
-
name="epidewarp.fsl",
|
|
11
|
-
package="freesurfer",
|
|
12
|
-
container_image_tag="freesurfer/freesurfer:7.4.1",
|
|
13
|
-
)
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
EpidewarpFslParameters = typing.TypedDict('EpidewarpFslParameters', {
|
|
17
|
-
"__STYX_TYPE__": typing.Literal["epidewarp.fsl"],
|
|
18
|
-
"mag": typing.NotRequired[InputPathType | None],
|
|
19
|
-
"dph": typing.NotRequired[InputPathType | None],
|
|
20
|
-
"ph": typing.NotRequired[InputPathType | None],
|
|
21
|
-
"complex": typing.NotRequired[list[float] | None],
|
|
22
|
-
"exf": typing.NotRequired[InputPathType | None],
|
|
23
|
-
"epi": typing.NotRequired[InputPathType | None],
|
|
24
|
-
"tediff": typing.NotRequired[float | None],
|
|
25
|
-
"esp": typing.NotRequired[float | None],
|
|
26
|
-
"perev": bool,
|
|
27
|
-
"sigma": typing.NotRequired[float | None],
|
|
28
|
-
"vsm_fwhm": typing.NotRequired[float | None],
|
|
29
|
-
"vsm": str,
|
|
30
|
-
"vsmmag": typing.NotRequired[str | None],
|
|
31
|
-
"exfdw": typing.NotRequired[str | None],
|
|
32
|
-
"epidw": typing.NotRequired[str | None],
|
|
33
|
-
"nomagexfreg": bool,
|
|
34
|
-
"head": bool,
|
|
35
|
-
"tmpdir": typing.NotRequired[str | None],
|
|
36
|
-
"log": typing.NotRequired[str | None],
|
|
37
|
-
"nocleanup": bool,
|
|
38
|
-
"cleanup": bool,
|
|
39
|
-
"debug": bool,
|
|
40
|
-
})
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
def dyn_cargs(
|
|
44
|
-
t: str,
|
|
45
|
-
) -> typing.Any:
|
|
46
|
-
"""
|
|
47
|
-
Get build cargs function by command type.
|
|
48
|
-
|
|
49
|
-
Args:
|
|
50
|
-
t: Command type.
|
|
51
|
-
Returns:
|
|
52
|
-
Build cargs function.
|
|
53
|
-
"""
|
|
54
|
-
return {
|
|
55
|
-
"epidewarp.fsl": epidewarp_fsl_cargs,
|
|
56
|
-
}.get(t)
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
def dyn_outputs(
|
|
60
|
-
t: str,
|
|
61
|
-
) -> typing.Any:
|
|
62
|
-
"""
|
|
63
|
-
Get build outputs function by command type.
|
|
64
|
-
|
|
65
|
-
Args:
|
|
66
|
-
t: Command type.
|
|
67
|
-
Returns:
|
|
68
|
-
Build outputs function.
|
|
69
|
-
"""
|
|
70
|
-
return {
|
|
71
|
-
"epidewarp.fsl": epidewarp_fsl_outputs,
|
|
72
|
-
}.get(t)
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
class EpidewarpFslOutputs(typing.NamedTuple):
|
|
76
|
-
"""
|
|
77
|
-
Output object returned when calling `epidewarp_fsl(...)`.
|
|
78
|
-
"""
|
|
79
|
-
root: OutputPathType
|
|
80
|
-
"""Output root folder. This is the root folder for all outputs."""
|
|
81
|
-
vsm_output: OutputPathType
|
|
82
|
-
"""Voxel Shift Map output"""
|
|
83
|
-
exfdw_output: OutputPathType | None
|
|
84
|
-
"""Dewarped example func volume"""
|
|
85
|
-
epidw_output: OutputPathType | None
|
|
86
|
-
"""Dewarped EPI volume"""
|
|
87
|
-
vsmmag_output: OutputPathType | None
|
|
88
|
-
"""Voxel shift map in mag space output"""
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
def epidewarp_fsl_params(
|
|
92
|
-
vsm: str,
|
|
93
|
-
mag: InputPathType | None = None,
|
|
94
|
-
dph: InputPathType | None = None,
|
|
95
|
-
ph: InputPathType | None = None,
|
|
96
|
-
complex_: list[float] | None = None,
|
|
97
|
-
exf: InputPathType | None = None,
|
|
98
|
-
epi: InputPathType | None = None,
|
|
99
|
-
tediff: float | None = None,
|
|
100
|
-
esp: float | None = None,
|
|
101
|
-
perev: bool = False,
|
|
102
|
-
sigma: float | None = None,
|
|
103
|
-
vsm_fwhm: float | None = None,
|
|
104
|
-
vsmmag: str | None = None,
|
|
105
|
-
exfdw: str | None = None,
|
|
106
|
-
epidw: str | None = None,
|
|
107
|
-
nomagexfreg: bool = False,
|
|
108
|
-
head: bool = False,
|
|
109
|
-
tmpdir: str | None = None,
|
|
110
|
-
log: str | None = None,
|
|
111
|
-
nocleanup: bool = False,
|
|
112
|
-
cleanup: bool = False,
|
|
113
|
-
debug: bool = False,
|
|
114
|
-
) -> EpidewarpFslParameters:
|
|
115
|
-
"""
|
|
116
|
-
Build parameters.
|
|
117
|
-
|
|
118
|
-
Args:
|
|
119
|
-
vsm: Voxel shift map (required).
|
|
120
|
-
mag: B0 magnitude volume.
|
|
121
|
-
dph: B0 phase difference volume.
|
|
122
|
-
ph: B0 phase volume.
|
|
123
|
-
complex_: B0 map in complex values: real1 imag1 real2 imag2.
|
|
124
|
-
exf: Example func volume.
|
|
125
|
-
epi: EPI volume to unwarp.
|
|
126
|
-
tediff: Difference in B0 field map TEs.
|
|
127
|
-
esp: EPI echo spacing.
|
|
128
|
-
perev: Assume reversed phase encode direction.
|
|
129
|
-
sigma: 2D spatial gaussian smoothing stddev (default 2mm).
|
|
130
|
-
vsm_fwhm: Allows VSM to be extended outside of the mask.
|
|
131
|
-
vsmmag: Voxel shift map in mag space.
|
|
132
|
-
exfdw: Dewarped example func volume.
|
|
133
|
-
epidw: Dewarped EPI volume.
|
|
134
|
-
nomagexfreg: Assume mag and exf are in register.
|
|
135
|
-
head: Mask to head instead of brain.
|
|
136
|
-
tmpdir: Save intermediate results here.
|
|
137
|
-
log: Use logfile instead of default.
|
|
138
|
-
nocleanup: Do not delete tmpdir.
|
|
139
|
-
cleanup: Force deletion of tmpdir.
|
|
140
|
-
debug: Prints copious amounts to the screen.
|
|
141
|
-
Returns:
|
|
142
|
-
Parameter dictionary
|
|
143
|
-
"""
|
|
144
|
-
params = {
|
|
145
|
-
"__STYXTYPE__": "epidewarp.fsl",
|
|
146
|
-
"perev": perev,
|
|
147
|
-
"vsm": vsm,
|
|
148
|
-
"nomagexfreg": nomagexfreg,
|
|
149
|
-
"head": head,
|
|
150
|
-
"nocleanup": nocleanup,
|
|
151
|
-
"cleanup": cleanup,
|
|
152
|
-
"debug": debug,
|
|
153
|
-
}
|
|
154
|
-
if mag is not None:
|
|
155
|
-
params["mag"] = mag
|
|
156
|
-
if dph is not None:
|
|
157
|
-
params["dph"] = dph
|
|
158
|
-
if ph is not None:
|
|
159
|
-
params["ph"] = ph
|
|
160
|
-
if complex_ is not None:
|
|
161
|
-
params["complex"] = complex_
|
|
162
|
-
if exf is not None:
|
|
163
|
-
params["exf"] = exf
|
|
164
|
-
if epi is not None:
|
|
165
|
-
params["epi"] = epi
|
|
166
|
-
if tediff is not None:
|
|
167
|
-
params["tediff"] = tediff
|
|
168
|
-
if esp is not None:
|
|
169
|
-
params["esp"] = esp
|
|
170
|
-
if sigma is not None:
|
|
171
|
-
params["sigma"] = sigma
|
|
172
|
-
if vsm_fwhm is not None:
|
|
173
|
-
params["vsm_fwhm"] = vsm_fwhm
|
|
174
|
-
if vsmmag is not None:
|
|
175
|
-
params["vsmmag"] = vsmmag
|
|
176
|
-
if exfdw is not None:
|
|
177
|
-
params["exfdw"] = exfdw
|
|
178
|
-
if epidw is not None:
|
|
179
|
-
params["epidw"] = epidw
|
|
180
|
-
if tmpdir is not None:
|
|
181
|
-
params["tmpdir"] = tmpdir
|
|
182
|
-
if log is not None:
|
|
183
|
-
params["log"] = log
|
|
184
|
-
return params
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
def epidewarp_fsl_cargs(
|
|
188
|
-
params: EpidewarpFslParameters,
|
|
189
|
-
execution: Execution,
|
|
190
|
-
) -> list[str]:
|
|
191
|
-
"""
|
|
192
|
-
Build command-line arguments from parameters.
|
|
193
|
-
|
|
194
|
-
Args:
|
|
195
|
-
params: The parameters.
|
|
196
|
-
execution: The execution object for resolving input paths.
|
|
197
|
-
Returns:
|
|
198
|
-
Command-line arguments.
|
|
199
|
-
"""
|
|
200
|
-
cargs = []
|
|
201
|
-
cargs.append("epidewarp.fsl")
|
|
202
|
-
if params.get("mag") is not None:
|
|
203
|
-
cargs.extend([
|
|
204
|
-
"--mag",
|
|
205
|
-
execution.input_file(params.get("mag"))
|
|
206
|
-
])
|
|
207
|
-
if params.get("dph") is not None:
|
|
208
|
-
cargs.extend([
|
|
209
|
-
"--dph",
|
|
210
|
-
execution.input_file(params.get("dph"))
|
|
211
|
-
])
|
|
212
|
-
if params.get("ph") is not None:
|
|
213
|
-
cargs.extend([
|
|
214
|
-
"--ph",
|
|
215
|
-
execution.input_file(params.get("ph"))
|
|
216
|
-
])
|
|
217
|
-
if params.get("complex") is not None:
|
|
218
|
-
cargs.extend([
|
|
219
|
-
"--complex",
|
|
220
|
-
*map(str, params.get("complex"))
|
|
221
|
-
])
|
|
222
|
-
if params.get("exf") is not None:
|
|
223
|
-
cargs.extend([
|
|
224
|
-
"--exf",
|
|
225
|
-
execution.input_file(params.get("exf"))
|
|
226
|
-
])
|
|
227
|
-
if params.get("epi") is not None:
|
|
228
|
-
cargs.extend([
|
|
229
|
-
"--epi",
|
|
230
|
-
execution.input_file(params.get("epi"))
|
|
231
|
-
])
|
|
232
|
-
if params.get("tediff") is not None:
|
|
233
|
-
cargs.extend([
|
|
234
|
-
"--tediff",
|
|
235
|
-
str(params.get("tediff"))
|
|
236
|
-
])
|
|
237
|
-
if params.get("esp") is not None:
|
|
238
|
-
cargs.extend([
|
|
239
|
-
"--esp",
|
|
240
|
-
str(params.get("esp"))
|
|
241
|
-
])
|
|
242
|
-
if params.get("perev"):
|
|
243
|
-
cargs.append("--perev")
|
|
244
|
-
if params.get("sigma") is not None:
|
|
245
|
-
cargs.extend([
|
|
246
|
-
"--sigma",
|
|
247
|
-
str(params.get("sigma"))
|
|
248
|
-
])
|
|
249
|
-
if params.get("vsm_fwhm") is not None:
|
|
250
|
-
cargs.extend([
|
|
251
|
-
"--vsm-fwhm",
|
|
252
|
-
str(params.get("vsm_fwhm"))
|
|
253
|
-
])
|
|
254
|
-
cargs.extend([
|
|
255
|
-
"--vsm",
|
|
256
|
-
params.get("vsm")
|
|
257
|
-
])
|
|
258
|
-
if params.get("vsmmag") is not None:
|
|
259
|
-
cargs.extend([
|
|
260
|
-
"--vsmmag",
|
|
261
|
-
params.get("vsmmag")
|
|
262
|
-
])
|
|
263
|
-
if params.get("exfdw") is not None:
|
|
264
|
-
cargs.extend([
|
|
265
|
-
"--exfdw",
|
|
266
|
-
params.get("exfdw")
|
|
267
|
-
])
|
|
268
|
-
if params.get("epidw") is not None:
|
|
269
|
-
cargs.extend([
|
|
270
|
-
"--epidw",
|
|
271
|
-
params.get("epidw")
|
|
272
|
-
])
|
|
273
|
-
if params.get("nomagexfreg"):
|
|
274
|
-
cargs.append("--nomagexfreg")
|
|
275
|
-
if params.get("head"):
|
|
276
|
-
cargs.append("--head")
|
|
277
|
-
if params.get("tmpdir") is not None:
|
|
278
|
-
cargs.extend([
|
|
279
|
-
"--tmpdir",
|
|
280
|
-
params.get("tmpdir")
|
|
281
|
-
])
|
|
282
|
-
if params.get("log") is not None:
|
|
283
|
-
cargs.extend([
|
|
284
|
-
"--log",
|
|
285
|
-
params.get("log")
|
|
286
|
-
])
|
|
287
|
-
if params.get("nocleanup"):
|
|
288
|
-
cargs.append("--nocleanup")
|
|
289
|
-
if params.get("cleanup"):
|
|
290
|
-
cargs.append("--cleanup")
|
|
291
|
-
if params.get("debug"):
|
|
292
|
-
cargs.append("--debug")
|
|
293
|
-
return cargs
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
def epidewarp_fsl_outputs(
|
|
297
|
-
params: EpidewarpFslParameters,
|
|
298
|
-
execution: Execution,
|
|
299
|
-
) -> EpidewarpFslOutputs:
|
|
300
|
-
"""
|
|
301
|
-
Build outputs object containing output file paths and possibly stdout/stderr.
|
|
302
|
-
|
|
303
|
-
Args:
|
|
304
|
-
params: The parameters.
|
|
305
|
-
execution: The execution object for resolving input paths.
|
|
306
|
-
Returns:
|
|
307
|
-
Outputs object.
|
|
308
|
-
"""
|
|
309
|
-
ret = EpidewarpFslOutputs(
|
|
310
|
-
root=execution.output_file("."),
|
|
311
|
-
vsm_output=execution.output_file(params.get("vsm") + ".nii.gz"),
|
|
312
|
-
exfdw_output=execution.output_file(params.get("exfdw") + ".nii.gz") if (params.get("exfdw") is not None) else None,
|
|
313
|
-
epidw_output=execution.output_file(params.get("epidw") + ".nii.gz") if (params.get("epidw") is not None) else None,
|
|
314
|
-
vsmmag_output=execution.output_file(params.get("vsmmag") + ".nii.gz") if (params.get("vsmmag") is not None) else None,
|
|
315
|
-
)
|
|
316
|
-
return ret
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
def epidewarp_fsl_execute(
|
|
320
|
-
params: EpidewarpFslParameters,
|
|
321
|
-
execution: Execution,
|
|
322
|
-
) -> EpidewarpFslOutputs:
|
|
323
|
-
"""
|
|
324
|
-
Front end for FSL's PRELUDE and FUGUE programs to correct B0 distortion in EPI
|
|
325
|
-
scans.
|
|
326
|
-
|
|
327
|
-
Author: FreeSurfer Developers
|
|
328
|
-
|
|
329
|
-
URL: https://github.com/freesurfer/freesurfer
|
|
330
|
-
|
|
331
|
-
Args:
|
|
332
|
-
params: The parameters.
|
|
333
|
-
execution: The execution object.
|
|
334
|
-
Returns:
|
|
335
|
-
NamedTuple of outputs (described in `EpidewarpFslOutputs`).
|
|
336
|
-
"""
|
|
337
|
-
params = execution.params(params)
|
|
338
|
-
cargs = epidewarp_fsl_cargs(params, execution)
|
|
339
|
-
ret = epidewarp_fsl_outputs(params, execution)
|
|
340
|
-
execution.run(cargs)
|
|
341
|
-
return ret
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
def epidewarp_fsl(
|
|
345
|
-
vsm: str,
|
|
346
|
-
mag: InputPathType | None = None,
|
|
347
|
-
dph: InputPathType | None = None,
|
|
348
|
-
ph: InputPathType | None = None,
|
|
349
|
-
complex_: list[float] | None = None,
|
|
350
|
-
exf: InputPathType | None = None,
|
|
351
|
-
epi: InputPathType | None = None,
|
|
352
|
-
tediff: float | None = None,
|
|
353
|
-
esp: float | None = None,
|
|
354
|
-
perev: bool = False,
|
|
355
|
-
sigma: float | None = None,
|
|
356
|
-
vsm_fwhm: float | None = None,
|
|
357
|
-
vsmmag: str | None = None,
|
|
358
|
-
exfdw: str | None = None,
|
|
359
|
-
epidw: str | None = None,
|
|
360
|
-
nomagexfreg: bool = False,
|
|
361
|
-
head: bool = False,
|
|
362
|
-
tmpdir: str | None = None,
|
|
363
|
-
log: str | None = None,
|
|
364
|
-
nocleanup: bool = False,
|
|
365
|
-
cleanup: bool = False,
|
|
366
|
-
debug: bool = False,
|
|
367
|
-
runner: Runner | None = None,
|
|
368
|
-
) -> EpidewarpFslOutputs:
|
|
369
|
-
"""
|
|
370
|
-
Front end for FSL's PRELUDE and FUGUE programs to correct B0 distortion in EPI
|
|
371
|
-
scans.
|
|
372
|
-
|
|
373
|
-
Author: FreeSurfer Developers
|
|
374
|
-
|
|
375
|
-
URL: https://github.com/freesurfer/freesurfer
|
|
376
|
-
|
|
377
|
-
Args:
|
|
378
|
-
vsm: Voxel shift map (required).
|
|
379
|
-
mag: B0 magnitude volume.
|
|
380
|
-
dph: B0 phase difference volume.
|
|
381
|
-
ph: B0 phase volume.
|
|
382
|
-
complex_: B0 map in complex values: real1 imag1 real2 imag2.
|
|
383
|
-
exf: Example func volume.
|
|
384
|
-
epi: EPI volume to unwarp.
|
|
385
|
-
tediff: Difference in B0 field map TEs.
|
|
386
|
-
esp: EPI echo spacing.
|
|
387
|
-
perev: Assume reversed phase encode direction.
|
|
388
|
-
sigma: 2D spatial gaussian smoothing stddev (default 2mm).
|
|
389
|
-
vsm_fwhm: Allows VSM to be extended outside of the mask.
|
|
390
|
-
vsmmag: Voxel shift map in mag space.
|
|
391
|
-
exfdw: Dewarped example func volume.
|
|
392
|
-
epidw: Dewarped EPI volume.
|
|
393
|
-
nomagexfreg: Assume mag and exf are in register.
|
|
394
|
-
head: Mask to head instead of brain.
|
|
395
|
-
tmpdir: Save intermediate results here.
|
|
396
|
-
log: Use logfile instead of default.
|
|
397
|
-
nocleanup: Do not delete tmpdir.
|
|
398
|
-
cleanup: Force deletion of tmpdir.
|
|
399
|
-
debug: Prints copious amounts to the screen.
|
|
400
|
-
runner: Command runner.
|
|
401
|
-
Returns:
|
|
402
|
-
NamedTuple of outputs (described in `EpidewarpFslOutputs`).
|
|
403
|
-
"""
|
|
404
|
-
runner = runner or get_global_runner()
|
|
405
|
-
execution = runner.start_execution(EPIDEWARP_FSL_METADATA)
|
|
406
|
-
params = epidewarp_fsl_params(
|
|
407
|
-
mag=mag,
|
|
408
|
-
dph=dph,
|
|
409
|
-
ph=ph,
|
|
410
|
-
complex_=complex_,
|
|
411
|
-
exf=exf,
|
|
412
|
-
epi=epi,
|
|
413
|
-
tediff=tediff,
|
|
414
|
-
esp=esp,
|
|
415
|
-
perev=perev,
|
|
416
|
-
sigma=sigma,
|
|
417
|
-
vsm_fwhm=vsm_fwhm,
|
|
418
|
-
vsm=vsm,
|
|
419
|
-
vsmmag=vsmmag,
|
|
420
|
-
exfdw=exfdw,
|
|
421
|
-
epidw=epidw,
|
|
422
|
-
nomagexfreg=nomagexfreg,
|
|
423
|
-
head=head,
|
|
424
|
-
tmpdir=tmpdir,
|
|
425
|
-
log=log,
|
|
426
|
-
nocleanup=nocleanup,
|
|
427
|
-
cleanup=cleanup,
|
|
428
|
-
debug=debug,
|
|
429
|
-
)
|
|
430
|
-
return epidewarp_fsl_execute(params, execution)
|
|
431
|
-
|
|
432
|
-
|
|
433
|
-
__all__ = [
|
|
434
|
-
"EPIDEWARP_FSL_METADATA",
|
|
435
|
-
"EpidewarpFslOutputs",
|
|
436
|
-
"EpidewarpFslParameters",
|
|
437
|
-
"epidewarp_fsl",
|
|
438
|
-
"epidewarp_fsl_params",
|
|
439
|
-
]
|