1111from smriprep .workflows .surfaces import (
1212 init_hcp_morphometrics_wf ,
1313 init_morph_grayords_wf ,
14- init_resample_midthickness_wf ,
14+ init_resample_surfaces_wf ,
1515 init_surface_derivatives_wf ,
1616)
1717
1818from nibabies import config
1919from nibabies .workflows .anatomical .outputs import init_ds_seg_wf
20- from nibabies .workflows .anatomical .surfaces import init_resample_midthickness_dhcp_wf
20+ from nibabies .workflows .anatomical .surfaces import init_resample_surfaces_dhcp_wf
2121
2222if ty .TYPE_CHECKING :
2323 from niworkflows .utils .spaces import SpatialReferences
@@ -57,6 +57,8 @@ def init_infant_anat_apply_wf(
5757 'sulc' ,
5858 'template' ,
5959 'thickness' ,
60+ 'white' ,
61+ 'pial' ,
6062 'midthickness' ,
6163 reg_sphere ,
6264 # template workflow inputs
@@ -185,17 +187,28 @@ def init_infant_anat_apply_wf(
185187 if cifti_output :
186188 hcp_morphometrics_wf = init_hcp_morphometrics_wf (omp_nthreads = omp_nthreads )
187189 if recon_method == 'mcribs' :
188- resample_midthickness_wf = init_resample_midthickness_dhcp_wf (
189- grayord_density = cifti_output
190+ resample_surfaces_wf = init_resample_surfaces_dhcp_wf (
191+ surfaces = ['white' , 'pial' , 'midthickness' ],
192+ grayord_density = cifti_output ,
190193 )
191194 else :
192- resample_midthickness_wf = init_resample_midthickness_wf (
193- grayord_density = cifti_output
195+ resample_surfaces_wf = init_resample_surfaces_wf (
196+ surfaces = [ 'white' , 'pial' , 'midthickness' ], grayord_density = cifti_output
194197 )
195198 morph_grayords_wf = init_morph_grayords_wf (
196199 grayord_density = cifti_output , omp_nthreads = omp_nthreads
197200 )
198201
202+ ds_fsLR_surfaces_wf = init_ds_surfaces_wf (
203+ output_dir = output_dir ,
204+ surfaces = ['white' , 'pial' , 'midthickness' ],
205+ entities = {
206+ 'space' : 'dhcpAsym' if recon_method == 'mcribs' else 'fsLR' ,
207+ 'density' : '32k' if cifti_output == '91k' else '59k' ,
208+ },
209+ name = 'ds_fsLR_surfaces_wf' ,
210+ )
211+
199212 ds_grayord_metrics_wf = init_ds_grayord_metrics_wf (
200213 bids_root = bids_root ,
201214 output_dir = output_dir ,
@@ -213,7 +226,9 @@ def init_infant_anat_apply_wf(
213226 (surface_derivatives_wf , hcp_morphometrics_wf , [
214227 ('outputnode.curv' , 'inputnode.curv' ),
215228 ]),
216- (inputnode , resample_midthickness_wf , [
229+ (inputnode , resample_surfaces_wf , [
230+ ('white' , 'inputnode.white' ),
231+ ('pial' , 'inputnode.pial' ),
217232 ('midthickness' , 'inputnode.midthickness' ),
218233 (reg_sphere , 'inputnode.sphere_reg_fsLR' ),
219234 ]),
@@ -230,12 +245,20 @@ def init_infant_anat_apply_wf(
230245 (hcp_morphometrics_wf , outputnode , [
231246 ('outputnode.roi' , 'roi' ),
232247 ]),
233- (resample_midthickness_wf , morph_grayords_wf , [
248+ (resample_surfaces_wf , morph_grayords_wf , [
234249 ('outputnode.midthickness_fsLR' , 'inputnode.midthickness_fsLR' ),
235250 ]),
236- (resample_midthickness_wf , outputnode , [
251+ (inputnode , ds_fsLR_surfaces_wf , [
252+ ('anat_valid_list' , 'inputnode.source_files' ),
253+ ]),
254+ (resample_surfaces_wf , outputnode , [
237255 ('outputnode.midthickness_fsLR' , 'midthickness_fsLR' ),
238256 ]),
257+ (resample_surfaces_wf , ds_fsLR_surfaces_wf , [
258+ ('outputnode.white_fsLR' , 'inputnode.white' ),
259+ ('outputnode.pial_fsLR' , 'inputnode.pial' ),
260+ ('outputnode.midthickness_fsLR' , 'inputnode.midthickness' ),
261+ ]),
239262 (inputnode , ds_grayord_metrics_wf , [
240263 ('anat_valid_list' , 'inputnode.source_files' ),
241264 ]),
0 commit comments