diff --git a/doc/api.rst b/doc/api.rst index f493d80b319435caabdd2e9f409c6bdcf0c2102f..d0f2f4118f29f0113819ed4b35b9fef66509bb2b 100644 --- a/doc/api.rst +++ b/doc/api.rst @@ -2,7 +2,7 @@ .. .. SPDX-License-Identifier: GPL-3.0-or-later -.. _mednet.api: +.. _mednet.libs.classification.api: ============ Python API @@ -12,7 +12,7 @@ This section includes information for using the Python API of ``mednet``. -.. _mednet.api.data: +.. _mednet.libs.classification.api.data: Data Methods ------------ @@ -22,14 +22,14 @@ Auxiliary classes and methods to define raw dataset iterators. .. autosummary:: :toctree: api/data - mednet.data.augmentations - mednet.data.datamodule - mednet.data.image_utils - mednet.data.split - mednet.data.typing + mednet.libs.classification.data.augmentations + mednet.libs.classification.data.datamodule + mednet.libs.classification.data.image_utils + mednet.libs.classification.data.split + mednet.libs.classification.data.typing -.. _mednet.api.models: +.. _mednet.libs.classification.api.models: Models ------ @@ -39,20 +39,20 @@ CNN and other models implemented. .. autosummary:: :toctree: api/models - mednet.models.pasa - mednet.models.alexnet - mednet.models.densenet - mednet.models.logistic_regression - mednet.models.loss_weights - mednet.models.mlp - mednet.models.model - mednet.models.normalizer - mednet.models.separate - mednet.models.transforms - mednet.models.typing + mednet.libs.classification.models.pasa + mednet.libs.classification.models.alexnet + mednet.libs.classification.models.densenet + mednet.libs.classification.models.logistic_regression + mednet.libs.classification.models.loss_weights + mednet.libs.classification.models.mlp + mednet.libs.classification.models.model + mednet.libs.classification.models.normalizer + mednet.libs.classification.models.separate + mednet.libs.classification.models.transforms + mednet.libs.classification.models.typing -.. _mednet.api.engines: +.. _mednet.libs.classification.api.engines: Command engines --------------- @@ -62,15 +62,15 @@ Functions to actuate on the data. .. autosummary:: :toctree: api/engine - mednet.engine.callbacks - mednet.engine.device - mednet.engine.evaluator - mednet.engine.loggers - mednet.engine.predictor - mednet.engine.trainer + mednet.libs.classification.engine.callbacks + mednet.libs.classification.engine.device + mednet.libs.classification.engine.evaluator + mednet.libs.classification.engine.loggers + mednet.libs.classification.engine.predictor + mednet.libs.classification.engine.trainer -.. _mednet.api.saliency: +.. _mednet.libs.classification.api.saliency: Saliency Map Generation and Analysis ------------------------------------ @@ -80,14 +80,14 @@ Engines to generate and analyze saliency mapping techniques. .. autosummary:: :toctree: api/saliency - mednet.engine.saliency.completeness - mednet.engine.saliency.evaluator - mednet.engine.saliency.generator - mednet.engine.saliency.interpretability - mednet.engine.saliency.viewer + mednet.libs.classification.engine.saliency.completeness + mednet.libs.classification.engine.saliency.evaluator + mednet.libs.classification.engine.saliency.generator + mednet.libs.classification.engine.saliency.interpretability + mednet.libs.classification.engine.saliency.viewer -.. _mednet.api.utils: +.. _mednet.libs.classification.api.utils: Various utilities ----------------- diff --git a/doc/cli.rst b/doc/cli.rst index 0d9ebcec30502364718416371d08623e7d7d26e5..c9f96653b97feec52dd3e683e41a476ccc3c3119 100644 --- a/doc/cli.rst +++ b/doc/cli.rst @@ -2,7 +2,7 @@ .. .. SPDX-License-Identifier: GPL-3.0-or-later -.. _mednet.cli: +.. _mednet.libs.classification.cli: ======================== Command-line Interface @@ -12,7 +12,7 @@ This section contains an overview of command-line applications shipped with this package. -.. click:: mednet.scripts.cli:cli +.. click:: mednet.libs.classification.scripts.cli:cli :prog: mednet :nested: full diff --git a/doc/config.rst b/doc/config.rst index 9ecb361cfd66897afca06af8c362a6941b381fd7..c4e366533923251278e43ef680db0acd0def66be 100644 --- a/doc/config.rst +++ b/doc/config.rst @@ -2,7 +2,7 @@ .. .. SPDX-License-Identifier: GPL-3.0-or-later -.. _mednet.config: +.. _mednet.libs.classification.config: Preset Configurations --------------------- @@ -11,7 +11,7 @@ This module contains preset configurations for baseline CNN architectures and DataModules. -.. _mednet.config.models: +.. _mednet.libs.classification.config.models: Pre-configured Models ===================== @@ -22,14 +22,14 @@ Pre-configured models you can readily use. :toctree: api/config.models :template: config.rst - mednet.config.models.alexnet - mednet.config.models.alexnet_pretrained - mednet.config.models.densenet - mednet.config.models.densenet_pretrained - mednet.config.models.densenet_rs - mednet.config.models.logistic_regression - mednet.config.models.mlp - mednet.config.models.pasa + mednet.libs.classification.config.models.alexnet + mednet.libs.classification.config.models.alexnet_pretrained + mednet.libs.classification.config.models.densenet + mednet.libs.classification.config.models.densenet_pretrained + mednet.libs.classification.config.models.densenet_rs + mednet.libs.classification.config.models.logistic_regression + mednet.libs.classification.config.models.mlp + mednet.libs.classification.config.models.pasa Data Augmentations @@ -46,6 +46,7 @@ Sequences of data augmentations you can readily use. mednet.config.augmentations.elastic mednet.config.augmentations.affine +.. _mednet.libs.classification.config.datamodules: DataModule support ================== @@ -60,22 +61,22 @@ functional DataModule that can be used in training, prediction or testing. .. autosummary:: :toctree: api/config.datamodules - mednet.config.data.hivtb.datamodule - mednet.config.data.indian.datamodule - mednet.config.data.montgomery.datamodule - mednet.config.data.montgomery_shenzhen.datamodule - mednet.config.data.montgomery_shenzhen_indian.datamodule - mednet.config.data.montgomery_shenzhen_indian_padchest.datamodule - mednet.config.data.montgomery_shenzhen_indian_tbx11k.datamodule - mednet.config.data.nih_cxr14.datamodule - mednet.config.data.nih_cxr14_padchest.datamodule - mednet.config.data.padchest.datamodule - mednet.config.data.shenzhen.datamodule - mednet.config.data.tbpoc.datamodule - mednet.config.data.tbx11k.datamodule + mednet.libs.classification.config.data.hivtb.datamodule + mednet.libs.classification.config.data.indian.datamodule + mednet.libs.classification.config.data.montgomery.datamodule + mednet.libs.classification.config.data.montgomery_shenzhen.datamodule + mednet.libs.classification.config.data.montgomery_shenzhen_indian.datamodule + mednet.libs.classification.config.data.montgomery_shenzhen_indian_padchest.datamodule + mednet.libs.classification.config.data.montgomery_shenzhen_indian_tbx11k.datamodule + mednet.libs.classification.config.data.nih_cxr14.datamodule + mednet.libs.classification.config.data.nih_cxr14_padchest.datamodule + mednet.libs.classification.config.data.padchest.datamodule + mednet.libs.classification.config.data.shenzhen.datamodule + mednet.libs.classification.config.data.tbpoc.datamodule + mednet.libs.classification.config.data.tbx11k.datamodule -.. _mednet.config.datamodule-instances: +.. _mednet.libs.classification.config.datamodule-instances: Pre-configured DataModules ========================== @@ -83,29 +84,29 @@ Pre-configured DataModules DataModules provide access to preset pytorch dataloaders for training, validating, testing and running prediction tasks. Each of the pre-configured DataModule is based on one (or more) of the :ref:`supported base DataModules -<mednet.config.datamodules>`. +<mednet.libs.classification.config.datamodules>`. .. autosummary:: :toctree: api/config.datamodule-instances :template: config.rst - mednet.config.data.indian.default - mednet.config.data.montgomery.default - mednet.config.data.montgomery_shenzhen.default - mednet.config.data.montgomery_shenzhen_indian.default - mednet.config.data.montgomery_shenzhen_indian_padchest.default - mednet.config.data.montgomery_shenzhen_indian_tbx11k.v1_healthy_vs_atb - mednet.config.data.montgomery_shenzhen_indian_tbx11k.v2_others_vs_atb - mednet.config.data.nih_cxr14.default - mednet.config.data.nih_cxr14_padchest.idiap - mednet.config.data.padchest.idiap - mednet.config.data.shenzhen.default - mednet.config.data.tbx11k.v1_healthy_vs_atb - mednet.config.data.tbx11k.v2_others_vs_atb - mednet.config.data.tbx11k.v2_others_vs_atb + mednet.libs.classification.config.data.indian.default + mednet.libs.classification.config.data.montgomery.default + mednet.libs.classification.config.data.montgomery_shenzhen.default + mednet.libs.classification.config.data.montgomery_shenzhen_indian.default + mednet.libs.classification.config.data.montgomery_shenzhen_indian_padchest.default + mednet.libs.classification.config.data.montgomery_shenzhen_indian_tbx11k.v1_healthy_vs_atb + mednet.libs.classification.config.data.montgomery_shenzhen_indian_tbx11k.v2_others_vs_atb + mednet.libs.classification.config.data.nih_cxr14.default + mednet.libs.classification.config.data.nih_cxr14_padchest.idiap + mednet.libs.classification.config.data.padchest.idiap + mednet.libs.classification.config.data.shenzhen.default + mednet.libs.classification.config.data.tbx11k.v1_healthy_vs_atb + mednet.libs.classification.config.data.tbx11k.v2_others_vs_atb + mednet.libs.classification.config.data.tbx11k.v2_others_vs_atb -.. _mednet.config.datamodule-instances.folds: +.. _mednet.libs.classification.config.datamodule-instances.folds: Cross-validation DataModules ============================ @@ -120,17 +121,17 @@ DataModules. Nine other folds are available for every configuration (from 1 to :toctree: api/config.datamodule-folds :template: config.rst - mednet.config.data.hivtb.fold_0 - mednet.config.data.indian.fold_0 - mednet.config.data.montgomery.fold_0 - mednet.config.data.montgomery_shenzhen.fold_0 - mednet.config.data.montgomery_shenzhen_indian.fold_0 - mednet.config.data.montgomery_shenzhen_indian_tbx11k.v1_fold_0 - mednet.config.data.montgomery_shenzhen_indian_tbx11k.v2_fold_0 - mednet.config.data.shenzhen.fold_0 - mednet.config.data.tbpoc.fold_0 - mednet.config.data.tbx11k.v1_fold_0 - mednet.config.data.tbx11k.v2_fold_0 + mednet.libs.classification.config.data.hivtb.fold_0 + mednet.libs.classification.config.data.indian.fold_0 + mednet.libs.classification.config.data.montgomery.fold_0 + mednet.libs.classification.config.data.montgomery_shenzhen.fold_0 + mednet.libs.classification.config.data.montgomery_shenzhen_indian.fold_0 + mednet.libs.classification.config.data.montgomery_shenzhen_indian_tbx11k.v1_fold_0 + mednet.libs.classification.config.data.montgomery_shenzhen_indian_tbx11k.v2_fold_0 + mednet.libs.classification.config.data.shenzhen.fold_0 + mednet.libs.classification.config.data.tbpoc.fold_0 + mednet.libs.classification.config.data.tbx11k.v1_fold_0 + mednet.libs.classification.config.data.tbx11k.v2_fold_0 .. include:: links.rst diff --git a/doc/contribute.rst b/doc/contribute.rst index 0c25cfa8076036c639e31bc20ffc39ece73bf29f..849a9e48120550392d2d459058f95c0a36f70dca 100644 --- a/doc/contribute.rst +++ b/doc/contribute.rst @@ -2,7 +2,7 @@ .. .. SPDX-License-Identifier: GPL-3.0-or-later -.. _mednet.contribute: +.. _mednet.libs.classification.contribute: =================================== Getting Involved and Contributing diff --git a/doc/data-model.rst b/doc/data-model.rst index 634ed899f93911bd274a1d51f0291d140f6889a5..6448c32471783296838bbab4fea8f683c510d90b 100644 --- a/doc/data-model.rst +++ b/doc/data-model.rst @@ -2,7 +2,7 @@ .. .. SPDX-License-Identifier: GPL-3.0-or-later -.. _mednet.datamodel: +.. _mednet.libs.classification.datamodel: ============ Data model diff --git a/doc/install.rst b/doc/install.rst index 573a624868220d5a89a69969ebcd8d24576171b3..820e90615972e432226e701185d189e9d1f84af4 100644 --- a/doc/install.rst +++ b/doc/install.rst @@ -2,7 +2,7 @@ .. .. SPDX-License-Identifier: GPL-3.0-or-later -.. _mednet.install: +.. _mednet.libs.classification.install: ============== Installation @@ -78,7 +78,7 @@ installation paths. configuration tips on the *Development* tab above. -.. _mednet.setup: +.. _mednet.libs.classification.setup: Setup ----- @@ -86,7 +86,7 @@ Setup A configuration file may be useful to setup global options that should be often reused. The location of the configuration file depends on the value of the environment variable ``$XDG_CONFIG_HOME``, but defaults to -``~/.config/mednet.toml``. You may edit this file using your preferred +``~/.config/mednet.libs.classification.toml``. You may edit this file using your preferred editor. Here is an example configuration file that may be useful as a starting point: @@ -124,7 +124,7 @@ Here is an example configuration file that may be useful as a starting point: mednet database check <database_name> -.. _mednet.setup.databases: +.. _mednet.libs.classification.setup.databases: Supported Databases =================== @@ -135,7 +135,7 @@ raw data can be downloaded. The list of images in each split is available in the source code. -.. _mednet.setup.databases.tb: +.. _mednet.libs.classification.setup.databases.tb: Tuberculosis databases ~~~~~~~~~~~~~~~~~~~~~~ @@ -176,7 +176,7 @@ In addition to the splits presented in the following table, 10 folds - 52 -.. _mednet.setup.databases.tb+signs: +.. _mednet.libs.classification.setup.databases.tb+signs: Tuberculosis multilabel databases ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ @@ -212,7 +212,7 @@ In addition to the splits presented in the following table, 10 folds - 2800 -.. _mednet.setup.databases.tbmultilabel+signs: +.. _mednet.libs.classification.setup.databases.tbmultilabel+signs: Tuberculosis + radiological findings databases ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ @@ -236,7 +236,7 @@ and radiological findings. - 0 -.. _mednet.setup.databases.signs: +.. _mednet.libs.classification.setup.databases.signs: Radiological findings databases ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ @@ -267,7 +267,7 @@ information about tuberculosis. - 4'054 -.. _mednet.setup.databases.hiv-tb: +.. _mednet.libs.classification.setup.databases.hiv-tb: HIV-Tuberculosis databases ~~~~~~~~~~~~~~~~~~~~~~~~~~ diff --git a/doc/usage/evaluation.rst b/doc/usage/evaluation.rst index 4bdd7e843696d396158f0bb31fcce847b6925feb..1288bab2007f377d961a606e835feaef86eb5d45 100644 --- a/doc/usage/evaluation.rst +++ b/doc/usage/evaluation.rst @@ -2,7 +2,7 @@ .. .. SPDX-License-Identifier: GPL-3.0-or-later -.. _mednet.usage.evaluation: +.. _mednet.libs.classification.usage.evaluation: ========================== Inference and Evaluation @@ -20,7 +20,7 @@ Inference In inference (or prediction) mode, we input a model, a dataset, a model checkpoint generated during training, and output a json file containing the prediction outputs for every input image. -To run inference, use the sub-command :ref:`predict <mednet.cli>`. +To run inference, use the sub-command :ref:`predict <mednet.libs.classification.cli>`. Examples ======== @@ -40,7 +40,7 @@ Evaluation In evaluation, we input predictions to generate performance summaries that help analysis of a trained model. The generated files are a .pdf containing various plots and a table of metrics for each dataset split. -Evaluation is done using the :ref:`evaluate command <mednet.cli>` followed by the json file generated during +Evaluation is done using the :ref:`evaluate command <mednet.libs.classification.cli>` followed by the json file generated during the inference step and a threshold. Use ``mednet evaluate --help`` for more information. diff --git a/doc/usage/experiment.rst b/doc/usage/experiment.rst index 52f55f2b040145d73d2da83a9417dfba7a1829a1..8dc75b9d76e432dd91ca13e94f9585daf7e4e2a9 100644 --- a/doc/usage/experiment.rst +++ b/doc/usage/experiment.rst @@ -2,13 +2,13 @@ .. .. SPDX-License-Identifier: GPL-3.0-or-later -.. _mednet.experiment: +.. _mednet.libs.classification.experiment: ============================== Running complete experiments ============================== -We provide an :ref:`experiment command <mednet.cli>` +We provide an :ref:`experiment command <mednet.libs.classification.cli>` that runs training, followed by prediction and evaluation. After running, you will be able to find results from model fitting, prediction and evaluation under a single output directory. diff --git a/doc/usage/index.rst b/doc/usage/index.rst index 9e5090b78231f444bf02a8e6ec32003f5607aa41..ce1c5c065c24ad02bbf1fd97b768b2fd74d5032f 100644 --- a/doc/usage/index.rst +++ b/doc/usage/index.rst @@ -2,7 +2,7 @@ .. .. SPDX-License-Identifier: GPL-3.0-or-later -.. _mednet.usage: +.. _mednet.libs.classification.usage: ======= Usage @@ -14,7 +14,7 @@ tuberculosis detection with support for the following activities. .. figure:: img/direct_vs_indirect.png -.. _mednet.usage.direct-detection: +.. _mednet.libs.classification.usage.direct-detection: Direct detection @@ -30,7 +30,7 @@ Direct detection thresholds can also be calculated. -.. \_mednet.usage.indirect-detection: +.. \_mednet.libs.classification.usage.indirect-detection: .. Indirect detection ------------------ @@ -51,7 +51,7 @@ Direct detection * Comparison: Use predictions results to compare performance of multiple systems. -We provide :ref:`command-line interfaces (CLI) <mednet.cli>` that implement +We provide :ref:`command-line interfaces (CLI) <mednet.libs.classification.cli>` that implement each of the phases above. This interface is configurable using :ref:`clapper's extensible configuration framework <clapper.config>`. In essence, each command-line option may be provided as a variable with the same name in a @@ -66,14 +66,14 @@ to an application. may require complex Python types that cannot be synthetized in a single input parameter. -We provide a number of :ref:`preset configuration files <mednet.config>` that +We provide a number of :ref:`preset configuration files <mednet.libs.classification.config>` that can be used in one or more of the activities described in this section. Our command-line framework allows you to refer to these preset configuration files using special names (a.k.a. "resources"), that procure and load these for you automatically. -.. _mednet.usage.commands: +.. _mednet.libs.classification.usage.commands: Commands -------- diff --git a/doc/usage/saliency.rst b/doc/usage/saliency.rst index 65074ae5b6585c1a14e5c6c529a632b4679a0479..ebd03bf72a2fd2967a992aa6100183c94104e617 100644 --- a/doc/usage/saliency.rst +++ b/doc/usage/saliency.rst @@ -2,7 +2,7 @@ .. .. SPDX-License-Identifier: GPL-3.0-or-later -.. _mednet.usage.saliency: +.. _mednet.libs.classification.usage.saliency: ========== Saliency @@ -17,7 +17,7 @@ Some of the scripts require the use of a database with human-annotated saliency Generation ---------- -Saliency maps can be generated with the :ref:`saliency generate command <mednet.cli>`. +Saliency maps can be generated with the :ref:`saliency generate command <mednet.libs.classification.cli>`. They are represented as numpy arrays of the same size as thes images, with values in the range [0-1] and saved in .npy files. Several mapping algorithms are available to choose from, which can be specified with the -s option. @@ -36,7 +36,7 @@ objects on the output directory: Viewing ------- -To overlay saliency maps over the original images, use the :ref:`saliency view command <mednet.cli>`. +To overlay saliency maps over the original images, use the :ref:`saliency view command <mednet.libs.classification.cli>`. Results are saved as PNG images in which brigter pixels correspond to areas with higher saliency. Examples diff --git a/doc/usage/training.rst b/doc/usage/training.rst index 7cd58605e4d6fc05fa2ec0a8564cd05d91f80612..a123fce48ffa5be39ca69cf0fa886ef3acdc79c6 100644 --- a/doc/usage/training.rst +++ b/doc/usage/training.rst @@ -2,7 +2,7 @@ .. .. SPDX-License-Identifier: GPL-3.0-or-later -.. _mednet.usage.training: +.. _mednet.libs.classification.usage.training: ========== Training @@ -71,7 +71,7 @@ Plotting training metrics Various metrics are recorded at each epoch during training, such as the execution time, loss and resource usage. These are saved in a Tensorboard file, located in a `logs` subdirectory of the training output folder. -Mednet provides a :ref:`train-analysis <mednet.cli>` convenience script that graphs the scalars stored in these files and saves them in a .pdf file. +Mednet provides a :ref:`train-analysis <mednet.libs.classification.cli>` convenience script that graphs the scalars stored in these files and saves them in a .pdf file. Examples ======== diff --git a/helpers/tbx11k_make_splits.py b/helpers/tbx11k_make_splits.py index 559f0d4122c3a2bd77237f63e727605496239b61..75d4d2c327fdc157b769ea318be7c7986cc8857f 100644 --- a/helpers/tbx11k_make_splits.py +++ b/helpers/tbx11k_make_splits.py @@ -2,7 +2,7 @@ # # SPDX-License-Identifier: GPL-3.0-or-later """Converts TBX11k JSON annotation files into simplified JSON datasets for -mednet. +mednet.libs.classification. Requires ``datadir.tbx11k`` to be set on your configuration file, or that you are sitting at the root directory of the database. @@ -413,7 +413,7 @@ def main(): from clapper.rc import UserDefaults datadir = pathlib.Path( - UserDefaults("mednet.toml").get( + UserDefaults("mednet.libs.classification.toml").get( "datadir.tbx11k", os.path.realpath(os.curdir), ), diff --git a/pyproject.toml b/pyproject.toml index b182482621e3cd4e3ef7356b1d3fe14227dc171e..3a5d57eb7f5428f65a675c9950ed5e4be87b5315 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -235,16 +235,16 @@ include = [ [tool.hatch.build.targets.wheel] packages = ["src/mednet"] -[project.entry-points."mednet.config"] +[project.entry-points."mednet.libs.classification.config"] # models -pasa = "mednet.config.models.pasa" -mlp = "mednet.config.models.mlp" -logistic-regression = "mednet.config.models.logistic_regression" -alexnet = "mednet.config.models.alexnet" -alexnet-pretrained = "mednet.config.models.alexnet_pretrained" -densenet = "mednet.config.models.densenet" -densenet-pretrained = "mednet.config.models.densenet_pretrained" +pasa = "mednet.libs.classification.config.models.pasa" +mlp = "mednet.libs.classification.config.models.mlp" +logistic-regression = "mednet.libs.classification.config.models.logistic_regression" +alexnet = "mednet.libs.classification.config.models.alexnet" +alexnet-pretrained = "mednet.libs.classification.config.models.alexnet_pretrained" +densenet = "mednet.libs.classification.config.models.densenet" +densenet-pretrained = "mednet.libs.classification.config.models.densenet_pretrained" # 3D models cnn3d = "mednet.config.models.cnn3d" @@ -258,160 +258,160 @@ hflip-affine = "mednet.config.augmentations.hflip_affine" hflip-jitter-affine = "mednet.config.augmentations.hflip_jitter_affine" # montgomery dataset (and cross-validation folds) -montgomery = "mednet.config.data.montgomery.default" -montgomery-f0 = "mednet.config.data.montgomery.fold_0" -montgomery-f1 = "mednet.config.data.montgomery.fold_1" -montgomery-f2 = "mednet.config.data.montgomery.fold_2" -montgomery-f3 = "mednet.config.data.montgomery.fold_3" -montgomery-f4 = "mednet.config.data.montgomery.fold_4" -montgomery-f5 = "mednet.config.data.montgomery.fold_5" -montgomery-f6 = "mednet.config.data.montgomery.fold_6" -montgomery-f7 = "mednet.config.data.montgomery.fold_7" -montgomery-f8 = "mednet.config.data.montgomery.fold_8" -montgomery-f9 = "mednet.config.data.montgomery.fold_9" +montgomery = "mednet.libs.classification.config.data.montgomery.default" +montgomery-f0 = "mednet.libs.classification.config.data.montgomery.fold_0" +montgomery-f1 = "mednet.libs.classification.config.data.montgomery.fold_1" +montgomery-f2 = "mednet.libs.classification.config.data.montgomery.fold_2" +montgomery-f3 = "mednet.libs.classification.config.data.montgomery.fold_3" +montgomery-f4 = "mednet.libs.classification.config.data.montgomery.fold_4" +montgomery-f5 = "mednet.libs.classification.config.data.montgomery.fold_5" +montgomery-f6 = "mednet.libs.classification.config.data.montgomery.fold_6" +montgomery-f7 = "mednet.libs.classification.config.data.montgomery.fold_7" +montgomery-f8 = "mednet.libs.classification.config.data.montgomery.fold_8" +montgomery-f9 = "mednet.libs.classification.config.data.montgomery.fold_9" # shenzhen dataset (and cross-validation folds) -shenzhen = "mednet.config.data.shenzhen.default" -shenzhen-alltest = "mednet.config.data.shenzhen.alltest" -shenzhen-f0 = "mednet.config.data.shenzhen.fold_0" -shenzhen-f1 = "mednet.config.data.shenzhen.fold_1" -shenzhen-f2 = "mednet.config.data.shenzhen.fold_2" -shenzhen-f3 = "mednet.config.data.shenzhen.fold_3" -shenzhen-f4 = "mednet.config.data.shenzhen.fold_4" -shenzhen-f5 = "mednet.config.data.shenzhen.fold_5" -shenzhen-f6 = "mednet.config.data.shenzhen.fold_6" -shenzhen-f7 = "mednet.config.data.shenzhen.fold_7" -shenzhen-f8 = "mednet.config.data.shenzhen.fold_8" -shenzhen-f9 = "mednet.config.data.shenzhen.fold_9" +shenzhen = "mednet.libs.classification.config.data.shenzhen.default" +shenzhen-alltest = "mednet.libs.classification.config.data.shenzhen.alltest" +shenzhen-f0 = "mednet.libs.classification.config.data.shenzhen.fold_0" +shenzhen-f1 = "mednet.libs.classification.config.data.shenzhen.fold_1" +shenzhen-f2 = "mednet.libs.classification.config.data.shenzhen.fold_2" +shenzhen-f3 = "mednet.libs.classification.config.data.shenzhen.fold_3" +shenzhen-f4 = "mednet.libs.classification.config.data.shenzhen.fold_4" +shenzhen-f5 = "mednet.libs.classification.config.data.shenzhen.fold_5" +shenzhen-f6 = "mednet.libs.classification.config.data.shenzhen.fold_6" +shenzhen-f7 = "mednet.libs.classification.config.data.shenzhen.fold_7" +shenzhen-f8 = "mednet.libs.classification.config.data.shenzhen.fold_8" +shenzhen-f9 = "mednet.libs.classification.config.data.shenzhen.fold_9" # indian dataset (and cross-validation folds) -indian = "mednet.config.data.indian.default" -indian-f0 = "mednet.config.data.indian.fold_0" -indian-f1 = "mednet.config.data.indian.fold_1" -indian-f2 = "mednet.config.data.indian.fold_2" -indian-f3 = "mednet.config.data.indian.fold_3" -indian-f4 = "mednet.config.data.indian.fold_4" -indian-f5 = "mednet.config.data.indian.fold_5" -indian-f6 = "mednet.config.data.indian.fold_6" -indian-f7 = "mednet.config.data.indian.fold_7" -indian-f8 = "mednet.config.data.indian.fold_8" -indian-f9 = "mednet.config.data.indian.fold_9" +indian = "mednet.libs.classification.config.data.indian.default" +indian-f0 = "mednet.libs.classification.config.data.indian.fold_0" +indian-f1 = "mednet.libs.classification.config.data.indian.fold_1" +indian-f2 = "mednet.libs.classification.config.data.indian.fold_2" +indian-f3 = "mednet.libs.classification.config.data.indian.fold_3" +indian-f4 = "mednet.libs.classification.config.data.indian.fold_4" +indian-f5 = "mednet.libs.classification.config.data.indian.fold_5" +indian-f6 = "mednet.libs.classification.config.data.indian.fold_6" +indian-f7 = "mednet.libs.classification.config.data.indian.fold_7" +indian-f8 = "mednet.libs.classification.config.data.indian.fold_8" +indian-f9 = "mednet.libs.classification.config.data.indian.fold_9" # TBX11K dataset split 1: healthy vs active tb, and cross-validation folds -tbx11k-v1-healthy-vs-atb = "mednet.config.data.tbx11k.v1_healthy_vs_atb" -tbx11k-v1-f0 = "mednet.config.data.tbx11k.v1_fold_0" -tbx11k-v1-f1 = "mednet.config.data.tbx11k.v1_fold_1" -tbx11k-v1-f2 = "mednet.config.data.tbx11k.v1_fold_2" -tbx11k-v1-f3 = "mednet.config.data.tbx11k.v1_fold_3" -tbx11k-v1-f4 = "mednet.config.data.tbx11k.v1_fold_4" -tbx11k-v1-f5 = "mednet.config.data.tbx11k.v1_fold_5" -tbx11k-v1-f6 = "mednet.config.data.tbx11k.v1_fold_6" -tbx11k-v1-f7 = "mednet.config.data.tbx11k.v1_fold_7" -tbx11k-v1-f8 = "mednet.config.data.tbx11k.v1_fold_8" -tbx11k-v1-f9 = "mednet.config.data.tbx11k.v1_fold_9" +tbx11k-v1-healthy-vs-atb = "mednet.libs.classification.config.data.tbx11k.v1_healthy_vs_atb" +tbx11k-v1-f0 = "mednet.libs.classification.config.data.tbx11k.v1_fold_0" +tbx11k-v1-f1 = "mednet.libs.classification.config.data.tbx11k.v1_fold_1" +tbx11k-v1-f2 = "mednet.libs.classification.config.data.tbx11k.v1_fold_2" +tbx11k-v1-f3 = "mednet.libs.classification.config.data.tbx11k.v1_fold_3" +tbx11k-v1-f4 = "mednet.libs.classification.config.data.tbx11k.v1_fold_4" +tbx11k-v1-f5 = "mednet.libs.classification.config.data.tbx11k.v1_fold_5" +tbx11k-v1-f6 = "mednet.libs.classification.config.data.tbx11k.v1_fold_6" +tbx11k-v1-f7 = "mednet.libs.classification.config.data.tbx11k.v1_fold_7" +tbx11k-v1-f8 = "mednet.libs.classification.config.data.tbx11k.v1_fold_8" +tbx11k-v1-f9 = "mednet.libs.classification.config.data.tbx11k.v1_fold_9" # TBX11K dataset split 2: others vs active tb, and cross-validation folds -tbx11k-v2-others-vs-atb = "mednet.config.data.tbx11k.v2_others_vs_atb" -tbx11k-v2-f0 = "mednet.config.data.tbx11k.v2_fold_0" -tbx11k-v2-f1 = "mednet.config.data.tbx11k.v2_fold_1" -tbx11k-v2-f2 = "mednet.config.data.tbx11k.v2_fold_2" -tbx11k-v2-f3 = "mednet.config.data.tbx11k.v2_fold_3" -tbx11k-v2-f4 = "mednet.config.data.tbx11k.v2_fold_4" -tbx11k-v2-f5 = "mednet.config.data.tbx11k.v2_fold_5" -tbx11k-v2-f6 = "mednet.config.data.tbx11k.v2_fold_6" -tbx11k-v2-f7 = "mednet.config.data.tbx11k.v2_fold_7" -tbx11k-v2-f8 = "mednet.config.data.tbx11k.v2_fold_8" -tbx11k-v2-f9 = "mednet.config.data.tbx11k.v2_fold_9" +tbx11k-v2-others-vs-atb = "mednet.libs.classification.config.data.tbx11k.v2_others_vs_atb" +tbx11k-v2-f0 = "mednet.libs.classification.config.data.tbx11k.v2_fold_0" +tbx11k-v2-f1 = "mednet.libs.classification.config.data.tbx11k.v2_fold_1" +tbx11k-v2-f2 = "mednet.libs.classification.config.data.tbx11k.v2_fold_2" +tbx11k-v2-f3 = "mednet.libs.classification.config.data.tbx11k.v2_fold_3" +tbx11k-v2-f4 = "mednet.libs.classification.config.data.tbx11k.v2_fold_4" +tbx11k-v2-f5 = "mednet.libs.classification.config.data.tbx11k.v2_fold_5" +tbx11k-v2-f6 = "mednet.libs.classification.config.data.tbx11k.v2_fold_6" +tbx11k-v2-f7 = "mednet.libs.classification.config.data.tbx11k.v2_fold_7" +tbx11k-v2-f8 = "mednet.libs.classification.config.data.tbx11k.v2_fold_8" +tbx11k-v2-f9 = "mednet.libs.classification.config.data.tbx11k.v2_fold_9" # montgomery-shenzhen aggregated dataset -montgomery-shenzhen = "mednet.config.data.montgomery_shenzhen.default" -montgomery-shenzhen-f0 = "mednet.config.data.montgomery_shenzhen.fold_0" -montgomery-shenzhen-f1 = "mednet.config.data.montgomery_shenzhen.fold_1" -montgomery-shenzhen-f2 = "mednet.config.data.montgomery_shenzhen.fold_2" -montgomery-shenzhen-f3 = "mednet.config.data.montgomery_shenzhen.fold_3" -montgomery-shenzhen-f4 = "mednet.config.data.montgomery_shenzhen.fold_4" -montgomery-shenzhen-f5 = "mednet.config.data.montgomery_shenzhen.fold_5" -montgomery-shenzhen-f6 = "mednet.config.data.montgomery_shenzhen.fold_6" -montgomery-shenzhen-f7 = "mednet.config.data.montgomery_shenzhen.fold_7" -montgomery-shenzhen-f8 = "mednet.config.data.montgomery_shenzhen.fold_8" -montgomery-shenzhen-f9 = "mednet.config.data.montgomery_shenzhen.fold_9" +montgomery-shenzhen = "mednet.libs.classification.config.data.montgomery_shenzhen.default" +montgomery-shenzhen-f0 = "mednet.libs.classification.config.data.montgomery_shenzhen.fold_0" +montgomery-shenzhen-f1 = "mednet.libs.classification.config.data.montgomery_shenzhen.fold_1" +montgomery-shenzhen-f2 = "mednet.libs.classification.config.data.montgomery_shenzhen.fold_2" +montgomery-shenzhen-f3 = "mednet.libs.classification.config.data.montgomery_shenzhen.fold_3" +montgomery-shenzhen-f4 = "mednet.libs.classification.config.data.montgomery_shenzhen.fold_4" +montgomery-shenzhen-f5 = "mednet.libs.classification.config.data.montgomery_shenzhen.fold_5" +montgomery-shenzhen-f6 = "mednet.libs.classification.config.data.montgomery_shenzhen.fold_6" +montgomery-shenzhen-f7 = "mednet.libs.classification.config.data.montgomery_shenzhen.fold_7" +montgomery-shenzhen-f8 = "mednet.libs.classification.config.data.montgomery_shenzhen.fold_8" +montgomery-shenzhen-f9 = "mednet.libs.classification.config.data.montgomery_shenzhen.fold_9" # montgomery-shenzhen-indian aggregated dataset -montgomery-shenzhen-indian = "mednet.config.data.montgomery_shenzhen_indian.default" -montgomery-shenzhen-indian-f0 = "mednet.config.data.montgomery_shenzhen_indian.fold_0" -montgomery-shenzhen-indian-f1 = "mednet.config.data.montgomery_shenzhen_indian.fold_1" -montgomery-shenzhen-indian-f2 = "mednet.config.data.montgomery_shenzhen_indian.fold_2" -montgomery-shenzhen-indian-f3 = "mednet.config.data.montgomery_shenzhen_indian.fold_3" -montgomery-shenzhen-indian-f4 = "mednet.config.data.montgomery_shenzhen_indian.fold_4" -montgomery-shenzhen-indian-f5 = "mednet.config.data.montgomery_shenzhen_indian.fold_5" -montgomery-shenzhen-indian-f6 = "mednet.config.data.montgomery_shenzhen_indian.fold_6" -montgomery-shenzhen-indian-f7 = "mednet.config.data.montgomery_shenzhen_indian.fold_7" -montgomery-shenzhen-indian-f8 = "mednet.config.data.montgomery_shenzhen_indian.fold_8" -montgomery-shenzhen-indian-f9 = "mednet.config.data.montgomery_shenzhen_indian.fold_9" +montgomery-shenzhen-indian = "mednet.libs.classification.config.data.montgomery_shenzhen_indian.default" +montgomery-shenzhen-indian-f0 = "mednet.libs.classification.config.data.montgomery_shenzhen_indian.fold_0" +montgomery-shenzhen-indian-f1 = "mednet.libs.classification.config.data.montgomery_shenzhen_indian.fold_1" +montgomery-shenzhen-indian-f2 = "mednet.libs.classification.config.data.montgomery_shenzhen_indian.fold_2" +montgomery-shenzhen-indian-f3 = "mednet.libs.classification.config.data.montgomery_shenzhen_indian.fold_3" +montgomery-shenzhen-indian-f4 = "mednet.libs.classification.config.data.montgomery_shenzhen_indian.fold_4" +montgomery-shenzhen-indian-f5 = "mednet.libs.classification.config.data.montgomery_shenzhen_indian.fold_5" +montgomery-shenzhen-indian-f6 = "mednet.libs.classification.config.data.montgomery_shenzhen_indian.fold_6" +montgomery-shenzhen-indian-f7 = "mednet.libs.classification.config.data.montgomery_shenzhen_indian.fold_7" +montgomery-shenzhen-indian-f8 = "mednet.libs.classification.config.data.montgomery_shenzhen_indian.fold_8" +montgomery-shenzhen-indian-f9 = "mednet.libs.classification.config.data.montgomery_shenzhen_indian.fold_9" # montgomery-shenzhen-indian-tbx11k aggregated dataset -montgomery-shenzhen-indian-tbx11k-v1 = "mednet.config.data.montgomery_shenzhen_indian_tbx11k.v1_healthy_vs_atb" -montgomery-shenzhen-indian-tbx11k-v1-f0 = "mednet.config.data.montgomery_shenzhen_indian_tbx11k.v1_fold_0" -montgomery-shenzhen-indian-tbx11k-v1-f1 = "mednet.config.data.montgomery_shenzhen_indian_tbx11k.v1_fold_1" -montgomery-shenzhen-indian-tbx11k-v1-f2 = "mednet.config.data.montgomery_shenzhen_indian_tbx11k.v1_fold_2" -montgomery-shenzhen-indian-tbx11k-v1-f3 = "mednet.config.data.montgomery_shenzhen_indian_tbx11k.v1_fold_3" -montgomery-shenzhen-indian-tbx11k-v1-f4 = "mednet.config.data.montgomery_shenzhen_indian_tbx11k.v1_fold_4" -montgomery-shenzhen-indian-tbx11k-v1-f5 = "mednet.config.data.montgomery_shenzhen_indian_tbx11k.v1_fold_5" -montgomery-shenzhen-indian-tbx11k-v1-f6 = "mednet.config.data.montgomery_shenzhen_indian_tbx11k.v1_fold_6" -montgomery-shenzhen-indian-tbx11k-v1-f7 = "mednet.config.data.montgomery_shenzhen_indian_tbx11k.v1_fold_7" -montgomery-shenzhen-indian-tbx11k-v1-f8 = "mednet.config.data.montgomery_shenzhen_indian_tbx11k.v1_fold_8" -montgomery-shenzhen-indian-tbx11k-v1-f9 = "mednet.config.data.montgomery_shenzhen_indian_tbx11k.v1_fold_9" -montgomery-shenzhen-indian-tbx11k-v2 = "mednet.config.data.montgomery_shenzhen_indian_tbx11k.v2_others_vs_atb" -montgomery-shenzhen-indian-tbx11k-v2-f0 = "mednet.config.data.montgomery_shenzhen_indian_tbx11k.v2_fold_0" -montgomery-shenzhen-indian-tbx11k-v2-f1 = "mednet.config.data.montgomery_shenzhen_indian_tbx11k.v2_fold_1" -montgomery-shenzhen-indian-tbx11k-v2-f2 = "mednet.config.data.montgomery_shenzhen_indian_tbx11k.v2_fold_2" -montgomery-shenzhen-indian-tbx11k-v2-f3 = "mednet.config.data.montgomery_shenzhen_indian_tbx11k.v2_fold_3" -montgomery-shenzhen-indian-tbx11k-v2-f4 = "mednet.config.data.montgomery_shenzhen_indian_tbx11k.v2_fold_4" -montgomery-shenzhen-indian-tbx11k-v2-f5 = "mednet.config.data.montgomery_shenzhen_indian_tbx11k.v2_fold_5" -montgomery-shenzhen-indian-tbx11k-v2-f6 = "mednet.config.data.montgomery_shenzhen_indian_tbx11k.v2_fold_6" -montgomery-shenzhen-indian-tbx11k-v2-f7 = "mednet.config.data.montgomery_shenzhen_indian_tbx11k.v2_fold_7" -montgomery-shenzhen-indian-tbx11k-v2-f8 = "mednet.config.data.montgomery_shenzhen_indian_tbx11k.v2_fold_8" -montgomery-shenzhen-indian-tbx11k-v2-f9 = "mednet.config.data.montgomery_shenzhen_indian_tbx11k.v2_fold_9" +montgomery-shenzhen-indian-tbx11k-v1 = "mednet.libs.classification.config.data.montgomery_shenzhen_indian_tbx11k.v1_healthy_vs_atb" +montgomery-shenzhen-indian-tbx11k-v1-f0 = "mednet.libs.classification.config.data.montgomery_shenzhen_indian_tbx11k.v1_fold_0" +montgomery-shenzhen-indian-tbx11k-v1-f1 = "mednet.libs.classification.config.data.montgomery_shenzhen_indian_tbx11k.v1_fold_1" +montgomery-shenzhen-indian-tbx11k-v1-f2 = "mednet.libs.classification.config.data.montgomery_shenzhen_indian_tbx11k.v1_fold_2" +montgomery-shenzhen-indian-tbx11k-v1-f3 = "mednet.libs.classification.config.data.montgomery_shenzhen_indian_tbx11k.v1_fold_3" +montgomery-shenzhen-indian-tbx11k-v1-f4 = "mednet.libs.classification.config.data.montgomery_shenzhen_indian_tbx11k.v1_fold_4" +montgomery-shenzhen-indian-tbx11k-v1-f5 = "mednet.libs.classification.config.data.montgomery_shenzhen_indian_tbx11k.v1_fold_5" +montgomery-shenzhen-indian-tbx11k-v1-f6 = "mednet.libs.classification.config.data.montgomery_shenzhen_indian_tbx11k.v1_fold_6" +montgomery-shenzhen-indian-tbx11k-v1-f7 = "mednet.libs.classification.config.data.montgomery_shenzhen_indian_tbx11k.v1_fold_7" +montgomery-shenzhen-indian-tbx11k-v1-f8 = "mednet.libs.classification.config.data.montgomery_shenzhen_indian_tbx11k.v1_fold_8" +montgomery-shenzhen-indian-tbx11k-v1-f9 = "mednet.libs.classification.config.data.montgomery_shenzhen_indian_tbx11k.v1_fold_9" +montgomery-shenzhen-indian-tbx11k-v2 = "mednet.libs.classification.config.data.montgomery_shenzhen_indian_tbx11k.v2_others_vs_atb" +montgomery-shenzhen-indian-tbx11k-v2-f0 = "mednet.libs.classification.config.data.montgomery_shenzhen_indian_tbx11k.v2_fold_0" +montgomery-shenzhen-indian-tbx11k-v2-f1 = "mednet.libs.classification.config.data.montgomery_shenzhen_indian_tbx11k.v2_fold_1" +montgomery-shenzhen-indian-tbx11k-v2-f2 = "mednet.libs.classification.config.data.montgomery_shenzhen_indian_tbx11k.v2_fold_2" +montgomery-shenzhen-indian-tbx11k-v2-f3 = "mednet.libs.classification.config.data.montgomery_shenzhen_indian_tbx11k.v2_fold_3" +montgomery-shenzhen-indian-tbx11k-v2-f4 = "mednet.libs.classification.config.data.montgomery_shenzhen_indian_tbx11k.v2_fold_4" +montgomery-shenzhen-indian-tbx11k-v2-f5 = "mednet.libs.classification.config.data.montgomery_shenzhen_indian_tbx11k.v2_fold_5" +montgomery-shenzhen-indian-tbx11k-v2-f6 = "mednet.libs.classification.config.data.montgomery_shenzhen_indian_tbx11k.v2_fold_6" +montgomery-shenzhen-indian-tbx11k-v2-f7 = "mednet.libs.classification.config.data.montgomery_shenzhen_indian_tbx11k.v2_fold_7" +montgomery-shenzhen-indian-tbx11k-v2-f8 = "mednet.libs.classification.config.data.montgomery_shenzhen_indian_tbx11k.v2_fold_8" +montgomery-shenzhen-indian-tbx11k-v2-f9 = "mednet.libs.classification.config.data.montgomery_shenzhen_indian_tbx11k.v2_fold_9" # tbpoc dataset (only cross-validation folds) -tbpoc-f0 = "mednet.config.data.tbpoc.fold_0" -tbpoc-f1 = "mednet.config.data.tbpoc.fold_1" -tbpoc-f2 = "mednet.config.data.tbpoc.fold_2" -tbpoc-f3 = "mednet.config.data.tbpoc.fold_3" -tbpoc-f4 = "mednet.config.data.tbpoc.fold_4" -tbpoc-f5 = "mednet.config.data.tbpoc.fold_5" -tbpoc-f6 = "mednet.config.data.tbpoc.fold_6" -tbpoc-f7 = "mednet.config.data.tbpoc.fold_7" -tbpoc-f8 = "mednet.config.data.tbpoc.fold_8" -tbpoc-f9 = "mednet.config.data.tbpoc.fold_9" +tbpoc-f0 = "mednet.libs.classification.config.data.tbpoc.fold_0" +tbpoc-f1 = "mednet.libs.classification.config.data.tbpoc.fold_1" +tbpoc-f2 = "mednet.libs.classification.config.data.tbpoc.fold_2" +tbpoc-f3 = "mednet.libs.classification.config.data.tbpoc.fold_3" +tbpoc-f4 = "mednet.libs.classification.config.data.tbpoc.fold_4" +tbpoc-f5 = "mednet.libs.classification.config.data.tbpoc.fold_5" +tbpoc-f6 = "mednet.libs.classification.config.data.tbpoc.fold_6" +tbpoc-f7 = "mednet.libs.classification.config.data.tbpoc.fold_7" +tbpoc-f8 = "mednet.libs.classification.config.data.tbpoc.fold_8" +tbpoc-f9 = "mednet.libs.classification.config.data.tbpoc.fold_9" # hivtb dataset (only cross-validation folds) -hivtb-f0 = "mednet.config.data.hivtb.fold_0" -hivtb-f1 = "mednet.config.data.hivtb.fold_1" -hivtb-f2 = "mednet.config.data.hivtb.fold_2" -hivtb-f3 = "mednet.config.data.hivtb.fold_3" -hivtb-f4 = "mednet.config.data.hivtb.fold_4" -hivtb-f5 = "mednet.config.data.hivtb.fold_5" -hivtb-f6 = "mednet.config.data.hivtb.fold_6" -hivtb-f7 = "mednet.config.data.hivtb.fold_7" -hivtb-f8 = "mednet.config.data.hivtb.fold_8" -hivtb-f9 = "mednet.config.data.hivtb.fold_9" +hivtb-f0 = "mednet.libs.classification.config.data.hivtb.fold_0" +hivtb-f1 = "mednet.libs.classification.config.data.hivtb.fold_1" +hivtb-f2 = "mednet.libs.classification.config.data.hivtb.fold_2" +hivtb-f3 = "mednet.libs.classification.config.data.hivtb.fold_3" +hivtb-f4 = "mednet.libs.classification.config.data.hivtb.fold_4" +hivtb-f5 = "mednet.libs.classification.config.data.hivtb.fold_5" +hivtb-f6 = "mednet.libs.classification.config.data.hivtb.fold_6" +hivtb-f7 = "mednet.libs.classification.config.data.hivtb.fold_7" +hivtb-f8 = "mednet.libs.classification.config.data.hivtb.fold_8" +hivtb-f9 = "mednet.libs.classification.config.data.hivtb.fold_9" # NIH CXR14 (relabeled), multi-class (14 labels) -nih-cxr14 = "mednet.config.data.nih_cxr14.default" -nih-cxr14-cardiomegaly = "mednet.config.data.nih_cxr14.cardiomegaly" +nih-cxr14 = "mednet.libs.classification.config.data.nih_cxr14.default" +nih-cxr14-cardiomegaly = "mednet.libs.classification.config.data.nih_cxr14.cardiomegaly" # PadChest, multi-class (varied number of labels) -padchest-idiap = "mednet.config.data.padchest.idiap" -padchest-tb-idiap = "mednet.config.data.padchest.tb_idiap" -padchest-no-tb-idiap = "mednet.config.data.padchest.no_tb_idiap" -padchest-cardiomegaly-idiap = "mednet.config.data.padchest.cardiomegaly_idiap" +padchest-idiap = "mednet.libs.classification.config.data.padchest.idiap" +padchest-tb-idiap = "mednet.libs.classification.config.data.padchest.tb_idiap" +padchest-no-tb-idiap = "mednet.libs.classification.config.data.padchest.no_tb_idiap" +padchest-cardiomegaly-idiap = "mednet.libs.classification.config.data.padchest.cardiomegaly_idiap" # NIH CXR14 / PadChest aggregated dataset -nih-cxr14-padchest = "mednet.config.data.nih_cxr14_padchest.idiap" +nih-cxr14-padchest = "mednet.libs.classification.config.data.nih_cxr14_padchest.idiap" # montgomery-shenzhen-indian-padchest aggregated dataset -montgomery-shenzhen-indian-padchest = "mednet.config.data.montgomery_shenzhen_indian_padchest.default" +montgomery-shenzhen-indian-padchest = "mednet.libs.classification.config.data.montgomery_shenzhen_indian_padchest.default" # VISCERAL dataset visceral = "mednet.config.data.visceral.default" diff --git a/src/medbase/__init__.py b/src/mednet/libs/classification/__init__.py similarity index 100% rename from src/medbase/__init__.py rename to src/mednet/libs/classification/__init__.py diff --git a/src/medbase/engine/__init__.py b/src/mednet/libs/classification/config/__init__.py similarity index 100% rename from src/medbase/engine/__init__.py rename to src/mednet/libs/classification/config/__init__.py diff --git a/src/medbase/utils/__init__.py b/src/mednet/libs/classification/config/data/__init__.py similarity index 100% rename from src/medbase/utils/__init__.py rename to src/mednet/libs/classification/config/data/__init__.py diff --git a/src/mednet/__init__.py b/src/mednet/libs/classification/config/data/hivtb/__init__.py similarity index 100% rename from src/mednet/__init__.py rename to src/mednet/libs/classification/config/data/hivtb/__init__.py diff --git a/src/mednet/config/data/hivtb/datamodule.py b/src/mednet/libs/classification/config/data/hivtb/datamodule.py similarity index 92% rename from src/mednet/config/data/hivtb/datamodule.py rename to src/mednet/libs/classification/config/data/hivtb/datamodule.py index 21f773b24f4695da7ac4dab8b7a3bb8a76606f1a..190832504db85bd9e07b1f561a31e0d4841e3dad 100644 --- a/src/mednet/config/data/hivtb/datamodule.py +++ b/src/mednet/libs/classification/config/data/hivtb/datamodule.py @@ -10,14 +10,13 @@ import os import pathlib import PIL.Image +from mednet.libs.common.data.datamodule import CachingDataModule +from mednet.libs.common.data.image_utils import remove_black_borders +from mednet.libs.common.data.split import make_split +from mednet.libs.common.data.typing import Sample +from mednet.libs.common.data.typing import RawDataLoader as _BaseRawDataLoader from torchvision.transforms.functional import to_tensor -from medbase.data.datamodule import CachingDataModule -from medbase.data.image_utils import remove_black_borders -from medbase.data.split import make_split -from medbase.data.typing import RawDataLoader as _BaseRawDataLoader -from medbase.data.typing import Sample - from ....utils.rc import load_rc CONFIGURATION_KEY_DATADIR = "datadir." + (__name__.rsplit(".", 2)[-2]) diff --git a/src/mednet/config/data/hivtb/fold-0.json b/src/mednet/libs/classification/config/data/hivtb/fold-0.json similarity index 100% rename from src/mednet/config/data/hivtb/fold-0.json rename to src/mednet/libs/classification/config/data/hivtb/fold-0.json diff --git a/src/mednet/config/data/hivtb/fold-1.json b/src/mednet/libs/classification/config/data/hivtb/fold-1.json similarity index 100% rename from src/mednet/config/data/hivtb/fold-1.json rename to src/mednet/libs/classification/config/data/hivtb/fold-1.json diff --git a/src/mednet/config/data/hivtb/fold-2.json b/src/mednet/libs/classification/config/data/hivtb/fold-2.json similarity index 100% rename from src/mednet/config/data/hivtb/fold-2.json rename to src/mednet/libs/classification/config/data/hivtb/fold-2.json diff --git a/src/mednet/config/data/hivtb/fold-3.json b/src/mednet/libs/classification/config/data/hivtb/fold-3.json similarity index 100% rename from src/mednet/config/data/hivtb/fold-3.json rename to src/mednet/libs/classification/config/data/hivtb/fold-3.json diff --git a/src/mednet/config/data/hivtb/fold-4.json b/src/mednet/libs/classification/config/data/hivtb/fold-4.json similarity index 100% rename from src/mednet/config/data/hivtb/fold-4.json rename to src/mednet/libs/classification/config/data/hivtb/fold-4.json diff --git a/src/mednet/config/data/hivtb/fold-5.json b/src/mednet/libs/classification/config/data/hivtb/fold-5.json similarity index 100% rename from src/mednet/config/data/hivtb/fold-5.json rename to src/mednet/libs/classification/config/data/hivtb/fold-5.json diff --git a/src/mednet/config/data/hivtb/fold-6.json b/src/mednet/libs/classification/config/data/hivtb/fold-6.json similarity index 100% rename from src/mednet/config/data/hivtb/fold-6.json rename to src/mednet/libs/classification/config/data/hivtb/fold-6.json diff --git a/src/mednet/config/data/hivtb/fold-7.json b/src/mednet/libs/classification/config/data/hivtb/fold-7.json similarity index 100% rename from src/mednet/config/data/hivtb/fold-7.json rename to src/mednet/libs/classification/config/data/hivtb/fold-7.json diff --git a/src/mednet/config/data/hivtb/fold-8.json b/src/mednet/libs/classification/config/data/hivtb/fold-8.json similarity index 100% rename from src/mednet/config/data/hivtb/fold-8.json rename to src/mednet/libs/classification/config/data/hivtb/fold-8.json diff --git a/src/mednet/config/data/hivtb/fold-9.json b/src/mednet/libs/classification/config/data/hivtb/fold-9.json similarity index 100% rename from src/mednet/config/data/hivtb/fold-9.json rename to src/mednet/libs/classification/config/data/hivtb/fold-9.json diff --git a/src/mednet/config/data/hivtb/fold_0.py b/src/mednet/libs/classification/config/data/hivtb/fold_0.py similarity index 60% rename from src/mednet/config/data/hivtb/fold_0.py rename to src/mednet/libs/classification/config/data/hivtb/fold_0.py index fb3a4c7425901e270ab446f28b4aa38151dbd503..1c64db6d37a7d90d77b008dba0e63fbf1a92fe84 100644 --- a/src/mednet/config/data/hivtb/fold_0.py +++ b/src/mednet/libs/classification/config/data/hivtb/fold_0.py @@ -5,9 +5,9 @@ Database reference: [HIV-TB-2019]_ -See :py:class:`mednet.config.data.hivtb.datamodule.DataModule` for technical details. +See :py:class:`mednet.libs.classification.config.data.hivtb.datamodule.DataModule` for technical details. """ -from mednet.config.data.hivtb.datamodule import DataModule +from mednet.libs.classification.config.data.hivtb.datamodule import DataModule datamodule = DataModule("fold-0.json") diff --git a/src/mednet/config/data/hivtb/fold_1.py b/src/mednet/libs/classification/config/data/hivtb/fold_1.py similarity index 60% rename from src/mednet/config/data/hivtb/fold_1.py rename to src/mednet/libs/classification/config/data/hivtb/fold_1.py index 6501367172ccfda1b1fd981c065895cfacd67e95..98401e1e8e5a7e921d4bf53b702a1a33f13cd7d3 100644 --- a/src/mednet/config/data/hivtb/fold_1.py +++ b/src/mednet/libs/classification/config/data/hivtb/fold_1.py @@ -5,9 +5,9 @@ Database reference: [HIV-TB-2019]_ -See :py:class:`mednet.config.data.hivtb.datamodule.DataModule` for technical details. +See :py:class:`mednet.libs.classification.config.data.hivtb.datamodule.DataModule` for technical details. """ -from mednet.config.data.hivtb.datamodule import DataModule +from mednet.libs.classification.config.data.hivtb.datamodule import DataModule datamodule = DataModule("fold-1.json") diff --git a/src/mednet/config/data/hivtb/fold_2.py b/src/mednet/libs/classification/config/data/hivtb/fold_2.py similarity index 60% rename from src/mednet/config/data/hivtb/fold_2.py rename to src/mednet/libs/classification/config/data/hivtb/fold_2.py index 0436ae41b7a9375227e21ebc959d89272e80e584..b977dee9f5c3d3f2b05b3c323577abd607f65c66 100644 --- a/src/mednet/config/data/hivtb/fold_2.py +++ b/src/mednet/libs/classification/config/data/hivtb/fold_2.py @@ -5,9 +5,9 @@ Database reference: [HIV-TB-2019]_ -See :py:class:`mednet.config.data.hivtb.datamodule.DataModule` for technical details. +See :py:class:`mednet.libs.classification.config.data.hivtb.datamodule.DataModule` for technical details. """ -from mednet.config.data.hivtb.datamodule import DataModule +from mednet.libs.classification.config.data.hivtb.datamodule import DataModule datamodule = DataModule("fold-2.json") diff --git a/src/mednet/config/data/hivtb/fold_3.py b/src/mednet/libs/classification/config/data/hivtb/fold_3.py similarity index 60% rename from src/mednet/config/data/hivtb/fold_3.py rename to src/mednet/libs/classification/config/data/hivtb/fold_3.py index b657bb4784e55c32af4062dd08c401b41ee665de..e3ab07912f739b96d1048ec84da5a1aa8718bf78 100644 --- a/src/mednet/config/data/hivtb/fold_3.py +++ b/src/mednet/libs/classification/config/data/hivtb/fold_3.py @@ -5,9 +5,9 @@ Database reference: [HIV-TB-2019]_ -See :py:class:`mednet.config.data.hivtb.datamodule.DataModule` for technical details. +See :py:class:`mednet.libs.classification.config.data.hivtb.datamodule.DataModule` for technical details. """ -from mednet.config.data.hivtb.datamodule import DataModule +from mednet.libs.classification.config.data.hivtb.datamodule import DataModule datamodule = DataModule("fold-3.json") diff --git a/src/mednet/config/data/hivtb/fold_4.py b/src/mednet/libs/classification/config/data/hivtb/fold_4.py similarity index 60% rename from src/mednet/config/data/hivtb/fold_4.py rename to src/mednet/libs/classification/config/data/hivtb/fold_4.py index 9265421823555f4c1453cae8a37403aa0d914e0f..72ce72431532ece277bb627022d09a1769b2c175 100644 --- a/src/mednet/config/data/hivtb/fold_4.py +++ b/src/mednet/libs/classification/config/data/hivtb/fold_4.py @@ -5,9 +5,9 @@ Database reference: [HIV-TB-2019]_ -See :py:class:`mednet.config.data.hivtb.datamodule.DataModule` for technical details. +See :py:class:`mednet.libs.classification.config.data.hivtb.datamodule.DataModule` for technical details. """ -from mednet.config.data.hivtb.datamodule import DataModule +from mednet.libs.classification.config.data.hivtb.datamodule import DataModule datamodule = DataModule("fold-4.json") diff --git a/src/mednet/config/data/hivtb/fold_5.py b/src/mednet/libs/classification/config/data/hivtb/fold_5.py similarity index 60% rename from src/mednet/config/data/hivtb/fold_5.py rename to src/mednet/libs/classification/config/data/hivtb/fold_5.py index 9cce77de6cdab41f9bbf094eb68db3e6dc4b2af1..18ab3a984bb86200c2f368d84d98db25ae6d65ce 100644 --- a/src/mednet/config/data/hivtb/fold_5.py +++ b/src/mednet/libs/classification/config/data/hivtb/fold_5.py @@ -5,9 +5,9 @@ Database reference: [HIV-TB-2019]_ -See :py:class:`mednet.config.data.hivtb.datamodule.DataModule` for technical details. +See :py:class:`mednet.libs.classification.config.data.hivtb.datamodule.DataModule` for technical details. """ -from mednet.config.data.hivtb.datamodule import DataModule +from mednet.libs.classification.config.data.hivtb.datamodule import DataModule datamodule = DataModule("fold-5.json") diff --git a/src/mednet/config/data/hivtb/fold_6.py b/src/mednet/libs/classification/config/data/hivtb/fold_6.py similarity index 60% rename from src/mednet/config/data/hivtb/fold_6.py rename to src/mednet/libs/classification/config/data/hivtb/fold_6.py index b52509a8dfad7f0b3af088f07a20697bd8e4838d..0763f92e5d7621820a0b519ee3885b693016229f 100644 --- a/src/mednet/config/data/hivtb/fold_6.py +++ b/src/mednet/libs/classification/config/data/hivtb/fold_6.py @@ -5,9 +5,9 @@ Database reference: [HIV-TB-2019]_ -See :py:class:`mednet.config.data.hivtb.datamodule.DataModule` for technical details. +See :py:class:`mednet.libs.classification.config.data.hivtb.datamodule.DataModule` for technical details. """ -from mednet.config.data.hivtb.datamodule import DataModule +from mednet.libs.classification.config.data.hivtb.datamodule import DataModule datamodule = DataModule("fold-6.json") diff --git a/src/mednet/config/data/hivtb/fold_7.py b/src/mednet/libs/classification/config/data/hivtb/fold_7.py similarity index 60% rename from src/mednet/config/data/hivtb/fold_7.py rename to src/mednet/libs/classification/config/data/hivtb/fold_7.py index c2af009cf6e93c2b8e4ca24787830a35d2411ca5..4078ef8a13e5d1689920d031f27ddad086308c3c 100644 --- a/src/mednet/config/data/hivtb/fold_7.py +++ b/src/mednet/libs/classification/config/data/hivtb/fold_7.py @@ -5,9 +5,9 @@ Database reference: [HIV-TB-2019]_ -See :py:class:`mednet.config.data.hivtb.datamodule.DataModule` for technical details. +See :py:class:`mednet.libs.classification.config.data.hivtb.datamodule.DataModule` for technical details. """ -from mednet.config.data.hivtb.datamodule import DataModule +from mednet.libs.classification.config.data.hivtb.datamodule import DataModule datamodule = DataModule("fold-7.json") diff --git a/src/mednet/config/data/hivtb/fold_8.py b/src/mednet/libs/classification/config/data/hivtb/fold_8.py similarity index 60% rename from src/mednet/config/data/hivtb/fold_8.py rename to src/mednet/libs/classification/config/data/hivtb/fold_8.py index b76fda84a67b0fbeb90147669526008121bf07b8..8f26c5392636960681eedd5215ae58a3545b9425 100644 --- a/src/mednet/config/data/hivtb/fold_8.py +++ b/src/mednet/libs/classification/config/data/hivtb/fold_8.py @@ -5,9 +5,9 @@ Database reference: [HIV-TB-2019]_ -See :py:class:`mednet.config.data.hivtb.datamodule.DataModule` for technical details. +See :py:class:`mednet.libs.classification.config.data.hivtb.datamodule.DataModule` for technical details. """ -from mednet.config.data.hivtb.datamodule import DataModule +from mednet.libs.classification.config.data.hivtb.datamodule import DataModule datamodule = DataModule("fold-8.json") diff --git a/src/mednet/config/data/hivtb/fold_9.py b/src/mednet/libs/classification/config/data/hivtb/fold_9.py similarity index 60% rename from src/mednet/config/data/hivtb/fold_9.py rename to src/mednet/libs/classification/config/data/hivtb/fold_9.py index c2c92410b7dc5af00dc4bd04d72e88169e1c9383..911590af68506b9ab82feec6e2c69e0f903a69d2 100644 --- a/src/mednet/config/data/hivtb/fold_9.py +++ b/src/mednet/libs/classification/config/data/hivtb/fold_9.py @@ -5,9 +5,9 @@ Database reference: [HIV-TB-2019]_ -See :py:class:`mednet.config.data.hivtb.datamodule.DataModule` for technical details. +See :py:class:`mednet.libs.classification.config.data.hivtb.datamodule.DataModule` for technical details. """ -from mednet.config.data.hivtb.datamodule import DataModule +from mednet.libs.classification.config.data.hivtb.datamodule import DataModule datamodule = DataModule("fold-9.json") diff --git a/src/mednet/config/__init__.py b/src/mednet/libs/classification/config/data/indian/__init__.py similarity index 100% rename from src/mednet/config/__init__.py rename to src/mednet/libs/classification/config/data/indian/__init__.py diff --git a/src/mednet/config/data/indian/datamodule.py b/src/mednet/libs/classification/config/data/indian/datamodule.py similarity index 94% rename from src/mednet/config/data/indian/datamodule.py rename to src/mednet/libs/classification/config/data/indian/datamodule.py index f6825bba1e666abef37afea034aa5b29eb4081ec..6b4f9c77631e00f6a2cb1172b18147151112b0b9 100644 --- a/src/mednet/config/data/indian/datamodule.py +++ b/src/mednet/libs/classification/config/data/indian/datamodule.py @@ -8,8 +8,8 @@ Database reference: [INDIAN-2013]_ import pathlib -from medbase.data.datamodule import CachingDataModule -from medbase.data.split import make_split +from mednet.libs.common.data.datamodule import CachingDataModule +from mednet.libs.common.data.split import make_split from ....config.data.shenzhen.datamodule import RawDataLoader diff --git a/src/mednet/config/data/indian/default.json b/src/mednet/libs/classification/config/data/indian/default.json similarity index 100% rename from src/mednet/config/data/indian/default.json rename to src/mednet/libs/classification/config/data/indian/default.json diff --git a/src/mednet/config/data/indian/default.py b/src/mednet/libs/classification/config/data/indian/default.py similarity index 60% rename from src/mednet/config/data/indian/default.py rename to src/mednet/libs/classification/config/data/indian/default.py index 9c402b8e2df213dcb9087e7048b58accef9b7827..4633effd2e81aa84100c5f6f42c73d24a1e10920 100644 --- a/src/mednet/config/data/indian/default.py +++ b/src/mednet/libs/classification/config/data/indian/default.py @@ -5,9 +5,9 @@ Database reference: [INDIAN-2013]_ -See :py:class:`mednet.config.data.indian.datamodule.DataModule` for technical details. +See :py:class:`mednet.libs.classification.config.data.indian.datamodule.DataModule` for technical details. """ -from mednet.config.data.indian.datamodule import DataModule +from mednet.libs.classification.config.data.indian.datamodule import DataModule datamodule = DataModule("default.json") diff --git a/src/mednet/config/data/indian/fold-0.json b/src/mednet/libs/classification/config/data/indian/fold-0.json similarity index 100% rename from src/mednet/config/data/indian/fold-0.json rename to src/mednet/libs/classification/config/data/indian/fold-0.json diff --git a/src/mednet/config/data/indian/fold-1.json b/src/mednet/libs/classification/config/data/indian/fold-1.json similarity index 100% rename from src/mednet/config/data/indian/fold-1.json rename to src/mednet/libs/classification/config/data/indian/fold-1.json diff --git a/src/mednet/config/data/indian/fold-2.json b/src/mednet/libs/classification/config/data/indian/fold-2.json similarity index 100% rename from src/mednet/config/data/indian/fold-2.json rename to src/mednet/libs/classification/config/data/indian/fold-2.json diff --git a/src/mednet/config/data/indian/fold-3.json b/src/mednet/libs/classification/config/data/indian/fold-3.json similarity index 100% rename from src/mednet/config/data/indian/fold-3.json rename to src/mednet/libs/classification/config/data/indian/fold-3.json diff --git a/src/mednet/config/data/indian/fold-4.json b/src/mednet/libs/classification/config/data/indian/fold-4.json similarity index 100% rename from src/mednet/config/data/indian/fold-4.json rename to src/mednet/libs/classification/config/data/indian/fold-4.json diff --git a/src/mednet/config/data/indian/fold-5.json b/src/mednet/libs/classification/config/data/indian/fold-5.json similarity index 100% rename from src/mednet/config/data/indian/fold-5.json rename to src/mednet/libs/classification/config/data/indian/fold-5.json diff --git a/src/mednet/config/data/indian/fold-6.json b/src/mednet/libs/classification/config/data/indian/fold-6.json similarity index 100% rename from src/mednet/config/data/indian/fold-6.json rename to src/mednet/libs/classification/config/data/indian/fold-6.json diff --git a/src/mednet/config/data/indian/fold-7.json b/src/mednet/libs/classification/config/data/indian/fold-7.json similarity index 100% rename from src/mednet/config/data/indian/fold-7.json rename to src/mednet/libs/classification/config/data/indian/fold-7.json diff --git a/src/mednet/config/data/indian/fold-8.json b/src/mednet/libs/classification/config/data/indian/fold-8.json similarity index 100% rename from src/mednet/config/data/indian/fold-8.json rename to src/mednet/libs/classification/config/data/indian/fold-8.json diff --git a/src/mednet/config/data/indian/fold-9.json b/src/mednet/libs/classification/config/data/indian/fold-9.json similarity index 100% rename from src/mednet/config/data/indian/fold-9.json rename to src/mednet/libs/classification/config/data/indian/fold-9.json diff --git a/src/mednet/config/data/indian/fold_0.py b/src/mednet/libs/classification/config/data/indian/fold_0.py similarity index 61% rename from src/mednet/config/data/indian/fold_0.py rename to src/mednet/libs/classification/config/data/indian/fold_0.py index 3f6d60e77a8c6e88dce67dc8485121780b182dd6..b476423f2de9cbb7f5c2ff1fc88009c0ece7e3cb 100644 --- a/src/mednet/config/data/indian/fold_0.py +++ b/src/mednet/libs/classification/config/data/indian/fold_0.py @@ -6,9 +6,9 @@ Database reference: [INDIAN-2013]_ -See :py:class:`mednet.config.data.indian.datamodule.DataModule` for technical details. +See :py:class:`mednet.libs.classification.config.data.indian.datamodule.DataModule` for technical details. """ -from mednet.config.data.indian.datamodule import DataModule +from mednet.libs.classification.config.data.indian.datamodule import DataModule datamodule = DataModule("fold-0.json") diff --git a/src/mednet/config/data/indian/fold_1.py b/src/mednet/libs/classification/config/data/indian/fold_1.py similarity index 61% rename from src/mednet/config/data/indian/fold_1.py rename to src/mednet/libs/classification/config/data/indian/fold_1.py index 7c7548e2e954bf057ada610dd8bf0aa5b1d041ac..525609347ce45a4904f1d993208c1b1b418c72f6 100644 --- a/src/mednet/config/data/indian/fold_1.py +++ b/src/mednet/libs/classification/config/data/indian/fold_1.py @@ -6,9 +6,9 @@ fold 1). Database reference: [INDIAN-2013]_ -See :py:class:`mednet.config.data.indian.datamodule.DataModule` for technical details. +See :py:class:`mednet.libs.classification.config.data.indian.datamodule.DataModule` for technical details. """ -from mednet.config.data.indian.datamodule import DataModule +from mednet.libs.classification.config.data.indian.datamodule import DataModule datamodule = DataModule("fold-1.json") diff --git a/src/mednet/config/data/indian/fold_2.py b/src/mednet/libs/classification/config/data/indian/fold_2.py similarity index 61% rename from src/mednet/config/data/indian/fold_2.py rename to src/mednet/libs/classification/config/data/indian/fold_2.py index b849a5183fd3fb2154b035aa85ac14130ccb559f..f9857d821232a3d36e9566939048ea7b6b07aab7 100644 --- a/src/mednet/config/data/indian/fold_2.py +++ b/src/mednet/libs/classification/config/data/indian/fold_2.py @@ -6,9 +6,9 @@ fold 2). Database reference: [INDIAN-2013]_ -See :py:class:`mednet.config.data.indian.datamodule.DataModule` for technical details. +See :py:class:`mednet.libs.classification.config.data.indian.datamodule.DataModule` for technical details. """ -from mednet.config.data.indian.datamodule import DataModule +from mednet.libs.classification.config.data.indian.datamodule import DataModule datamodule = DataModule("fold-2.json") diff --git a/src/mednet/config/data/indian/fold_3.py b/src/mednet/libs/classification/config/data/indian/fold_3.py similarity index 61% rename from src/mednet/config/data/indian/fold_3.py rename to src/mednet/libs/classification/config/data/indian/fold_3.py index c992855d771761544f4cc73fcf3e6d8fd1787a2b..fc3ca3aa31dea54e39df20bb4794ad5aa856ea61 100644 --- a/src/mednet/config/data/indian/fold_3.py +++ b/src/mednet/libs/classification/config/data/indian/fold_3.py @@ -6,9 +6,9 @@ fold 3). Database reference: [INDIAN-2013]_ -See :py:class:`mednet.config.data.indian.datamodule.DataModule` for technical details. +See :py:class:`mednet.libs.classification.config.data.indian.datamodule.DataModule` for technical details. """ -from mednet.config.data.indian.datamodule import DataModule +from mednet.libs.classification.config.data.indian.datamodule import DataModule datamodule = DataModule("fold-3.json") diff --git a/src/mednet/config/data/indian/fold_4.py b/src/mednet/libs/classification/config/data/indian/fold_4.py similarity index 61% rename from src/mednet/config/data/indian/fold_4.py rename to src/mednet/libs/classification/config/data/indian/fold_4.py index 8385f0fea7ed608e41ab2c99b4cfe99200894823..b42e140c0d7faaeff50374ff96393b6f4bd2402f 100644 --- a/src/mednet/config/data/indian/fold_4.py +++ b/src/mednet/libs/classification/config/data/indian/fold_4.py @@ -6,9 +6,9 @@ fold 4). Database reference: [INDIAN-2013]_ -See :py:class:`mednet.config.data.indian.datamodule.DataModule` for technical details. +See :py:class:`mednet.libs.classification.config.data.indian.datamodule.DataModule` for technical details. """ -from mednet.config.data.indian.datamodule import DataModule +from mednet.libs.classification.config.data.indian.datamodule import DataModule datamodule = DataModule("fold-4.json") diff --git a/src/mednet/config/data/indian/fold_5.py b/src/mednet/libs/classification/config/data/indian/fold_5.py similarity index 61% rename from src/mednet/config/data/indian/fold_5.py rename to src/mednet/libs/classification/config/data/indian/fold_5.py index 7ee271dce50bc444df7a1ca16ad957d087f2d199..c2bbc56a0a37f70e97b7cbf2e7813a0d04c41d0b 100644 --- a/src/mednet/config/data/indian/fold_5.py +++ b/src/mednet/libs/classification/config/data/indian/fold_5.py @@ -6,9 +6,9 @@ fold 5). Database reference: [INDIAN-2013]_ -See :py:class:`mednet.config.data.indian.datamodule.DataModule` for technical details. +See :py:class:`mednet.libs.classification.config.data.indian.datamodule.DataModule` for technical details. """ -from mednet.config.data.indian.datamodule import DataModule +from mednet.libs.classification.config.data.indian.datamodule import DataModule datamodule = DataModule("fold-5.json") diff --git a/src/mednet/config/data/indian/fold_6.py b/src/mednet/libs/classification/config/data/indian/fold_6.py similarity index 61% rename from src/mednet/config/data/indian/fold_6.py rename to src/mednet/libs/classification/config/data/indian/fold_6.py index 9d5c0b94a0a2c415f0f1a949977f64a7cc00efff..9bb255b60da5e69597157e9cde8e3a66b07fb939 100644 --- a/src/mednet/config/data/indian/fold_6.py +++ b/src/mednet/libs/classification/config/data/indian/fold_6.py @@ -6,9 +6,9 @@ fold 6). Database reference: [INDIAN-2013]_ -See :py:class:`mednet.config.data.indian.datamodule.DataModule` for technical details. +See :py:class:`mednet.libs.classification.config.data.indian.datamodule.DataModule` for technical details. """ -from mednet.config.data.indian.datamodule import DataModule +from mednet.libs.classification.config.data.indian.datamodule import DataModule datamodule = DataModule("fold-6.json") diff --git a/src/mednet/config/data/indian/fold_7.py b/src/mednet/libs/classification/config/data/indian/fold_7.py similarity index 61% rename from src/mednet/config/data/indian/fold_7.py rename to src/mednet/libs/classification/config/data/indian/fold_7.py index 912fd422aa8ba2db8cedc6e0733e5e2a3f4bf462..35cd347782381be2ba15cb73d6c957f6ac1ca44b 100644 --- a/src/mednet/config/data/indian/fold_7.py +++ b/src/mednet/libs/classification/config/data/indian/fold_7.py @@ -6,9 +6,9 @@ fold 7). Database reference: [INDIAN-2013]_ -See :py:class:`mednet.config.data.indian.datamodule.DataModule` for technical details. +See :py:class:`mednet.libs.classification.config.data.indian.datamodule.DataModule` for technical details. """ -from mednet.config.data.indian.datamodule import DataModule +from mednet.libs.classification.config.data.indian.datamodule import DataModule datamodule = DataModule("fold-7.json") diff --git a/src/mednet/config/data/indian/fold_8.py b/src/mednet/libs/classification/config/data/indian/fold_8.py similarity index 61% rename from src/mednet/config/data/indian/fold_8.py rename to src/mednet/libs/classification/config/data/indian/fold_8.py index b01e5426772e1c3e27eb7cc46abec2686994992b..df089e034d5cc32813222a430593711d216deae6 100644 --- a/src/mednet/config/data/indian/fold_8.py +++ b/src/mednet/libs/classification/config/data/indian/fold_8.py @@ -6,9 +6,9 @@ fold 8). Database reference: [INDIAN-2013]_ -See :py:class:`mednet.config.data.indian.datamodule.DataModule` for technical details. +See :py:class:`mednet.libs.classification.config.data.indian.datamodule.DataModule` for technical details. """ -from mednet.config.data.indian.datamodule import DataModule +from mednet.libs.classification.config.data.indian.datamodule import DataModule datamodule = DataModule("fold-8.json") diff --git a/src/mednet/config/data/indian/fold_9.py b/src/mednet/libs/classification/config/data/indian/fold_9.py similarity index 61% rename from src/mednet/config/data/indian/fold_9.py rename to src/mednet/libs/classification/config/data/indian/fold_9.py index 31510e329dc446440b4131f3f45d8217eb8f5443..b0d0d5ab05480e0c5a94a7daf09d192c317d830c 100644 --- a/src/mednet/config/data/indian/fold_9.py +++ b/src/mednet/libs/classification/config/data/indian/fold_9.py @@ -6,9 +6,9 @@ fold 9). Database reference: [INDIAN-2013]_ -See :py:class:`mednet.config.data.indian.datamodule.DataModule` for technical details. +See :py:class:`mednet.libs.classification.config.data.indian.datamodule.DataModule` for technical details. """ -from mednet.config.data.indian.datamodule import DataModule +from mednet.libs.classification.config.data.indian.datamodule import DataModule datamodule = DataModule("fold-9.json") diff --git a/src/mednet/config/data/__init__.py b/src/mednet/libs/classification/config/data/montgomery/__init__.py similarity index 100% rename from src/mednet/config/data/__init__.py rename to src/mednet/libs/classification/config/data/montgomery/__init__.py diff --git a/src/mednet/config/data/montgomery/datamodule.py b/src/mednet/libs/classification/config/data/montgomery/datamodule.py similarity index 93% rename from src/mednet/config/data/montgomery/datamodule.py rename to src/mednet/libs/classification/config/data/montgomery/datamodule.py index 64b2f7ff2ec0d1b564e9439e23ede7411ce9aab0..ecdd12a8bc351e6c1ca4299a48a44444aaac3ec4 100644 --- a/src/mednet/config/data/montgomery/datamodule.py +++ b/src/mednet/libs/classification/config/data/montgomery/datamodule.py @@ -10,14 +10,13 @@ import os import pathlib import PIL.Image +from mednet.libs.common.data.datamodule import CachingDataModule +from mednet.libs.common.data.image_utils import remove_black_borders +from mednet.libs.common.data.split import make_split +from mednet.libs.common.data.typing import Sample +from mednet.libs.common.data.typing import RawDataLoader as _BaseRawDataLoader from torchvision.transforms.functional import to_tensor -from medbase.data.datamodule import CachingDataModule -from medbase.data.image_utils import remove_black_borders -from medbase.data.split import make_split -from medbase.data.typing import Sample -from medbase.data.typing import RawDataLoader as _BaseRawDataLoader - from ....utils.rc import load_rc CONFIGURATION_KEY_DATADIR = "datadir." + (__name__.rsplit(".", 2)[-2]) diff --git a/src/mednet/config/data/montgomery/default.json b/src/mednet/libs/classification/config/data/montgomery/default.json similarity index 100% rename from src/mednet/config/data/montgomery/default.json rename to src/mednet/libs/classification/config/data/montgomery/default.json diff --git a/src/mednet/config/data/montgomery/default.py b/src/mednet/libs/classification/config/data/montgomery/default.py similarity index 61% rename from src/mednet/config/data/montgomery/default.py rename to src/mednet/libs/classification/config/data/montgomery/default.py index afb62d5db67dd2bf402fb052a884284106cc3ec1..81bbe384ac9832afad544d5dcb9988b8ab48ad79 100644 --- a/src/mednet/config/data/montgomery/default.py +++ b/src/mednet/libs/classification/config/data/montgomery/default.py @@ -5,10 +5,12 @@ Database reference: [MONTGOMERY-SHENZHEN-2014]_ -See :py:class:`mednet.config.data.montgomery.datamodule.DataModule` for +See :py:class:`mednet.libs.classification.config.data.montgomery.datamodule.DataModule` for technical details. """ -from mednet.config.data.montgomery.datamodule import DataModule +from mednet.libs.classification.config.data.montgomery.datamodule import ( + DataModule, +) datamodule = DataModule("default.json") diff --git a/src/mednet/config/data/montgomery/fold-0.json b/src/mednet/libs/classification/config/data/montgomery/fold-0.json similarity index 100% rename from src/mednet/config/data/montgomery/fold-0.json rename to src/mednet/libs/classification/config/data/montgomery/fold-0.json diff --git a/src/mednet/config/data/montgomery/fold-1.json b/src/mednet/libs/classification/config/data/montgomery/fold-1.json similarity index 100% rename from src/mednet/config/data/montgomery/fold-1.json rename to src/mednet/libs/classification/config/data/montgomery/fold-1.json diff --git a/src/mednet/config/data/montgomery/fold-2.json b/src/mednet/libs/classification/config/data/montgomery/fold-2.json similarity index 100% rename from src/mednet/config/data/montgomery/fold-2.json rename to src/mednet/libs/classification/config/data/montgomery/fold-2.json diff --git a/src/mednet/config/data/montgomery/fold-3.json b/src/mednet/libs/classification/config/data/montgomery/fold-3.json similarity index 100% rename from src/mednet/config/data/montgomery/fold-3.json rename to src/mednet/libs/classification/config/data/montgomery/fold-3.json diff --git a/src/mednet/config/data/montgomery/fold-4.json b/src/mednet/libs/classification/config/data/montgomery/fold-4.json similarity index 100% rename from src/mednet/config/data/montgomery/fold-4.json rename to src/mednet/libs/classification/config/data/montgomery/fold-4.json diff --git a/src/mednet/config/data/montgomery/fold-5.json b/src/mednet/libs/classification/config/data/montgomery/fold-5.json similarity index 100% rename from src/mednet/config/data/montgomery/fold-5.json rename to src/mednet/libs/classification/config/data/montgomery/fold-5.json diff --git a/src/mednet/config/data/montgomery/fold-6.json b/src/mednet/libs/classification/config/data/montgomery/fold-6.json similarity index 100% rename from src/mednet/config/data/montgomery/fold-6.json rename to src/mednet/libs/classification/config/data/montgomery/fold-6.json diff --git a/src/mednet/config/data/montgomery/fold-7.json b/src/mednet/libs/classification/config/data/montgomery/fold-7.json similarity index 100% rename from src/mednet/config/data/montgomery/fold-7.json rename to src/mednet/libs/classification/config/data/montgomery/fold-7.json diff --git a/src/mednet/config/data/montgomery/fold-8.json b/src/mednet/libs/classification/config/data/montgomery/fold-8.json similarity index 100% rename from src/mednet/config/data/montgomery/fold-8.json rename to src/mednet/libs/classification/config/data/montgomery/fold-8.json diff --git a/src/mednet/config/data/montgomery/fold-9.json b/src/mednet/libs/classification/config/data/montgomery/fold-9.json similarity index 100% rename from src/mednet/config/data/montgomery/fold-9.json rename to src/mednet/libs/classification/config/data/montgomery/fold-9.json diff --git a/src/mednet/config/data/montgomery/fold_0.py b/src/mednet/libs/classification/config/data/montgomery/fold_0.py similarity index 63% rename from src/mednet/config/data/montgomery/fold_0.py rename to src/mednet/libs/classification/config/data/montgomery/fold_0.py index 02597fad834853a69612c89096ee66a2de47378b..97f677e63ab8829499b4556c96f918d2ab3baf88 100644 --- a/src/mednet/config/data/montgomery/fold_0.py +++ b/src/mednet/libs/classification/config/data/montgomery/fold_0.py @@ -5,10 +5,12 @@ Database reference: [MONTGOMERY-SHENZHEN-2014]_ -See :py:class:`mednet.config.data.montgomery.datamodule.DataModule` for +See :py:class:`mednet.libs.classification.config.data.montgomery.datamodule.DataModule` for technical details. """ -from mednet.config.data.montgomery.datamodule import DataModule +from mednet.libs.classification.config.data.montgomery.datamodule import ( + DataModule, +) datamodule = DataModule("fold-0.json") diff --git a/src/mednet/config/data/montgomery/fold_1.py b/src/mednet/libs/classification/config/data/montgomery/fold_1.py similarity index 63% rename from src/mednet/config/data/montgomery/fold_1.py rename to src/mednet/libs/classification/config/data/montgomery/fold_1.py index 5aff117fafeba1aab3508e8fcec94408ef19ac68..383d0cde60284a8a4809941e22dbfe151c868671 100644 --- a/src/mednet/config/data/montgomery/fold_1.py +++ b/src/mednet/libs/classification/config/data/montgomery/fold_1.py @@ -5,10 +5,12 @@ Database reference: [MONTGOMERY-SHENZHEN-2014]_ -See :py:class:`mednet.config.data.montgomery.datamodule.DataModule` for +See :py:class:`mednet.libs.classification.config.data.montgomery.datamodule.DataModule` for technical details. """ -from mednet.config.data.montgomery.datamodule import DataModule +from mednet.libs.classification.config.data.montgomery.datamodule import ( + DataModule, +) datamodule = DataModule("fold-1.json") diff --git a/src/mednet/config/data/montgomery/fold_2.py b/src/mednet/libs/classification/config/data/montgomery/fold_2.py similarity index 63% rename from src/mednet/config/data/montgomery/fold_2.py rename to src/mednet/libs/classification/config/data/montgomery/fold_2.py index 879562db0df7f165e66a65eaffcd0c825ccb678d..5ee16a95a27dbb816005452b417402836faa0ae9 100644 --- a/src/mednet/config/data/montgomery/fold_2.py +++ b/src/mednet/libs/classification/config/data/montgomery/fold_2.py @@ -5,10 +5,12 @@ Database reference: [MONTGOMERY-SHENZHEN-2014]_ -See :py:class:`mednet.config.data.montgomery.datamodule.DataModule` for +See :py:class:`mednet.libs.classification.config.data.montgomery.datamodule.DataModule` for technical details. """ -from mednet.config.data.montgomery.datamodule import DataModule +from mednet.libs.classification.config.data.montgomery.datamodule import ( + DataModule, +) datamodule = DataModule("fold-2.json") diff --git a/src/mednet/config/data/montgomery/fold_3.py b/src/mednet/libs/classification/config/data/montgomery/fold_3.py similarity index 63% rename from src/mednet/config/data/montgomery/fold_3.py rename to src/mednet/libs/classification/config/data/montgomery/fold_3.py index 1e8a31e002cbda5a722e80143045b569f51ee327..9fb4a68e4537950b6f0174a3de49c5514fc1ee5e 100644 --- a/src/mednet/config/data/montgomery/fold_3.py +++ b/src/mednet/libs/classification/config/data/montgomery/fold_3.py @@ -5,10 +5,12 @@ Database reference: [MONTGOMERY-SHENZHEN-2014]_ -See :py:class:`mednet.config.data.montgomery.datamodule.DataModule` for +See :py:class:`mednet.libs.classification.config.data.montgomery.datamodule.DataModule` for technical details. """ -from mednet.config.data.montgomery.datamodule import DataModule +from mednet.libs.classification.config.data.montgomery.datamodule import ( + DataModule, +) datamodule = DataModule("fold-3.json") diff --git a/src/mednet/config/data/montgomery/fold_4.py b/src/mednet/libs/classification/config/data/montgomery/fold_4.py similarity index 63% rename from src/mednet/config/data/montgomery/fold_4.py rename to src/mednet/libs/classification/config/data/montgomery/fold_4.py index eb396a7a2a44aae2cc8fb21dd496ff9f1346461a..050b2986a9b5662182399652ea7817a2013b67a0 100644 --- a/src/mednet/config/data/montgomery/fold_4.py +++ b/src/mednet/libs/classification/config/data/montgomery/fold_4.py @@ -5,10 +5,12 @@ Database reference: [MONTGOMERY-SHENZHEN-2014]_ -See :py:class:`mednet.config.data.montgomery.datamodule.DataModule` for +See :py:class:`mednet.libs.classification.config.data.montgomery.datamodule.DataModule` for technical details. """ -from mednet.config.data.montgomery.datamodule import DataModule +from mednet.libs.classification.config.data.montgomery.datamodule import ( + DataModule, +) datamodule = DataModule("fold-4.json") diff --git a/src/mednet/config/data/montgomery/fold_5.py b/src/mednet/libs/classification/config/data/montgomery/fold_5.py similarity index 63% rename from src/mednet/config/data/montgomery/fold_5.py rename to src/mednet/libs/classification/config/data/montgomery/fold_5.py index b3620674900c81634d5d17c577dbe240cc2b8729..fddac647ac95dde970bfeff29b36488d1b2a6acb 100644 --- a/src/mednet/config/data/montgomery/fold_5.py +++ b/src/mednet/libs/classification/config/data/montgomery/fold_5.py @@ -5,10 +5,12 @@ Database reference: [MONTGOMERY-SHENZHEN-2014]_ -See :py:class:`mednet.config.data.montgomery.datamodule.DataModule` for +See :py:class:`mednet.libs.classification.config.data.montgomery.datamodule.DataModule` for technical details. """ -from mednet.config.data.montgomery.datamodule import DataModule +from mednet.libs.classification.config.data.montgomery.datamodule import ( + DataModule, +) datamodule = DataModule("fold-5.json") diff --git a/src/mednet/config/data/montgomery/fold_6.py b/src/mednet/libs/classification/config/data/montgomery/fold_6.py similarity index 63% rename from src/mednet/config/data/montgomery/fold_6.py rename to src/mednet/libs/classification/config/data/montgomery/fold_6.py index 298fc9c5125e45453e1cda5c9637283a3c3a575f..5c8a72a4bc01771804785c712b2af33b3f5dbfa1 100644 --- a/src/mednet/config/data/montgomery/fold_6.py +++ b/src/mednet/libs/classification/config/data/montgomery/fold_6.py @@ -5,10 +5,12 @@ Database reference: [MONTGOMERY-SHENZHEN-2014]_ -See :py:class:`mednet.config.data.montgomery.datamodule.DataModule` for +See :py:class:`mednet.libs.classification.config.data.montgomery.datamodule.DataModule` for technical details. """ -from mednet.config.data.montgomery.datamodule import DataModule +from mednet.libs.classification.config.data.montgomery.datamodule import ( + DataModule, +) datamodule = DataModule("fold-6.json") diff --git a/src/mednet/config/data/montgomery/fold_7.py b/src/mednet/libs/classification/config/data/montgomery/fold_7.py similarity index 63% rename from src/mednet/config/data/montgomery/fold_7.py rename to src/mednet/libs/classification/config/data/montgomery/fold_7.py index 93ca3c00c8bdceed09bc911c8451873fcec2e56f..123b1afa56028857cf1f700c4444621f87a96b9d 100644 --- a/src/mednet/config/data/montgomery/fold_7.py +++ b/src/mednet/libs/classification/config/data/montgomery/fold_7.py @@ -5,10 +5,12 @@ Database reference: [MONTGOMERY-SHENZHEN-2014]_ -See :py:class:`mednet.config.data.montgomery.datamodule.DataModule` for +See :py:class:`mednet.libs.classification.config.data.montgomery.datamodule.DataModule` for technical details. """ -from mednet.config.data.montgomery.datamodule import DataModule +from mednet.libs.classification.config.data.montgomery.datamodule import ( + DataModule, +) datamodule = DataModule("fold-7.json") diff --git a/src/mednet/config/data/montgomery/fold_8.py b/src/mednet/libs/classification/config/data/montgomery/fold_8.py similarity index 63% rename from src/mednet/config/data/montgomery/fold_8.py rename to src/mednet/libs/classification/config/data/montgomery/fold_8.py index 05b2b1d14e1c322e4ae333d9bca984bbe425f33d..53b9999ef64050fc624c3f6249011e09e59f65b1 100644 --- a/src/mednet/config/data/montgomery/fold_8.py +++ b/src/mednet/libs/classification/config/data/montgomery/fold_8.py @@ -5,10 +5,12 @@ Database reference: [MONTGOMERY-SHENZHEN-2014]_ -See :py:class:`mednet.config.data.montgomery.datamodule.DataModule` for +See :py:class:`mednet.libs.classification.config.data.montgomery.datamodule.DataModule` for technical details. """ -from mednet.config.data.montgomery.datamodule import DataModule +from mednet.libs.classification.config.data.montgomery.datamodule import ( + DataModule, +) datamodule = DataModule("fold-8.json") diff --git a/src/mednet/config/data/montgomery/fold_9.py b/src/mednet/libs/classification/config/data/montgomery/fold_9.py similarity index 63% rename from src/mednet/config/data/montgomery/fold_9.py rename to src/mednet/libs/classification/config/data/montgomery/fold_9.py index ac6539d960584394e298fb12013aff3827e2b2a2..b09a83ed4ed3a5cc1206471ef1013f5b9257b4da 100644 --- a/src/mednet/config/data/montgomery/fold_9.py +++ b/src/mednet/libs/classification/config/data/montgomery/fold_9.py @@ -5,10 +5,12 @@ Database reference: [MONTGOMERY-SHENZHEN-2014]_ -See :py:class:`mednet.config.data.montgomery.datamodule.DataModule` for +See :py:class:`mednet.libs.classification.config.data.montgomery.datamodule.DataModule` for technical details. """ -from mednet.config.data.montgomery.datamodule import DataModule +from mednet.libs.classification.config.data.montgomery.datamodule import ( + DataModule, +) datamodule = DataModule("fold-9.json") diff --git a/src/mednet/config/data/hivtb/__init__.py b/src/mednet/libs/classification/config/data/montgomery_shenzhen/__init__.py similarity index 100% rename from src/mednet/config/data/hivtb/__init__.py rename to src/mednet/libs/classification/config/data/montgomery_shenzhen/__init__.py diff --git a/src/mednet/config/data/montgomery_shenzhen/datamodule.py b/src/mednet/libs/classification/config/data/montgomery_shenzhen/datamodule.py similarity index 93% rename from src/mednet/config/data/montgomery_shenzhen/datamodule.py rename to src/mednet/libs/classification/config/data/montgomery_shenzhen/datamodule.py index 16dfec25d7f87606a837cdc8b79a944aa3b26b7d..f3bf981423df05cf61b80fcd0382fa6fca05ad46 100644 --- a/src/mednet/config/data/montgomery_shenzhen/datamodule.py +++ b/src/mednet/libs/classification/config/data/montgomery_shenzhen/datamodule.py @@ -5,8 +5,8 @@ import pathlib -from medbase.data.datamodule import ConcatDataModule -from medbase.data.split import make_split +from mednet.libs.common.data.datamodule import ConcatDataModule +from mednet.libs.common.data.split import make_split from ..montgomery.datamodule import RawDataLoader as MontgomeryLoader from ..shenzhen.datamodule import RawDataLoader as ShenzhenLoader diff --git a/src/mednet/config/data/montgomery_shenzhen/default.py b/src/mednet/libs/classification/config/data/montgomery_shenzhen/default.py similarity index 77% rename from src/mednet/config/data/montgomery_shenzhen/default.py rename to src/mednet/libs/classification/config/data/montgomery_shenzhen/default.py index 24dcc4b3b21190f86e04288caec1575bebdfd11d..bfa3b4fa99e21a283028e6297e891b8969d29543 100644 --- a/src/mednet/config/data/montgomery_shenzhen/default.py +++ b/src/mednet/libs/classification/config/data/montgomery_shenzhen/default.py @@ -7,6 +7,8 @@ split). See :py:class:`.montgomery_shenzhen.datamodule.DataModule` for technical details. """ -from mednet.config.data.montgomery_shenzhen.datamodule import DataModule +from mednet.libs.classification.config.data.montgomery_shenzhen.datamodule import ( + DataModule, +) datamodule = DataModule("default.json") diff --git a/src/mednet/config/data/montgomery_shenzhen/fold_0.py b/src/mednet/libs/classification/config/data/montgomery_shenzhen/fold_0.py similarity index 77% rename from src/mednet/config/data/montgomery_shenzhen/fold_0.py rename to src/mednet/libs/classification/config/data/montgomery_shenzhen/fold_0.py index 8d3191561980e3b31d809061257ceacf757cca9e..645d2c57f71a80f092c2e69d80054f5e1c645dd3 100644 --- a/src/mednet/config/data/montgomery_shenzhen/fold_0.py +++ b/src/mednet/libs/classification/config/data/montgomery_shenzhen/fold_0.py @@ -7,6 +7,8 @@ validation fold 0). See :py:class:`.montgomery_shenzhen.datamodule.DataModule` for technical details. """ -from mednet.config.data.montgomery_shenzhen.datamodule import DataModule +from mednet.libs.classification.config.data.montgomery_shenzhen.datamodule import ( + DataModule, +) datamodule = DataModule("fold-0.json") diff --git a/src/mednet/config/data/montgomery_shenzhen/fold_1.py b/src/mednet/libs/classification/config/data/montgomery_shenzhen/fold_1.py similarity index 77% rename from src/mednet/config/data/montgomery_shenzhen/fold_1.py rename to src/mednet/libs/classification/config/data/montgomery_shenzhen/fold_1.py index a9095a0db8a69f056576d57d89f2fcddaf06b9ab..9f05c71356e9032081e480b980fbbc4d5c023d43 100644 --- a/src/mednet/config/data/montgomery_shenzhen/fold_1.py +++ b/src/mednet/libs/classification/config/data/montgomery_shenzhen/fold_1.py @@ -7,6 +7,8 @@ validation fold 1). See :py:class:`.montgomery_shenzhen.datamodule.DataModule` for technical details. """ -from mednet.config.data.montgomery_shenzhen.datamodule import DataModule +from mednet.libs.classification.config.data.montgomery_shenzhen.datamodule import ( + DataModule, +) datamodule = DataModule("fold-1.json") diff --git a/src/mednet/config/data/montgomery_shenzhen/fold_2.py b/src/mednet/libs/classification/config/data/montgomery_shenzhen/fold_2.py similarity index 77% rename from src/mednet/config/data/montgomery_shenzhen/fold_2.py rename to src/mednet/libs/classification/config/data/montgomery_shenzhen/fold_2.py index 79203be407919e4485836981e7e34b546003630a..16e3ef9f1fd3907e95d9c8c7ea354d530c40d34e 100644 --- a/src/mednet/config/data/montgomery_shenzhen/fold_2.py +++ b/src/mednet/libs/classification/config/data/montgomery_shenzhen/fold_2.py @@ -7,6 +7,8 @@ validation fold 2). See :py:class:`.montgomery_shenzhen.datamodule.DataModule` for technical details. """ -from mednet.config.data.montgomery_shenzhen.datamodule import DataModule +from mednet.libs.classification.config.data.montgomery_shenzhen.datamodule import ( + DataModule, +) datamodule = DataModule("fold-2.json") diff --git a/src/mednet/config/data/montgomery_shenzhen/fold_3.py b/src/mednet/libs/classification/config/data/montgomery_shenzhen/fold_3.py similarity index 77% rename from src/mednet/config/data/montgomery_shenzhen/fold_3.py rename to src/mednet/libs/classification/config/data/montgomery_shenzhen/fold_3.py index fb3114fd681d8174891dbd95bc8f5f9f83743c92..2d1404fba9b7fa5737100c1c22a374cddac8db56 100644 --- a/src/mednet/config/data/montgomery_shenzhen/fold_3.py +++ b/src/mednet/libs/classification/config/data/montgomery_shenzhen/fold_3.py @@ -7,6 +7,8 @@ validation fold 3). See :py:class:`.montgomery_shenzhen.datamodule.DataModule` for technical details. """ -from mednet.config.data.montgomery_shenzhen.datamodule import DataModule +from mednet.libs.classification.config.data.montgomery_shenzhen.datamodule import ( + DataModule, +) datamodule = DataModule("fold-3.json") diff --git a/src/mednet/config/data/montgomery_shenzhen/fold_4.py b/src/mednet/libs/classification/config/data/montgomery_shenzhen/fold_4.py similarity index 77% rename from src/mednet/config/data/montgomery_shenzhen/fold_4.py rename to src/mednet/libs/classification/config/data/montgomery_shenzhen/fold_4.py index 24cbc745242824ef96366887a1ce71ad9920f962..25e9a4e93bb78914f95cbba1da5d902f99da3da4 100644 --- a/src/mednet/config/data/montgomery_shenzhen/fold_4.py +++ b/src/mednet/libs/classification/config/data/montgomery_shenzhen/fold_4.py @@ -7,6 +7,8 @@ validation fold 4). See :py:class:`.montgomery_shenzhen.datamodule.DataModule` for technical details. """ -from mednet.config.data.montgomery_shenzhen.datamodule import DataModule +from mednet.libs.classification.config.data.montgomery_shenzhen.datamodule import ( + DataModule, +) datamodule = DataModule("fold-4.json") diff --git a/src/mednet/config/data/montgomery_shenzhen/fold_5.py b/src/mednet/libs/classification/config/data/montgomery_shenzhen/fold_5.py similarity index 77% rename from src/mednet/config/data/montgomery_shenzhen/fold_5.py rename to src/mednet/libs/classification/config/data/montgomery_shenzhen/fold_5.py index 887cc682989d94d480d79776935381ed67111d8a..c553329997f6c8a3d59429b77bfb559ef6ba6dd5 100644 --- a/src/mednet/config/data/montgomery_shenzhen/fold_5.py +++ b/src/mednet/libs/classification/config/data/montgomery_shenzhen/fold_5.py @@ -7,6 +7,8 @@ validation fold 5). See :py:class:`.montgomery_shenzhen.datamodule.DataModule` for technical details. """ -from mednet.config.data.montgomery_shenzhen.datamodule import DataModule +from mednet.libs.classification.config.data.montgomery_shenzhen.datamodule import ( + DataModule, +) datamodule = DataModule("fold-5.json") diff --git a/src/mednet/config/data/montgomery_shenzhen/fold_6.py b/src/mednet/libs/classification/config/data/montgomery_shenzhen/fold_6.py similarity index 77% rename from src/mednet/config/data/montgomery_shenzhen/fold_6.py rename to src/mednet/libs/classification/config/data/montgomery_shenzhen/fold_6.py index 81a8a906366a6f60a433ff044441e9274d059eb2..42300375b646a707ef783ac5344136635040684d 100644 --- a/src/mednet/config/data/montgomery_shenzhen/fold_6.py +++ b/src/mednet/libs/classification/config/data/montgomery_shenzhen/fold_6.py @@ -7,6 +7,8 @@ validation fold 6). See :py:class:`.montgomery_shenzhen.datamodule.DataModule` for technical details. """ -from mednet.config.data.montgomery_shenzhen.datamodule import DataModule +from mednet.libs.classification.config.data.montgomery_shenzhen.datamodule import ( + DataModule, +) datamodule = DataModule("fold-6.json") diff --git a/src/mednet/config/data/montgomery_shenzhen/fold_7.py b/src/mednet/libs/classification/config/data/montgomery_shenzhen/fold_7.py similarity index 77% rename from src/mednet/config/data/montgomery_shenzhen/fold_7.py rename to src/mednet/libs/classification/config/data/montgomery_shenzhen/fold_7.py index 298f19616a867b9395ae3233d2d205fd1e487f93..296f3e57029c035104d7566e3986fb55e408735e 100644 --- a/src/mednet/config/data/montgomery_shenzhen/fold_7.py +++ b/src/mednet/libs/classification/config/data/montgomery_shenzhen/fold_7.py @@ -7,6 +7,8 @@ validation fold 7). See :py:class:`.montgomery_shenzhen.datamodule.DataModule` for technical details. """ -from mednet.config.data.montgomery_shenzhen.datamodule import DataModule +from mednet.libs.classification.config.data.montgomery_shenzhen.datamodule import ( + DataModule, +) datamodule = DataModule("fold-7.json") diff --git a/src/mednet/config/data/montgomery_shenzhen/fold_8.py b/src/mednet/libs/classification/config/data/montgomery_shenzhen/fold_8.py similarity index 77% rename from src/mednet/config/data/montgomery_shenzhen/fold_8.py rename to src/mednet/libs/classification/config/data/montgomery_shenzhen/fold_8.py index b8c2ff10e351aee4525827ac8a70a91e9c21619b..3428c0fb84b0ce179260f922e55263268c275b91 100644 --- a/src/mednet/config/data/montgomery_shenzhen/fold_8.py +++ b/src/mednet/libs/classification/config/data/montgomery_shenzhen/fold_8.py @@ -7,6 +7,8 @@ validation fold 8). See :py:class:`.montgomery_shenzhen.datamodule.DataModule` for technical details. """ -from mednet.config.data.montgomery_shenzhen.datamodule import DataModule +from mednet.libs.classification.config.data.montgomery_shenzhen.datamodule import ( + DataModule, +) datamodule = DataModule("fold-8.json") diff --git a/src/mednet/config/data/montgomery_shenzhen/fold_9.py b/src/mednet/libs/classification/config/data/montgomery_shenzhen/fold_9.py similarity index 77% rename from src/mednet/config/data/montgomery_shenzhen/fold_9.py rename to src/mednet/libs/classification/config/data/montgomery_shenzhen/fold_9.py index 30528cae581a3dbb274cec9511b0c8ab23c3d687..219ee6f349876cd6a92a31c7b58d922df76d0a12 100644 --- a/src/mednet/config/data/montgomery_shenzhen/fold_9.py +++ b/src/mednet/libs/classification/config/data/montgomery_shenzhen/fold_9.py @@ -7,6 +7,8 @@ validation fold 9). See :py:class:`.montgomery_shenzhen.datamodule.DataModule` for technical details. """ -from mednet.config.data.montgomery_shenzhen.datamodule import DataModule +from mednet.libs.classification.config.data.montgomery_shenzhen.datamodule import ( + DataModule, +) datamodule = DataModule("fold-9.json") diff --git a/src/mednet/config/data/indian/__init__.py b/src/mednet/libs/classification/config/data/montgomery_shenzhen_indian/__init__.py similarity index 100% rename from src/mednet/config/data/indian/__init__.py rename to src/mednet/libs/classification/config/data/montgomery_shenzhen_indian/__init__.py diff --git a/src/mednet/config/data/montgomery_shenzhen_indian/datamodule.py b/src/mednet/libs/classification/config/data/montgomery_shenzhen_indian/datamodule.py similarity index 95% rename from src/mednet/config/data/montgomery_shenzhen_indian/datamodule.py rename to src/mednet/libs/classification/config/data/montgomery_shenzhen_indian/datamodule.py index bfeb1a338ba93bffa0a959692ae06a5e47857f18..73b6d765be2a9e938f9d1675a2261fb263524ddc 100644 --- a/src/mednet/config/data/montgomery_shenzhen_indian/datamodule.py +++ b/src/mednet/libs/classification/config/data/montgomery_shenzhen_indian/datamodule.py @@ -7,8 +7,8 @@ databases. import pathlib -from medbase.data.datamodule import ConcatDataModule -from medbase.data.split import make_split +from mednet.libs.common.data.datamodule import ConcatDataModule +from mednet.libs.common.data.split import make_split from ..indian.datamodule import CONFIGURATION_KEY_DATADIR as INDIAN_KEY_DATADIR from ..indian.datamodule import DataModule as IndianDataModule diff --git a/src/mednet/config/data/montgomery_shenzhen_indian/default.py b/src/mednet/libs/classification/config/data/montgomery_shenzhen_indian/default.py similarity index 76% rename from src/mednet/config/data/montgomery_shenzhen_indian/default.py rename to src/mednet/libs/classification/config/data/montgomery_shenzhen_indian/default.py index 38fca2a93cf5860978397bd737ad7b8cde611704..eff34ad7cf66774ffde477c2a41e93a53e3c83e0 100644 --- a/src/mednet/config/data/montgomery_shenzhen_indian/default.py +++ b/src/mednet/libs/classification/config/data/montgomery_shenzhen_indian/default.py @@ -7,6 +7,8 @@ See :py:class:`.montgomery_shenzhen_indian.datamodule.DataModule` for technical details. """ -from mednet.config.data.montgomery_shenzhen_indian.datamodule import DataModule +from mednet.libs.classification.config.data.montgomery_shenzhen_indian.datamodule import ( + DataModule, +) datamodule = DataModule("default.json") diff --git a/src/mednet/config/data/montgomery_shenzhen_indian/fold_0.py b/src/mednet/libs/classification/config/data/montgomery_shenzhen_indian/fold_0.py similarity index 77% rename from src/mednet/config/data/montgomery_shenzhen_indian/fold_0.py rename to src/mednet/libs/classification/config/data/montgomery_shenzhen_indian/fold_0.py index 83d67fe3506611d6d4b1a4bf352c6faa27ad7b08..6698f909e480c24769a21047e18955d4f78144c9 100644 --- a/src/mednet/config/data/montgomery_shenzhen_indian/fold_0.py +++ b/src/mednet/libs/classification/config/data/montgomery_shenzhen_indian/fold_0.py @@ -8,6 +8,8 @@ See :py:class:`.montgomery_shenzhen_indian.datamodule.DataModule` for technical details. """ -from mednet.config.data.montgomery_shenzhen_indian.datamodule import DataModule +from mednet.libs.classification.config.data.montgomery_shenzhen_indian.datamodule import ( + DataModule, +) datamodule = DataModule("fold-0.json") diff --git a/src/mednet/config/data/montgomery_shenzhen_indian/fold_1.py b/src/mednet/libs/classification/config/data/montgomery_shenzhen_indian/fold_1.py similarity index 77% rename from src/mednet/config/data/montgomery_shenzhen_indian/fold_1.py rename to src/mednet/libs/classification/config/data/montgomery_shenzhen_indian/fold_1.py index a44b6a68c73942700c4a86165bce53d12a854680..508b6e0a5a0b5042f193e6009d8a276724150c17 100644 --- a/src/mednet/config/data/montgomery_shenzhen_indian/fold_1.py +++ b/src/mednet/libs/classification/config/data/montgomery_shenzhen_indian/fold_1.py @@ -7,6 +7,8 @@ See :py:class:`.montgomery_shenzhen_indian.datamodule.DataModule` for technical details. """ -from mednet.config.data.montgomery_shenzhen_indian.datamodule import DataModule +from mednet.libs.classification.config.data.montgomery_shenzhen_indian.datamodule import ( + DataModule, +) datamodule = DataModule("fold-1.json") diff --git a/src/mednet/config/data/montgomery_shenzhen_indian/fold_2.py b/src/mednet/libs/classification/config/data/montgomery_shenzhen_indian/fold_2.py similarity index 77% rename from src/mednet/config/data/montgomery_shenzhen_indian/fold_2.py rename to src/mednet/libs/classification/config/data/montgomery_shenzhen_indian/fold_2.py index 5dac88e8d3a965da37da6f1c76a52721779fad9c..b9961c68217928711dcd3783a9da7c62bc3bb4ef 100644 --- a/src/mednet/config/data/montgomery_shenzhen_indian/fold_2.py +++ b/src/mednet/libs/classification/config/data/montgomery_shenzhen_indian/fold_2.py @@ -8,6 +8,8 @@ See :py:class:`.montgomery_shenzhen_indian.datamodule.DataModule` for technical details. """ -from mednet.config.data.montgomery_shenzhen_indian.datamodule import DataModule +from mednet.libs.classification.config.data.montgomery_shenzhen_indian.datamodule import ( + DataModule, +) datamodule = DataModule("fold-2.json") diff --git a/src/mednet/config/data/montgomery_shenzhen_indian/fold_3.py b/src/mednet/libs/classification/config/data/montgomery_shenzhen_indian/fold_3.py similarity index 77% rename from src/mednet/config/data/montgomery_shenzhen_indian/fold_3.py rename to src/mednet/libs/classification/config/data/montgomery_shenzhen_indian/fold_3.py index 8fe095a351874f51457b031ff71e91876177ae7d..3b842210c6b5af9c6453781d983cf7bdfa14cb6f 100644 --- a/src/mednet/config/data/montgomery_shenzhen_indian/fold_3.py +++ b/src/mednet/libs/classification/config/data/montgomery_shenzhen_indian/fold_3.py @@ -8,6 +8,8 @@ See :py:class:`.montgomery_shenzhen_indian.datamodule.DataModule` for technical details. """ -from mednet.config.data.montgomery_shenzhen_indian.datamodule import DataModule +from mednet.libs.classification.config.data.montgomery_shenzhen_indian.datamodule import ( + DataModule, +) datamodule = DataModule("fold-3.json") diff --git a/src/mednet/config/data/montgomery_shenzhen_indian/fold_4.py b/src/mednet/libs/classification/config/data/montgomery_shenzhen_indian/fold_4.py similarity index 77% rename from src/mednet/config/data/montgomery_shenzhen_indian/fold_4.py rename to src/mednet/libs/classification/config/data/montgomery_shenzhen_indian/fold_4.py index 6524f589f7bd67b979868ae8b51613da45df6cfd..8c8b10116e5b0d0f039fa5f6cd8d8d3b532ab95f 100644 --- a/src/mednet/config/data/montgomery_shenzhen_indian/fold_4.py +++ b/src/mednet/libs/classification/config/data/montgomery_shenzhen_indian/fold_4.py @@ -8,6 +8,8 @@ See :py:class:`.montgomery_shenzhen_indian.datamodule.DataModule` for technical details. """ -from mednet.config.data.montgomery_shenzhen_indian.datamodule import DataModule +from mednet.libs.classification.config.data.montgomery_shenzhen_indian.datamodule import ( + DataModule, +) datamodule = DataModule("fold-4.json") diff --git a/src/mednet/config/data/montgomery_shenzhen_indian/fold_5.py b/src/mednet/libs/classification/config/data/montgomery_shenzhen_indian/fold_5.py similarity index 77% rename from src/mednet/config/data/montgomery_shenzhen_indian/fold_5.py rename to src/mednet/libs/classification/config/data/montgomery_shenzhen_indian/fold_5.py index 8b0acbe6e6fdf7b5739fa2ddb45b5daadb1d1283..ff53aa9b9a9702b722f25e96acaa0f683f193c78 100644 --- a/src/mednet/config/data/montgomery_shenzhen_indian/fold_5.py +++ b/src/mednet/libs/classification/config/data/montgomery_shenzhen_indian/fold_5.py @@ -8,6 +8,8 @@ See :py:class:`.montgomery_shenzhen_indian.datamodule.DataModule` for technical details. """ -from mednet.config.data.montgomery_shenzhen_indian.datamodule import DataModule +from mednet.libs.classification.config.data.montgomery_shenzhen_indian.datamodule import ( + DataModule, +) datamodule = DataModule("fold-5.json") diff --git a/src/mednet/config/data/montgomery_shenzhen_indian/fold_6.py b/src/mednet/libs/classification/config/data/montgomery_shenzhen_indian/fold_6.py similarity index 77% rename from src/mednet/config/data/montgomery_shenzhen_indian/fold_6.py rename to src/mednet/libs/classification/config/data/montgomery_shenzhen_indian/fold_6.py index d8b565adfb2e08cd2891593e74798c15187dadbf..4e0ba18d48377b1612ddf404a379b1089a1ce237 100644 --- a/src/mednet/config/data/montgomery_shenzhen_indian/fold_6.py +++ b/src/mednet/libs/classification/config/data/montgomery_shenzhen_indian/fold_6.py @@ -8,6 +8,8 @@ See :py:class:`.montgomery_shenzhen_indian.datamodule.DataModule` for technical details. """ -from mednet.config.data.montgomery_shenzhen_indian.datamodule import DataModule +from mednet.libs.classification.config.data.montgomery_shenzhen_indian.datamodule import ( + DataModule, +) datamodule = DataModule("fold-6.json") diff --git a/src/mednet/config/data/montgomery_shenzhen_indian/fold_7.py b/src/mednet/libs/classification/config/data/montgomery_shenzhen_indian/fold_7.py similarity index 77% rename from src/mednet/config/data/montgomery_shenzhen_indian/fold_7.py rename to src/mednet/libs/classification/config/data/montgomery_shenzhen_indian/fold_7.py index 248f6621cd9cfb048007889618c672ada29e9398..1251045fb66804494ce9aab365858494ec4207c4 100644 --- a/src/mednet/config/data/montgomery_shenzhen_indian/fold_7.py +++ b/src/mednet/libs/classification/config/data/montgomery_shenzhen_indian/fold_7.py @@ -7,6 +7,8 @@ See :py:class:`.montgomery_shenzhen_indian.datamodule.DataModule` for technical details. """ -from mednet.config.data.montgomery_shenzhen_indian.datamodule import DataModule +from mednet.libs.classification.config.data.montgomery_shenzhen_indian.datamodule import ( + DataModule, +) datamodule = DataModule("fold-7.json") diff --git a/src/mednet/config/data/montgomery_shenzhen_indian/fold_8.py b/src/mednet/libs/classification/config/data/montgomery_shenzhen_indian/fold_8.py similarity index 77% rename from src/mednet/config/data/montgomery_shenzhen_indian/fold_8.py rename to src/mednet/libs/classification/config/data/montgomery_shenzhen_indian/fold_8.py index 41c5e5cab86184e74eaf924612ee04f7c672855e..3f87a0cdf451906f567e5840579ac0233b2f480c 100644 --- a/src/mednet/config/data/montgomery_shenzhen_indian/fold_8.py +++ b/src/mednet/libs/classification/config/data/montgomery_shenzhen_indian/fold_8.py @@ -8,6 +8,8 @@ See :py:class:`.montgomery_shenzhen_indian.datamodule.DataModule` for technical details. """ -from mednet.config.data.montgomery_shenzhen_indian.datamodule import DataModule +from mednet.libs.classification.config.data.montgomery_shenzhen_indian.datamodule import ( + DataModule, +) datamodule = DataModule("fold-8.json") diff --git a/src/mednet/config/data/montgomery_shenzhen_indian/fold_9.py b/src/mednet/libs/classification/config/data/montgomery_shenzhen_indian/fold_9.py similarity index 77% rename from src/mednet/config/data/montgomery_shenzhen_indian/fold_9.py rename to src/mednet/libs/classification/config/data/montgomery_shenzhen_indian/fold_9.py index f658cf37c0c0cc47fb3fc92ab3807af12998f0a4..425c1ca4759b64b304c35b3c825e7de53e124a09 100644 --- a/src/mednet/config/data/montgomery_shenzhen_indian/fold_9.py +++ b/src/mednet/libs/classification/config/data/montgomery_shenzhen_indian/fold_9.py @@ -7,6 +7,8 @@ See :py:class:`.montgomery_shenzhen_indian.datamodule.DataModule` for technical details. """ -from mednet.config.data.montgomery_shenzhen_indian.datamodule import DataModule +from mednet.libs.classification.config.data.montgomery_shenzhen_indian.datamodule import ( + DataModule, +) datamodule = DataModule("fold-9.json") diff --git a/src/mednet/config/data/montgomery/__init__.py b/src/mednet/libs/classification/config/data/montgomery_shenzhen_indian_padchest/__init__.py similarity index 100% rename from src/mednet/config/data/montgomery/__init__.py rename to src/mednet/libs/classification/config/data/montgomery_shenzhen_indian_padchest/__init__.py diff --git a/src/mednet/config/data/montgomery_shenzhen_indian_padchest/datamodule.py b/src/mednet/libs/classification/config/data/montgomery_shenzhen_indian_padchest/datamodule.py similarity index 96% rename from src/mednet/config/data/montgomery_shenzhen_indian_padchest/datamodule.py rename to src/mednet/libs/classification/config/data/montgomery_shenzhen_indian_padchest/datamodule.py index 268ba2a261d2b7a667d8e1c9068c033f8b005504..942326b2cde9e920bb764a812d8b0eea03cb3398 100644 --- a/src/mednet/config/data/montgomery_shenzhen_indian_padchest/datamodule.py +++ b/src/mednet/libs/classification/config/data/montgomery_shenzhen_indian_padchest/datamodule.py @@ -7,8 +7,8 @@ datasets. import pathlib -from medbase.data.datamodule import ConcatDataModule -from medbase.data.split import make_split +from mednet.libs.common.data.datamodule import ConcatDataModule +from mednet.libs.common.data.split import make_split from ..indian.datamodule import CONFIGURATION_KEY_DATADIR as INDIAN_KEY_DATADIR from ..indian.datamodule import DataModule as IndianDataModule diff --git a/src/mednet/config/data/montgomery_shenzhen_indian_padchest/default.py b/src/mednet/libs/classification/config/data/montgomery_shenzhen_indian_padchest/default.py similarity index 73% rename from src/mednet/config/data/montgomery_shenzhen_indian_padchest/default.py rename to src/mednet/libs/classification/config/data/montgomery_shenzhen_indian_padchest/default.py index 7a0c7dce64501dca4d6017874ebf0cdf0ae26be2..04b74eca9bf863e9c7f04cfa07108ceb65128b39 100644 --- a/src/mednet/config/data/montgomery_shenzhen_indian_padchest/default.py +++ b/src/mednet/libs/classification/config/data/montgomery_shenzhen_indian_padchest/default.py @@ -3,7 +3,7 @@ # SPDX-License-Identifier: GPL-3.0-or-later """Aggregated dataset composed of Montgomery, Shenzhen, Indian and Padchest datasets.""" -from mednet.config.data.montgomery_shenzhen_indian_padchest.datamodule import ( +from mednet.libs.classification.config.data.montgomery_shenzhen_indian_padchest.datamodule import ( DataModule, ) diff --git a/src/mednet/config/data/montgomery_shenzhen/__init__.py b/src/mednet/libs/classification/config/data/montgomery_shenzhen_indian_tbx11k/__init__.py similarity index 100% rename from src/mednet/config/data/montgomery_shenzhen/__init__.py rename to src/mednet/libs/classification/config/data/montgomery_shenzhen_indian_tbx11k/__init__.py diff --git a/src/mednet/config/data/montgomery_shenzhen_indian_tbx11k/datamodule.py b/src/mednet/libs/classification/config/data/montgomery_shenzhen_indian_tbx11k/datamodule.py similarity index 96% rename from src/mednet/config/data/montgomery_shenzhen_indian_tbx11k/datamodule.py rename to src/mednet/libs/classification/config/data/montgomery_shenzhen_indian_tbx11k/datamodule.py index 932e65710cbb1e61ad407fb1c8d121607af6f354..daf575f7abe5376659559ad168f72d2d31389368 100644 --- a/src/mednet/config/data/montgomery_shenzhen_indian_tbx11k/datamodule.py +++ b/src/mednet/libs/classification/config/data/montgomery_shenzhen_indian_tbx11k/datamodule.py @@ -7,8 +7,8 @@ datasets. import pathlib -from medbase.data.datamodule import ConcatDataModule -from medbase.data.split import make_split +from mednet.libs.common.data.datamodule import ConcatDataModule +from mednet.libs.common.data.split import make_split from ..indian.datamodule import CONFIGURATION_KEY_DATADIR as INDIAN_KEY_DATADIR from ..indian.datamodule import DataModule as IndianDataModule diff --git a/src/mednet/config/data/montgomery_shenzhen_indian_tbx11k/v1_fold_0.py b/src/mednet/libs/classification/config/data/montgomery_shenzhen_indian_tbx11k/v1_fold_0.py similarity index 82% rename from src/mednet/config/data/montgomery_shenzhen_indian_tbx11k/v1_fold_0.py rename to src/mednet/libs/classification/config/data/montgomery_shenzhen_indian_tbx11k/v1_fold_0.py index a866e229c5220058d5f838288eed1e44406a288d..9e7a10eab4bb37f143c2c44bf84411be895d04f5 100644 --- a/src/mednet/config/data/montgomery_shenzhen_indian_tbx11k/v1_fold_0.py +++ b/src/mednet/libs/classification/config/data/montgomery_shenzhen_indian_tbx11k/v1_fold_0.py @@ -8,7 +8,7 @@ This remix dataset combines ``fold-0`` from Montgomery, Shenzhen, and Indian datasets with ``v1-fold-0`` of TBX11k (healthy vs. active TB samples). """ -from mednet.config.data.montgomery_shenzhen_indian_tbx11k.datamodule import ( +from mednet.libs.classification.config.data.montgomery_shenzhen_indian_tbx11k.datamodule import ( DataModule, ) diff --git a/src/mednet/config/data/montgomery_shenzhen_indian_tbx11k/v1_fold_1.py b/src/mednet/libs/classification/config/data/montgomery_shenzhen_indian_tbx11k/v1_fold_1.py similarity index 82% rename from src/mednet/config/data/montgomery_shenzhen_indian_tbx11k/v1_fold_1.py rename to src/mednet/libs/classification/config/data/montgomery_shenzhen_indian_tbx11k/v1_fold_1.py index cc9d26ce771ee1833111e665ab102efbbf077120..9ab338ce0b604defd489fdd601f72b98d7ec1469 100644 --- a/src/mednet/config/data/montgomery_shenzhen_indian_tbx11k/v1_fold_1.py +++ b/src/mednet/libs/classification/config/data/montgomery_shenzhen_indian_tbx11k/v1_fold_1.py @@ -8,7 +8,7 @@ This remix dataset combines ``fold-1`` from Montgomery, Shenzhen, and Indian datasets with ``v1-fold-1`` of TBX11k (healthy vs. active TB samples). """ -from mednet.config.data.montgomery_shenzhen_indian_tbx11k.datamodule import ( +from mednet.libs.classification.config.data.montgomery_shenzhen_indian_tbx11k.datamodule import ( DataModule, ) diff --git a/src/mednet/config/data/montgomery_shenzhen_indian_tbx11k/v1_fold_2.py b/src/mednet/libs/classification/config/data/montgomery_shenzhen_indian_tbx11k/v1_fold_2.py similarity index 82% rename from src/mednet/config/data/montgomery_shenzhen_indian_tbx11k/v1_fold_2.py rename to src/mednet/libs/classification/config/data/montgomery_shenzhen_indian_tbx11k/v1_fold_2.py index c9f77703b1ec5363ca2431bbf4d39ac009dbc32e..25c7367ed9e4c680d81ed65ddfc59e6880e72854 100644 --- a/src/mednet/config/data/montgomery_shenzhen_indian_tbx11k/v1_fold_2.py +++ b/src/mednet/libs/classification/config/data/montgomery_shenzhen_indian_tbx11k/v1_fold_2.py @@ -8,7 +8,7 @@ This remix dataset combines ``fold-2`` from Montgomery, Shenzhen, and Indian datasets with ``v1-fold-2`` of TBX11k (healthy vs. active TB samples). """ -from mednet.config.data.montgomery_shenzhen_indian_tbx11k.datamodule import ( +from mednet.libs.classification.config.data.montgomery_shenzhen_indian_tbx11k.datamodule import ( DataModule, ) diff --git a/src/mednet/config/data/montgomery_shenzhen_indian_tbx11k/v1_fold_3.py b/src/mednet/libs/classification/config/data/montgomery_shenzhen_indian_tbx11k/v1_fold_3.py similarity index 82% rename from src/mednet/config/data/montgomery_shenzhen_indian_tbx11k/v1_fold_3.py rename to src/mednet/libs/classification/config/data/montgomery_shenzhen_indian_tbx11k/v1_fold_3.py index 639ac053f3b34d9b4278d51b6bed76b0e6c77c51..e86ab293c2269af0e4744af5bafa1b67faea9ef1 100644 --- a/src/mednet/config/data/montgomery_shenzhen_indian_tbx11k/v1_fold_3.py +++ b/src/mednet/libs/classification/config/data/montgomery_shenzhen_indian_tbx11k/v1_fold_3.py @@ -8,7 +8,7 @@ This remix dataset combines ``fold-3`` from Montgomery, Shenzhen, and Indian datasets with ``v1-fold-3`` of TBX11k (healthy vs. active TB samples). """ -from mednet.config.data.montgomery_shenzhen_indian_tbx11k.datamodule import ( +from mednet.libs.classification.config.data.montgomery_shenzhen_indian_tbx11k.datamodule import ( DataModule, ) diff --git a/src/mednet/config/data/montgomery_shenzhen_indian_tbx11k/v1_fold_4.py b/src/mednet/libs/classification/config/data/montgomery_shenzhen_indian_tbx11k/v1_fold_4.py similarity index 82% rename from src/mednet/config/data/montgomery_shenzhen_indian_tbx11k/v1_fold_4.py rename to src/mednet/libs/classification/config/data/montgomery_shenzhen_indian_tbx11k/v1_fold_4.py index b08f0588e44a040ad4dbc3c9c918e8a82b260023..fe968cf881b2334d1857e17603022369c428ca6f 100644 --- a/src/mednet/config/data/montgomery_shenzhen_indian_tbx11k/v1_fold_4.py +++ b/src/mednet/libs/classification/config/data/montgomery_shenzhen_indian_tbx11k/v1_fold_4.py @@ -8,7 +8,7 @@ This remix dataset combines ``fold-4`` from Montgomery, Shenzhen, and Indian datasets with ``v1-fold-4`` of TBX11k (healthy vs. active TB samples). """ -from mednet.config.data.montgomery_shenzhen_indian_tbx11k.datamodule import ( +from mednet.libs.classification.config.data.montgomery_shenzhen_indian_tbx11k.datamodule import ( DataModule, ) diff --git a/src/mednet/config/data/montgomery_shenzhen_indian_tbx11k/v1_fold_5.py b/src/mednet/libs/classification/config/data/montgomery_shenzhen_indian_tbx11k/v1_fold_5.py similarity index 82% rename from src/mednet/config/data/montgomery_shenzhen_indian_tbx11k/v1_fold_5.py rename to src/mednet/libs/classification/config/data/montgomery_shenzhen_indian_tbx11k/v1_fold_5.py index 7cfd77253141d959731bbb857cf04d7b090b2b53..28b0b82233e2edc5a41e9fb3340761f9616b90f1 100644 --- a/src/mednet/config/data/montgomery_shenzhen_indian_tbx11k/v1_fold_5.py +++ b/src/mednet/libs/classification/config/data/montgomery_shenzhen_indian_tbx11k/v1_fold_5.py @@ -8,7 +8,7 @@ This remix dataset combines ``fold-5`` from Montgomery, Shenzhen, and Indian datasets with ``v1-fold-5`` of TBX11k (healthy vs. active TB samples). """ -from mednet.config.data.montgomery_shenzhen_indian_tbx11k.datamodule import ( +from mednet.libs.classification.config.data.montgomery_shenzhen_indian_tbx11k.datamodule import ( DataModule, ) diff --git a/src/mednet/config/data/montgomery_shenzhen_indian_tbx11k/v1_fold_6.py b/src/mednet/libs/classification/config/data/montgomery_shenzhen_indian_tbx11k/v1_fold_6.py similarity index 82% rename from src/mednet/config/data/montgomery_shenzhen_indian_tbx11k/v1_fold_6.py rename to src/mednet/libs/classification/config/data/montgomery_shenzhen_indian_tbx11k/v1_fold_6.py index c8341e7e45ea8411f51ece99b4accb6b851a5151..0986a1c5336b2bfe68e91a908190547147a2a08a 100644 --- a/src/mednet/config/data/montgomery_shenzhen_indian_tbx11k/v1_fold_6.py +++ b/src/mednet/libs/classification/config/data/montgomery_shenzhen_indian_tbx11k/v1_fold_6.py @@ -8,7 +8,7 @@ This remix dataset combines ``fold-6`` from Montgomery, Shenzhen, and Indian datasets with ``v1-fold-6`` of TBX11k (healthy vs. active TB samples). """ -from mednet.config.data.montgomery_shenzhen_indian_tbx11k.datamodule import ( +from mednet.libs.classification.config.data.montgomery_shenzhen_indian_tbx11k.datamodule import ( DataModule, ) diff --git a/src/mednet/config/data/montgomery_shenzhen_indian_tbx11k/v1_fold_7.py b/src/mednet/libs/classification/config/data/montgomery_shenzhen_indian_tbx11k/v1_fold_7.py similarity index 82% rename from src/mednet/config/data/montgomery_shenzhen_indian_tbx11k/v1_fold_7.py rename to src/mednet/libs/classification/config/data/montgomery_shenzhen_indian_tbx11k/v1_fold_7.py index 9f9b19d54bbf0c8c5211794e86d30d2ba92b2099..051841a5a431d4cc7065a6656dcc4faa3f5231e9 100644 --- a/src/mednet/config/data/montgomery_shenzhen_indian_tbx11k/v1_fold_7.py +++ b/src/mednet/libs/classification/config/data/montgomery_shenzhen_indian_tbx11k/v1_fold_7.py @@ -8,7 +8,7 @@ This remix dataset combines ``fold-7`` from Montgomery, Shenzhen, and Indian datasets with ``v1-fold-7`` of TBX11k (healthy vs. active TB samples). """ -from mednet.config.data.montgomery_shenzhen_indian_tbx11k.datamodule import ( +from mednet.libs.classification.config.data.montgomery_shenzhen_indian_tbx11k.datamodule import ( DataModule, ) diff --git a/src/mednet/config/data/montgomery_shenzhen_indian_tbx11k/v1_fold_8.py b/src/mednet/libs/classification/config/data/montgomery_shenzhen_indian_tbx11k/v1_fold_8.py similarity index 82% rename from src/mednet/config/data/montgomery_shenzhen_indian_tbx11k/v1_fold_8.py rename to src/mednet/libs/classification/config/data/montgomery_shenzhen_indian_tbx11k/v1_fold_8.py index a212479358eb129cc64baadc45865519594e9fe9..9c9e7be4bce252541ee91ea3696a340dd6dd93ef 100644 --- a/src/mednet/config/data/montgomery_shenzhen_indian_tbx11k/v1_fold_8.py +++ b/src/mednet/libs/classification/config/data/montgomery_shenzhen_indian_tbx11k/v1_fold_8.py @@ -8,7 +8,7 @@ This remix dataset combines ``fold-8`` from Montgomery, Shenzhen, and Indian datasets with ``v1-fold-8`` of TBX11k (healthy vs. active TB samples). """ -from mednet.config.data.montgomery_shenzhen_indian_tbx11k.datamodule import ( +from mednet.libs.classification.config.data.montgomery_shenzhen_indian_tbx11k.datamodule import ( DataModule, ) diff --git a/src/mednet/config/data/montgomery_shenzhen_indian_tbx11k/v1_fold_9.py b/src/mednet/libs/classification/config/data/montgomery_shenzhen_indian_tbx11k/v1_fold_9.py similarity index 82% rename from src/mednet/config/data/montgomery_shenzhen_indian_tbx11k/v1_fold_9.py rename to src/mednet/libs/classification/config/data/montgomery_shenzhen_indian_tbx11k/v1_fold_9.py index b2dff65bd393055eec1135a922339cbc3ee09832..3ccf291000e03cf3472896ce59d61d0e2d886a6f 100644 --- a/src/mednet/config/data/montgomery_shenzhen_indian_tbx11k/v1_fold_9.py +++ b/src/mednet/libs/classification/config/data/montgomery_shenzhen_indian_tbx11k/v1_fold_9.py @@ -8,7 +8,7 @@ This remix dataset combines ``fold-9`` from Montgomery, Shenzhen, and Indian datasets with ``v1-fold-9`` of TBX11k (healthy vs. active TB samples). """ -from mednet.config.data.montgomery_shenzhen_indian_tbx11k.datamodule import ( +from mednet.libs.classification.config.data.montgomery_shenzhen_indian_tbx11k.datamodule import ( DataModule, ) diff --git a/src/mednet/config/data/montgomery_shenzhen_indian_tbx11k/v1_healthy_vs_atb.py b/src/mednet/libs/classification/config/data/montgomery_shenzhen_indian_tbx11k/v1_healthy_vs_atb.py similarity index 83% rename from src/mednet/config/data/montgomery_shenzhen_indian_tbx11k/v1_healthy_vs_atb.py rename to src/mednet/libs/classification/config/data/montgomery_shenzhen_indian_tbx11k/v1_healthy_vs_atb.py index 0f4d1393f0fb0973cf7b57cb3312f98c3bafd164..c30b2bbb1d2fb3cee920d8ffed55922eca0c63ec 100644 --- a/src/mednet/config/data/montgomery_shenzhen_indian_tbx11k/v1_healthy_vs_atb.py +++ b/src/mednet/libs/classification/config/data/montgomery_shenzhen_indian_tbx11k/v1_healthy_vs_atb.py @@ -9,7 +9,7 @@ and Indian datasets with ``v1-healthy-vs-atb`` split of TBX11k (healthy vs. active TB samples). """ -from mednet.config.data.montgomery_shenzhen_indian_tbx11k.datamodule import ( +from mednet.libs.classification.config.data.montgomery_shenzhen_indian_tbx11k.datamodule import ( DataModule, ) diff --git a/src/mednet/config/data/montgomery_shenzhen_indian_tbx11k/v2_fold_0.py b/src/mednet/libs/classification/config/data/montgomery_shenzhen_indian_tbx11k/v2_fold_0.py similarity index 83% rename from src/mednet/config/data/montgomery_shenzhen_indian_tbx11k/v2_fold_0.py rename to src/mednet/libs/classification/config/data/montgomery_shenzhen_indian_tbx11k/v2_fold_0.py index 93fe390dd8de655a89f4cdb8f74382734def4182..a959fa5ca3691f8674b764e5d8fe39cee11c8ffd 100644 --- a/src/mednet/config/data/montgomery_shenzhen_indian_tbx11k/v2_fold_0.py +++ b/src/mednet/libs/classification/config/data/montgomery_shenzhen_indian_tbx11k/v2_fold_0.py @@ -9,7 +9,7 @@ datasets with ``v2-fold-0`` of TBX11k (healthy, sick and latent TB vs. active TB samples). """ -from mednet.config.data.montgomery_shenzhen_indian_tbx11k.datamodule import ( +from mednet.libs.classification.config.data.montgomery_shenzhen_indian_tbx11k.datamodule import ( DataModule, ) diff --git a/src/mednet/config/data/montgomery_shenzhen_indian_tbx11k/v2_fold_1.py b/src/mednet/libs/classification/config/data/montgomery_shenzhen_indian_tbx11k/v2_fold_1.py similarity index 83% rename from src/mednet/config/data/montgomery_shenzhen_indian_tbx11k/v2_fold_1.py rename to src/mednet/libs/classification/config/data/montgomery_shenzhen_indian_tbx11k/v2_fold_1.py index 0ed16e701663a05756d4c44ce2e84d1d44ca56dc..fed9f39581e8ef594a6d4818d3415b68cf095df0 100644 --- a/src/mednet/config/data/montgomery_shenzhen_indian_tbx11k/v2_fold_1.py +++ b/src/mednet/libs/classification/config/data/montgomery_shenzhen_indian_tbx11k/v2_fold_1.py @@ -9,7 +9,7 @@ datasets with ``v2-fold-1`` of TBX11k (healthy, sick and latent TB vs. active TB samples). """ -from mednet.config.data.montgomery_shenzhen_indian_tbx11k.datamodule import ( +from mednet.libs.classification.config.data.montgomery_shenzhen_indian_tbx11k.datamodule import ( DataModule, ) diff --git a/src/mednet/config/data/montgomery_shenzhen_indian_tbx11k/v2_fold_2.py b/src/mednet/libs/classification/config/data/montgomery_shenzhen_indian_tbx11k/v2_fold_2.py similarity index 83% rename from src/mednet/config/data/montgomery_shenzhen_indian_tbx11k/v2_fold_2.py rename to src/mednet/libs/classification/config/data/montgomery_shenzhen_indian_tbx11k/v2_fold_2.py index 2ff42bcd694ec2142f114666d5452fa5f4361b1f..be946b8de8be9eb6a244b08ec92fb643c638bd94 100644 --- a/src/mednet/config/data/montgomery_shenzhen_indian_tbx11k/v2_fold_2.py +++ b/src/mednet/libs/classification/config/data/montgomery_shenzhen_indian_tbx11k/v2_fold_2.py @@ -9,7 +9,7 @@ datasets with ``v2-fold-2`` of TBX11k (healthy, sick and latent TB vs. active TB samples). """ -from mednet.config.data.montgomery_shenzhen_indian_tbx11k.datamodule import ( +from mednet.libs.classification.config.data.montgomery_shenzhen_indian_tbx11k.datamodule import ( DataModule, ) diff --git a/src/mednet/config/data/montgomery_shenzhen_indian_tbx11k/v2_fold_3.py b/src/mednet/libs/classification/config/data/montgomery_shenzhen_indian_tbx11k/v2_fold_3.py similarity index 83% rename from src/mednet/config/data/montgomery_shenzhen_indian_tbx11k/v2_fold_3.py rename to src/mednet/libs/classification/config/data/montgomery_shenzhen_indian_tbx11k/v2_fold_3.py index dc4b1a4c5fed9e272fe332432a5405f866a3cbde..3c8a8bed7cc38975ebe7e633298e32f8113c6c69 100644 --- a/src/mednet/config/data/montgomery_shenzhen_indian_tbx11k/v2_fold_3.py +++ b/src/mednet/libs/classification/config/data/montgomery_shenzhen_indian_tbx11k/v2_fold_3.py @@ -9,7 +9,7 @@ datasets with ``v2-fold-3`` of TBX11k (healthy, sick and latent TB vs. active TB samples). """ -from mednet.config.data.montgomery_shenzhen_indian_tbx11k.datamodule import ( +from mednet.libs.classification.config.data.montgomery_shenzhen_indian_tbx11k.datamodule import ( DataModule, ) diff --git a/src/mednet/config/data/montgomery_shenzhen_indian_tbx11k/v2_fold_4.py b/src/mednet/libs/classification/config/data/montgomery_shenzhen_indian_tbx11k/v2_fold_4.py similarity index 83% rename from src/mednet/config/data/montgomery_shenzhen_indian_tbx11k/v2_fold_4.py rename to src/mednet/libs/classification/config/data/montgomery_shenzhen_indian_tbx11k/v2_fold_4.py index 55113094b5095463ba083cc2b12d72acde53b2fc..5cfc0dacec1b63d3b410df1c05819342d2a1fa40 100644 --- a/src/mednet/config/data/montgomery_shenzhen_indian_tbx11k/v2_fold_4.py +++ b/src/mednet/libs/classification/config/data/montgomery_shenzhen_indian_tbx11k/v2_fold_4.py @@ -9,7 +9,7 @@ datasets with ``v2-fold-4`` of TBX11k (healthy, sick and latent TB vs. active TB samples). """ -from mednet.config.data.montgomery_shenzhen_indian_tbx11k.datamodule import ( +from mednet.libs.classification.config.data.montgomery_shenzhen_indian_tbx11k.datamodule import ( DataModule, ) diff --git a/src/mednet/config/data/montgomery_shenzhen_indian_tbx11k/v2_fold_5.py b/src/mednet/libs/classification/config/data/montgomery_shenzhen_indian_tbx11k/v2_fold_5.py similarity index 83% rename from src/mednet/config/data/montgomery_shenzhen_indian_tbx11k/v2_fold_5.py rename to src/mednet/libs/classification/config/data/montgomery_shenzhen_indian_tbx11k/v2_fold_5.py index 0bffb95e6ff791c8d95adcea66ffe5d49619e821..02a01229b66fd667ad95b2235eae10c939c1aa24 100644 --- a/src/mednet/config/data/montgomery_shenzhen_indian_tbx11k/v2_fold_5.py +++ b/src/mednet/libs/classification/config/data/montgomery_shenzhen_indian_tbx11k/v2_fold_5.py @@ -9,7 +9,7 @@ datasets with ``v2-fold-5`` of TBX11k (healthy, sick and latent TB vs. active TB samples). """ -from mednet.config.data.montgomery_shenzhen_indian_tbx11k.datamodule import ( +from mednet.libs.classification.config.data.montgomery_shenzhen_indian_tbx11k.datamodule import ( DataModule, ) diff --git a/src/mednet/config/data/montgomery_shenzhen_indian_tbx11k/v2_fold_6.py b/src/mednet/libs/classification/config/data/montgomery_shenzhen_indian_tbx11k/v2_fold_6.py similarity index 83% rename from src/mednet/config/data/montgomery_shenzhen_indian_tbx11k/v2_fold_6.py rename to src/mednet/libs/classification/config/data/montgomery_shenzhen_indian_tbx11k/v2_fold_6.py index a5507999d10facdb2f000637a3e47cc028ee9233..2dff3c162132f82c8530a2ee61c6c9ec3fe02fe3 100644 --- a/src/mednet/config/data/montgomery_shenzhen_indian_tbx11k/v2_fold_6.py +++ b/src/mednet/libs/classification/config/data/montgomery_shenzhen_indian_tbx11k/v2_fold_6.py @@ -9,7 +9,7 @@ datasets with ``v2-fold-6`` of TBX11k (healthy, sick and latent TB vs. active TB samples). """ -from mednet.config.data.montgomery_shenzhen_indian_tbx11k.datamodule import ( +from mednet.libs.classification.config.data.montgomery_shenzhen_indian_tbx11k.datamodule import ( DataModule, ) diff --git a/src/mednet/config/data/montgomery_shenzhen_indian_tbx11k/v2_fold_7.py b/src/mednet/libs/classification/config/data/montgomery_shenzhen_indian_tbx11k/v2_fold_7.py similarity index 83% rename from src/mednet/config/data/montgomery_shenzhen_indian_tbx11k/v2_fold_7.py rename to src/mednet/libs/classification/config/data/montgomery_shenzhen_indian_tbx11k/v2_fold_7.py index 944c1eb9bc18f6e88093a4ab3a3ea2ac2d565b07..17f051102ea3cecebc2a96c0f196656945af4f3a 100644 --- a/src/mednet/config/data/montgomery_shenzhen_indian_tbx11k/v2_fold_7.py +++ b/src/mednet/libs/classification/config/data/montgomery_shenzhen_indian_tbx11k/v2_fold_7.py @@ -9,7 +9,7 @@ datasets with ``v2-fold-7`` of TBX11k (healthy, sick and latent TB vs. active TB samples). """ -from mednet.config.data.montgomery_shenzhen_indian_tbx11k.datamodule import ( +from mednet.libs.classification.config.data.montgomery_shenzhen_indian_tbx11k.datamodule import ( DataModule, ) diff --git a/src/mednet/config/data/montgomery_shenzhen_indian_tbx11k/v2_fold_8.py b/src/mednet/libs/classification/config/data/montgomery_shenzhen_indian_tbx11k/v2_fold_8.py similarity index 83% rename from src/mednet/config/data/montgomery_shenzhen_indian_tbx11k/v2_fold_8.py rename to src/mednet/libs/classification/config/data/montgomery_shenzhen_indian_tbx11k/v2_fold_8.py index db5331c6b84d887bb2aa1e98d325d434853e1825..aaf80c97b9778b25402aebd148108a39ae2de291 100644 --- a/src/mednet/config/data/montgomery_shenzhen_indian_tbx11k/v2_fold_8.py +++ b/src/mednet/libs/classification/config/data/montgomery_shenzhen_indian_tbx11k/v2_fold_8.py @@ -9,7 +9,7 @@ datasets with ``v2-fold-8`` of TBX11k (healthy, sick and latent TB vs. active TB samples). """ -from mednet.config.data.montgomery_shenzhen_indian_tbx11k.datamodule import ( +from mednet.libs.classification.config.data.montgomery_shenzhen_indian_tbx11k.datamodule import ( DataModule, ) diff --git a/src/mednet/config/data/montgomery_shenzhen_indian_tbx11k/v2_fold_9.py b/src/mednet/libs/classification/config/data/montgomery_shenzhen_indian_tbx11k/v2_fold_9.py similarity index 83% rename from src/mednet/config/data/montgomery_shenzhen_indian_tbx11k/v2_fold_9.py rename to src/mednet/libs/classification/config/data/montgomery_shenzhen_indian_tbx11k/v2_fold_9.py index 898a46aea2dddcfc0eafc15f06b0b77b15f6f806..8b17d3201991dc8ebe8bcf47ba8a08205b245b4c 100644 --- a/src/mednet/config/data/montgomery_shenzhen_indian_tbx11k/v2_fold_9.py +++ b/src/mednet/libs/classification/config/data/montgomery_shenzhen_indian_tbx11k/v2_fold_9.py @@ -9,7 +9,7 @@ datasets with ``v2-fold-9`` of TBX11k (healthy, sick and latent TB vs. active TB samples). """ -from mednet.config.data.montgomery_shenzhen_indian_tbx11k.datamodule import ( +from mednet.libs.classification.config.data.montgomery_shenzhen_indian_tbx11k.datamodule import ( DataModule, ) diff --git a/src/mednet/config/data/montgomery_shenzhen_indian_tbx11k/v2_others_vs_atb.py b/src/mednet/libs/classification/config/data/montgomery_shenzhen_indian_tbx11k/v2_others_vs_atb.py similarity index 84% rename from src/mednet/config/data/montgomery_shenzhen_indian_tbx11k/v2_others_vs_atb.py rename to src/mednet/libs/classification/config/data/montgomery_shenzhen_indian_tbx11k/v2_others_vs_atb.py index b0bce0aeed787d7d3ad9dc23dba9321d3e9785a5..6c0ab4e7751da42ebd1c40a4010ea02617b67851 100644 --- a/src/mednet/config/data/montgomery_shenzhen_indian_tbx11k/v2_others_vs_atb.py +++ b/src/mednet/libs/classification/config/data/montgomery_shenzhen_indian_tbx11k/v2_others_vs_atb.py @@ -9,7 +9,7 @@ and Indian datasets with ``v2-others-vs-atb`` of TBX11k (healthy, sick and latent TB vs. active TB samples). """ -from mednet.config.data.montgomery_shenzhen_indian_tbx11k.datamodule import ( +from mednet.libs.classification.config.data.montgomery_shenzhen_indian_tbx11k.datamodule import ( DataModule, ) diff --git a/src/mednet/config/data/montgomery_shenzhen_indian/__init__.py b/src/mednet/libs/classification/config/data/nih_cxr14/__init__.py similarity index 100% rename from src/mednet/config/data/montgomery_shenzhen_indian/__init__.py rename to src/mednet/libs/classification/config/data/nih_cxr14/__init__.py diff --git a/src/mednet/config/data/nih_cxr14/cardiomegaly.json b/src/mednet/libs/classification/config/data/nih_cxr14/cardiomegaly.json similarity index 100% rename from src/mednet/config/data/nih_cxr14/cardiomegaly.json rename to src/mednet/libs/classification/config/data/nih_cxr14/cardiomegaly.json diff --git a/src/mednet/config/data/nih_cxr14/cardiomegaly.py b/src/mednet/libs/classification/config/data/nih_cxr14/cardiomegaly.py similarity index 68% rename from src/mednet/config/data/nih_cxr14/cardiomegaly.py rename to src/mednet/libs/classification/config/data/nih_cxr14/cardiomegaly.py index 255be72e79840527a0e401ac8c5e048033038a2a..30c23c2afcfb12f9fb101b06c2de8646f19770a7 100644 --- a/src/mednet/config/data/nih_cxr14/cardiomegaly.py +++ b/src/mednet/libs/classification/config/data/nih_cxr14/cardiomegaly.py @@ -8,10 +8,12 @@ Database reference: [NIH-CXR14-2017]_ This split contains cardiomegaly cases from the NIH CXR14 database. -See :py:class:`mednet.config.data.nih_cxr14.datamodule.DataModule` for +See :py:class:`mednet.libs.classification.config.data.nih_cxr14.datamodule.DataModule` for technical details. """ -from mednet.config.data.nih_cxr14.datamodule import DataModule +from mednet.libs.classification.config.data.nih_cxr14.datamodule import ( + DataModule, +) datamodule = DataModule("cardiomegaly.json") diff --git a/src/mednet/config/data/nih_cxr14/datamodule.py b/src/mednet/libs/classification/config/data/nih_cxr14/datamodule.py similarity index 95% rename from src/mednet/config/data/nih_cxr14/datamodule.py rename to src/mednet/libs/classification/config/data/nih_cxr14/datamodule.py index 8e72d6d414bab383452c66b5ab326cc2599ba3e8..10b02268f61c7105e7057e699f3580a4d80b89ff 100644 --- a/src/mednet/config/data/nih_cxr14/datamodule.py +++ b/src/mednet/libs/classification/config/data/nih_cxr14/datamodule.py @@ -10,13 +10,12 @@ import os import pathlib import PIL.Image +from mednet.libs.common.data.datamodule import CachingDataModule +from mednet.libs.common.data.split import make_split +from mednet.libs.common.data.typing import Sample +from mednet.libs.common.data.typing import RawDataLoader as _BaseRawDataLoader from torchvision.transforms.functional import to_tensor -from medbase.data.datamodule import CachingDataModule -from medbase.data.split import make_split -from medbase.data.typing import Sample -from medbase.data.typing import RawDataLoader as _BaseRawDataLoader - from ....utils.rc import load_rc CONFIGURATION_KEY_DATADIR = "datadir." + (__name__.rsplit(".", 2)[-2]) diff --git a/src/mednet/config/data/nih_cxr14/default.json.bz2 b/src/mednet/libs/classification/config/data/nih_cxr14/default.json.bz2 similarity index 100% rename from src/mednet/config/data/nih_cxr14/default.json.bz2 rename to src/mednet/libs/classification/config/data/nih_cxr14/default.json.bz2 diff --git a/src/mednet/config/data/nih_cxr14/default.py b/src/mednet/libs/classification/config/data/nih_cxr14/default.py similarity index 64% rename from src/mednet/config/data/nih_cxr14/default.py rename to src/mednet/libs/classification/config/data/nih_cxr14/default.py index 8c15cd71dd85ea5c3e9a9704ab81a877d926633f..80b8df2345aea45bc8fb69f505b8648c274243b5 100644 --- a/src/mednet/config/data/nih_cxr14/default.py +++ b/src/mednet/libs/classification/config/data/nih_cxr14/default.py @@ -7,10 +7,12 @@ * Validation samples: 6350 * Test samples: 4054 -See :py:class:`mednet.config.data.nih_cxr14.datamodule.DataModule` for +See :py:class:`mednet.libs.classification.config.data.nih_cxr14.datamodule.DataModule` for technical details. """ -from mednet.config.data.nih_cxr14.datamodule import DataModule +from mednet.libs.classification.config.data.nih_cxr14.datamodule import ( + DataModule, +) datamodule = DataModule("default.json.bz2") diff --git a/src/mednet/config/data/montgomery_shenzhen_indian_padchest/__init__.py b/src/mednet/libs/classification/config/data/nih_cxr14_padchest/__init__.py similarity index 100% rename from src/mednet/config/data/montgomery_shenzhen_indian_padchest/__init__.py rename to src/mednet/libs/classification/config/data/nih_cxr14_padchest/__init__.py diff --git a/src/mednet/config/data/nih_cxr14_padchest/datamodule.py b/src/mednet/libs/classification/config/data/nih_cxr14_padchest/datamodule.py similarity index 94% rename from src/mednet/config/data/nih_cxr14_padchest/datamodule.py rename to src/mednet/libs/classification/config/data/nih_cxr14_padchest/datamodule.py index 3de000c129d19bd949cc5c00c7145364b6935200..beeb3d9655cd434122d59fe36ee18eb63e7c12b8 100644 --- a/src/mednet/config/data/nih_cxr14_padchest/datamodule.py +++ b/src/mednet/libs/classification/config/data/nih_cxr14_padchest/datamodule.py @@ -5,8 +5,8 @@ import pathlib -from medbase.data.datamodule import ConcatDataModule -from medbase.data.split import make_split +from mednet.libs.common.data.datamodule import ConcatDataModule +from mednet.libs.common.data.split import make_split from ..nih_cxr14.datamodule import RawDataLoader as CXR14Loader from ..padchest.datamodule import RawDataLoader as PadchestLoader diff --git a/src/mednet/config/data/nih_cxr14_padchest/idiap.py b/src/mednet/libs/classification/config/data/nih_cxr14_padchest/idiap.py similarity index 75% rename from src/mednet/config/data/nih_cxr14_padchest/idiap.py rename to src/mednet/libs/classification/config/data/nih_cxr14_padchest/idiap.py index 7ba5b9bca91784f8b26a986df92220d9f998022d..86e44dca767cd594c873c295b56443fc947399a4 100644 --- a/src/mednet/config/data/nih_cxr14_padchest/idiap.py +++ b/src/mednet/libs/classification/config/data/nih_cxr14_padchest/idiap.py @@ -5,6 +5,8 @@ (no-tb-idiap split). """ -from mednet.config.data.nih_cxr14_padchest.datamodule import DataModule +from mednet.libs.classification.config.data.nih_cxr14_padchest.datamodule import ( + DataModule, +) datamodule = DataModule("default.json.bz2", "no-tb-idiap.json.bz2") diff --git a/src/mednet/config/data/montgomery_shenzhen_indian_tbx11k/__init__.py b/src/mednet/libs/classification/config/data/padchest/__init__.py similarity index 100% rename from src/mednet/config/data/montgomery_shenzhen_indian_tbx11k/__init__.py rename to src/mednet/libs/classification/config/data/padchest/__init__.py diff --git a/src/mednet/config/data/padchest/cardiomegaly-idiap.json b/src/mednet/libs/classification/config/data/padchest/cardiomegaly-idiap.json similarity index 100% rename from src/mednet/config/data/padchest/cardiomegaly-idiap.json rename to src/mednet/libs/classification/config/data/padchest/cardiomegaly-idiap.json diff --git a/src/mednet/config/data/padchest/cardiomegaly_idiap.py b/src/mednet/libs/classification/config/data/padchest/cardiomegaly_idiap.py similarity index 72% rename from src/mednet/config/data/padchest/cardiomegaly_idiap.py rename to src/mednet/libs/classification/config/data/padchest/cardiomegaly_idiap.py index b8a4c0d09db1b8e4c9f103ecb18283ab4e086de4..9b4dd7e678ff2c1164acf22c8e0571002cf97e2c 100644 --- a/src/mednet/config/data/padchest/cardiomegaly_idiap.py +++ b/src/mednet/libs/classification/config/data/padchest/cardiomegaly_idiap.py @@ -9,10 +9,12 @@ This split contains the first 40 images with cardiomegaly, with parameters: Label = "Normal", MethodLabel = "Physician", Projection = "PA" Read documentation of -:py:class:`mednet.config.data.padchest.datamodule.DataModule` for technical +:py:class:`mednet.libs.classification.config.data.padchest.datamodule.DataModule` for technical details. """ -from mednet.config.data.padchest.datamodule import DataModule +from mednet.libs.classification.config.data.padchest.datamodule import ( + DataModule, +) datamodule = DataModule("cardiomegaly-idiap.json") diff --git a/src/mednet/config/data/padchest/datamodule.py b/src/mednet/libs/classification/config/data/padchest/datamodule.py similarity index 97% rename from src/mednet/config/data/padchest/datamodule.py rename to src/mednet/libs/classification/config/data/padchest/datamodule.py index 99545ee2d0b0503974f9d210dbd968ca74571d99..8ea0eb7c0262c0dac7a713828d6c0ec749589131 100644 --- a/src/mednet/config/data/padchest/datamodule.py +++ b/src/mednet/libs/classification/config/data/padchest/datamodule.py @@ -11,14 +11,13 @@ import pathlib import numpy import PIL.Image +from mednet.libs.common.data.datamodule import CachingDataModule +from mednet.libs.common.data.image_utils import remove_black_borders +from mednet.libs.common.data.split import make_split +from mednet.libs.common.data.typing import Sample +from mednet.libs.common.data.typing import RawDataLoader as _BaseRawDataLoader from torchvision.transforms.functional import to_tensor -from medbase.data.datamodule import CachingDataModule -from medbase.data.image_utils import remove_black_borders -from medbase.data.split import make_split -from medbase.data.typing import Sample -from medbase.data.typing import RawDataLoader as _BaseRawDataLoader - from ....utils.rc import load_rc CONFIGURATION_KEY_DATADIR = "datadir." + (__name__.rsplit(".", 2)[-2]) diff --git a/src/mednet/config/data/padchest/idiap.json.bz2 b/src/mednet/libs/classification/config/data/padchest/idiap.json.bz2 similarity index 100% rename from src/mednet/config/data/padchest/idiap.json.bz2 rename to src/mednet/libs/classification/config/data/padchest/idiap.json.bz2 diff --git a/src/mednet/config/data/padchest/idiap.py b/src/mednet/libs/classification/config/data/padchest/idiap.py similarity index 71% rename from src/mednet/config/data/padchest/idiap.py rename to src/mednet/libs/classification/config/data/padchest/idiap.py index 07afe93e591036f29b4d44eafaf473830aeafe11..e1dd56c58b023cd7e2ab3b69ca7852bfef606eb2 100644 --- a/src/mednet/config/data/padchest/idiap.py +++ b/src/mednet/libs/classification/config/data/padchest/idiap.py @@ -6,7 +6,7 @@ Database reference: [PADCHEST-2019]_ This split contains all images in the database. Read documentation of -:py:class:`mednet.config.data.padchest.datamodule.DataModule` for technical +:py:class:`mednet.libs.classification.config.data.padchest.datamodule.DataModule` for technical details. * Split reference: ours @@ -15,6 +15,8 @@ details. * Test samples: 0 """ -from mednet.config.data.padchest.datamodule import DataModule +from mednet.libs.classification.config.data.padchest.datamodule import ( + DataModule, +) datamodule = DataModule("idiap.json.bz2") diff --git a/src/mednet/config/data/padchest/no-tb-idiap.json.bz2 b/src/mednet/libs/classification/config/data/padchest/no-tb-idiap.json.bz2 similarity index 100% rename from src/mednet/config/data/padchest/no-tb-idiap.json.bz2 rename to src/mednet/libs/classification/config/data/padchest/no-tb-idiap.json.bz2 diff --git a/src/mednet/config/data/padchest/no_tb_idiap.py b/src/mednet/libs/classification/config/data/padchest/no_tb_idiap.py similarity index 79% rename from src/mednet/config/data/padchest/no_tb_idiap.py rename to src/mednet/libs/classification/config/data/padchest/no_tb_idiap.py index 79f05da51612c7ea577d902fb91fd8116e8e05d4..061594060cfead20524c04626f59542e4c0e5d4c 100644 --- a/src/mednet/config/data/padchest/no_tb_idiap.py +++ b/src/mednet/libs/classification/config/data/padchest/no_tb_idiap.py @@ -29,10 +29,12 @@ Database reference: [PADCHEST-2019]_ * edema and consolidation Read documentation of -:py:class:`mednet.config.data.padchest.datamodule.DataModule` for technical +:py:class:`mednet.libs.classification.config.data.padchest.datamodule.DataModule` for technical details. """ -from mednet.config.data.padchest.datamodule import DataModule +from mednet.libs.classification.config.data.padchest.datamodule import ( + DataModule, +) datamodule = DataModule("no-tb-idiap.json.bz2") diff --git a/src/mednet/config/data/padchest/tb-idiap.json b/src/mednet/libs/classification/config/data/padchest/tb-idiap.json similarity index 100% rename from src/mednet/config/data/padchest/tb-idiap.json rename to src/mednet/libs/classification/config/data/padchest/tb-idiap.json diff --git a/src/mednet/config/data/padchest/tb_idiap.py b/src/mednet/libs/classification/config/data/padchest/tb_idiap.py similarity index 75% rename from src/mednet/config/data/padchest/tb_idiap.py rename to src/mednet/libs/classification/config/data/padchest/tb_idiap.py index bf625d711eacabac007327fc5c63967ff9e54275..c66decb6a07439a878cb1c3bc8bdfc1939a811ee 100644 --- a/src/mednet/config/data/padchest/tb_idiap.py +++ b/src/mednet/libs/classification/config/data/padchest/tb_idiap.py @@ -11,10 +11,12 @@ Projection = "PA" and TB cases. Labelling matches those for active TB (binary) classification datasets. Read documentation of -:py:class:`mednet.config.data.padchest.datamodule.DataModule` for technical +:py:class:`mednet.libs.classification.config.data.padchest.datamodule.DataModule` for technical details. """ -from mednet.config.data.padchest.datamodule import DataModule +from mednet.libs.classification.config.data.padchest.datamodule import ( + DataModule, +) datamodule = DataModule("tb-idiap.json") diff --git a/src/mednet/config/data/nih_cxr14/__init__.py b/src/mednet/libs/classification/config/data/shenzhen/__init__.py similarity index 100% rename from src/mednet/config/data/nih_cxr14/__init__.py rename to src/mednet/libs/classification/config/data/shenzhen/__init__.py diff --git a/src/mednet/config/data/shenzhen/alltest.json b/src/mednet/libs/classification/config/data/shenzhen/alltest.json similarity index 100% rename from src/mednet/config/data/shenzhen/alltest.json rename to src/mednet/libs/classification/config/data/shenzhen/alltest.json diff --git a/src/mednet/config/data/shenzhen/alltest.py b/src/mednet/libs/classification/config/data/shenzhen/alltest.py similarity index 64% rename from src/mednet/config/data/shenzhen/alltest.py rename to src/mednet/libs/classification/config/data/shenzhen/alltest.py index 12a22e1e644e02d4bddaf5099191566dac3a0658..48b7d13ae14dc97018707fcd9ec305da34e4116d 100644 --- a/src/mednet/config/data/shenzhen/alltest.py +++ b/src/mednet/libs/classification/config/data/shenzhen/alltest.py @@ -7,10 +7,12 @@ Database reference: [MONTGOMERY-SHENZHEN-2014]_ * Test samples: 100% of the database -See :py:class:`mednet.config.data.shenzhen.datamodule.DataModule` for +See :py:class:`mednet.libs.classification.config.data.shenzhen.datamodule.DataModule` for technical details. """ -from mednet.config.data.shenzhen.datamodule import DataModule +from mednet.libs.classification.config.data.shenzhen.datamodule import ( + DataModule, +) datamodule = DataModule("alltest.json") diff --git a/src/mednet/config/data/shenzhen/datamodule.py b/src/mednet/libs/classification/config/data/shenzhen/datamodule.py similarity index 93% rename from src/mednet/config/data/shenzhen/datamodule.py rename to src/mednet/libs/classification/config/data/shenzhen/datamodule.py index ae1b463988f7d103ed963767da649732c31b37c0..f68851b6bb53ddc9fbff044c3eee87db24f23003 100644 --- a/src/mednet/config/data/shenzhen/datamodule.py +++ b/src/mednet/libs/classification/config/data/shenzhen/datamodule.py @@ -10,14 +10,13 @@ import os import pathlib import PIL.Image +from mednet.libs.common.data.datamodule import CachingDataModule +from mednet.libs.common.data.image_utils import remove_black_borders +from mednet.libs.common.data.split import make_split +from mednet.libs.common.data.typing import Sample +from mednet.libs.common.data.typing import RawDataLoader as _BaseRawDataLoader from torchvision.transforms.functional import to_tensor -from medbase.data.datamodule import CachingDataModule -from medbase.data.image_utils import remove_black_borders -from medbase.data.split import make_split -from medbase.data.typing import Sample -from medbase.data.typing import RawDataLoader as _BaseRawDataLoader - from ....utils.rc import load_rc CONFIGURATION_KEY_DATADIR = "datadir." + (__name__.rsplit(".", 2)[-2]) diff --git a/src/mednet/config/data/shenzhen/default.json b/src/mednet/libs/classification/config/data/shenzhen/default.json similarity index 100% rename from src/mednet/config/data/shenzhen/default.json rename to src/mednet/libs/classification/config/data/shenzhen/default.json diff --git a/src/mednet/config/data/shenzhen/default.py b/src/mednet/libs/classification/config/data/shenzhen/default.py similarity index 72% rename from src/mednet/config/data/shenzhen/default.py rename to src/mednet/libs/classification/config/data/shenzhen/default.py index e2fa24b21510b09c549aa87ab5b71c6452a5a913..f3ee1926721ea17f6d7e3e20d747f31b857e6e21 100644 --- a/src/mednet/config/data/shenzhen/default.py +++ b/src/mednet/libs/classification/config/data/shenzhen/default.py @@ -9,10 +9,12 @@ Database reference: [MONTGOMERY-SHENZHEN-2014]_ * Validation samples: 16% of TB and healthy CXR (including labels) * Test samples: 20% of TB and healthy CXR (including labels) -See :py:class:`mednet.config.data.shenzhen.datamodule.DataModule` for +See :py:class:`mednet.libs.classification.config.data.shenzhen.datamodule.DataModule` for technical details. """ -from mednet.config.data.shenzhen.datamodule import DataModule +from mednet.libs.classification.config.data.shenzhen.datamodule import ( + DataModule, +) datamodule = DataModule("default.json") diff --git a/src/mednet/config/data/shenzhen/fold-0.json b/src/mednet/libs/classification/config/data/shenzhen/fold-0.json similarity index 100% rename from src/mednet/config/data/shenzhen/fold-0.json rename to src/mednet/libs/classification/config/data/shenzhen/fold-0.json diff --git a/src/mednet/config/data/shenzhen/fold-1.json b/src/mednet/libs/classification/config/data/shenzhen/fold-1.json similarity index 100% rename from src/mednet/config/data/shenzhen/fold-1.json rename to src/mednet/libs/classification/config/data/shenzhen/fold-1.json diff --git a/src/mednet/config/data/shenzhen/fold-2.json b/src/mednet/libs/classification/config/data/shenzhen/fold-2.json similarity index 100% rename from src/mednet/config/data/shenzhen/fold-2.json rename to src/mednet/libs/classification/config/data/shenzhen/fold-2.json diff --git a/src/mednet/config/data/shenzhen/fold-3.json b/src/mednet/libs/classification/config/data/shenzhen/fold-3.json similarity index 100% rename from src/mednet/config/data/shenzhen/fold-3.json rename to src/mednet/libs/classification/config/data/shenzhen/fold-3.json diff --git a/src/mednet/config/data/shenzhen/fold-4.json b/src/mednet/libs/classification/config/data/shenzhen/fold-4.json similarity index 100% rename from src/mednet/config/data/shenzhen/fold-4.json rename to src/mednet/libs/classification/config/data/shenzhen/fold-4.json diff --git a/src/mednet/config/data/shenzhen/fold-5.json b/src/mednet/libs/classification/config/data/shenzhen/fold-5.json similarity index 100% rename from src/mednet/config/data/shenzhen/fold-5.json rename to src/mednet/libs/classification/config/data/shenzhen/fold-5.json diff --git a/src/mednet/config/data/shenzhen/fold-6.json b/src/mednet/libs/classification/config/data/shenzhen/fold-6.json similarity index 100% rename from src/mednet/config/data/shenzhen/fold-6.json rename to src/mednet/libs/classification/config/data/shenzhen/fold-6.json diff --git a/src/mednet/config/data/shenzhen/fold-7.json b/src/mednet/libs/classification/config/data/shenzhen/fold-7.json similarity index 100% rename from src/mednet/config/data/shenzhen/fold-7.json rename to src/mednet/libs/classification/config/data/shenzhen/fold-7.json diff --git a/src/mednet/config/data/shenzhen/fold-8.json b/src/mednet/libs/classification/config/data/shenzhen/fold-8.json similarity index 100% rename from src/mednet/config/data/shenzhen/fold-8.json rename to src/mednet/libs/classification/config/data/shenzhen/fold-8.json diff --git a/src/mednet/config/data/shenzhen/fold-9.json b/src/mednet/libs/classification/config/data/shenzhen/fold-9.json similarity index 100% rename from src/mednet/config/data/shenzhen/fold-9.json rename to src/mednet/libs/classification/config/data/shenzhen/fold-9.json diff --git a/src/mednet/config/data/shenzhen/fold_0.py b/src/mednet/libs/classification/config/data/shenzhen/fold_0.py similarity index 64% rename from src/mednet/config/data/shenzhen/fold_0.py rename to src/mednet/libs/classification/config/data/shenzhen/fold_0.py index 218211fa31368d1abeb869b7f6dae58900c0effc..33ea121e8e3955285fba93e33671f7aa72676bc3 100644 --- a/src/mednet/config/data/shenzhen/fold_0.py +++ b/src/mednet/libs/classification/config/data/shenzhen/fold_0.py @@ -5,10 +5,12 @@ Database reference: [MONTGOMERY-SHENZHEN-2014]_ -See :py:class:`mednet.config.data.shenzhen.datamodule.DataModule` for +See :py:class:`mednet.libs.classification.config.data.shenzhen.datamodule.DataModule` for technical details. """ -from mednet.config.data.shenzhen.datamodule import DataModule +from mednet.libs.classification.config.data.shenzhen.datamodule import ( + DataModule, +) datamodule = DataModule("fold-0.json") diff --git a/src/mednet/config/data/shenzhen/fold_1.py b/src/mednet/libs/classification/config/data/shenzhen/fold_1.py similarity index 64% rename from src/mednet/config/data/shenzhen/fold_1.py rename to src/mednet/libs/classification/config/data/shenzhen/fold_1.py index cee2fd624dc617291aa9cc0a730eeb94a4a0a58c..d34826c3c4814fc43deab5507e82816278e0f3cf 100644 --- a/src/mednet/config/data/shenzhen/fold_1.py +++ b/src/mednet/libs/classification/config/data/shenzhen/fold_1.py @@ -5,10 +5,12 @@ Database reference: [MONTGOMERY-SHENZHEN-2014]_ -See :py:class:`mednet.config.data.shenzhen.datamodule.DataModule` for +See :py:class:`mednet.libs.classification.config.data.shenzhen.datamodule.DataModule` for technical details. """ -from mednet.config.data.shenzhen.datamodule import DataModule +from mednet.libs.classification.config.data.shenzhen.datamodule import ( + DataModule, +) datamodule = DataModule("fold-1.json") diff --git a/src/mednet/config/data/shenzhen/fold_2.py b/src/mednet/libs/classification/config/data/shenzhen/fold_2.py similarity index 64% rename from src/mednet/config/data/shenzhen/fold_2.py rename to src/mednet/libs/classification/config/data/shenzhen/fold_2.py index 1373a64ccc1ecbbe3104e659aa6739bb6684450f..67ad5d39036ec57d937807611a4a438ff98e30a1 100644 --- a/src/mednet/config/data/shenzhen/fold_2.py +++ b/src/mednet/libs/classification/config/data/shenzhen/fold_2.py @@ -5,10 +5,12 @@ Database reference: [MONTGOMERY-SHENZHEN-2014]_ -See :py:class:`mednet.config.data.shenzhen.datamodule.DataModule` for +See :py:class:`mednet.libs.classification.config.data.shenzhen.datamodule.DataModule` for technical details. """ -from mednet.config.data.shenzhen.datamodule import DataModule +from mednet.libs.classification.config.data.shenzhen.datamodule import ( + DataModule, +) datamodule = DataModule("fold-2.json") diff --git a/src/mednet/config/data/shenzhen/fold_3.py b/src/mednet/libs/classification/config/data/shenzhen/fold_3.py similarity index 64% rename from src/mednet/config/data/shenzhen/fold_3.py rename to src/mednet/libs/classification/config/data/shenzhen/fold_3.py index 8fa1c4c2552d240126e4e502e0a74dd5366a8ca3..6534259a0c525a241186a595dc615dfd3924518b 100644 --- a/src/mednet/config/data/shenzhen/fold_3.py +++ b/src/mednet/libs/classification/config/data/shenzhen/fold_3.py @@ -5,10 +5,12 @@ Database reference: [MONTGOMERY-SHENZHEN-2014]_ -See :py:class:`mednet.config.data.shenzhen.datamodule.DataModule` for +See :py:class:`mednet.libs.classification.config.data.shenzhen.datamodule.DataModule` for technical details. """ -from mednet.config.data.shenzhen.datamodule import DataModule +from mednet.libs.classification.config.data.shenzhen.datamodule import ( + DataModule, +) datamodule = DataModule("fold-3.json") diff --git a/src/mednet/config/data/shenzhen/fold_4.py b/src/mednet/libs/classification/config/data/shenzhen/fold_4.py similarity index 64% rename from src/mednet/config/data/shenzhen/fold_4.py rename to src/mednet/libs/classification/config/data/shenzhen/fold_4.py index 3998c2d2246bd98e6ec20a591dd84682b2bd0d12..c4c02114f4aef1e53c71295601b5835abf9ba158 100644 --- a/src/mednet/config/data/shenzhen/fold_4.py +++ b/src/mednet/libs/classification/config/data/shenzhen/fold_4.py @@ -5,10 +5,12 @@ Database reference: [MONTGOMERY-SHENZHEN-2014]_ -See :py:class:`mednet.config.data.shenzhen.datamodule.DataModule` for +See :py:class:`mednet.libs.classification.config.data.shenzhen.datamodule.DataModule` for technical details. """ -from mednet.config.data.shenzhen.datamodule import DataModule +from mednet.libs.classification.config.data.shenzhen.datamodule import ( + DataModule, +) datamodule = DataModule("fold-4.json") diff --git a/src/mednet/config/data/shenzhen/fold_5.py b/src/mednet/libs/classification/config/data/shenzhen/fold_5.py similarity index 64% rename from src/mednet/config/data/shenzhen/fold_5.py rename to src/mednet/libs/classification/config/data/shenzhen/fold_5.py index 71452ef25039f7195784e29f35af3d7e1bf06260..a76c37c4b4663e8a2cc0b97f9602e88c71e9a82f 100644 --- a/src/mednet/config/data/shenzhen/fold_5.py +++ b/src/mednet/libs/classification/config/data/shenzhen/fold_5.py @@ -5,10 +5,12 @@ Database reference: [MONTGOMERY-SHENZHEN-2014]_ -See :py:class:`mednet.config.data.shenzhen.datamodule.DataModule` for +See :py:class:`mednet.libs.classification.config.data.shenzhen.datamodule.DataModule` for technical details. """ -from mednet.config.data.shenzhen.datamodule import DataModule +from mednet.libs.classification.config.data.shenzhen.datamodule import ( + DataModule, +) datamodule = DataModule("fold-5.json") diff --git a/src/mednet/config/data/shenzhen/fold_6.py b/src/mednet/libs/classification/config/data/shenzhen/fold_6.py similarity index 64% rename from src/mednet/config/data/shenzhen/fold_6.py rename to src/mednet/libs/classification/config/data/shenzhen/fold_6.py index 69a51ccef6dc87bbb66cbd89d92a26a472f48ce6..eb464ebf5a80e104a198a9bc62802f37d8ffcc69 100644 --- a/src/mednet/config/data/shenzhen/fold_6.py +++ b/src/mednet/libs/classification/config/data/shenzhen/fold_6.py @@ -5,10 +5,12 @@ Database reference: [MONTGOMERY-SHENZHEN-2014]_ -See :py:class:`mednet.config.data.shenzhen.datamodule.DataModule` for +See :py:class:`mednet.libs.classification.config.data.shenzhen.datamodule.DataModule` for technical details. """ -from mednet.config.data.shenzhen.datamodule import DataModule +from mednet.libs.classification.config.data.shenzhen.datamodule import ( + DataModule, +) datamodule = DataModule("fold-6.json") diff --git a/src/mednet/config/data/shenzhen/fold_7.py b/src/mednet/libs/classification/config/data/shenzhen/fold_7.py similarity index 64% rename from src/mednet/config/data/shenzhen/fold_7.py rename to src/mednet/libs/classification/config/data/shenzhen/fold_7.py index 619a28d0625a0344053f01d1c25d96f6a2549482..43f350198c6b3ab99e00139fa49cd3489672f811 100644 --- a/src/mednet/config/data/shenzhen/fold_7.py +++ b/src/mednet/libs/classification/config/data/shenzhen/fold_7.py @@ -5,10 +5,12 @@ Database reference: [MONTGOMERY-SHENZHEN-2014]_ -See :py:class:`mednet.config.data.shenzhen.datamodule.DataModule` for +See :py:class:`mednet.libs.classification.config.data.shenzhen.datamodule.DataModule` for technical details. """ -from mednet.config.data.shenzhen.datamodule import DataModule +from mednet.libs.classification.config.data.shenzhen.datamodule import ( + DataModule, +) datamodule = DataModule("fold-7.json") diff --git a/src/mednet/config/data/shenzhen/fold_8.py b/src/mednet/libs/classification/config/data/shenzhen/fold_8.py similarity index 64% rename from src/mednet/config/data/shenzhen/fold_8.py rename to src/mednet/libs/classification/config/data/shenzhen/fold_8.py index 1eb4278a7f3c491914d98038018ea9383bf4d8e7..776f7700c451601153c4a7797a124c8c7928bf0b 100644 --- a/src/mednet/config/data/shenzhen/fold_8.py +++ b/src/mednet/libs/classification/config/data/shenzhen/fold_8.py @@ -5,10 +5,12 @@ Database reference: [MONTGOMERY-SHENZHEN-2014]_ -See :py:class:`mednet.config.data.shenzhen.datamodule.DataModule` for +See :py:class:`mednet.libs.classification.config.data.shenzhen.datamodule.DataModule` for technical details. """ -from mednet.config.data.shenzhen.datamodule import DataModule +from mednet.libs.classification.config.data.shenzhen.datamodule import ( + DataModule, +) datamodule = DataModule("fold-8.json") diff --git a/src/mednet/config/data/shenzhen/fold_9.py b/src/mednet/libs/classification/config/data/shenzhen/fold_9.py similarity index 64% rename from src/mednet/config/data/shenzhen/fold_9.py rename to src/mednet/libs/classification/config/data/shenzhen/fold_9.py index c112edf906ffda4eb03bdc6414c95e5d972a27be..351efa593ad9c280a8e9526b9a3bf01c71c05de9 100644 --- a/src/mednet/config/data/shenzhen/fold_9.py +++ b/src/mednet/libs/classification/config/data/shenzhen/fold_9.py @@ -5,10 +5,12 @@ Database reference: [MONTGOMERY-SHENZHEN-2014]_ -See :py:class:`mednet.config.data.shenzhen.datamodule.DataModule` for +See :py:class:`mednet.libs.classification.config.data.shenzhen.datamodule.DataModule` for technical details. """ -from mednet.config.data.shenzhen.datamodule import DataModule +from mednet.libs.classification.config.data.shenzhen.datamodule import ( + DataModule, +) datamodule = DataModule("fold-9.json") diff --git a/src/mednet/config/data/nih_cxr14_padchest/__init__.py b/src/mednet/libs/classification/config/data/tbpoc/__init__.py similarity index 100% rename from src/mednet/config/data/nih_cxr14_padchest/__init__.py rename to src/mednet/libs/classification/config/data/tbpoc/__init__.py diff --git a/src/mednet/config/data/tbpoc/datamodule.py b/src/mednet/libs/classification/config/data/tbpoc/datamodule.py similarity index 92% rename from src/mednet/config/data/tbpoc/datamodule.py rename to src/mednet/libs/classification/config/data/tbpoc/datamodule.py index 5b4b6011fee91c1ad09f1b92d9388fa253c1b518..122f6686b4831cfb74e35320a7d23e5ee64192e6 100644 --- a/src/mednet/config/data/tbpoc/datamodule.py +++ b/src/mednet/libs/classification/config/data/tbpoc/datamodule.py @@ -6,14 +6,13 @@ import os import pathlib import PIL.Image +from mednet.libs.common.data.datamodule import CachingDataModule +from mednet.libs.common.data.image_utils import remove_black_borders +from mednet.libs.common.data.split import make_split +from mednet.libs.common.data.typing import Sample +from mednet.libs.common.data.typing import RawDataLoader as _BaseRawDataLoader from torchvision.transforms.functional import to_tensor -from medbase.data.datamodule import CachingDataModule -from medbase.data.image_utils import remove_black_borders -from medbase.data.split import make_split -from medbase.data.typing import Sample -from medbase.data.typing import RawDataLoader as _BaseRawDataLoader - from ....utils.rc import load_rc CONFIGURATION_KEY_DATADIR = "datadir." + (__name__.rsplit(".", 2)[-2]) diff --git a/src/mednet/config/data/tbpoc/fold-0.json b/src/mednet/libs/classification/config/data/tbpoc/fold-0.json similarity index 100% rename from src/mednet/config/data/tbpoc/fold-0.json rename to src/mednet/libs/classification/config/data/tbpoc/fold-0.json diff --git a/src/mednet/config/data/tbpoc/fold-1.json b/src/mednet/libs/classification/config/data/tbpoc/fold-1.json similarity index 100% rename from src/mednet/config/data/tbpoc/fold-1.json rename to src/mednet/libs/classification/config/data/tbpoc/fold-1.json diff --git a/src/mednet/config/data/tbpoc/fold-2.json b/src/mednet/libs/classification/config/data/tbpoc/fold-2.json similarity index 100% rename from src/mednet/config/data/tbpoc/fold-2.json rename to src/mednet/libs/classification/config/data/tbpoc/fold-2.json diff --git a/src/mednet/config/data/tbpoc/fold-3.json b/src/mednet/libs/classification/config/data/tbpoc/fold-3.json similarity index 100% rename from src/mednet/config/data/tbpoc/fold-3.json rename to src/mednet/libs/classification/config/data/tbpoc/fold-3.json diff --git a/src/mednet/config/data/tbpoc/fold-4.json b/src/mednet/libs/classification/config/data/tbpoc/fold-4.json similarity index 100% rename from src/mednet/config/data/tbpoc/fold-4.json rename to src/mednet/libs/classification/config/data/tbpoc/fold-4.json diff --git a/src/mednet/config/data/tbpoc/fold-5.json b/src/mednet/libs/classification/config/data/tbpoc/fold-5.json similarity index 100% rename from src/mednet/config/data/tbpoc/fold-5.json rename to src/mednet/libs/classification/config/data/tbpoc/fold-5.json diff --git a/src/mednet/config/data/tbpoc/fold-6.json b/src/mednet/libs/classification/config/data/tbpoc/fold-6.json similarity index 100% rename from src/mednet/config/data/tbpoc/fold-6.json rename to src/mednet/libs/classification/config/data/tbpoc/fold-6.json diff --git a/src/mednet/config/data/tbpoc/fold-7.json b/src/mednet/libs/classification/config/data/tbpoc/fold-7.json similarity index 100% rename from src/mednet/config/data/tbpoc/fold-7.json rename to src/mednet/libs/classification/config/data/tbpoc/fold-7.json diff --git a/src/mednet/config/data/tbpoc/fold-8.json b/src/mednet/libs/classification/config/data/tbpoc/fold-8.json similarity index 100% rename from src/mednet/config/data/tbpoc/fold-8.json rename to src/mednet/libs/classification/config/data/tbpoc/fold-8.json diff --git a/src/mednet/config/data/tbpoc/fold-9.json b/src/mednet/libs/classification/config/data/tbpoc/fold-9.json similarity index 100% rename from src/mednet/config/data/tbpoc/fold-9.json rename to src/mednet/libs/classification/config/data/tbpoc/fold-9.json diff --git a/src/mednet/config/data/tbpoc/fold_0.py b/src/mednet/libs/classification/config/data/tbpoc/fold_0.py similarity index 61% rename from src/mednet/config/data/tbpoc/fold_0.py rename to src/mednet/libs/classification/config/data/tbpoc/fold_0.py index 03b5f6cdd2b5d2a2e3ad9fb3f28cd18e2cc889a9..68c79c5c82c874bbf2da2833502596f5e1daf153 100644 --- a/src/mednet/config/data/tbpoc/fold_0.py +++ b/src/mednet/libs/classification/config/data/tbpoc/fold_0.py @@ -5,10 +5,10 @@ Database reference: [TB-POC-2018]_ -See :py:class:`mednet.config.data.tbpoc.datamodule.DataModule` for technical +See :py:class:`mednet.libs.classification.config.data.tbpoc.datamodule.DataModule` for technical details. """ -from mednet.config.data.tbpoc.datamodule import DataModule +from mednet.libs.classification.config.data.tbpoc.datamodule import DataModule datamodule = DataModule("fold-0.json") diff --git a/src/mednet/config/data/tbpoc/fold_1.py b/src/mednet/libs/classification/config/data/tbpoc/fold_1.py similarity index 61% rename from src/mednet/config/data/tbpoc/fold_1.py rename to src/mednet/libs/classification/config/data/tbpoc/fold_1.py index 5db4436748cca3612849487e714b338c7d77a6f1..f33b24b71c9e547570511e8d2e60a103afe93e4d 100644 --- a/src/mednet/config/data/tbpoc/fold_1.py +++ b/src/mednet/libs/classification/config/data/tbpoc/fold_1.py @@ -5,10 +5,10 @@ Database reference: [TB-POC-2018]_ -See :py:class:`mednet.config.data.tbpoc.datamodule.DataModule` for technical +See :py:class:`mednet.libs.classification.config.data.tbpoc.datamodule.DataModule` for technical details. """ -from mednet.config.data.tbpoc.datamodule import DataModule +from mednet.libs.classification.config.data.tbpoc.datamodule import DataModule datamodule = DataModule("fold-1.json") diff --git a/src/mednet/config/data/tbpoc/fold_2.py b/src/mednet/libs/classification/config/data/tbpoc/fold_2.py similarity index 61% rename from src/mednet/config/data/tbpoc/fold_2.py rename to src/mednet/libs/classification/config/data/tbpoc/fold_2.py index 5dea9179fb4fc790216fbaa3a0d81c74afa12715..7ba9632dd776969c9b0f2febbd96069974be498f 100644 --- a/src/mednet/config/data/tbpoc/fold_2.py +++ b/src/mednet/libs/classification/config/data/tbpoc/fold_2.py @@ -5,10 +5,10 @@ Database reference: [TB-POC-2018]_ -See :py:class:`mednet.config.data.tbpoc.datamodule.DataModule` for technical +See :py:class:`mednet.libs.classification.config.data.tbpoc.datamodule.DataModule` for technical details. """ -from mednet.config.data.tbpoc.datamodule import DataModule +from mednet.libs.classification.config.data.tbpoc.datamodule import DataModule datamodule = DataModule("fold-2.json") diff --git a/src/mednet/config/data/tbpoc/fold_3.py b/src/mednet/libs/classification/config/data/tbpoc/fold_3.py similarity index 61% rename from src/mednet/config/data/tbpoc/fold_3.py rename to src/mednet/libs/classification/config/data/tbpoc/fold_3.py index bce854fc9c8a6a55c409bcf84dcaa0934e29b066..1c174c8a205f1c680e7a5082cc20ccceafd4ba5f 100644 --- a/src/mednet/config/data/tbpoc/fold_3.py +++ b/src/mednet/libs/classification/config/data/tbpoc/fold_3.py @@ -5,10 +5,10 @@ Database reference: [TB-POC-2018]_ -See :py:class:`mednet.config.data.tbpoc.datamodule.DataModule` for technical +See :py:class:`mednet.libs.classification.config.data.tbpoc.datamodule.DataModule` for technical details. """ -from mednet.config.data.tbpoc.datamodule import DataModule +from mednet.libs.classification.config.data.tbpoc.datamodule import DataModule datamodule = DataModule("fold-3.json") diff --git a/src/mednet/config/data/tbpoc/fold_4.py b/src/mednet/libs/classification/config/data/tbpoc/fold_4.py similarity index 61% rename from src/mednet/config/data/tbpoc/fold_4.py rename to src/mednet/libs/classification/config/data/tbpoc/fold_4.py index 55720bd307bebfc7d74dfde086f1d8a881051b11..e2f9ddd918ef2fd11e1afc6c0ef69962b46d0d26 100644 --- a/src/mednet/config/data/tbpoc/fold_4.py +++ b/src/mednet/libs/classification/config/data/tbpoc/fold_4.py @@ -5,10 +5,10 @@ Database reference: [TB-POC-2018]_ -See :py:class:`mednet.config.data.tbpoc.datamodule.DataModule` for technical +See :py:class:`mednet.libs.classification.config.data.tbpoc.datamodule.DataModule` for technical details. """ -from mednet.config.data.tbpoc.datamodule import DataModule +from mednet.libs.classification.config.data.tbpoc.datamodule import DataModule datamodule = DataModule("fold-4.json") diff --git a/src/mednet/config/data/tbpoc/fold_5.py b/src/mednet/libs/classification/config/data/tbpoc/fold_5.py similarity index 61% rename from src/mednet/config/data/tbpoc/fold_5.py rename to src/mednet/libs/classification/config/data/tbpoc/fold_5.py index 61bc52b54d9e539538ee900a077a802aa75772f5..e8892641a9e0e929b58746588c5a929ebc8f208d 100644 --- a/src/mednet/config/data/tbpoc/fold_5.py +++ b/src/mednet/libs/classification/config/data/tbpoc/fold_5.py @@ -5,10 +5,10 @@ Database reference: [TB-POC-2018]_ -See :py:class:`mednet.config.data.tbpoc.datamodule.DataModule` for technical +See :py:class:`mednet.libs.classification.config.data.tbpoc.datamodule.DataModule` for technical details. """ -from mednet.config.data.tbpoc.datamodule import DataModule +from mednet.libs.classification.config.data.tbpoc.datamodule import DataModule datamodule = DataModule("fold-5.json") diff --git a/src/mednet/config/data/tbpoc/fold_6.py b/src/mednet/libs/classification/config/data/tbpoc/fold_6.py similarity index 61% rename from src/mednet/config/data/tbpoc/fold_6.py rename to src/mednet/libs/classification/config/data/tbpoc/fold_6.py index b7f166e6b0d480bef430cb920e76f157db9cfb34..71078d44a0f1ced9af4c2f0fa040bb9522bd7d27 100644 --- a/src/mednet/config/data/tbpoc/fold_6.py +++ b/src/mednet/libs/classification/config/data/tbpoc/fold_6.py @@ -5,10 +5,10 @@ Database reference: [TB-POC-2018]_ -See :py:class:`mednet.config.data.tbpoc.datamodule.DataModule` for technical +See :py:class:`mednet.libs.classification.config.data.tbpoc.datamodule.DataModule` for technical details. """ -from mednet.config.data.tbpoc.datamodule import DataModule +from mednet.libs.classification.config.data.tbpoc.datamodule import DataModule datamodule = DataModule("fold-6.json") diff --git a/src/mednet/config/data/tbpoc/fold_7.py b/src/mednet/libs/classification/config/data/tbpoc/fold_7.py similarity index 61% rename from src/mednet/config/data/tbpoc/fold_7.py rename to src/mednet/libs/classification/config/data/tbpoc/fold_7.py index 3efab4a9eba71837d1eacc06c7bc41abb6855853..02d8cac0fd21e2b452ac731c0fab70539fc79009 100644 --- a/src/mednet/config/data/tbpoc/fold_7.py +++ b/src/mednet/libs/classification/config/data/tbpoc/fold_7.py @@ -5,10 +5,10 @@ Database reference: [TB-POC-2018]_ -See :py:class:`mednet.config.data.tbpoc.datamodule.DataModule` for technical +See :py:class:`mednet.libs.classification.config.data.tbpoc.datamodule.DataModule` for technical details. """ -from mednet.config.data.tbpoc.datamodule import DataModule +from mednet.libs.classification.config.data.tbpoc.datamodule import DataModule datamodule = DataModule("fold-7.json") diff --git a/src/mednet/config/data/tbpoc/fold_8.py b/src/mednet/libs/classification/config/data/tbpoc/fold_8.py similarity index 61% rename from src/mednet/config/data/tbpoc/fold_8.py rename to src/mednet/libs/classification/config/data/tbpoc/fold_8.py index f23b85d5bf012e1a3ac1cf2506ffca9efc192ade..4a19a705b7386dd0d073b283727c5091d958184a 100644 --- a/src/mednet/config/data/tbpoc/fold_8.py +++ b/src/mednet/libs/classification/config/data/tbpoc/fold_8.py @@ -5,10 +5,10 @@ Database reference: [TB-POC-2018]_ -See :py:class:`mednet.config.data.tbpoc.datamodule.DataModule` for technical +See :py:class:`mednet.libs.classification.config.data.tbpoc.datamodule.DataModule` for technical details. """ -from mednet.config.data.tbpoc.datamodule import DataModule +from mednet.libs.classification.config.data.tbpoc.datamodule import DataModule datamodule = DataModule("fold-8.json") diff --git a/src/mednet/config/data/tbpoc/fold_9.py b/src/mednet/libs/classification/config/data/tbpoc/fold_9.py similarity index 61% rename from src/mednet/config/data/tbpoc/fold_9.py rename to src/mednet/libs/classification/config/data/tbpoc/fold_9.py index 0391b39cd5d9cfa955114cee4463d77c07c8dfdc..358d305ae2b8b9b85a6c5172c3f3d5b37b066c0b 100644 --- a/src/mednet/config/data/tbpoc/fold_9.py +++ b/src/mednet/libs/classification/config/data/tbpoc/fold_9.py @@ -5,10 +5,10 @@ Database reference: [TB-POC-2018]_ -See :py:class:`mednet.config.data.tbpoc.datamodule.DataModule` for technical +See :py:class:`mednet.libs.classification.config.data.tbpoc.datamodule.DataModule` for technical details. """ -from mednet.config.data.tbpoc.datamodule import DataModule +from mednet.libs.classification.config.data.tbpoc.datamodule import DataModule datamodule = DataModule("fold-9.json") diff --git a/src/mednet/config/data/padchest/__init__.py b/src/mednet/libs/classification/config/data/tbx11k/__init__.py similarity index 100% rename from src/mednet/config/data/padchest/__init__.py rename to src/mednet/libs/classification/config/data/tbx11k/__init__.py diff --git a/src/mednet/config/data/tbx11k/datamodule.py b/src/mednet/libs/classification/config/data/tbx11k/datamodule.py similarity index 97% rename from src/mednet/config/data/tbx11k/datamodule.py rename to src/mednet/libs/classification/config/data/tbx11k/datamodule.py index c6b28ef9237c68a636708312d5147feb8838b8c2..b633d8e9e4d87fdf6c9113f16c2703e3bcf71b1b 100644 --- a/src/mednet/config/data/tbx11k/datamodule.py +++ b/src/mednet/libs/classification/config/data/tbx11k/datamodule.py @@ -10,14 +10,13 @@ import typing import PIL.Image import typing_extensions +from mednet.libs.common.data.datamodule import CachingDataModule +from mednet.libs.common.data.split import make_split +from mednet.libs.common.data.typing import Sample +from mednet.libs.common.data.typing import RawDataLoader as _BaseRawDataLoader from torch.utils.data._utils.collate import default_collate_fn_map from torchvision.transforms.functional import to_tensor -from medbase.data.datamodule import CachingDataModule -from medbase.data.split import make_split -from medbase.data.typing import RawDataLoader as _BaseRawDataLoader -from medbase.data.typing import Sample - from ....utils.rc import load_rc CONFIGURATION_KEY_DATADIR = "datadir." + (__name__.rsplit(".", 2)[-2]) diff --git a/src/mednet/config/data/tbx11k/v1-fold-0.json b/src/mednet/libs/classification/config/data/tbx11k/v1-fold-0.json similarity index 100% rename from src/mednet/config/data/tbx11k/v1-fold-0.json rename to src/mednet/libs/classification/config/data/tbx11k/v1-fold-0.json diff --git a/src/mednet/config/data/tbx11k/v1-fold-1.json b/src/mednet/libs/classification/config/data/tbx11k/v1-fold-1.json similarity index 100% rename from src/mednet/config/data/tbx11k/v1-fold-1.json rename to src/mednet/libs/classification/config/data/tbx11k/v1-fold-1.json diff --git a/src/mednet/config/data/tbx11k/v1-fold-2.json b/src/mednet/libs/classification/config/data/tbx11k/v1-fold-2.json similarity index 100% rename from src/mednet/config/data/tbx11k/v1-fold-2.json rename to src/mednet/libs/classification/config/data/tbx11k/v1-fold-2.json diff --git a/src/mednet/config/data/tbx11k/v1-fold-3.json b/src/mednet/libs/classification/config/data/tbx11k/v1-fold-3.json similarity index 100% rename from src/mednet/config/data/tbx11k/v1-fold-3.json rename to src/mednet/libs/classification/config/data/tbx11k/v1-fold-3.json diff --git a/src/mednet/config/data/tbx11k/v1-fold-4.json b/src/mednet/libs/classification/config/data/tbx11k/v1-fold-4.json similarity index 100% rename from src/mednet/config/data/tbx11k/v1-fold-4.json rename to src/mednet/libs/classification/config/data/tbx11k/v1-fold-4.json diff --git a/src/mednet/config/data/tbx11k/v1-fold-5.json b/src/mednet/libs/classification/config/data/tbx11k/v1-fold-5.json similarity index 100% rename from src/mednet/config/data/tbx11k/v1-fold-5.json rename to src/mednet/libs/classification/config/data/tbx11k/v1-fold-5.json diff --git a/src/mednet/config/data/tbx11k/v1-fold-6.json b/src/mednet/libs/classification/config/data/tbx11k/v1-fold-6.json similarity index 100% rename from src/mednet/config/data/tbx11k/v1-fold-6.json rename to src/mednet/libs/classification/config/data/tbx11k/v1-fold-6.json diff --git a/src/mednet/config/data/tbx11k/v1-fold-7.json b/src/mednet/libs/classification/config/data/tbx11k/v1-fold-7.json similarity index 100% rename from src/mednet/config/data/tbx11k/v1-fold-7.json rename to src/mednet/libs/classification/config/data/tbx11k/v1-fold-7.json diff --git a/src/mednet/config/data/tbx11k/v1-fold-8.json b/src/mednet/libs/classification/config/data/tbx11k/v1-fold-8.json similarity index 100% rename from src/mednet/config/data/tbx11k/v1-fold-8.json rename to src/mednet/libs/classification/config/data/tbx11k/v1-fold-8.json diff --git a/src/mednet/config/data/tbx11k/v1-fold-9.json b/src/mednet/libs/classification/config/data/tbx11k/v1-fold-9.json similarity index 100% rename from src/mednet/config/data/tbx11k/v1-fold-9.json rename to src/mednet/libs/classification/config/data/tbx11k/v1-fold-9.json diff --git a/src/mednet/config/data/tbx11k/v1-healthy-vs-atb.json b/src/mednet/libs/classification/config/data/tbx11k/v1-healthy-vs-atb.json similarity index 100% rename from src/mednet/config/data/tbx11k/v1-healthy-vs-atb.json rename to src/mednet/libs/classification/config/data/tbx11k/v1-healthy-vs-atb.json diff --git a/src/mednet/config/data/tbx11k/v1_fold_0.py b/src/mednet/libs/classification/config/data/tbx11k/v1_fold_0.py similarity index 63% rename from src/mednet/config/data/tbx11k/v1_fold_0.py rename to src/mednet/libs/classification/config/data/tbx11k/v1_fold_0.py index f2d5daa5beb241fb47e2301e0f77af3e1b869f93..c36165610f76b3026e6da28338efe3f525cd3e36 100644 --- a/src/mednet/config/data/tbx11k/v1_fold_0.py +++ b/src/mednet/libs/classification/config/data/tbx11k/v1_fold_0.py @@ -6,10 +6,10 @@ cases). Database reference: [TBX11K-2020]_ -See :py:class:`mednet.config.data.tbx11k.datamodule.DataModule` for technical +See :py:class:`mednet.libs.classification.config.data.tbx11k.datamodule.DataModule` for technical details. """ -from mednet.config.data.tbx11k.datamodule import DataModule +from mednet.libs.classification.config.data.tbx11k.datamodule import DataModule datamodule = DataModule("v1-fold-0.json") diff --git a/src/mednet/config/data/tbx11k/v1_fold_1.py b/src/mednet/libs/classification/config/data/tbx11k/v1_fold_1.py similarity index 63% rename from src/mednet/config/data/tbx11k/v1_fold_1.py rename to src/mednet/libs/classification/config/data/tbx11k/v1_fold_1.py index f137be5962848952cb0efd72902acbe03c55b099..a430dfb72c45a8d9c08e676a555ccec2c82ba5af 100644 --- a/src/mednet/config/data/tbx11k/v1_fold_1.py +++ b/src/mednet/libs/classification/config/data/tbx11k/v1_fold_1.py @@ -6,10 +6,10 @@ cases). Database reference: [TBX11K-2020]_ -See :py:class:`mednet.config.data.tbx11k.datamodule.DataModule` for technical +See :py:class:`mednet.libs.classification.config.data.tbx11k.datamodule.DataModule` for technical details. """ -from mednet.config.data.tbx11k.datamodule import DataModule +from mednet.libs.classification.config.data.tbx11k.datamodule import DataModule datamodule = DataModule("v1-fold-1.json") diff --git a/src/mednet/config/data/tbx11k/v1_fold_2.py b/src/mednet/libs/classification/config/data/tbx11k/v1_fold_2.py similarity index 63% rename from src/mednet/config/data/tbx11k/v1_fold_2.py rename to src/mednet/libs/classification/config/data/tbx11k/v1_fold_2.py index cee8bcd282a4658f00b82737c1158f346da3be87..9de386926c119fb4944fdd633ee4d7087fcdfd07 100644 --- a/src/mednet/config/data/tbx11k/v1_fold_2.py +++ b/src/mednet/libs/classification/config/data/tbx11k/v1_fold_2.py @@ -6,10 +6,10 @@ cases). Database reference: [TBX11K-2020]_ -See :py:class:`mednet.config.data.tbx11k.datamodule.DataModule` for technical +See :py:class:`mednet.libs.classification.config.data.tbx11k.datamodule.DataModule` for technical details. """ -from mednet.config.data.tbx11k.datamodule import DataModule +from mednet.libs.classification.config.data.tbx11k.datamodule import DataModule datamodule = DataModule("v1-fold-2.json") diff --git a/src/mednet/config/data/tbx11k/v1_fold_3.py b/src/mednet/libs/classification/config/data/tbx11k/v1_fold_3.py similarity index 63% rename from src/mednet/config/data/tbx11k/v1_fold_3.py rename to src/mednet/libs/classification/config/data/tbx11k/v1_fold_3.py index 5527c47a4b9de39ff6d992a4115ea0f113e79fed..9e57ebd9232f4a1df903d149062e100d5149dfd5 100644 --- a/src/mednet/config/data/tbx11k/v1_fold_3.py +++ b/src/mednet/libs/classification/config/data/tbx11k/v1_fold_3.py @@ -6,10 +6,10 @@ cases). Database reference: [TBX11K-2020]_ -See :py:class:`mednet.config.data.tbx11k.datamodule.DataModule` for technical +See :py:class:`mednet.libs.classification.config.data.tbx11k.datamodule.DataModule` for technical details. """ -from mednet.config.data.tbx11k.datamodule import DataModule +from mednet.libs.classification.config.data.tbx11k.datamodule import DataModule datamodule = DataModule("v1-fold-3.json") diff --git a/src/mednet/config/data/tbx11k/v1_fold_4.py b/src/mednet/libs/classification/config/data/tbx11k/v1_fold_4.py similarity index 63% rename from src/mednet/config/data/tbx11k/v1_fold_4.py rename to src/mednet/libs/classification/config/data/tbx11k/v1_fold_4.py index 800239d5866c0010f0390e26c5daa8f46f40e3ee..f6236f3b5e524a33bb8da32b85ff49a9a13262fa 100644 --- a/src/mednet/config/data/tbx11k/v1_fold_4.py +++ b/src/mednet/libs/classification/config/data/tbx11k/v1_fold_4.py @@ -6,10 +6,10 @@ cases). Database reference: [TBX11K-2020]_ -See :py:class:`mednet.config.data.tbx11k.datamodule.DataModule` for technical +See :py:class:`mednet.libs.classification.config.data.tbx11k.datamodule.DataModule` for technical details. """ -from mednet.config.data.tbx11k.datamodule import DataModule +from mednet.libs.classification.config.data.tbx11k.datamodule import DataModule datamodule = DataModule("v1-fold-4.json") diff --git a/src/mednet/config/data/tbx11k/v1_fold_5.py b/src/mednet/libs/classification/config/data/tbx11k/v1_fold_5.py similarity index 63% rename from src/mednet/config/data/tbx11k/v1_fold_5.py rename to src/mednet/libs/classification/config/data/tbx11k/v1_fold_5.py index e0ca7876f76baea4a204dd4a1f61eac7ba2d20b1..404195d3b10236e9529656e4543405d1d8854393 100644 --- a/src/mednet/config/data/tbx11k/v1_fold_5.py +++ b/src/mednet/libs/classification/config/data/tbx11k/v1_fold_5.py @@ -6,10 +6,10 @@ cases). Database reference: [TBX11K-2020]_ -See :py:class:`mednet.config.data.tbx11k.datamodule.DataModule` for technical +See :py:class:`mednet.libs.classification.config.data.tbx11k.datamodule.DataModule` for technical details. """ -from mednet.config.data.tbx11k.datamodule import DataModule +from mednet.libs.classification.config.data.tbx11k.datamodule import DataModule datamodule = DataModule("v1-fold-5.json") diff --git a/src/mednet/config/data/tbx11k/v1_fold_6.py b/src/mednet/libs/classification/config/data/tbx11k/v1_fold_6.py similarity index 63% rename from src/mednet/config/data/tbx11k/v1_fold_6.py rename to src/mednet/libs/classification/config/data/tbx11k/v1_fold_6.py index 79ba3cd580f6b4b44df33855ba42afe727996aca..6edf3017b83c8be4f94fad932788c1af402f0b49 100644 --- a/src/mednet/config/data/tbx11k/v1_fold_6.py +++ b/src/mednet/libs/classification/config/data/tbx11k/v1_fold_6.py @@ -6,10 +6,10 @@ cases). Database reference: [TBX11K-2020]_ -See :py:class:`mednet.config.data.tbx11k.datamodule.DataModule` for technical +See :py:class:`mednet.libs.classification.config.data.tbx11k.datamodule.DataModule` for technical details. """ -from mednet.config.data.tbx11k.datamodule import DataModule +from mednet.libs.classification.config.data.tbx11k.datamodule import DataModule datamodule = DataModule("v1-fold-6.json") diff --git a/src/mednet/config/data/tbx11k/v1_fold_7.py b/src/mednet/libs/classification/config/data/tbx11k/v1_fold_7.py similarity index 63% rename from src/mednet/config/data/tbx11k/v1_fold_7.py rename to src/mednet/libs/classification/config/data/tbx11k/v1_fold_7.py index e873f8583667c7c39643bbe32f1b67ce7c582025..71f989ea2c2793453d162ae67264572778eab1dc 100644 --- a/src/mednet/config/data/tbx11k/v1_fold_7.py +++ b/src/mednet/libs/classification/config/data/tbx11k/v1_fold_7.py @@ -6,10 +6,10 @@ cases). Database reference: [TBX11K-2020]_ -See :py:class:`mednet.config.data.tbx11k.datamodule.DataModule` for technical +See :py:class:`mednet.libs.classification.config.data.tbx11k.datamodule.DataModule` for technical details. """ -from mednet.config.data.tbx11k.datamodule import DataModule +from mednet.libs.classification.config.data.tbx11k.datamodule import DataModule datamodule = DataModule("v1-fold-7.json") diff --git a/src/mednet/config/data/tbx11k/v1_fold_8.py b/src/mednet/libs/classification/config/data/tbx11k/v1_fold_8.py similarity index 63% rename from src/mednet/config/data/tbx11k/v1_fold_8.py rename to src/mednet/libs/classification/config/data/tbx11k/v1_fold_8.py index 21aea93e946328107de50a6911a738f4f09e6160..124b64037459c60bb43f0fffb9309ecd775a1b14 100644 --- a/src/mednet/config/data/tbx11k/v1_fold_8.py +++ b/src/mednet/libs/classification/config/data/tbx11k/v1_fold_8.py @@ -6,10 +6,10 @@ cases). Database reference: [TBX11K-2020]_ -See :py:class:`mednet.config.data.tbx11k.datamodule.DataModule` for technical +See :py:class:`mednet.libs.classification.config.data.tbx11k.datamodule.DataModule` for technical details. """ -from mednet.config.data.tbx11k.datamodule import DataModule +from mednet.libs.classification.config.data.tbx11k.datamodule import DataModule datamodule = DataModule("v1-fold-8.json") diff --git a/src/mednet/config/data/tbx11k/v1_fold_9.py b/src/mednet/libs/classification/config/data/tbx11k/v1_fold_9.py similarity index 63% rename from src/mednet/config/data/tbx11k/v1_fold_9.py rename to src/mednet/libs/classification/config/data/tbx11k/v1_fold_9.py index 47e0ae339b5fc47c090c13c0e0a572833724bddb..54f807907088b24ea9fa60b3df3f59e58375b53e 100644 --- a/src/mednet/config/data/tbx11k/v1_fold_9.py +++ b/src/mednet/libs/classification/config/data/tbx11k/v1_fold_9.py @@ -6,10 +6,10 @@ cases). Database reference: [TBX11K-2020]_ -See :py:class:`mednet.config.data.tbx11k.datamodule.DataModule` for technical +See :py:class:`mednet.libs.classification.config.data.tbx11k.datamodule.DataModule` for technical details. """ -from mednet.config.data.tbx11k.datamodule import DataModule +from mednet.libs.classification.config.data.tbx11k.datamodule import DataModule datamodule = DataModule("v1-fold-9.json") diff --git a/src/mednet/config/data/tbx11k/v1_healthy_vs_atb.py b/src/mednet/libs/classification/config/data/tbx11k/v1_healthy_vs_atb.py similarity index 79% rename from src/mednet/config/data/tbx11k/v1_healthy_vs_atb.py rename to src/mednet/libs/classification/config/data/tbx11k/v1_healthy_vs_atb.py index b97d7a52fe168f0f3721f64325a32c1362460817..f66852b98b5b4892dc052220d033850eded4648f 100644 --- a/src/mednet/config/data/tbx11k/v1_healthy_vs_atb.py +++ b/src/mednet/libs/classification/config/data/tbx11k/v1_healthy_vs_atb.py @@ -27,10 +27,10 @@ Split v1 contains healthy subjects against active TB cases (total samples = - Active TB only: 157 - Total: 957 -See :py:class:`mednet.config.data.tbx11k.datamodule.DataModule` for technical +See :py:class:`mednet.libs.classification.config.data.tbx11k.datamodule.DataModule` for technical details. """ -from mednet.config.data.tbx11k.datamodule import DataModule +from mednet.libs.classification.config.data.tbx11k.datamodule import DataModule datamodule = DataModule("v1-healthy-vs-atb.json") diff --git a/src/mednet/config/data/tbx11k/v2-fold-0.json b/src/mednet/libs/classification/config/data/tbx11k/v2-fold-0.json similarity index 100% rename from src/mednet/config/data/tbx11k/v2-fold-0.json rename to src/mednet/libs/classification/config/data/tbx11k/v2-fold-0.json diff --git a/src/mednet/config/data/tbx11k/v2-fold-1.json b/src/mednet/libs/classification/config/data/tbx11k/v2-fold-1.json similarity index 100% rename from src/mednet/config/data/tbx11k/v2-fold-1.json rename to src/mednet/libs/classification/config/data/tbx11k/v2-fold-1.json diff --git a/src/mednet/config/data/tbx11k/v2-fold-2.json b/src/mednet/libs/classification/config/data/tbx11k/v2-fold-2.json similarity index 100% rename from src/mednet/config/data/tbx11k/v2-fold-2.json rename to src/mednet/libs/classification/config/data/tbx11k/v2-fold-2.json diff --git a/src/mednet/config/data/tbx11k/v2-fold-3.json b/src/mednet/libs/classification/config/data/tbx11k/v2-fold-3.json similarity index 100% rename from src/mednet/config/data/tbx11k/v2-fold-3.json rename to src/mednet/libs/classification/config/data/tbx11k/v2-fold-3.json diff --git a/src/mednet/config/data/tbx11k/v2-fold-4.json b/src/mednet/libs/classification/config/data/tbx11k/v2-fold-4.json similarity index 100% rename from src/mednet/config/data/tbx11k/v2-fold-4.json rename to src/mednet/libs/classification/config/data/tbx11k/v2-fold-4.json diff --git a/src/mednet/config/data/tbx11k/v2-fold-5.json b/src/mednet/libs/classification/config/data/tbx11k/v2-fold-5.json similarity index 100% rename from src/mednet/config/data/tbx11k/v2-fold-5.json rename to src/mednet/libs/classification/config/data/tbx11k/v2-fold-5.json diff --git a/src/mednet/config/data/tbx11k/v2-fold-6.json b/src/mednet/libs/classification/config/data/tbx11k/v2-fold-6.json similarity index 100% rename from src/mednet/config/data/tbx11k/v2-fold-6.json rename to src/mednet/libs/classification/config/data/tbx11k/v2-fold-6.json diff --git a/src/mednet/config/data/tbx11k/v2-fold-7.json b/src/mednet/libs/classification/config/data/tbx11k/v2-fold-7.json similarity index 100% rename from src/mednet/config/data/tbx11k/v2-fold-7.json rename to src/mednet/libs/classification/config/data/tbx11k/v2-fold-7.json diff --git a/src/mednet/config/data/tbx11k/v2-fold-8.json b/src/mednet/libs/classification/config/data/tbx11k/v2-fold-8.json similarity index 100% rename from src/mednet/config/data/tbx11k/v2-fold-8.json rename to src/mednet/libs/classification/config/data/tbx11k/v2-fold-8.json diff --git a/src/mednet/config/data/tbx11k/v2-fold-9.json b/src/mednet/libs/classification/config/data/tbx11k/v2-fold-9.json similarity index 100% rename from src/mednet/config/data/tbx11k/v2-fold-9.json rename to src/mednet/libs/classification/config/data/tbx11k/v2-fold-9.json diff --git a/src/mednet/config/data/tbx11k/v2-others-vs-atb.json b/src/mednet/libs/classification/config/data/tbx11k/v2-others-vs-atb.json similarity index 100% rename from src/mednet/config/data/tbx11k/v2-others-vs-atb.json rename to src/mednet/libs/classification/config/data/tbx11k/v2-others-vs-atb.json diff --git a/src/mednet/config/data/tbx11k/v2_fold_0.py b/src/mednet/libs/classification/config/data/tbx11k/v2_fold_0.py similarity index 65% rename from src/mednet/config/data/tbx11k/v2_fold_0.py rename to src/mednet/libs/classification/config/data/tbx11k/v2_fold_0.py index 565bc70653cb1edfe9c5dd40d93b52106b8f5645..230727a8a58f0c8ec541d17a2e12927075a7130d 100644 --- a/src/mednet/config/data/tbx11k/v2_fold_0.py +++ b/src/mednet/libs/classification/config/data/tbx11k/v2_fold_0.py @@ -6,10 +6,10 @@ TB vs. active TB cases). Database reference: [TBX11K-2020]_ -See :py:class:`mednet.config.data.tbx11k.datamodule.DataModule` for technical +See :py:class:`mednet.libs.classification.config.data.tbx11k.datamodule.DataModule` for technical details. """ -from mednet.config.data.tbx11k.datamodule import DataModule +from mednet.libs.classification.config.data.tbx11k.datamodule import DataModule datamodule = DataModule("v2-fold-0.json") diff --git a/src/mednet/config/data/tbx11k/v2_fold_1.py b/src/mednet/libs/classification/config/data/tbx11k/v2_fold_1.py similarity index 65% rename from src/mednet/config/data/tbx11k/v2_fold_1.py rename to src/mednet/libs/classification/config/data/tbx11k/v2_fold_1.py index 77d73704df6040328b0d317dd7c8145b074a2596..e35d4be1221a93a83ca1c1077e0812caa4659cf4 100644 --- a/src/mednet/config/data/tbx11k/v2_fold_1.py +++ b/src/mednet/libs/classification/config/data/tbx11k/v2_fold_1.py @@ -6,10 +6,10 @@ TB vs. active TB cases). Database reference: [TBX11K-2020]_ -See :py:class:`mednet.config.data.tbx11k.datamodule.DataModule` for technical +See :py:class:`mednet.libs.classification.config.data.tbx11k.datamodule.DataModule` for technical details. """ -from mednet.config.data.tbx11k.datamodule import DataModule +from mednet.libs.classification.config.data.tbx11k.datamodule import DataModule datamodule = DataModule("v2-fold-1.json") diff --git a/src/mednet/config/data/tbx11k/v2_fold_2.py b/src/mednet/libs/classification/config/data/tbx11k/v2_fold_2.py similarity index 65% rename from src/mednet/config/data/tbx11k/v2_fold_2.py rename to src/mednet/libs/classification/config/data/tbx11k/v2_fold_2.py index eac8cb9ae2c0f24c0efc97a1c0c232d133c26c6a..491830796eea5e675a4efeb60bf17addb47b6c87 100644 --- a/src/mednet/config/data/tbx11k/v2_fold_2.py +++ b/src/mednet/libs/classification/config/data/tbx11k/v2_fold_2.py @@ -6,10 +6,10 @@ TB vs. active TB cases). Database reference: [TBX11K-2020]_ -See :py:class:`mednet.config.data.tbx11k.datamodule.DataModule` for technical +See :py:class:`mednet.libs.classification.config.data.tbx11k.datamodule.DataModule` for technical details. """ -from mednet.config.data.tbx11k.datamodule import DataModule +from mednet.libs.classification.config.data.tbx11k.datamodule import DataModule datamodule = DataModule("v2-fold-2.json") diff --git a/src/mednet/config/data/tbx11k/v2_fold_3.py b/src/mednet/libs/classification/config/data/tbx11k/v2_fold_3.py similarity index 65% rename from src/mednet/config/data/tbx11k/v2_fold_3.py rename to src/mednet/libs/classification/config/data/tbx11k/v2_fold_3.py index ec0de16516d41408db300f2970cec962dec7d5e4..fc261fccb3cf0b5e95ce11894fade7b21e091d99 100644 --- a/src/mednet/config/data/tbx11k/v2_fold_3.py +++ b/src/mednet/libs/classification/config/data/tbx11k/v2_fold_3.py @@ -6,10 +6,10 @@ TB vs. active TB cases). Database reference: [TBX11K-2020]_ -See :py:class:`mednet.config.data.tbx11k.datamodule.DataModule` for technical +See :py:class:`mednet.libs.classification.config.data.tbx11k.datamodule.DataModule` for technical details. """ -from mednet.config.data.tbx11k.datamodule import DataModule +from mednet.libs.classification.config.data.tbx11k.datamodule import DataModule datamodule = DataModule("v2-fold-3.json") diff --git a/src/mednet/config/data/tbx11k/v2_fold_4.py b/src/mednet/libs/classification/config/data/tbx11k/v2_fold_4.py similarity index 65% rename from src/mednet/config/data/tbx11k/v2_fold_4.py rename to src/mednet/libs/classification/config/data/tbx11k/v2_fold_4.py index f3491d51ab18672b9441b10d2b0eb94b6b4eec1f..7d743ba73478a5d77e0b96e76a1ea72d2077c0cb 100644 --- a/src/mednet/config/data/tbx11k/v2_fold_4.py +++ b/src/mednet/libs/classification/config/data/tbx11k/v2_fold_4.py @@ -6,10 +6,10 @@ TB vs. active TB cases). Database reference: [TBX11K-2020]_ -See :py:class:`mednet.config.data.tbx11k.datamodule.DataModule` for technical +See :py:class:`mednet.libs.classification.config.data.tbx11k.datamodule.DataModule` for technical details. """ -from mednet.config.data.tbx11k.datamodule import DataModule +from mednet.libs.classification.config.data.tbx11k.datamodule import DataModule datamodule = DataModule("v2-fold-4.json") diff --git a/src/mednet/config/data/tbx11k/v2_fold_5.py b/src/mednet/libs/classification/config/data/tbx11k/v2_fold_5.py similarity index 65% rename from src/mednet/config/data/tbx11k/v2_fold_5.py rename to src/mednet/libs/classification/config/data/tbx11k/v2_fold_5.py index 9cb818a42cbb3583fe2e4da8118fbaac923ac020..0b72cfd7e9c5710cc870379b9e0b955958012e49 100644 --- a/src/mednet/config/data/tbx11k/v2_fold_5.py +++ b/src/mednet/libs/classification/config/data/tbx11k/v2_fold_5.py @@ -6,10 +6,10 @@ TB vs. active TB cases). Database reference: [TBX11K-2020]_ -See :py:class:`mednet.config.data.tbx11k.datamodule.DataModule` for technical +See :py:class:`mednet.libs.classification.config.data.tbx11k.datamodule.DataModule` for technical details. """ -from mednet.config.data.tbx11k.datamodule import DataModule +from mednet.libs.classification.config.data.tbx11k.datamodule import DataModule datamodule = DataModule("v2-fold-5.json") diff --git a/src/mednet/config/data/tbx11k/v2_fold_6.py b/src/mednet/libs/classification/config/data/tbx11k/v2_fold_6.py similarity index 65% rename from src/mednet/config/data/tbx11k/v2_fold_6.py rename to src/mednet/libs/classification/config/data/tbx11k/v2_fold_6.py index 15014857119e8613ac9c585e303f72cf15236fac..d530bd58ebd5dc1bed28d6291e75065f0b5724b8 100644 --- a/src/mednet/config/data/tbx11k/v2_fold_6.py +++ b/src/mednet/libs/classification/config/data/tbx11k/v2_fold_6.py @@ -6,10 +6,10 @@ TB vs. active TB cases). Database reference: [TBX11K-2020]_ -See :py:class:`mednet.config.data.tbx11k.datamodule.DataModule` for technical +See :py:class:`mednet.libs.classification.config.data.tbx11k.datamodule.DataModule` for technical details. """ -from mednet.config.data.tbx11k.datamodule import DataModule +from mednet.libs.classification.config.data.tbx11k.datamodule import DataModule datamodule = DataModule("v2-fold-6.json") diff --git a/src/mednet/config/data/tbx11k/v2_fold_7.py b/src/mednet/libs/classification/config/data/tbx11k/v2_fold_7.py similarity index 65% rename from src/mednet/config/data/tbx11k/v2_fold_7.py rename to src/mednet/libs/classification/config/data/tbx11k/v2_fold_7.py index c3a63f6cf542f38a6fe4e561028dbaa6af910f29..f5c6b5260b953c3718e0c050a30948dbb041a2df 100644 --- a/src/mednet/config/data/tbx11k/v2_fold_7.py +++ b/src/mednet/libs/classification/config/data/tbx11k/v2_fold_7.py @@ -6,10 +6,10 @@ TB vs. active TB cases). Database reference: [TBX11K-2020]_ -See :py:class:`mednet.config.data.tbx11k.datamodule.DataModule` for technical +See :py:class:`mednet.libs.classification.config.data.tbx11k.datamodule.DataModule` for technical details. """ -from mednet.config.data.tbx11k.datamodule import DataModule +from mednet.libs.classification.config.data.tbx11k.datamodule import DataModule datamodule = DataModule("v2-fold-7.json") diff --git a/src/mednet/config/data/tbx11k/v2_fold_8.py b/src/mednet/libs/classification/config/data/tbx11k/v2_fold_8.py similarity index 65% rename from src/mednet/config/data/tbx11k/v2_fold_8.py rename to src/mednet/libs/classification/config/data/tbx11k/v2_fold_8.py index 0a4f348eab015215a0fa92a4db5fa639f91bee05..2ea12f81b6270eb3693a5a379cbf556896e602a8 100644 --- a/src/mednet/config/data/tbx11k/v2_fold_8.py +++ b/src/mednet/libs/classification/config/data/tbx11k/v2_fold_8.py @@ -6,10 +6,10 @@ TB vs. active TB cases). Database reference: [TBX11K-2020]_ -See :py:class:`mednet.config.data.tbx11k.datamodule.DataModule` for technical +See :py:class:`mednet.libs.classification.config.data.tbx11k.datamodule.DataModule` for technical details. """ -from mednet.config.data.tbx11k.datamodule import DataModule +from mednet.libs.classification.config.data.tbx11k.datamodule import DataModule datamodule = DataModule("v2-fold-8.json") diff --git a/src/mednet/config/data/tbx11k/v2_fold_9.py b/src/mednet/libs/classification/config/data/tbx11k/v2_fold_9.py similarity index 65% rename from src/mednet/config/data/tbx11k/v2_fold_9.py rename to src/mednet/libs/classification/config/data/tbx11k/v2_fold_9.py index 2c087bd498fb652a219d7c477d6251ffce6c0ae8..8d6953889e85694c4419afed7dce84a9872655bd 100644 --- a/src/mednet/config/data/tbx11k/v2_fold_9.py +++ b/src/mednet/libs/classification/config/data/tbx11k/v2_fold_9.py @@ -6,10 +6,10 @@ TB vs. active TB cases). Database reference: [TBX11K-2020]_ -See :py:class:`mednet.config.data.tbx11k.datamodule.DataModule` for technical +See :py:class:`mednet.libs.classification.config.data.tbx11k.datamodule.DataModule` for technical details. """ -from mednet.config.data.tbx11k.datamodule import DataModule +from mednet.libs.classification.config.data.tbx11k.datamodule import DataModule datamodule = DataModule("v2-fold-9.json") diff --git a/src/mednet/config/data/tbx11k/v2_others_vs_atb.py b/src/mednet/libs/classification/config/data/tbx11k/v2_others_vs_atb.py similarity index 81% rename from src/mednet/config/data/tbx11k/v2_others_vs_atb.py rename to src/mednet/libs/classification/config/data/tbx11k/v2_others_vs_atb.py index 5f50e19d290e84d8961e3ef0e66cb47a96199fc2..cc330216929d4880c4f11ffbb2cc52a99f802c37 100644 --- a/src/mednet/config/data/tbx11k/v2_others_vs_atb.py +++ b/src/mednet/libs/classification/config/data/tbx11k/v2_others_vs_atb.py @@ -27,10 +27,10 @@ active TB cases (total samples = 8369): - Active TB only: 157 - Total: 1793 -See :py:class:`mednet.config.data.tbx11k.datamodule.DataModule` for technical +See :py:class:`mednet.libs.classification.config.data.tbx11k.datamodule.DataModule` for technical details. """ -from mednet.config.data.tbx11k.datamodule import DataModule +from mednet.libs.classification.config.data.tbx11k.datamodule import DataModule datamodule = DataModule("v2-others-vs-atb.json") diff --git a/src/mednet/config/data/shenzhen/__init__.py b/src/mednet/libs/classification/config/models/__init__.py similarity index 100% rename from src/mednet/config/data/shenzhen/__init__.py rename to src/mednet/libs/classification/config/models/__init__.py diff --git a/src/mednet/config/models/alexnet.py b/src/mednet/libs/classification/config/models/alexnet.py similarity index 90% rename from src/mednet/config/models/alexnet.py rename to src/mednet/libs/classification/config/models/alexnet.py index de1e95bf0a5d4b40f2a6f339c5605a936f408e86..6f1505d859c4ceee268663a272126e858919cb5d 100644 --- a/src/mednet/config/models/alexnet.py +++ b/src/mednet/libs/classification/config/models/alexnet.py @@ -8,11 +8,10 @@ page <alexnet-pytorch_>`_), modified for a variable number of outputs (defaults to 1). """ +from mednet.libs.classification.models.alexnet import Alexnet from torch.nn import BCEWithLogitsLoss from torch.optim import SGD -from mednet.models.alexnet import Alexnet - model = Alexnet( loss_type=BCEWithLogitsLoss, optimizer_type=SGD, diff --git a/src/mednet/config/models/alexnet_pretrained.py b/src/mednet/libs/classification/config/models/alexnet_pretrained.py similarity index 91% rename from src/mednet/config/models/alexnet_pretrained.py rename to src/mednet/libs/classification/config/models/alexnet_pretrained.py index f3ed61ba2b8f6d2d7e5cbf0d9554efd5c265546d..9178139add6e5f6291939f8eeee27c1ea9a47b63 100644 --- a/src/mednet/config/models/alexnet_pretrained.py +++ b/src/mednet/libs/classification/config/models/alexnet_pretrained.py @@ -10,11 +10,10 @@ page <alexnet_pytorch_>`), modified for a variable number of outputs N.B.: The output layer is **always** initialized from scratch. """ +from mednet.libs.classification.models.alexnet import Alexnet from torch.nn import BCEWithLogitsLoss from torch.optim import SGD -from mednet.models.alexnet import Alexnet - model = Alexnet( loss_type=BCEWithLogitsLoss, optimizer_type=SGD, diff --git a/src/mednet/config/models/cnn3d.py b/src/mednet/libs/classification/config/models/cnn3d.py similarity index 100% rename from src/mednet/config/models/cnn3d.py rename to src/mednet/libs/classification/config/models/cnn3d.py diff --git a/src/mednet/config/models/densenet.py b/src/mednet/libs/classification/config/models/densenet.py similarity index 89% rename from src/mednet/config/models/densenet.py rename to src/mednet/libs/classification/config/models/densenet.py index 3f3e69072aea5c528afa4e2bc284bfc02c2654db..bac5868cae40e28472af53e7b21617546f012c33 100644 --- a/src/mednet/config/models/densenet.py +++ b/src/mednet/libs/classification/config/models/densenet.py @@ -8,11 +8,10 @@ page <densenet_pytorch_>`), modified for a variable number of outputs (defaults to 1). """ +from mednet.libs.classification.models.densenet import Densenet from torch.nn import BCEWithLogitsLoss from torch.optim import Adam -from mednet.models.densenet import Densenet - model = Densenet( loss_type=BCEWithLogitsLoss, optimizer_type=Adam, diff --git a/src/mednet/config/models/densenet_pretrained.py b/src/mednet/libs/classification/config/models/densenet_pretrained.py similarity index 90% rename from src/mednet/config/models/densenet_pretrained.py rename to src/mednet/libs/classification/config/models/densenet_pretrained.py index d7637a009d6670914edce6bd92e076775a491850..10e4a58c6c7be9ef05298331c4a9d24f1a664804 100644 --- a/src/mednet/config/models/densenet_pretrained.py +++ b/src/mednet/libs/classification/config/models/densenet_pretrained.py @@ -10,11 +10,10 @@ page <alexnet_pytorch_>`), modified for a variable number of outputs N.B.: The output layer is **always** initialized from scratch. """ +from mednet.libs.classification.models.densenet import Densenet from torch.nn import BCEWithLogitsLoss from torch.optim import Adam -from mednet.models.densenet import Densenet - model = Densenet( loss_type=BCEWithLogitsLoss, optimizer_type=Adam, diff --git a/src/mednet/config/models/densenet_rs.py b/src/mednet/libs/classification/config/models/densenet_rs.py similarity index 91% rename from src/mednet/config/models/densenet_rs.py rename to src/mednet/libs/classification/config/models/densenet_rs.py index f91af6318472b9bd22e652bdcf3223b7ef5cd4a1..b3620d68d298ab921ac214389ffb1bc7434d4967 100644 --- a/src/mednet/config/models/densenet_rs.py +++ b/src/mednet/libs/classification/config/models/densenet_rs.py @@ -9,11 +9,10 @@ page <densenet_pytorch_>`), modified to have exactly 14 outputs weights from scratch for radiological sign detection. """ +from mednet.libs.classification.models.densenet import Densenet from torch.nn import BCEWithLogitsLoss from torch.optim import Adam -from mednet.models.densenet import Densenet - model = Densenet( loss_type=BCEWithLogitsLoss, optimizer_type=Adam, diff --git a/src/mednet/config/models/logistic_regression.py b/src/mednet/libs/classification/config/models/logistic_regression.py similarity index 82% rename from src/mednet/config/models/logistic_regression.py rename to src/mednet/libs/classification/config/models/logistic_regression.py index bd327ed4dd5582417907471c9c352f1bb384c718..6917802718359eaaf7c4aafcb2417ffd118b1708 100644 --- a/src/mednet/config/models/logistic_regression.py +++ b/src/mednet/libs/classification/config/models/logistic_regression.py @@ -8,6 +8,8 @@ the output of :py:mod:`.densenet_rs` and be trained for binary classification (e.g. for active TB detection). """ -from mednet.models.logistic_regression import LogisticRegression +from mednet.libs.classification.models.logistic_regression import ( + LogisticRegression, +) model = LogisticRegression(input_size=14) diff --git a/src/mednet/config/models/mlp.py b/src/mednet/libs/classification/config/models/mlp.py similarity index 84% rename from src/mednet/config/models/mlp.py rename to src/mednet/libs/classification/config/models/mlp.py index 4791a8400a577808af2e70879303c69bf2893453..51a28c17858165d4b6eb6ee88eb02802332ecd09 100644 --- a/src/mednet/config/models/mlp.py +++ b/src/mednet/libs/classification/config/models/mlp.py @@ -8,6 +8,6 @@ output (e.g. to predict active TB presence from radiological finding estimates). """ -from mednet.models.mlp import MultiLayerPerceptron +from mednet.libs.classification.models.mlp import MultiLayerPerceptron model = MultiLayerPerceptron() diff --git a/src/mednet/config/models/pasa.py b/src/mednet/libs/classification/config/models/pasa.py similarity index 91% rename from src/mednet/config/models/pasa.py rename to src/mednet/libs/classification/config/models/pasa.py index 2db7c8d9c2bbb74ecb2becbd549237cfde4faf61..faec274496fe6609fbcbcdae9c733a0b71e05a8c 100644 --- a/src/mednet/config/models/pasa.py +++ b/src/mednet/libs/classification/config/models/pasa.py @@ -10,11 +10,10 @@ Screening and Visualization". Reference: [PASA-2019]_ """ +from mednet.libs.classification.models.pasa import Pasa from torch.nn import BCEWithLogitsLoss from torch.optim import Adam -from mednet.models.pasa import Pasa - model = Pasa( loss_type=BCEWithLogitsLoss, optimizer_type=Adam, diff --git a/src/mednet/config/data/tbpoc/__init__.py b/src/mednet/libs/classification/engine/__init__.py similarity index 100% rename from src/mednet/config/data/tbpoc/__init__.py rename to src/mednet/libs/classification/engine/__init__.py diff --git a/src/mednet/engine/evaluator.py b/src/mednet/libs/classification/engine/evaluator.py similarity index 100% rename from src/mednet/engine/evaluator.py rename to src/mednet/libs/classification/engine/evaluator.py diff --git a/src/mednet/engine/predictor.py b/src/mednet/libs/classification/engine/predictor.py similarity index 98% rename from src/mednet/engine/predictor.py rename to src/mednet/libs/classification/engine/predictor.py index 5a5b3545a6a296c1901ac2245b57d72f61b744e3..1701a23ed8a2b517d9ad5fb233e8c365fb45c0bf 100644 --- a/src/mednet/engine/predictor.py +++ b/src/mednet/libs/classification/engine/predictor.py @@ -6,7 +6,7 @@ import logging import lightning.pytorch import torch.utils.data -from medbase.engine.device import DeviceManager +from mednet.libs.common.engine.device import DeviceManager from ..models.typing import ( BinaryPrediction, diff --git a/src/mednet/config/data/tbx11k/__init__.py b/src/mednet/libs/classification/engine/saliency/__init__.py similarity index 100% rename from src/mednet/config/data/tbx11k/__init__.py rename to src/mednet/libs/classification/engine/saliency/__init__.py diff --git a/src/mednet/engine/saliency/completeness.py b/src/mednet/libs/classification/engine/saliency/completeness.py similarity index 99% rename from src/mednet/engine/saliency/completeness.py rename to src/mednet/libs/classification/engine/saliency/completeness.py index 84327ad4a81f544630c4f73d18f30842ebdfb714..e57ba8d1e062383d4b2f9abbe5af52a89bbf845d 100644 --- a/src/mednet/engine/saliency/completeness.py +++ b/src/mednet/libs/classification/engine/saliency/completeness.py @@ -11,8 +11,8 @@ import lightning.pytorch import numpy as np import torch import tqdm -from medbase.data.typing import Sample -from medbase.engine.device import DeviceManager +from mednet.libs.common.data.typing import Sample +from mednet.libs.common.engine.device import DeviceManager from pytorch_grad_cam.metrics.road import ( ROADLeastRelevantFirstAverage, ROADMostRelevantFirstAverage, diff --git a/src/mednet/engine/saliency/evaluator.py b/src/mednet/libs/classification/engine/saliency/evaluator.py similarity index 100% rename from src/mednet/engine/saliency/evaluator.py rename to src/mednet/libs/classification/engine/saliency/evaluator.py diff --git a/src/mednet/engine/saliency/generator.py b/src/mednet/libs/classification/engine/saliency/generator.py similarity index 99% rename from src/mednet/engine/saliency/generator.py rename to src/mednet/libs/classification/engine/saliency/generator.py index ddad6ce7129f0cd0dd3bfa7b44d64dfe8c7551f4..28a11674d027f0a92ba0bb9c5a6096f475899214 100644 --- a/src/mednet/engine/saliency/generator.py +++ b/src/mednet/libs/classification/engine/saliency/generator.py @@ -11,7 +11,7 @@ import numpy import torch import torch.nn import tqdm -from medbase.engine.device import DeviceManager +from mednet.libs.common.engine.device import DeviceManager from ...models.typing import SaliencyMapAlgorithm diff --git a/src/mednet/engine/saliency/interpretability.py b/src/mednet/libs/classification/engine/saliency/interpretability.py similarity index 100% rename from src/mednet/engine/saliency/interpretability.py rename to src/mednet/libs/classification/engine/saliency/interpretability.py diff --git a/src/mednet/engine/saliency/viewer.py b/src/mednet/libs/classification/engine/saliency/viewer.py similarity index 100% rename from src/mednet/engine/saliency/viewer.py rename to src/mednet/libs/classification/engine/saliency/viewer.py diff --git a/src/mednet/config/models/__init__.py b/src/mednet/libs/classification/models/__init__.py similarity index 100% rename from src/mednet/config/models/__init__.py rename to src/mednet/libs/classification/models/__init__.py diff --git a/src/mednet/models/alexnet.py b/src/mednet/libs/classification/models/alexnet.py similarity index 98% rename from src/mednet/models/alexnet.py rename to src/mednet/libs/classification/models/alexnet.py index 5c686de328355a01c1d9caebef227cfaf9518542..481bc03fd3cfd7322187792f5020cd5e71d8aefa 100644 --- a/src/mednet/models/alexnet.py +++ b/src/mednet/libs/classification/models/alexnet.py @@ -11,7 +11,7 @@ import torch.optim.optimizer import torch.utils.data import torchvision.models as models import torchvision.transforms -from medbase.data.typing import TransformSequence +from mednet.libs.common.data.typing import TransformSequence from .model import Model from .separate import separate from .transforms import RGB, SquareCenterPad diff --git a/src/mednet/models/densenet.py b/src/mednet/libs/classification/models/densenet.py similarity index 98% rename from src/mednet/models/densenet.py rename to src/mednet/libs/classification/models/densenet.py index e9433b994b5373f997ea9f880519e115bf75db94..bd7b83d8bfdd8d1f05c94adfc1a7a92461f74369 100644 --- a/src/mednet/models/densenet.py +++ b/src/mednet/libs/classification/models/densenet.py @@ -11,7 +11,7 @@ import torch.optim.optimizer import torch.utils.data import torchvision.models as models import torchvision.transforms -from medbase.data.typing import TransformSequence +from mednet.libs.common.data.typing import TransformSequence from .model import Model from .separate import separate from .transforms import RGB, SquareCenterPad diff --git a/src/mednet/models/logistic_regression.py b/src/mednet/libs/classification/models/logistic_regression.py similarity index 100% rename from src/mednet/models/logistic_regression.py rename to src/mednet/libs/classification/models/logistic_regression.py diff --git a/src/mednet/models/loss_weights.py b/src/mednet/libs/classification/models/loss_weights.py similarity index 98% rename from src/mednet/models/loss_weights.py rename to src/mednet/libs/classification/models/loss_weights.py index 2264a44da1c9ebacf3a3eef193a23b62706fc3e2..8111c354f1163ad5febbe4629868da3fa901618a 100644 --- a/src/mednet/models/loss_weights.py +++ b/src/mednet/libs/classification/models/loss_weights.py @@ -8,7 +8,7 @@ from collections import Counter import torch import torch.utils.data -from medbase.data.typing import DataLoader +from mednet.libs.common.data.typing import DataLoader logger = logging.getLogger("mednet") diff --git a/src/mednet/models/mlp.py b/src/mednet/libs/classification/models/mlp.py similarity index 100% rename from src/mednet/models/mlp.py rename to src/mednet/libs/classification/models/mlp.py diff --git a/src/mednet/models/normalizer.py b/src/mednet/libs/classification/models/normalizer.py similarity index 100% rename from src/mednet/models/normalizer.py rename to src/mednet/libs/classification/models/normalizer.py diff --git a/src/mednet/models/pasa.py b/src/mednet/libs/classification/models/pasa.py similarity index 99% rename from src/mednet/models/pasa.py rename to src/mednet/libs/classification/models/pasa.py index f6e83d83f0aa85fc7fd37dd8ce2551a823001e4a..4fddda019a86057753e5e7361e7f03198df12d61 100644 --- a/src/mednet/models/pasa.py +++ b/src/mednet/libs/classification/models/pasa.py @@ -11,7 +11,7 @@ import torch.nn.functional as F # noqa: N812 import torch.optim.optimizer import torch.utils.data import torchvision.transforms -from medbase.data.typing import TransformSequence +from mednet.libs.common.data.typing import TransformSequence from .model import Model from .separate import separate from .transforms import Grayscale, SquareCenterPad diff --git a/src/mednet/models/separate.py b/src/mednet/libs/classification/models/separate.py similarity index 97% rename from src/mednet/models/separate.py rename to src/mednet/libs/classification/models/separate.py index 6c7afabb5769b4e5f805c9723b28a81e85facc0a..5d6065a867ac2bd104d9495a757756a65d2ae6d7 100644 --- a/src/mednet/models/separate.py +++ b/src/mednet/libs/classification/models/separate.py @@ -6,8 +6,7 @@ import typing import torch - -from medbase.data.typing import Sample +from mednet.libs.common.data.typing import Sample from .typing import BinaryPrediction, MultiClassPrediction diff --git a/src/mednet/models/transforms.py b/src/mednet/libs/classification/models/transforms.py similarity index 100% rename from src/mednet/models/transforms.py rename to src/mednet/libs/classification/models/transforms.py diff --git a/src/mednet/models/typing.py b/src/mednet/libs/classification/models/typing.py similarity index 100% rename from src/mednet/models/typing.py rename to src/mednet/libs/classification/models/typing.py diff --git a/src/mednet/engine/__init__.py b/src/mednet/libs/classification/scripts/__init__.py similarity index 100% rename from src/mednet/engine/__init__.py rename to src/mednet/libs/classification/scripts/__init__.py diff --git a/src/mednet/libs/classification/scripts/cli.py b/src/mednet/libs/classification/scripts/cli.py new file mode 100644 index 0000000000000000000000000000000000000000..70db90d60caf29a4fc90a01cc0288a7d11dac265 --- /dev/null +++ b/src/mednet/libs/classification/scripts/cli.py @@ -0,0 +1,77 @@ +# Copyright © 2022 Idiap Research Institute <contact@idiap.ch> +# +# SPDX-License-Identifier: GPL-3.0-or-later + +import importlib + +import click +from clapper.click import AliasedGroup + + +@click.group( + cls=AliasedGroup, + context_settings=dict(help_option_names=["-?", "-h", "--help"]), +) +def classification(): + """Image classification benchmark.""" + pass + + +classification.add_command( + importlib.import_module("..config", package=__name__).config +) +classification.add_command( + importlib.import_module("..database", package=__name__).database, +) +classification.add_command( + importlib.import_module("..evaluate", package=__name__).evaluate, +) +classification.add_command( + importlib.import_module("..experiment", package=__name__).experiment, +) +classification.add_command( + importlib.import_module("..predict", package=__name__).predict +) +classification.add_command( + importlib.import_module("..train", package=__name__).train +) +classification.add_command( + importlib.import_module( + "..train_analysis", + package=__name__, + ).train_analysis, +) + + +@click.group( + cls=AliasedGroup, + context_settings=dict(help_option_names=["-?", "-h", "--help"]), +) +def saliency(): + """Generate, evaluate and view saliency maps.""" + pass + + +classification.add_command(saliency) + +saliency.add_command( + importlib.import_module("..saliency.generate", package=__name__).generate, +) +saliency.add_command( + importlib.import_module( + "..saliency.completeness", + package=__name__, + ).completeness, +) +saliency.add_command( + importlib.import_module( + "..saliency.interpretability", + package=__name__, + ).interpretability, +) +saliency.add_command( + importlib.import_module("..saliency.evaluate", package=__name__).evaluate, +) +saliency.add_command( + importlib.import_module("..saliency.view", package=__name__).view, +) diff --git a/src/mednet/scripts/click.py b/src/mednet/libs/classification/scripts/click.py similarity index 100% rename from src/mednet/scripts/click.py rename to src/mednet/libs/classification/scripts/click.py diff --git a/src/mednet/scripts/config.py b/src/mednet/libs/classification/scripts/config.py similarity index 95% rename from src/mednet/scripts/config.py rename to src/mednet/libs/classification/scripts/config.py index a6acc885c917634d75c95a59a19545c219f78969..3b48a197edd9944d86b4ae239bc991eaa3bc292a 100644 --- a/src/mednet/scripts/config.py +++ b/src/mednet/libs/classification/scripts/config.py @@ -25,7 +25,7 @@ def config(): epilog="""Examples: \b - 1. Lists all configuration resources (type: mednet.config) installed: + 1. Lists all configuration resources (type: mednet.libs.classification.config) installed: .. code:: sh @@ -46,7 +46,7 @@ def config(): def list_(verbose) -> None: # numpydoc ignore=PR01 """List configuration files installed.""" entry_points = importlib.metadata.entry_points().select( - group="mednet.config", + group="mednet.libs.classification.config", ) entry_point_dict = {k.name: k for k in entry_points} @@ -125,7 +125,7 @@ def list_(verbose) -> None: # numpydoc ignore=PR01 def describe(name, verbose) -> None: # numpydoc ignore=PR01 """Describe a specific configuration file.""" entry_points = importlib.metadata.entry_points().select( - group="mednet.config", + group="mednet.libs.classification.config", ) entry_point_dict = {k.name: k for k in entry_points} @@ -178,7 +178,7 @@ def copy(source, destination) -> None: # numpydoc ignore=PR01 import shutil entry_points = importlib.metadata.entry_points().select( - group="mednet.config", + group="mednet.libs.classification.config", ) entry_point_dict = {k.name: k for k in entry_points} diff --git a/src/mednet/scripts/database.py b/src/mednet/libs/classification/scripts/database.py similarity index 95% rename from src/mednet/scripts/database.py rename to src/mednet/libs/classification/scripts/database.py index 38efd89af335ac616702033d40a2d44d84076f40..d918ad6dc2c8874688a13b85a78c9ab5ee6be8dd 100644 --- a/src/mednet/scripts/database.py +++ b/src/mednet/libs/classification/scripts/database.py @@ -19,7 +19,7 @@ def _get_raw_databases() -> dict[str, dict[str, str]]: containing two string keys: * ``module``: the full Pythonic module name (e.g. - ``mednet.data.montgomery``). + ``mednet.libs.classification.data.montgomery``). * ``datadir``: points to the user-configured data directory for the current dataset, if set, or ``None`` otherwise. """ @@ -70,7 +70,7 @@ def database() -> None: 1. To install a database, set up its data directory ("datadir"). For example, to setup access to Montgomery files you downloaded locally at the directory "/path/to/montgomery/files", edit the RC file (typically - ``$HOME/.config/mednet.toml``), and add a line like the following: + ``$HOME/.config/mednet.libs.classification.toml``), and add a line like the following: .. code:: toml @@ -140,7 +140,9 @@ def check(split, limit): # numpydoc ignore=PR01 click.secho(f"Checking split `{split}`...", fg="yellow") try: - module = importlib.metadata.entry_points(group="mednet.config")[split].module + module = importlib.metadata.entry_points( + group="mednet.libs.classification.config" + )[split].module except KeyError: raise Exception(f"Could not find database split `{split}`") diff --git a/src/mednet/scripts/evaluate.py b/src/mednet/libs/classification/scripts/evaluate.py similarity index 99% rename from src/mednet/scripts/evaluate.py rename to src/mednet/libs/classification/scripts/evaluate.py index 19e01f8dbe0f0f89dbd9517ba8615f2109b15d12..bd3a48f7c58627e1ac4fd6c50408cb30dbfa1aea 100644 --- a/src/mednet/scripts/evaluate.py +++ b/src/mednet/libs/classification/scripts/evaluate.py @@ -17,7 +17,7 @@ logger = setup(__name__.split(".")[0], format="%(levelname)s: %(message)s") @click.command( - entry_point_group="mednet.config", + entry_point_group="mednet.libs.classification.config", cls=ConfigCommand, epilog="""Examples: diff --git a/src/mednet/scripts/experiment.py b/src/mednet/libs/classification/scripts/experiment.py similarity index 99% rename from src/mednet/scripts/experiment.py rename to src/mednet/libs/classification/scripts/experiment.py index ad4de8bcd7eff7684eb79cfcec0e963f33d35492..b0bedb0d408e384496a8c5a2cbbe267aa5d70eae 100644 --- a/src/mednet/scripts/experiment.py +++ b/src/mednet/libs/classification/scripts/experiment.py @@ -17,7 +17,7 @@ logger = setup(__name__.split(".")[0], format="%(levelname)s: %(message)s") @click.command( - entry_point_group="mednet.config", + entry_point_group="mednet.libs.classification.config", cls=ConfigCommand, epilog="""Examples: diff --git a/src/mednet/scripts/predict.py b/src/mednet/libs/classification/scripts/predict.py similarity index 94% rename from src/mednet/scripts/predict.py rename to src/mednet/libs/classification/scripts/predict.py index ffd42affe8f148dc1b55386c2e49b0a68d4d6704..e67a97476753d73c347a253ff1272e6f7955acea 100644 --- a/src/mednet/scripts/predict.py +++ b/src/mednet/libs/classification/scripts/predict.py @@ -14,7 +14,7 @@ logger = setup(__name__.split(".")[0], format="%(levelname)s: %(message)s") @click.command( - entry_point_group="mednet.config", + entry_point_group="mednet.libs.classification.config", cls=ConfigCommand, epilog="""Examples: @@ -134,9 +134,12 @@ def predict( import shutil import typing - from medbase.engine.device import DeviceManager - from mednet.engine.predictor import run - from medbase.utils.checkpointer import get_checkpoint_to_run_inference + from mednet.libs.classification.engine.predictor import run + from mednet.libs.common.engine.device import DeviceManager + from mednet.libs.common.utils.checkpointer import ( + get_checkpoint_to_run_inference, + ) + from .utils import ( device_properties, execution_metadata, diff --git a/src/mednet/engine/saliency/__init__.py b/src/mednet/libs/classification/scripts/saliency/__init__.py similarity index 100% rename from src/mednet/engine/saliency/__init__.py rename to src/mednet/libs/classification/scripts/saliency/__init__.py diff --git a/src/mednet/scripts/saliency/completeness.py b/src/mednet/libs/classification/scripts/saliency/completeness.py similarity index 97% rename from src/mednet/scripts/saliency/completeness.py rename to src/mednet/libs/classification/scripts/saliency/completeness.py index 28a3369517a7e6660dff371e7b8f93bfeb31acf3..9ac006d542f057303f179027e6626597fd803ef0 100644 --- a/src/mednet/scripts/saliency/completeness.py +++ b/src/mednet/libs/classification/scripts/saliency/completeness.py @@ -16,7 +16,7 @@ logger = setup(__name__.split(".")[0], format="%(levelname)s: %(message)s") @click.command( - entry_point_group="mednet.config", + entry_point_group="mednet.libs.classification.config", cls=ConfigCommand, epilog="""Examples: @@ -203,8 +203,10 @@ def completeness( """ import json - from medbase.engine.device import DeviceManager - from medbase.utils.checkpointer import get_checkpoint_to_run_inference + from mednet.libs.common.engine.device import DeviceManager + from mednet.libs.common.utils.checkpointer import ( + get_checkpoint_to_run_inference, + ) from ...engine.saliency.completeness import run diff --git a/src/mednet/scripts/saliency/evaluate.py b/src/mednet/libs/classification/scripts/saliency/evaluate.py similarity index 98% rename from src/mednet/scripts/saliency/evaluate.py rename to src/mednet/libs/classification/scripts/saliency/evaluate.py index 5e64d240e4fd4f53ceb0f182c2f82dcd263a23ce..93390e040eb4bc27ae9cbbc2fdac0afe64771cf4 100644 --- a/src/mednet/scripts/saliency/evaluate.py +++ b/src/mednet/libs/classification/scripts/saliency/evaluate.py @@ -19,7 +19,7 @@ logger = setup(__name__.split(".")[0], format="%(levelname)s: %(message)s") @click.command( - entry_point_group="mednet.config", + entry_point_group="mednet.libs.classification.config", cls=ConfigCommand, epilog="""Examples: diff --git a/src/mednet/scripts/saliency/generate.py b/src/mednet/libs/classification/scripts/saliency/generate.py similarity index 96% rename from src/mednet/scripts/saliency/generate.py rename to src/mednet/libs/classification/scripts/saliency/generate.py index 34fb8382a4ecce911edd866d40d36dd52f160ff9..d4e8fd92dcd8dae0e6d25e12507b5acc8fbffcf9 100644 --- a/src/mednet/scripts/saliency/generate.py +++ b/src/mednet/libs/classification/scripts/saliency/generate.py @@ -16,7 +16,7 @@ logger = setup(__name__.split(".")[0], format="%(levelname)s: %(message)s") @click.command( - entry_point_group="mednet.config", + entry_point_group="mednet.libs.classification.config", cls=ConfigCommand, epilog="""Examples: @@ -169,8 +169,10 @@ def generate( algorithm and trained model. """ - from medbase.engine.device import DeviceManager - from medbase.utils.checkpointer import get_checkpoint_to_run_inference + from mednet.libs.common.engine.device import DeviceManager + from mednet.libs.common.utils.checkpointer import ( + get_checkpoint_to_run_inference, + ) from ...engine.saliency.generator import run diff --git a/src/mednet/scripts/saliency/interpretability.py b/src/mednet/libs/classification/scripts/saliency/interpretability.py similarity index 98% rename from src/mednet/scripts/saliency/interpretability.py rename to src/mednet/libs/classification/scripts/saliency/interpretability.py index 7bc6b891cb7f5307ced52c4526427e1ba9b7b555..65a117d3073eefed8b4690ebaa3ca74d59444b9f 100644 --- a/src/mednet/scripts/saliency/interpretability.py +++ b/src/mednet/libs/classification/scripts/saliency/interpretability.py @@ -14,7 +14,7 @@ logger = setup(__name__.split(".")[0], format="%(levelname)s: %(message)s") @click.command( - entry_point_group="mednet.config", + entry_point_group="mednet.libs.classification.config", cls=ConfigCommand, epilog="""Examples: diff --git a/src/mednet/scripts/saliency/view.py b/src/mednet/libs/classification/scripts/saliency/view.py similarity index 98% rename from src/mednet/scripts/saliency/view.py rename to src/mednet/libs/classification/scripts/saliency/view.py index 270ccbfebf86418bf458add62e71f0cda6baad67..3ad74497fa88f549171b437b91271a31ab191349 100644 --- a/src/mednet/scripts/saliency/view.py +++ b/src/mednet/libs/classification/scripts/saliency/view.py @@ -12,7 +12,7 @@ logger = setup(__name__.split(".")[0], format="%(levelname)s: %(message)s") @click.command( - entry_point_group="mednet.config", + entry_point_group="mednet.libs.classification.config", cls=ConfigCommand, epilog="""Examples: diff --git a/src/mednet/scripts/train.py b/src/mednet/libs/classification/scripts/train.py similarity index 97% rename from src/mednet/scripts/train.py rename to src/mednet/libs/classification/scripts/train.py index 2fd63221fda89033cb87d46dea16e89a302f6d98..ea09def8d0ce69ad0f42be23d4fe7b5ec6d5b566 100644 --- a/src/mednet/scripts/train.py +++ b/src/mednet/libs/classification/scripts/train.py @@ -230,7 +230,7 @@ def reusable_options(f): @click.command( - entry_point_group="mednet.config", + entry_point_group="mednet.libs.classification.config", cls=ConfigCommand, epilog="""Examples: @@ -272,9 +272,11 @@ def train( import torch from lightning.pytorch import seed_everything - from medbase.engine.device import DeviceManager - from medbase.engine.trainer import run - from medbase.utils.checkpointer import get_checkpoint_to_resume_training + from mednet.libs.common.engine.device import DeviceManager + from mednet.libs.common.engine.trainer import run + from mednet.libs.common.utils.checkpointer import ( + get_checkpoint_to_resume_training, + ) from .utils import ( device_properties, diff --git a/src/mednet/scripts/train_analysis.py b/src/mednet/libs/classification/scripts/train_analysis.py similarity index 99% rename from src/mednet/scripts/train_analysis.py rename to src/mednet/libs/classification/scripts/train_analysis.py index 3938e22604fe4704bfd1d40b008acb0041ecd6af..bf3efe885b7b9f374dc96bd6035c46881b2f279b 100644 --- a/src/mednet/scripts/train_analysis.py +++ b/src/mednet/libs/classification/scripts/train_analysis.py @@ -230,8 +230,7 @@ def train_analysis( """Create a plot for each metric in the training logs and saves them in a .pdf file.""" import matplotlib.pyplot as plt from matplotlib.backends.backend_pdf import PdfPages - - from medbase.utils.tensorboard import scalars_to_dict + from mednet.libs.common.utils.tensorboard import scalars_to_dict data = scalars_to_dict(logdir) diff --git a/src/mednet/scripts/utils.py b/src/mednet/libs/classification/scripts/utils.py similarity index 98% rename from src/mednet/scripts/utils.py rename to src/mednet/libs/classification/scripts/utils.py index 164f46b4831fd6b82e42d8507441d65ea7805614..c11cc8fbfc23dad1d7b76c0657d8bd2f69dd71ad 100644 --- a/src/mednet/scripts/utils.py +++ b/src/mednet/libs/classification/scripts/utils.py @@ -12,7 +12,7 @@ import shutil import lightning.pytorch import lightning.pytorch.callbacks import torch.nn -from medbase.engine.device import SupportedPytorchDevice +from mednet.libs.common.engine.device import SupportedPytorchDevice logger = logging.getLogger("mednet") @@ -58,7 +58,7 @@ def device_properties( Static properties of the current machine. """ - from medbase.utils.resources import ( + from mednet.libs.common.utils.resources import ( cpu_constants, cuda_constants, mps_constants, diff --git a/src/mednet/models/__init__.py b/src/mednet/libs/classification/utils/__init__.py similarity index 100% rename from src/mednet/models/__init__.py rename to src/mednet/libs/classification/utils/__init__.py diff --git a/src/mednet/utils/gitlab.py b/src/mednet/libs/classification/utils/gitlab.py similarity index 100% rename from src/mednet/utils/gitlab.py rename to src/mednet/libs/classification/utils/gitlab.py diff --git a/src/mednet/utils/rc.py b/src/mednet/libs/classification/utils/rc.py similarity index 100% rename from src/mednet/utils/rc.py rename to src/mednet/libs/classification/utils/rc.py diff --git a/src/mednet/scripts/__init__.py b/src/mednet/libs/common/__init__.py similarity index 100% rename from src/mednet/scripts/__init__.py rename to src/mednet/libs/common/__init__.py diff --git a/src/medbase/data/__init__.py b/src/mednet/libs/common/data/__init__.py similarity index 100% rename from src/medbase/data/__init__.py rename to src/mednet/libs/common/data/__init__.py diff --git a/src/medbase/data/augmentations.py b/src/mednet/libs/common/data/augmentations.py similarity index 99% rename from src/medbase/data/augmentations.py rename to src/mednet/libs/common/data/augmentations.py index ff3f438e6f411d508a92643efdf1e0840b5a9391..cd186191291f2d6c8b4a89c21afb310499c81739 100644 --- a/src/medbase/data/augmentations.py +++ b/src/mednet/libs/common/data/augmentations.py @@ -22,7 +22,7 @@ import numpy.typing import torch from scipy.ndimage import gaussian_filter, map_coordinates -logger = logging.getLogger("mednet.medbase") +logger = logging.getLogger("mednet.libs.classification.common") def _elastic_deformation_on_image( diff --git a/src/medbase/data/datamodule.py b/src/mednet/libs/common/data/datamodule.py similarity index 99% rename from src/medbase/data/datamodule.py rename to src/mednet/libs/common/data/datamodule.py index 1d6c14ebd084b583985bd3a2eb59791a4c2743dd..e6d0ca0e6dd38cbf6b4c1ada161294e57c7f2d02 100644 --- a/src/medbase/data/datamodule.py +++ b/src/mednet/libs/common/data/datamodule.py @@ -27,7 +27,7 @@ from .typing import ( TransformSequence, ) -logger = logging.getLogger("mednet.medbase") +logger = logging.getLogger("mednet.libs.classification.common") def _sample_size_bytes(s: Sample) -> int: diff --git a/src/medbase/data/image_utils.py b/src/mednet/libs/common/data/image_utils.py similarity index 100% rename from src/medbase/data/image_utils.py rename to src/mednet/libs/common/data/image_utils.py diff --git a/src/medbase/data/split.py b/src/mednet/libs/common/data/split.py similarity index 97% rename from src/medbase/data/split.py rename to src/mednet/libs/common/data/split.py index 3b412d9673d45535d314bca32b825e173a9d0cfe..64c23fed4a8811ed788d2f4edb0ecab1c43b308d 100644 --- a/src/medbase/data/split.py +++ b/src/mednet/libs/common/data/split.py @@ -11,10 +11,9 @@ import pathlib import typing import torch +from mednet.libs.common.data.typing import DatabaseSplit, RawDataLoader -from medbase.data.typing import DatabaseSplit, RawDataLoader - -logger = logging.getLogger("mednet.medbase") +logger = logging.getLogger("mednet.libs.classification.common") class JSONDatabaseSplit(DatabaseSplit): diff --git a/src/medbase/data/typing.py b/src/mednet/libs/common/data/typing.py similarity index 100% rename from src/medbase/data/typing.py rename to src/mednet/libs/common/data/typing.py diff --git a/src/mednet/scripts/saliency/__init__.py b/src/mednet/libs/common/engine/__init__.py similarity index 100% rename from src/mednet/scripts/saliency/__init__.py rename to src/mednet/libs/common/engine/__init__.py diff --git a/src/medbase/engine/callbacks.py b/src/mednet/libs/common/engine/callbacks.py similarity index 99% rename from src/medbase/engine/callbacks.py rename to src/mednet/libs/common/engine/callbacks.py index bd4755eb221b43f9405307e6d4b6a928315a77c8..652f7fee5e2c949fb1361a247450ff783ade849a 100644 --- a/src/medbase/engine/callbacks.py +++ b/src/mednet/libs/common/engine/callbacks.py @@ -13,7 +13,7 @@ import torch from ..utils.resources import ResourceMonitor, aggregate -logger = logging.getLogger("mednet.medbase") +logger = logging.getLogger("mednet.libs.classification.common") class LoggingCallback(lightning.pytorch.Callback): diff --git a/src/medbase/engine/device.py b/src/mednet/libs/common/engine/device.py similarity index 98% rename from src/medbase/engine/device.py rename to src/mednet/libs/common/engine/device.py index 851b053953ecc1b8f5c99e5fc4481aa8e91c4cce..efbbbd771b7d04b0b647e2ec36413037a4f2fe4d 100644 --- a/src/medbase/engine/device.py +++ b/src/mednet/libs/common/engine/device.py @@ -9,7 +9,7 @@ import typing import torch import torch.backends -logger = logging.getLogger("mednet.medbase") +logger = logging.getLogger("mednet.libs.classification.common") SupportedPytorchDevice: typing.TypeAlias = typing.Literal[ diff --git a/src/medbase/engine/loggers.py b/src/mednet/libs/common/engine/loggers.py similarity index 100% rename from src/medbase/engine/loggers.py rename to src/mednet/libs/common/engine/loggers.py diff --git a/src/medbase/engine/trainer.py b/src/mednet/libs/common/engine/trainer.py similarity index 98% rename from src/medbase/engine/trainer.py rename to src/mednet/libs/common/engine/trainer.py index 79b509fe51ec883eb3d64994eba64d029285578e..7d0e8b38cd0455e7d92830db0eb97ea3f983ae5c 100644 --- a/src/medbase/engine/trainer.py +++ b/src/mednet/libs/common/engine/trainer.py @@ -15,7 +15,7 @@ from ..utils.resources import ResourceMonitor from .callbacks import LoggingCallback from .device import DeviceManager -logger = logging.getLogger("mednet.medbase") +logger = logging.getLogger("mednet.libs.classification.common") def run( diff --git a/src/mednet/utils/__init__.py b/src/mednet/libs/common/utils/__init__.py similarity index 100% rename from src/mednet/utils/__init__.py rename to src/mednet/libs/common/utils/__init__.py diff --git a/src/medbase/utils/checkpointer.py b/src/mednet/libs/common/utils/checkpointer.py similarity index 98% rename from src/medbase/utils/checkpointer.py rename to src/mednet/libs/common/utils/checkpointer.py index 44e61da870201b1483a92d214e7e5bcb1dc7b8ec..a063dbe038f2a0f79969dad50fca90ad641ac9ef 100644 --- a/src/medbase/utils/checkpointer.py +++ b/src/mednet/libs/common/utils/checkpointer.py @@ -7,7 +7,7 @@ import pathlib import re import typing -logger = logging.getLogger("mednet.medbase") +logger = logging.getLogger("mednet.libs.classification.common") CHECKPOINT_ALIASES = { diff --git a/src/medbase/utils/resources.py b/src/mednet/libs/common/utils/resources.py similarity index 99% rename from src/medbase/utils/resources.py rename to src/mednet/libs/common/utils/resources.py index 645bf76a0c0429ba172025ca9ce304bb340129ae..ca99d2f71c94c485056eaaae84d2a0a023e90f3c 100644 --- a/src/medbase/utils/resources.py +++ b/src/mednet/libs/common/utils/resources.py @@ -17,8 +17,7 @@ import warnings import numpy import psutil - -from medbase.engine.device import SupportedPytorchDevice +from mednet.libs.common.engine.device import SupportedPytorchDevice logger = logging.getLogger("mednet") diff --git a/src/medbase/utils/summary.py b/src/mednet/libs/common/utils/summary.py similarity index 90% rename from src/medbase/utils/summary.py rename to src/mednet/libs/common/utils/summary.py index bff705e30b557a0314dfef929535671e3dad7f81..e559e565653a7fda8e3bbf6eefc0773c6754f2b2 100644 --- a/src/medbase/utils/summary.py +++ b/src/mednet/libs/common/utils/summary.py @@ -7,7 +7,6 @@ from functools import reduce import torch - from torch.nn.modules.module import _addindent @@ -21,18 +20,18 @@ def _repr(model: torch.nn.Module) -> tuple[str, int]: extra_lines = extra_repr.split("\n") child_lines = [] total_params = 0 - for key, module in model._modules.items(): + for key, module in model._modules.items(): # noqa: SLF001 mod_str, num_params = _repr(module) mod_str = _addindent(mod_str, 2) child_lines.append("(" + key + "): " + mod_str) total_params += num_params lines = extra_lines + child_lines - for _, p in model._parameters.items(): + for _, p in model._parameters.items(): # noqa: SLF001 if hasattr(p, "dtype"): total_params += reduce(lambda x, y: x * y, p.shape) - main_str = model._get_name() + "(" + main_str = model._get_name() + "(" # noqa: SLF001 if lines: # simple one-liner info, which most builtin Modules will use if len(extra_lines) == 1 and not child_lines: diff --git a/src/medbase/utils/tensorboard.py b/src/mednet/libs/common/utils/tensorboard.py similarity index 100% rename from src/medbase/utils/tensorboard.py rename to src/mednet/libs/common/utils/tensorboard.py diff --git a/src/mednet/scripts/cli.py b/src/mednet/scripts/cli.py index 5fdec35ec1e583800f7f454620a9365be54cc918..322b8844ea9345b8ceca181f4aebf3b64b590da2 100644 --- a/src/mednet/scripts/cli.py +++ b/src/mednet/scripts/cli.py @@ -1,11 +1,6 @@ -# Copyright © 2022 Idiap Research Institute <contact@idiap.ch> -# -# SPDX-License-Identifier: GPL-3.0-or-later - -import importlib - import click from clapper.click import AliasedGroup +from mednet.libs.classification.scripts.cli import classification @click.group( @@ -17,58 +12,4 @@ def cli(): pass -cli.add_command(importlib.import_module("..info", package=__name__).info) -cli.add_command(importlib.import_module("..config", package=__name__).config) -cli.add_command( - importlib.import_module("..database", package=__name__).database, -) -cli.add_command( - importlib.import_module("..evaluate", package=__name__).evaluate, -) -cli.add_command( - importlib.import_module("..experiment", package=__name__).experiment, -) -cli.add_command(importlib.import_module("..predict", package=__name__).predict) -cli.add_command(importlib.import_module("..train", package=__name__).train) -cli.add_command( - importlib.import_module( - "..train_analysis", - package=__name__, - ).train_analysis, -) - - -@click.group( - cls=AliasedGroup, - context_settings=dict(help_option_names=["-?", "-h", "--help"]), -) -def saliency(): - """Generate, evaluate and view saliency maps.""" - pass - - -cli.add_command(saliency) - -saliency.add_command( - importlib.import_module("..saliency.generate", package=__name__).generate, -) -saliency.add_command( - importlib.import_module( - "..saliency.completeness", - package=__name__, - ).completeness, -) -saliency.add_command( - importlib.import_module( - "..saliency.interpretability", - package=__name__, - ).interpretability, -) -saliency.add_command( - importlib.import_module("..saliency.evaluate", package=__name__).evaluate, -) -saliency.add_command( - importlib.import_module("..saliency.view", package=__name__).view, -) - -cli.add_command(importlib.import_module("..upload", package=__name__).upload) +cli.add_command(classification) diff --git a/tests/conftest.py b/tests/conftest.py index 89b055ec4de60cab6cacd3b4986aefd5fda91c1d..a024dbbc29345fde2110210804223f0b279d83fd 100644 --- a/tests/conftest.py +++ b/tests/conftest.py @@ -10,9 +10,8 @@ import numpy import numpy.typing import pytest import torch - -from medbase.data.split import JSONDatabaseSplit -from medbase.data.typing import DatabaseSplit +from mednet.libs.common.data.split import JSONDatabaseSplit +from mednet.libs.common.data.typing import DatabaseSplit @pytest.fixture @@ -47,7 +46,7 @@ def pytest_configure(config): config.addinivalue_line( "markers", "skip_if_rc_var_not_set(name): this mark skips the test if a certain " - "~/.config/mednet.toml variable is not set", + "~/.config/mednet.libs.classification.toml variable is not set", ) config.addinivalue_line("markers", "slow: this mark indicates slow tests") @@ -66,7 +65,7 @@ def pytest_runtest_setup(item): information. """ - from mednet.utils.rc import load_rc + from mednet.libs.classification.utils.rc import load_rc rc = load_rc() @@ -76,19 +75,19 @@ def pytest_runtest_setup(item): mark.args[0] for mark in item.iter_markers(name="skip_if_rc_var_not_set") ] - # checks all names mentioned are set in ~/.config/mednet.toml, otherwise, + # checks all names mentioned are set in ~/.config/mednet.libs.classification.toml, otherwise, # skip the test if rc_names: missing = [k for k in rc_names if rc.get(k) is None] if any(missing): pytest.skip( f"Test skipped because {', '.join(missing)} is **not** " - f"set in ~/.config/mednet.toml", + f"set in ~/.config/mednet.libs.classification.toml", ) def rc_variable_set(name): - from mednet.utils.rc import load_rc + from mednet.libs.classification.utils.rc import load_rc rc = load_rc() pytest.mark.skipif( diff --git a/tests/test_cli.py b/tests/test_cli.py index ab6abe57cc1417e79974d5f807d32bea9ab05e63..bb3c1ceddfa0c09c27b093eda499d702aea85564 100644 --- a/tests/test_cli.py +++ b/tests/test_cli.py @@ -61,45 +61,45 @@ def test_info(): def test_config_help(): - from mednet.scripts.config import config + from mednet.libs.classification.scripts.config import config _check_help(config) def test_config_list_help(): - from mednet.scripts.config import list_ + from mednet.libs.classification.scripts.config import list_ _check_help(list_) def test_config_list(): - from mednet.scripts.config import list_ + from mednet.libs.classification.scripts.config import list_ runner = CliRunner() result = runner.invoke(list_) _assert_exit_0(result) - assert "module: mednet.config.data" in result.output - assert "module: mednet.config.models" in result.output + assert "module: mednet.libs.classification.config.data" in result.output + assert "module: mednet.libs.classification.config.models" in result.output def test_config_list_v(): - from mednet.scripts.config import list_ + from mednet.libs.classification.scripts.config import list_ result = CliRunner().invoke(list_, ["--verbose"]) _assert_exit_0(result) - assert "module: mednet.config.data" in result.output - assert "module: mednet.config.models" in result.output + assert "module: mednet.libs.classification.config.data" in result.output + assert "module: mednet.libs.classification.config.models" in result.output def test_config_describe_help(): - from mednet.scripts.config import describe + from mednet.libs.classification.scripts.config import describe _check_help(describe) @pytest.mark.skip_if_rc_var_not_set("datadir.montgomery") def test_config_describe_montgomery(): - from mednet.scripts.config import describe + from mednet.libs.classification.scripts.config import describe runner = CliRunner() result = runner.invoke(describe, ["montgomery"]) @@ -108,19 +108,19 @@ def test_config_describe_montgomery(): def test_database_help(): - from mednet.scripts.database import database + from mednet.libs.classification.scripts.database import database _check_help(database) def test_datamodule_list_help(): - from mednet.scripts.database import list_ + from mednet.libs.classification.scripts.database import list_ _check_help(list_) def test_datamodule_list(): - from mednet.scripts.database import list_ + from mednet.libs.classification.scripts.database import list_ runner = CliRunner() result = runner.invoke(list_) @@ -129,14 +129,14 @@ def test_datamodule_list(): def test_datamodule_check_help(): - from mednet.scripts.database import check + from mednet.libs.classification.scripts.database import check _check_help(check) @pytest.mark.skip_if_rc_var_not_set("datadir.montgomery") def test_database_check(): - from mednet.scripts.database import check + from mednet.libs.classification.scripts.database import check runner = CliRunner() result = runner.invoke(check, ["--verbose", "--limit=1", "montgomery"]) @@ -144,13 +144,13 @@ def test_database_check(): def test_main_help(): - from mednet.scripts.cli import cli + from mednet.libs.classification.scripts.cli import classification - _check_help(cli) + _check_help(classification) def test_train_help(): - from mednet.scripts.train import train + from mednet.libs.classification.scripts.train import train _check_help(train) @@ -160,37 +160,39 @@ def _str_counter(substr, s): def test_predict_help(): - from mednet.scripts.predict import predict + from mednet.libs.classification.scripts.predict import predict _check_help(predict) def test_evaluate_help(): - from mednet.scripts.evaluate import evaluate + from mednet.libs.classification.scripts.evaluate import evaluate _check_help(evaluate) def test_saliency_generate_help(): - from mednet.scripts.saliency.generate import generate + from mednet.libs.classification.scripts.saliency.generate import generate _check_help(generate) def test_saliency_completeness_help(): - from mednet.scripts.saliency.completeness import completeness + from mednet.libs.classification.scripts.saliency.completeness import ( + completeness, + ) _check_help(completeness) def test_saliency_view_help(): - from mednet.scripts.saliency.view import view + from mednet.libs.classification.scripts.saliency.view import view _check_help(view) def test_saliency_evaluate_help(): - from mednet.scripts.saliency.evaluate import evaluate + from mednet.libs.classification.scripts.saliency.evaluate import evaluate _check_help(evaluate) @@ -204,11 +206,11 @@ def test_upload_help(): @pytest.mark.slow @pytest.mark.skip_if_rc_var_not_set("datadir.montgomery") def test_train_pasa_montgomery(temporary_basedir): - from medbase.utils.checkpointer import ( + from mednet.libs.classification.scripts.train import train + from mednet.libs.common.utils.checkpointer import ( CHECKPOINT_EXTENSION, _get_checkpoint_from_alias, ) - from mednet.scripts.train import train runner = CliRunner() @@ -260,11 +262,11 @@ def test_train_pasa_montgomery(temporary_basedir): @pytest.mark.slow @pytest.mark.skip_if_rc_var_not_set("datadir.montgomery") def test_train_pasa_montgomery_from_checkpoint(temporary_basedir): - from medbase.utils.checkpointer import ( + from mednet.libs.classification.scripts.train import train + from mednet.libs.common.utils.checkpointer import ( CHECKPOINT_EXTENSION, _get_checkpoint_from_alias, ) - from mednet.scripts.train import train runner = CliRunner() @@ -338,11 +340,11 @@ def test_train_pasa_montgomery_from_checkpoint(temporary_basedir): @pytest.mark.slow @pytest.mark.skip_if_rc_var_not_set("datadir.montgomery") def test_predict_pasa_montgomery(temporary_basedir, datadir): - from medbase.utils.checkpointer import ( + from mednet.libs.classification.scripts.predict import predict + from mednet.libs.common.utils.checkpointer import ( CHECKPOINT_EXTENSION, _get_checkpoint_from_alias, ) - from mednet.scripts.predict import predict runner = CliRunner() @@ -392,7 +394,7 @@ def test_predict_pasa_montgomery(temporary_basedir, datadir): @pytest.mark.slow @pytest.mark.skip_if_rc_var_not_set("datadir.montgomery") def test_evaluate_pasa_montgomery(temporary_basedir): - from mednet.scripts.evaluate import evaluate + from mednet.libs.classification.scripts.evaluate import evaluate runner = CliRunner() @@ -439,7 +441,7 @@ def test_evaluate_pasa_montgomery(temporary_basedir): @pytest.mark.slow @pytest.mark.skip_if_rc_var_not_set("datadir.montgomery") def test_experiment(temporary_basedir): - from mednet.scripts.experiment import experiment + from mednet.libs.classification.scripts.experiment import experiment runner = CliRunner() diff --git a/tests/test_database_split.py b/tests/test_database_split.py index 7ebe400a305e0e0e009822f65bb0e3034915a91b..e77c4cbf8c932f39f5a794b10a23778a1e48d837 100644 --- a/tests/test_database_split.py +++ b/tests/test_database_split.py @@ -3,7 +3,30 @@ # SPDX-License-Identifier: GPL-3.0-or-later """Test code for datasets.""" +<<<<<<< HEAD from medbase.data.split import JSONDatabaseSplit +======= +from mednet.libs.common.data.split import CSVDatabaseSplit, JSONDatabaseSplit + + +def test_csv_loading(datadir): + # tests if we can build a simple CSV loader for the Iris Flower dataset + database_split = CSVDatabaseSplit(datadir) + + assert len(database_split["iris-train"]) == 75 + for k in database_split["iris-train"]: + for f in range(4): + assert isinstance(k[f], str) # csv only loads stringd + assert isinstance(k[4], str) + + assert len(database_split["iris-test"]) == 75 + for k in database_split["iris-test"]: + for f in range(4): + assert isinstance(k[f], str) # csv only loads stringd + assert isinstance(k[4], str) + assert k[4] in ("Iris-setosa", "Iris-versicolor", "Iris-virginica") + +>>>>>>> b1ea1c0 ([mednet] Start reorganizing into monorepo) def test_json_loading(datadir): # tests if we can build a simple JSON loader for the Iris Flower dataset diff --git a/tests/test_evaluator.py b/tests/test_evaluator.py index 589d8507e309cf5debfbf37b1068b1339ab4cb14..f3291043a5cf4573debe6a8e0bfa74147fa694cc 100644 --- a/tests/test_evaluator.py +++ b/tests/test_evaluator.py @@ -7,7 +7,7 @@ import numpy def test_centered_maxf1(): - from mednet.engine.evaluator import _get_centered_maxf1 + from mednet.libs.classification.engine.evaluator import _get_centered_maxf1 # Multiple max F1 f1_scores = numpy.array([0.8, 0.9, 1.0, 1.0, 1.0, 0.3]) @@ -29,8 +29,8 @@ def test_centered_maxf1(): def test_run_binary_1(): - from mednet.engine.evaluator import run_binary - from mednet.models.typing import BinaryPrediction + from mednet.libs.classification.engine.evaluator import run_binary + from mednet.libs.classification.models.typing import BinaryPrediction predictions: list[BinaryPrediction] = [ # (name, target, predicted-value) @@ -86,8 +86,8 @@ def test_run_binary_1(): def test_run_binary_2(): - from mednet.engine.evaluator import run_binary - from mednet.models.typing import BinaryPrediction + from mednet.libs.classification.engine.evaluator import run_binary + from mednet.libs.classification.models.typing import BinaryPrediction predictions: list[BinaryPrediction] = [ # (name, target, predicted-value) diff --git a/tests/test_hivtb.py b/tests/test_hivtb.py index 888571e41b58441f2cafc7f68b1026a8c9bece4b..cebf9f9ac82db1cc903ae445122bc31e0751b4c6 100644 --- a/tests/test_hivtb.py +++ b/tests/test_hivtb.py @@ -36,7 +36,7 @@ def test_protocol_consistency( split: str, lenghts: dict[str, int], ): - from mednet.data.split import make_split + from mednet.libs.common.data.split import make_split database_checkers.check_split( make_split("mednet.config.data.hivtb", f"{split}.json"), @@ -48,7 +48,7 @@ def test_protocol_consistency( @pytest.mark.skip_if_rc_var_not_set("datadir.hivtb") def test_database_check(): - from mednet.scripts.database import check + from mednet.libs.classification.scripts.database import check runner = CliRunner() result = runner.invoke(check, ["--limit=10", "hivtb-f0"]) @@ -84,7 +84,7 @@ def test_database_check(): def test_loading(database_checkers, name: str, dataset: str): datamodule = importlib.import_module( f".{name}", - "mednet.config.data.hivtb", + "mednet.libs.classification.config.data.hivtb", ).datamodule datamodule.model_transforms = [] # should be done before setup() @@ -115,7 +115,7 @@ def test_loaded_image_quality(database_checkers, datadir): datamodule = importlib.import_module( ".fold_0", - "mednet.config.data.hivtb", + "mednet.libs.classification.config.data.hivtb", ).datamodule datamodule.model_transforms = [] diff --git a/tests/test_image_utils.py b/tests/test_image_utils.py index d81501ad6d71106dc18eab51b7068f479a834e8c..6ba40ef13e3afdd3866b9809a525a1e3af81f372 100644 --- a/tests/test_image_utils.py +++ b/tests/test_image_utils.py @@ -5,8 +5,7 @@ import numpy import PIL.Image - -from medbase.data.image_utils import remove_black_borders +from mednet.libs.common.data.image_utils import remove_black_borders def test_remove_black_borders(datadir): diff --git a/tests/test_indian.py b/tests/test_indian.py index 9581d90376e9e22717fcff97775470d83294095e..e5ca853dff7b1fea893b0eebc6bd5916b1b41c8b 100644 --- a/tests/test_indian.py +++ b/tests/test_indian.py @@ -40,7 +40,7 @@ def test_protocol_consistency( split: str, lenghts: dict[str, int], ): - from mednet.data.split import make_split + from mednet.libs.common.data.split import make_split database_checkers.check_split( make_split("mednet.config.data.indian", f"{split}.json"), @@ -52,7 +52,7 @@ def test_protocol_consistency( @pytest.mark.skip_if_rc_var_not_set("datadir.indian") def test_database_check(): - from mednet.scripts.database import check + from mednet.libs.classification.scripts.database import check runner = CliRunner() result = runner.invoke(check, ["indian"]) @@ -89,7 +89,7 @@ def test_database_check(): def test_loading(database_checkers, name: str, dataset: str): datamodule = importlib.import_module( f".{name}", - "mednet.config.data.indian", + "mednet.libs.classification.config.data.indian", ).datamodule datamodule.model_transforms = [] # should be done before setup() @@ -120,7 +120,7 @@ def test_loaded_image_quality(database_checkers, datadir): datamodule = importlib.import_module( ".default", - "mednet.config.data.indian", + "mednet.libs.classification.config.data.indian", ).datamodule datamodule.model_transforms = [] diff --git a/tests/test_montgomery.py b/tests/test_montgomery.py index fddeaefaf75265d7ba31048b72704f04f28dd19e..102b232af6f7dbd1435a2e69991b7c21abb5e8d7 100644 --- a/tests/test_montgomery.py +++ b/tests/test_montgomery.py @@ -38,7 +38,7 @@ def test_protocol_consistency( split: str, lenghts: dict[str, int], ): - from mednet.data.split import make_split + from mednet.libs.common.data.split import make_split database_checkers.check_split( make_split("mednet.config.data.montgomery", f"{split}.json"), @@ -50,7 +50,7 @@ def test_protocol_consistency( @pytest.mark.skip_if_rc_var_not_set("datadir.montgomery") def test_database_check(): - from mednet.scripts.database import check + from mednet.libs.classification.scripts.database import check runner = CliRunner() result = runner.invoke(check, ["montgomery"]) @@ -87,7 +87,7 @@ def test_database_check(): def test_loading(database_checkers, name: str, dataset: str): datamodule = importlib.import_module( f".{name}", - "mednet.config.data.montgomery", + "mednet.libs.classification.config.data.montgomery", ).datamodule datamodule.model_transforms = [] # should be done before setup() @@ -114,7 +114,12 @@ def test_loading(database_checkers, name: str, dataset: str): @pytest.mark.skip_if_rc_var_not_set("datadir.montgomery") def test_raw_transforms_image_quality(database_checkers, datadir: pathlib.Path): datamodule = importlib.import_module( +<<<<<<< HEAD ".default", "mednet.config.data.montgomery" +======= + ".default", + "mednet.libs.classification.config.data.montgomery", +>>>>>>> b1ea1c0 ([mednet] Start reorganizing into monorepo) ).datamodule datamodule.model_transforms = [] @@ -150,12 +155,12 @@ def test_model_transforms_image_quality( ): datamodule = importlib.import_module( ".default", - "mednet.config.data.montgomery", + "mednet.libs.classification.config.data.montgomery", ).datamodule model = importlib.import_module( f".{model_name}", - "mednet.config.models", + "mednet.libs.classification.config.models", ).model datamodule.model_transforms = model.model_transforms diff --git a/tests/test_montgomery_shenzhen.py b/tests/test_montgomery_shenzhen.py index 58f3313c9121a2c796d2641d05b870fdf0567d5a..7d94a87a6b7deb7888b55d1953503e123d6a0f36 100644 --- a/tests/test_montgomery_shenzhen.py +++ b/tests/test_montgomery_shenzhen.py @@ -28,27 +28,27 @@ from click.testing import CliRunner def test_split_consistency(name: str): montgomery = importlib.import_module( f".{name}", - "mednet.config.data.montgomery", + "mednet.libs.classification.config.data.montgomery", ).datamodule shenzhen = importlib.import_module( f".{name}", - "mednet.config.data.shenzhen", + "mednet.libs.classification.config.data.shenzhen", ).datamodule combined = importlib.import_module( f".{name}", - "mednet.config.data.montgomery_shenzhen", + "mednet.libs.classification.config.data.montgomery_shenzhen", ).datamodule montgomery_loader = importlib.import_module( ".datamodule", - "mednet.config.data.montgomery", + "mednet.libs.classification.config.data.montgomery", ).RawDataLoader shenzhen_loader = importlib.import_module( ".datamodule", - "mednet.config.data.shenzhen", + "mednet.libs.classification.config.data.shenzhen", ).RawDataLoader for split in ("train", "validation", "test"): @@ -65,7 +65,7 @@ def test_split_consistency(name: str): @pytest.mark.skip_if_rc_var_not_set("datadir.montgomery") @pytest.mark.skip_if_rc_var_not_set("datadir.shenzhen") def test_database_check(): - from mednet.scripts.database import check + from mednet.libs.classification.scripts.database import check runner = CliRunner() result = runner.invoke(check, ["montgomery-shenzhen"]) diff --git a/tests/test_montgomery_shenzhen_indian.py b/tests/test_montgomery_shenzhen_indian.py index 47de3afd567ce93320d8c107493978e73babc5ac..3a95cd7b1968330e668be743ccc1effa22f5e72a 100644 --- a/tests/test_montgomery_shenzhen_indian.py +++ b/tests/test_montgomery_shenzhen_indian.py @@ -28,37 +28,37 @@ from click.testing import CliRunner def test_split_consistency(name: str): montgomery = importlib.import_module( f".{name}", - "mednet.config.data.montgomery", + "mednet.libs.classification.config.data.montgomery", ).datamodule shenzhen = importlib.import_module( f".{name}", - "mednet.config.data.shenzhen", + "mednet.libs.classification.config.data.shenzhen", ).datamodule indian = importlib.import_module( f".{name}", - "mednet.config.data.indian", + "mednet.libs.classification.config.data.indian", ).datamodule combined = importlib.import_module( f".{name}", - "mednet.config.data.montgomery_shenzhen_indian", + "mednet.libs.classification.config.data.montgomery_shenzhen_indian", ).datamodule montgomery_loader = importlib.import_module( ".datamodule", - "mednet.config.data.montgomery", + "mednet.libs.classification.config.data.montgomery", ).RawDataLoader shenzhen_loader = importlib.import_module( ".datamodule", - "mednet.config.data.shenzhen", + "mednet.libs.classification.config.data.shenzhen", ).RawDataLoader indian_loader = importlib.import_module( ".datamodule", - "mednet.config.data.indian", + "mednet.libs.classification.config.data.indian", ).RawDataLoader for split in ("train", "validation", "test"): @@ -80,7 +80,7 @@ def test_split_consistency(name: str): @pytest.mark.skip_if_rc_var_not_set("datadir.indian") @pytest.mark.skip_if_rc_var_not_set("datadir.shenzhen") def test_database_check(): - from mednet.scripts.database import check + from mednet.libs.classification.scripts.database import check runner = CliRunner() result = runner.invoke(check, ["montgomery-shenzhen-indian"]) diff --git a/tests/test_montgomery_shenzhen_indian_padchest.py b/tests/test_montgomery_shenzhen_indian_padchest.py index e44b5b6082e1fbf05ee66b577a57388017b82a3b..bf7e913f2a7260d85e4ecaa6b99248f6d226aad6 100644 --- a/tests/test_montgomery_shenzhen_indian_padchest.py +++ b/tests/test_montgomery_shenzhen_indian_padchest.py @@ -18,47 +18,47 @@ from click.testing import CliRunner def test_split_consistency(name: str, padchest_name: str): montgomery = importlib.import_module( f".{name}", - "mednet.config.data.montgomery", + "mednet.libs.classification.config.data.montgomery", ).datamodule shenzhen = importlib.import_module( f".{name}", - "mednet.config.data.shenzhen", + "mednet.libs.classification.config.data.shenzhen", ).datamodule indian = importlib.import_module( f".{name}", - "mednet.config.data.indian", + "mednet.libs.classification.config.data.indian", ).datamodule padchest = importlib.import_module( f".{padchest_name}", - "mednet.config.data.padchest", + "mednet.libs.classification.config.data.padchest", ).datamodule combined = importlib.import_module( f".{name}", - "mednet.config.data.montgomery_shenzhen_indian_padchest", + "mednet.libs.classification.config.data.montgomery_shenzhen_indian_padchest", ).datamodule montgomery_loader = importlib.import_module( ".datamodule", - "mednet.config.data.montgomery", + "mednet.libs.classification.config.data.montgomery", ).RawDataLoader shenzhen_loader = importlib.import_module( ".datamodule", - "mednet.config.data.shenzhen", + "mednet.libs.classification.config.data.shenzhen", ).RawDataLoader indian_loader = importlib.import_module( ".datamodule", - "mednet.config.data.indian", + "mednet.libs.classification.config.data.indian", ).RawDataLoader padchest_loader = importlib.import_module( ".datamodule", - "mednet.config.data.padchest", + "mednet.libs.classification.config.data.padchest", ).RawDataLoader for split in ("train", "validation", "test"): @@ -87,7 +87,7 @@ def test_split_consistency(name: str, padchest_name: str): @pytest.mark.skip_if_rc_var_not_set("datadir.indian") @pytest.mark.skip_if_rc_var_not_set("datadir.padchest") def test_database_check(): - from mednet.scripts.database import check + from mednet.libs.classification.scripts.database import check runner = CliRunner() result = runner.invoke(check, ["montgomery-shenzhen-indian-padchest"]) diff --git a/tests/test_montgomery_shenzhen_indian_tbx11k.py b/tests/test_montgomery_shenzhen_indian_tbx11k.py index 491095a6389fd1b592a051b1582dc53a5e46b133..644d8073ae576d15f50e8fc3c936d1b6251ab5a7 100644 --- a/tests/test_montgomery_shenzhen_indian_tbx11k.py +++ b/tests/test_montgomery_shenzhen_indian_tbx11k.py @@ -39,47 +39,47 @@ from click.testing import CliRunner def test_split_consistency(name: str, tbx11k_name: str): montgomery = importlib.import_module( f".{name}", - "mednet.config.data.montgomery", + "mednet.libs.classification.config.data.montgomery", ).datamodule shenzhen = importlib.import_module( f".{name}", - "mednet.config.data.shenzhen", + "mednet.libs.classification.config.data.shenzhen", ).datamodule indian = importlib.import_module( f".{name}", - "mednet.config.data.indian", + "mednet.libs.classification.config.data.indian", ).datamodule tbx11k = importlib.import_module( f".{tbx11k_name}", - "mednet.config.data.tbx11k", + "mednet.libs.classification.config.data.tbx11k", ).datamodule combined = importlib.import_module( f".{tbx11k_name}", - "mednet.config.data.montgomery_shenzhen_indian_tbx11k", + "mednet.libs.classification.config.data.montgomery_shenzhen_indian_tbx11k", ).datamodule montgomery_loader = importlib.import_module( ".datamodule", - "mednet.config.data.montgomery", + "mednet.libs.classification.config.data.montgomery", ).RawDataLoader shenzhen_loader = importlib.import_module( ".datamodule", - "mednet.config.data.shenzhen", + "mednet.libs.classification.config.data.shenzhen", ).RawDataLoader indian_loader = importlib.import_module( ".datamodule", - "mednet.config.data.indian", + "mednet.libs.classification.config.data.indian", ).RawDataLoader tbx11k_loader = importlib.import_module( ".datamodule", - "mednet.config.data.tbx11k", + "mednet.libs.classification.config.data.tbx11k", ).RawDataLoader for split in ("train", "validation", "test"): @@ -136,7 +136,7 @@ def test_batch_uniformity(tbx11k_name: str, dataset: str): @pytest.mark.skip_if_rc_var_not_set("datadir.indian") @pytest.mark.skip_if_rc_var_not_set("datadir.tbx11k") def test_database_check(): - from mednet.scripts.database import check + from mednet.libs.classification.scripts.database import check runner = CliRunner() result = runner.invoke(check, ["montgomery-shenzhen-indian-tbx11k-v1"]) diff --git a/tests/test_nih_cxr14.py b/tests/test_nih_cxr14.py index 0d2517be7b7c4069572b5181f3c30b22c5b06943..4c8c8f389bd4d428d5baf2be54f588dc6403f050 100644 --- a/tests/test_nih_cxr14.py +++ b/tests/test_nih_cxr14.py @@ -28,7 +28,7 @@ def test_protocol_consistency( split: str, lenghts: dict[str, int], ): - from mednet.data.split import make_split + from mednet.libs.common.data.split import make_split database_checkers.check_split( make_split("mednet.config.data.nih_cxr14", f"{split}"), @@ -49,7 +49,7 @@ testdata = [ @pytest.mark.skip_if_rc_var_not_set("datadir.nih_cxr14") def test_database_check(): - from mednet.scripts.database import check + from mednet.libs.classification.scripts.database import check runner = CliRunner() result = runner.invoke(check, ["--limit=10", "nih-cxr14"]) @@ -63,7 +63,7 @@ def test_database_check(): def test_loading(database_checkers, name: str, dataset: str, num_labels: int): datamodule = importlib.import_module( f".{name}", - "mednet.config.data.nih_cxr14", + "mednet.libs.classification.config.data.nih_cxr14", ).datamodule datamodule.model_transforms = [] # should be done before setup() @@ -95,7 +95,7 @@ def test_loaded_image_quality(database_checkers, datadir): datamodule = importlib.import_module( ".default", - "mednet.config.data.nih_cxr14", + "mednet.libs.classification.config.data.nih_cxr14", ).datamodule datamodule.model_transforms = [] diff --git a/tests/test_nih_cxr14_padchest.py b/tests/test_nih_cxr14_padchest.py index a36655bbf451c649a25591d3665d4403d63675b2..bc5cde53a550dd5f2dcd24abad0c80b2b0c95b63 100644 --- a/tests/test_nih_cxr14_padchest.py +++ b/tests/test_nih_cxr14_padchest.py @@ -18,27 +18,27 @@ from click.testing import CliRunner def test_split_consistency(name: str, padchest_name: str, combined_name: str): nih_cxr14 = importlib.import_module( f".{name}", - "mednet.config.data.nih_cxr14", + "mednet.libs.classification.config.data.nih_cxr14", ).datamodule padchest = importlib.import_module( f".{padchest_name}", - "mednet.config.data.padchest", + "mednet.libs.classification.config.data.padchest", ).datamodule combined = importlib.import_module( f".{combined_name}", - "mednet.config.data.nih_cxr14_padchest", + "mednet.libs.classification.config.data.nih_cxr14_padchest", ).datamodule cxr14_loader = importlib.import_module( ".datamodule", - "mednet.config.data.nih_cxr14", + "mednet.libs.classification.config.data.nih_cxr14", ).RawDataLoader padchest_loader = importlib.import_module( ".datamodule", - "mednet.config.data.padchest", + "mednet.libs.classification.config.data.padchest", ).RawDataLoader for split in ("train", "validation", "test"): @@ -56,7 +56,7 @@ def test_split_consistency(name: str, padchest_name: str, combined_name: str): @pytest.mark.skip_if_rc_var_not_set("datadir.nih_cxr14") @pytest.mark.skip_if_rc_var_not_set("datadir.padchest") def test_database_check(): - from mednet.scripts.database import check + from mednet.libs.classification.scripts.database import check runner = CliRunner() result = runner.invoke(check, ["--limit=10", "nih-cxr14-padchest"]) diff --git a/tests/test_padchest.py b/tests/test_padchest.py index 403a7bd4011868ce0db2510312a42c31d97b1b32..abbc51b3714ff3bad1d83981b8f8eda90b09fa35 100644 --- a/tests/test_padchest.py +++ b/tests/test_padchest.py @@ -33,7 +33,7 @@ def test_protocol_consistency( split: str, lenghts: dict[str, int], ): - from mednet.data.split import make_split + from mednet.libs.common.data.split import make_split database_checkers.check_split( make_split("mednet.config.data.padchest", split), @@ -45,7 +45,7 @@ def test_protocol_consistency( @pytest.mark.skip_if_rc_var_not_set("datadir.padchest") def test_database_check(): - from mednet.scripts.database import check + from mednet.libs.classification.scripts.database import check runner = CliRunner() result = runner.invoke(check, ["--limit=10", "padchest-idiap"]) @@ -68,7 +68,7 @@ testdata = [ def test_loading(database_checkers, name: str, dataset: str, num_labels: int): datamodule = importlib.import_module( f".{name}", - "mednet.config.data.padchest", + "mednet.libs.classification.config.data.padchest", ).datamodule datamodule.model_transforms = [] # should be done before setup() @@ -100,7 +100,7 @@ def test_loaded_image_quality(database_checkers, datadir): datamodule = importlib.import_module( ".idiap", - "mednet.config.data.padchest", + "mednet.libs.classification.config.data.padchest", ).datamodule datamodule.model_transforms = [] diff --git a/tests/test_saliencymap_interpretability.py b/tests/test_saliencymap_interpretability.py index f2cc19d71898ed044c7c77ea8b609892bbebb738..c91115d4e581b5b8c8366f795a7a7338af613218 100644 --- a/tests/test_saliencymap_interpretability.py +++ b/tests/test_saliencymap_interpretability.py @@ -2,8 +2,11 @@ # # SPDX-License-Identifier: GPL-3.0-or-later import numpy as np -from mednet.config.data.tbx11k.datamodule import BoundingBox, BoundingBoxes -from mednet.engine.saliency.interpretability import ( +from mednet.libs.classification.config.data.tbx11k.datamodule import ( + BoundingBox, + BoundingBoxes, +) +from mednet.libs.classification.engine.saliency.interpretability import ( _compute_avg_saliency_focus, _compute_binary_mask, _compute_max_iou_and_ioda, diff --git a/tests/test_shenzhen.py b/tests/test_shenzhen.py index 87a47cf0bf6358d0fd4e7eadeb1ace6d3695a121..ef77906ac792f40d3f8b19642182eb42f0776163 100644 --- a/tests/test_shenzhen.py +++ b/tests/test_shenzhen.py @@ -37,7 +37,7 @@ def test_protocol_consistency( split: str, lenghts: dict[str, int], ): - from mednet.data.split import make_split + from mednet.libs.common.data.split import make_split database_checkers.check_split( make_split("mednet.config.data.shenzhen", f"{split}.json"), @@ -49,7 +49,7 @@ def test_protocol_consistency( @pytest.mark.skip_if_rc_var_not_set("datadir.shenzhen") def test_database_check(): - from mednet.scripts.database import check + from mednet.libs.classification.scripts.database import check runner = CliRunner() result = runner.invoke(check, ["shenzhen"]) @@ -86,7 +86,7 @@ def test_database_check(): def test_loading(database_checkers, name: str, dataset: str): datamodule = importlib.import_module( f".{name}", - "mednet.config.data.shenzhen", + "mednet.libs.classification.config.data.shenzhen", ).datamodule datamodule.model_transforms = [] # should be done before setup() @@ -117,7 +117,7 @@ def test_loaded_image_quality(database_checkers, datadir): datamodule = importlib.import_module( ".default", - "mednet.config.data.shenzhen", + "mednet.libs.classification.config.data.shenzhen", ).datamodule datamodule.model_transforms = [] diff --git a/tests/test_summary.py b/tests/test_summary.py index 4e420eb29ad332655064ab177d91c985bee6d96a..c9d86ffcc4da01d3f49e7183463ccf9d41b2edb7 100644 --- a/tests/test_summary.py +++ b/tests/test_summary.py @@ -4,9 +4,8 @@ import unittest -import mednet.config.models.pasa as pasa_config - -from medbase.utils.summary import summary +import mednet.libs.classification.config.models.pasa as pasa_config +from mednet.libs.common.utils.summary import summary class Tester(unittest.TestCase): diff --git a/tests/test_tbpoc.py b/tests/test_tbpoc.py index a3a337cf29be18a3ce6372ca6bdf1ec471449d6f..4447c80907d4b32b9f6363a140eccd0c2e8df356 100644 --- a/tests/test_tbpoc.py +++ b/tests/test_tbpoc.py @@ -36,7 +36,7 @@ def test_protocol_consistency( split: str, lenghts: dict[str, int], ): - from mednet.data.split import make_split + from mednet.libs.common.data.split import make_split database_checkers.check_split( make_split("mednet.config.data.tbpoc", f"{split}.json"), @@ -51,7 +51,7 @@ def test_protocol_consistency( @pytest.mark.skip_if_rc_var_not_set("datadir.tbpoc") def test_database_check(): - from mednet.scripts.database import check + from mednet.libs.classification.scripts.database import check runner = CliRunner() result = runner.invoke(check, ["tbpoc-f0"]) @@ -87,7 +87,7 @@ def test_database_check(): def test_loading(database_checkers, name: str, dataset: str): datamodule = importlib.import_module( f".{name}", - "mednet.config.data.tbpoc", + "mednet.libs.classification.config.data.tbpoc", ).datamodule datamodule.model_transforms = [] # should be done before setup() @@ -121,7 +121,7 @@ def test_loaded_image_quality(database_checkers, datadir): datamodule = importlib.import_module( ".fold_0", - "mednet.config.data.tbpoc", + "mednet.libs.classification.config.data.tbpoc", ).datamodule datamodule.model_transforms = [] diff --git a/tests/test_tbx11k.py b/tests/test_tbx11k.py index 65b8dbac698dce6af2d2e3162bd89cdb155502dc..19be118c898a4f04f52687ddcd4b448fe7c5191c 100644 --- a/tests/test_tbx11k.py +++ b/tests/test_tbx11k.py @@ -139,7 +139,7 @@ def test_protocol_consistency( lenghts: dict[str, int], prefixes: typing.Sequence[str], ): - from mednet.data.split import make_split + from mednet.libs.common.data.split import make_split database_checkers.check_split( make_split("mednet.config.data.tbx11k", f"{split}.json"), @@ -234,7 +234,7 @@ def check_loaded_batch( @pytest.mark.skip_if_rc_var_not_set("datadir.tbx11k") def test_database_check(): - from mednet.scripts.database import check + from mednet.libs.classification.scripts.database import check runner = CliRunner() result = runner.invoke(check, ["--limit=10", "tbx11k-v1-f0"]) @@ -287,7 +287,7 @@ def test_database_check(): def test_loading(name: str, dataset: str, prefixes: typing.Sequence[str]): datamodule = importlib.import_module( f".{name}", - "mednet.config.data.tbx11k", + "mednet.libs.classification.config.data.tbx11k", ).datamodule datamodule.model_transforms = [] # should be done before setup() @@ -326,7 +326,7 @@ def test_loaded_image_quality(database_checkers, datadir, split): datamodule = importlib.import_module( f".{split}", - "mednet.config.data.tbx11k", + "mednet.libs.classification.config.data.tbx11k", ).datamodule datamodule.model_transforms = [] diff --git a/tests/test_transforms.py b/tests/test_transforms.py index 85f599582814b1a1119b4a5f6580b3544094bffb..6b80387669297305a401dec0ece7e67f5c2d0566 100644 --- a/tests/test_transforms.py +++ b/tests/test_transforms.py @@ -5,9 +5,8 @@ import numpy import PIL.Image -import torchvision.transforms.functional as F # noqa: N812 - -from medbase.data.augmentations import ElasticDeformation +import torchvision.transforms.functional as F # noqa: N812 +from mednet.libs.common.data.augmentations import ElasticDeformation def test_elastic_deformation(datadir):