Skip to main content

JUelich NeuroImaging FEature extractoR

Project description

Junifer logo

junifer - JUelich NeuroImaging FEature extractoR

PyPI PyPI - Python Version PyPI - Wheel Anaconda-Server Badge GitHub Codecov Ruff pre-commit DOI FAIR checklist badge

About

junifer is a data handling and feature extraction library targeted towards neuroimaging data specifically functional MRI data.

It is currently being developed and maintained at the Applied Machine Learning group at Forschungszentrum Juelich, Germany. Although the library is designed for people working at Institute of Neuroscience and Medicine - Brain and Behaviour (INM-7), it is designed to be as modular as possible thus enabling others to extend it easily.

The documentation is available at https://juaml.github.io/junifer.

Repository Organization

  • docs: Documentation, built using sphinx.
  • examples: Examples, using sphinx-gallery. File names of examples that create visual output must start with plot_, otherwise, with run_.
  • junifer: Main library directory.
    • api: User API module.
    • configs: Module for pre-defined configs for most used computing clusters.
    • data: Module that handles data required for the library to work (e.g. parcels, coordinates).
    • datagrabber: DataGrabber module.
    • datareader: DataReader module.
    • external: Module for external libraries and tools.
    • markers: Markers module.
    • onthefly: Transformation components (on-the-fly) module.
    • pipeline: Pipeline module.
    • preprocess: Preprocessing module.
    • storage: Storage module.
    • testing: Testing components module.
    • typing: Type hints module.
    • utils: Utilities module (e.g. logging).

Installation

Use pip to install from PyPI like so:

pip install junifer

You can also install via conda, like so:

conda install -c conda-forge junifer

Optional dependencies

junifer supports a few optional dependencies to enable certain features. You can install them by specifying a comma separated list within square brackets, like so:

pip install "junifer[bct,dev]"
  • bct installs bctpy to enable use of onthefly module.
  • neurokit2 installs neurokit2 to enable use of complexity markers.
  • all includes all of the above.
  • dev installs packages needed for development.
  • docs installs packages needed for building documentation.

Citation

If you use junifer in a scientific publication, we would appreciate if you cite our work. Currently, we do not have a publication, so feel free to use the project's Zenodo URL.

Funding

We thank the Helmholtz Imaging Platform and SMHB for supporting development of junifer. Development of this software was funded, in part, by the European Union’s Horizon Europe Framework Programme for Research infrastructures under the specific grant agreement no. 101147319 (EBRAINS 2.0). (The funding sources had no role in the design, implementation and evaluation of the pipeline.)

Contribution

Contributions are welcome and greatly appreciated. Please read the guidelines to get started.

License

junifer is released under the AGPL v3 license:

junifer, FZJuelich AML neuroimaging feature extraction library. Copyright (C) 2023, authors of junifer.

This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, either version 3 of the License, or any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more details.

You should have received a copy of the GNU Affero General Public License along with this program. If not, see http://www.gnu.org/licenses/.

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

junifer-0.0.7.dev334.tar.gz (605.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

junifer-0.0.7.dev334-py3-none-any.whl (639.8 kB view details)

Uploaded Python 3

File details

Details for the file junifer-0.0.7.dev334.tar.gz.

File metadata

  • Download URL: junifer-0.0.7.dev334.tar.gz
  • Upload date:
  • Size: 605.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for junifer-0.0.7.dev334.tar.gz
Algorithm Hash digest
SHA256 1d203c642b5c82a1bb751f9dedb8546ae5362d03d9a81212250f5d5a90308566
MD5 7cd3c51dd8daa2b0ecdbae433d57ecf4
BLAKE2b-256 c942ddd34f94d2b0cf89554457246884b978f69f0698c77b34db6649484f002f

See more details on using hashes here.

Provenance

The following attestation bundles were made for junifer-0.0.7.dev334.tar.gz:

Publisher: publish.yml on juaml/junifer

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file junifer-0.0.7.dev334-py3-none-any.whl.

File metadata

  • Download URL: junifer-0.0.7.dev334-py3-none-any.whl
  • Upload date:
  • Size: 639.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for junifer-0.0.7.dev334-py3-none-any.whl
Algorithm Hash digest
SHA256 e4428f868ab807b017ace53055f95b2dd340d6c350e1318a80f89bd0851d6a7f
MD5 ef42cdcfbc53b9e5b67e43b8753f7da6
BLAKE2b-256 6246d2e8c348f537d1746535717b19d58a78d3f9a7f1f89da1654cb0ecf904cb

See more details on using hashes here.

Provenance

The following attestation bundles were made for junifer-0.0.7.dev334-py3-none-any.whl:

Publisher: publish.yml on juaml/junifer

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page