- Description:
- Computes the L1 norm given 2 16-bit signed inputs, resulting in an unsigned 16-bit norm result.
- Method:
- The L1 norm is computed using the following equation:
dst(x,y) = min(abs(src_x(x,y)), 0x7FFF) + min(abs(src_y(x,y)), 0x7FFF)
- Parameters
-
[in] | src_x[] | Pointer to array containing first input image (SQ15.0) |
[in] | src_x_addr[] | Pointer to structure containing dimensional information of src0 |
[in] | src_y[] | Pointer to array containing second input image (SQ15.0) |
[in] | src_y_addr[] | Pointer to structure containing dimensional information of src1 |
[out] | dst[] | Pointer to array containing output image (UQ15.0) |
[in] | dst_addr[] | Pointer to structure containing dimensional information of dst |
- Assumptions:
- I/O buffer pointers are assumed to be not aliased.
- This is intended to be used on the sobel 3x3 or 5x5 output gradients, so that max values of the abs this is tested with is 24480 (max for 5x5 sobel on u8 input).
- The case where the gradient of -32768 is used (min s16), then the abs is saturated to 32767.
- Performance Considerations:
- For best performance, the following parameter settings are recommended:
- Set widths equal to strides
- Align all pointers to 8 byte boundaries
- Set all stride values to a multiple of 8
- Set all width values to a multiple of 8