autoencoder.spherical.convolution
#
Module Contents#
Classes#
Special non-linearity function for data in spectral domain. |
|
Convolution between spherical signals and kernels in spectral domain. |
|
Convolution between SO(3) signals and kernels in spectral domain. |
- class autoencoder.spherical.convolution.QuadraticNonLinearity(l_in, l_out, symmetric=True)#
Bases:
torch.nn.Module
Special non-linearity function for data in spectral domain. Code adapated from: https://gitlab.inria.fr/ssedlar/fourier_s2cnn/-/blob/master/fourier_s2cnn/estimators/fourier_s2cnn_utils.py#L180
- Parameters
l_in (int) – input Spherical Harmonic degree.
l_out (int) – output Spherical Harmonic degree.
symmetric (bool) – only use Spherical Harmonics of even degree. Defaults to True.
- forward(self, x)#
- Parameters
x (Dict[int, torch.Tensor]) –
- Return type
Dict[int, torch.Tensor]
- class autoencoder.spherical.convolution.S2Convolution(ti_n, te_n, l_in, b_in, b_out, symmetric=True)#
Bases:
torch.nn.Module
Convolution between spherical signals and kernels in spectral domain.
- Parameters
ti_n (int) – number of TI values
te_n (int) – number of TE values
l_in (int) – Spherical Harmonics degree
b_in (int) – number of input b-values
b_out (int) – number of output b-values
symmetric (bool) – only use Spherical Harmonics of even degree. Defaults to True.
- forward(self, x)#
- Parameters
x (Dict[int, torch.Tensor]) –
- Return type
Dict[int, torch.Tensor]
- class autoencoder.spherical.convolution.SO3Convolution(ti_n, te_n, l_in, b_in, b_out, symmetric=True)#
Bases:
torch.nn.Module
Convolution between SO(3) signals and kernels in spectral domain.
- Parameters
ti_n – number of TI values
te_n – number of TE values
l_in – Spherical Harmonics degree
b_in – number of input b-values
b_out – number of output b-values
symmetric (bool) – only use Spherical Harmonics of even degree. Defaults to True.
- forward(self, x)#
- Parameters
x (Dict[int, torch.Tensor]) –
- Return type
Dict[int, torch.Tensor]