Source code for torchgeo_bench.datasets.treesatai

"""TreeSatAI (GeoBench V2) benchmark dataset."""

from .base import BandSpec
from .geobench_v2 import _V2Dataset


[docs] class TreeSatAI(_V2Dataset): """Aerial + Sentinel-2 + SAR tree species classification (15 classes). Multi-sensor dataset with aerial RGB+NIR, 12 Sentinel-2 bands, and 3 SAR bands. Class indices follow the upstream ``GeoBenchTreeSatAI.classes`` ordering: Abies, Acer, Alnus, Betula, Cleared, Fagus, Fraxinus, Larix, Picea, Pinus, Populus, Prunus, Pseudotsuga, Quercus, Tilia. """ band_order_strategy = "by_sensor" name = "treesatai" task = "classification" num_classes = 15 multilabel = True rgb_bands = ["red", "green", "blue"] split_sizes = {"train": 4000, "val": 1000, "test": 2000} # fmt: off bands = [ # German DOP ortho-aerial centre wavelengths (R/G/B/NIR). BandSpec("aerial", "red", "red", mean=154.416, std=48.5986, min=0, max=255, wavelength_um=0.66), BandSpec("aerial", "green", "green", mean=92.4992, std=33.6488, min=0, max=255, wavelength_um=0.55), BandSpec("aerial", "blue", "blue", mean=85.5702, std=28.041, min=0, max=255, wavelength_um=0.48), BandSpec("aerial", "nir", "nir", mean=79.8672, std=33.6009, min=0, max=255, wavelength_um=0.83), BandSpec("s2", "b02", "B02", mean=241.428, std=129.435, min=0, max=3059, wavelength_um=0.49), BandSpec("s2", "b03", "B03", mean=384.216, std=142.58, min=0, max=3253, wavelength_um=0.56), BandSpec("s2", "b04", "B04", mean=247.127, std=148.153, min=0, max=3195, wavelength_um=0.665), BandSpec("s2", "b08", "B08", mean=2828.33, std=762.904, min=0, max=6124, wavelength_um=0.842), BandSpec("s2", "b05", "B05", mean=623.686, std=202.742, min=0, max=3062, wavelength_um=0.705), BandSpec("s2", "b06", "B06", mean=2116.06, std=510.903, min=0, max=4433, wavelength_um=0.74), BandSpec("s2", "b07", "B07", mean=2710.51, std=688.66, min=0, max=5808, wavelength_um=0.783), BandSpec("s2", "b8a", "B8A", mean=2985.2, std=752.79, min=0, max=6175, wavelength_um=0.865), BandSpec("s2", "b11", "B11", mean=1318.65, std=417.57, min=0, max=4093, wavelength_um=1.61), BandSpec("s2", "b12", "B12", mean=594.947, std=250.849, min=0, max=3471, wavelength_um=2.19), BandSpec("s2", "b01", "B01", mean=255.617, std=127.578, min=0, max=2050, wavelength_um=0.443), BandSpec("s2", "b09", "B09", mean=2972.19, std=682.024, min=0, max=5569, wavelength_um=0.945), BandSpec("s1", "vv", "vv", mean=60197.8, std=17913.3, min=0, max=65535), BandSpec("s1", "vh", "vh", mean=65496.9, std=1326.41, min=0, max=65535), BandSpec("s1", "vv_vh", "vv/vh", mean=88.73, std=2409.44, min=0, max=65535), ]
# fmt: on