The OpenVX Specification  r28647
 All Data Structures Functions Variables Typedefs Enumerations Enumerator Groups Pages
vx_kernels.h
1 /*
2  * Copyright (c) 2012-2014 The Khronos Group Inc.
3  *
4  * Permission is hereby granted, free of charge, to any person obtaining a
5  * copy of this software and/or associated documentation files (the
6  * "Materials"), to deal in the Materials without restriction, including
7  * without limitation the rights to use, copy, modify, merge, publish,
8  * distribute, sublicense, and/or sell copies of the Materials, and to
9  * permit persons to whom the Materials are furnished to do so, subject to
10  * the following conditions:
11  *
12  * The above copyright notice and this permission notice shall be included
13  * in all copies or substantial portions of the Materials.
14  *
15  * THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
16  * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
17  * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
18  * IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
19  * CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
20  * TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
21  * MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS.
22  */
23 
24 #ifndef _OPENVX_KERNELS_H_
25 #define _OPENVX_KERNELS_H_
26 
33 #ifdef __cplusplus
34 extern "C" {
35 #endif
36 
38 enum vx_library_e {
40  VX_LIBRARY_KHR_BASE = 0x0,
41 };
42 
57 
64  VX_KERNEL_INVALID = VX_KERNEL_BASE(VX_ID_KHRONOS, VX_LIBRARY_KHR_BASE) + 0x0,
65 
71  VX_KERNEL_COLOR_CONVERT = VX_KERNEL_BASE(VX_ID_KHRONOS, VX_LIBRARY_KHR_BASE) + 0x1,
72 
82 
90 
94  VX_KERNEL_SOBEL_3x3 = VX_KERNEL_BASE(VX_ID_KHRONOS, VX_LIBRARY_KHR_BASE) + 0x4,
95 
101  VX_KERNEL_MAGNITUDE = VX_KERNEL_BASE(VX_ID_KHRONOS, VX_LIBRARY_KHR_BASE) + 0x5,
102 
108  VX_KERNEL_PHASE = VX_KERNEL_BASE(VX_ID_KHRONOS, VX_LIBRARY_KHR_BASE) + 0x6,
109 
117  VX_KERNEL_SCALE_IMAGE = VX_KERNEL_BASE(VX_ID_KHRONOS, VX_LIBRARY_KHR_BASE) + 0x7,
118 
122  VX_KERNEL_TABLE_LOOKUP = VX_KERNEL_BASE(VX_ID_KHRONOS, VX_LIBRARY_KHR_BASE) + 0x8,
123 
127  VX_KERNEL_HISTOGRAM = VX_KERNEL_BASE(VX_ID_KHRONOS, VX_LIBRARY_KHR_BASE) + 0x9,
128 
133 
137  VX_KERNEL_ABSDIFF = VX_KERNEL_BASE(VX_ID_KHRONOS, VX_LIBRARY_KHR_BASE) + 0xB,
138 
142  VX_KERNEL_MEAN_STDDEV = VX_KERNEL_BASE(VX_ID_KHRONOS, VX_LIBRARY_KHR_BASE) + 0xC,
143 
147  VX_KERNEL_THRESHOLD = VX_KERNEL_BASE(VX_ID_KHRONOS, VX_LIBRARY_KHR_BASE) + 0xD,
148 
153 
157  VX_KERNEL_DILATE_3x3 = VX_KERNEL_BASE(VX_ID_KHRONOS, VX_LIBRARY_KHR_BASE) + 0xF,
158 
162  VX_KERNEL_ERODE_3x3 = VX_KERNEL_BASE(VX_ID_KHRONOS, VX_LIBRARY_KHR_BASE) + 0x10,
163 
167  VX_KERNEL_MEDIAN_3x3 = VX_KERNEL_BASE(VX_ID_KHRONOS, VX_LIBRARY_KHR_BASE) + 0x11,
168 
172  VX_KERNEL_BOX_3x3 = VX_KERNEL_BASE(VX_ID_KHRONOS, VX_LIBRARY_KHR_BASE) + 0x12,
173 
177  VX_KERNEL_GAUSSIAN_3x3 = VX_KERNEL_BASE(VX_ID_KHRONOS, VX_LIBRARY_KHR_BASE) + 0x13,
178 
183 
188 
192  VX_KERNEL_ACCUMULATE = VX_KERNEL_BASE(VX_ID_KHRONOS, VX_LIBRARY_KHR_BASE) + 0x16,
193 
198 
203 
207  VX_KERNEL_MINMAXLOC = VX_KERNEL_BASE(VX_ID_KHRONOS, VX_LIBRARY_KHR_BASE) + 0x19,
208 
212  VX_KERNEL_CONVERTDEPTH = VX_KERNEL_BASE(VX_ID_KHRONOS, VX_LIBRARY_KHR_BASE) + 0x1A,
213 
218 
222  VX_KERNEL_AND = VX_KERNEL_BASE(VX_ID_KHRONOS, VX_LIBRARY_KHR_BASE) + 0x1C,
223 
227  VX_KERNEL_OR = VX_KERNEL_BASE(VX_ID_KHRONOS, VX_LIBRARY_KHR_BASE) + 0x1D,
228 
232  VX_KERNEL_XOR = VX_KERNEL_BASE(VX_ID_KHRONOS, VX_LIBRARY_KHR_BASE) + 0x1E,
233 
237  VX_KERNEL_NOT = VX_KERNEL_BASE(VX_ID_KHRONOS, VX_LIBRARY_KHR_BASE) + 0x1F,
238 
242  VX_KERNEL_MULTIPLY = VX_KERNEL_BASE(VX_ID_KHRONOS, VX_LIBRARY_KHR_BASE) + 0x20,
243 
247  VX_KERNEL_ADD = VX_KERNEL_BASE(VX_ID_KHRONOS, VX_LIBRARY_KHR_BASE) + 0x21,
248 
252  VX_KERNEL_SUBTRACT = VX_KERNEL_BASE(VX_ID_KHRONOS, VX_LIBRARY_KHR_BASE) + 0x22,
253 
257  VX_KERNEL_WARP_AFFINE = VX_KERNEL_BASE(VX_ID_KHRONOS, VX_LIBRARY_KHR_BASE) + 0x23,
258 
263 
267  VX_KERNEL_HARRIS_CORNERS = VX_KERNEL_BASE(VX_ID_KHRONOS, VX_LIBRARY_KHR_BASE) + 0x25,
268 
272  VX_KERNEL_FAST_CORNERS = VX_KERNEL_BASE(VX_ID_KHRONOS, VX_LIBRARY_KHR_BASE) + 0x26,
273 
278 
282  VX_KERNEL_REMAP = VX_KERNEL_BASE(VX_ID_KHRONOS, VX_LIBRARY_KHR_BASE) + 0x28,
283 
284 
289 
290  /* insert new kernels here */
291  VX_KERNEL_MAX_1_0,
292 };
293 
294 #ifdef __cplusplus
295 }
296 #endif
297 
298 #endif /* _OPEN_VISION_LIBRARY_KERNELS_H_ */
The Scale Image Kernel.
Definition: vx_kernels.h:117
The Bitwise And Kernel.
Definition: vx_kernels.h:222
The min and max location kernel.
Definition: vx_kernels.h:207
The Sobel 3x3 Filter Kernel.
Definition: vx_kernels.h:94
The Warp Affine Kernel.
Definition: vx_kernels.h:257
The Khronos Group.
Definition: vx_vendors.h:38
The gaussian image pyramid kernel.
Definition: vx_kernels.h:187
The FAST Corners Kernel.
Definition: vx_kernels.h:272
The Bitwise Inclusive Or Kernel.
Definition: vx_kernels.h:227
The Threshold Kernel.
Definition: vx_kernels.h:147
The custom convolution kernel.
Definition: vx_kernels.h:182
The Generic Channel Combine Kernel.
Definition: vx_kernels.h:89
The Optical Flow Pyramid (LK) Kernel.
Definition: vx_kernels.h:277
The Histogram Equalization Kernel.
Definition: vx_kernels.h:132
The accumulation kernel.
Definition: vx_kernels.h:192
The Absolute Difference Kernel.
Definition: vx_kernels.h:137
The Bitwise Not Kernel.
Definition: vx_kernels.h:237
The Magnitude Kernel.
Definition: vx_kernels.h:101
The Table Lookup kernel.
Definition: vx_kernels.h:122
The Pixelwise Multiplication Kernel.
Definition: vx_kernels.h:242
The Remap Kernel.
Definition: vx_kernels.h:282
The weigthed accumulation kernel.
Definition: vx_kernels.h:197
The Canny Edge Detector.
Definition: vx_kernels.h:217
The median image filter.
Definition: vx_kernels.h:167
The gaussian filter kernel.
Definition: vx_kernels.h:177
The Half Scale Gaussian Kernel.
Definition: vx_kernels.h:288
The box filter kernel.
Definition: vx_kernels.h:172
The Generic Channel Extraction Kernel.
Definition: vx_kernels.h:81
The Bitwise Exclusive Or Kernel.
Definition: vx_kernels.h:232
The Warp Perspective Kernel.
Definition: vx_kernels.h:262
The Addition Kernel.
Definition: vx_kernels.h:247
vx_kernel_e
The standard list of available vision kernels.
Definition: vx_kernels.h:56
The invalid kernel is used to for conformance failure in relation to some kernel operation (Get/Relea...
Definition: vx_kernels.h:64
The Histogram Kernel.
Definition: vx_kernels.h:127
The Phase Kernel.
Definition: vx_kernels.h:108
The squared accumulation kernel.
Definition: vx_kernels.h:202
The erode kernel.
Definition: vx_kernels.h:162
The Integral Image Kernel.
Definition: vx_kernels.h:152
The Color Space conversion kernel.
Definition: vx_kernels.h:71
The Mean and Standard Deviation Kernel.
Definition: vx_kernels.h:142
#define VX_KERNEL_BASE(vendor, lib)
Defines the manner in which to combine the Vendor and Library IDs to get the base value of the enumer...
The bit-depth conversion kernel.
Definition: vx_kernels.h:212
The dilate kernel.
Definition: vx_kernels.h:157
The Harris Corners Kernel.
Definition: vx_kernels.h:267
The Subtraction Kernel.
Definition: vx_kernels.h:252