Fmriprep crash on lta_convert (fsl_to_lta)

After 24+ hours of computing, fmriprep crashes.

Here is the log for the node that crashes:

Node: _fsl_to_lta1
Working directory: /media/cp983411/volatile3/work/fmriprep_wf/single_subject_04_wf/func_preproc_ses_28_task_LePetitPrince_dir_pa_run_09_wf/bold_reg_wf/fsl_bbr_wf/fsl_to_lta/mapflow/_fsl_to_lta1

Node inputs:

args =
environ = {}
in_fsl = /media/cp983411/volatile3/work/fmriprep_wf/single_subject_04_wf/func_preproc_ses_28_task_LePetitPrince_dir_pa_run_09_wf/bold_reg_wf/fsl_bbr_wf/flt_bbr_init/uni_xform_masked_flirt.mat
in_itk =
in_lta =
in_mni =
in_niftyreg =
in_reg =
invert =
ltavox2vox =
out_fsl =
out_itk =
out_lta = True
out_mni =
out_reg =
source_file = /media/cp983411/volatile3/work/fmriprep_wf/single_subject_04_wf/func_preproc_ses_28_task_LePetitPrince_dir_pa_run_09_wf/initial_boldref_wf/enhance_and_skullstrip_bold_wf/apply_mask/uni_xform_masked.nii.gz
target_conform =
target_file = /media/cp983411/volatile3/work/fmriprep_wf/single_subject_04_wf/func_preproc_ses_28_task_LePetitPrince_dir_pa_run_09_wf/t1w_brain/sub-04_ses-08_acq-highres_T1w_ras_valid_corrected_xform_masked.nii.gz

Traceback (most recent call last):
File “/usr/local/miniconda/lib/python3.7/site-packages/nipype/pipeline/plugins/multiproc.py”, line 67, in run_node
result[“result”] = node.run(updatehash=updatehash)
File “/usr/local/miniconda/lib/python3.7/site-packages/nipype/pipeline/engine/nodes.py”, line 516, in run
result = self._run_interface(execute=True)
File “/usr/local/miniconda/lib/python3.7/site-packages/nipype/pipeline/engine/nodes.py”, line 635, in _run_interface
return self._run_command(execute)
File “/usr/local/miniconda/lib/python3.7/site-packages/nipype/pipeline/engine/nodes.py”, line 741, in _run_command
result = self._interface.run(cwd=outdir)
File “/usr/local/miniconda/lib/python3.7/site-packages/nipype/interfaces/base/core.py”, line 428, in run
runtime = self._run_interface(runtime)
File “/usr/local/miniconda/lib/python3.7/site-packages/nipype/interfaces/base/core.py”, line 822, in _run_interface
self.raise_exception(runtime)
File “/usr/local/miniconda/lib/python3.7/site-packages/nipype/interfaces/base/core.py”, line 753, in raise_exception
).format(**runtime.dictcopy())
RuntimeError: Command:
lta_convert --infsl /media/cp983411/volatile3/work/fmriprep_wf/single_subject_04_wf/func_preproc_ses_28_task_LePetitPrince_dir_pa_run_09_wf/bold_reg_wf/fsl_bbr_wf/flt_bbr_init/uni_xform_masked_flirt.mat --outlta /media/cp983411/volatile3/work/fmriprep_wf/single_subject_04_wf/func_preproc_ses_28_task_LePetitPrince_dir_pa_run_09_wf/bold_reg_wf/fsl_bbr_wf/fsl_to_lta/mapflow/_fsl_to_lta1/out.lta --src /media/cp983411/volatile3/work/fmriprep_wf/single_subject_04_wf/func_preproc_ses_28_task_LePetitPrince_dir_pa_run_09_wf/initial_boldref_wf/enhance_and_skullstrip_bold_wf/apply_mask/uni_xform_masked.nii.gz --trg /media/cp983411/volatile3/work/fmriprep_wf/single_subject_04_wf/func_preproc_ses_28_task_LePetitPrince_dir_pa_run_09_wf/t1w_brain/sub-04_ses-08_acq-highres_T1w_ras_valid_corrected_xform_masked.nii.gz
Standard output:
Id: lta_convert.cpp,v 1.9.2.1 2016/08/09 02:33:22 zkaufman Exp

