jax.scipy.signal.convolve2d#

jax.scipy.signal.convolve2d(in1, in2, mode='full', boundary='fill', fillvalue=0, precision=None)[source]#

Convolve two 2-dimensional arrays.

LAX-backend implementation of scipy.signal._signaltools.convolve2d().

Original docstring below.

Convolve in1 and in2 with output size determined by mode, and boundary conditions determined by boundary and fillvalue.

Parameters
  • in1 (array_like) – First input.

  • in2 (array_like) – Second input. Should have the same number of dimensions as in1.

  • mode (str {'full', 'valid', 'same'}, optional) –

    A string indicating the size of the output:

    full

    The output is the full discrete linear convolution of the inputs. (Default)

    valid

    The output consists only of those elements that do not rely on the zero-padding. In β€˜valid’ mode, either in1 or in2 must be at least as large as the other in every dimension.

    same

    The output is the same size as in1, centered with respect to the β€˜full’ output.

  • boundary (str {'fill', 'wrap', 'symm'}, optional) –

    A flag indicating how to handle boundaries:

    fill

    pad input arrays with fillvalue. (default)

    wrap

    circular boundary conditions.

    symm

    symmetrical boundary conditions.

  • fillvalue (scalar, optional) – Value to fill pad input arrays with. Default is 0.

  • precision (Union[None, str, Precision, Tuple[str, str], Tuple[Precision, Precision]]) –

Returns

out – A 2-dimensional array containing a subset of the discrete linear convolution of in1 with in2.

Return type

ndarray