I encountered the following error while executing the preprocess_bold command. The logs file and the command used are shown below. Both the qunex_suite-1.3.1.sif and qunex_suite-1.2.2.sif container versions will encounter the following error.
It seems like you have a dated path in the batch file (MNITemplates is a legacy folder name that hase been renamed quite a long time ago). Open the batch file and look for dilate_mask. Instead of
I followed your advice and modified batch.txt, then executed setup_hcp. The current parameter is _dilate_mask : ${TOOLS}/${QUNEXREPO}/library/data/atlases/mni_templates/MNI152_T1_2mm_brain_mask.nii.gz .
但我仍然出现上述报错
ERROR img_readimage: File does not exist [/opt/qunex/library/data/atlases/mni_templates/MNI152_T1_2mm_brain_mask.nii.gz]!
I’ve modified the parameters again. The current setting is: _dilate_mask : /opt/qunex/qx_library/data/atlases/mni_templates/MNI152_T1_2mm_brain_mask.nii.gz
Execution error! Processing failed!
Please check arguments and/or try running the command in Matlab or Octave directly.
The exact error reported:
-----------------------------------------
Error identifier:
Error message: reshape: SIZE is not divisible by the product of known dimensions (= 179776)
Error stack: /opt/qunex/matlab/qx_mri/img/@nimage/nimage.m -> image2D [line: 718]
/opt/qunex/matlab/qx_mri/img/@nimage/img_embed_stats.m -> img_embed_stats [line: 36]
/opt/qunex/matlab/qx_mri/img/@nimage/img_save_nifti.m -> img_save_nifti [line: 36]
/opt/qunex/matlab/qx_mri/img/@nimage/nimage.m -> img_saveimage [line: 542]
/opt/qunex/matlab/qx_mri/fc/fc_preprocess.m -> fc_preprocess [line: 1037]
=========================================
I do not think this is parameter related. Seems like some kind of a data missmatch. Let me ask my colleagues who used this command more often to see if they have an idea.
I believe the 2mm template should be fine. After adjusting the _dilate_mask parameter as you suggested, the error logs no longer mention any issues with the template.
I’ve uploaded a completed ICAFIX bold dataset to Google Drive. I hope you can test it using preprocess_bold.
I don’t believe the default settings can be applied to a single session. Even though I provided only one session ID, it still executed the command on all sessions. Therefore, I’ve uploaded the images folder from one of the sessions. I hope this proves useful to you. The session ID is 114_S_5234_2019-02-06.
You’re right, it is indeed possible to process individual sessions. I executed the preprocess_bold command for each subject, and the output logs showed no differences.
=========================================
Execution error! Processing failed!
Please check arguments and/or try running the command in Matlab or Octave directly.
The exact error reported:
-----------------------------------------
Error identifier:
Error message: reshape: SIZE is not divisible by the product of known dimensions (= 179776)
Error stack: /opt/qunex/matlab/qx_mri/img/@nimage/nimage.m -> image2D [line: 718]
/opt/qunex/matlab/qx_mri/img/@nimage/img_embed_stats.m -> img_embed_stats [line: 36]
/opt/qunex/matlab/qx_mri/img/@nimage/img_save_nifti.m -> img_save_nifti [line: 36]
/opt/qunex/matlab/qx_mri/img/@nimage/nimage.m -> img_saveimage [line: 542]
/opt/qunex/matlab/qx_mri/fc/fc_preprocess.m -> fc_preprocess [line: 1037]
=========================================
The results show that both the 1.2.2 and 1.3.3 containers can run correctly using the first command, but neither can run correctly using the second command (and both report the same error). It appears there is an issue with the command parameters.
It seems like the configuration causes some kind of a data missmatch. Not sure why this is the case. Most parameters are redundant as you are setting what the default value is…
What is different between the 2 calls is:
--bold_actions="m,s,h,r,c,l", here the default is s,h,r,c,l,
--hipass_filter="0.01", here the default is 0.008,
--lopass_filter="0.1", here the default is 0.09,
--bold_nuisance="m,V,WM,1d", here the default is m,m1d,mSq,m1dSq,V,WM,WB,1d,
--pignore I think the default is to drop bad frames.
I am extremely swamped right now and the person who wrote most of this code is on vacation, so this might take some time. If you can figure out exactly which parameter is problematic it would help us out a lot.
Also, is there a particular reason that you are deviating from sensible defaults which seem to work here? In other words, are the results obtained by defaults not OK?
Also, the first call is using only bold1, while the second one uses all bolds. It could be that bold1 is ok but others have some issues?
Sorry, Jure. I need to prepare materials for a project soon. I should be able to test these parameter combinations next week to see if I can identify the faulty parameter.