xnn.cnn.models.steerable.steerable_kernel_basis#

xnn.cnn.models.steerable.steerable_kernel_basis(l_in, l_out, size, bandlimit='compromise', shell_width=0.6)[source]#

Sampled basis of the steerable kernels between two field orders (Sec. 4.4.1).

Basis kernel (m, J) is the angular block angular_kernel_basis() of frequency J times the Gaussian shell exp(-(|x| - m)^2 / (2 shell_width^2)) at integer radius m, kept only when J <= J_max(m), and scaled to unit norm. The basis is ordered shell by shell, frequency by frequency.

Parameters:
  • l_in (int) – Orders of the input and output fields.

  • l_out (int) – Orders of the input and output fields.

  • size (int) – Side s of the cubic kernel; the grid points are the integer offsets from its center.

  • bandlimit (str or sequence of int, optional) – Shell bandlimits, see shell_bandlimits().

  • shell_width (float, optional) – Standard deviation of the radial Gaussians in voxels, by default 0.6.

Returns:

Shape (B, 2 l_out + 1, 2 l_in + 1, s, s, s) in float64, or None when no frequency passes the bandlimits (B = 0).

Return type:

Tensor or None