conv2d_fft#

deepinv.physics.functional.conv2d_fft(x, filter, real_fft=True)[source]#

A helper function performing the 2d convolution of images x and filter using FFT.

The adjoint of this operation is deepinv.physics.functional.conv_transpose2d_fft()

If b = 1 or c = 1, then this function supports broadcasting as the same as numpy. Otherwise, each channel of each image is convolved with the corresponding kernel.

For convolution using FFT consider only 'circular' padding (i.e., circular convolution).

Parameters:
  • x (torch.Tensor) – Image of size (B, C, W, H).

  • filter (torch.Tensor) – Filter of size (b, c, w, h) where b can be either 1 or B and c can be either 1 or C.

Returns:

torch.Tensor : the output of the convolution of the shape size as \(x\)

Return type:

Tensor