ZueriCrop#

class torchgeo.datasets.ZueriCrop(root='data', bands=('NIR', 'B03', 'B02', 'B04', 'B05', 'B06', 'B07', 'B11', 'B12'), transforms=None, download=False, checksum=False)[source]#

Bases: NonGeoDataset

ZueriCrop dataset.

The ZueriCrop dataset is a dataset for time-series instance segmentation of crops.

Dataset features:

  • Sentinel-2 multispectral imagery

  • instance masks of 48 crop categories

  • nine multispectral bands

  • 116k images with 10 m per pixel resolution (24x24 px)

  • ~28k time-series containing 142 images each

Dataset format:

  • single hdf5 dataset containing images, semantic masks, and instance masks

  • data is parsed into images and instance masks, boxes, and labels

  • one mask per time-series

Dataset classes:

If you use this dataset in your research, please cite the following paper:

Note

This dataset requires the following additional library to be installed:

  • h5py to load the dataset

rgb_bands: tuple[str, ...] = ('B04', 'B03', 'B02')#

Names of RGB bands in the dataset

__init__(root='data', bands=('NIR', 'B03', 'B02', 'B04', 'B05', 'B06', 'B07', 'B11', 'B12'), transforms=None, download=False, checksum=False)[source]#

Initialize a new ZueriCrop dataset instance.

Parameters:
  • root (str | PathLike[str]) – root directory where dataset can be found

  • bands (Sequence[str]) – the subset of bands to load

  • transforms (Callable[[dict[str, Any]], dict[str, Any]] | None) – a function/transform that takes input sample and its target as entry and returns a transformed version

  • download (bool) – if True, download dataset and store it in the root directory

  • checksum (bool) – if True, check the MD5 of the downloaded files (may be slow)

Raises:
__getitem__(index)[source]#

Return an index within the dataset.

Parameters:

index (int) – index to return

Returns:

sample containing image, mask, bounding boxes, and target label

Return type:

dict[str, Any]

__len__()[source]#

Return the number of data points in the dataset.

Returns:

length of the dataset

Return type:

int

plot(sample, time_step=0, show_titles=True, suptitle=None)[source]#

Plot a sample from the dataset.

Parameters:
  • sample (dict[str, Any]) – a sample returned by __getitem__()

  • time_step (int) – time step at which to access image, beginning with 0

  • show_titles (bool) – flag indicating whether to show titles above each panel

  • suptitle (str | None) – optional suptitle to use for figure

Returns:

a matplotlib Figure with the rendered sample

Raises:

RGBBandsMissingError – If bands does not include all RGB bands.

Return type:

Figure

Added in version 0.2.