diff --git a/src/ptbench/data/shenzhen/datamodule.py b/src/ptbench/data/shenzhen/datamodule.py index 45ce8762a0e46bf7cf9feb10d8f2183572dfb4ae..8307396df435433f220df0e07cc1f3da24b8e853 100644 --- a/src/ptbench/data/shenzhen/datamodule.py +++ b/src/ptbench/data/shenzhen/datamodule.py @@ -13,6 +13,7 @@ from ...utils.rc import load_rc from ..datamodule import CachingDataModule from ..image_utils import remove_black_borders from ..split import JSONDatabaseSplit +from ..typing import DatabaseSplit from ..typing import RawDataLoader as _BaseRawDataLoader from ..typing import Sample @@ -93,6 +94,14 @@ class RawDataLoader(_BaseRawDataLoader): return sample[1] +def make_split(basename: str) -> DatabaseSplit: + """Returns a database split for the Shenzhen database.""" + + return JSONDatabaseSplit( + importlib.resources.files(__name__.rsplit(".", 1)[0]).joinpath(basename) + ) + + class DataModule(CachingDataModule): """Shenzhen datamodule for computer-aided diagnosis. @@ -128,10 +137,6 @@ class DataModule(CachingDataModule): def __init__(self, split_filename: str): super().__init__( - database_split=JSONDatabaseSplit( - importlib.resources.files(__name__.rsplit(".", 1)[0]).joinpath( - split_filename - ) - ), + database_split=make_split(split_filename), raw_data_loader=RawDataLoader(), ) diff --git a/src/ptbench/data/shenzhen/default.py b/src/ptbench/data/shenzhen/default.py index 0e29c38563d0fbb12dd172957f044aa6893117d9..93517c03b1d4e6532c7410ba05b36bf57fd5c08b 100644 --- a/src/ptbench/data/shenzhen/default.py +++ b/src/ptbench/data/shenzhen/default.py @@ -4,7 +4,7 @@ from .datamodule import DataModule -datamodule = DataModule("default.json.bz2") +datamodule = DataModule("default.json") """Default Shenzen TB database split. * Training samples: 64% of TB and healthy CXR (including labels) diff --git a/src/ptbench/data/shenzhen/fold_0.py b/src/ptbench/data/shenzhen/fold_0.py index c810e85cea48c13293f0c0d28587e7df4e28be67..3d114d07d1c53f869ba710074b254944865cc4bc 100644 --- a/src/ptbench/data/shenzhen/fold_0.py +++ b/src/ptbench/data/shenzhen/fold_0.py @@ -4,4 +4,4 @@ from .datamodule import DataModule -datamodule = DataModule("fold_0.json.bz2") +datamodule = DataModule("fold_0.json") diff --git a/src/ptbench/data/shenzhen/fold_1.py b/src/ptbench/data/shenzhen/fold_1.py index 736a778dab6b708bceba8a282eadfe45e45a86fe..cd3a8cb6d0be1c01e5dbb96d5cc02f724e15e7c4 100644 --- a/src/ptbench/data/shenzhen/fold_1.py +++ b/src/ptbench/data/shenzhen/fold_1.py @@ -4,4 +4,4 @@ from .datamodule import DataModule -datamodule = DataModule("fold_1.json.bz2") +datamodule = DataModule("fold_1.json") diff --git a/src/ptbench/data/shenzhen/fold_2.py b/src/ptbench/data/shenzhen/fold_2.py index 48df1bfe7c4a562e98a5d87aa66b7b7c6f9f1ec3..44eeda801884db9fcaa58be04de3068ff82325eb 100644 --- a/src/ptbench/data/shenzhen/fold_2.py +++ b/src/ptbench/data/shenzhen/fold_2.py @@ -4,4 +4,4 @@ from .datamodule import DataModule -datamodule = DataModule("fold_2.json.bz2") +datamodule = DataModule("fold_2.json") diff --git a/src/ptbench/data/shenzhen/fold_3.py b/src/ptbench/data/shenzhen/fold_3.py index 9967e4ea9297fadf97192586d66e185bec997e7e..f24fb314e30df9ab111ac69fd74a7f9a16cdad68 100644 --- a/src/ptbench/data/shenzhen/fold_3.py +++ b/src/ptbench/data/shenzhen/fold_3.py @@ -4,4 +4,4 @@ from .datamodule import DataModule -datamodule = DataModule("fold_3.json.bz2") +datamodule = DataModule("fold_3.json") diff --git a/src/ptbench/data/shenzhen/fold_4.py b/src/ptbench/data/shenzhen/fold_4.py index 8630ee093f484d19f3e493f8ab059ddb29314a9a..58456d38e4804c2b68e8759f78e3bf9ea8d547f8 100644 --- a/src/ptbench/data/shenzhen/fold_4.py +++ b/src/ptbench/data/shenzhen/fold_4.py @@ -4,4 +4,4 @@ from .datamodule import DataModule -datamodule = DataModule("fold_4.json.bz2") +datamodule = DataModule("fold_4.json") diff --git a/src/ptbench/data/shenzhen/fold_5.py b/src/ptbench/data/shenzhen/fold_5.py index 0c7504c512426a635eae3cdb63b545651fb43f5f..927967469ff479647670fe0d0978e4b72b965c33 100644 --- a/src/ptbench/data/shenzhen/fold_5.py +++ b/src/ptbench/data/shenzhen/fold_5.py @@ -4,4 +4,4 @@ from .datamodule import DataModule -datamodule = DataModule("fold_5.json.bz2") +datamodule = DataModule("fold_5.json") diff --git a/src/ptbench/data/shenzhen/fold_6.py b/src/ptbench/data/shenzhen/fold_6.py index 2f8e8e320a4cae35036bdeacc964c996d979e9fb..9566b7cfe5723c1da18d081a2442fb5d13a11d3e 100644 --- a/src/ptbench/data/shenzhen/fold_6.py +++ b/src/ptbench/data/shenzhen/fold_6.py @@ -4,4 +4,4 @@ from .datamodule import DataModule -datamodule = DataModule("fold_6.json.bz2") +datamodule = DataModule("fold_6.json") diff --git a/src/ptbench/data/shenzhen/fold_7.py b/src/ptbench/data/shenzhen/fold_7.py index eb5d6f00dc1c4b690a28ba2228fc74cb78201df6..8c7ed885a36f9fbda2c74cad1a4774928fea787e 100644 --- a/src/ptbench/data/shenzhen/fold_7.py +++ b/src/ptbench/data/shenzhen/fold_7.py @@ -4,4 +4,4 @@ from .datamodule import DataModule -datamodule = DataModule("fold_7.json.bz2") +datamodule = DataModule("fold_7.json") diff --git a/src/ptbench/data/shenzhen/fold_8.py b/src/ptbench/data/shenzhen/fold_8.py index a948035965aacef3c249b44cc07eff9e124aa51c..fb5332ce050631a6fdf4b590fb4dd5a191fd90bc 100644 --- a/src/ptbench/data/shenzhen/fold_8.py +++ b/src/ptbench/data/shenzhen/fold_8.py @@ -4,4 +4,4 @@ from .datamodule import DataModule -datamodule = DataModule("fold_8.json.bz2") +datamodule = DataModule("fold_8.json") diff --git a/src/ptbench/data/shenzhen/fold_9.py b/src/ptbench/data/shenzhen/fold_9.py index daa85e030720898578ef65a0318f90701b808abf..d1626586ff8b263c097ee9b929eea40c42b4ae1e 100644 --- a/src/ptbench/data/shenzhen/fold_9.py +++ b/src/ptbench/data/shenzhen/fold_9.py @@ -4,4 +4,4 @@ from .datamodule import DataModule -datamodule = DataModule("fold_9.json.bz2") +datamodule = DataModule("fold_9.json")