FCP-INDI / C-PAC

Configurable Pipeline for the Analysis of Connectomes
https://fcp-indi.github.io/
GNU Lesser General Public License v3.0
64 stars 41 forks source link

Error setting node input #830

Open Salonijain27 opened 6 years ago

Salonijain27 commented 6 years ago

While executing the cpac_run.py command to pre-process the fmri images I get the following errors:

180827-18:37:09,442 workflow INFO:
     Collecting precomputed outputs
180827-18:37:09,449 workflow ERROR:
     [u'Node CSF_mask failed to run on host saloni-ubuntu.']
180827-18:37:09,479 workflow INFO:
     Saving crash info to /home/saloni/NYU/crash_log/crash-20180827-183709-saloni-CSF_mask-01e839e2-3930-4e76-8a6b-1e69f5a36a5c.pklz
180827-18:37:09,480 workflow INFO:
     Traceback (most recent call last):
  File "/home/saloni/.local/lib/python2.7/site-packages/nipype/pipeline/plugins/linear.py", line 43, in run
    node.run(updatehash=updatehash)
  File "/home/saloni/.local/lib/python2.7/site-packages/nipype/pipeline/engine/nodes.py", line 279, in run
    self._get_inputs()
  File "/home/saloni/.local/lib/python2.7/site-packages/nipype/pipeline/engine/nodes.py", line 467, in _get_inputs
    self.set_input(key, deepcopy(output_value))
  File "/home/saloni/.local/lib/python2.7/site-packages/nipype/pipeline/engine/nodes.py", line 223, in set_input
    setattr(self.inputs, parameter, deepcopy(val))
  File "/home/saloni/.local/lib/python2.7/site-packages/nipype/interfaces/traits_extension.py", line 83, in validate
    validated_value = super(BaseFile, self).validate(object, name, value)
  File "/home/saloni/.local/lib/python2.7/site-packages/traits/trait_types.py", line 411, in validate
    self.error( object, name, value )
  File "/home/saloni/.local/lib/python2.7/site-packages/traits/trait_handlers.py", line 172, in error
    value )
TraitError: The 'in_file' trait of a MultiImageMathsInput instance must be an existing file name, but a value of None <type 'NoneType'> was specified.
Error setting node input:
Node: CSF_mask
input: in_file
results_file: /tmp/resting_preproc_0025025_session_1/seg_preproc_0/segment/result_segment.pklz
value: None

I have attached my pipeline.yml file in the form of a text file below. pipeline.txt

Please let me know if there is any additional information that is required. Thank you!

anibalsolon commented 6 years ago

Hi @Salonijain27

Could you please send us the complete log file? It is a "pypeline.log" file within your log folder, under a subject folder. Some problem might be happening before this error.

And please check if these files exist on your computer: /usr/local/fsl/data/standard/tissuepriors/2mm/avg152T1_white_bin.nii.gz /usr/local/fsl/data/standard/tissuepriors/2mm/avg152T1_gray_bin.nii.gz /usr/local/fsl/data/standard/tissuepriors/2mm/avg152T1_csf_bin.nii.gz

Salonijain27 commented 6 years ago

Hi @anibalsolon , I have the files that you have mentioned above. I have attached my log file below: pypeline.log You were right, there is an error I have before the above mentioned one. The error I get is :

180827-18:37:50,52 workflow INFO:
     Executing node std_dev_1.b0 in dir: /tmp/resting_preproc_0025026_session_1/_scan_func-1/std_dev_1
180827-18:37:50,89 workflow ERROR:
     [u'Node std_dev_1.b0 failed to run on host saloni-ubuntu.']
180827-18:37:50,90 workflow INFO:
     Saving crash info to /home/saloni/NYU/crash_log/crash-20180827-183750-saloni-std_dev_1.b0-24624f35-f07d-46dc-b0aa-c7a958f845d5.pklz
