Compound Loss Functions
This guide covers the full loss system in pytorchsegmentationmodels_trainer, from the base Loss class to MultiLoss composition, weight scheduling, and distributed normalization.
Frame Field Models In Depth
This guide explains what frame fields are, why they improve polygonization, and how the FrameFieldSegmentationPLModel and its associated losses work together.
Domain Adaptation
Domain adaptation (DA) lets you take a segmentation model trained on a labeled source domain and transfer its knowledge to an unlabeled (or weakly labeled) target domain, without requiring full annotations in the target.
Test Time Augmentation (TTA)
Test Time Augmentation improves prediction quality without retraining: the model runs multiple times on geometrically transformed versions of the same input, each prediction is reversed back to the original orientation, and the results are averaged.
Implementing a DA Method
Adding a new DA method requires creating a single file with a subclass of BaseDomainAdaptationMethod. No framework code needs to be modified.
RandomCrop Dataset
RandomCropSegmentationDataset reads large images on-the-fly using rasterio windowed reads instead of pre-generating tiles on disk. This eliminates the disk space overhead of a tile library and allows crop size, augmentation, and sampling strategy to be changed without reprocessing data.
DA Config Reference
Full reference for all fields in the domain_adaptation config section used by DomainAdaptationModel.
GPU K-Means Clustering
The framework provides a high-performance Mini-Batch K-Means implementation powered by PyTorch, specifically designed for clustering large volumes of embeddings or features on GPU.
Mixture of Experts Models
Two UPerNet variants replace selected decoder convolutions with Mixture of Experts (MoE) blocks, adding conditional computation capacity without a proportional increase in inference-time FLOPs.
DANN — Gradient Reversal
DANNMethod is the built-in implementation of the Domain Adversarial Neural Network strategy from:
Dual-Head Training
UPerNetDualHead extends UPerNet with two independent decoders sharing a single encoder. The two heads are supervised with different label types simultaneously:
Evidential Deep Learning
Uncertainty quantification for segmentation using Dirichlet-based evidential models.
MC Dropout (Uncertainty)
Test-time uncertainty estimation via Monte Carlo Dropout for segmentation models.