torchgeo.trainers#

TorchGeo provides LightningModules for a number of common tasks in geospatial and geotemporal deep learning.

Supervised Learning#

Supervised learning tasks have both inputs and labeled outputs.

Supervised Learning Tasks#

Input

Output

Task

\(\mathbb{R}^{T \times C}\)

\(\mathbb{R}^{T \times C}\)

TemporalRegressionTask

\(\mathbb{R}^{C \times H \times W}\)

\(\mathbb{N}\) or \(\mathbb{N}^C\)

ClassificationTask

\(\mathbb{R}^{C \times H \times W}\)

\(\mathbb{R}\) or \(\mathbb{R}^C\)

RegressionTask

\(\mathbb{R}^{C \times H \times W}\)

\(\mathbb{N}^{H \times W}\)

SemanticSegmentationTask

\(\mathbb{R}^{C \times H \times W}\)

\(\mathbb{R}^{H \times W}\)

PixelwiseRegressionTask

\(\mathbb{R}^{C \times H \times W}\)

\(\mathbb{R}^{O \times 4}\)

ObjectDetectionTask

\(\mathbb{R}^{C \times H \times W}\)

\(\mathbb{N}^{O \times H \times W}\)

InstanceSegmentationTask

\(\mathbb{R}^{2 \times C \times H \times W}\)

\(\mathbb{N}^{H \times W}\)

ChangeDetectionTask

\(\mathbb{R}^{T \times C \times H \times W}\)

\(\mathbb{N}^{H \times W}\)

SpatioTemporalSegmentationTask

Self-Supervised Learning#

Self-supervised learning (SSL) tasks have inputs and create their own labeled outputs.

Self-Supervised Learning Tasks#

Input

Task

\(\mathbb{R}^{C \times H \times W}\) or \(\mathbb{R}^{T \times C \times H \times W}\)

BYOLTask

\(\mathbb{R}^{C \times H \times W}\)

MAETask

\(\mathbb{R}^{C \times H \times W}\) or \(\mathbb{R}^{T \times C \times H \times W}\)

MoCoTask

\(\mathbb{R}^{C \times H \times W}\) or \(\mathbb{R}^{T \times C \times H \times W}\)

SimCLRTask

Non-Learning Tasks#

Tasks that do not relate to learning.

Non-Learning Tasks#

Input

Task

\(\mathbb{R}^{C \times H \times W}\)

IOBenchTask

Base Classes#

Abstract base classes that all other tasks inherit from.

Base Classes#

Task

BaseTask

Mixins#

Mixins that support code reuse across multiple tasks.

Mixins#

Output

Mixin

\(\mathbb{N}\) or \(\mathbb{N}^C\) or \(\mathbb{N}^{H \times W}\)

ClassificationMixin

\(\mathbb{R}\) or \(\mathbb{R}^C\) or \(\mathbb{R}^{T \times C}\) or \(\mathbb{R}^{H \times W}\)

RegressionMixin