Public Member Functions | Private Member Functions | Private Attributes | List of all members
LshapeTracker Class Reference

#include <l_shape_tracker.hpp>

Public Member Functions

void BoxModel (double &x, double &y, double &vx, double &vy, double &theta, double &psi, double &omega, double &L1, double &L2, double &length, double &width)
 
 LshapeTracker (const double &x_corner, const double &y_corner, const double &L1, const double &L2, const double &theta, const double &dt)
 
 LshapeTracker ()
 
void update (const double &thetaL1, const double &x_corner, const double &y_corner, const double &L1, const double &L2, const double &dt, const int cluster_size)
 

Private Member Functions

void ClockwisePointSwitch ()
 
void CounterClockwisePointSwitch ()
 
void detectCornerPointSwitch (const double &from, const double &to, const double dt)
 
void detectCornerPointSwitchMahalanobis (const double &from, const double &to, const double dt)
 
void detectCornerPointSwitchMahalanobis (const double &from, const double &to, const double L1, const double L2, const double x_corner, const double y_corner)
 
void findOrientation (double &psi, double &length, double &width)
 Finds orientations of tracked object. More...
 
double findTurn (const double &new_angle, const double &old_angle)
 

Private Attributes

int current_size
 
KalmanFilter dynamic_kf
 
double L1_old
 
double L2_old
 
double old_thetaL1
 
KalmanFilter shape_kf
 
double test1
 
double test2
 
double test3
 
double x_old
 
double y_old
 

Detailed Description

Definition at line 45 of file l_shape_tracker.hpp.

Constructor & Destructor Documentation

◆ LshapeTracker() [1/2]

LshapeTracker::LshapeTracker ( const double &  x_corner,
const double &  y_corner,
const double &  L1,
const double &  L2,
const double &  theta,
const double &  dt 
)

Definition at line 58 of file l_shape_tracker.cpp.

◆ LshapeTracker() [2/2]

LshapeTracker::LshapeTracker ( )

Definition at line 56 of file l_shape_tracker.cpp.

Member Function Documentation

◆ BoxModel()

void LshapeTracker::BoxModel ( double &  x,
double &  y,
double &  vx,
double &  vy,
double &  theta,
double &  psi,
double &  omega,
double &  L1,
double &  L2,
double &  length,
double &  width 
)

Definition at line 260 of file l_shape_tracker.cpp.

◆ ClockwisePointSwitch()

void LshapeTracker::ClockwisePointSwitch ( )
private

Definition at line 342 of file l_shape_tracker.cpp.

◆ CounterClockwisePointSwitch()

void LshapeTracker::CounterClockwisePointSwitch ( )
private

Definition at line 377 of file l_shape_tracker.cpp.

◆ detectCornerPointSwitch()

void LshapeTracker::detectCornerPointSwitch ( const double &  from,
const double &  to,
const double  dt 
)
private

Definition at line 294 of file l_shape_tracker.cpp.

◆ detectCornerPointSwitchMahalanobis() [1/2]

void LshapeTracker::detectCornerPointSwitchMahalanobis ( const double &  from,
const double &  to,
const double  dt 
)
private

◆ detectCornerPointSwitchMahalanobis() [2/2]

void LshapeTracker::detectCornerPointSwitchMahalanobis ( const double &  from,
const double &  to,
const double  L1,
const double  L2,
const double  x_corner,
const double  y_corner 
)
private

Definition at line 180 of file l_shape_tracker.cpp.

◆ findOrientation()

void LshapeTracker::findOrientation ( double &  psi,
double &  length,
double &  width 
)
private

Finds orientations of tracked object.

Given the orientation of L1 the other three angles of the rectangle are calculated. Then they are compared with the speed of the object, to estimate it's direction.

angle of one edge of the box velocity in the x axis velocity in the y axis orientation of tracked object, based on it's speed

Definition at line 305 of file l_shape_tracker.cpp.

◆ findTurn()

double LshapeTracker::findTurn ( const double &  new_angle,
const double &  old_angle 
)
private

Definition at line 281 of file l_shape_tracker.cpp.

◆ update()

void LshapeTracker::update ( const double &  thetaL1,
const double &  x_corner,
const double &  y_corner,
const double &  L1,
const double &  L2,
const double &  dt,
const int  cluster_size 
)

Definition at line 147 of file l_shape_tracker.cpp.

Member Data Documentation

◆ current_size

int LshapeTracker::current_size
private

Definition at line 54 of file l_shape_tracker.hpp.

◆ dynamic_kf

KalmanFilter LshapeTracker::dynamic_kf
private

Definition at line 59 of file l_shape_tracker.hpp.

◆ L1_old

double LshapeTracker::L1_old
private

Definition at line 56 of file l_shape_tracker.hpp.

◆ L2_old

double LshapeTracker::L2_old
private

Definition at line 56 of file l_shape_tracker.hpp.

◆ old_thetaL1

double LshapeTracker::old_thetaL1
private

Definition at line 56 of file l_shape_tracker.hpp.

◆ shape_kf

KalmanFilter LshapeTracker::shape_kf
private

Definition at line 58 of file l_shape_tracker.hpp.

◆ test1

double LshapeTracker::test1
private

Definition at line 55 of file l_shape_tracker.hpp.

◆ test2

double LshapeTracker::test2
private

Definition at line 55 of file l_shape_tracker.hpp.

◆ test3

double LshapeTracker::test3
private

Definition at line 55 of file l_shape_tracker.hpp.

◆ x_old

double LshapeTracker::x_old
private

Definition at line 56 of file l_shape_tracker.hpp.

◆ y_old

double LshapeTracker::y_old
private

Definition at line 56 of file l_shape_tracker.hpp.


The documentation for this class was generated from the following files:


datmo
Author(s): Kostas Konstantinidis
autogenerated on Tue May 2 2023 02:58:06