The OpenVX Specification  r31169
 All Data Structures Functions Variables Typedefs Enumerations Enumerator Groups Pages
vx_kernels.h
1 /*
2  * Copyright (c) 2012-2015 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 
32 #ifdef __cplusplus
33 extern "C" {
34 #endif
35 
37 enum vx_library_e {
39  VX_LIBRARY_KHR_BASE = 0x0,
40 };
41 
56 
63  VX_KERNEL_INVALID = VX_KERNEL_BASE(VX_ID_KHRONOS, VX_LIBRARY_KHR_BASE) + 0x0,
64 
70  VX_KERNEL_COLOR_CONVERT = VX_KERNEL_BASE(VX_ID_KHRONOS, VX_LIBRARY_KHR_BASE) + 0x1,
71 
81 
89 
93  VX_KERNEL_SOBEL_3x3 = VX_KERNEL_BASE(VX_ID_KHRONOS, VX_LIBRARY_KHR_BASE) + 0x4,
94 
100  VX_KERNEL_MAGNITUDE = VX_KERNEL_BASE(VX_ID_KHRONOS, VX_LIBRARY_KHR_BASE) + 0x5,
101 
107  VX_KERNEL_PHASE = VX_KERNEL_BASE(VX_ID_KHRONOS, VX_LIBRARY_KHR_BASE) + 0x6,
108 
116  VX_KERNEL_SCALE_IMAGE = VX_KERNEL_BASE(VX_ID_KHRONOS, VX_LIBRARY_KHR_BASE) + 0x7,
117 
121  VX_KERNEL_TABLE_LOOKUP = VX_KERNEL_BASE(VX_ID_KHRONOS, VX_LIBRARY_KHR_BASE) + 0x8,
122 
126  VX_KERNEL_HISTOGRAM = VX_KERNEL_BASE(VX_ID_KHRONOS, VX_LIBRARY_KHR_BASE) + 0x9,
127 
132 
136  VX_KERNEL_ABSDIFF = VX_KERNEL_BASE(VX_ID_KHRONOS, VX_LIBRARY_KHR_BASE) + 0xB,
137 
141  VX_KERNEL_MEAN_STDDEV = VX_KERNEL_BASE(VX_ID_KHRONOS, VX_LIBRARY_KHR_BASE) + 0xC,
142 
146  VX_KERNEL_THRESHOLD = VX_KERNEL_BASE(VX_ID_KHRONOS, VX_LIBRARY_KHR_BASE) + 0xD,
147 
152 
156  VX_KERNEL_DILATE_3x3 = VX_KERNEL_BASE(VX_ID_KHRONOS, VX_LIBRARY_KHR_BASE) + 0xF,
157 
161  VX_KERNEL_ERODE_3x3 = VX_KERNEL_BASE(VX_ID_KHRONOS, VX_LIBRARY_KHR_BASE) + 0x10,
162 
166  VX_KERNEL_MEDIAN_3x3 = VX_KERNEL_BASE(VX_ID_KHRONOS, VX_LIBRARY_KHR_BASE) + 0x11,
167 
171  VX_KERNEL_BOX_3x3 = VX_KERNEL_BASE(VX_ID_KHRONOS, VX_LIBRARY_KHR_BASE) + 0x12,
172 
176  VX_KERNEL_GAUSSIAN_3x3 = VX_KERNEL_BASE(VX_ID_KHRONOS, VX_LIBRARY_KHR_BASE) + 0x13,
177 
182 
187 
191  VX_KERNEL_ACCUMULATE = VX_KERNEL_BASE(VX_ID_KHRONOS, VX_LIBRARY_KHR_BASE) + 0x16,
192 
197 
202 
206  VX_KERNEL_MINMAXLOC = VX_KERNEL_BASE(VX_ID_KHRONOS, VX_LIBRARY_KHR_BASE) + 0x19,
207 
211  VX_KERNEL_CONVERTDEPTH = VX_KERNEL_BASE(VX_ID_KHRONOS, VX_LIBRARY_KHR_BASE) + 0x1A,
212 
217 
221  VX_KERNEL_AND = VX_KERNEL_BASE(VX_ID_KHRONOS, VX_LIBRARY_KHR_BASE) + 0x1C,
222 
226  VX_KERNEL_OR = VX_KERNEL_BASE(VX_ID_KHRONOS, VX_LIBRARY_KHR_BASE) + 0x1D,
227 
231  VX_KERNEL_XOR = VX_KERNEL_BASE(VX_ID_KHRONOS, VX_LIBRARY_KHR_BASE) + 0x1E,
232 
236  VX_KERNEL_NOT = VX_KERNEL_BASE(VX_ID_KHRONOS, VX_LIBRARY_KHR_BASE) + 0x1F,
237 
241  VX_KERNEL_MULTIPLY = VX_KERNEL_BASE(VX_ID_KHRONOS, VX_LIBRARY_KHR_BASE) + 0x20,
242 
246  VX_KERNEL_ADD = VX_KERNEL_BASE(VX_ID_KHRONOS, VX_LIBRARY_KHR_BASE) + 0x21,
247 
251  VX_KERNEL_SUBTRACT = VX_KERNEL_BASE(VX_ID_KHRONOS, VX_LIBRARY_KHR_BASE) + 0x22,
252 
256  VX_KERNEL_WARP_AFFINE = VX_KERNEL_BASE(VX_ID_KHRONOS, VX_LIBRARY_KHR_BASE) + 0x23,
257 
262 
266  VX_KERNEL_HARRIS_CORNERS = VX_KERNEL_BASE(VX_ID_KHRONOS, VX_LIBRARY_KHR_BASE) + 0x25,
267 
271  VX_KERNEL_FAST_CORNERS = VX_KERNEL_BASE(VX_ID_KHRONOS, VX_LIBRARY_KHR_BASE) + 0x26,
272 
277 
281  VX_KERNEL_REMAP = VX_KERNEL_BASE(VX_ID_KHRONOS, VX_LIBRARY_KHR_BASE) + 0x28,
282 
283 
288 
289  /* insert new kernels here */
290  VX_KERNEL_MAX_1_0,
291 };
292 
293 #ifdef __cplusplus
294 }
295 #endif
296 
297 #endif /* _OPEN_VISION_LIBRARY_KERNELS_H_ */
The Scale Image Kernel.
Definition: vx_kernels.h:116
The Bitwise And Kernel.
Definition: vx_kernels.h:221
The min and max location kernel.
Definition: vx_kernels.h:206
The Sobel 3x3 Filter Kernel.
Definition: vx_kernels.h:93
The Warp Affine Kernel.
Definition: vx_kernels.h:256
The Khronos Group.
Definition: vx_vendors.h:37
The gaussian image pyramid kernel.
Definition: vx_kernels.h:186
The FAST Corners Kernel.
Definition: vx_kernels.h:271
The Bitwise Inclusive Or Kernel.
Definition: vx_kernels.h:226
The Threshold Kernel.
Definition: vx_kernels.h:146
The custom convolution kernel.
Definition: vx_kernels.h:181
The Generic Channel Combine Kernel.
Definition: vx_kernels.h:88
The Optical Flow Pyramid (LK) Kernel.
Definition: vx_kernels.h:276
The Histogram Equalization Kernel.
Definition: vx_kernels.h:131
The accumulation kernel.
Definition: vx_kernels.h:191
The Absolute Difference Kernel.
Definition: vx_kernels.h:136
The Bitwise Not Kernel.
Definition: vx_kernels.h:236
The Magnitude Kernel.
Definition: vx_kernels.h:100
The Table Lookup kernel.
Definition: vx_kernels.h:121
The Pixelwise Multiplication Kernel.
Definition: vx_kernels.h:241
The Remap Kernel.
Definition: vx_kernels.h:281
The weigthed accumulation kernel.
Definition: vx_kernels.h:196
The Canny Edge Detector.
Definition: vx_kernels.h:216
The median image filter.
Definition: vx_kernels.h:166
The gaussian filter kernel.
Definition: vx_kernels.h:176
The Half Scale Gaussian Kernel.
Definition: vx_kernels.h:287
The box filter kernel.
Definition: vx_kernels.h:171
The Generic Channel Extraction Kernel.
Definition: vx_kernels.h:80
The Bitwise Exclusive Or Kernel.
Definition: vx_kernels.h:231
The Warp Perspective Kernel.
Definition: vx_kernels.h:261
The Addition Kernel.
Definition: vx_kernels.h:246
vx_kernel_e
The standard list of available vision kernels.
Definition: vx_kernels.h:55
The invalid kernel is used to for conformance failure in relation to some kernel operation (Get/Relea...
Definition: vx_kernels.h:63
The Histogram Kernel.
Definition: vx_kernels.h:126
The Phase Kernel.
Definition: vx_kernels.h:107
The squared accumulation kernel.
Definition: vx_kernels.h:201
The erode kernel.
Definition: vx_kernels.h:161
The Integral Image Kernel.
Definition: vx_kernels.h:151
The Color Space conversion kernel.
Definition: vx_kernels.h:70
The Mean and Standard Deviation Kernel.
Definition: vx_kernels.h:141
#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:211
The dilate kernel.
Definition: vx_kernels.h:156
The Harris Corners Kernel.
Definition: vx_kernels.h:266
The Subtraction Kernel.
Definition: vx_kernels.h:251