–infsl: /media/cp983411/volatile3/work/fmriprep_wf/single_subject_04_wf/func_preproc_ses_28_task_LePetitPrince_dir_pa_run_09_wf/bold_reg_wf/fsl_bbr_wf/flt_bbr_init/uni_xform_masked_flirt.mat input FSL transform.
–outlta: /media/cp983411/volatile3/work/fmriprep_wf/single_subject_04_wf/func_preproc_ses_28_task_LePetitPrince_dir_pa_run_09_wf/bold_reg_wf/fsl_bbr_wf/fsl_to_lta/mapflow/_fsl_to_lta1/out.lta output LTA.
–src: /media/cp983411/volatile3/work/fmriprep_wf/single_subject_04_wf/func_preproc_ses_28_task_LePetitPrince_dir_pa_run_09_wf/initial_boldref_wf/enhance_and_skullstrip_bold_wf/apply_mask/uni_xform_masked.nii.gz src image (geometry).
–trg: /media/cp983411/volatile3/work/fmriprep_wf/single_subject_04_wf/func_preproc_ses_28_task_LePetitPrince_dir_pa_run_09_wf/t1w_brain/sub-04_ses-08_acq-highres_T1w_ras_valid_corrected_xform_masked.nii.gz trg image (geometry).
niiRead(): NIFTI_UNITS_UNKNOWN, assuming mm
Standard error:
niiRead(): unsupported datatype 1024 (with scl_slope != 0) in /media/cp983411/volatile3/work/fmriprep_wf/single_subject_04_wf/func_preproc_ses_28_task_LePetitPrince_dir_pa_run_09_wf/t1w_brain/sub-04_ses-08_acq-highres_T1w_ras_valid_corrected_xform_masked.nii.gz
ERROR readFSL: cannot read trg MRI/media/cp983411/volatile3/work/fmriprep_wf/single_subject_04_wf/func_preproc_ses_28_task_LePetitPrince_dir_pa_run_09_wf/t1w_brain/sub-04_ses-08_acq-highres_T1w_ras_valid_corrected_xform_masked.nii.gz
Return code: 1

#####################

Because of the message ’ NIFTI_UNITS_UNKNOWN, assuming mm’, I wonder if this could have to do with the BIDS validator warning issued just after the launch of fmriprep:

bids-validator@1.4.0

    1: [WARN] NIfTI file's header field for unit information for x, y, z, and t dimensions empty or too short (code: 41 - NIFTI_UNIT

)
./sub-04/ses-08/anat/sub-04_ses-08_acq-highres_T1w.nii.gz

In [2]: a = nib.load(‘sub-04_ses-08_acq-highres_T1w.nii.gz’)

In [3]: print(a.header)
<class ‘nibabel.nifti1.Nifti1Header’> object, endian=’<’
sizeof_hdr : 348
data_type : b’’
db_name : b’’
extents : 0
session_error : 0
regular : b’’
dim_info : 0
dim : [ 3 340 352 240 1 1 1 1]
intent_p1 : 0.0
intent_p2 : 0.0
intent_p3 : 0.0
intent_code : none
datatype : int64
bitpix : 64
slice_start : 0
pixdim : [-1. 0.70454544 0.70454544 0.7 1. 1.

  1.      1.        ]
    

vox_offset : 0.0
scl_slope : nan
scl_inter : nan
slice_end : 0
slice_code : unknown
xyzt_units : 0
cal_max : 0.0
cal_min : 0.0
slice_duration : 0.0
toffset : 0.0
glmax : 0
glmin : 0
descrip : b’’
aux_file : b’’
qform_code : unknown
sform_code : aligned
quatern_b : 0.49912658
quatern_c : -0.5008719
quatern_d : -0.49912658
qoffset_x : -83.9664
qoffset_y : 155.47937
qoffset_z : -147.47899
srow_x : [ 0. 0. 0.7 -83.9664]
srow_y : [-7.0454115e-01 2.4593014e-03 0.0000000e+00 1.5547937e+02]
srow_z : [ 2.4593014e-03 7.0454115e-01 0.0000000e+00 -1.4747899e+02]
intent_name : b’’
magic : b’n+1’