From 77c98cec720eb975689b2baa9e3ee590005007d4 Mon Sep 17 00:00:00 2001 From: dldou <99049494+dldou@users.noreply.github.com> Date: Wed, 2 Sep 2026 10:05:04 +0200 Subject: [PATCH 1/2] First commit to integrate 4 channels NBU dataset --- .../nbu_pansharpening/datasets/nbu.py | 49 +++++++++++++++++++ 1 file changed, 49 insertions(+) create mode 100644 deepinv_bench/benchmarks/nbu_pansharpening/datasets/nbu.py 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..529a7c7 --- /dev/null +++ b/deepinv_bench/benchmarks/nbu_pansharpening/datasets/nbu.py @@ -0,0 +1,49 @@ +from benchopt import BaseDataset +from benchopt.config import get_data_path + +import deepinv as dinv +from torchvision import transforms + + +class Dataset(BaseDataset): + name = "NBU" + + 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="NBU", + 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 dict( + dataset=dataset, + physics=physics, + ) \ No newline at end of file From d6886207e689e0fb106ab848a0a2918c14cf644a Mon Sep 17 00:00:00 2001 From: dldou <99049494+dldou@users.noreply.github.com> Date: Wed, 2 Sep 2026 11:45:36 +0200 Subject: [PATCH 2/2] bilinear filter --- .../benchmarks/nbu_pansharpening/datasets/nbu.py | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-) diff --git a/deepinv_bench/benchmarks/nbu_pansharpening/datasets/nbu.py b/deepinv_bench/benchmarks/nbu_pansharpening/datasets/nbu.py index 529a7c7..799cedd 100644 --- a/deepinv_bench/benchmarks/nbu_pansharpening/datasets/nbu.py +++ b/deepinv_bench/benchmarks/nbu_pansharpening/datasets/nbu.py @@ -1,12 +1,11 @@ +import deepinv as dinv from benchopt import BaseDataset from benchopt.config import get_data_path - -import deepinv as dinv from torchvision import transforms class Dataset(BaseDataset): - name = "NBU" + name = "NBUDataset" parameters = { "physics": ["Pansharpening"], @@ -30,7 +29,7 @@ def get_data(self): ) dataset = dinv.datasets.NBUDataset( - root_dir="NBU", + root_dir=root, satellite=self.satellite, return_pan=self.return_pan, download=True, @@ -43,7 +42,7 @@ def get_data(self): img_size=(4, self.img_size, self.img_size), ) - return dict( - dataset=dataset, - physics=physics, - ) \ No newline at end of file + return { + "dataset": dataset, + "physics": physics, + } \ No newline at end of file