180827-18:37:50,90 workflow INFO:
     Traceback (most recent call last):
  File "/home/saloni/.local/lib/python2.7/site-packages/nipype/pipeline/plugins/linear.py", line 43, in run
    node.run(updatehash=updatehash)
  File "/home/saloni/.local/lib/python2.7/site-packages/nipype/pipeline/engine/nodes.py", line 372, in run
    self._run_interface()
  File "/home/saloni/.local/lib/python2.7/site-packages/nipype/pipeline/engine/nodes.py", line 482, in _run_interface
    self._result = self._run_command(execute)
  File "/home/saloni/.local/lib/python2.7/site-packages/nipype/pipeline/engine/nodes.py", line 613, in _run_command
    result = self._interface.run()
  File "/home/saloni/.local/lib/python2.7/site-packages/nipype/interfaces/base.py", line 1081, in run
    runtime = self._run_wrapper(runtime)
  File "/home/saloni/.local/lib/python2.7/site-packages/nipype/interfaces/base.py", line 1029, in _run_wrapper
    runtime = self._run_interface(runtime)
  File "/home/saloni/.local/lib/python2.7/site-packages/nipype/interfaces/utility/wrappers.py", line 194, in _run_interface
    out = function_handle(**args)
  File "<string>", line 24, in gen_std_dev
  File "/home/saloni/miniconda/lib/python2.7/subprocess.py", line 219, in check_output
    raise CalledProcessError(retcode, cmd, output=output)
CalledProcessError: Command '[u'3dTstat', u'-stdev', u'-mask', u'/tmp/resting_preproc_0025026_session_1/func_preproc_automask_0/_scan_func-1/func_get_brain_mask/rest_calc_tshift_resample_volreg_mask.nii.gz', u'-prefix', u'/tmp/resting_preproc_0025026_session_1/_scan_func-1/std_dev_1/std_dev.nii.gz', u'/tmp/resting_preproc_0025026_session_1/func_preproc_automask_0/_scan_func-1/func_normalize/rest_calc_tshift_resample_volreg_calc_maths.img']' returned non-zero exit status 1

Thank you!

anibalsolon commented 6 years ago

Thank you for the inputs @Salonijain27

a fix for your pipeline config: on spikeThreshold : ['5%'], it should be in millimetres instead of a percentage.

Could you please run this command that failed, and send us its output?

3dTstat -stdev -mask /tmp/resting_preproc_0025026_session_1/func_preproc_automask_0/_scan_func-1/func_get_brain_mask/rest_calc_tshift_resample_volreg_mask.nii.gz -prefix /tmp/resting_preproc_0025026_session_1/_scan_func-1/std_dev_1/std_dev.nii.gz /tmp/resting_preproc_0025026_session_1/func_preproc_automask_0/_scan_func-1/func_normalize/rest_calc_tshift_resample_volreg_calc_maths.img

Salonijain27 commented 6 years ago

Hi @anibalsolon , I made the changes in the pipeline and ran the code for pre-processing again. I get the following error :

180829-01:34:43,320 workflow ERROR:
     [u'Node WM_mask failed to run on host saloni-ubuntu.']
180829-01:34:43,410 workflow INFO:
     Saving crash info to /home/saloni/NYU/crash_log/crash-20180829-013443-saloni-WM_mask-9984ca3e-a65c-4e32-9681-5667dc3d8ce7.pklz
180829-01:34:43,410 workflow INFO:
     Traceback (most recent call last):
  File "/home/saloni/.local/lib/python2.7/site-packages/nipype/pipeline/plugins/linear.py", line 43, in run
    node.run(updatehash=updatehash)
  File "/home/saloni/.local/lib/python2.7/site-packages/nipype/pipeline/engine/nodes.py", line 279, in run
    self._get_inputs()
  File "/home/saloni/.local/lib/python2.7/site-packages/nipype/pipeline/engine/nodes.py", line 467, in _get_inputs
    self.set_input(key, deepcopy(output_value))
  File "/home/saloni/.local/lib/python2.7/site-packages/nipype/pipeline/engine/nodes.py", line 223, in set_input
    setattr(self.inputs, parameter, deepcopy(val))
  File "/home/saloni/.local/lib/python2.7/site-packages/nipype/interfaces/traits_extension.py", line 83, in validate
    validated_value = super(BaseFile, self).validate(object, name, value)
  File "/home/saloni/.local/lib/python2.7/site-packages/traits/trait_types.py", line 411, in validate
    self.error( object, name, value )
  File "/home/saloni/.local/lib/python2.7/site-packages/traits/trait_handlers.py", line 172, in error
    value )
TraitError: The 'in_file' trait of a MultiImageMathsInput instance must be an existing file name, but a value of None <type 'NoneType'> was specified.
Error setting node input:
Node: WM_mask
input: in_file
results_file: /tmp/resting_preproc_0025025_session_1/seg_preproc_0/segment/result_segment.pklz
value: None

