Skip to content

Commit

Permalink
Grammarly english checks
Browse files Browse the repository at this point in the history
  • Loading branch information
CPernet committed Feb 19, 2024
1 parent 219451a commit c8eaf08
Showing 1 changed file with 5 additions and 5 deletions.
10 changes: 5 additions & 5 deletions paper.md
Original file line number Diff line number Diff line change
Expand Up @@ -71,18 +71,18 @@ bibliography: paper.bib

The Brain Imaging Data Structure [@gorgolewski_brain_2016] is a standard for organizing and naming neuroimaging data, which has quickly become successful and popular in the community with adoption by brain imaging repositories (e.g., OpenNeuro [@noauthor_openneuro], PublicnEUro [@noauthor_public]), data management tools (e.g., COINS [@landis_coins_2016], XNAT [@marcus_extensible_2007]) and computational platforms (e.g. BrainLife [@Hayashi_2023]). BIDS allows data to be shared much more efficiently, enables the development of automated data analysis pipelines, and improves reproducibility.

The BIDS extension for Positron Emission Tomography (PET-BIDS) [@norgaard_pet-bids_2022] provides nomenclature for structured data and metadata, including all the necessary information to share and report on PET blood and metabolite [@knudsen_guidelines_2020]. Here we present a new code library, developed in both Matlab and Python, allowing the conversion of DICOM [@dicm_ref_2020] and ECAT (CTI/Siemens proprietary data format) PET imaging data and metadata (e.g., timing information such as e.g. 'time zero' or blood measurements) into files that follow the BIDS specification (nifti, shon, tsv).
The BIDS extension for Positron Emission Tomography (PET-BIDS) [@norgaard_pet-bids_2022] provides nomenclature for structured data and metadata, including all the necessary information to share and report on PET blood and metabolite [@knudsen_guidelines_2020]. Here we present a code library, developed in both Matlab and Python, allowing the conversion of DICOM [@dicm_ref_2020] and ECAT (CTI/Siemens proprietary data format) PET imaging data and metadata (e.g., timing information such as e.g. 'time zero' or blood measurements) into files that follow the BIDS specification (nifti, json, tsv).

# Statement of need

Conversion tools from native format to BIDS are essential to help researchers to use BIDS. While tools for MRI and MEEG exist, PET2BIDS is the first tool to convert DICOM and ECAT PET data and metadata to BIDS. Because PET2BIDS is a code library, conversion is done using the command line only. PET2BIDS can, however, also be integrated into software (with a graphical user interface) that aims at more general BIDS conversion, and current efforts are underway integrating PET2BIDS with ezBIDS [@ezBIDS2024] and BIDSCoins [@zwiers_bidscoin_2022]. Using these tools will also allow data to be structured following the BIDS specification.
Conversion tools from native format to BIDS are essential to help researchers to use BIDS. While tools for MRI and MEEG exist, PET2BIDS is the first tool to convert both DICOM and ECAT PET data and PET metadata to BIDS. Because PET2BIDS is a code library, conversion is done using the command line only. PET2BIDS can, however, also be integrated into software (with a graphical user interface) that aims at more general BIDS conversion, and current efforts are underway integrating PET2BIDS with ezBIDS [@ezBIDS2024] and BIDSCoins [@zwiers_bidscoin_2022]. While our library allows to convert and name files, these more generic tools also allow data to be structured following the BIDS specification.

