conv2d#

2D convolution

template<typename In1Type, typename In2Type>
__MATX_INLINE__ auto matx::conv2d(const In1Type &i1, const In2Type &i2, matxConvCorrMode_t mode)#

2D convolution

Template Parameters:
  • In1Type – Type of first input

  • In2Type – Type of second input

Parameters:
  • i1 – First input operator

  • i2 – Second input operator

  • mode – Convolution mode

template<typename In1Type, typename In2Type>
__MATX_INLINE__ auto matx::conv2d(const In1Type &i1, const In2Type &i2, const int32_t (&axis)[2], matxConvCorrMode_t mode)#

2D convolution

Template Parameters:
  • In1Type – Type of first input

  • In2Type – Type of second input

Parameters:
  • i1 – First input operator

  • i2 – Second input operator

  • axis – the axis to perform convolution

  • mode – Convolution mode

Convolution/Correlation Mode#

The mode parameter specifies how the output size is determined:

  • MATX_C_MODE_FULL: Keep all elements including ramp-up/down (output size = N + M - 1)

  • MATX_C_MODE_SAME: Keep only elements where entire filter was present (output size = max(N, M))

  • MATX_C_MODE_VALID: Keep only elements with full overlap (output size = max(N, M) - min(N, M) + 1)

Examples#

(this->cv_same = conv2d(this->av, this->bv_even, MATX_C_MODE_SAME)).run(this->exec);