![]() |
Perception Tool Kit (PTK) API Guide
|
|
Data Structures | |
| struct | PTK_Alg_RadarGTrackAdvParams |
| GTRACK Advanced Parameters. More... | |
| struct | PTK_Alg_RadarGTrackParams |
| GTRACK Configuration. More... | |
| struct | PTK_Alg_RadarGTrackTargetInfo |
| Data structure which holds tracks and ego-location for frame. More... | |
| struct | GTRACK_measurement_vector |
| GTRACK Measurement vector. More... | |
| struct | GTRACK_cartesian_position |
| GTRACK position. More... | |
| struct | GTRACK_state_vector_pos_vel |
| GTRACK State vector, 2DV configuration. More... | |
| struct | GTRACK_state_vector_pos_vel_acc |
| GTRACK State vector, 2DA configuration. More... | |
| struct | GTRACK_boundaryBox |
| GTRACK Box Structure. More... | |
| struct | GTRACK_gateLimits |
| GTRACK Gate Limits. More... | |
| struct | GTRACK_varParams |
| GTRACK Update Function Parameters. More... | |
| struct | GTRACK_sceneryParams |
| GTRACK Scene Parameters/. More... | |
| struct | GTRACK_gatingParams |
| GTRACK Gating Function Parameters. More... | |
| struct | GTRACK_stateParams |
| GTRACK Tracking Management Function Parameters. More... | |
| struct | GTRACK_allocationParams |
| GTRACK Allocation Function Parameters. More... | |
| struct | GTRACK_unrollingParams |
| GTRACK Unrolling Parameters. More... | |
| struct | GTRACK_measurementPoint |
| GTRACK Measurement point. More... | |
| struct | GTRACK_targetDesc |
| GTRACK target descriptor. More... | |
Functions | |
| PTK_AlgHandle | PTK_Alg_RadarGTrackInit (const PTK_Alg_RadarGTrackParams *cfgParams) |
| Initializes the library based on the given algorithm configuration parameters and allocated memory blocks. More... | |
| int | PTK_Alg_RadarGTrackProcess (PTK_AlgHandle algHandle, const PTK_Alg_RadarSensorConfig *sensorCfg, const PTK_Alg_RadarDetOutput *doaData, const PTK_InsPoseAndRef *posAndRef, PTK_Alg_RadarGTrackTargetInfo *targetInfo) |
| Processes the given point cloud and performs Group Tracking. More... | |
| void | PTK_Alg_RadarGTrackDeInit (PTK_AlgHandle algHandle) |
| De-initializes the algorithm context. More... | |
| void * | gtrack_alloc (uint32_t numElements, uint32_t sizeInBytes) |
| GTRACK calls this function to allocate memory. Expects the void pointer if allocation is sucessful, and NULL otherwise. More... | |
| void | gtrack_free (void *pFree, uint32_t sizeInBytes) |
| GTRACK calls this function to free memory. More... | |
| void | gtrack_log (GTRACK_VERBOSE_TYPE level, const char *format,...) |
| GTRACK calls this function to log the events. More... | |
Enumerations | |
| enum | GTRACK_VERBOSE_TYPE { GTRACK_VERBOSE_NONE = 0, GTRACK_VERBOSE_ERROR, GTRACK_VERBOSE_WARNING, GTRACK_VERBOSE_DEBUG, GTRACK_VERBOSE_MATRIX, GTRACK_VERBOSE_MAXIMUM } |
| GTRACK Verbose Level. More... | |
Macros | |
| #define | GTRACK_MAX_SAVE_FILE_NAME_LENGTH (200U) |
| Size of name of output file. More... | |
| #define | GTRACK_STATE_VECTOR_SIZE sizeof(GTRACK_state_vector_pos_vel_acc)/sizeof(float) |
| Size of state vector. More... | |
| #define | GTRACK_MEASUREMENT_VECTOR_SIZE sizeof(GTRACK_measurement_vector)/sizeof(float) |
| Size of measurements vector. More... | |
Maximum supported configurations. | |
| #define | GTRACK_NUM_POINTS_MAX (1000U) |
| Defines maximum possible number of measurments point the algorithm will accept at configuration time. More... | |
| #define | GTRACK_NUM_TRACKS_MAX (250U) |
| Defines maximum possible number of tracking target the algorithm will accept at configuration time. More... | |
Target ID definitions. | |
Target IDs are uint8_t, with valid IDs ranging from 0 to 249. Values 250 to 252 are reserved for future use, other values as defined below. | |
| #define | GTRACK_ID_POINT_TOO_WEAK (253U) |
| Point is not associated, is too weak. More... | |
| #define | GTRACK_ID_POINT_BEHIND_THE_WALL (254U) |
| Point is not associated, is behind the wall. More... | |
| #define | GTRACK_ID_POINT_NOT_ASSOCIATED (255U) |
| Point is not associated, noise. More... | |
Benchmarking results. | |
During runtime execution, tracking step function can optionally return cycle counts for the sub-functions defined below. Each count is 32bit unsigned integer value representing a timestamp of free runing clock. | |
| #define | GTRACK_BENCHMARK_SETUP (0U) |
| Cycle count at step setup. More... | |
| #define | GTRACK_BENCHMARK_PREDICT (1U) |
| Cycle count after predict function. More... | |
| #define | GTRACK_BENCHMARK_ASSOCIATE (2U) |
| Cycle count after associate function. More... | |
| #define | GTRACK_BENCHMARK_ALLOCATE (3U) |
| Cycle count after allocate function. More... | |
| #define | GTRACK_BENCHMARK_UPDATE (4U) |
| Cycle count after update function. More... | |
| #define | GTRACK_BENCHMARK_REPORT (5U) |
| Cycle count after report function. More... | |
| #define | GTRACK_BENCHMARK_SIZE (GTRACK_BENCHMARK_REPORT) |
| Size of benchmarking array. More... | |
Boundary boxes. | |
Application can configure tracker with scene boundries. Boundaries are defined as a boxes. | |
| #define | GTRACK_MAX_BOUNDARY_BOXES (2U) |
| Maximum number of boundary boxes. Points outside of boundary boxes are ignored. More... | |
| #define | GTRACK_MAX_STATIC_BOXES (2U) |
| Maximum number of static boxes. Targets inside the static box can persist longer. More... | |
| #define GTRACK_NUM_POINTS_MAX (1000U) |
Defines maximum possible number of measurments point the algorithm will accept at configuration time.
| #define GTRACK_NUM_TRACKS_MAX (250U) |
Defines maximum possible number of tracking target the algorithm will accept at configuration time.
| #define GTRACK_ID_POINT_TOO_WEAK (253U) |
Point is not associated, is too weak.
| #define GTRACK_ID_POINT_BEHIND_THE_WALL (254U) |
Point is not associated, is behind the wall.
| #define GTRACK_ID_POINT_NOT_ASSOCIATED (255U) |
Point is not associated, noise.
| #define GTRACK_BENCHMARK_SETUP (0U) |
Cycle count at step setup.
| #define GTRACK_BENCHMARK_PREDICT (1U) |
Cycle count after predict function.
| #define GTRACK_BENCHMARK_ASSOCIATE (2U) |
Cycle count after associate function.
| #define GTRACK_BENCHMARK_ALLOCATE (3U) |
Cycle count after allocate function.
| #define GTRACK_BENCHMARK_UPDATE (4U) |
Cycle count after update function.
| #define GTRACK_BENCHMARK_REPORT (5U) |
Cycle count after report function.
| #define GTRACK_BENCHMARK_SIZE (GTRACK_BENCHMARK_REPORT) |
Size of benchmarking array.
| #define GTRACK_MAX_SAVE_FILE_NAME_LENGTH (200U) |
Size of name of output file.
| #define GTRACK_MAX_BOUNDARY_BOXES (2U) |
Maximum number of boundary boxes. Points outside of boundary boxes are ignored.
| #define GTRACK_MAX_STATIC_BOXES (2U) |
Maximum number of static boxes. Targets inside the static box can persist longer.
| #define GTRACK_STATE_VECTOR_SIZE sizeof(GTRACK_state_vector_pos_vel_acc)/sizeof(float) |
Size of state vector.
| #define GTRACK_MEASUREMENT_VECTOR_SIZE sizeof(GTRACK_measurement_vector)/sizeof(float) |
Size of measurements vector.
| enum GTRACK_VERBOSE_TYPE |
GTRACK Verbose Level.
Defines Algorithm verboseness level.
| PTK_AlgHandle PTK_Alg_RadarGTrackInit | ( | const PTK_Alg_RadarGTrackParams * | cfgParams | ) |
Initializes the library based on the given algorithm configuration parameters and allocated memory blocks.
| [in] | cfgParams | Algorithm configuration parameters. It is ecpected that the same configuration parameters passed in the PTK_Alg_RadarOgmapConfig() API are given. No check can be made to make sure these are the same. Failure to provide the same parameter set might result in an unexpected behavior (ex:- memory requirements could be different for different parameter set). |
| int PTK_Alg_RadarGTrackProcess | ( | PTK_AlgHandle | algHandle, |
| const PTK_Alg_RadarSensorConfig * | sensorCfg, | ||
| const PTK_Alg_RadarDetOutput * | doaData, | ||
| const PTK_InsPoseAndRef * | posAndRef, | ||
| PTK_Alg_RadarGTrackTargetInfo * | targetInfo | ||
| ) |
Processes the given point cloud and performs Group Tracking.
| [in,out] | algHandle | Algorithm handle. |
| [in] | sensorCfg | Radar sensor configuration. |
| [in] | doaData | Radar object data. |
| [in] | posAndRef | Current and previous INS records along with the transform for ecef to world. |
| [out] | targetInfo | Data structure which holds tracks and ego-location for frame. |
| void PTK_Alg_RadarGTrackDeInit | ( | PTK_AlgHandle | algHandle | ) |
De-initializes the algorithm context.
| [in,out] | algHandle | Algorithm handle. |
| void* gtrack_alloc | ( | uint32_t | numElements, |
| uint32_t | sizeInBytes | ||
| ) |
GTRACK calls this function to allocate memory. Expects the void pointer if allocation is sucessful, and NULL otherwise.
| [in] | numElements | Number of elements to allocate. |
| [in] | sizeInBytes | Size of each element in bytes to allocate. |
| void gtrack_free | ( | void * | pFree, |
| uint32_t | sizeInBytes | ||
| ) |
GTRACK calls this function to free memory.
| [in] | pFree | Pointer to a memmory to free. |
| [in] | sizeInBytes | Size of memory in bytes to free. |
| void gtrack_log | ( | GTRACK_VERBOSE_TYPE | level, |
| const char * | format, | ||
| ... | |||
| ) |
GTRACK calls this function to log the events.
| [in] | level | Level is the event importance. |
| [in] | format | Format is the variable size formated output. |