ARM Compute Library
17.04
|
Go to the source code of this file.
Data Structures | |
struct | Vector |
Structure to hold Vector information. More... | |
struct | Image |
Structure to hold Image information. More... | |
struct | Tensor3D |
Structure to hold 3D tensor information. More... | |
Macros | |
#define | CLAMP(x, min_val, max_val) min(max(x, min_val), max_val) |
#define | VEC_DATA_TYPE_STR(type, size) type##size |
#define | VEC_DATA_TYPE(type, size) VEC_DATA_TYPE_STR(type, size) |
#define | CONVERT_STR(x, type) (convert_##type((x))) |
#define | CONVERT(x, type) CONVERT_STR(x, type) |
#define | CONVERT_SAT_STR(x, type) (convert_##type##_sat((x))) |
#define | CONVERT_SAT(x, type) CONVERT_SAT_STR(x, type) |
#define | CONVERT_SAT_ROUND_STR(x, type, round) (convert_##type##_sat_##round((x))) |
#define | CONVERT_SAT_ROUND(x, type, round) CONVERT_SAT_ROUND_STR(x, type, round) |
#define | VECTOR_DECLARATION(name) |
#define | IMAGE_DECLARATION(name) |
#define | TENSOR3D_DECLARATION(name) |
#define | CONVERT_TO_VECTOR_STRUCT(name) update_vector_workitem_ptr(name##_ptr, name##_offset_first_element_in_bytes, name##_stride_x, name##_step_x) |
#define | CONVERT_TO_VECTOR_STRUCT_NO_STEP(name) update_vector_workitem_ptr(name##_ptr, name##_offset_first_element_in_bytes, name##_stride_x, 0) |
#define | CONVERT_TO_IMAGE_STRUCT(name) update_image_workitem_ptr(name##_ptr, name##_offset_first_element_in_bytes, name##_stride_x, name##_step_x, name##_stride_y, name##_step_y) |
#define | CONVERT_TO_IMAGE_STRUCT_NO_STEP(name) update_image_workitem_ptr(name##_ptr, name##_offset_first_element_in_bytes, name##_stride_x, 0, name##_stride_y, 0) |
#define | CONVERT_TO_TENSOR3D_STRUCT(name) |
#define | CONVERT_TO_TENSOR3D_STRUCT_NO_STEP(name) update_tensor3D_workitem_ptr(name##_ptr, name##_offset_first_element_in_bytes, name##_stride_x, 0, name##_stride_y, 0, name##_stride_z, 0) |
Typedefs | |
typedef struct Vector | Vector |
Structure to hold Vector information. More... | |
typedef struct Image | Image |
Structure to hold Image information. More... | |
typedef struct Tensor3D | Tensor3D |
Structure to hold 3D tensor information. More... | |
Functions | |
Vector | update_vector_workitem_ptr (__global uchar *ptr, uint offset_first_element_in_bytes, uint stride_x, uint step_x) |
Wrap vector information into an Vector structure, and make the pointer point at this workitem's data. More... | |
Image | update_image_workitem_ptr (__global uchar *ptr, uint offset_first_element_in_bytes, uint stride_x, uint step_x, uint stride_y, uint step_y) |
Wrap image information into an Image structure, and make the pointer point at this workitem's data. More... | |
Tensor3D | update_tensor3D_workitem_ptr (__global uchar *ptr, uint offset_first_element_in_bytes, uint stride_x, uint step_x, uint stride_y, uint step_y, uint stride_z, uint step_z) |
Wrap 3D tensor information into an tensor structure, and make the pointer point at this workitem's data. More... | |
__global const uchar * | vector_offset (const Image *img, int x) |
Get the pointer position of a Vector. More... | |
__global uchar * | offset (const Image *img, int x, int y) |
Get the pointer position of a Image. More... | |
__global const uchar * | tensor3D_offset (const Tensor3D *tensor, int x, int y, int z) |
Get the pointer position of a Tensor3D. More... | |
#define CLAMP | ( | x, | |
min_val, | |||
max_val | |||
) | min(max(x, min_val), max_val) |
#define CONVERT | ( | x, | |
type | |||
) | CONVERT_STR(x, type) |
Definition at line 35 of file helpers.h.
Referenced by absdiff(), arithmetic_add(), arithmetic_sub(), bilinear_interpolate(), convert_depth_up(), convolution1x3(), convolution1x5(), convolution1x7(), convolution1x9(), convolution5x1(), convolution7x1(), convolution9x1(), minmax(), normalization_layer_cross_map(), normalization_layer_in_map(), pixelwise_mul_float(), pixelwise_mul_int(), softmax_layer_max(), and softmax_layer_shift_exp_sum().
#define CONVERT_SAT | ( | x, | |
type | |||
) | CONVERT_SAT_STR(x, type) |
Definition at line 38 of file helpers.h.
Referenced by absdiff(), combine_gradients_L1(), convolution3x3_static(), convolution5x5_static(), convolution7x7_static(), convolution9x9_static(), convolution_rectangle(), convolution_separable5x1_static(), convolution_separable7x1_static(), convolution_separable9x1_static(), magnitude_l1(), and magnitude_l2().
#define CONVERT_SAT_ROUND | ( | x, | |
type, | |||
round | |||
) | CONVERT_SAT_ROUND_STR(x, type, round) |
Definition at line 41 of file helpers.h.
Referenced by combine_gradients_L2().
#define CONVERT_SAT_ROUND_STR | ( | x, | |
type, | |||
round | |||
) | (convert_##type##_sat_##round((x))) |
#define CONVERT_SAT_STR | ( | x, | |
type | |||
) | (convert_##type##_sat((x))) |
#define CONVERT_TO_IMAGE_STRUCT | ( | name | ) | update_image_workitem_ptr(name##_ptr, name##_offset_first_element_in_bytes, name##_stride_x, name##_step_x, name##_stride_y, name##_step_y) |
Definition at line 73 of file helpers.h.
Referenced by absdiff(), accumulate(), accumulate_squared(), accumulate_weighted(), activation_layer(), arithmetic_add(), arithmetic_sub(), bitwise_and(), bitwise_not(), bitwise_or(), bitwise_xor(), channel_combine_NV(), channel_combine_RGB888(), channel_combine_RGBA8888(), channel_combine_UYVY422(), channel_combine_YUYV422(), channel_extract_NV12(), channel_extract_NV21(), channel_extract_RGB888(), channel_extract_RGBA8888(), channel_extract_UYVY422(), channel_extract_YUYV422(), col2im(), combine_gradients_L1(), combine_gradients_L2(), convert_depth_down(), convert_depth_up(), convolution3x3_static(), convolution5x5_static(), convolution7x7_static(), convolution9x9_static(), convolution_rectangle(), convolution_separable1x5_static(), convolution_separable1x7_static(), convolution_separable1x9_static(), convolution_separable5x1_static(), convolution_separable7x1_static(), convolution_separable9x1_static(), copy_plane(), copy_planes_3p(), copy_to_keypoint(), derivative(), dilate(), erode(), fast_corners(), gaussian1x5_sub_x(), gaussian5x1_sub_y(), gemm_accumulate_biases_f16(), gemm_accumulate_biases_f32(), gemm_interleave4x4_f16(), gemm_interleave4x4_f32(), gemm_interleave4x4_u8(), gemm_transpose1x16_u8(), gemm_transpose1x4_f32(), gemm_transpose1x8_f16(), harris_score_3x3(), harris_score_5x5(), harris_score_7x7(), hist_border_kernel(), hist_border_kernel_fixed(), hist_local_kernel(), hist_local_kernel_fixed(), integral_horizontal(), integral_vertical(), IYUV_to_NV12_bt709(), IYUV_to_RGB888_bt709(), IYUV_to_RGBA8888_bt709(), IYUV_to_YUV444_bt709(), magnitude_phase(), mean_stddev_accumulate(), minmax(), minmaxloc(), non_linear_filter_box3x3(), non_linear_filter_box5x5(), non_linear_filter_cross3x3(), non_linear_filter_cross5x5(), non_linear_filter_disk3x3(), non_linear_filter_disk5x5(), non_max_suppression(), NV12_to_IYUV_bt709(), NV12_to_RGB888_bt709(), NV12_to_RGBA8888_bt709(), NV12_to_YUV444_bt709(), NV21_to_IYUV_bt709(), NV21_to_RGB888_bt709(), NV21_to_RGBA8888_bt709(), NV21_to_YUV444_bt709(), pixelwise_mul_float(), pixelwise_mul_int(), pooling_layer_2(), pooling_layer_3(), remap_bilinear(), remap_nearest_neighbour(), RGB888_to_IYUV_bt709(), RGB888_to_NV12_bt709(), RGB888_to_RGBA8888_bt709(), RGB888_to_YUV444_bt709(), RGBA8888_to_IYUV_bt709(), RGBA8888_to_NV12_bt709(), RGBA8888_to_RGB888_bt709(), RGBA8888_to_YUV444_bt709(), scale_bilinear(), scale_nearest_neighbour(), scharr3x3(), sobel3x3(), sobel_separable1x5(), sobel_separable1x7(), sobel_separable5x1(), sobel_separable7x1(), softmax_layer_max(), softmax_layer_norm(), softmax_layer_shift_exp_sum(), suppress_non_maximum(), tablelookup_S16(), tablelookup_U8(), threshold_binary(), threshold_range(), transpose(), UYVY422_to_IYUV_bt709(), UYVY422_to_NV12_bt709(), UYVY422_to_RGB888_bt709(), UYVY422_to_RGBA8888_bt709(), warp_affine_bilinear(), warp_affine_nearest_neighbour(), warp_perspective_bilinear(), warp_perspective_nearest_neighbour(), YUYV422_to_IYUV_bt709(), YUYV422_to_NV12_bt709(), YUYV422_to_RGB888_bt709(), and YUYV422_to_RGBA8888_bt709().
#define CONVERT_TO_IMAGE_STRUCT_NO_STEP | ( | name | ) | update_image_workitem_ptr(name##_ptr, name##_offset_first_element_in_bytes, name##_stride_x, 0, name##_stride_y, 0) |
Definition at line 76 of file helpers.h.
Referenced by fill_image_borders_constant(), fill_image_borders_replicate(), hysteresis(), im2col_generic(), lktracker_stage0(), lktracker_stage1(), remap_bilinear(), remap_nearest_neighbour(), scale_bilinear(), scale_nearest_neighbour(), softmax_layer_norm(), warp_affine_bilinear(), warp_affine_nearest_neighbour(), warp_perspective_bilinear(), and warp_perspective_nearest_neighbour().
#define CONVERT_TO_TENSOR3D_STRUCT | ( | name | ) |
Definition at line 79 of file helpers.h.
Referenced by im2col_generic(), im2col_reduced(), normalization_layer_cross_map(), normalization_layer_in_map(), and reshape_to_columns().
#define CONVERT_TO_TENSOR3D_STRUCT_NO_STEP | ( | name | ) | update_tensor3D_workitem_ptr(name##_ptr, name##_offset_first_element_in_bytes, name##_stride_x, 0, name##_stride_y, 0, name##_stride_z, 0) |
#define CONVERT_TO_VECTOR_STRUCT | ( | name | ) | update_vector_workitem_ptr(name##_ptr, name##_offset_first_element_in_bytes, name##_stride_x, name##_step_x) |
Definition at line 67 of file helpers.h.
Referenced by gemm_accumulate_biases_f16(), and gemm_accumulate_biases_f32().
#define CONVERT_TO_VECTOR_STRUCT_NO_STEP | ( | name | ) | update_vector_workitem_ptr(name##_ptr, name##_offset_first_element_in_bytes, name##_stride_x, 0) |
#define IMAGE_DECLARATION | ( | name | ) |
Definition at line 49 of file helpers.h.
Referenced by gemm_accumulate_biases_f16().
#define TENSOR3D_DECLARATION | ( | name | ) |
#define VEC_DATA_TYPE | ( | type, | |
size | |||
) | VEC_DATA_TYPE_STR(type, size) |
Definition at line 32 of file helpers.h.
Referenced by absdiff(), activation_layer(), arithmetic_add(), arithmetic_sub(), bilinear_interpolate(), combine_gradients_L1(), combine_gradients_L2(), convert_depth_down(), convert_depth_up(), convolution1x3(), convolution1x5(), convolution1x7(), convolution1x9(), convolution3x3(), convolution3x3_static(), convolution5x1(), convolution5x5(), convolution5x5_static(), convolution7x1(), convolution7x7(), convolution7x7_static(), convolution9x1(), convolution9x9(), convolution9x9_static(), convolution_rectangle(), convolution_separable1x5_static(), convolution_separable1x7_static(), convolution_separable1x9_static(), convolution_separable5x1_static(), convolution_separable7x1_static(), convolution_separable9x1_static(), harris_score_1x5(), harris_score_1x7(), harris_score_3x3(), hysteresis(), magnitude_l1(), magnitude_l2(), magnitude_phase(), minmax(), non_max_suppression(), normalization_layer_in_map(), pixelwise_mul_float(), pixelwise_mul_int(), pooling_layer_2(), pooling_layer_3(), read_texels4(), softmax_layer_max(), softmax_layer_norm(), softmax_layer_shift_exp_sum(), and transpose().
#define VECTOR_DECLARATION | ( | name | ) |
|
inline |
Get the pointer position of a Image.
[in] | img | Pointer to the starting position of the buffer |
[in] | x | Relative X position |
[in] | y | Relative Y position |
Definition at line 201 of file helpers.h.
References Image::ptr, Image::stride_x, and Image::stride_y.
Referenced by bilinear_interpolate(), channel_combine_NV(), convolution3x3(), convolution5x1(), convolution5x5(), convolution7x1(), convolution7x7(), convolution9x1(), convolution9x9(), convolution_rectangle(), convolution_separable1x5_static(), convolution_separable1x7_static(), convolution_separable1x9_static(), copy_planes_3p(), copy_to_keypoint(), derivative(), dilate(), erode(), fill_image_borders_constant(), fill_image_borders_replicate(), gaussian5x1_sub_y(), gemm_accumulate_biases_f16(), gemm_interleave4x4_f16(), gemm_interleave4x4_f32(), gemm_interleave4x4_u8(), harris_score_1x5(), harris_score_1x7(), harris_score_3x3(), hist_border_kernel(), hysteresis(), integral_horizontal(), integral_vertical(), lktracker_stage0(), lktracker_stage1(), mean_stddev_accumulate(), minmax(), non_linear_filter_box3x3(), non_linear_filter_box5x5(), non_linear_filter_cross3x3(), non_linear_filter_cross5x5(), non_linear_filter_disk3x3(), non_linear_filter_disk5x5(), non_max_suppression(), pooling_layer_2(), pooling_layer_3(), read_texels4(), scharr3x3(), sobel1x5(), sobel3x3(), sobel5x1(), softmax_layer_max(), softmax_layer_norm(), softmax_layer_shift_exp_sum(), suppress_non_maximum(), and transpose().
|
inline |
Get the pointer position of a Tensor3D.
[in] | tensor | Pointer to the starting postion of the buffer |
[in] | x | Relative X position |
[in] | y | Relative Y position |
[in] | z | Relative Z position |
Definition at line 213 of file helpers.h.
References Tensor3D::ptr, Tensor3D::stride_x, Tensor3D::stride_y, and Tensor3D::stride_z.
Referenced by im2col_generic(), normalization_layer_cross_map(), and normalization_layer_in_map().
|
inline |
Wrap image information into an Image structure, and make the pointer point at this workitem's data.
[in] | ptr | Pointer to the starting postion of the buffer |
[in] | offset_first_element_in_bytes | The offset of the first element in the source image |
[in] | stride_x | Stride of the image in X dimension (in bytes) |
[in] | step_x | stride_x * number of elements along X processed per workitem(in bytes) |
[in] | stride_y | Stride of the image in Y dimension (in bytes) |
[in] | step_y | stride_y * number of elements along Y processed per workitem(in bytes) |
Definition at line 145 of file helpers.h.
References Vector::offset_first_element_in_bytes, Image::offset_first_element_in_bytes, Vector::ptr, Image::ptr, and Vector::stride_x.
|
inline |
Wrap 3D tensor information into an tensor structure, and make the pointer point at this workitem's data.
[in] | ptr | Pointer to the starting postion of the buffer |
[in] | offset_first_element_in_bytes | The offset of the first element in the source image |
[in] | stride_x | Stride of the image in X dimension (in bytes) |
[in] | step_x | stride_x * number of elements along X processed per workitem(in bytes) |
[in] | stride_y | Stride of the image in Y dimension (in bytes) |
[in] | step_y | stride_y * number of elements along Y processed per workitem(in bytes) |
[in] | stride_z | Stride of the image in Z dimension (in bytes) |
[in] | step_z | stride_z * number of elements along Z processed per workitem(in bytes) |
Definition at line 171 of file helpers.h.
References Vector::offset_first_element_in_bytes, Tensor3D::offset_first_element_in_bytes, Vector::ptr, Tensor3D::ptr, and Vector::stride_x.
|
inline |
Wrap vector information into an Vector structure, and make the pointer point at this workitem's data.
[in] | ptr | Pointer to the starting postion of the buffer |
[in] | offset_first_element_in_bytes | The offset of the first element in the source vector |
[in] | stride_x | Stride of the vector in X dimension (in bytes) |
[in] | step_x | stride_x * number of elements along X processed per workitem(in bytes) |
Definition at line 122 of file helpers.h.
References Vector::offset_first_element_in_bytes, Vector::ptr, and Vector::stride_x.
|
inline |
Get the pointer position of a Vector.
[in] | img | Pointer to the starting position of the buffer |
[in] | x | Relative X position |
Definition at line 190 of file helpers.h.
References Image::ptr, and Image::stride_x.