Transpose a floating-point tensor.
arm_cmsis_nn_status arm_transpose_f32( const cmsis_nn_context *ctx, const cmsis_nn_transpose_params_f32 *params, const cmsis_nn_dims *input_dims, const float32_t *input, const cmsis_nn_dims *output_dims, float32_t *output)Transpose a floating-point tensor.
Parameters
| Name | Type | Direction | Description |
|---|---|---|---|
ctx | const cmsis_nn_context * | in, out | Function context that may hold a temporary scratch buffer. |
params | const cmsis_nn_transpose_params_f32 * | in | Transpose parameters, including permutation and layout information. num_dims must be in [1, 4] and perm must be a bijection over [0, num_dims - 1]. |
input_dims | const cmsis_nn_dims * | in | Input tensor dimensions. |
input | const float32_t * | in | Pointer to the input tensor data. |
output_dims | const cmsis_nn_dims * | in | Output tensor dimensions. The first params->num_dims fields, taken in the order [N, H, W, C], must satisfy output[i] == input[perm[i]]; the function returns `ARM_CMSIS_NN_ARG_ERROR` and writes nothing if they do not. |
output | float32_t * | out | Pointer to the output tensor data. |
Returns
| Description |
|---|
| `ARM_CMSIS_NN_SUCCESS` on success or `ARM_CMSIS_NN_ARG_ERROR` on invalid arguments. |