diff --git a/deepinv_bench/benchmarks/nbu_pansharpening/datasets/nbu.py b/deepinv_bench/benchmarks/nbu_pansharpening/datasets/nbu.py new file mode 100644 index 0000000..799cedd --- /dev/null +++ b/deepinv_bench/benchmarks/nbu_pansharpening/datasets/nbu.py @@ -0,0 +1,48 @@ +import deepinv as dinv +from benchopt import BaseDataset +from benchopt.config import get_data_path +from torchvision import transforms + + +class Dataset(BaseDataset): + name = "NBUDataset" + + parameters = { + "physics": ["Pansharpening"], + "noise": ["ZeroNoise"], + "img_size": [256], + "factor": [4], + "return_pan": [False], + "satellite": ["gaofen-1"], # 4 channels dataset + } + + test_parameters = {"debug": [True]} + + def get_data(self): + root = get_data_path("NBUDataset") + + transform = transforms.Compose( + [ + transforms.Resize((self.img_size, self.img_size)), + transforms.ToTensor(), + ] + ) + + dataset = dinv.datasets.NBUDataset( + root_dir=root, + satellite=self.satellite, + return_pan=self.return_pan, + download=True, + transform_ms=transform, + ) + + physics = dinv.physics.Downsampling( + filter='bilinear', + factor=4, + img_size=(4, self.img_size, self.img_size), + ) + + return { + "dataset": dataset, + "physics": physics, + } \ No newline at end of file