multigeom.encoders.backbones#

Feature extractors (backbones). The reference encoders use frozen, pretrained ones: InceptionV3 and ResNet-50 (ImageNet weights, torchvision) and the ON-OFF front-end of Berardino et al. (2017) (plenoptic), truncated at a chosen layer. SmallCNNBackbone is a small trainable one, to build an encoder from scratch.

A backbone is an `nn.Module` that maps an image batch to a feature map [B, C, S, S] and
has the attributes `out_channels` (C) and `out_spatial` (S).

Classes

InceptionBackbone(*args, **kwargs)

Frozen InceptionV3 truncated at Conv2d_4a_3x3.

OnOffBackbone(*args, **kwargs)

Frozen Berardino-2017 ON-OFF front-end from the plenoptic library.

ResNet50Backbone(*args, **kwargs)

Frozen ResNet-50 truncated at layer1.0.

SmallCNNBackbone(*args, **kwargs)

A small convolutional backbone, trainable from scratch in minutes: three convolution blocks (convolution, BatchNorm, ReLU) with two 2 x 2 max-poolings.