_File conversion_: The conversion for PET data stored in DICOM format to NIfTI is performed using the dcm2niix4pet functions which are wrappers around dcm2niix [@rorden_dcm2nii; @li_first_2016]. Those functions extend the image sidecar JSON file generated by dcm2niix with details that must be provided by the user because they are not included in the source images but are required for BIDS. The conversion of PET data stored in ECAT format is performed using the dedicated ecat2nii functions. The Matlab code relies on the readECAT7.m function written by B.T. Christian (1998) and revised by R.F. Muzic (2002) to read the data while writing Nifti files relies on nii_tool [@Li_2016]. The Python code was developed to mirror the Matlab code, with further testing of data reading (i.e., which file bits are read according to the PET data frames) and writing, relying here on Nibabel [@brett_nipynibabel_2023]. For both matlab and python, the data conversion and writting are fully tested (see [ecat validation](https://github.com/openneuropet/PET2BIDS/tree/main/ecat_validation)). Mirroring the DICOM conversion, the ecat2nii functions generate JSON sidecar files from image data, and users must provide additional metadata to make files BIDS-compliant. Note that the python tools are command line tools, i.e. they can be called directly from a terminal.
_File conversion_: The conversion for PET data stored in DICOM format to NIfTI is performed using the dcm2niix4pet functions, which are wrappers around dcm2niix [@rorden_dcm2nii; @li_first_2016]. Those functions extend the image sidecar JSON file generated by dcm2niix with details that the user must provide because they are not included in the source images but are required for BIDS. The conversion of PET data stored in ECAT format is performed using the dedicated ecat2nii functions. The Matlab code relies on the readECAT7.m function written by B.T. Christian (1998) and revised by R.F. Muzic (2002) to read the data while writing Nifti files relies on nii_tool [@Li_2016]. The Python code was developed to mirror the Matlab code, further testing data reading (i.e., which file bits are read according to the PET data frames) and writing, relying here on Nibabel [@brett_nipynibabel_2023]. For both Matlab and Python, the data conversion and writing are thoroughly tested (see [ecat validation](https://github.com/openneuropet/PET2BIDS/tree/main/ecat_validation)). Mirroring the DICOM conversion, the ecat2nii functions generate JSON sidecar files from image data, and users must provide additional metadata to make files BIDS-compliant. Note that the Python tools are command line tools, i.e. they can be called directly from a terminal.

_PET Metadata_: Some radiotracer and pharmaceutical information are always missing in the JSON sidecar files created from reading PET scanner data. To accommodate this, a dedicated PET JSON updater was
created. The PET JSON updater functions (updatejsonpetfile.m or update_json_pet_file.py) take the existing Nifti sidecar JSON file and new metadata to add as input, checks that the full BIDS specification is respected (correct metadata but also consistency of metadata values for the different metadata keys) and updates the image sidecar JSON file, allowing already converted image data to become BIDS compliant.
created. The PET JSON updater functions (updatejsonpetfile.m or update_json_pet_file.py) take an existing Nifti sidecar JSON file and new metadata to add as input, check that the full BIDS specification is respected (correct metadata but also consistency of metadata values for the different metadata keys) and updates the image sidecar JSON file, allowing already converted image data to become BIDS compliant.

_Spreadsheet conversion_: Tabular data formats are ubiquitous in the PET community, mainly to keep track of radiotracer information injected per participant and record time and radiotracer concentration from the blood sampling. Functions were created to read pre-formatted tabular data to either create or update existing sidecar JSON files. In addition dedicated functions were created to convert either a preformated tabular file or PMOD file (PMOD being a popular commercial pharmacokinetic modeling software [@Burger1997]) to a BIDS blood.tsv file with it's sidecar JSON. Supported formats are .xls, .xlsx, .csv, .tsv and .bld.
_Spreadsheet conversion_: Tabular data formats are ubiquitous in the PET community, mainly to keep track of radiotracer information injected per participant and record time and radiotracer concentration from the blood sampling. Functions were created to read preformatted tabular data to create or update existing sidecar JSON files. In addition, dedicated functions were created to convert either a preformatted tabular file or PMOD files (PMOD being a popular commercial pharmacokinetic modeling software [@Burger1997]) to a BIDS blood.tsv file with it's sidecar JSON. Supported formats are .xls, .xlsx, .csv, .tsv and .bld.

# Acknowledgements

Expand Down

0 comments on commit c8eaf08

Please sign in to comment.