![]() |
TI Autonomous Driving Algorithms (TIADALG) Library User Guide
|
This file defines the private functions for Feature Plane classification. More...
#include "c7x.h"
#include <./../common/tiadalg_alg_int_interface.h>
#include <./../common/tiadalg_common_utils.h>
#include "tiadalg_interface.h"
#include <math.h>
#include <float.h>
#include <string.h>
#include <./../common/profile.h>
#include "sfm_ti_device_utils.h"
#include "VLIB_triangulatePoints_types.h"
Go to the source code of this file.
Data Structures | |
struct | SFM_TI_Obj |
struct | SFM_TI_trackInfo |
This structure defines the format in which SFM module expects a particular feature point's tracked location in image plane. More... | |
struct | sSFM_TI_EqSolvePrm |
Buffers required for equation solving (AtA * x = Atb) in triangulation Since total NUM_TRACKS_TOGATHER number of tracks are worked together hence for all the tracks these matrix are formed before calling the equation solve kernel. More... | |
struct | sSFM_TI_EqInitMat |
Place holder for initial data matrices. From this data matrix Pseudo AtA and Pseudo Atb matrices are formed. After forming Pseudo matrices this data is not used. More... | |
struct | sSFM_TI_PrunPrm |
3D pruning related parameters More... | |
union | uSFM_TI_MatData |
Triangulation related mutually exclusive scratch data. More... | |
struct | sSfm_TI_L1DMem |
L1D scratch memory definition. Base address of ever element in below structure is double word aligned if base address of the structure is double word aligned. More... | |
struct | sSfm_TI_L2DMem |
L2 scratch memory definition. Base address of every element in below structure is double word aligned if base address of the structure is double word aligned. More... | |
struct | sSfm_TI_ExtMem |
L1D scratch memory definition. Base address of ever element in below structure is double word aligned if base address of the structure is double word aligned. More... | |
Typedefs | |
typedef SFM_TI_Obj * | SFM_TI_Handle |
Enumerations | |
enum | eMemrecs { ALG_HANDLE_MEMREC, ALG_HANDLE_INT_MEMREC, ALG_EXT_MEMREC, ALG_L3D_MEMREC, ALG_L2D_MEMREC, ALG_L1D_MEMREC, ALG_TRACK_MEMREC, ALG_TRACK_INT_MEMREC, NUM_MEMRECS, ALG_HANDLE_MEMREC, EL_ALG_BUFDESC_VOXEL_INFO_MEM, EL_ALG_BUFDESC_3D_POINTS_MEM, EL_ALG_BUFDESC_POINTS_DESC_MEM, EL_ALG_EXT_PERSIST_MEM, EL_ALG_EXT_SCRATCH_MEM, EL_ALG_L2_SCRATCH_MEM, NUM_MEMRECS } |
Memory records for Feature Plane classification applet. More... | |
enum | eAlgState { ALG_NOT_ACTIVE, ALG_ACTIVE, ALG_NOT_ACTIVE, ALG_ACTIVE } |
State of Feature Plane computation applet. More... | |
Functions | |
int32_t | SFM_TI_numAlloc (void) |
int32_t | SFM_TI_alloc (const IALG_Params *params, struct IALG_Fxns **parentFxns, IALG_MemRec *memRec) |
int32_t | SFM_TI_init (IALG_Handle handle, const IALG_MemRec *memRec, IALG_Handle parent, const IALG_Params *params) |
void | SFM_TI_activate (IALG_Handle handle) |
void | SFM_TI_deactivate (IALG_Handle handle) |
int32_t | SFM_TI_free (IALG_Handle handle, IALG_MemRec *memRec) |
int32_t | SFM_TI_control (IVISION_Handle handle, IALG_Cmd cmd, const IALG_Params *inParams, IALG_Params *outParams) |
int32_t | SFM_TI_process (IVISION_Handle handle, IVISION_InBufs *inBufs, IVISION_OutBufs *outBufs, IVISION_InArgs *inArgs, IVISION_OutArgs *outArgs) |
void | SFM_TI_updatePtrs (sSfm_TI_L1DMem *sfmL1Prm, sSfm_TI_L2DMem *sfmL2Prm, sSfm_TI_ExtMem *sfmPrm, SFM_TI_CreateParams *createParams) |
Variables | |
TI_DSP_PrfInfo * | prfInfo |
This file defines the private functions for Feature Plane classification.
#define MAX_NUM_IN_POINTS (20000) |
#define MAX_NUM_OUT_POINTS MAX_NUM_IN_POINTS |
#define CAM_EXT_PRM_BUF_DEPTH (VLIB_TRIANG_MAX_POINTS_IN_TRACK) |
#define MAX_3D_POINTS (MAX_NUM_OUT_POINTS) |
#define NUM_VECTORS_TOGATHER (48) |
#define NUM_TRACKS_TOGATHER (NUM_VECTORS_TOGATHER * VLIB_TRIANG_NUM_TRACKS_IN_ONE_VECTOR) |
#define L2_SCRATCH_BUF_SIZE (448*1024) |
#define DDR_SCRATCH_BUF_SIZE (8*1024) |
#define SIMD_WIDTH (16) |
#define TIADALG_DMA_CHANNEL_PING_PONG ((int32_t) 0) |
#define TIADALG_DMA_CHANNEL_CBCR_PING_PONG ((int32_t) 1) |
#define TIADALG_DMA_CHANNEL_MEMCPY_2 ((int32_t) 2) |
#define TIADALG_DMA_CHANNEL_MEMCPY ((int32_t) 3) |
#define TIADALG_DMA_CHANNEL_MAX ((int32_t) 4) |
#define TIADALG_FLOW_CTRL_OPT_ONLY (0) |
#define TIADALG_FLOW_CTRL_REF_ONLY (1) |
#define TIADALG_FLOW_CTRL_NATC_ONLY (2) |
#define TIADALG_DOF_CONFIDENCE_TO_UINT8_SCALING (17) |
#define SE_PARAM_BASE (0x0000) |
#define SE0_PARAM_OFFSET (SE_PARAM_BASE) |
#define SE1_PARAM_OFFSET (SE0_PARAM_OFFSET + SE_PARAM_SIZE) |
#define SE2_PARAM_OFFSET (SE1_PARAM_OFFSET + SE_PARAM_SIZE) |
#define SE3_PARAM_OFFSET (SE2_PARAM_OFFSET + SE_PARAM_SIZE) |
#define SE4_PARAM_OFFSET (SE3_PARAM_OFFSET + SE_PARAM_SIZE) |
#define SE5_PARAM_OFFSET (SE4_PARAM_OFFSET + SE_PARAM_SIZE) |
#define MAX_NUM_STRM_TEMPLATE (6) |
#define SE_PARAM_WORDS ((uint32_t)SE_PARAM_SIZE/sizeof(uint32_t)) |
typedef SFM_TI_Obj* SFM_TI_Handle |
enum eMemrecs |
Memory records for Feature Plane classification applet.
Memory records for alogirthm handle. Alg Handle should be first entry in this enum table as test app is expecting it to be first entry.
enum eAlgState |
int32_t SFM_TI_numAlloc | ( | void | ) |
int32_t SFM_TI_alloc | ( | const IALG_Params * | params, |
struct IALG_Fxns ** | parentFxns, | ||
IALG_MemRec * | memRec | ||
) |
SFM_TI_alloc
[in] | params | Create time parameters (IALG_Params ) |
[in] | parentFxns | IALG function pointers (IALG_Fxns ) |
[in] | memRec | IALG requested memory handle (IALG_MemRec ) |
int32_t SFM_TI_init | ( | IALG_Handle | handle, |
const IALG_MemRec * | memRec, | ||
IALG_Handle | parent, | ||
const IALG_Params * | params | ||
) |
SFM_TI_init
[in] | handle | SFM Algorithm handle (IVISION_Handle ) |
[in] | memRec | IALG requested memory handle (IALG_MemRec ) |
[in] | params | Create time parameters (IALG_Params ) |
void SFM_TI_activate | ( | IALG_Handle | handle | ) |
SFM_TI_activate
[in] | handle | Algorithm Handle (IALG_Handle ) |
void SFM_TI_deactivate | ( | IALG_Handle | handle | ) |
SFM_TI_activate
[in] | handle | Algorithm Handle (IALG_Handle ) |
int32_t SFM_TI_free | ( | IALG_Handle | handle, |
IALG_MemRec * | memRec | ||
) |
SFM_TI_free
[in] | handle | Algorithm Handle (IALG_Handle ) |
[in] | memRec | IALG memory request handle (IALG_MemRec ) |
int32_t SFM_TI_control | ( | IVISION_Handle | handle, |
IALG_Cmd | cmd, | ||
const IALG_Params * | inParams, | ||
IALG_Params * | outParams | ||
) |
int32_t SFM_TI_process | ( | IVISION_Handle | handle, |
IVISION_InBufs * | inBufs, | ||
IVISION_OutBufs * | outBufs, | ||
IVISION_InArgs * | inArgs, | ||
IVISION_OutArgs * | outArgs | ||
) |
SFM_TI_process
[in] | handle | SFM Algorithm handle (IVISION_Handle ) |
[in] | inBufs | Input Buffer to be processed (IVISION_InBufs ) |
[in] | outBufs | Output Buffer to be filled up (IVISION_OutBufs) |
[in] | inArgs | Input Arguments to control the behavior (IVISION_InArgs ) |
[in] | outArgs | Generated discrete information (IVISION_OutArgs) |
void SFM_TI_updatePtrs | ( | sSfm_TI_L1DMem * | sfmL1Prm, |
sSfm_TI_L2DMem * | sfmL2Prm, | ||
sSfm_TI_ExtMem * | sfmPrm, | ||
SFM_TI_CreateParams * | createParams | ||
) |
TI_DSP_PrfInfo* prfInfo |
|
© Copyright 2018 Texas Instruments Incorporated. All rights reserved. |
Document generated by doxygen 1.8.6 |