TI Deep Learning Library User Guide
itidl_ti.h
Go to the documentation of this file.
1 /*
2 *
3 * Copyright (c) {2015 - 2017} 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 
74 #ifndef ITIDL_H_
75 #define ITIDL_H_
76 
77 #define USE_IVISION (1)
78 
79 #include <stdint.h>
80 #include <stdarg.h>
81 
82 #ifdef TIDL_IMPORT_TOOL
83 #define USE_IVISION (0)
84 #endif
85 
86 #if USE_IVISION
87 #include <ivision.h>
88 
89 
90 
94 extern const IVISION_Fxns TIDL_VISION_FXNS;
95 
96 #endif
97 #ifdef __cplusplus
98 extern "C" {
99 #endif
100 
101 #define TIDL_NUM_MAX_LAYERS ((int32_t) 1024)
102 #define TIDL_NUM_IN_BUFS ((int32_t) 16)
103 #define TIDL_NUM_OUT_BUFS ((int32_t) 16)
104 #define TIDL_STRING_SIZE ((int32_t) 256)
105 #define TIDL_MAX_DATA_BUFS ((int32_t) 256)
106 #define TIDL_MAX_ALG_IN_BUFS ((int32_t) 16)
107 #define TIDL_MAX_ALG_OUT_BUFS ((int32_t) 16)
108 #define TIDL_MAX_NUM_GROUPS ((int32_t) 16)
109 
110 
111 /* Typedef for 32 bit float */
112 typedef float float32_tidl;
113 /* Typedef for 64 bit float */
114 typedef double float64_tidl;
115 
122 #define TIDL_DataLayer ((int32_t) 0)
123 #define TIDL_ConvolutionLayer ((int32_t) 1)
124 #define TIDL_PoolingLayer ((int32_t) 2)
125 #define TIDL_ReLULayer ((int32_t) 3)
126 #define TIDL_PReLULayer ((int32_t) 4)
127 #define TIDL_EltWiseLayer ((int32_t) 5)
128 #define TIDL_InnerProductLayer ((int32_t) 6)
129 #define TIDL_SoftMaxLayer ((int32_t) 7)
130 #define TIDL_BatchNormLayer ((int32_t) 8)
131 #define TIDL_BiasLayer ((int32_t) 9)
132 #define TIDL_ScaleLayer ((int32_t) 10)
133 #define TIDL_Deconv2DLayer ((int32_t) 11)
134 #define TIDL_ConcatLayer ((int32_t) 12)
135 #define TIDL_SplitLayer ((int32_t) 13)
136 #define TIDL_SliceLayer ((int32_t) 14)
137 #define TIDL_CropLayer ((int32_t) 15)
138 #define TIDL_FlattenLayer ((int32_t) 16)
139 #define TIDL_DropOutLayer ((int32_t) 17)
140 #define TIDL_ArgMaxLayer ((int32_t) 18)
141 #define TIDL_DetectionOutputLayer ((int32_t) 19)
142 #define TIDL_ShuffleChannelLayer ((int32_t) 20)
143 #define TIDL_ResizeLayer ((int32_t) 21)
144 #define TIDL_RoiPoolingLayer ((int32_t) 22)
145 #define TIDL_OdPostProcessingLayer ((int32_t) 23)
146 #define TIDL_CustomLayer ((int32_t) 24)
147 #define TIDL_UnsupportedLayer ((int32_t) 25)
148 /* @} */
149 
156 #define TIDL_UnsignedChar ((int32_t) 0)
157 #define TIDL_SignedChar ((int32_t) 1)
158 #define TIDL_UnsignedShort ((int32_t) 2)
159 #define TIDL_SignedShort ((int32_t) 3)
160 #define TIDL_UnsignedWord ((int32_t) 4)
161 #define TIDL_SignedWord ((int32_t) 5)
162 #define TIDL_SinglePrecFloat ((int32_t) 6)
163 /* @} */
164 
173 #define TIDL_QuantStyleFixed ((int32_t) 0)
174 
176 #define TIDL_QuantStyleDynamic ((int32_t) 1)
177 
179 #define TIDL_QuantStyleNP2Fixed ((int32_t) 2)
180 
182 #define TIDL_QuantStyleP2Dynamic ((int32_t) 3)
183 
184 #define TIDL_QuantStyleCustom ((int32_t) 10)
185 /* @} */
186 
196 #define TIDL_OptimiseExtMemL0 ((int32_t) 0)
197 
200 #define TIDL_OptimiseExtMemL1 ((int32_t) 1)
201 
204 #define TIDL_OptimiseExtMemL2 ((int32_t) 2)
205 /* @} */
206 
214 #define TIDL_Sparse ((int32_t) 0)
215 
216 #define TIDL_Dense ((int32_t) 1)
217 /* @} */
218 
225 #define TIDL_StrideOffsetTopLeft ((int32_t) 0)
226 #define TIDL_StrideOffsetCenter ((int32_t) 1)
227 #define TIDL_StrideOffsetMax ((int32_t) 2)
228 /* @} */
229 
236 #define TIDL_MaxPooling ((int32_t) 0)
237 #define TIDL_AveragePooling ((int32_t) 1)
238 /* @} */
239 
240 
247 #define TIDL_NoAct ((int32_t) 0)
248 #define TIDL_RelU ((int32_t) 1)
249 #define TIDL_PRelU ((int32_t) 2)
250 #define TIDL_RelU6 ((int32_t) 3)
251 #define TIDL_Clip ((int32_t) 4)
252 /* @} */
253 
260 #define TIDL_EltWiseProduct ((int32_t) 0)
261 #define TIDL_EltWiseSum ((int32_t) 1)
262 #define TIDL_EltWiseMax ((int32_t) 2)
263 /* @} */
264 
271 #define TIDL_DIM_BATCH ((int32_t) 0)
272 #define TIDL_DIM_NUMCH ((int32_t) 1)
273 #define TIDL_DIM_HEIGHT ((int32_t) 2)
274 #define TIDL_DIM_WIDTH ((int32_t) 3)
275 #define TIDL_DIM_MAX ((int32_t) 4)
276 /* @} */
277 
284 #define TIDL_ROI_PITCH ((uint32_t) 0)
285 #define TIDL_CHANNEL_PITCH ((uint32_t) 1)
286 #define TIDL_LINE_PITCH ((uint32_t) 2)
287 #define TIDL_PITCH_MAX ((uint32_t) (TIDL_DIM_MAX - 1))
288 /* @} */
289 
296 /* Convolution layer error types */
297 #define TIDL_E_CONVOLUTION ((int32_t) -1000)
298 #define TIDL_E_CONV_INVALID_INPUT_WIDTH ((int32_t) (TIDL_E_CONVOLUTION - 0))
299 #define TIDL_E_CONV_INVALID_INPUT_HEIGHT ((int32_t) (TIDL_E_CONVOLUTION - 1))
300 #define TIDL_E_CONV_INVALID_OUTPUT_WIDTH ((int32_t) (TIDL_E_CONVOLUTION - 2))
301 #define TIDL_E_CONV_INVALID_OUTPUT_HEIGHT ((int32_t) (TIDL_E_CONVOLUTION - 3))
302 #define TIDL_E_CONV_INVALID_NUM_IN_CHANNELS ((int32_t) (TIDL_E_CONVOLUTION - 4))
303 #define TIDL_E_CONV_INVALID_NUM_OUT_CHANNELS ((int32_t) (TIDL_E_CONVOLUTION - 5))
304 #define TIDL_E_CONV_INVALID_KER_WIDTH ((int32_t) (TIDL_E_CONVOLUTION - 6))
305 #define TIDL_E_CONV_INVALID_KER_HEIGHT ((int32_t) (TIDL_E_CONVOLUTION - 7))
306 #define TIDL_E_CONV_INVALID_KER_TYPE ((int32_t) (TIDL_E_CONVOLUTION - 8))
307 #define TIDL_E_CONV_INVALID_STRIDE_WIDTH ((int32_t) (TIDL_E_CONVOLUTION - 9))
308 #define TIDL_E_CONV_INVALID_STRIDE_HEIGHT ((int32_t) (TIDL_E_CONVOLUTION - 10))
309 #define TIDL_E_CONV_NEGATIVE_OUTPUT_SHIFT ((int32_t) (TIDL_E_CONVOLUTION - 11))
310 /* Convolution pooling error types */
311 #define TIDL_E_CONV_POOL_INVALID_POOL_TYPE ((int32_t) (TIDL_E_CONVOLUTION - 12))
312 #define TIDL_E_CONV_POOL_INVALID_KER_WIDTH ((int32_t) (TIDL_E_CONVOLUTION - 13))
313 #define TIDL_E_CONV_POOL_INVALID_KER_HEIGHT ((int32_t) (TIDL_E_CONVOLUTION - 14))
314 #define TIDL_E_CONV_POOL_INVALID_STRIDE_WIDTH ((int32_t) (TIDL_E_CONVOLUTION - 15))
315 #define TIDL_E_CONV_POOL_INVALID_STRIDE_HEIGHT ((int32_t) (TIDL_E_CONVOLUTION - 16))
316 /* EltWise layer error types */
317 #define TIDL_E_ELTWISE ((int32_t) -1020)
318 #define TIDL_E_ELTWISE_INVALID_INPUT_WIDTH ((int32_t) (TIDL_E_ELTWISE - 0))
319 #define TIDL_E_ELTWISE_INVALID_INPUT_HEIGHT ((int32_t) (TIDL_E_ELTWISE - 1))
320 #define TIDL_E_ELTWISE_INVALID_OUTPUT_WIDTH ((int32_t) (TIDL_E_ELTWISE - 2))
321 #define TIDL_E_ELTWISE_INVALID_OUTPUT_HEIGHT ((int32_t) (TIDL_E_ELTWISE - 3))
322 #define TIDL_E_ELTWISE_INVALID_ELTWISE_TYPE ((int32_t) (TIDL_E_ELTWISE - 4))
323 #define TIDL_E_ELTWISE_INVALID_NUM_CHANNELS ((int32_t) (TIDL_E_ELTWISE - 5))
324 /* Pooling error types */
325 #define TIDL_E_POOLING ((int32_t) -1030)
326 #define TIDL_E_POOL_INVALID_INPUT_WIDTH ((int32_t) (TIDL_E_POOLING - 0))
327 #define TIDL_E_POOL_INVALID_INPUT_HEIGHT ((int32_t) (TIDL_E_POOLING - 1))
328 #define TIDL_E_POOL_INVALID_OUTPUT_WIDTH ((int32_t) (TIDL_E_POOLING - 2))
329 #define TIDL_E_POOL_INVALID_OUTPUT_HEIGHT ((int32_t) (TIDL_E_POOLING - 3))
330 #define TIDL_E_POOL_INVALID_POOL_TYPE ((int32_t) (TIDL_E_POOLING - 4))
331 #define TIDL_E_POOL_INVALID_NUM_CHANNELS ((int32_t) (TIDL_E_POOLING - 5))
332 #define TIDL_E_POOL_INVALID_KER_WIDTH ((int32_t) (TIDL_E_POOLING - 6))
333 #define TIDL_E_POOL_INVALID_KER_HEIGHT ((int32_t) (TIDL_E_POOLING - 7))
334 #define TIDL_E_POOL_INVALID_STRIDE_WIDTH ((int32_t) (TIDL_E_POOLING - 8))
335 #define TIDL_E_POOL_INVALID_STRIDE_HEIGHT ((int32_t) (TIDL_E_POOLING - 9))
336 /* Inner product error types */
337 #define TIDL_E_INNER_PRODUCT ((int32_t) -1040)
338 #define TIDL_E_IP_INVALID_NUM_IN_NODES ((int32_t) (TIDL_E_INNER_PRODUCT - 0))
339 #define TIDL_E_IP_INVALID_NUM_OUT_NODES ((int32_t) (TIDL_E_INNER_PRODUCT - 1))
340 #define TIDL_E_IP_NEGATIVE_OUTPUT_SHIFT ((int32_t) (TIDL_E_INNER_PRODUCT - 2))
341 /* Argmax error types */
342 #define TIDL_E_ARGMAX ((int32_t) -1050)
343 #define TIDL_E_ARGMAX_INVALID_NUM_CHANNELS ((int32_t) (TIDL_E_ARGMAX - 0))
344 /* Bias error types */
345 #define TIDL_E_BN ((int32_t) -1060)
346 #define TIDL_E_BN_INVALID_INPUT_WIDTH ((int32_t) (TIDL_E_BN - 0))
347 #define TIDL_E_BN_INVALID_INPUT_HEIGHT ((int32_t) (TIDL_E_BN - 1))
348 #define TIDL_E_BN_INVALID_OUTPUT_WIDTH ((int32_t) (TIDL_E_BN - 2))
349 #define TIDL_E_BN_INVALID_OUTPUT_HEIGHT ((int32_t) (TIDL_E_BN - 3))
350 #define TIDL_E_BN_INVALID_NUM_CHANNELS ((int32_t) (TIDL_E_BN - 4))
351 #define TIDL_E_BN_INVALID_ENABLE_RELU ((int32_t) (TIDL_E_BN - 5))
352 #define TIDL_E_BN_NEGATIVE_OUTPUT_SHIFT ((int32_t) (TIDL_E_BN - 6))
353 /* Crop layer error types */
354 #define TIDL_E_CROP ((int32_t) -1070)
355 #define TIDL_E_CROP_INVALID_INPUT_WIDTH ((int32_t) (TIDL_E_CROP - 0))
356 #define TIDL_E_CROP_INVALID_INPUT_HEIGHT ((int32_t) (TIDL_E_CROP - 1))
357 #define TIDL_E_CROP_INVALID_OUTPUT_WIDTH ((int32_t) (TIDL_E_CROP - 2))
358 #define TIDL_E_CROP_INVALID_OUTPUT_HEIGHT ((int32_t) (TIDL_E_CROP - 3))
359 #define TIDL_E_CROP_INVALID_NUM_CHANNELS ((int32_t) (TIDL_E_CROP - 4))
360 #define TIDL_E_CROP_INVALID_OFFSET_WIDTH ((int32_t) (TIDL_E_CROP - 5))
361 #define TIDL_E_CROP_INVALID_OFFSET_HEIGHT ((int32_t) (TIDL_E_CROP - 6))
362 /* Flatten layer error types */
363 #define TIDL_E_FLATTEN ((int32_t) -1080)
364 #define TIDL_E_FLATTEN_INVALID_INPUT_WIDTH ((int32_t) (TIDL_E_FLATTEN - 0))
365 #define TIDL_E_FLATTEN_INVALID_INPUT_HEIGHT ((int32_t) (TIDL_E_FLATTEN - 1))
366 #define TIDL_E_FLATTEN_INVALID_OUTPUT_WIDTH ((int32_t) (TIDL_E_FLATTEN - 2))
367 #define TIDL_E_FLATTEN_INVALID_OUTPUT_HEIGHT ((int32_t) (TIDL_E_FLATTEN - 3))
368 /* SoftMax error types */
369 #define TIDL_E_SOFTMAX ((int32_t) -1090)
370 #define TIDL_E_SOFTMAX_INVALID_NUM_CHANNELS ((int32_t) (TIDL_E_SOFTMAX - 0))
371 /* ShuffleChanel error types */
372 #define TIDL_E_SHUFFLECHANNEL ((int32_t) -1100)
373 #define TIDL_E_SHUFFLECHANNEL_INVALID_INPUT_WIDTH ((int32_t) (TIDL_E_SHUFFLECHANNEL - 0))
374 #define TIDL_E_SHUFFLECHANNEL_INVALID_INPUT_HEIGHT ((int32_t) (TIDL_E_SHUFFLECHANNEL - 1))
375 #define TIDL_E_SHUFFLECHANNEL_INVALID_OUTPUT_WIDTH ((int32_t) (TIDL_E_SHUFFLECHANNEL - 2))
376 #define TIDL_E_SHUFFLECHANNEL_INVALID_OUTPUT_HEIGHT ((int32_t) (TIDL_E_SHUFFLECHANNEL - 3))
377 #define TIDL_E_SHUFFLECHANNEL_INVALID_NUM_GROUPS ((int32_t) (TIDL_E_SHUFFLECHANNEL - 4))
378 /* Error types common to layers */
379 #define TIDL_E_COMMON ((int32_t) -1110)
380 #define TIDL_E_UNSUPPORTED_LAYER ((int32_t) (TIDL_E_COMMON - 0))
381 #define TIDL_E_DATAFLOW_INFO_NULL ((int32_t) (TIDL_E_COMMON - 1))
382 #define TIDL_E_INVALID_DEBUG_TRACE_PRM ((int32_t) (TIDL_E_COMMON - 2))
383 #define TIDL_E_INVALID_NET_VERSION ((int32_t) (TIDL_E_COMMON - 3))
384 #define TIDL_E_INVALID_IO_LINE_PITCH ((int32_t) (TIDL_E_COMMON - 4))
385 #define TIDL_E_QUANT_STATS_NOT_AVAILABALE ((int32_t) (TIDL_E_COMMON - 5))
386 /* @} */
387 
397 typedef struct
398 {
399  void* ptr;
400  int32_t bufSize;
401  int32_t reserved[2];
402 }sBuffer_t;
403 
409 typedef struct {
411  int32_t dataId;
413  int32_t elementType;
415  int32_t numDim;
417  int32_t dataQ;
419  int32_t minValue;
421  int32_t maxValue;
429  int32_t padW;
431  int32_t padH;
433  int32_t roundBits;
435  int32_t pitch[TIDL_DIM_MAX-1];
437  int32_t dimValues[TIDL_DIM_MAX];
439 
440 
441 
447 typedef struct {
449  int32_t numChannels;
451  int32_t dataQ;
453 
454 
460 typedef struct {
462  int32_t numGroups;
464  int32_t resvd;
466 
472 typedef enum
473 {
478 
484 typedef struct {
486  int32_t mode;
490 
496 typedef enum
497 {
501 
502 
508 typedef struct {
510  int32_t poolingType;
512  int32_t imWidth;
514  int32_t imHeight;
516 
517 
523 typedef struct {
525  int32_t slicePoints[TIDL_NUM_OUT_BUFS+1];
527  int32_t axis;
529 
535 typedef struct {
537  int32_t slope;
542  //** maximum value for clip */
545  int32_t actType;
547 
553 typedef struct {
555  int32_t numChannels;
557  int32_t inDataQ;
559  int32_t outDataQ;
561 
567 typedef struct {
569  int32_t numChannels;
571  int32_t poolingType;
573  int32_t kernelW;
575  int32_t kernelH;
577  int32_t strideW;
579  int32_t strideH;
581  int32_t padW;
583  int32_t padH;
585  int32_t inDataQ;
587  int32_t outDataQ;
589  int32_t useCeil;
591 
596 typedef struct {
600  int32_t padW;
602  int32_t padH;
607  int32_t memOverlapType;
612 
618 typedef struct {
620  int32_t weights;
622  int32_t bias;
626  int32_t numInChannels;
628  int32_t numOutChannels;
630  int32_t numGroups;
632  int32_t kernelW;
634  int32_t kernelH;
636  int32_t strideW;
638  int32_t strideH;
640  int32_t dilationW;
642  int32_t dilationH;
644  int32_t padW;
646  int32_t padH;
652  int32_t weightsQ;
656  int32_t biasB;
658  int32_t biasQ;
660  int32_t inDataQ;
662  int32_t outDataQ;
664  int32_t interDataQ;
666  int32_t enableBias;
668  int32_t enablePooling;
670  int32_t enableEltWise;
672  int32_t enableEWRelU;
674  int32_t kernelType;
678 
683 typedef enum
684 {
691 
696 typedef enum
697 {
702 
709 typedef struct {
711  int32_t processingType;
713  int32_t priorBox;
715  int32_t priorBoxSize;
717  int32_t numClasses;
721  int32_t codeType;
731  int32_t topK;
733  int32_t keepTopK;
736  int32_t shareLocation;
741  int32_t numKeypoints;
742 
744  int32_t numHeads;
745 
747  int32_t imWidth;
748 
750  int32_t imHeight;
751 
753  int32_t metaArchType;
754 
756 
757 
758 #define TIDL_OD_MAX_KEYPOINTS (16)
759 #define TIDL_OD_MAX_ANCHORS_PER_HEAD (16)
760 
767 typedef struct {
768 
770  int32_t numAnchors;
772  int32_t numKeyPoints;
774  int32_t headWidth;
776  int32_t headHeight;
786  float32_tidl boxScales[4];
793 
795 
801 typedef struct {
803  int32_t axis;
805  int32_t outDataQ;
807 
808 
815 typedef struct {
817  int32_t weights;
819  int32_t bias;
821  int32_t numChannels;
823  int32_t biasQ;
825  int32_t inDataQ;
827  int32_t outDataQ;
829  int32_t weightsQ;
837 
843 typedef struct {
845  int32_t bias;
847  int32_t numChannels;
849  int32_t biasQ;
851  int32_t inDataQ;
853  int32_t outDataQ;
855 
861 typedef struct {
863  int32_t weights;
865  int32_t bias;
867  int32_t activationType;
869  int32_t numInNodes;
871  int32_t numOutNodes;
873  int32_t weightsQ;
881  int32_t biasQ;
883  int32_t inDataQ;
885  int32_t outDataQ;
887  int32_t interDataQ;
889  int32_t biasB;
891 
897 typedef struct {
899  int32_t bias;
901  int32_t numChannels;
903  int32_t eltWiseType;
905  int32_t numInData;
907  int32_t biasQ;
909  int32_t inDataQ[TIDL_NUM_IN_BUFS];
911  int32_t outDataQ;
913 
919 typedef struct {
921  int32_t numChannels;
923  int32_t inDataQ;
925  int32_t outDataQ;
927 
933 typedef struct {
935  int32_t numChannels;
937  int32_t inDataQ;
939  int32_t outDataQ;
941  int32_t offsetW;
943  int32_t offsetH;
945 
951 /* CHECK_MISRA("-18.4") -> Disable rule 18.4 */
952 typedef union {
971 /*RESET_MISRA("18.4") -> Reset rule 18.4 */
972 
978 typedef struct {
983  int32_t layerType;
985  int32_t numInBufs;
987  int32_t numOutBufs;
993  int32_t coreID;
996  int32_t layersGroupId;
1001 }sTIDL_Layer_t;
1002 
1003 /* Based on last Updated Date */
1004 #define TIDL_NET_VERSION (0x20200129)
1005 
1010 typedef struct {
1012  int32_t netVersion;
1014  int32_t numLayers;
1028  int32_t dataFlowInfo;
1032  int32_t reserved;
1036 
1041 typedef enum
1042 {
1047 
1052 typedef enum
1053 {
1058 
1064 typedef struct
1065 {
1067  int32_t numInputBuf;
1069  int32_t numOutputBuf;
1071  int32_t l1MemSize;
1073  int32_t l2MemSize;
1075  int32_t l3MemSize;
1077  int32_t inDataFormat[TIDL_MAX_ALG_IN_BUFS];
1079  int32_t inResizeType[TIDL_MAX_ALG_IN_BUFS];
1081  int32_t resizeWidth[TIDL_MAX_ALG_IN_BUFS];
1083  int32_t resizeHeight[TIDL_MAX_ALG_IN_BUFS];
1085  int32_t inWidth[TIDL_MAX_ALG_IN_BUFS];
1087  int32_t inHeight[TIDL_MAX_ALG_IN_BUFS];
1089  int32_t inNumChannels[TIDL_MAX_ALG_IN_BUFS];
1091  int32_t inChannelPitch[TIDL_MAX_ALG_IN_BUFS];
1093  int32_t inPadL[TIDL_MAX_ALG_IN_BUFS];
1095  int32_t inPadT[TIDL_MAX_ALG_IN_BUFS];
1097  int32_t inPadR[TIDL_MAX_ALG_IN_BUFS];
1099  int32_t inPadB[TIDL_MAX_ALG_IN_BUFS];
1101  int32_t inPadCh[TIDL_MAX_ALG_IN_BUFS];
1103  int32_t inElementType[TIDL_MAX_ALG_IN_BUFS];
1105  int32_t inDataId[TIDL_MAX_ALG_IN_BUFS];
1109  int32_t outWidth[TIDL_MAX_ALG_OUT_BUFS];
1111  int32_t outHeight[TIDL_MAX_ALG_OUT_BUFS];
1113  int32_t outNumChannels[TIDL_MAX_ALG_OUT_BUFS];
1115  int32_t outChannelPitch[TIDL_MAX_ALG_OUT_BUFS];
1117  int32_t outPadL[TIDL_MAX_ALG_OUT_BUFS];
1119  int32_t outPadT[TIDL_MAX_ALG_OUT_BUFS];
1121  int32_t outPadR[TIDL_MAX_ALG_OUT_BUFS];
1123  int32_t outPadB[TIDL_MAX_ALG_OUT_BUFS];
1125  int32_t outPadCh[TIDL_MAX_ALG_OUT_BUFS];
1127  int32_t outElementType[TIDL_MAX_ALG_OUT_BUFS];
1129  int32_t outDataId[TIDL_MAX_ALG_OUT_BUFS];
1133 
1134 #if USE_IVISION
1135 
1141 typedef struct
1142 {
1144  IVISION_Params visionParams;
1148  int32_t isInbufsPaded;
1153 
1157  int32_t l1MemSize;
1159  int32_t l2MemSize;
1161  int32_t l3MemSize;
1163  int32_t traceLogLevel;
1167  int32_t reservedCtrl;
1169  int32_t flowCtrl;
1173  void * udmaDrvObj;
1179  int32_t (*TIDLGetPhysicalAddress)(void * virtualAddr , void ** physicalAddr);
1181  int32_t(*TIDLVprintf)(const char * format, va_list arg);
1183  int32_t(*TIDLWriteBinToFile)(const char * fileName, void * addr, int32_t size);
1185  int32_t(*TIDLReadBinFromFile)(const char * fileName, void * addr, int32_t size);
1187  int32_t (*TIDL_CustomLayerProcess)(sTIDL_Layer_t *tidlLayer,
1188  void *inPtrs[],
1189  void *outPtrs[],
1190  void *params,
1191  void *udmaDrvObj,
1192  int32_t tensorStats);
1193 }
1195 
1202 typedef struct
1203 {
1205  IVISION_InArgs iVisionInArgs;
1207  int32_t numInBufs;
1212 } TIDL_InArgs;
1213 
1220 typedef struct
1221 {
1223  IVISION_OutArgs iVisionOutArgs;
1225  int32_t numOutBufs;
1228 
1229 } TIDL_outArgs;
1230 
1236 typedef struct
1237 {
1246 
1248 
1249 
1255 typedef struct
1256 {
1261 
1263 
1264 #define TIDL_OD_MAX_KEY_POINTS (8)
1265 
1266 
1272 typedef struct
1273 {
1289 
1291 
1292 static inline int TIDL_createParamsInit(TIDL_CreateParams * params)
1293 {
1294  params->net = NULL;
1295  params->udmaDrvObj = NULL;
1296  params->currLayersGroupId = 1;
1297  params->isInbufsPaded = 0;
1299  params->TIDLGetPhysicalAddress = 0;
1300  params->quantRangeExpansionFactor = 1.0;
1301  params->quantRangeUpdateFactor = 0.1F;
1302  params->l1MemSize = (16 * 1024) ;
1303  params->l2MemSize = (448 * 1024) ;
1304  params->l3MemSize = (7968 * 1024);
1305  params->visionParams.algParams.size = sizeof(TIDL_CreateParams);
1306  params->visionParams.cacheWriteBack = NULL;
1307  params->TIDLWriteBinToFile = NULL;
1308  params->TIDLReadBinFromFile = NULL;
1309  params->TIDLVprintf = NULL;
1310  params->traceLogLevel = 0;
1311  params->traceWriteLevel = 0;
1312  params->traceBaseName = NULL;
1313  params->reservedCtrl = 0;
1314  params->flowCtrl = 0;
1315 
1316  return IALG_EOK;
1317 }
1318 
1319 #endif
1320 
1321 #ifdef __cplusplus
1322 }
1323 #endif
1324 
1326 /* iTI_DL */
1327 
1328 #endif /*ITIDL_H_ */
1329 /*==========================================================================*/
1330 /* END of the FILE */
1331 /*==========================================================================*/
int32_t enableEltWise
Definition: itidl_ti.h:670
This structure define the parameters Soft max layer in TIDL.
Definition: itidl_ti.h:919
float32_tidl maxTensorValue
Definition: itidl_ti.h:425
int32_t weights
Definition: itidl_ti.h:863
int32_t l2MemSize
Definition: itidl_ti.h:1159
float32_tidl xmin
Definition: itidl_ti.h:1281
int32_t biasQ
Definition: itidl_ti.h:823
sTIDL_SliceLayerParams_t sliceParams
Definition: itidl_ti.h:966
float32_tidl quantRangeUpdateFactor
Definition: itidl_ti.h:1155
int32_t strideW
Definition: itidl_ti.h:577
sTIDL_ShuffleLayerParams_t shuffleLayerParams
Definition: itidl_ti.h:965
float32_tidl clipMin
Definition: itidl_ti.h:541
IVISION_InArgs iVisionInArgs
Definition: itidl_ti.h:1205
int32_t strideOffsetMethod
Definition: itidl_ti.h:1000
float32_tidl biasScale
Definition: itidl_ti.h:833
int32_t traceWriteLevel
Definition: itidl_ti.h:1165
int32_t numGroups
Definition: itidl_ti.h:630
float32_tidl y
Definition: itidl_ti.h:1260
int32_t(* TIDLWriteBinToFile)(const char *fileName, void *addr, int32_t size)
Definition: itidl_ti.h:1183
int32_t kernelType
Definition: itidl_ti.h:674
int32_t numInData
Definition: itidl_ti.h:905
int32_t layersGroupId
Definition: itidl_ti.h:996
float32_tidl clipMax
Definition: itidl_ti.h:543
This union define the layer specific parameters of all the supported layers in TIDL.
Definition: itidl_ti.h:952
void * traceBaseName
Definition: itidl_ti.h:1171
int32_t padW
Definition: itidl_ti.h:644
int32_t isInbufsPaded
Definition: itidl_ti.h:1148
int32_t roundBits
Definition: itidl_ti.h:433
int32_t numInNodes
Definition: itidl_ti.h:869
int32_t resvd
Definition: itidl_ti.h:464
int32_t quantizationStyle
Definition: itidl_ti.h:1026
int32_t(* TIDLReadBinFromFile)(const char *fileName, void *addr, int32_t size)
Definition: itidl_ti.h:1185
int32_t biasQ
Definition: itidl_ti.h:849
int32_t poolingType
Definition: itidl_ti.h:571
int32_t kernelW
Definition: itidl_ti.h:573
#define TIDL_NUM_MAX_LAYERS
Definition: itidl_ti.h:101
void * udmaDrvObj
Definition: itidl_ti.h:1173
This structure contains all the parameters which TI DL library at create time.
Definition: itidl_ti.h:1141
Definition: itidl_ti.h:1045
int32_t processingType
Definition: itidl_ti.h:711
float32_tidl ymin
Definition: itidl_ti.h:1283
int32_t inDataQ
Definition: itidl_ti.h:660
This structure defines the Input and output buffer descriptors required for a given Layer group...
Definition: itidl_ti.h:1064
int32_t inDataQ
Definition: itidl_ti.h:825
sTIDL_BiasParams_t biasParams
Definition: itidl_ti.h:963
This structure define the parameters of ROI Pooling layer in TIDL.
Definition: itidl_ti.h:508
Definition: itidl_ti.h:475
int32_t codeType
Definition: itidl_ti.h:721
Definition: itidl_ti.h:689
int32_t numKeyPoints
Definition: itidl_ti.h:772
sTIDL_ResizeLayerParams_t resizeParams
Definition: itidl_ti.h:967
sTIDL_Network_t * net
Definition: itidl_ti.h:1175
int32_t numChannels
Definition: itidl_ti.h:555
sTIDL_RoiPoolingLayerParams_t roiPoolingParams
Definition: itidl_ti.h:968
sTIDL_ActParams_t actParams
Definition: itidl_ti.h:981
int32_t offsetH
Definition: itidl_ti.h:943
float32_tidl strideH
Definition: itidl_ti.h:780
int32_t enableLayerPerfTraces
Definition: itidl_ti.h:1211
int32_t kernelW
Definition: itidl_ti.h:632
int32_t numLayers
Definition: itidl_ti.h:1014
int32_t dataId
Definition: itidl_ti.h:411
int32_t zeroWeightValue
Definition: itidl_ti.h:835
Definition: itidl_ti.h:476
int32_t netVersion
Definition: itidl_ti.h:1012
int32_t outDataQ
Definition: itidl_ti.h:939
int32_t biasB
Definition: itidl_ti.h:889
static int TIDL_createParamsInit(TIDL_CreateParams *params)
Definition: itidl_ti.h:1292
Definition: itidl_ti.h:686
int32_t numInBufs
Definition: itidl_ti.h:1207
int32_t imHeight
Definition: itidl_ti.h:514
int32_t enablePooling
Definition: itidl_ti.h:668
Definition: itidl_ti.h:687
int32_t coreID
Definition: itidl_ti.h:993
int32_t l1MemSize
Definition: itidl_ti.h:1071
sTIDL_SoftMaxParams_t softMaxParams
Definition: itidl_ti.h:959
#define TIDL_MAX_ALG_IN_BUFS
Definition: itidl_ti.h:106
eTIDL_inResizeType
This enumerator defines the different indata formats.
Definition: itidl_ti.h:1052
int32_t axis
Definition: itidl_ti.h:527
int32_t imWidth
Definition: itidl_ti.h:512
int32_t enableEWRelU
Definition: itidl_ti.h:672
int32_t customLayerParamsOffset
Definition: itidl_ti.h:610
sTIDL_CropParams_t cropParams
Definition: itidl_ti.h:960
This structure define the parameters spatial Pooling layer in TIDL.
Definition: itidl_ti.h:567
int32_t outDataQ
Definition: itidl_ti.h:587
int32_t dilationW
Definition: itidl_ti.h:640
int32_t flowCtrl
Definition: itidl_ti.h:1169
int32_t elementType
Definition: itidl_ti.h:413
int32_t outDataQ
Definition: itidl_ti.h:925
int32_t minValue
Definition: itidl_ti.h:419
#define TIDL_DIM_MAX
Definition: itidl_ti.h:275
int32_t dilationH
Definition: itidl_ti.h:642
Definition: itidl_ti.h:523
float float32_tidl
Definition: itidl_ti.h:112
int32_t biasQ
Definition: itidl_ti.h:907
float32_tidl weightScale
Definition: itidl_ti.h:875
Definition: itidl_ti.h:1056
int32_t numInChannels
Definition: itidl_ti.h:626
int32_t padH
Definition: itidl_ti.h:431
float32_tidl biasScale
Definition: itidl_ti.h:877
This structure define the parameters Arg max layer in TIDL.
Definition: itidl_ti.h:553
int32_t poolingType
Definition: itidl_ti.h:510
sTIDL_PoolingParams_t poolParams
Definition: itidl_ti.h:676
float32_tidl offsetH
Definition: itidl_ti.h:784
int32_t numChannels
Definition: itidl_ti.h:935
int32_t l3MemSize
Definition: itidl_ti.h:1161
This structure define the parameters of Bias layer in TIDL.
Definition: itidl_ti.h:843
int32_t outDataQ
Definition: itidl_ti.h:662
This structure contains the each object&#39;s information detected by Objection detection layer...
Definition: itidl_ti.h:1272
float32_tidl x
Definition: itidl_ti.h:1258
Definition: itidl_ti.h:1054
int32_t zeroWeightValue
Definition: itidl_ti.h:654
int32_t slope
Definition: itidl_ti.h:537
float32_tidl nmsThreshold
Definition: itidl_ti.h:727
sTIDL_ConvParams_t convParams
Definition: itidl_ti.h:953
int32_t outDataQ
Definition: itidl_ti.h:853
This structure define the parameters of Detection Output Layer in TIDL.
Definition: itidl_ti.h:709
float32_tidl objInfoSize
Definition: itidl_ti.h:1241
Definition: itidl_ti.h:1043
float32_tidl quantRangeExpansionFactor
Definition: itidl_ti.h:1152
This structure define the parameters of Data layer in TIDL.
Definition: itidl_ti.h:447
int32_t outDataQ
Definition: itidl_ti.h:559
#define TIDL_OD_MAX_KEY_POINTS
Definition: itidl_ti.h:1264
int32_t numOutNodes
Definition: itidl_ti.h:871
int32_t numOutBufs
Definition: itidl_ti.h:987
int32_t varianceEncoded
Definition: itidl_ti.h:739
int32_t outDataQ
Definition: itidl_ti.h:885
float32_tidl biasScale
Definition: itidl_ti.h:650
int32_t outDataQ
Definition: itidl_ti.h:911
int32_t kernelH
Definition: itidl_ti.h:634
int32_t activationType
Definition: itidl_ti.h:867
Definition: itidl_ti.h:700
float32_tidl ObjId
Definition: itidl_ti.h:1275
int32_t weightsQ
Definition: itidl_ti.h:829
int32_t bias
Definition: itidl_ti.h:899
#define TIDL_NUM_OUT_BUFS
Definition: itidl_ti.h:103
int32_t padW
Definition: itidl_ti.h:429
int32_t interDataQ
Definition: itidl_ti.h:664
float32_tidl weightScale
Definition: itidl_ti.h:831
float32_tidl score
Definition: itidl_ti.h:1279
int32_t outDataQ
Definition: itidl_ti.h:827
float32_tidl weightScale
Definition: itidl_ti.h:648
int32_t numOutputBuf
Definition: itidl_ti.h:1069
int32_t l1MemSize
Definition: itidl_ti.h:1157
float32_tidl tensorScale
Definition: itidl_ti.h:427
This structure define the parameters Convolution Layer in TIDL.
Definition: itidl_ti.h:618
int32_t offsetW
Definition: itidl_ti.h:941
Definition: itidl_ti.h:685
void * ptr
Definition: itidl_ti.h:399
int32_t inDataQ
Definition: itidl_ti.h:557
This structure define the parameters of Batch Norm layer in TIDL.
Definition: itidl_ti.h:815
int32_t keepTopK
Definition: itidl_ti.h:733
This structure define the parameters of Shuffle layer in TIDL.
Definition: itidl_ti.h:460
Definition: itidl_ti.h:699
int32_t l3MemSize
Definition: itidl_ti.h:1075
int32_t actType
Definition: itidl_ti.h:545
int32_t enableBias
Definition: itidl_ti.h:666
int32_t dataElementSize
Definition: itidl_ti.h:1022
int32_t biasQ
Definition: itidl_ti.h:881
This structure define the common layer parameters in TIDL.
Definition: itidl_ti.h:978
int32_t inDataQ
Definition: itidl_ti.h:883
eTIDL_metaArchType
This enumerator defines the different Meta Arch types.
Definition: itidl_ti.h:683
int32_t padH
Definition: itidl_ti.h:602
eTIDL_RoiPoolingType
This enumerator defines the different types of ROI pooling supported by TIDL library.
Definition: itidl_ti.h:496
int32_t convolutionType
Definition: itidl_ti.h:624
This structure define the parameters of data or kernel buffer used by TIDL layers (In...
Definition: itidl_ti.h:409
sTIDL_LayerParams_t layerParams
Definition: itidl_ti.h:979
int32_t weights
Definition: itidl_ti.h:817
int32_t biasB
Definition: itidl_ti.h:656
float32_tidl objInfoOffset
Definition: itidl_ti.h:1245
Definition: itidl_ti.h:474
int32_t traceLogLevel
Definition: itidl_ti.h:1163
This structure define the parameters of ReLU activation layer in TIDL.
Definition: itidl_ti.h:535
This structure define the parameters CNN/Deep learning net in TIDL.
Definition: itidl_ti.h:1010
int32_t strideH
Definition: itidl_ti.h:638
int32_t strideH
Definition: itidl_ti.h:579
int32_t headWidth
Definition: itidl_ti.h:774
sTIDL_EltWiseParams_t eltWiseParams
Definition: itidl_ti.h:954
float32_tidl numDetObjects
Definition: itidl_ti.h:1239
#define TIDL_MAX_ALG_OUT_BUFS
Definition: itidl_ti.h:107
int32_t eltWiseType
Definition: itidl_ti.h:903
sTIDL_ConcatParams_t concatParams
Definition: itidl_ti.h:961
int32_t bias
Definition: itidl_ti.h:865
int32_t numAnchors
Definition: itidl_ti.h:770
int32_t numKeypoints
Definition: itidl_ti.h:741
int32_t priorBox
Definition: itidl_ti.h:713
float32_tidl eta
Definition: itidl_ti.h:729
int32_t useCeil
Definition: itidl_ti.h:589
int32_t topK
Definition: itidl_ti.h:731
int32_t numChannels
Definition: itidl_ti.h:921
int32_t padH
Definition: itidl_ti.h:583
int32_t padH
Definition: itidl_ti.h:646
Definition: itidl_ti.h:688
int32_t optimiseExtMem
Definition: itidl_ti.h:1150
int32_t inDataQ
Definition: itidl_ti.h:937
const IVISION_Fxns TIDL_VISION_FXNS
The unique const function table for the TI deep learning algorithm.
double float64_tidl
Definition: itidl_ti.h:114
int32_t interElementSize
Definition: itidl_ti.h:1024
This structure contains the header information of Objection detection layer.
Definition: itidl_ti.h:1236
float32_tidl label
Definition: itidl_ti.h:1277
int32_t slopeElementSize
Definition: itidl_ti.h:1018
sTIDL_BatchNormParams_t batchNormParams
Definition: itidl_ti.h:964
int32_t dataFlowInfo
Definition: itidl_ti.h:1028
Definition: itidl_ti.h:498
IVISION_Params visionParams
Definition: itidl_ti.h:1144
This structure define the parameters of Element wise layer in TIDL.
Definition: itidl_ti.h:897
int32_t numChannels
Definition: itidl_ti.h:449
sTIDL_InnerProductParams_t innerProductParams
Definition: itidl_ti.h:956
This structure defines the parameters for custom layer in TIDL.
Definition: itidl_ti.h:596
int32_t biasElementSize
Definition: itidl_ti.h:1020
This structure define the parameters of AnchorBox used by Detection Output Layer in TIDL...
Definition: itidl_ti.h:767
sTIDL_PoolingParams_t poolParams
Definition: itidl_ti.h:955
Definition: itidl_ti.h:698
#define TIDL_OptimiseExtMemL1
In this case, output buffer will re-use memory from previous layers when they have same width and hei...
Definition: itidl_ti.h:200
sTIDL_ArgMaxParams_t argMaxParams
Definition: itidl_ti.h:958
int32_t numOutChannels
Definition: itidl_ti.h:628
Definition: itidl_ti.h:499
int32_t numGroups
Definition: itidl_ti.h:462
int32_t shareLocation
Definition: itidl_ti.h:736
int32_t backgroundLabelId
Definition: itidl_ti.h:719
This structure define the parameters of Inner Product (Fully connected) layer in TIDL.
Definition: itidl_ti.h:861
eTIDL_inDataFormat
This enumerator defines the different indata formats.
Definition: itidl_ti.h:1041
int32_t inDataQ
Definition: itidl_ti.h:585
int32_t outDataQ
Definition: itidl_ti.h:805
int32_t imHeight
Definition: itidl_ti.h:750
int32_t priorBoxSize
Definition: itidl_ti.h:715
IVISION_OutArgs iVisionOutArgs
Definition: itidl_ti.h:1223
int32_t inDataQ
Definition: itidl_ti.h:923
int32_t dataQ
Definition: itidl_ti.h:417
int32_t reserved
Definition: itidl_ti.h:1032
int32_t strideW
Definition: itidl_ti.h:636
#define TIDL_STRING_SIZE
Definition: itidl_ti.h:104
int32_t numInputBuf
Definition: itidl_ti.h:1067
int32_t weightsElementSizeInBits
Definition: itidl_ti.h:998
float32_tidl xmax
Definition: itidl_ti.h:1285
This structure contains the key points information of BBox detected by OD layer.
Definition: itidl_ti.h:1255
Definition: itidl_ti.h:1055
int32_t numChannels
Definition: itidl_ti.h:821
sTIDL_DataLayerParams_t dataLayerParams
Definition: itidl_ti.h:957
int32_t numClasses
Definition: itidl_ti.h:717
float32_tidl slopeScale
Definition: itidl_ti.h:539
int32_t currLayersGroupId
Definition: itidl_ti.h:1146
This structure define the parameters of data or kernel buffer memory in TIDL.
Definition: itidl_ti.h:397
float32_tidl confThreshold
Definition: itidl_ti.h:724
int32_t(* TIDLGetPhysicalAddress)(void *virtualAddr, void **physicalAddr)
Definition: itidl_ti.h:1179
int32_t inDataQ
Definition: itidl_ti.h:851
int32_t numChannels
Definition: itidl_ti.h:901
int32_t weightsQ
Definition: itidl_ti.h:873
int32_t bias
Definition: itidl_ti.h:622
int32_t biasQ
Definition: itidl_ti.h:658
This structure contains all the parameters which controls the applet at create time.
Definition: itidl_ti.h:1202
int32_t bias
Definition: itidl_ti.h:819
int32_t zeroWeightValue
Definition: itidl_ti.h:879
This structure contains all the parameters which controls the applet at create time.
Definition: itidl_ti.h:1220
int32_t interDataQ
Definition: itidl_ti.h:887
int32_t padW
Definition: itidl_ti.h:581
int32_t(* TIDLVprintf)(const char *format, va_list arg)
Definition: itidl_ti.h:1181
int32_t weightsQ
Definition: itidl_ti.h:652
This structure define the parameters of PriorBox layer in TIDL.
Definition: itidl_ti.h:801
int32_t weights
Definition: itidl_ti.h:620
eTIDL_processingType
This enumerator defines the different Meta Arch types.
Definition: itidl_ti.h:696
int32_t l2MemSize
Definition: itidl_ti.h:1073
int32_t numInBufs
Definition: itidl_ti.h:985
int32_t dataQ
Definition: itidl_ti.h:451
int32_t imWidth
Definition: itidl_ti.h:747
int32_t kernelH
Definition: itidl_ti.h:575
int32_t bias
Definition: itidl_ti.h:845
#define TIDL_OD_MAX_ANCHORS_PER_HEAD
Definition: itidl_ti.h:759
int32_t isQuantStatsAvailable
Definition: itidl_ti.h:1030
int32_t numOutBufs
Definition: itidl_ti.h:1225
int32_t metaArchType
Definition: itidl_ti.h:753
float32_tidl offsetW
Definition: itidl_ti.h:782
int32_t numChannels
Definition: itidl_ti.h:847
float32_tidl odNumKeyPoints
Definition: itidl_ti.h:1243
This structure define the parameters Crop layer in TIDL.
Definition: itidl_ti.h:933
#define TIDL_NUM_IN_BUFS
Definition: itidl_ti.h:102
sTIDL_CustomParams_t customParams
Definition: itidl_ti.h:969
int32_t reservedCtrl
Definition: itidl_ti.h:1167
int32_t weightsElementSize
Definition: itidl_ti.h:1016
int32_t bufSize
Definition: itidl_ti.h:400
int32_t padW
Definition: itidl_ti.h:600
int32_t numChannels
Definition: itidl_ti.h:569
This structure define the parameters of Resize layer in TIDL.
Definition: itidl_ti.h:484
int32_t memOverlapType
Definition: itidl_ti.h:607
#define TIDL_OD_MAX_KEYPOINTS
Definition: itidl_ti.h:758
int32_t headHeight
Definition: itidl_ti.h:776
int32_t layerType
Definition: itidl_ti.h:983
int32_t axis
Definition: itidl_ti.h:803
float32_tidl minTensorValue
Definition: itidl_ti.h:423
int32_t maxValue
Definition: itidl_ti.h:421
int32_t mode
Definition: itidl_ti.h:486
int32_t numDim
Definition: itidl_ti.h:415
Definition: itidl_ti.h:1044
float32_tidl strideW
Definition: itidl_ti.h:778
sTIDL_DetectOutputParams_t detectOutParams
Definition: itidl_ti.h:962
float32_tidl ymax
Definition: itidl_ti.h:1287
int32_t customLayerType
Definition: itidl_ti.h:598
int32_t numHeads
Definition: itidl_ti.h:744
eTIDL_ResizeType
This enumerator defines the different types of element type used by TIDL library. ...
Definition: itidl_ti.h:472