Skip to main content

ClikaRT::ops::unfold

function

unfold()

Tensor unfold(
    Tensor x,
    ClikaRT::Span<const std::int64_t> kernel_size,
    ClikaRT::Span<const std::int64_t> dilation,
    ClikaRT::Span<const std::int64_t> padding,
    ClikaRT::Span<const std::int64_t> stride,
    PadMode mode = PadMode::Constant,
    std::optional<double> value = std::nullopt
)

im2col: extracts sliding kernel windows from a channels-last input.

Input [N, spatial.., C] (1-D/2-D/3-D); output [N, L, prod(kernel_size), C] where L is the number of window placements; channels-last throughout (window samples sit next to channels).

Parameters

  • x: channels-last input, rank 3/4/5.
  • kernel_size: per-dim window extents.
  • dilation: per-dim window dilation.
  • padding: per-dim zero padding.
  • stride: per-dim window step.

Throws

  • ClikaRT::Error: when the input's dtype/shape is not served for this operation (the machine-readable reason rides code_name()).

Returns: [N, L, prod(kernel_size), C].

Declared in ClikaRT/compute/ops.h, line 1953