Video Core Feature Interface Reference Manual  jpl-r3.6.0-rc3
vftr_shd.h File Reference

Core feature-lib for shaking object detection (SHD) More...

Data Structures

struct  VFTR_SHD_LT_OBJ_ATTR_S
 Struct for shd long term attributes. More...
 
struct  VFTR_SHD_LONGTERM_LIST_S
 Struct for shd long term list. More...
 
struct  VFTR_SHD_PARAM_S
 Struct for object shaking detection parameter. More...
 
struct  VFTR_SHD_STATUS_S
 Struct for shd status. More...
 
struct  VFTR_SHD_INSTANCE_S
 

Macros

#define VFTR_SHD_LONGTERM_NUM   (10)
 
#define IVA_JIF_HZ   (100)
 
#define VFTR_SHD_MIN_OBJ_LIFE_TH   (0)
 
#define VFTR_SHD_MAX_OBJ_LIFE_TH   (MPI_IVA_OD_MAX_LIFE)
 
#define VFTR_SHD_MAX_SEN_MIN_TH   (1)
 
#define VFTR_SHD_MAX_SEN_MAX_TH   (100)
 
#define VFTR_SHD_MAX_QUA_MIN_TH   (1)
 
#define VFTR_SHD_MAX_QUA_MAX_TH   (100)
 
#define VFTR_SHD_MAX_LONGTERM_ACTIVE_MIN_TH   (1)
 

Functions

VFTR_SHD_INSTANCE_SVFTR_SHD_newInstance (void)
 Create shaking object detector instance. More...
 
INT32 VFTR_SHD_deleteInstance (VFTR_SHD_INSTANCE_S **instance)
 Delete shaking object detector instance. More...
 
INT32 VFTR_SHD_setParam (VFTR_SHD_INSTANCE_S *instance, const VFTR_SHD_PARAM_S *param)
 Set shd parameters. More...
 
INT32 VFTR_SHD_getParam (const VFTR_SHD_INSTANCE_S *instance, VFTR_SHD_PARAM_S *param)
 Get shd parameters. More...
 
INT32 VFTR_SHD_detectShake (VFTR_SHD_INSTANCE_S *instance, const MPI_IVA_OBJ_LIST_S *obj_list, VFTR_SHD_STATUS_S *status)
 Calculate shd. More...
 
INT32 VFTR_SHD_getStat (const VFTR_SHD_INSTANCE_S *instance, VFTR_SHD_STATUS_S *status)
 Detect object shaking properties. More...
 
INT32 VFTR_SHD_setUserLongTermList (VFTR_SHD_INSTANCE_S *instance, const VFTR_SHD_LONGTERM_LIST_S *lt_list)
 Configure user long term list. More...
 
INT32 VFTR_SHD_getUserLongTermList (const VFTR_SHD_INSTANCE_S *instance, VFTR_SHD_LONGTERM_LIST_S *lt_list)
 Retrieve user long term list configuration. More...
 

Detailed Description

Core feature-lib for shaking object detection (SHD)

Macro Definition Documentation

#define IVA_JIF_HZ   (100)

IVA jiffer time (in Hz)

#define VFTR_SHD_LONGTERM_NUM   (10)

Support long term object number

Function Documentation

INT32 VFTR_SHD_deleteInstance ( VFTR_SHD_INSTANCE_S **  instance)

Delete shaking object detector instance.

Parameters
[in,out]instancepointer to object instance pointer
Returns
The execution result.
Return values
0success
-EFAULTpointer of SHD instance is NULL
See also
VFTR_SDH_newInstance()
INT32 VFTR_SHD_detectShake ( VFTR_SHD_INSTANCE_S instance,
const MPI_IVA_OBJ_LIST_S obj_list,
VFTR_SHD_STATUS_S status 
)

Calculate shd.

Parameters
[in,out]instanceThe pointer to shaking object detector instance.
[in]obj_listobject list.
[out]statusshd status.
Returns
The execution result.
Return values
0success.
-EFAULTinput pointer is NULL.
-EINVALinvalid input parameters.
See also
VFTR_SHD_getStat()
INT32 VFTR_SHD_getParam ( const VFTR_SHD_INSTANCE_S instance,
VFTR_SHD_PARAM_S param 
)

Get shd parameters.

Parameters
[in]instanceThe pointer to shaking object detector instance.
[out]paramshd parameters.
Returns
The execution result.
Return values
0success.
-EFAULTinput pointer is NULL.
See also
SHD_setParam()
INT32 VFTR_SHD_getStat ( const VFTR_SHD_INSTANCE_S instance,
VFTR_SHD_STATUS_S status 
)

Detect object shaking properties.

Parameters
[in]instanceThe pointer to shaking object detector instance.
[out]statusshd status.
Returns
The execution result
Return values
0success.
-EFAULTinput pointer is NULL.
See also
VFTR_SHD_detectShake()
INT32 VFTR_SHD_getUserLongTermList ( const VFTR_SHD_INSTANCE_S instance,
VFTR_SHD_LONGTERM_LIST_S lt_list 
)

Retrieve user long term list configuration.

Parameters
[in]instancePointer to shaking ojbect detector instance.
[out]lt_listpointer to user long term list
Returns
The execution result.
Return values
0success.
-EFAULTinput pointer is NULL.
-EINVALinvalid input parameters.
See also
VFTR_SHD_setUserLongTermList()
VFTR_SHD_INSTANCE_S* VFTR_SHD_newInstance ( void  )

Create shaking object detector instance.

Default value of SHD parameter is as following

{
.en = 1,
.obj_life_th = 32,
.sensitivity = 75,
.quality = 75,
.instance_duration = 10,
.shaking_update_duration = 30,
.longterm_life_th = 10,
.longterm_dec_period = 1800,
}
Returns
The pointer of shaking object detector instance.
Return values
NULLfail to create instance
Not NULLsuccess to create instance
See also
VFTR_SHD_setParam()
VFTR_SHD_setUserLongTermList()
VFTR_SHD_deleteInstance()

< long term life dec

< long term life dec

< long term life dec

< long term life active threshold

INT32 VFTR_SHD_setParam ( VFTR_SHD_INSTANCE_S instance,
const VFTR_SHD_PARAM_S param 
)

Set shd parameters.

Parameters
[in]instanceThe pointer to shaking object detector instance.
[in]paramshd parameters.
Returns
The execution result.
Return values
0success.
-EFAULTinput pointer is NULL.
-EINVALinvalid parameters.
See also
VFTR_SHD_getParam()

After configured SHD instance, it restarts to initial state.

INT32 VFTR_SHD_setUserLongTermList ( VFTR_SHD_INSTANCE_S instance,
const VFTR_SHD_LONGTERM_LIST_S lt_list 
)

Configure user long term list.

Parameters
[in]instancePointer to shaking ojbect detector instance.
[in]lt_listpointer to user long term list
Returns
The execution result.
Return values
0success.
-EFAULTinput pointer is NULL.
-EINVALinvalid input parameters.
See also
VFTR_SHD_getUserLongTermList()