ohbm / hackathon2023

Repository for the 2023 OHBM Hackathon
https://ohbm.github.io/hackathon2023/
GNU General Public License v3.0
15 stars 1 forks source link

CiftiPy - Better python support for cifti files #26

Open pvandyken opened 1 year ago

pvandyken commented 1 year ago

Title

CiftiPy

Short description and the goals for the OHBM BrainHack

cifti is a neuroimaging file format that flexibly stores vertex and voxel data in the same file. It's the format of choice in the HCP processing pipelines for storing surface maps, but can also be used for cortical parcellations, brain segmentations, structural and functional connectomes, and many other applications.

Currently, there isn't an easy way to handle this format in python. Nibabel has support, but the interface is unintuitive and bulky.

CiftiPy will be a wrapper around nibabel offering a convenient, numpy-based interface for accessing and manipulating cifti files. It will offer convenient methods for indexing cifti files by data-type, structure, and hemisphere, be easily and transparently viewed in an REPL (like pandas or xarray), and offer methods for common tasks.

Goals

No code has been written yet, but we have a fairly clear plan for the API. The goal will be to implement, test, and document the core interfaces.

Long term

We are prioritizing robustness over number of features, so we're purposefully trying to keep the scope as small as possible. If we get a good cifti interface built, however, it could in principle be extended to support other neuroimaging file types (gifti, nifti), resulting in a generalized, user-friendly nibabel wrapper.

Link to the Project

https://github.com/pvandyken/ciftipy

Image for the OHBM brainhack website

No response

Project lead

Peter Van Dyken - pvandyken#9542 Mohamed Yousif - dunnom8#1502 Mauricio Cespedes Tenorio - mau_cespedes99#7386

Main Hub

Montreal

Other Hub covered by the leaders

Skills

(Any and none of these skills are welcome! This is more a list of what tech we'll use)

Recommended tutorials for new contributors

Good first issues

No response

Twitter summary

ciftipy makes it easy to view, index, and manipulate cifti files with python

Short name for the Discord chat channel (~15 chars)

ciftipy

Please read and follow the OHBM Code of Conduct

ufangYang commented 6 months ago

hi @pvandyken can you provide the content and/or figure for this project to be added to Brainhack Proceeding 2023 by 15th May? Also, please don't forget to fill out your team member's details using this form: https://forms.gle/Ku3AVHcXvpUqVVkV7 . Cheers

pvandyken commented 6 months ago

Hi @ufangYang, sorry, I haven't had time to put into this. Can you just put this modified version of our pitch:

cifti is a neuroimaging file format that flexibly stores vertex and voxel data in the same file. It's the format of choice in the HCP processing pipelines for storing surface maps, but can also be used for cortical parcellations, brain segmentations, structural and functional connectomes, and many other applications.

Currently, there isn't an easy way to handle this format in python. Nibabel has support, but the interface is unintuitive and bulky.

CiftiPy is a wrapper around nibabel offering a convenient, numpy-based interface for accessing and manipulating cifti files. It offers convenient methods for indexing cifti files by data-type, structure, and hemisphere, be easily and transparently viewed in an REPL (like pandas or xarray), and offer methods for common tasks.

pvandyken commented 6 months ago

Also, there was only space for one author in the form, not sure how to put my co-authors:

Mohamed Yousif - Robarts Research Institute Mauricio Cespedes Tenorio - Robarts Research Institute