src.model.fourier_positional_encoding module#

class src.model.fourier_positional_encoding.FourierPositionalEncoding(*args: Any, **kwargs: Any)[source]#

Bases: Module

Fourier positional encoding (Fourier feature mapping).

Maps low-dimensional continuous coordinates such as (x, y) into a high-dimensional frequency space with sine and cosine functions. This helps neural networks learn high-frequency details more effectively, as in NeRF.

__init__(out_dim: int = 256, num_bands: int = 64, min_freq: float = 0.001)[source]#
Parameters:
  • out_dim (int) – Final output embedding dimension.

  • num_bands (int) – Number of frequency bands used.

  • min_freq (float) – Minimum base frequency.

forward(x: torch.Tensor)[source]#
Parameters:

x (torch.Tensor) – Input coordinates. Shape: (…, 2), assuming the last dimension is (x, y).

Returns:

Positional encoding features.

Shape: (…, out_dim).

Return type:

torch.Tensor