Closed Kaonashi22 closed 9 months ago
it would be helpful if you could copy/paste the terminal output that shows the subject name
Here the line with the subject name ✅ /dagher/dagher12/lydia12/CENIR_ICEBERG/2020_11_18_ICEBERG_BJ_170_V3_M/S08_t1_mp2rage_sag_p3_1mm_iso_UNI_Images/v_ICEBERG_BJ_170_V3_M_S8_t1_mp2rage_sag_p3_1mm_iso_UNI_Images.json -> /dagher/dagher12/lydia12/CENIR_ICEBERG/BIDS_data/sub-BJ170/anat/sub-BJ170_UNIT1.json
can you copy/paste the entire terminal output (including your syntax)
That's the output for the subject:
2020_11_18_ICEBERG_BJ_170_V3_M -> sub-BJ170
============================================================================
✅ /dagher/dagher12/lydia12/CENIR_ICEBERG/2020_11_18_ICEBERG_BJ_170_V3_M/S07_t1_mp2rage_sag_p3_1mm_iso_T1_Images/v_ICEBERG_BJ_170_V3_M_S7_t1_mp2rage_sag_p3_1mm_iso_T1_Images.nii -> /dagher/dagher12/lydia12/CENIR_ICEBERG/BIDS_data/sub-BJ170/anat/sub-BJ170_T1map.nii.gz
✅ /dagher/dagher12/lydia12/CENIR_ICEBERG/2020_11_18_ICEBERG_BJ_170_V3_M/S07_t1_mp2rage_sag_p3_1mm_iso_T1_Images/v_ICEBERG_BJ_170_V3_M_S7_t1_mp2rage_sag_p3_1mm_iso_T1_Images.json -> /dagher/dagher12/lydia12/CENIR_ICEBERG/BIDS_data/sub-BJ170/anat/sub-BJ170_T1map.json
✅ /dagher/dagher12/lydia12/CENIR_ICEBERG/2020_11_18_ICEBERG_BJ_170_V3_M/S04_DTI_64DIR_TRA_5mm_2pulses/v_ICEBERG_BJ_170_V3_M_S4_DTI_64DIR_TRA_5mm_2pulses.nii -> /dagher/dagher12/lydia12/CENIR_ICEBERG/BIDS_data/sub-BJ170/dwi/sub-BJ170_chunk-1_DWI.nii.gz
✅ /dagher/dagher12/lydia12/CENIR_ICEBERG/2020_11_18_ICEBERG_BJ_170_V3_M/S04_DTI_64DIR_TRA_5mm_2pulses/v_ICEBERG_BJ_170_V3_M_S4_DTI_64DIR_TRA_5mm_2pulses.json -> /dagher/dagher12/lydia12/CENIR_ICEBERG/BIDS_data/sub-BJ170/dwi/sub-BJ170_chunk-1_DWI.json
✅ /dagher/dagher12/lydia12/CENIR_ICEBERG/2020_11_18_ICEBERG_BJ_170_V3_M/S04_DTI_64DIR_TRA_5mm_2pulses/v_ICEBERG_BJ_170_V3_M_S4_DTI_64DIR_TRA_5mm_2pulses.bval -> /dagher/dagher12/lydia12/CENIR_ICEBERG/BIDS_data/sub-BJ170/dwi/sub-BJ170_chunk-1_DWI.bval
✅ /dagher/dagher12/lydia12/CENIR_ICEBERG/2020_11_18_ICEBERG_BJ_170_V3_M/S04_DTI_64DIR_TRA_5mm_2pulses/v_ICEBERG_BJ_170_V3_M_S4_DTI_64DIR_TRA_5mm_2pulses.bvec -> /dagher/dagher12/lydia12/CENIR_ICEBERG/BIDS_data/sub-BJ170/dwi/sub-BJ170_chunk-1_DWI.bvec
✅ /dagher/dagher12/lydia12/CENIR_ICEBERG/2020_11_18_ICEBERG_BJ_170_V3_M/S24_T1_SAG_FL3D_2mm_HF/v_ICEBERG_BJ_170_V3_M_S24_T1_SAG_FL3D_2mm_HF.nii -> /dagher/dagher12/lydia12/CENIR_ICEBERG/BIDS_data/sub-BJ170/anat/sub-BJ170_mt-off_MTS.nii.gz
✅ /dagher/dagher12/lydia12/CENIR_ICEBERG/2020_11_18_ICEBERG_BJ_170_V3_M/S24_T1_SAG_FL3D_2mm_HF/v_ICEBERG_BJ_170_V3_M_S24_T1_SAG_FL3D_2mm_HF.json -> /dagher/dagher12/lydia12/CENIR_ICEBERG/BIDS_data/sub-BJ170/anat/sub-BJ170_mt-off_MTS.json
✅ /dagher/dagher12/lydia12/CENIR_ICEBERG/2020_11_18_ICEBERG_BJ_170_V3_M/S05_DTI_64DIR_TRA_5mm_2pulses/v_ICEBERG_BJ_170_V3_M_S5_DTI_64DIR_TRA_5mm_2pulses.nii -> /dagher/dagher12/lydia12/CENIR_ICEBERG/BIDS_data/sub-BJ170/dwi/sub-BJ170_chunk-2_DWI.nii.gz
✅ /dagher/dagher12/lydia12/CENIR_ICEBERG/2020_11_18_ICEBERG_BJ_170_V3_M/S05_DTI_64DIR_TRA_5mm_2pulses/v_ICEBERG_BJ_170_V3_M_S5_DTI_64DIR_TRA_5mm_2pulses.json -> /dagher/dagher12/lydia12/CENIR_ICEBERG/BIDS_data/sub-BJ170/dwi/sub-BJ170_chunk-2_DWI.json
✅ /dagher/dagher12/lydia12/CENIR_ICEBERG/2020_11_18_ICEBERG_BJ_170_V3_M/S05_DTI_64DIR_TRA_5mm_2pulses/v_ICEBERG_BJ_170_V3_M_S5_DTI_64DIR_TRA_5mm_2pulses.bval -> /dagher/dagher12/lydia12/CENIR_ICEBERG/BIDS_data/sub-BJ170/dwi/sub-BJ170_chunk-2_DWI.bval
✅ /dagher/dagher12/lydia12/CENIR_ICEBERG/2020_11_18_ICEBERG_BJ_170_V3_M/S05_DTI_64DIR_TRA_5mm_2pulses/v_ICEBERG_BJ_170_V3_M_S5_DTI_64DIR_TRA_5mm_2pulses.bvec -> /dagher/dagher12/lydia12/CENIR_ICEBERG/BIDS_data/sub-BJ170/dwi/sub-BJ170_chunk-2_DWI.bvec
❌ v_ICEBERG_BJ_170_V3_M_S6_t1_mp2rage_sag_p3_1mm_iso_INV1.nii
✅ /dagher/dagher12/lydia12/CENIR_ICEBERG/2020_11_18_ICEBERG_BJ_170_V3_M/S02_T2_SAG_SPC_ISO0_8/v_ICEBERG_BJ_170_V3_M_S2_T2_SAG_SPC_ISO0.8.nii -> /dagher/dagher12/lydia12/CENIR_ICEBERG/BIDS_data/sub-BJ170/anat/sub-BJ170_T2.nii.gz
✅ /dagher/dagher12/lydia12/CENIR_ICEBERG/2020_11_18_ICEBERG_BJ_170_V3_M/S02_T2_SAG_SPC_ISO0_8/v_ICEBERG_BJ_170_V3_M_S2_T2_SAG_SPC_ISO0.8.json -> /dagher/dagher12/lydia12/CENIR_ICEBERG/BIDS_data/sub-BJ170/anat/sub-BJ170_T2.json
✅ /dagher/dagher12/lydia12/CENIR_ICEBERG/2020_11_18_ICEBERG_BJ_170_V3_M/S03_DTI_64DIR_TRA_5mm_2pulses/v_ICEBERG_BJ_170_V3_M_S3_DTI_64DIR_TRA_5mm_2pulses.nii -> /dagher/dagher12/lydia12/CENIR_ICEBERG/BIDS_data/sub-BJ170/dwi/sub-BJ170_chunk-3_DWI.nii.gz
✅ /dagher/dagher12/lydia12/CENIR_ICEBERG/2020_11_18_ICEBERG_BJ_170_V3_M/S03_DTI_64DIR_TRA_5mm_2pulses/v_ICEBERG_BJ_170_V3_M_S3_DTI_64DIR_TRA_5mm_2pulses.json -> /dagher/dagher12/lydia12/CENIR_ICEBERG/BIDS_data/sub-BJ170/dwi/sub-BJ170_chunk-3_DWI.json
✅ /dagher/dagher12/lydia12/CENIR_ICEBERG/2020_11_18_ICEBERG_BJ_170_V3_M/S03_DTI_64DIR_TRA_5mm_2pulses/v_ICEBERG_BJ_170_V3_M_S3_DTI_64DIR_TRA_5mm_2pulses.bval -> /dagher/dagher12/lydia12/CENIR_ICEBERG/BIDS_data/sub-BJ170/dwi/sub-BJ170_chunk-3_DWI.bval
✅ /dagher/dagher12/lydia12/CENIR_ICEBERG/2020_11_18_ICEBERG_BJ_170_V3_M/S03_DTI_64DIR_TRA_5mm_2pulses/v_ICEBERG_BJ_170_V3_M_S3_DTI_64DIR_TRA_5mm_2pulses.bvec -> /dagher/dagher12/lydia12/CENIR_ICEBERG/BIDS_data/sub-BJ170/dwi/sub-BJ170_chunk-3_DWI.bvec
❌ v_ICEBERG_BJ_170_V3_M_S9_t1_mp2rage_sag_p3_1mm_iso_INV2.nii
✅ /dagher/dagher12/lydia12/CENIR_ICEBERG/2020_11_18_ICEBERG_BJ_170_V3_M/S23_T1_SAG_MT_FL3D_2mm_HF/v_ICEBERG_BJ_170_V3_M_S23_T1_SAG_MT_FL3D_2mm_HF.nii -> /dagher/dagher12/lydia12/CENIR_ICEBERG/BIDS_data/sub-BJ170/anat/sub-BJ170_mt-on_MTS.nii.gz
✅ /dagher/dagher12/lydia12/CENIR_ICEBERG/2020_11_18_ICEBERG_BJ_170_V3_M/S23_T1_SAG_MT_FL3D_2mm_HF/v_ICEBERG_BJ_170_V3_M_S23_T1_SAG_MT_FL3D_2mm_HF.json -> /dagher/dagher12/lydia12/CENIR_ICEBERG/BIDS_data/sub-BJ170/anat/sub-BJ170_mt-on_MTS.json
✅ /dagher/dagher12/lydia12/CENIR_ICEBERG/2020_11_18_ICEBERG_BJ_170_V3_M/S08_t1_mp2rage_sag_p3_1mm_iso_UNI_Images/v_ICEBERG_BJ_170_V3_M_S8_t1_mp2rage_sag_p3_1mm_iso_UNI_Images.nii -> /dagher/dagher12/lydia12/CENIR_ICEBERG/BIDS_data/sub-BJ170/anat/sub-BJ170_UNIT1.nii.gz
✅ /dagher/dagher12/lydia12/CENIR_ICEBERG/2020_11_18_ICEBERG_BJ_170_V3_M/S08_t1_mp2rage_sag_p3_1mm_iso_UNI_Images/v_ICEBERG_BJ_170_V3_M_S8_t1_mp2rage_sag_p3_1mm_iso_UNI_Images.json -> /dagher/dagher12/lydia12/CENIR_ICEBERG/BIDS_data/sub-BJ170/anat/sub-BJ170_UNIT1.json
Traceback (most recent call last):
File "convert_to_bids.py", line 174, in <module>
main(args.path_in, args.path_out)
File "convert_to_bids.py", line 160, in main
convert_mri_to_bids(path_in, path_out)
File "convert_to_bids.py", line 66, in convert_mri_to_bids
bids_patient_id = extract_patient_id(patient_dir)
File "convert_to_bids.py", line 50, in extract_patient_id
patient_initials = dirname.split("ICEBERG_")[1].split("_")[0]
IndexError: list index out of range
OK, I think the problem is not from this subject, but for the next one. Can you run ls -1
in the directory of the dataset and copy/paste the output
2020_09_16_ICEBERG_LM_166_V3_M 2020_10_28_ICEBERG_LC_164_V3_M 2020_10_29_ICEBERG_BB_277_V1_M 2020_11_18_ICEBERG_BJ_170_V3_M 2020_12_01_ICEBERG_CG_176_V3_M 2021_01_28_ICEBERG_AM_267_V1_M 2021_02_10_ICEBERG_LL_184_V3_M 2021_02_11_ICEBERG_JJ_268_V1_M 2021_02_17_ICEBERG_TP_186_V3_M 2021_03_09_ICEBERG_BJ_290_V1_M 2021_03_10_ICEBERG_LG_295_V1_M 2021_03_11_ICEBERG_BJ_284_V1_M 2021_03_12_ICEBERG_MJ_276_V1_M 2021_03_17_ICEBERG_GP_280_V1_M 2021_03_17_ICEBERG_PT_296_V1_M 2021_03_30_ICEBERG_CC_294_V1_M 2021_05_14_ICEBERG_PA_197_V3_M 2021_05_19_ICEBERG_DC_293_V1_M_E2 2021_05_19_ICEBERG_RC_194_V3_M 2021_07_20_ICEBERG_HY_289_V1_M 2021_09_01_ICEBERG_GE_200_V3_M 2021_09_15_ICEBERG_BJ_208_V3_M 2021_09_15_ICEBERG_LN_299_V1_M 2021_09_22_ICEBERG_LD_214_V3_M 2021_09_29_ICEBERG_FP_203_V3_M 2021_09_29_ICEBERG_MM_222_V3_M 2021_10_05_ICEBERG_VR_205_V3_M 2021_10_08_ICEBERG_AP_211_V3_M 2021_10_19_ICEBERG_IA_218_V3_M 2021_10_20_ICEBERG_MY_219_V3_M 2021_10_27_ICEBERG_MC_224_V3_M 2021_11_02_ICEBERG_DF_207_V3_M 2021_11_03_ICEBERG_ZM_226_V3_M 2021_11_17_ICEBERG_NJ_227_V3_M 2021_12_08_ICEBERG_ER_240_V3_M 2021_12_08_ICEBERG_GB_300_V1_M 2021_12_14_ICEBERG_TV_236_V3_M 2022_01_04_ICEBERG_VA_242_V3_M 2022_02_09_ICEBERG_LP_302_V1_M 2022_02_22_ICEBERG_DS_245_V3_M 2022_03_02_ICEBERG_OG_247_V3_M 2022_03_23_ICEBERG_CG_237_V3_M 2022_03_24_ICEBERG_JJ_248_V3_M 2022_03_29_ICEBERG_VS_251_V3_M 2022_04_19_ICEBERG_GI_256_V3_M 2022_06_01_ICEBERG_GA_262_V3_M 2022_06_09_ICEBERG_MS_250_V3_M 2022_06_21_ICEBERG_EP_263_V3_M 2022_09_07_ICEBERG_AM_275_V3_M 2022_10_05_ICEBERG_AM_273_V3_M 2023_03_28_ICEBERG_FP_292_V3_M 2023_06_10_DEV2_148_01_ICEBERG_ME_SUJET01 2023_06_27_DEV2_159_01_ICEBERG_ME_Sujet02 2023_07_14_DEV2_169_01_ICEBERG_ME_SUJET03 2023_07_25_DEV2_186_01_ICEBERG_ME_SUJET03 2023_07_26_DEV2_187_01_ICEBERG_ME_SUJET04 2023_08_03_DEV2_194_ICEBERG_ME_Sujet05 2023_09_14_DEV2_202_01_ICEBERG_ME_Sujet07 2023_09_27_DEV2_203_01_ICEBERG_ME_SUJET08 2023_09_29_DEV2_205_01_ICEBERG_ME_Sujet09 2023_10_02_DEV2_206_01_ICEBERG_ME_Sujet10 2023_10_20_DEV2_214_01_ICEBERG_ME_Sujet12 BIDS_data Doublons test
The next subject 2020_12_01_ICEBERG_CG_176_V3_M has the same architecture
I have the same error when I run the script on this single subject:
python convert_to_bids.py /dagher/dagher12/lydia12/CENIR_ICEBERG/2020_12_01_ICEBERG_CG_176_V3_M /dagher/dagher12/lydia12/CENIR_ICEBERG/BIDS_data Convert data to BIDS format.
Input: /dagher/dagher12/lydia12/CENIR_ICEBERG/2020_12_01_ICEBERG_CG_176_V3_M
Output: /dagher/dagher12/lydia12/CENIR_ICEBERG/BIDS_data
Traceback (most recent call last):
File "convert_to_bids.py", line 174, in
I have the same error when I run the script on this single subject:
thank you, this is helpful information
Issue is likely coming from:
Investigating...
I have the same issue with several other subjects that I process individually
hum, i'm not able to reproduce your error, it works well on my end:
So, I'm wondering if this has something to do with the OS.
Can you run: sct_check_dependencies
and copy/paste the output?
Also, run: ls -1 CENIR_ICEBERG_spine/2020_11_18_ICEBERG_BJ_170_V3_M
SCT info:
Check FSLeyes version...............................
ls -1 2020_11_18_ICEBERG_BJ_170_V3_M S02_T2_SAG_SPC_ISO0_8 S03_DTI_64DIR_TRA_5mm_2pulses S04_DTI_64DIR_TRA_5mm_2pulses S05_DTI_64DIR_TRA_5mm_2pulses S06_t1_mp2rage_sag_p3_1mm_iso_INV1 S07_t1_mp2rage_sag_p3_1mm_iso_T1_Images S08_t1_mp2rage_sag_p3_1mm_iso_UNI_Images S09_t1_mp2rage_sag_p3_1mm_iso_INV2 S23_T1_SAG_MT_FL3D_2mm_HF S24_T1_SAG_FL3D_2mm_HF
Check FSLeyes version...............................[OK] (building)
Check Python executable.............................[OK] Using bundled python 3.9.18 (main, Sep 11 2023, 13:41:44) [GCC 11.2.0] at /export02/data/lydiac/spinalcordtoolbox/python/envs/venv_sct/bin/python Check if data are installed.........................[OK] Check if dipy is installed..........................[OK] (1.5.0) Check if ivadomed is installed......................[OK] (2.9.8) Check if matplotlib is installed....................[OK] (3.8.2) Check if nibabel is installed.......................[OK] (3.2.2) Check if nilearn is installed.......................[OK] (0.10.2) Check if numpy is installed.........................[OK] (1.23.5) Check if onnxruntime is installed...................[OK] (1.16.3) Check if pandas is installed........................[OK] (1.4.4) Check if portalocker is installed...................[OK] (2.8.2) Check if psutil is installed........................[OK] (5.9.6) Check if pyqt5 (5.12.3) is installed................[OK] (5.12.3) Check if pytest is installed........................[OK] (7.4.3) Check if pytest-cov is installed....................[OK] (4.1.0) Check if requests is installed......................[OK] (2.31.0) Check if requirements-parser is installed...........[OK] Check if scipy is installed.........................[OK] (1.11.4) Check if scikit-image is installed..................[OK] (0.22.0) Check if scikit-learn is installed..................[OK] (1.3.2) Check if xlwt is installed..........................[OK] (1.3.0) Check if tqdm is installed..........................[OK] (4.66.1) Check if transforms3d is installed..................[OK] (0.4.1) Check if urllib3 is installed.......................[OK] (2.1.0) Check if pytest_console_scripts is installed........[OK] Check if pyyaml is installed........................[OK] (6.0.1) Check if voxelmorph is installed....................[OK] (0.2) Check if wquantiles is installed....................[OK] (0.4) Check if xlsxwriter is installed....................[OK] (3.1.9) Check if spinalcordtoolbox is installed.............[OK] Check ANTs compatibility with OS ...................[OK] Check PropSeg compatibility with OS ................[OK] Check if figure can be opened with PyQt.............[OK] Check if figure can be opened with matplotlib.......[OK] (Using GUI backend: 'QtAgg')
That's weird, it's not working on any subject now...
Issue fixed-- it was caused by the presence of folders without the string ICEBERG
in the folder name:
BIDS_data
Doublons
test
Hi Julien,
The conversion to BIDS format is done correctly. However, the code stopped after processing 8 subjects with this error:
_Traceback (most recent call last): File "convert_to_bids.py", line 174, in
main(args.path_in, args.path_out)
File "convert_to_bids.py", line 160, in main
convert_mri_to_bids(path_in, path_out)
File "convert_to_bids.py", line 66, in convert_mri_to_bids
bids_patient_id = extract_patient_id(patient_dir)
File "convert_to_bids.py", line 50, in extract_patient_id
patientinitials = dirname.split("ICEBERG")[1].split("")[0]
IndexError: list index out of range
Do you see the issue?
Thanks, Lydia