junifer 0.0.6.dev311__tar.gz → 0.0.6.dev324__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/PKG-INFO +1 -1
- junifer-0.0.6.dev324/docs/changes/newsfragments/408.enh +1 -0
- junifer-0.0.6.dev324/docs/changes/newsfragments/408.feature +1 -0
- junifer-0.0.6.dev324/docs/changes/newsfragments/409.bugfix +1 -0
- junifer-0.0.6.dev324/docs/changes/newsfragments/409.enh +1 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/_version.py +2 -2
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/markers/falff/_afni_falff.py +32 -35
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/markers/falff/_junifer_falff.py +10 -11
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/markers/falff/falff_base.py +1 -1
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/markers/falff/tests/test_falff_spheres.py +3 -1
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/markers/reho/_afni_reho.py +23 -25
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/markers/reho/_junifer_reho.py +7 -6
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/markers/reho/reho_base.py +1 -1
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/preprocess/confounds/fmriprep_confound_remover.py +35 -2
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/preprocess/smoothing/_afni_smoothing.py +37 -35
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/preprocess/smoothing/_fsl_smoothing.py +19 -26
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/preprocess/smoothing/_nilearn_smoothing.py +33 -12
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/preprocess/smoothing/smoothing.py +2 -5
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/preprocess/warping/_ants_warper.py +111 -25
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/preprocess/warping/_fsl_warper.py +51 -13
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer.egg-info/PKG-INFO +1 -1
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer.egg-info/SOURCES.txt +4 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/.dockerignore +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/.github/ISSUE_TEMPLATE/bug-report.yml +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/.github/ISSUE_TEMPLATE/config.yml +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/.github/ISSUE_TEMPLATE/dataset-request.yml +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/.github/ISSUE_TEMPLATE/documention-request.yml +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/.github/ISSUE_TEMPLATE/feature-request.yml +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/.github/ISSUE_TEMPLATE/marker-request.yml +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/.github/dependabot.yml +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/.github/pull_request_template.md +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/.github/workflows/ci-docs.yml +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/.github/workflows/ci.yml +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/.github/workflows/docker-ci-publish.yml +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/.github/workflows/docker-docs-publish.yml +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/.github/workflows/docs-preview.yml +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/.github/workflows/docs.yml +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/.github/workflows/lint.yml +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/.github/workflows/pypi.yml +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/.gitignore +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/.gitmodules +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/.pre-commit-config.yaml +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/AUTHORS.rst +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/Dockerfile-ci +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/Dockerfile-docs +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/LICENSE.md +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/README.md +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/codecov.yml +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/conda-env.yml +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/docs/Makefile +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/docs/_static/css/custom.css +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/docs/_static/js/custom.js +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/docs/_templates/versions.html +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/docs/api/api.rst +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/docs/api/cli.rst +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/docs/api/configs.rst +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/docs/api/data.rst +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/docs/api/datagrabbers.rst +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/docs/api/datareaders.rst +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/docs/api/index.rst +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/docs/api/markers.rst +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/docs/api/nilearn.rst +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/docs/api/onthefly.rst +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/docs/api/pipeline.rst +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/docs/api/preprocessing.rst +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/docs/api/stats.rst +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/docs/api/storage.rst +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/docs/api/testing.rst +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/docs/api/utils.rst +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/docs/builtin.rst +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/docs/changes/contributors.inc +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/docs/changes/newsfragments/.gitignore +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/docs/changes/newsfragments/335.enh +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/docs/changes/newsfragments/354.feature +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/docs/changes/newsfragments/355.misc +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/docs/changes/newsfragments/356.bugfix +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/docs/changes/newsfragments/357.enh +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/docs/changes/newsfragments/358.doc +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/docs/changes/newsfragments/359.doc +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/docs/changes/newsfragments/360.bugfix +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/docs/changes/newsfragments/361.misc +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/docs/changes/newsfragments/362.feature +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/docs/changes/newsfragments/367.enh +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/docs/changes/newsfragments/368.enh +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/docs/changes/newsfragments/369.bugfix +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/docs/changes/newsfragments/370.bugfix +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/docs/changes/newsfragments/372.misc +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/docs/changes/newsfragments/373.misc +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/docs/changes/newsfragments/374.misc +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/docs/changes/newsfragments/380.misc +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/docs/changes/newsfragments/382.misc +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/docs/changes/newsfragments/383.misc +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/docs/changes/newsfragments/384.misc +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/docs/changes/newsfragments/385.bugfix +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/docs/changes/newsfragments/386.bugfix +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/docs/changes/newsfragments/387.change +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/docs/changes/newsfragments/387.feature +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/docs/changes/newsfragments/388.bugfix +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/docs/changes/newsfragments/389.enh +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/docs/changes/newsfragments/390.change +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/docs/changes/newsfragments/390.enh +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/docs/changes/newsfragments/391.misc +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/docs/changes/newsfragments/392.feature +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/docs/changes/newsfragments/393.misc +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/docs/changes/newsfragments/398.bugfix +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/docs/changes/newsfragments/401.feature +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/docs/changes/newsfragments/402.change +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/docs/changes/newsfragments/402.enh +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/docs/changes/newsfragments/403.enh +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/docs/changes/newsfragments/405.change +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/docs/changes/newsfragments/405.enh +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/docs/changes/newsfragments/407.feature +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/docs/conf.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/docs/contribution.rst +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/docs/extending/coordinates.rst +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/docs/extending/datagrabber.rst +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/docs/extending/dependencies.rst +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/docs/extending/extension.rst +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/docs/extending/index.rst +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/docs/extending/marker.rst +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/docs/extending/masks.rst +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/docs/extending/parcellations.rst +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/docs/extending/preprocessor.rst +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/docs/faq.rst +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/docs/help.rst +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/docs/images/junifer_logo.png +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/docs/index.rst +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/docs/installation.rst +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/docs/links.inc +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/docs/maintaining.rst +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/docs/redirect.html +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/docs/starting.rst +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/docs/understanding/data.rst +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/docs/understanding/datagrabber.rst +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/docs/understanding/datareader.rst +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/docs/understanding/index.rst +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/docs/understanding/marker.rst +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/docs/understanding/pipeline.rst +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/docs/understanding/preprocess.rst +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/docs/understanding/storage.rst +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/docs/using/codeless.rst +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/docs/using/index.rst +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/docs/using/masks.rst +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/docs/using/queueing.rst +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/docs/using/running.rst +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/docs/whats_new.rst +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/examples/README.rst +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/examples/norun_hcpfc_pearson.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/examples/norun_ukbvm_gmd.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/examples/run_compute_parcel_mean.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/examples/run_datagrabber_bids_datalad.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/examples/run_ets_rss_marker.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/examples/run_junifer_julearn.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/examples/run_run_gmd_mean.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/examples/yamls/gmd_mean.yaml +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/examples/yamls/gmd_mean_htcondor.yaml +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/examples/yamls/partly_cloudy_agg_mean_tian.yml +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/examples/yamls/ukb_gmd_mean.yaml +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/ignore_words.txt +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/__init__.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/__init__.pyi +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/api/__init__.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/api/__init__.pyi +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/api/decorators.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/api/functions.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/api/py.typed +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/api/queue_context/__init__.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/api/queue_context/__init__.pyi +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/api/queue_context/gnu_parallel_local_adapter.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/api/queue_context/htcondor_adapter.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/api/queue_context/py.typed +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/api/queue_context/queue_context_adapter.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/api/queue_context/tests/test_gnu_parallel_local_adapter.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/api/queue_context/tests/test_htcondor_adapter.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/api/res/afni/3dAFNItoNIFTI +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/api/res/afni/3dRSFC +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/api/res/afni/3dReHo +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/api/res/afni/afni +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/api/res/afni/run_afni_docker.sh +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/api/res/ants/ResampleImage +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/api/res/ants/antsApplyTransforms +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/api/res/ants/antsApplyTransformsToPoints +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/api/res/ants/run_ants_docker.sh +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/api/res/freesurfer/mri_binarize +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/api/res/freesurfer/mri_mc +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/api/res/freesurfer/mri_pretess +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/api/res/freesurfer/mris_convert +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/api/res/freesurfer/run_freesurfer_docker.sh +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/api/res/fsl/applywarp +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/api/res/fsl/flirt +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/api/res/fsl/img2imgcoord +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/api/res/fsl/run_fsl_docker.sh +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/api/res/fsl/std2imgcoord +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/api/res/run_conda.bash +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/api/res/run_conda.zsh +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/api/res/run_venv.bash +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/api/res/run_venv.zsh +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/api/tests/test_functions.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/cli/__init__.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/cli/__init__.pyi +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/cli/cli.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/cli/parser.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/cli/py.typed +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/cli/tests/data/gmd_mean.yaml +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/cli/tests/data/gmd_mean_htcondor.yaml +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/cli/tests/data/partly_cloudy_agg_mean_tian.yml +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/cli/tests/test_cli.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/cli/tests/test_cli_utils.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/cli/tests/test_parser.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/cli/utils.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/configs/__init__.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/configs/juseless/__init__.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/configs/juseless/__init__.pyi +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/configs/juseless/datagrabbers/__init__.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/configs/juseless/datagrabbers/__init__.pyi +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/configs/juseless/datagrabbers/aomic_id1000_vbm.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/configs/juseless/datagrabbers/camcan_vbm.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/configs/juseless/datagrabbers/ixi_vbm.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/configs/juseless/datagrabbers/py.typed +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/configs/juseless/datagrabbers/tests/test_aomic_id1000_vbm.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/configs/juseless/datagrabbers/tests/test_camcan_vbm.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/configs/juseless/datagrabbers/tests/test_ixi_vbm.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/configs/juseless/datagrabbers/tests/test_ucla.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/configs/juseless/datagrabbers/tests/test_ukb_vbm.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/configs/juseless/datagrabbers/ucla.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/configs/juseless/datagrabbers/ukb_vbm.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/configs/juseless/py.typed +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/conftest.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/data/__init__.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/data/__init__.pyi +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/data/_dispatch.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/data/coordinates/VOIs/meta/AutobiographicalMemory_VOIs.txt +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/data/coordinates/VOIs/meta/CogAC_VOIs.txt +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/data/coordinates/VOIs/meta/CogAR_VOIs.txt +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/data/coordinates/VOIs/meta/DMNBuckner_VOIs.txt +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/data/coordinates/VOIs/meta/Dosenbach2010_MNI_VOIs.txt +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/data/coordinates/VOIs/meta/Empathy_VOIs.txt +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/data/coordinates/VOIs/meta/Motor_VOIs.txt +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/data/coordinates/VOIs/meta/MultiTask_VOIs.txt +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/data/coordinates/VOIs/meta/PhysioStress_VOIs.txt +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/data/coordinates/VOIs/meta/Power2011_MNI_VOIs.txt +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/data/coordinates/VOIs/meta/Power2013_MNI_VOIs.tsv +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/data/coordinates/VOIs/meta/Rew_VOIs.txt +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/data/coordinates/VOIs/meta/Somatosensory_VOIs.txt +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/data/coordinates/VOIs/meta/ToM_VOIs.txt +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/data/coordinates/VOIs/meta/VigAtt_VOIs.txt +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/data/coordinates/VOIs/meta/WM_VOIs.txt +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/data/coordinates/VOIs/meta/eMDN_VOIs.txt +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/data/coordinates/VOIs/meta/eSAD_VOIs.txt +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/data/coordinates/VOIs/meta/extDMN_VOIs.txt +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/data/coordinates/__init__.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/data/coordinates/__init__.pyi +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/data/coordinates/_ants_coordinates_warper.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/data/coordinates/_coordinates.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/data/coordinates/_fsl_coordinates_warper.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/data/coordinates/tests/test_coordinates.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/data/masks/__init__.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/data/masks/__init__.pyi +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/data/masks/_ants_mask_warper.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/data/masks/_fsl_mask_warper.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/data/masks/_masks.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/data/masks/tests/test_masks.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/data/masks/ukb/UKB_15K_GM_template.nii.gz +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/data/masks/vickery-patil/CAT12_IXI555_MNI152_TMP_GS_GMprob0.2_clean.nii.gz +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/data/masks/vickery-patil/CAT12_IXI555_MNI152_TMP_GS_GMprob0.2_clean_3mm.nii.gz +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/data/masks/vickery-patil/GMprob0.2_cortex_3mm_NA_rm.nii.gz +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/data/parcellations/__init__.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/data/parcellations/__init__.pyi +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/data/parcellations/_ants_parcellation_warper.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/data/parcellations/_fsl_parcellation_warper.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/data/parcellations/_parcellations.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/data/parcellations/tests/test_parcellations.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/data/pipeline_data_registry_base.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/data/py.typed +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/data/template_spaces.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/data/tests/test_data_utils.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/data/tests/test_template_spaces.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/data/utils.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/datagrabber/__init__.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/datagrabber/__init__.pyi +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/datagrabber/aomic/__init__.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/datagrabber/aomic/__init__.pyi +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/datagrabber/aomic/id1000.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/datagrabber/aomic/piop1.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/datagrabber/aomic/piop2.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/datagrabber/aomic/py.typed +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/datagrabber/aomic/tests/test_id1000.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/datagrabber/aomic/tests/test_piop1.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/datagrabber/aomic/tests/test_piop2.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/datagrabber/base.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/datagrabber/datalad_base.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/datagrabber/dmcc13_benchmark.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/datagrabber/hcp1200/__init__.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/datagrabber/hcp1200/__init__.pyi +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/datagrabber/hcp1200/datalad_hcp1200.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/datagrabber/hcp1200/hcp1200.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/datagrabber/hcp1200/py.typed +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/datagrabber/hcp1200/tests/test_hcp1200.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/datagrabber/multiple.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/datagrabber/pattern.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/datagrabber/pattern_datalad.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/datagrabber/pattern_validation_mixin.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/datagrabber/py.typed +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/datagrabber/tests/test_base.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/datagrabber/tests/test_datalad_base.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/datagrabber/tests/test_dmcc13_benchmark.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/datagrabber/tests/test_multiple.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/datagrabber/tests/test_pattern.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/datagrabber/tests/test_pattern_datalad.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/datagrabber/tests/test_pattern_validation_mixin.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/datareader/__init__.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/datareader/__init__.pyi +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/datareader/default.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/datareader/py.typed +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/datareader/tests/test_default_reader.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/external/BrainPrint/brainprint/__init__.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/external/BrainPrint/brainprint/_version.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/external/BrainPrint/brainprint/asymmetry.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/external/BrainPrint/brainprint/brainprint.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/external/BrainPrint/brainprint/surfaces.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/external/BrainPrint/brainprint/utils/__init__.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/external/BrainPrint/brainprint/utils/_config.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/external/BrainPrint/brainprint/utils/utils.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/external/__init__.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/external/h5io/h5io/__init__.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/external/h5io/h5io/_h5io.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/external/h5io/h5io/_version.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/external/h5io/h5io/chunked_array.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/external/h5io/h5io/chunked_list.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/external/nilearn/__init__.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/external/nilearn/__init__.pyi +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/external/nilearn/junifer_connectivity_measure.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/external/nilearn/junifer_nifti_spheres_masker.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/external/nilearn/py.typed +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/external/nilearn/tests/test_junifer_connectivity_measure.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/external/nilearn/tests/test_junifer_nifti_spheres_masker.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/markers/__init__.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/markers/__init__.pyi +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/markers/base.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/markers/brainprint.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/markers/complexity/__init__.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/markers/complexity/__init__.pyi +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/markers/complexity/complexity_base.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/markers/complexity/hurst_exponent.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/markers/complexity/multiscale_entropy_auc.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/markers/complexity/perm_entropy.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/markers/complexity/py.typed +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/markers/complexity/range_entropy.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/markers/complexity/range_entropy_auc.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/markers/complexity/sample_entropy.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/markers/complexity/tests/test_complexity_base.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/markers/complexity/tests/test_hurst_exponent.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/markers/complexity/tests/test_multiscale_entropy_auc.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/markers/complexity/tests/test_perm_entropy.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/markers/complexity/tests/test_range_entropy.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/markers/complexity/tests/test_range_entropy_auc.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/markers/complexity/tests/test_sample_entropy.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/markers/complexity/tests/test_weighted_perm_entropy.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/markers/complexity/weighted_perm_entropy.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/markers/ets_rss.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/markers/falff/__init__.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/markers/falff/__init__.pyi +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/markers/falff/falff_parcels.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/markers/falff/falff_spheres.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/markers/falff/py.typed +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/markers/falff/tests/test_falff_parcels.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/markers/functional_connectivity/__init__.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/markers/functional_connectivity/__init__.pyi +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/markers/functional_connectivity/crossparcellation_functional_connectivity.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/markers/functional_connectivity/edge_functional_connectivity_parcels.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/markers/functional_connectivity/edge_functional_connectivity_spheres.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/markers/functional_connectivity/functional_connectivity_base.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/markers/functional_connectivity/functional_connectivity_parcels.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/markers/functional_connectivity/functional_connectivity_spheres.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/markers/functional_connectivity/py.typed +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/markers/functional_connectivity/tests/test_crossparcellation_functional_connectivity.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/markers/functional_connectivity/tests/test_edge_functional_connectivity_parcels.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/markers/functional_connectivity/tests/test_edge_functional_connectivity_spheres.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/markers/functional_connectivity/tests/test_functional_connectivity_base.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/markers/functional_connectivity/tests/test_functional_connectivity_parcels.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/markers/functional_connectivity/tests/test_functional_connectivity_spheres.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/markers/parcel_aggregation.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/markers/py.typed +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/markers/reho/__init__.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/markers/reho/__init__.pyi +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/markers/reho/py.typed +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/markers/reho/reho_parcels.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/markers/reho/reho_spheres.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/markers/reho/tests/test_reho_parcels.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/markers/reho/tests/test_reho_spheres.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/markers/sphere_aggregation.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/markers/temporal_snr/__init__.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/markers/temporal_snr/__init__.pyi +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/markers/temporal_snr/py.typed +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/markers/temporal_snr/temporal_snr_base.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/markers/temporal_snr/temporal_snr_parcels.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/markers/temporal_snr/temporal_snr_spheres.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/markers/temporal_snr/tests/test_temporal_snr_base.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/markers/temporal_snr/tests/test_temporal_snr_parcels.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/markers/temporal_snr/tests/test_temporal_snr_spheres.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/markers/tests/test_brainprint.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/markers/tests/test_ets_rss.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/markers/tests/test_marker_utils.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/markers/tests/test_markers_base.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/markers/tests/test_parcel_aggregation.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/markers/tests/test_sphere_aggregation.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/markers/utils.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/onthefly/__init__.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/onthefly/_brainprint.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/onthefly/read_transform.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/onthefly/tests/test_read_transform.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/pipeline/__init__.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/pipeline/__init__.pyi +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/pipeline/marker_collection.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/pipeline/pipeline_component_registry.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/pipeline/pipeline_step_mixin.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/pipeline/py.typed +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/pipeline/tests/test_marker_collection.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/pipeline/tests/test_pipeline_component_registry.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/pipeline/tests/test_pipeline_step_mixin.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/pipeline/tests/test_update_meta_mixin.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/pipeline/tests/test_workdir_manager.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/pipeline/update_meta_mixin.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/pipeline/utils.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/pipeline/workdir_manager.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/preprocess/__init__.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/preprocess/__init__.pyi +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/preprocess/base.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/preprocess/confounds/__init__.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/preprocess/confounds/__init__.pyi +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/preprocess/confounds/py.typed +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/preprocess/confounds/tests/test_fmriprep_confound_remover.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/preprocess/py.typed +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/preprocess/smoothing/__init__.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/preprocess/smoothing/__init__.pyi +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/preprocess/smoothing/py.typed +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/preprocess/smoothing/tests/test_smoothing.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/preprocess/tests/test_preprocess_base.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/preprocess/warping/__init__.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/preprocess/warping/__init__.pyi +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/preprocess/warping/py.typed +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/preprocess/warping/space_warper.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/preprocess/warping/tests/test_space_warper.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/py.typed +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/stats.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/storage/__init__.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/storage/__init__.pyi +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/storage/base.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/storage/hdf5.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/storage/pandas_base.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/storage/py.typed +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/storage/sqlite.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/storage/tests/test_hdf5.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/storage/tests/test_pandas_base.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/storage/tests/test_sqlite.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/storage/tests/test_storage_base.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/storage/tests/test_utils.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/storage/utils.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/testing/__init__.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/testing/__init__.pyi +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/testing/data/sub-0001_task-anticipation_acq-seq_desc-confounds_regressors.tsv +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/testing/datagrabbers.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/testing/py.typed +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/testing/registry.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/testing/tests/test_oasisvmbtesting_datagrabber.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/testing/tests/test_partlycloudytesting_datagrabber.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/testing/tests/test_spmauditory_datagrabber.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/testing/tests/test_testing_registry.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/testing/utils.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/tests/test_main.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/tests/test_stats.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/typing/__init__.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/typing/__init__.pyi +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/typing/_typing.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/utils/__init__.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/utils/__init__.pyi +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/utils/_config.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/utils/_yaml.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/utils/fs.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/utils/helpers.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/utils/logging.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/utils/py.typed +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/utils/singleton.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/utils/tests/test_config.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/utils/tests/test_fs.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/utils/tests/test_helpers.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/utils/tests/test_logging.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer.egg-info/dependency_links.txt +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer.egg-info/entry_points.txt +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer.egg-info/requires.txt +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer.egg-info/top_level.txt +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/pyproject.toml +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/setup.cfg +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/setup.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/tools/create_aomic1000_example_dataset.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/tools/create_aomicpiop1_example_dataset.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/tools/create_aomicpiop2_example_dataset.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/tools/create_bids_example_dataset.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/tools/create_bids_example_dataset_sessions.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/tools/create_dmcc13_benchmark_example_dataset.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/tools/create_hcp1200_example_dataset.py +0 -0
- {junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/tox.ini +0 -0
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.1
|
2
2
|
Name: junifer
|
3
|
-
Version: 0.0.6.
|
3
|
+
Version: 0.0.6.dev324
|
4
4
|
Summary: JUelich NeuroImaging FEature extractoR
|
5
5
|
Author-email: Fede Raimondo <f.raimondo@fz-juelich.de>, Synchon Mandal <s.mandal@fz-juelich.de>
|
6
6
|
Maintainer-email: Fede Raimondo <f.raimondo@fz-juelich.de>, Synchon Mandal <s.mandal@fz-juelich.de>
|
@@ -0,0 +1 @@
|
|
1
|
+
Update Preprocessors to sync data their paths so that the results are idempotent by `Synchon Mandal`_
|
@@ -0,0 +1 @@
|
|
1
|
+
Allow masks to be warped, if found, in :class:`.SpaceWarper` by `Synchon Mandal`_
|
@@ -0,0 +1 @@
|
|
1
|
+
Use correct file output suffices for AFNI-based markers by `Synchon Mandal`_
|
@@ -0,0 +1 @@
|
|
1
|
+
Ease asset storage for AFNI-based markers by `Synchon Mandal`_
|
@@ -12,5 +12,5 @@ __version__: str
|
|
12
12
|
__version_tuple__: VERSION_TUPLE
|
13
13
|
version_tuple: VERSION_TUPLE
|
14
14
|
|
15
|
-
__version__ = version = '0.0.6.
|
16
|
-
__version_tuple__ = version_tuple = (0, 0, 6, '
|
15
|
+
__version__ = version = '0.0.6.dev324'
|
16
|
+
__version_tuple__ = version_tuple = (0, 0, 6, 'dev324')
|
@@ -50,7 +50,7 @@ class AFNIALFF(metaclass=Singleton):
|
|
50
50
|
@lru_cache(maxsize=None, typed=True)
|
51
51
|
def compute(
|
52
52
|
self,
|
53
|
-
|
53
|
+
input_path: Path,
|
54
54
|
highpass: float,
|
55
55
|
lowpass: float,
|
56
56
|
tr: Optional[float],
|
@@ -59,8 +59,8 @@ class AFNIALFF(metaclass=Singleton):
|
|
59
59
|
|
60
60
|
Parameters
|
61
61
|
----------
|
62
|
-
|
63
|
-
|
62
|
+
input_path : pathlib.Path
|
63
|
+
Path to the input data.
|
64
64
|
highpass : positive float
|
65
65
|
Highpass cutoff frequency.
|
66
66
|
lowpass : positive float
|
@@ -82,19 +82,17 @@ class AFNIALFF(metaclass=Singleton):
|
|
82
82
|
"""
|
83
83
|
logger.debug("Creating cache for ALFF computation via AFNI")
|
84
84
|
|
85
|
-
# Create
|
86
|
-
|
87
|
-
|
88
|
-
|
89
|
-
nifti_in_file_path = tempdir / "input.nii" # needs to be .nii
|
90
|
-
nib.save(data, nifti_in_file_path)
|
85
|
+
# Create element-scoped tempdir
|
86
|
+
element_tempdir = WorkDirManager().get_element_tempdir(
|
87
|
+
prefix="afni_lff"
|
88
|
+
)
|
91
89
|
|
92
90
|
# Set 3dRSFC command
|
93
|
-
|
91
|
+
lff_out_path_prefix = element_tempdir / "output"
|
94
92
|
bp_cmd = [
|
95
93
|
"3dRSFC",
|
96
|
-
f"-prefix {
|
97
|
-
f"-input {
|
94
|
+
f"-prefix {lff_out_path_prefix.resolve()}",
|
95
|
+
f"-input {input_path.resolve()}",
|
98
96
|
f"-band {highpass} {lowpass}",
|
99
97
|
"-no_rsfa -nosat -nodetrend",
|
100
98
|
]
|
@@ -104,49 +102,48 @@ class AFNIALFF(metaclass=Singleton):
|
|
104
102
|
# Call 3dRSFC
|
105
103
|
run_ext_cmd(name="3dRSFC", cmd=bp_cmd)
|
106
104
|
|
107
|
-
#
|
108
|
-
|
109
|
-
|
110
|
-
|
111
|
-
|
112
|
-
|
113
|
-
|
105
|
+
# Read header to get output suffix
|
106
|
+
niimg = nib.load(input_path)
|
107
|
+
header = niimg.header
|
108
|
+
sform_code = header.get_sform(coded=True)[1]
|
109
|
+
if sform_code == 4:
|
110
|
+
output_suffix = "tlrc"
|
111
|
+
else:
|
112
|
+
output_suffix = "orig"
|
113
|
+
# Set params suffix
|
114
114
|
params_suffix = f"_{highpass}_{lowpass}_{tr}"
|
115
115
|
|
116
116
|
# Convert alff afni to nifti
|
117
|
-
|
118
|
-
element_tempdir / f"
|
117
|
+
alff_nifti_out_path = (
|
118
|
+
element_tempdir / f"output_alff{params_suffix}.nii"
|
119
119
|
) # needs to be .nii
|
120
120
|
convert_alff_cmd = [
|
121
121
|
"3dAFNItoNIFTI",
|
122
|
-
f"-prefix {
|
123
|
-
f"{
|
122
|
+
f"-prefix {alff_nifti_out_path.resolve()}",
|
123
|
+
f"{lff_out_path_prefix}_ALFF+{output_suffix}.BRIK",
|
124
124
|
]
|
125
125
|
# Call 3dAFNItoNIFTI
|
126
126
|
run_ext_cmd(name="3dAFNItoNIFTI", cmd=convert_alff_cmd)
|
127
127
|
|
128
128
|
# Convert falff afni to nifti
|
129
|
-
|
130
|
-
element_tempdir / f"
|
129
|
+
falff_nifti_out_path = (
|
130
|
+
element_tempdir / f"output_falff{params_suffix}.nii"
|
131
131
|
) # needs to be .nii
|
132
132
|
convert_falff_cmd = [
|
133
133
|
"3dAFNItoNIFTI",
|
134
|
-
f"-prefix {
|
135
|
-
f"{
|
134
|
+
f"-prefix {falff_nifti_out_path.resolve()}",
|
135
|
+
f"{lff_out_path_prefix}_fALFF+{output_suffix}.BRIK",
|
136
136
|
]
|
137
137
|
# Call 3dAFNItoNIFTI
|
138
138
|
run_ext_cmd(name="3dAFNItoNIFTI", cmd=convert_falff_cmd)
|
139
139
|
|
140
140
|
# Load nifti
|
141
|
-
alff_data = nib.load(
|
142
|
-
falff_data = nib.load(
|
143
|
-
|
144
|
-
# Delete tempdir
|
145
|
-
WorkDirManager().delete_tempdir(tempdir)
|
141
|
+
alff_data = nib.load(alff_nifti_out_path)
|
142
|
+
falff_data = nib.load(falff_nifti_out_path)
|
146
143
|
|
147
144
|
return (
|
148
145
|
alff_data,
|
149
146
|
falff_data,
|
150
|
-
|
151
|
-
|
152
|
-
)
|
147
|
+
alff_nifti_out_path,
|
148
|
+
falff_nifti_out_path,
|
149
|
+
)
|
@@ -47,7 +47,7 @@ class JuniferALFF(metaclass=Singleton):
|
|
47
47
|
@lru_cache(maxsize=None, typed=True)
|
48
48
|
def compute(
|
49
49
|
self,
|
50
|
-
|
50
|
+
input_path: Path,
|
51
51
|
highpass: float,
|
52
52
|
lowpass: float,
|
53
53
|
tr: Optional[float],
|
@@ -56,8 +56,8 @@ class JuniferALFF(metaclass=Singleton):
|
|
56
56
|
|
57
57
|
Parameters
|
58
58
|
----------
|
59
|
-
|
60
|
-
|
59
|
+
input_path : pathlib.Path
|
60
|
+
Path to the input data.
|
61
61
|
highpass : positive float
|
62
62
|
Highpass cutoff frequency.
|
63
63
|
lowpass : positive float
|
@@ -80,9 +80,10 @@ class JuniferALFF(metaclass=Singleton):
|
|
80
80
|
logger.debug("Creating cache for ALFF computation via junifer")
|
81
81
|
|
82
82
|
# Get scan data
|
83
|
-
|
83
|
+
niimg = nib.load(input_path)
|
84
|
+
niimg_data = niimg.get_fdata().copy()
|
84
85
|
if tr is None:
|
85
|
-
tr = float(
|
86
|
+
tr = float(niimg.header["pixdim"][4]) # type: ignore
|
86
87
|
logger.info(f"`tr` not provided, using `tr` from header: {tr}")
|
87
88
|
|
88
89
|
# Bandpass the data within the lowpass and highpass cutoff freqs
|
@@ -120,19 +121,17 @@ class JuniferALFF(metaclass=Singleton):
|
|
120
121
|
# Calculate ALFF
|
121
122
|
alff = numerator / np.sqrt(niimg_data.shape[-1])
|
122
123
|
alff_data = nimg.new_img_like(
|
123
|
-
ref_niimg=
|
124
|
+
ref_niimg=niimg,
|
124
125
|
data=alff,
|
125
126
|
)
|
126
127
|
falff_data = nimg.new_img_like(
|
127
|
-
ref_niimg=
|
128
|
+
ref_niimg=niimg,
|
128
129
|
data=falff,
|
129
130
|
)
|
130
131
|
|
131
|
-
# Create element-scoped tempdir
|
132
|
-
# available later as nibabel stores file path reference for
|
133
|
-
# loading on computation
|
132
|
+
# Create element-scoped tempdir
|
134
133
|
element_tempdir = WorkDirManager().get_element_tempdir(
|
135
|
-
prefix="
|
134
|
+
prefix="junifer_lff"
|
136
135
|
)
|
137
136
|
output_alff_path = element_tempdir / "output_alff.nii.gz"
|
138
137
|
output_falff_path = element_tempdir / "output_falff.nii.gz"
|
@@ -146,7 +146,7 @@ class ALFFBase(BaseMarker):
|
|
146
146
|
estimator = JuniferALFF()
|
147
147
|
# Compute ALFF + fALFF
|
148
148
|
alff, falff, alff_path, falff_path = estimator.compute( # type: ignore
|
149
|
-
|
149
|
+
input_path=input_data["path"],
|
150
150
|
highpass=self.highpass,
|
151
151
|
lowpass=self.lowpass,
|
152
152
|
tr=self.tr,
|
{junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/markers/falff/tests/test_falff_spheres.py
RENAMED
@@ -69,7 +69,9 @@ def test_ALFFSpheres(caplog: pytest.LogCaptureFixture, tmp_path: Path) -> None:
|
|
69
69
|
# Fit transform marker on data
|
70
70
|
output = marker.fit_transform(element_data)
|
71
71
|
|
72
|
-
|
72
|
+
# Tests for ALFFParcels run before this with the same data and that
|
73
|
+
# should create the cache
|
74
|
+
assert "Calculating ALFF and fALFF" in caplog.text
|
73
75
|
|
74
76
|
# Get BOLD output
|
75
77
|
assert "BOLD" in output
|
@@ -50,7 +50,7 @@ class AFNIReHo(metaclass=Singleton):
|
|
50
50
|
@lru_cache(maxsize=None, typed=True)
|
51
51
|
def compute(
|
52
52
|
self,
|
53
|
-
|
53
|
+
input_path: Path,
|
54
54
|
nneigh: int = 27,
|
55
55
|
neigh_rad: Optional[float] = None,
|
56
56
|
neigh_x: Optional[float] = None,
|
@@ -65,8 +65,8 @@ class AFNIReHo(metaclass=Singleton):
|
|
65
65
|
|
66
66
|
Parameters
|
67
67
|
----------
|
68
|
-
|
69
|
-
|
68
|
+
input_path : pathlib.Path
|
69
|
+
Path to the input data.
|
70
70
|
nneigh : {7, 19, 27}, optional
|
71
71
|
Number of voxels in the neighbourhood, inclusive. Can be:
|
72
72
|
|
@@ -128,19 +128,17 @@ class AFNIReHo(metaclass=Singleton):
|
|
128
128
|
"""
|
129
129
|
logger.debug("Creating cache for ReHo computation via AFNI")
|
130
130
|
|
131
|
-
# Create
|
132
|
-
|
133
|
-
|
134
|
-
|
135
|
-
nifti_in_file_path = tempdir / "input.nii" # needs to be .nii
|
136
|
-
nib.save(data, nifti_in_file_path)
|
131
|
+
# Create element-scoped tempdir
|
132
|
+
element_tempdir = WorkDirManager().get_element_tempdir(
|
133
|
+
prefix="afni_reho"
|
134
|
+
)
|
137
135
|
|
138
136
|
# Set 3dReHo command
|
139
|
-
reho_out_path_prefix =
|
137
|
+
reho_out_path_prefix = element_tempdir / "output"
|
140
138
|
reho_cmd = [
|
141
139
|
"3dReHo",
|
142
140
|
f"-prefix {reho_out_path_prefix.resolve()}",
|
143
|
-
f"-inset {
|
141
|
+
f"-inset {input_path.resolve()}",
|
144
142
|
]
|
145
143
|
# Check ellipsoidal / cuboidal volume arguments
|
146
144
|
if neigh_rad:
|
@@ -164,28 +162,28 @@ class AFNIReHo(metaclass=Singleton):
|
|
164
162
|
# Call 3dReHo
|
165
163
|
run_ext_cmd(name="3dReHo", cmd=reho_cmd)
|
166
164
|
|
167
|
-
#
|
168
|
-
|
169
|
-
|
170
|
-
|
171
|
-
|
172
|
-
|
165
|
+
# Read header to get output suffix
|
166
|
+
niimg = nib.load(input_path)
|
167
|
+
header = niimg.header
|
168
|
+
sform_code = header.get_sform(coded=True)[1]
|
169
|
+
if sform_code == 4:
|
170
|
+
output_suffix = "tlrc"
|
171
|
+
else:
|
172
|
+
output_suffix = "orig"
|
173
|
+
|
173
174
|
# Convert afni to nifti
|
174
|
-
|
175
|
+
reho_nifti_out_path = (
|
175
176
|
element_tempdir / "output.nii" # needs to be .nii
|
176
177
|
)
|
177
178
|
convert_cmd = [
|
178
179
|
"3dAFNItoNIFTI",
|
179
|
-
f"-prefix {
|
180
|
-
f"{reho_out_path_prefix}+
|
180
|
+
f"-prefix {reho_nifti_out_path.resolve()}",
|
181
|
+
f"{reho_out_path_prefix}+{output_suffix}.BRIK",
|
181
182
|
]
|
182
183
|
# Call 3dAFNItoNIFTI
|
183
184
|
run_ext_cmd(name="3dAFNItoNIFTI", cmd=convert_cmd)
|
184
185
|
|
185
186
|
# Load nifti
|
186
|
-
output_data = nib.load(
|
187
|
-
|
188
|
-
# Delete tempdir
|
189
|
-
WorkDirManager().delete_tempdir(tempdir)
|
187
|
+
output_data = nib.load(reho_nifti_out_path)
|
190
188
|
|
191
|
-
return output_data,
|
189
|
+
return output_data, reho_nifti_out_path
|
@@ -48,15 +48,15 @@ class JuniferReHo(metaclass=Singleton):
|
|
48
48
|
@lru_cache(maxsize=None, typed=True)
|
49
49
|
def compute(
|
50
50
|
self,
|
51
|
-
|
51
|
+
input_path: Path,
|
52
52
|
nneigh: int = 27,
|
53
53
|
) -> tuple["Nifti1Image", Path]:
|
54
54
|
"""Compute ReHo map.
|
55
55
|
|
56
56
|
Parameters
|
57
57
|
----------
|
58
|
-
|
59
|
-
|
58
|
+
input_path : pathlib.Path
|
59
|
+
Path to the input data.
|
60
60
|
nneigh : {7, 19, 27, 125}, optional
|
61
61
|
Number of voxels in the neighbourhood, inclusive. Can be:
|
62
62
|
|
@@ -89,7 +89,8 @@ class JuniferReHo(metaclass=Singleton):
|
|
89
89
|
logger.debug("Creating cache for ReHo computation via junifer")
|
90
90
|
|
91
91
|
# Get scan data
|
92
|
-
|
92
|
+
niimg = nib.load(input_path)
|
93
|
+
niimg_data = niimg.get_fdata().copy()
|
93
94
|
# Get scan dimensions
|
94
95
|
n_x, n_y, n_z, _ = niimg_data.shape
|
95
96
|
|
@@ -119,7 +120,7 @@ class JuniferReHo(metaclass=Singleton):
|
|
119
120
|
# after #299 is merged
|
120
121
|
# Calculate whole brain mask
|
121
122
|
mni152_whole_brain_mask = nmask.compute_brain_mask(
|
122
|
-
target_img=
|
123
|
+
target_img=niimg,
|
123
124
|
threshold=0.5,
|
124
125
|
mask_type="whole-brain",
|
125
126
|
)
|
@@ -227,7 +228,7 @@ class JuniferReHo(metaclass=Singleton):
|
|
227
228
|
|
228
229
|
# Create new image like target image
|
229
230
|
output_data = nimg.new_img_like(
|
230
|
-
ref_niimg=
|
231
|
+
ref_niimg=niimg,
|
231
232
|
data=reho_map,
|
232
233
|
copy_header=False,
|
233
234
|
)
|
@@ -12,6 +12,7 @@ from typing import (
|
|
12
12
|
Union,
|
13
13
|
)
|
14
14
|
|
15
|
+
import nibabel as nib
|
15
16
|
import numpy as np
|
16
17
|
import pandas as pd
|
17
18
|
from nilearn import image as nimg
|
@@ -19,6 +20,7 @@ from nilearn._utils.niimg_conversions import check_niimg_4d
|
|
19
20
|
|
20
21
|
from ...api.decorators import register_preprocessor
|
21
22
|
from ...data import get_data
|
23
|
+
from ...pipeline import WorkDirManager
|
22
24
|
from ...typing import Dependencies
|
23
25
|
from ...utils import logger, raise_error
|
24
26
|
from ..base import BasePreprocessor
|
@@ -539,9 +541,17 @@ class fMRIPrepConfoundRemover(BasePreprocessor):
|
|
539
541
|
logger.info(
|
540
542
|
f"Read t_r from NIfTI header: {t_r}",
|
541
543
|
)
|
544
|
+
|
545
|
+
# Create element-specific tempdir for storing generated data
|
546
|
+
# and / or mask
|
547
|
+
element_tempdir = WorkDirManager().get_element_tempdir(
|
548
|
+
prefix="fmriprep_confound_remover"
|
549
|
+
)
|
550
|
+
|
542
551
|
# Set mask data
|
543
552
|
mask_img = None
|
544
553
|
if self.masks is not None:
|
554
|
+
# Generate mask
|
545
555
|
logger.debug(f"Masking with {self.masks}")
|
546
556
|
mask_img = get_data(
|
547
557
|
kind="mask",
|
@@ -549,13 +559,21 @@ class fMRIPrepConfoundRemover(BasePreprocessor):
|
|
549
559
|
target_data=input,
|
550
560
|
extra_input=extra_input,
|
551
561
|
)
|
552
|
-
#
|
562
|
+
# Save generated mask for use later
|
563
|
+
generated_mask_img_path = element_tempdir / "generated_mask.nii.gz"
|
564
|
+
nib.save(mask_img, generated_mask_img_path)
|
565
|
+
|
566
|
+
# Save BOLD mask and link it to the BOLD data type dict;
|
553
567
|
# this allows to use "inherit" down the pipeline
|
554
568
|
logger.debug("Setting `BOLD.mask`")
|
555
569
|
input.update(
|
556
570
|
{
|
557
571
|
"mask": {
|
572
|
+
# Update path to sync with "data"
|
573
|
+
"path": generated_mask_img_path,
|
574
|
+
# Update data
|
558
575
|
"data": mask_img,
|
576
|
+
# Should be in the same space as target data
|
559
577
|
"space": input["space"],
|
560
578
|
}
|
561
579
|
}
|
@@ -566,7 +584,9 @@ class fMRIPrepConfoundRemover(BasePreprocessor):
|
|
566
584
|
logger.debug(f"\tstandardize: {self.standardize}")
|
567
585
|
logger.debug(f"\tlow_pass: {self.low_pass}")
|
568
586
|
logger.debug(f"\thigh_pass: {self.high_pass}")
|
569
|
-
|
587
|
+
|
588
|
+
# Deconfound data
|
589
|
+
cleaned_img = nimg.clean_img(
|
570
590
|
imgs=bold_img,
|
571
591
|
detrend=self.detrend,
|
572
592
|
standardize=self.standardize,
|
@@ -576,5 +596,18 @@ class fMRIPrepConfoundRemover(BasePreprocessor):
|
|
576
596
|
t_r=t_r,
|
577
597
|
mask_img=mask_img,
|
578
598
|
)
|
599
|
+
# Save deconfounded data
|
600
|
+
deconfounded_img_path = element_tempdir / "deconfounded_data.nii.gz"
|
601
|
+
nib.save(cleaned_img, deconfounded_img_path)
|
602
|
+
|
603
|
+
logger.debug("Updating `BOLD`")
|
604
|
+
input.update(
|
605
|
+
{
|
606
|
+
# Update path to sync with "data"
|
607
|
+
"path": deconfounded_img_path,
|
608
|
+
# Update data
|
609
|
+
"data": cleaned_img,
|
610
|
+
}
|
611
|
+
)
|
579
612
|
|
580
613
|
return input, None
|
{junifer-0.0.6.dev311 → junifer-0.0.6.dev324}/junifer/preprocess/smoothing/_afni_smoothing.py
RENAMED
@@ -4,7 +4,7 @@
|
|
4
4
|
# License: AGPL
|
5
5
|
|
6
6
|
from typing import (
|
7
|
-
|
7
|
+
Any,
|
8
8
|
ClassVar,
|
9
9
|
Union,
|
10
10
|
)
|
@@ -16,10 +16,6 @@ from ...typing import Dependencies, ExternalDependencies
|
|
16
16
|
from ...utils import logger, run_ext_cmd
|
17
17
|
|
18
18
|
|
19
|
-
if TYPE_CHECKING:
|
20
|
-
from nibabel.nifti1 import Nifti1Image
|
21
|
-
|
22
|
-
|
23
19
|
__all__ = ["AFNISmoothing"]
|
24
20
|
|
25
21
|
|
@@ -41,23 +37,23 @@ class AFNISmoothing:
|
|
41
37
|
|
42
38
|
def preprocess(
|
43
39
|
self,
|
44
|
-
|
40
|
+
input: dict[str, Any],
|
45
41
|
fwhm: Union[int, float],
|
46
|
-
) ->
|
42
|
+
) -> dict[str, Any]:
|
47
43
|
"""Preprocess using AFNI.
|
48
44
|
|
49
45
|
Parameters
|
50
46
|
----------
|
51
|
-
|
52
|
-
|
47
|
+
input : dict
|
48
|
+
A single input from the Junifer Data object in which to preprocess.
|
53
49
|
fwhm : int or float
|
54
50
|
Smooth until the value. AFNI estimates the smoothing and then
|
55
51
|
applies smoothing to reach ``fwhm``.
|
56
52
|
|
57
53
|
Returns
|
58
54
|
-------
|
59
|
-
|
60
|
-
The
|
55
|
+
dict
|
56
|
+
The ``input`` dictionary with updated values.
|
61
57
|
|
62
58
|
Notes
|
63
59
|
-----
|
@@ -71,18 +67,18 @@ class AFNISmoothing:
|
|
71
67
|
"""
|
72
68
|
logger.info("Smoothing using AFNI")
|
73
69
|
|
74
|
-
# Create
|
75
|
-
|
76
|
-
|
77
|
-
|
78
|
-
|
79
|
-
|
70
|
+
# Create element-scoped tempdir so that the output is
|
71
|
+
# available later as nibabel stores file path reference for
|
72
|
+
# loading on computation
|
73
|
+
element_tempdir = WorkDirManager().get_element_tempdir(
|
74
|
+
prefix="afni_smoothing"
|
75
|
+
)
|
80
76
|
|
81
77
|
# Set 3dBlurToFWHM command
|
82
|
-
blur_out_path_prefix =
|
78
|
+
blur_out_path_prefix = element_tempdir / "blur"
|
83
79
|
blur_cmd = [
|
84
80
|
"3dBlurToFWHM",
|
85
|
-
f"-input {
|
81
|
+
f"-input {input['path'].resolve()}",
|
86
82
|
f"-prefix {blur_out_path_prefix.resolve()}",
|
87
83
|
"-automask",
|
88
84
|
f"-FWHM {fwhm}",
|
@@ -90,28 +86,34 @@ class AFNISmoothing:
|
|
90
86
|
# Call 3dBlurToFWHM
|
91
87
|
run_ext_cmd(name="3dBlurToFWHM", cmd=blur_cmd)
|
92
88
|
|
93
|
-
#
|
94
|
-
|
95
|
-
|
96
|
-
|
97
|
-
|
98
|
-
|
89
|
+
# Read header to get output suffix
|
90
|
+
header = input["data"].header
|
91
|
+
sform_code = header.get_sform(coded=True)[1]
|
92
|
+
if sform_code == 4:
|
93
|
+
output_suffix = "tlrc"
|
94
|
+
else:
|
95
|
+
output_suffix = "orig"
|
96
|
+
|
99
97
|
# Convert afni to nifti
|
100
|
-
|
101
|
-
element_tempdir / "
|
98
|
+
blur_nifti_out_path = (
|
99
|
+
element_tempdir / "smoothed_data.nii" # needs to be .nii
|
102
100
|
)
|
103
101
|
convert_cmd = [
|
104
102
|
"3dAFNItoNIFTI",
|
105
|
-
f"-prefix {
|
106
|
-
f"{blur_out_path_prefix}+
|
103
|
+
f"-prefix {blur_nifti_out_path.resolve()}",
|
104
|
+
f"{blur_out_path_prefix}+{output_suffix}.BRIK",
|
107
105
|
]
|
108
106
|
# Call 3dAFNItoNIFTI
|
109
107
|
run_ext_cmd(name="3dAFNItoNIFTI", cmd=convert_cmd)
|
110
108
|
|
111
|
-
|
112
|
-
|
113
|
-
|
114
|
-
|
115
|
-
|
109
|
+
logger.debug("Updating smoothed data")
|
110
|
+
input.update(
|
111
|
+
{
|
112
|
+
# Update path to sync with "data"
|
113
|
+
"path": blur_nifti_out_path,
|
114
|
+
# Load nifti
|
115
|
+
"data": nib.load(blur_nifti_out_path),
|
116
|
+
}
|
117
|
+
)
|
116
118
|
|
117
|
-
return
|
119
|
+
return input
|