180829-01:34:43,452 workflow INFO:
     Executing node sinker_50 in dir: /tmp/resting_preproc_0025025_session_1/sinker_50
180829-01:34:43,480 workflow INFO:
     Executing node process_outputs_50 in dir: /tmp/resting_preproc_0025025_session_1/process_outputs_50
180829-01:34:43,509 workflow INFO:
     Executing node sinker_51 in dir: /tmp/resting_preproc_0025025_session_1/sinker_51
180829-01:34:43,533 workflow INFO:
     Executing node process_outputs_51 in dir: /tmp/resting_preproc_0025025_session_1/process_outputs_51
180829-01:34:43,584 workflow INFO:
     Executing node resample_u in dir: /tmp/resting_preproc_0025025_session_1/montage_snr_1/resample_u
180829-01:34:44,820 workflow INFO:
     Executing node resample_u in dir: /tmp/resting_preproc_0025025_session_1/montage_csf_gm_wm_1/resample_u
180829-01:34:45,758 workflow INFO:
     Executing node GM_prior_mni_to_t1 in dir: /tmp/resting_preproc_0025025_session_1/seg_preproc_0/GM/GM_prior_mni_to_t1
180829-01:34:45,765 workflow INFO:
     Running: antsApplyTransforms --default-value 0 --input /usr/local/fsl/data/standard/tissuepriors/2mm/avg152T1_gray_bin.nii.gz --interpolation NearestNeighbor --output avg152T1_gray_bin_trans.nii.gz --reference-image /tmp/resting_preproc_0025025_session_1/anat_preproc_0/anat_skullstrip_orig_vol/anat_resample_calc.nii.gz --transform [ /tmp/resting_preproc_0025025_session_1/anat_mni_ants_register_0/calc_ants_warp/transform0DerivedInitialMovingTranslation.mat, 1 ] --transform [ /tmp/resting_preproc_0025025_session_1/anat_mni_ants_register_0/calc_ants_warp/transform1Rigid.mat, 1 ] --transform [ /tmp/resting_preproc_0025025_session_1/anat_mni_ants_register_0/calc_ants_warp/transform2Affine.mat, 1 ]
180829-01:34:47,335 workflow ERROR:
     [u'Node GM_mask failed to run on host saloni-ubuntu.']
180829-01:34:47,335 workflow INFO:
     Saving crash info to /home/saloni/NYU/crash_log/crash-20180829-013447-saloni-GM_mask-c70a5d62-d198-4dee-8d53-e6543c268252.pklz
180829-01:34:47,335 workflow INFO:
     Traceback (most recent call last):
  File "/home/saloni/.local/lib/python2.7/site-packages/nipype/pipeline/plugins/linear.py", line 43, in run
    node.run(updatehash=updatehash)
  File "/home/saloni/.local/lib/python2.7/site-packages/nipype/pipeline/engine/nodes.py", line 279, in run
    self._get_inputs()
  File "/home/saloni/.local/lib/python2.7/site-packages/nipype/pipeline/engine/nodes.py", line 467, in _get_inputs
    self.set_input(key, deepcopy(output_value))
  File "/home/saloni/.local/lib/python2.7/site-packages/nipype/pipeline/engine/nodes.py", line 223, in set_input
    setattr(self.inputs, parameter, deepcopy(val))
  File "/home/saloni/.local/lib/python2.7/site-packages/nipype/interfaces/traits_extension.py", line 83, in validate
    validated_value = super(BaseFile, self).validate(object, name, value)
  File "/home/saloni/.local/lib/python2.7/site-packages/traits/trait_types.py", line 411, in validate
    self.error( object, name, value )
  File "/home/saloni/.local/lib/python2.7/site-packages/traits/trait_handlers.py", line 172, in error
    value )
TraitError: The 'in_file' trait of a MultiImageMathsInput instance must be an existing file name, but a value of None <type 'NoneType'> was specified.
Error setting node input:
Node: GM_mask
input: in_file
results_file: /tmp/resting_preproc_0025025_session_1/seg_preproc_0/segment/result_segment.pklz
value: None

180829-01:34:47,342 workflow INFO:
     Executing node resample_u in dir: /tmp/resting_preproc_0025025_session_1/montage_skull_1/resample_u
