Functions | Variables
mtt_kalman.h File Reference

Kalman estimation related functions header. More...

#include "mtt_common.h"
Include dependency graph for mtt_kalman.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Functions

void AddPointPath (t_path *path, double x, double y)
 
void AllocMotionModels (t_list &list, t_config &config)
 
CvKalman * CreateModelCTRV (void)
 
CvKalman * CreateModelCV (void)
 
CvKalman * CreateModelCV_SC (void)
 
CvKalman * CreateModelFwdCt (void)
 
void dA_FwdCt (CvKalman *model, double q[6], double dt, double l=2.54)
 
void dH_FwdCt (CvKalman *model)
 
void GetErrorConvariance (t_errors *error)
 Get covariance. More...
 
void IterateMotionModelCTRV (CvKalman *model, double vm, double wm)
 
void IterateMotionModelCV (CvKalman *model, double vxm, double vym)
 
double IterateMotionModelCV_SC (CvKalman *model, double vm)
 
void IterateMotionModelFwdCt (CvKalman *model, double z[2])
 
void MotionModelsIteration (vector< t_listPtr > &list, t_config &config)
 
double point2line_distance (double alpha, double ro, double x, double y)
 Calculates the line to point distance. More...
 
int real2print (double x, t_config *config)
 
void SetSearchArea (t_list &list, t_config &config)
 
void UpdateTransitionMatrixCTRV (CvKalman *model, double, double, double t, double v, double w, double dt)
 
void UpdateTransitionMatrixCV (CvKalman *model, double dt)
 
void UpdateTransitionMatrixCV_SC (CvKalman *model, double dt)
 

Variables

FILE * fp
 
double grxy
 
double s [6]
 
int select_object
 
double theta
 
double vel
 

Detailed Description

Kalman estimation related functions header.

Definition in file mtt_kalman.h.

Function Documentation

void AddPointPath ( t_path path,
double  x,
double  y 
)

Definition at line 319 of file mtt_association.cpp.

void AllocMotionModels ( t_list list,
t_config config 
)

Definition at line 415 of file mtt_kalman.cpp.

CvKalman* CreateModelCTRV ( void  )

Definition at line 638 of file mtt_kalman.cpp.

CvKalman* CreateModelCV ( void  )

Definition at line 706 of file mtt_kalman.cpp.

CvKalman* CreateModelCV_SC ( void  )

Definition at line 674 of file mtt_kalman.cpp.

CvKalman* CreateModelFwdCt ( void  )

Definition at line 757 of file mtt_kalman.cpp.

void dA_FwdCt ( CvKalman *  model,
double  q[6],
double  dt,
double  l = 2.54 
)

Definition at line 1037 of file mtt_kalman.cpp.

void dH_FwdCt ( CvKalman *  model)

Definition at line 1026 of file mtt_kalman.cpp.

void GetErrorConvariance ( t_errors error)

Get covariance.

Returns
void

Initalise auxiliar matrixes

Set accumulators to 0

Do Cov(Innovation) = 1/m * S(i=0,i< m-1,d[k-i]*d[k-i]') and Cov(Residue) = 1/m * S(i=0,i< m-1,e[k-i]*e[k-i]')

Todo:
Wend the number of points is growing the covariance is way to big, i don't realy know why

Definition at line 508 of file mtt_kalman.cpp.

void IterateMotionModelCTRV ( CvKalman *  model,
double  vm,
double  wm 
)

Definition at line 780 of file mtt_kalman.cpp.

void IterateMotionModelCV ( CvKalman *  model,
double  vxm,
double  vym 
)

Definition at line 913 of file mtt_kalman.cpp.

double IterateMotionModelCV_SC ( CvKalman *  model,
double  vm 
)

Definition at line 874 of file mtt_kalman.cpp.

void IterateMotionModelFwdCt ( CvKalman *  model,
double  z[2] 
)

Definition at line 842 of file mtt_kalman.cpp.

void MotionModelsIteration ( vector< t_listPtr > &  list,
t_config config 
)

If the object is new, we set the prestate and poststate, given that this is not a new measurement, of the filter to the current measurement

Get the new measurement into the filter and correct, t=k

Extract the correct state from the filter and put it to path[k]

After correction iterate the filter to make a prediction, t=k+1

Extract the prediction from the filter

Obtain error vectors

Add estimated point to path

Put velocity into data file

Obtain velocity

Put lateral error into data file

Put error cov and AKF gains into data file

Define a new search area based on the kalman errors and predicted position

Do some tweaks on the kalman errors

  • Update white noise scale **************************/

Only update if the object is visible

Definition at line 64 of file mtt_kalman.cpp.

double point2line_distance ( double  alpha,
double  ro,
double  x,
double  y 
)

Calculates the line to point distance.

Parameters
alphapolar coordinates of the line
ropolar coordinates of the line
xcartesian coordinates of the point
y
Returns
algebric distance

Definition at line 66 of file line_fitting.cpp.

int real2print ( double  x,
t_config config 
)
void SetSearchArea ( t_list list,
t_config config 
)

Small bonus to new objects

Todo:
I should use a equation that allowed a more soft transition

Definition at line 252 of file mtt_association.cpp.

void UpdateTransitionMatrixCTRV ( CvKalman *  model,
double  ,
double  ,
double  t,
double  v,
double  w,
double  dt 
)

Definition at line 1156 of file mtt_kalman.cpp.

void UpdateTransitionMatrixCV ( CvKalman *  model,
double  dt 
)

Definition at line 975 of file mtt_kalman.cpp.

void UpdateTransitionMatrixCV_SC ( CvKalman *  model,
double  dt 
)

Definition at line 955 of file mtt_kalman.cpp.

Variable Documentation

FILE* fp
double grxy
double s[6]
int select_object

Definition at line 36 of file mtt_kalman.cpp.

double theta
double vel


mtt
Author(s): Jorge Almeida
autogenerated on Mon Mar 2 2015 01:32:18