junifer 0.0.7.dev236__tar.gz → 0.0.7.dev264__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.7.dev236 → junifer-0.0.7.dev264}/PKG-INFO +2 -1
- junifer-0.0.7.dev264/docs/changes/newsfragments/231.change +1 -0
- junifer-0.0.7.dev264/docs/changes/newsfragments/231.misc +1 -0
- junifer-0.0.7.dev264/docs/changes/newsfragments/473.enh +1 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/docs/extending/preprocessor.rst +23 -65
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/_version.py +3 -3
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/cli/tests/test_cli_utils.py +1 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/preprocess/_temporal_filter.py +5 -35
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/preprocess/_temporal_slicer.py +5 -35
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/preprocess/base.py +23 -29
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/preprocess/confounds/fmriprep_confound_remover.py +5 -35
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/preprocess/confounds/tests/test_fmriprep_confound_remover.py +2 -2
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/preprocess/smoothing/smoothing.py +4 -34
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/preprocess/tests/test_preprocess_base.py +6 -7
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/preprocess/warping/space_warper.py +14 -44
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/preprocess/warping/tests/test_space_warper.py +2 -2
- junifer-0.0.7.dev264/junifer/utils/logging.py +283 -0
- junifer-0.0.7.dev264/junifer/utils/tests/test_logging.py +107 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer.egg-info/PKG-INFO +2 -1
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer.egg-info/SOURCES.txt +3 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer.egg-info/requires.txt +1 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/pyproject.toml +2 -0
- junifer-0.0.7.dev236/junifer/utils/logging.py +0 -365
- junifer-0.0.7.dev236/junifer/utils/tests/test_logging.py +0 -237
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/.dockerignore +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/.github/ISSUE_TEMPLATE/bug-report.yml +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/.github/ISSUE_TEMPLATE/config.yml +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/.github/ISSUE_TEMPLATE/dataset-request.yml +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/.github/ISSUE_TEMPLATE/documention-request.yml +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/.github/ISSUE_TEMPLATE/feature-request.yml +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/.github/ISSUE_TEMPLATE/marker-request.yml +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/.github/dependabot.yml +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/.github/pull_request_template.md +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/.github/workflows/check-stale.yml +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/.github/workflows/ci-docs.yml +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/.github/workflows/ci.yml +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/.github/workflows/docker-ci-publish.yml +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/.github/workflows/docker-docs-publish.yml +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/.github/workflows/docs-preview.yml +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/.github/workflows/docs.yml +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/.github/workflows/lint.yml +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/.github/workflows/publish.yml +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/.gitignore +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/.gitmodules +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/.pre-commit-config.yaml +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/AUTHORS.rst +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/Dockerfile-ci +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/Dockerfile-docs +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/LICENSE.md +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/README.md +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/codecov.yml +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/conda-env.yml +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/docs/Makefile +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/docs/_static/css/custom.css +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/docs/_static/js/custom.js +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/docs/_templates/versions.html +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/docs/api/api.rst +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/docs/api/cli.rst +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/docs/api/configs.rst +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/docs/api/data.rst +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/docs/api/datagrabbers.rst +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/docs/api/datareaders.rst +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/docs/api/index.rst +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/docs/api/markers.rst +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/docs/api/nilearn.rst +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/docs/api/onthefly.rst +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/docs/api/pipeline.rst +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/docs/api/preprocessing.rst +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/docs/api/stats.rst +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/docs/api/storage.rst +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/docs/api/testing.rst +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/docs/api/utils.rst +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/docs/builtin.rst +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/docs/changes/contributors.inc +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/docs/changes/newsfragments/.gitignore +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/docs/changes/newsfragments/257.change +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/docs/changes/newsfragments/257.enh +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/docs/changes/newsfragments/333.enh +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/docs/changes/newsfragments/429.change +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/docs/changes/newsfragments/429.enh +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/docs/changes/newsfragments/432.feature +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/docs/changes/newsfragments/441.misc +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/docs/changes/newsfragments/443.feature +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/docs/changes/newsfragments/444.bugfix +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/docs/changes/newsfragments/450.doc +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/docs/changes/newsfragments/450.feature +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/docs/changes/newsfragments/451.doc +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/docs/changes/newsfragments/451.feature +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/docs/changes/newsfragments/452.doc +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/docs/changes/newsfragments/452.feature +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/docs/changes/newsfragments/454.bugfix +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/docs/changes/newsfragments/456.misc +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/docs/changes/newsfragments/457.misc +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/docs/changes/newsfragments/458.change +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/docs/changes/newsfragments/458.feature +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/docs/changes/newsfragments/458.misc +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/docs/changes/newsfragments/460.feature +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/docs/changes/newsfragments/462.feature +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/docs/changes/newsfragments/464.misc +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/docs/changes/newsfragments/465.misc +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/docs/changes/newsfragments/466.misc +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/docs/changes/newsfragments/467.misc +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/docs/changes/newsfragments/468.misc +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/docs/changes/newsfragments/470.enh +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/docs/changes/newsfragments/470.misc +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/docs/conf.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/docs/contribution.rst +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/docs/extending/coordinates.rst +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/docs/extending/data_dump_asset.rst +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/docs/extending/data_registries.rst +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/docs/extending/data_types.rst +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/docs/extending/datagrabber.rst +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/docs/extending/dependencies.rst +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/docs/extending/extension.rst +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/docs/extending/index.rst +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/docs/extending/maps.rst +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/docs/extending/marker.rst +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/docs/extending/masks.rst +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/docs/extending/parcellations.rst +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/docs/extending/plugins.rst +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/docs/faq.rst +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/docs/help.rst +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/docs/images/junifer_logo.png +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/docs/index.rst +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/docs/installation.rst +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/docs/links.inc +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/docs/maintaining.rst +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/docs/redirect.html +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/docs/starting.rst +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/docs/understanding/data.rst +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/docs/understanding/datagrabber.rst +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/docs/understanding/datareader.rst +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/docs/understanding/index.rst +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/docs/understanding/marker.rst +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/docs/understanding/pipeline.rst +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/docs/understanding/preprocess.rst +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/docs/understanding/storage.rst +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/docs/using/codeless.rst +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/docs/using/configuring.rst +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/docs/using/dumping.rst +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/docs/using/index.rst +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/docs/using/masks.rst +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/docs/using/queueing.rst +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/docs/using/running.rst +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/docs/whats_new.rst +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/examples/README.rst +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/examples/norun_hcpfc_pearson.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/examples/norun_ukbvm_gmd.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/examples/run_compute_parcel_mean.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/examples/run_datagrabber_bids_datalad.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/examples/run_ets_rss_marker.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/examples/run_junifer_julearn.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/examples/run_run_gmd_mean.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/examples/yamls/gmd_mean.yaml +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/examples/yamls/gmd_mean_htcondor.yaml +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/examples/yamls/partly_cloudy_agg_mean_tian.yml +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/examples/yamls/ukb_gmd_mean.yaml +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/ignore_words.txt +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/__init__.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/__init__.pyi +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/api/__init__.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/api/__init__.pyi +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/api/decorators.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/api/functions.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/api/py.typed +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/api/queue_context/__init__.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/api/queue_context/__init__.pyi +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/api/queue_context/gnu_parallel_local_adapter.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/api/queue_context/htcondor_adapter.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/api/queue_context/py.typed +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/api/queue_context/queue_context_adapter.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/api/queue_context/tests/test_gnu_parallel_local_adapter.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/api/queue_context/tests/test_htcondor_adapter.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/api/res/afni/3dAFNItoNIFTI +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/api/res/afni/3dRSFC +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/api/res/afni/3dReHo +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/api/res/afni/afni +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/api/res/afni/run_afni_docker.sh +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/api/res/ants/ResampleImage +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/api/res/ants/antsApplyTransforms +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/api/res/ants/antsApplyTransformsToPoints +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/api/res/ants/run_ants_docker.sh +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/api/res/freesurfer/mri_binarize +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/api/res/freesurfer/mri_mc +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/api/res/freesurfer/mri_pretess +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/api/res/freesurfer/mris_convert +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/api/res/freesurfer/run_freesurfer_docker.sh +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/api/res/fsl/applywarp +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/api/res/fsl/flirt +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/api/res/fsl/img2imgcoord +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/api/res/fsl/run_fsl_docker.sh +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/api/res/fsl/std2imgcoord +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/api/res/run_conda.bash +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/api/res/run_conda.zsh +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/api/res/run_venv.bash +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/api/res/run_venv.zsh +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/api/tests/test_decorators.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/api/tests/test_functions.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/cli/__init__.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/cli/__init__.pyi +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/cli/cli.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/cli/parser.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/cli/py.typed +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/cli/tests/data/gmd_mean.yaml +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/cli/tests/data/gmd_mean_htcondor.yaml +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/cli/tests/data/partly_cloudy_agg_mean_tian.yml +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/cli/tests/test_cli.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/cli/tests/test_parser.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/cli/utils.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/configs/__init__.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/configs/juseless/__init__.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/configs/juseless/__init__.pyi +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/configs/juseless/datagrabbers/__init__.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/configs/juseless/datagrabbers/__init__.pyi +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/configs/juseless/datagrabbers/aomic_id1000_vbm.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/configs/juseless/datagrabbers/camcan_vbm.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/configs/juseless/datagrabbers/ixi_vbm.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/configs/juseless/datagrabbers/py.typed +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/configs/juseless/datagrabbers/tests/test_aomic_id1000_vbm.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/configs/juseless/datagrabbers/tests/test_camcan_vbm.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/configs/juseless/datagrabbers/tests/test_ixi_vbm.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/configs/juseless/datagrabbers/tests/test_ucla.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/configs/juseless/datagrabbers/tests/test_ukb_vbm.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/configs/juseless/datagrabbers/ucla.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/configs/juseless/datagrabbers/ukb_vbm.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/configs/juseless/py.typed +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/conftest.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/data/__init__.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/data/__init__.pyi +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/data/_dispatch.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/data/coordinates/__init__.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/data/coordinates/__init__.pyi +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/data/coordinates/_ants_coordinates_warper.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/data/coordinates/_coordinates.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/data/coordinates/_fsl_coordinates_warper.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/data/coordinates/tests/test_coordinates.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/data/maps/__init__.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/data/maps/__init__.pyi +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/data/maps/_ants_maps_warper.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/data/maps/_fsl_maps_warper.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/data/maps/_maps.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/data/maps/tests/test_maps.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/data/masks/__init__.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/data/masks/__init__.pyi +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/data/masks/_ants_mask_warper.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/data/masks/_fsl_mask_warper.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/data/masks/_masks.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/data/masks/tests/test_masks.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/data/parcellations/__init__.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/data/parcellations/__init__.pyi +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/data/parcellations/_ants_parcellation_warper.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/data/parcellations/_fsl_parcellation_warper.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/data/parcellations/_parcellations.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/data/parcellations/tests/test_parcellations.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/data/pipeline_data_registry_base.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/data/py.typed +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/data/template_spaces.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/data/tests/test_data_utils.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/data/tests/test_dispatch.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/data/tests/test_template_spaces.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/data/utils.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/datagrabber/__init__.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/datagrabber/__init__.pyi +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/datagrabber/aomic/__init__.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/datagrabber/aomic/__init__.pyi +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/datagrabber/aomic/id1000.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/datagrabber/aomic/piop1.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/datagrabber/aomic/piop2.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/datagrabber/aomic/py.typed +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/datagrabber/aomic/tests/test_id1000.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/datagrabber/aomic/tests/test_piop1.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/datagrabber/aomic/tests/test_piop2.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/datagrabber/base.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/datagrabber/datalad_base.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/datagrabber/dmcc13_benchmark.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/datagrabber/hcp1200/__init__.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/datagrabber/hcp1200/__init__.pyi +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/datagrabber/hcp1200/datalad_hcp1200.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/datagrabber/hcp1200/hcp1200.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/datagrabber/hcp1200/py.typed +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/datagrabber/hcp1200/tests/test_hcp1200.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/datagrabber/multiple.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/datagrabber/pattern.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/datagrabber/pattern_datalad.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/datagrabber/pattern_validation_mixin.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/datagrabber/py.typed +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/datagrabber/tests/test_base.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/datagrabber/tests/test_datalad_base.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/datagrabber/tests/test_dmcc13_benchmark.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/datagrabber/tests/test_multiple.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/datagrabber/tests/test_pattern.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/datagrabber/tests/test_pattern_datalad.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/datagrabber/tests/test_pattern_validation_mixin.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/datareader/__init__.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/datareader/__init__.pyi +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/datareader/default.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/datareader/py.typed +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/datareader/tests/test_default_reader.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/external/BrainPrint/brainprint/__init__.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/external/BrainPrint/brainprint/_version.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/external/BrainPrint/brainprint/asymmetry.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/external/BrainPrint/brainprint/brainprint.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/external/BrainPrint/brainprint/surfaces.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/external/BrainPrint/brainprint/utils/__init__.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/external/BrainPrint/brainprint/utils/_config.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/external/BrainPrint/brainprint/utils/utils.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/external/__init__.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/external/h5io/h5io/__init__.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/external/h5io/h5io/_h5io.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/external/h5io/h5io/_version.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/external/h5io/h5io/chunked_array.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/external/h5io/h5io/chunked_list.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/external/nilearn/__init__.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/external/nilearn/__init__.pyi +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/external/nilearn/junifer_connectivity_measure.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/external/nilearn/junifer_nifti_spheres_masker.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/external/nilearn/py.typed +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/external/nilearn/tests/test_junifer_connectivity_measure.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/external/nilearn/tests/test_junifer_nifti_spheres_masker.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/markers/__init__.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/markers/__init__.pyi +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/markers/base.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/markers/brainprint.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/markers/complexity/__init__.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/markers/complexity/__init__.pyi +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/markers/complexity/complexity_base.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/markers/complexity/hurst_exponent.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/markers/complexity/multiscale_entropy_auc.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/markers/complexity/perm_entropy.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/markers/complexity/py.typed +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/markers/complexity/range_entropy.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/markers/complexity/range_entropy_auc.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/markers/complexity/sample_entropy.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/markers/complexity/tests/test_complexity_base.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/markers/complexity/tests/test_hurst_exponent.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/markers/complexity/tests/test_multiscale_entropy_auc.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/markers/complexity/tests/test_perm_entropy.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/markers/complexity/tests/test_range_entropy.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/markers/complexity/tests/test_range_entropy_auc.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/markers/complexity/tests/test_sample_entropy.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/markers/complexity/tests/test_weighted_perm_entropy.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/markers/complexity/weighted_perm_entropy.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/markers/ets_rss.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/markers/falff/__init__.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/markers/falff/__init__.pyi +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/markers/falff/_afni_falff.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/markers/falff/_junifer_falff.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/markers/falff/falff_base.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/markers/falff/falff_maps.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/markers/falff/falff_parcels.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/markers/falff/falff_spheres.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/markers/falff/py.typed +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/markers/falff/tests/test_falff_maps.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/markers/falff/tests/test_falff_parcels.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/markers/falff/tests/test_falff_spheres.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/markers/functional_connectivity/__init__.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/markers/functional_connectivity/__init__.pyi +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/markers/functional_connectivity/crossparcellation_functional_connectivity.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/markers/functional_connectivity/edge_functional_connectivity_maps.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/markers/functional_connectivity/edge_functional_connectivity_parcels.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/markers/functional_connectivity/edge_functional_connectivity_spheres.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/markers/functional_connectivity/functional_connectivity_base.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/markers/functional_connectivity/functional_connectivity_maps.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/markers/functional_connectivity/functional_connectivity_parcels.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/markers/functional_connectivity/functional_connectivity_spheres.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/markers/functional_connectivity/py.typed +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/markers/functional_connectivity/tests/test_crossparcellation_functional_connectivity.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/markers/functional_connectivity/tests/test_edge_functional_connectivity_maps.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/markers/functional_connectivity/tests/test_edge_functional_connectivity_parcels.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/markers/functional_connectivity/tests/test_edge_functional_connectivity_spheres.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/markers/functional_connectivity/tests/test_functional_connectivity_base.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/markers/functional_connectivity/tests/test_functional_connectivity_maps.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/markers/functional_connectivity/tests/test_functional_connectivity_parcels.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/markers/functional_connectivity/tests/test_functional_connectivity_spheres.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/markers/maps_aggregation.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/markers/parcel_aggregation.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/markers/py.typed +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/markers/reho/__init__.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/markers/reho/__init__.pyi +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/markers/reho/_afni_reho.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/markers/reho/_junifer_reho.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/markers/reho/py.typed +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/markers/reho/reho_base.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/markers/reho/reho_maps.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/markers/reho/reho_parcels.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/markers/reho/reho_spheres.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/markers/reho/tests/test_reho_maps.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/markers/reho/tests/test_reho_parcels.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/markers/reho/tests/test_reho_spheres.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/markers/sphere_aggregation.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/markers/temporal_snr/__init__.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/markers/temporal_snr/__init__.pyi +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/markers/temporal_snr/py.typed +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/markers/temporal_snr/temporal_snr_base.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/markers/temporal_snr/temporal_snr_maps.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/markers/temporal_snr/temporal_snr_parcels.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/markers/temporal_snr/temporal_snr_spheres.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/markers/temporal_snr/tests/test_temporal_snr_base.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/markers/temporal_snr/tests/test_temporal_snr_maps.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/markers/temporal_snr/tests/test_temporal_snr_parcels.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/markers/temporal_snr/tests/test_temporal_snr_spheres.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/markers/tests/test_brainprint.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/markers/tests/test_ets_rss.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/markers/tests/test_maps_aggregation.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/markers/tests/test_marker_utils.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/markers/tests/test_markers_base.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/markers/tests/test_parcel_aggregation.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/markers/tests/test_sphere_aggregation.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/markers/utils.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/onthefly/__init__.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/onthefly/_brainprint.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/onthefly/read_transform.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/onthefly/tests/test_read_transform.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/pipeline/__init__.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/pipeline/__init__.pyi +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/pipeline/_data_object_dumper.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/pipeline/marker_collection.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/pipeline/pipeline_component_registry.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/pipeline/pipeline_step_mixin.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/pipeline/py.typed +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/pipeline/tests/test_data_object_dumper.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/pipeline/tests/test_marker_collection.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/pipeline/tests/test_pipeline_component_registry.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/pipeline/tests/test_pipeline_step_mixin.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/pipeline/tests/test_update_meta_mixin.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/pipeline/tests/test_workdir_manager.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/pipeline/update_meta_mixin.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/pipeline/utils.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/pipeline/workdir_manager.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/preprocess/__init__.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/preprocess/__init__.pyi +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/preprocess/confounds/__init__.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/preprocess/confounds/__init__.pyi +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/preprocess/confounds/py.typed +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/preprocess/py.typed +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/preprocess/smoothing/__init__.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/preprocess/smoothing/__init__.pyi +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/preprocess/smoothing/_afni_smoothing.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/preprocess/smoothing/_fsl_smoothing.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/preprocess/smoothing/_nilearn_smoothing.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/preprocess/smoothing/py.typed +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/preprocess/smoothing/tests/test_smoothing.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/preprocess/tests/test_temporal_filter.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/preprocess/tests/test_temporal_slicer.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/preprocess/warping/__init__.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/preprocess/warping/__init__.pyi +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/preprocess/warping/_ants_warper.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/preprocess/warping/_fsl_warper.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/preprocess/warping/py.typed +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/py.typed +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/stats.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/storage/__init__.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/storage/__init__.pyi +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/storage/base.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/storage/hdf5.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/storage/pandas_base.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/storage/py.typed +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/storage/sqlite.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/storage/tests/test_hdf5.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/storage/tests/test_pandas_base.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/storage/tests/test_sqlite.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/storage/tests/test_storage_base.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/storage/tests/test_utils.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/storage/utils.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/testing/__init__.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/testing/__init__.pyi +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/testing/data/sub-0001_task-anticipation_acq-seq_desc-confounds_regressors.tsv +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/testing/datagrabbers.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/testing/py.typed +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/testing/registry.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/testing/tests/test_oasisvmbtesting_datagrabber.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/testing/tests/test_partlycloudytesting_datagrabber.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/testing/tests/test_spmauditory_datagrabber.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/testing/tests/test_testing_registry.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/testing/utils.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/tests/test_main.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/tests/test_stats.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/typing/__init__.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/typing/__init__.pyi +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/typing/_typing.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/utils/__init__.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/utils/__init__.pyi +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/utils/_config.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/utils/_yaml.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/utils/fs.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/utils/helpers.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/utils/py.typed +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/utils/singleton.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/utils/tests/test_config.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/utils/tests/test_fs.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer/utils/tests/test_helpers.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer.egg-info/dependency_links.txt +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer.egg-info/entry_points.txt +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/junifer.egg-info/top_level.txt +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/setup.cfg +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/setup.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/tools/create_aomic1000_example_dataset.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/tools/create_aomicpiop1_example_dataset.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/tools/create_aomicpiop2_example_dataset.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/tools/create_bids_example_dataset.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/tools/create_bids_example_dataset_sessions.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/tools/create_dmcc13_benchmark_example_dataset.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/tools/create_hcp1200_example_dataset.py +0 -0
- {junifer-0.0.7.dev236 → junifer-0.0.7.dev264}/tox.ini +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: junifer
|
|
3
|
-
Version: 0.0.7.
|
|
3
|
+
Version: 0.0.7.dev264
|
|
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>
|
|
@@ -45,6 +45,7 @@ Requires-Dist: lazy_loader==0.4
|
|
|
45
45
|
Requires-Dist: importlib_metadata; python_version < "3.9"
|
|
46
46
|
Requires-Dist: looseversion==1.3.0; python_version >= "3.12"
|
|
47
47
|
Requires-Dist: junifer_data==1.3.0
|
|
48
|
+
Requires-Dist: structlog<26.0.0,>=25.0.0
|
|
48
49
|
Provides-Extra: all
|
|
49
50
|
Requires-Dist: bctpy==0.6.0; extra == "all"
|
|
50
51
|
Requires-Dist: neurokit2>=0.1.7; extra == "all"
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
``fname``, ``overwrite`` and ``output_format`` have been removed from :func:`.configure_logging` by `Synchon Mandal`_
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
Adopt ``structlog`` for logging infrastructure by `Synchon Mandal`_
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
Simplify ``Preprocess`` interface and implementations by `Synchon Mandal`_
|
|
@@ -14,16 +14,11 @@ new ones, you might need something specific and then you can create your
|
|
|
14
14
|
own Preprocessor.
|
|
15
15
|
|
|
16
16
|
While implementing your own Preprocessor, you need to always inherit from
|
|
17
|
-
:class:`.BasePreprocessor` and implement a few methods:
|
|
17
|
+
:class:`.BasePreprocessor` and implement a few methods and class attributes:
|
|
18
18
|
|
|
19
|
-
#. ``get_valid_inputs``: This method should return a list of strings
|
|
20
|
-
representing the valid data types that the Preprocessor can work on.
|
|
21
|
-
Check :ref:`data types <data_types>` for reference.
|
|
22
|
-
#. ``get_output_type``: This method should just return the input as it
|
|
23
|
-
is unused as of now.
|
|
24
|
-
#. ``preprocess``: The method that given the data, preprocesses the data.
|
|
25
19
|
#. ``__init__``: The initialisation method, where the Preprocessor is
|
|
26
20
|
configured.
|
|
21
|
+
#. ``preprocess``: The method that given the data, preprocesses the data.
|
|
27
22
|
|
|
28
23
|
As an example, we will develop a ``NilearnSmoothing`` Preprocessor, which
|
|
29
24
|
smoothens the data using :func:`nilearn.image.smooth_img`. This is often
|
|
@@ -32,37 +27,16 @@ desirable in cases where your data is preprocessed using ``fMRIPrep``, as
|
|
|
32
27
|
|
|
33
28
|
.. _extending_preprocessors_input_output:
|
|
34
29
|
|
|
35
|
-
Step 1: Configure input
|
|
36
|
-
|
|
30
|
+
Step 1: Configure input
|
|
31
|
+
-----------------------
|
|
37
32
|
|
|
38
|
-
In this step, we define the input
|
|
33
|
+
In this step, we define the input data types of the Preprocessor.
|
|
39
34
|
For input we can accept ``T1w``, ``T2w`` and ``BOLD``
|
|
40
|
-
:ref:`data types <data_types
|
|
41
|
-
|
|
42
|
-
.. code-block:: python
|
|
43
|
-
|
|
44
|
-
...
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
def get_valid_inputs(self) -> list[str]:
|
|
48
|
-
return ["T1w", "T2w", "BOLD"]
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
...
|
|
52
|
-
|
|
53
|
-
The output definition of the Preprocessor is unused now but is kept for
|
|
54
|
-
completeness.
|
|
35
|
+
:ref:`data types <data_types>` and thus declare them in a class attribute:
|
|
55
36
|
|
|
56
37
|
.. code-block:: python
|
|
57
38
|
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
def get_output_type(self, input_type: str) -> str:
|
|
62
|
-
return input_type
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
...
|
|
39
|
+
_VALID_DATA_TYPES = ["T1w", "T2w", "BOLD"]
|
|
66
40
|
|
|
67
41
|
.. _extending_preprocessors_init:
|
|
68
42
|
|
|
@@ -77,7 +51,7 @@ you configure it. Our class will have the following arguments:
|
|
|
77
51
|
pass the value to it.
|
|
78
52
|
2. ``on``: The data type we want the Preprocessor to work on. If the user does
|
|
79
53
|
not specify, it will work on all the data types given by the
|
|
80
|
-
``
|
|
54
|
+
``_VALID_DATA_TYPES`` attribute.
|
|
81
55
|
|
|
82
56
|
.. attention::
|
|
83
57
|
|
|
@@ -133,17 +107,6 @@ arguments:
|
|
|
133
107
|
useful if you want to use other data (e.g., ``Warp`` can be used to provide
|
|
134
108
|
the transformation matrix file for transformation to subject-native space).
|
|
135
109
|
|
|
136
|
-
and it has two return values:
|
|
137
|
-
|
|
138
|
-
* First is the ``input`` dictionary with necessary data modified. Usually, you
|
|
139
|
-
want to replace the ``input["data"]`` with the preprocessed data.
|
|
140
|
-
* Second is a dictionary just like ``input`` or ``extra_input`` but with only
|
|
141
|
-
specific key-value pairs which you would like to pass down to the Markers.
|
|
142
|
-
For example, if your Preprocessor computes some mask with the preprocessed
|
|
143
|
-
data, you could pass it through this which would be added and available
|
|
144
|
-
in the Marker step with the same key you pass here. Usually, you would
|
|
145
|
-
want to pass ``None``.
|
|
146
|
-
|
|
147
110
|
.. code-block:: python
|
|
148
111
|
|
|
149
112
|
from typing import Any
|
|
@@ -158,9 +121,9 @@ and it has two return values:
|
|
|
158
121
|
self,
|
|
159
122
|
input: dict[str, Any],
|
|
160
123
|
extra_input: dict[str, Any] | None = None,
|
|
161
|
-
) ->
|
|
124
|
+
) -> dict[str, Any]:
|
|
162
125
|
input["data"] = nimg.smooth_img(imgs=input["data"], fwhm=self.fwhm)
|
|
163
|
-
return input
|
|
126
|
+
return input
|
|
164
127
|
|
|
165
128
|
|
|
166
129
|
...
|
|
@@ -187,7 +150,8 @@ decorator and our final code should look like this:
|
|
|
187
150
|
|
|
188
151
|
.. code-block:: python
|
|
189
152
|
|
|
190
|
-
from
|
|
153
|
+
from collections.abc import Sequence
|
|
154
|
+
from typing import Any, ClassVar, Literal
|
|
191
155
|
|
|
192
156
|
from junifer.api.decorators import register_preprocessor
|
|
193
157
|
from junifer.preprocess import BasePreprocessor
|
|
@@ -201,6 +165,8 @@ decorator and our final code should look like this:
|
|
|
201
165
|
|
|
202
166
|
_DEPENDENCIES = {"nilearn"}
|
|
203
167
|
|
|
168
|
+
_VALID_DATA_TYPES: ClassVar[Sequence[str]] = ["T1w", "T2w", "BOLD"]
|
|
169
|
+
|
|
204
170
|
def __init__(
|
|
205
171
|
self,
|
|
206
172
|
fwhm: int | float | ArrayLike | Literal["fast"] | None,
|
|
@@ -209,19 +175,13 @@ decorator and our final code should look like this:
|
|
|
209
175
|
self.fwhm = fwhm
|
|
210
176
|
super().__init__(on=on)
|
|
211
177
|
|
|
212
|
-
def get_valid_inputs(self) -> list[str]:
|
|
213
|
-
return ["T1w", "T2w", "BOLD"]
|
|
214
|
-
|
|
215
|
-
def get_output_type(self, input_type: str) -> str:
|
|
216
|
-
return input_type
|
|
217
|
-
|
|
218
178
|
def preprocess(
|
|
219
179
|
self,
|
|
220
180
|
input: dict[str, Any],
|
|
221
181
|
extra_input: dict[str, Any] | None = None,
|
|
222
|
-
) ->
|
|
182
|
+
) -> dict[str, Any]:
|
|
223
183
|
input["data"] = nimg.smooth_img(imgs=input["data"], fwhm=self.fwhm)
|
|
224
|
-
return input
|
|
184
|
+
return input
|
|
225
185
|
|
|
226
186
|
|
|
227
187
|
.. _extending_preprocessors_template:
|
|
@@ -238,18 +198,16 @@ Template for a custom Preprocessor
|
|
|
238
198
|
@register_preprocessor
|
|
239
199
|
class TemplatePreprocessor(BasePreprocessor):
|
|
240
200
|
|
|
201
|
+
# TODO: add the dependencies
|
|
202
|
+
_DEPENDENCIES = {}
|
|
203
|
+
|
|
204
|
+
# TODO: add the inputs
|
|
205
|
+
_VALID_DATA_TYPES = []
|
|
206
|
+
|
|
241
207
|
def __init__(self, on=None):
|
|
242
208
|
# TODO: add preprocessor-specific parameters
|
|
243
209
|
super().__init__(on=on)
|
|
244
210
|
|
|
245
|
-
def get_valid_inputs(self):
|
|
246
|
-
# TODO: Complete with the valid inputs
|
|
247
|
-
valid = []
|
|
248
|
-
return valid
|
|
249
|
-
|
|
250
|
-
def get_output_type(self, input_type):
|
|
251
|
-
return input_type
|
|
252
|
-
|
|
253
211
|
def preprocess(self, input, extra_input):
|
|
254
212
|
# TODO: add the preprocessor logic
|
|
255
|
-
return input
|
|
213
|
+
return input
|
|
@@ -28,7 +28,7 @@ version_tuple: VERSION_TUPLE
|
|
|
28
28
|
commit_id: COMMIT_ID
|
|
29
29
|
__commit_id__: COMMIT_ID
|
|
30
30
|
|
|
31
|
-
__version__ = version = '0.0.7.
|
|
32
|
-
__version_tuple__ = version_tuple = (0, 0, 7, '
|
|
31
|
+
__version__ = version = '0.0.7.dev264'
|
|
32
|
+
__version_tuple__ = version_tuple = (0, 0, 7, 'dev264')
|
|
33
33
|
|
|
34
|
-
__commit_id__ = commit_id = '
|
|
34
|
+
__commit_id__ = commit_id = 'g6eb48995c'
|
|
@@ -5,6 +5,7 @@
|
|
|
5
5
|
# Synchon Mandal <s.mandal@fz-juelich.de>
|
|
6
6
|
# License: AGPL
|
|
7
7
|
|
|
8
|
+
from collections.abc import Sequence
|
|
8
9
|
from typing import (
|
|
9
10
|
Any,
|
|
10
11
|
ClassVar,
|
|
@@ -56,6 +57,7 @@ class TemporalFilter(BasePreprocessor):
|
|
|
56
57
|
"""
|
|
57
58
|
|
|
58
59
|
_DEPENDENCIES: ClassVar[Dependencies] = {"numpy", "nilearn"}
|
|
60
|
+
_VALID_DATA_TYPES: ClassVar[Sequence[str]] = ["BOLD"]
|
|
59
61
|
|
|
60
62
|
def __init__(
|
|
61
63
|
self,
|
|
@@ -74,36 +76,7 @@ class TemporalFilter(BasePreprocessor):
|
|
|
74
76
|
self.t_r = t_r
|
|
75
77
|
self.masks = masks
|
|
76
78
|
|
|
77
|
-
super().__init__(
|
|
78
|
-
|
|
79
|
-
def get_valid_inputs(self) -> list[str]:
|
|
80
|
-
"""Get valid data types for input.
|
|
81
|
-
|
|
82
|
-
Returns
|
|
83
|
-
-------
|
|
84
|
-
list of str
|
|
85
|
-
The list of data types that can be used as input for this
|
|
86
|
-
preprocessor.
|
|
87
|
-
|
|
88
|
-
"""
|
|
89
|
-
return ["BOLD"]
|
|
90
|
-
|
|
91
|
-
def get_output_type(self, input_type: str) -> str:
|
|
92
|
-
"""Get output type.
|
|
93
|
-
|
|
94
|
-
Parameters
|
|
95
|
-
----------
|
|
96
|
-
input_type : str
|
|
97
|
-
The input to the preprocessor.
|
|
98
|
-
|
|
99
|
-
Returns
|
|
100
|
-
-------
|
|
101
|
-
str
|
|
102
|
-
The data type output by the preprocessor.
|
|
103
|
-
|
|
104
|
-
"""
|
|
105
|
-
# Does not add any new keys
|
|
106
|
-
return input_type
|
|
79
|
+
super().__init__()
|
|
107
80
|
|
|
108
81
|
def _validate_data(
|
|
109
82
|
self,
|
|
@@ -130,7 +103,7 @@ class TemporalFilter(BasePreprocessor):
|
|
|
130
103
|
self,
|
|
131
104
|
input: dict[str, Any],
|
|
132
105
|
extra_input: Optional[dict[str, Any]] = None,
|
|
133
|
-
) ->
|
|
106
|
+
) -> dict[str, Any]:
|
|
134
107
|
"""Preprocess.
|
|
135
108
|
|
|
136
109
|
Parameters
|
|
@@ -145,9 +118,6 @@ class TemporalFilter(BasePreprocessor):
|
|
|
145
118
|
dict
|
|
146
119
|
The computed result as dictionary. If `self.masks` is not None,
|
|
147
120
|
then the target data computed mask is updated for further steps.
|
|
148
|
-
None
|
|
149
|
-
Extra "helper" data types as dictionary to add to the Junifer Data
|
|
150
|
-
object.
|
|
151
121
|
|
|
152
122
|
"""
|
|
153
123
|
# Validate data
|
|
@@ -237,4 +207,4 @@ class TemporalFilter(BasePreprocessor):
|
|
|
237
207
|
}
|
|
238
208
|
)
|
|
239
209
|
|
|
240
|
-
return input
|
|
210
|
+
return input
|
|
@@ -3,6 +3,7 @@
|
|
|
3
3
|
# Authors: Synchon Mandal <s.mandal@fz-juelich.de>
|
|
4
4
|
# License: AGPL
|
|
5
5
|
|
|
6
|
+
from collections.abc import Sequence
|
|
6
7
|
from typing import Any, ClassVar, Optional
|
|
7
8
|
|
|
8
9
|
import nibabel as nib
|
|
@@ -45,6 +46,7 @@ class TemporalSlicer(BasePreprocessor):
|
|
|
45
46
|
"""
|
|
46
47
|
|
|
47
48
|
_DEPENDENCIES: ClassVar[Dependencies] = {"nilearn"}
|
|
49
|
+
_VALID_DATA_TYPES: ClassVar[Sequence[str]] = ["BOLD"]
|
|
48
50
|
|
|
49
51
|
def __init__(
|
|
50
52
|
self,
|
|
@@ -61,42 +63,13 @@ class TemporalSlicer(BasePreprocessor):
|
|
|
61
63
|
self.stop = stop
|
|
62
64
|
self.duration = duration
|
|
63
65
|
self.t_r = t_r
|
|
64
|
-
super().__init__(
|
|
65
|
-
|
|
66
|
-
def get_valid_inputs(self) -> list[str]:
|
|
67
|
-
"""Get valid data types for input.
|
|
68
|
-
|
|
69
|
-
Returns
|
|
70
|
-
-------
|
|
71
|
-
list of str
|
|
72
|
-
The list of data types that can be used as input for this
|
|
73
|
-
preprocessor.
|
|
74
|
-
|
|
75
|
-
"""
|
|
76
|
-
return ["BOLD"]
|
|
77
|
-
|
|
78
|
-
def get_output_type(self, input_type: str) -> str:
|
|
79
|
-
"""Get output type.
|
|
80
|
-
|
|
81
|
-
Parameters
|
|
82
|
-
----------
|
|
83
|
-
input_type : str
|
|
84
|
-
The data type input to the preprocessor.
|
|
85
|
-
|
|
86
|
-
Returns
|
|
87
|
-
-------
|
|
88
|
-
str
|
|
89
|
-
The data type output by the preprocessor.
|
|
90
|
-
|
|
91
|
-
"""
|
|
92
|
-
# Does not add any new keys
|
|
93
|
-
return input_type
|
|
66
|
+
super().__init__()
|
|
94
67
|
|
|
95
68
|
def preprocess(
|
|
96
69
|
self,
|
|
97
70
|
input: dict[str, Any],
|
|
98
71
|
extra_input: Optional[dict[str, Any]] = None,
|
|
99
|
-
) ->
|
|
72
|
+
) -> dict[str, Any]:
|
|
100
73
|
"""Preprocess.
|
|
101
74
|
|
|
102
75
|
Parameters
|
|
@@ -110,9 +83,6 @@ class TemporalSlicer(BasePreprocessor):
|
|
|
110
83
|
-------
|
|
111
84
|
dict
|
|
112
85
|
The computed result as dictionary.
|
|
113
|
-
None
|
|
114
|
-
Extra "helper" data types as dictionary to add to the Junifer Data
|
|
115
|
-
object.
|
|
116
86
|
|
|
117
87
|
Raises
|
|
118
88
|
------
|
|
@@ -233,4 +203,4 @@ class TemporalSlicer(BasePreprocessor):
|
|
|
233
203
|
}
|
|
234
204
|
)
|
|
235
205
|
|
|
236
|
-
return input
|
|
206
|
+
return input
|
|
@@ -5,7 +5,8 @@
|
|
|
5
5
|
# License: AGPL
|
|
6
6
|
|
|
7
7
|
from abc import ABC, abstractmethod
|
|
8
|
-
from
|
|
8
|
+
from collections.abc import Sequence
|
|
9
|
+
from typing import Any, ClassVar, Optional, Union
|
|
9
10
|
|
|
10
11
|
from ..pipeline import PipelineStepMixin, UpdateMetaMixin
|
|
11
12
|
from ..utils import logger, raise_error
|
|
@@ -15,15 +16,15 @@ __all__ = ["BasePreprocessor"]
|
|
|
15
16
|
|
|
16
17
|
|
|
17
18
|
class BasePreprocessor(ABC, PipelineStepMixin, UpdateMetaMixin):
|
|
18
|
-
"""Abstract base class for
|
|
19
|
+
"""Abstract base class for preprocessor.
|
|
19
20
|
|
|
20
|
-
For every
|
|
21
|
+
For every preprocessor, one needs to provide a concrete
|
|
21
22
|
implementation of this abstract class.
|
|
22
23
|
|
|
23
24
|
Parameters
|
|
24
25
|
----------
|
|
25
26
|
on : str or list of str or None, optional
|
|
26
|
-
The data type to apply the preprocessor on. If None,
|
|
27
|
+
The data type(s) to apply the preprocessor on. If None,
|
|
27
28
|
will work on all available data types (default None).
|
|
28
29
|
required_data_types : str or list of str, optional
|
|
29
30
|
The data types needed for computation. If None,
|
|
@@ -31,17 +32,27 @@ class BasePreprocessor(ABC, PipelineStepMixin, UpdateMetaMixin):
|
|
|
31
32
|
|
|
32
33
|
Raises
|
|
33
34
|
------
|
|
35
|
+
AttributeError
|
|
36
|
+
If the preprocessor does not have `_VALID_DATA_TYPES` attribute.
|
|
34
37
|
ValueError
|
|
35
38
|
If required input data type(s) is(are) not found.
|
|
36
39
|
|
|
37
40
|
"""
|
|
38
41
|
|
|
42
|
+
_VALID_DATA_TYPES: ClassVar[Sequence[str]]
|
|
43
|
+
|
|
39
44
|
def __init__(
|
|
40
45
|
self,
|
|
41
46
|
on: Optional[Union[list[str], str]] = None,
|
|
42
47
|
required_data_types: Optional[Union[list[str], str]] = None,
|
|
43
48
|
) -> None:
|
|
44
49
|
"""Initialize the class."""
|
|
50
|
+
# Check for missing data types attributes
|
|
51
|
+
if not hasattr(self, "_VALID_DATA_TYPES"):
|
|
52
|
+
raise_error(
|
|
53
|
+
msg="Missing `_VALID_DATA_TYPES` for the preprocessor",
|
|
54
|
+
klass=AttributeError,
|
|
55
|
+
)
|
|
45
56
|
# Use all data types if not provided
|
|
46
57
|
if on is None:
|
|
47
58
|
on = self.get_valid_inputs()
|
|
@@ -58,6 +69,9 @@ class BasePreprocessor(ABC, PipelineStepMixin, UpdateMetaMixin):
|
|
|
58
69
|
if required_data_types is None:
|
|
59
70
|
self._required_data_types = on
|
|
60
71
|
else:
|
|
72
|
+
# Convert data types to list
|
|
73
|
+
if not isinstance(required_data_types, list):
|
|
74
|
+
required_data_types = [required_data_types]
|
|
61
75
|
self._required_data_types = required_data_types
|
|
62
76
|
|
|
63
77
|
def validate_input(self, input: list[str]) -> list[str]:
|
|
@@ -89,7 +103,6 @@ class BasePreprocessor(ABC, PipelineStepMixin, UpdateMetaMixin):
|
|
|
89
103
|
)
|
|
90
104
|
return [x for x in self._on if x in input]
|
|
91
105
|
|
|
92
|
-
@abstractmethod
|
|
93
106
|
def get_valid_inputs(self) -> list[str]:
|
|
94
107
|
"""Get valid data types for input.
|
|
95
108
|
|
|
@@ -100,12 +113,8 @@ class BasePreprocessor(ABC, PipelineStepMixin, UpdateMetaMixin):
|
|
|
100
113
|
preprocessor.
|
|
101
114
|
|
|
102
115
|
"""
|
|
103
|
-
|
|
104
|
-
msg="Concrete classes need to implement get_valid_inputs().",
|
|
105
|
-
klass=NotImplementedError,
|
|
106
|
-
)
|
|
116
|
+
return list(self._VALID_DATA_TYPES)
|
|
107
117
|
|
|
108
|
-
@abstractmethod
|
|
109
118
|
def get_output_type(self, input_type: str) -> str:
|
|
110
119
|
"""Get output type.
|
|
111
120
|
|
|
@@ -120,17 +129,15 @@ class BasePreprocessor(ABC, PipelineStepMixin, UpdateMetaMixin):
|
|
|
120
129
|
The data type output by the preprocessor.
|
|
121
130
|
|
|
122
131
|
"""
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
klass=NotImplementedError,
|
|
126
|
-
)
|
|
132
|
+
# Does not add any new keys
|
|
133
|
+
return input_type
|
|
127
134
|
|
|
128
135
|
@abstractmethod
|
|
129
136
|
def preprocess(
|
|
130
137
|
self,
|
|
131
138
|
input: dict[str, Any],
|
|
132
139
|
extra_input: Optional[dict[str, Any]] = None,
|
|
133
|
-
) ->
|
|
140
|
+
) -> dict[str, Any]:
|
|
134
141
|
"""Preprocess.
|
|
135
142
|
|
|
136
143
|
Parameters
|
|
@@ -147,10 +154,6 @@ class BasePreprocessor(ABC, PipelineStepMixin, UpdateMetaMixin):
|
|
|
147
154
|
-------
|
|
148
155
|
dict
|
|
149
156
|
The computed result as dictionary.
|
|
150
|
-
dict or None
|
|
151
|
-
Extra "helper" data types as dictionary to add to the Junifer Data
|
|
152
|
-
object. If no new "helper" data type(s) is(are) created, None is to
|
|
153
|
-
be passed.
|
|
154
157
|
|
|
155
158
|
"""
|
|
156
159
|
raise_error(
|
|
@@ -192,19 +195,10 @@ class BasePreprocessor(ABC, PipelineStepMixin, UpdateMetaMixin):
|
|
|
192
195
|
f"Extra data type for preprocess: {extra_input.keys()}"
|
|
193
196
|
)
|
|
194
197
|
# Preprocess data
|
|
195
|
-
t_out
|
|
196
|
-
input=t_input, extra_input=extra_input
|
|
197
|
-
)
|
|
198
|
+
t_out = self.preprocess(input=t_input, extra_input=extra_input)
|
|
198
199
|
# Set output to the Junifer Data object
|
|
199
200
|
logger.debug(f"Adding {type_} to output")
|
|
200
201
|
out[type_] = t_out
|
|
201
|
-
# Check if helper data types are to be added
|
|
202
|
-
if t_extra_input is not None:
|
|
203
|
-
logger.debug(
|
|
204
|
-
f"Adding helper data types: {t_extra_input.keys()} "
|
|
205
|
-
"to output"
|
|
206
|
-
)
|
|
207
|
-
out.update(t_extra_input)
|
|
208
202
|
# Update metadata for step
|
|
209
203
|
self.update_meta(out[type_], "preprocess")
|
|
210
204
|
return out
|
|
@@ -5,6 +5,7 @@
|
|
|
5
5
|
# Synchon Mandal <s.mandal@fz-juelich.de>
|
|
6
6
|
# License: AGPL
|
|
7
7
|
|
|
8
|
+
from collections.abc import Sequence
|
|
8
9
|
from typing import (
|
|
9
10
|
Any,
|
|
10
11
|
ClassVar,
|
|
@@ -175,6 +176,7 @@ class fMRIPrepConfoundRemover(BasePreprocessor):
|
|
|
175
176
|
"""
|
|
176
177
|
|
|
177
178
|
_DEPENDENCIES: ClassVar[Dependencies] = {"numpy", "nilearn"}
|
|
179
|
+
_VALID_DATA_TYPES: ClassVar[Sequence[str]] = ["BOLD"]
|
|
178
180
|
|
|
179
181
|
def __init__(
|
|
180
182
|
self,
|
|
@@ -251,36 +253,7 @@ class fMRIPrepConfoundRemover(BasePreprocessor):
|
|
|
251
253
|
"include it in the future",
|
|
252
254
|
klass=ValueError,
|
|
253
255
|
)
|
|
254
|
-
super().__init__(
|
|
255
|
-
|
|
256
|
-
def get_valid_inputs(self) -> list[str]:
|
|
257
|
-
"""Get valid data types for input.
|
|
258
|
-
|
|
259
|
-
Returns
|
|
260
|
-
-------
|
|
261
|
-
list of str
|
|
262
|
-
The list of data types that can be used as input for this
|
|
263
|
-
preprocessor.
|
|
264
|
-
|
|
265
|
-
"""
|
|
266
|
-
return ["BOLD"]
|
|
267
|
-
|
|
268
|
-
def get_output_type(self, input_type: str) -> str:
|
|
269
|
-
"""Get output type.
|
|
270
|
-
|
|
271
|
-
Parameters
|
|
272
|
-
----------
|
|
273
|
-
input_type : str
|
|
274
|
-
The input to the preprocessor.
|
|
275
|
-
|
|
276
|
-
Returns
|
|
277
|
-
-------
|
|
278
|
-
str
|
|
279
|
-
The data type output by the preprocessor.
|
|
280
|
-
|
|
281
|
-
"""
|
|
282
|
-
# Does not add any new keys
|
|
283
|
-
return input_type
|
|
256
|
+
super().__init__()
|
|
284
257
|
|
|
285
258
|
def _map_adhoc_to_fmriprep(self, input: dict[str, Any]) -> None:
|
|
286
259
|
"""Map the adhoc format to the fmpriprep format spec.
|
|
@@ -621,7 +594,7 @@ class fMRIPrepConfoundRemover(BasePreprocessor):
|
|
|
621
594
|
self,
|
|
622
595
|
input: dict[str, Any],
|
|
623
596
|
extra_input: Optional[dict[str, Any]] = None,
|
|
624
|
-
) ->
|
|
597
|
+
) -> dict[str, Any]:
|
|
625
598
|
"""Preprocess.
|
|
626
599
|
|
|
627
600
|
Parameters
|
|
@@ -636,9 +609,6 @@ class fMRIPrepConfoundRemover(BasePreprocessor):
|
|
|
636
609
|
dict
|
|
637
610
|
The computed result as dictionary. If `self.masks` is not None,
|
|
638
611
|
then the target data computed mask is updated for further steps.
|
|
639
|
-
None
|
|
640
|
-
Extra "helper" data types as dictionary to add to the Junifer Data
|
|
641
|
-
object.
|
|
642
612
|
|
|
643
613
|
"""
|
|
644
614
|
# Validate data
|
|
@@ -753,4 +723,4 @@ class fMRIPrepConfoundRemover(BasePreprocessor):
|
|
|
753
723
|
}
|
|
754
724
|
)
|
|
755
725
|
|
|
756
|
-
return input
|
|
726
|
+
return input
|
|
@@ -463,7 +463,7 @@ def test_fMRIPrepConfoundRemover_preprocess() -> None:
|
|
|
463
463
|
pre_extra_input = {
|
|
464
464
|
"BOLD": {"confounds": element_data["BOLD"]["confounds"]}
|
|
465
465
|
}
|
|
466
|
-
output
|
|
466
|
+
output = confound_remover.preprocess(pre_input, pre_extra_input)
|
|
467
467
|
trans_bold = output["data"].get_fdata()
|
|
468
468
|
# Transformation is in place
|
|
469
469
|
assert_array_equal(
|
|
@@ -614,7 +614,7 @@ def test_fMRIPrepConfoundRemover_scrubbing() -> None:
|
|
|
614
614
|
pre_extra_input = {
|
|
615
615
|
"BOLD": {"confounds": element_data["BOLD"]["confounds"]}
|
|
616
616
|
}
|
|
617
|
-
output
|
|
617
|
+
output = confound_remover.preprocess(pre_input, pre_extra_input)
|
|
618
618
|
trans_bold = output["data"].get_fdata()
|
|
619
619
|
# Transformation is in place
|
|
620
620
|
assert_array_equal(
|
|
@@ -3,6 +3,7 @@
|
|
|
3
3
|
# Authors: Synchon Mandal <s.mandal@fz-juelich.de>
|
|
4
4
|
# License: AGPL
|
|
5
5
|
|
|
6
|
+
from collections.abc import Sequence
|
|
6
7
|
from typing import Any, ClassVar, Optional, Union
|
|
7
8
|
|
|
8
9
|
from ...api.decorators import register_preprocessor
|
|
@@ -82,6 +83,7 @@ class Smoothing(BasePreprocessor):
|
|
|
82
83
|
"depends_on": FSLSmoothing,
|
|
83
84
|
},
|
|
84
85
|
]
|
|
86
|
+
_VALID_DATA_TYPES: ClassVar[Sequence[str]] = ["T1w", "T2w", "BOLD"]
|
|
85
87
|
|
|
86
88
|
def __init__(
|
|
87
89
|
self,
|
|
@@ -102,40 +104,11 @@ class Smoothing(BasePreprocessor):
|
|
|
102
104
|
)
|
|
103
105
|
super().__init__(on=on)
|
|
104
106
|
|
|
105
|
-
def get_valid_inputs(self) -> list[str]:
|
|
106
|
-
"""Get valid data types for input.
|
|
107
|
-
|
|
108
|
-
Returns
|
|
109
|
-
-------
|
|
110
|
-
list of str
|
|
111
|
-
The list of data types that can be used as input for this
|
|
112
|
-
preprocessor.
|
|
113
|
-
|
|
114
|
-
"""
|
|
115
|
-
return ["T1w", "T2w", "BOLD"]
|
|
116
|
-
|
|
117
|
-
def get_output_type(self, input_type: str) -> str:
|
|
118
|
-
"""Get output type.
|
|
119
|
-
|
|
120
|
-
Parameters
|
|
121
|
-
----------
|
|
122
|
-
input_type : str
|
|
123
|
-
The data type input to the preprocessor.
|
|
124
|
-
|
|
125
|
-
Returns
|
|
126
|
-
-------
|
|
127
|
-
str
|
|
128
|
-
The data type output by the preprocessor.
|
|
129
|
-
|
|
130
|
-
"""
|
|
131
|
-
# Does not add any new keys
|
|
132
|
-
return input_type
|
|
133
|
-
|
|
134
107
|
def preprocess(
|
|
135
108
|
self,
|
|
136
109
|
input: dict[str, Any],
|
|
137
110
|
extra_input: Optional[dict[str, Any]] = None,
|
|
138
|
-
) ->
|
|
111
|
+
) -> dict[str, Any]:
|
|
139
112
|
"""Preprocess.
|
|
140
113
|
|
|
141
114
|
Parameters
|
|
@@ -149,9 +122,6 @@ class Smoothing(BasePreprocessor):
|
|
|
149
122
|
-------
|
|
150
123
|
dict
|
|
151
124
|
The computed result as dictionary.
|
|
152
|
-
None
|
|
153
|
-
Extra "helper" data types as dictionary to add to the Junifer Data
|
|
154
|
-
object.
|
|
155
125
|
|
|
156
126
|
"""
|
|
157
127
|
logger.debug("Smoothing")
|
|
@@ -169,4 +139,4 @@ class Smoothing(BasePreprocessor):
|
|
|
169
139
|
**self.smoothing_params,
|
|
170
140
|
)
|
|
171
141
|
|
|
172
|
-
return input
|
|
142
|
+
return input
|