src.model.deeplearn.layer.interdimensional_point_transformer_layer

Classes

InterdimensionalPointTransformerLayer(*args, ...)

class src.model.deeplearn.layer.interdimensional_point_transformer_layer.InterdimensionalPointTransformerLayer(*args, **kwargs)
Author:

Alberto M. Esmoris Pena

Interdimensional version of the PointTransformerLayer layer. Instead of transforming \(R\) input points with \(D_{\text{in}}\) features into \(R\) output points with \(D_{\text{out}}\) features, it transforms \(R_1\) input points with \(D_{\text{in}}\) features into \(R_2\) output points with \(D_{\text{out}}\) features.

See PointTransformerLayer.

__init__(**kwargs)

See Layer and Layer.__init__(). Also see PointTransformerLayer and PointTransformerLayer.__init__().

build(dim_in)

See PointTransformerLayer and PointTransformerLayer.build().

call(inputs, training=False, mask=False)

Compute the interdimensional version of PointTransformer. The main difference with respect to the class PointTransformerLayer

Parameters:

inputs

The input such that:

– inputs[0]

is the structure space tensor representing the geometry of the many original-dimensional receptive fields in the batch.

\[\mathcal{X_a} \in \mathbb{R}^{K \times R_1 \times n_x}\]
– inputs[1]

is the structure space tensor representing the geometry of the many new-dimensional receptive fields in the batch.

\[\mathcal{X_b} \in \mathbb{R}^{K \times R_2 \times n_x}\]
– inputs[2]

is the feature space tensor representing the features of the many original-dimensional receptive fields in the batch.

\[\mathcal{F} \in \mathbb{R}^{K \times R_1 \times n_f}\]
– inputs[3]

is the indexing tensor representing the neighborhoods of \(\kappa\) neighbors in the original-dimensional space for each point in the new-dimensional space.

\[\mathcal{N} \in \mathbb{Z}^{K \times R_2 \times \kappa}\]

Returns:

The output feature space \(\mathcal{\hat{F}} \in \mathbb{R}^{K \times R_2 \times D_{\mathrm{out}}}\).