Vision Apps User Guide
tivx_img_proc_nodes.h
Go to the documentation of this file.
1 /*
2  *
3  * Copyright (c) 2019 Texas Instruments Incorporated
4  *
5  * All rights reserved not granted herein.
6  *
7  * Limited License.
8  *
9  * Texas Instruments Incorporated grants a world-wide, royalty-free, non-exclusive
10  * license under copyrights and patents it now or hereafter owns or controls to make,
11  * have made, use, import, offer to sell and sell ("Utilize") this software subject to the
12  * terms herein. With respect to the foregoing patent license, such license is granted
13  * solely to the extent that any such patent is necessary to Utilize the software alone.
14  * The patent license shall not apply to any combinations which include this software,
15  * other than combinations with devices manufactured by or for TI ("TI Devices").
16  * No hardware patent is licensed hereunder.
17  *
18  * Redistributions must preserve existing copyright notices and reproduce this license
19  * (including the above copyright notice and the disclaimer and (if applicable) source
20  * code license limitations below) in the documentation and/or other materials provided
21  * with the distribution
22  *
23  * Redistribution and use in binary form, without modification, are permitted provided
24  * that the following conditions are met:
25  *
26  * * No reverse engineering, decompilation, or disassembly of this software is
27  * permitted with respect to any software provided in binary form.
28  *
29  * * any redistribution and use are licensed by TI for use only with TI Devices.
30  *
31  * * Nothing shall obligate TI to provide you with source code for the software
32  * licensed and provided to you in object code.
33  *
34  * If software source code is provided to you, modification and redistribution of the
35  * source code are permitted provided that the following conditions are met:
36  *
37  * * any redistribution and use of the source code, including any resulting derivative
38  * works, are licensed by TI for use only with TI Devices.
39  *
40  * * any redistribution and use of any object code compiled from the source code
41  * and any resulting derivative works, are licensed by TI for use only with TI Devices.
42  *
43  * Neither the name of Texas Instruments Incorporated nor the names of its suppliers
44  *
45  * may be used to endorse or promote products derived from this software without
46  * specific prior written permission.
47  *
48  * DISCLAIMER.
49  *
50  * THIS SOFTWARE IS PROVIDED BY TI AND TI'S LICENSORS "AS IS" AND ANY EXPRESS
51  * OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
52  * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
53  * IN NO EVENT SHALL TI AND TI'S LICENSORS BE LIABLE FOR ANY DIRECT, INDIRECT,
54  * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
55  * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
56  * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
57  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
58  * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
59  * OF THE POSSIBILITY OF SUCH DAMAGE.
60  *
61  */
62 
63 #ifndef TIVX_IMG_PROC_NODES_H_
64 #define TIVX_IMG_PROC_NODES_H_
65 
66 #include <VX/vx.h>
67 
68 #ifdef __cplusplus
69 extern "C" {
70 #endif
71 
87 VX_API_ENTRY vx_node VX_API_CALL tivxImgPreProcNode(vx_graph graph,
88  vx_array config,
89  vx_image in_img,
90  vx_tensor out_tensor);
91 
106 VX_API_ENTRY vx_node VX_API_CALL tivxOCPreProcNode(vx_graph graph,
107  vx_user_data_object config,
108  vx_image in_img,
109  vx_tensor out_tensor);
110 
126 VX_API_ENTRY vx_node VX_API_CALL tivxOCPostProcNode(vx_graph graph,
127  vx_user_data_object config,
128  vx_user_data_object in_args,
129  vx_tensor in_tensor,
130  vx_user_data_object results);
131 
151 VX_API_ENTRY vx_node VX_API_CALL tivxODPostProcNode(vx_graph graph,
152  vx_array configuration,
153  vx_tensor input_key_points,
154  vx_tensor fwd_table_tensor,
155  vx_tensor rev_table_tensor,
156  vx_tensor kp_tensor,
157  vx_tensor kp_valid);
158 
173 VX_API_ENTRY vx_node VX_API_CALL tivxDofPlaneSepNode(vx_graph graph,
174  vx_user_data_object config,
175  vx_image dof_flow,
176  vx_tensor out_planes);
177 
196  VX_API_ENTRY vx_node VX_API_CALL tivxPixelVizNode(vx_graph graph,
197  vx_kernel kernel,
198  vx_user_data_object configuration,
199  vx_user_data_object tidl_out_args,
200  vx_image in_img,
201  vx_int32 num_output_tensors,
202  vx_tensor detection[],
203  vx_image out_img[]);
204 
226 VX_API_ENTRY vx_node VX_API_CALL tivxVisualLocalizationNode(vx_graph graph,
227  vx_array configuration,
228  vx_tensor voxel_info,
229  vx_tensor map_3d_points,
230  vx_tensor map_desc,
231  vx_tensor ext_feat_pt,
232  vx_tensor ext_feat_desc,
233  vx_tensor up_samp_wt,
234  vx_tensor lens_dist_table,
235  vx_user_data_object tidl_out_args,
236  vx_matrix pose_tensor);
237 
252 VX_API_ENTRY vx_node VX_API_CALL tivxPoseVizNode(vx_graph graph,
253  vx_array configuration,
254  vx_image background_image,
255  vx_matrix pose_tensor,
256  vx_image output_image);
257 
258 
275 VX_API_ENTRY vx_node VX_API_CALL tivxImgMosaicNode(vx_graph graph,
276  vx_kernel kernel,
277  vx_user_data_object config,
278  vx_image output_image,
279  vx_image background_image,
280  vx_object_array input_arr[],
281  vx_uint32 num_inputs);
282 
299 VX_API_ENTRY vx_node VX_API_CALL tivxDrawKeypointDetectionsNode(vx_graph graph,
300  vx_user_data_object configuration,
301  vx_tensor kp_tensor,
302  vx_tensor kp_valid,
303  vx_tensor input_tensor,
304  vx_image input_image,
305  vx_image output_image);
306 
321 VX_API_ENTRY vx_node VX_API_CALL tivxDrawBoxDetectionsNode(vx_graph graph,
322  vx_user_data_object configuration,
323  vx_tensor input_tensor,
324  vx_image input_image,
325  vx_image output_image);
326 
339 VX_API_ENTRY vx_node VX_API_CALL tivxImgHistNode(vx_graph graph,
340  vx_image input_image,
341  vx_distribution output_histogram);
342 
362 VX_API_ENTRY vx_node VX_API_CALL tivxSFMNode(vx_graph graph,
363  vx_user_data_object config,
364  vx_user_data_object create_params,
365  vx_user_data_object in_args,
366  vx_user_data_object out_args,
367  vx_image input_image,
368  vx_image flow_vectors,
369  vx_image output_ptcld_image,
370  vx_image output_og_image,
371  vx_user_data_object output_feat);
372 
386 VX_API_ENTRY vx_node VX_API_CALL tivxDLPreProcNode(vx_graph graph,
387  vx_user_data_object config,
388  vx_image input_image,
389  vx_tensor output_tensor);
390 
405 VX_API_ENTRY vx_node VX_API_CALL tivxDLColorBlendNode(vx_graph graph,
406  vx_user_data_object config,
407  vx_image input_image,
408  vx_tensor input_tensor,
409  vx_image output_image);
410 
425 VX_API_ENTRY vx_node VX_API_CALL tivxDLDrawBoxNode(vx_graph graph,
426  vx_user_data_object config,
427  vx_image input_image,
428  vx_tensor input_tensor,
429  vx_image output_image);
430 
443 VX_API_ENTRY vx_node VX_API_CALL tivxDLColorConvertNode(vx_graph graph,
444  vx_image input_image,
445  vx_image output_image);
446 
447 #ifdef __cplusplus
448 }
449 #endif
450 
451 #endif /* TIVX_IMG_PROC_NODES_H_ */
VX_API_ENTRY vx_node VX_API_CALL tivxOCPostProcNode(vx_graph graph, vx_user_data_object config, vx_user_data_object in_args, vx_tensor in_tensor, vx_user_data_object results)
Creates a OC Post Processing Node.
VX_API_ENTRY vx_node VX_API_CALL tivxDrawBoxDetectionsNode(vx_graph graph, vx_user_data_object configuration, vx_tensor input_tensor, vx_image input_image, vx_image output_image)
Draw Box Detections Node.
VX_API_ENTRY vx_node VX_API_CALL tivxDLColorConvertNode(vx_graph graph, vx_image input_image, vx_image output_image)
DL Color Convert Node.
VX_API_ENTRY vx_node VX_API_CALL tivxOCPreProcNode(vx_graph graph, vx_user_data_object config, vx_image in_img, vx_tensor out_tensor)
Creates a OC Pre Processing Node.
VX_API_ENTRY vx_node VX_API_CALL tivxImgHistNode(vx_graph graph, vx_image input_image, vx_distribution output_histogram)
Image Histogram Node.
VX_API_ENTRY vx_node VX_API_CALL tivxDLColorBlendNode(vx_graph graph, vx_user_data_object config, vx_image input_image, vx_tensor input_tensor, vx_image output_image)
DL Color Blend Node.
VX_API_ENTRY vx_node VX_API_CALL tivxImgPreProcNode(vx_graph graph, vx_array config, vx_image in_img, vx_tensor out_tensor)
Creates a Image Pre Processing Node.
VX_API_ENTRY vx_node VX_API_CALL tivxDofPlaneSepNode(vx_graph graph, vx_user_data_object config, vx_image dof_flow, vx_tensor out_planes)
Creates a Dense Optical Flow (Dof) 3 plane creation Node.
VX_API_ENTRY vx_node VX_API_CALL tivxDrawKeypointDetectionsNode(vx_graph graph, vx_user_data_object configuration, vx_tensor kp_tensor, vx_tensor kp_valid, vx_tensor input_tensor, vx_image input_image, vx_image output_image)
Draw Keypoint Detections Node.
VX_API_ENTRY vx_node VX_API_CALL tivxImgMosaicNode(vx_graph graph, vx_kernel kernel, vx_user_data_object config, vx_image output_image, vx_image background_image, vx_object_array input_arr[], vx_uint32 num_inputs)
Image Mosiac Node.
VX_API_ENTRY vx_node VX_API_CALL tivxPoseVizNode(vx_graph graph, vx_array configuration, vx_image background_image, vx_matrix pose_tensor, vx_image output_image)
Visualization of the estimated location.
VX_API_ENTRY vx_node VX_API_CALL tivxDLPreProcNode(vx_graph graph, vx_user_data_object config, vx_image input_image, vx_tensor output_tensor)
DL Pre-processing Node.
VX_API_ENTRY vx_node VX_API_CALL tivxVisualLocalizationNode(vx_graph graph, vx_array configuration, vx_tensor voxel_info, vx_tensor map_3d_points, vx_tensor map_desc, vx_tensor ext_feat_pt, vx_tensor ext_feat_desc, vx_tensor up_samp_wt, vx_tensor lens_dist_table, vx_user_data_object tidl_out_args, vx_matrix pose_tensor)
Estimating the camera location from captured image and map information.
VX_API_ENTRY vx_node VX_API_CALL tivxODPostProcNode(vx_graph graph, vx_array configuration, vx_tensor input_key_points, vx_tensor fwd_table_tensor, vx_tensor rev_table_tensor, vx_tensor kp_tensor, vx_tensor kp_valid)
Creates a Post processing Node for Parking Spot Detection Algorithm.
VX_API_ENTRY vx_node VX_API_CALL tivxDLDrawBoxNode(vx_graph graph, vx_user_data_object config, vx_image input_image, vx_tensor input_tensor, vx_image output_image)
DL Draw Box Node.
VX_API_ENTRY vx_node VX_API_CALL tivxPixelVizNode(vx_graph graph, vx_kernel kernel, vx_user_data_object configuration, vx_user_data_object tidl_out_args, vx_image in_img, vx_int32 num_output_tensors, vx_tensor detection[], vx_image out_img[])
Creates an image with pixel level detection/label overlayed.
VX_API_ENTRY vx_node VX_API_CALL tivxSFMNode(vx_graph graph, vx_user_data_object config, vx_user_data_object create_params, vx_user_data_object in_args, vx_user_data_object out_args, vx_image input_image, vx_image flow_vectors, vx_image output_ptcld_image, vx_image output_og_image, vx_user_data_object output_feat)
Structure From Motion Node.