180829-01:34:48,614 workflow INFO:
     Executing node montage_a in dir: /tmp/resting_preproc_0025025_session_1/montage_skull_1/montage_a
180829-01:34:53,232 workflow INFO:
     Executing node sinker_41 in dir: /tmp/resting_preproc_0025025_session_1/sinker_41
180829-01:34:53,239 interface INFO:
     sub: /home/saloni/NYU/results/all_new/pipeline_new_pipeline_02/0025025_session_1/qc___skullstrip_vis_a/skull_vis_a.png -> /home/saloni/NYU/results/all_new/pipeline_new_pipeline_02/0025025_session_1/qc/skullstrip_vis_a/skull_vis_a.png
180829-01:34:53,250 workflow INFO:
     Executing node process_outputs_41 in dir: /tmp/resting_preproc_0025025_session_1/process_outputs_41
180829-01:34:53,319 workflow INFO:
     Executing node montage_s in dir: /tmp/resting_preproc_0025025_session_1/montage_skull_1/montage_s
180829-01:34:55,743 workflow INFO:
     Executing node sinker_42 in dir: /tmp/resting_preproc_0025025_session_1/sinker_42
180829-01:34:55,750 interface INFO:
     sub: /home/saloni/NYU/results/all_new/pipeline_new_pipeline_02/0025025_session_1/qc___skullstrip_vis_s/skull_vis_s.png -> /home/saloni/NYU/results/all_new/pipeline_new_pipeline_02/0025025_session_1/qc/skullstrip_vis_s/skull_vis_s.png
180829-01:34:55,763 workflow INFO:
     Executing node process_outputs_42 in dir: /tmp/resting_preproc_0025025_session_1/process_outputs_42
180829-01:34:56,38 workflow INFO:
     Executing node write_log in dir: /tmp/resting_preproc_0025025_session_1/log_anat_preproc_0/write_log
180829-01:34:56,48 interface INFO:
     filepath already exist, filepath- /home/saloni/NYU/logs/0025025_session_1/scan_anat/anat_preproc_0, curr_dir - /tmp/resting_preproc_0025025_session_1/log_anat_preproc_0/write_log
180829-01:34:56,49 interface INFO:
     CPAC custom log:
180829-01:34:56,49 interface INFO:
      version - 1.2.0, timestamp - 2018-08-29 01:34:56, subject_id - 0025025_session_1, scan_id - scan_anat, strategy - , workflow - anat_preproc_0, status - COMPLETED
180829-01:34:56,62 workflow INFO:
     Executing node sinker_1 in dir: /tmp/resting_preproc_0025025_session_1/sinker_1
180829-01:34:56,82 workflow INFO:
     Executing node process_outputs_1 in dir: /tmp/resting_preproc_0025025_session_1/process_outputs_1
180829-01:34:56,101 workflow INFO:
     Executing node afni_3dedge3 in dir: /tmp/resting_preproc_0025025_session_1/anat_edge_1/afni_3dedge3
180829-01:34:58,859 workflow INFO:
     Executing node resample_o in dir: /tmp/resting_preproc_0025025_session_1/montage_anat_1/resample_o
180829-01:34:59,415 workflow INFO:
     Executing node CSF_prior_mni_to_t1 in dir: /tmp/resting_preproc_0025025_session_1/seg_preproc_0/CSF/CSF_prior_mni_to_t1
180829-01:34:59,422 workflow INFO:
     Running: antsApplyTransforms --default-value 0 --input /usr/local/fsl/data/standard/tissuepriors/2mm/avg152T1_csf_bin.nii.gz --interpolation NearestNeighbor --output avg152T1_csf_bin_trans.nii.gz --reference-image /tmp/resting_preproc_0025025_session_1/anat_preproc_0/anat_skullstrip_orig_vol/anat_resample_calc.nii.gz --transform [ /tmp/resting_preproc_0025025_session_1/anat_mni_ants_register_0/calc_ants_warp/transform0DerivedInitialMovingTranslation.mat, 1 ] --transform [ /tmp/resting_preproc_0025025_session_1/anat_mni_ants_register_0/calc_ants_warp/transform1Rigid.mat, 1 ] --transform [ /tmp/resting_preproc_0025025_session_1/anat_mni_ants_register_0/calc_ants_warp/transform2Affine.mat, 1 ]
180829-01:35:00,993 workflow ERROR:
     [u'Node CSF_mask failed to run on host saloni-ubuntu.']
180829-01:35:00,993 workflow INFO:
     Saving crash info to /home/saloni/NYU/crash_log/crash-20180829-013500-saloni-CSF_mask-3db3faed-9a60-4871-8a4f-2b3f53eb6dc0.pklz
180829-01:35:00,993 workflow INFO:
     Traceback (most recent call last):
  File "/home/saloni/.local/lib/python2.7/site-packages/nipype/pipeline/plugins/linear.py", line 43, in run
    node.run(updatehash=updatehash)
  File "/home/saloni/.local/lib/python2.7/site-packages/nipype/pipeline/engine/nodes.py", line 279, in run
    self._get_inputs()
  File "/home/saloni/.local/lib/python2.7/site-packages/nipype/pipeline/engine/nodes.py", line 467, in _get_inputs
    self.set_input(key, deepcopy(output_value))
  File "/home/saloni/.local/lib/python2.7/site-packages/nipype/pipeline/engine/nodes.py", line 223, in set_input
    setattr(self.inputs, parameter, deepcopy(val))
  File "/home/saloni/.local/lib/python2.7/site-packages/nipype/interfaces/traits_extension.py", line 83, in validate
    validated_value = super(BaseFile, self).validate(object, name, value)
  File "/home/saloni/.local/lib/python2.7/site-packages/traits/trait_types.py", line 411, in validate
    self.error( object, name, value )
  File "/home/saloni/.local/lib/python2.7/site-packages/traits/trait_handlers.py", line 172, in error
    value )
TraitError: The 'in_file' trait of a MultiImageMathsInput instance must be an existing file name, but a value of None <type 'NoneType'> was specified.
Error setting node input:
Node: CSF_mask
input: in_file
results_file: /tmp/resting_preproc_0025025_session_1/seg_preproc_0/segment/result_segment.pklz
value: None

I have attached the pipeline.log file below. pypeline.log

I also ran the following line :

3dTstat -stdev -mask /tmp/resting_preproc_0025026_session_1/func_preproc_automask_0/_scan_func-1/func_get_brain_mask/rest_calc_tshift_resample_volreg_mask.nii.gz -prefix /tmp/resting_preproc_0025026_session_1/_scan_func-1/std_dev_1/std_dev.nii.gz /tmp/resting_preproc_0025026_session_1/func_preproc_automask_0/_scan_func-1/func_normalize/rest_calc_tshift_resample_volreg_calc_maths.img

and got this output :

++ 3dTstat: AFNI version=AFNI_18.2.12 (Aug 17 2018) [64-bit]
++ Authored by: KR Hammett & RW Cox
** ERROR (nifti_image_read): failed to find header file for '/tmp/resting_preproc_0025026_session_1/func_preproc_automask_0/_scan_func-1/func_get_brain_mask/rest_calc_tshift_resample_volreg_mask.nii.gz'
** FATAL ERROR: Cannot open mask dataset!
** Program compile date = Aug 17 2018
nrajamani3 commented 6 years ago

Hi Salonijain27, this is just a thought to help you with this issue - could you take a look at your FSL data directory to check whether the CSF, WM and GM files are present and not corrupt? I was able to reproduce this error, but not with the CSF file - instead it was a missing input for 3 mm resolution symmetric_brain file. I solved that error by changing the resolution to 2mm, so I'm wondering if something similar is the problem with yours and if you can then solve it.

Salonijain27 commented 6 years ago

Hi @nrajamani3, Thank you so much for replying to my query! In response to your suggestions I checked the things you had mentioned :

anibalsolon commented 6 years ago

Hi @Salonijain27 ,

this is a strange behavior, we are trying to understand and debug it. Meanwhile, may I please ask you to wipe the C-PAC directories and try to execute the pipeline again?

rm -rF /home/saloni/NYU/crash_log/*
rm -rF /home/saloni/NYU/results/all_new/*
rm -rF /home/saloni/NYU/logs/*
rm -rF /tmp/resting_preproc*
Salonijain27 commented 6 years ago

Hi @anibalsolon , Thank you so much! I also wiped the C-PAC directories and executed the pipeline again and I obtained the same errors.

nrajamani3 commented 6 years ago

@Salonijain27 can you look for the report folder in your working directory - each node that is executed will be present in the working directory and opening that would show you the report.rst file. It gives us the inputs, the path to the inputs and other information - you could also do this to debug the problems.