Main Page | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Class Members | File Members

kalman_filter Class Reference

#include <kalman_filter.h>

List of all members.


Detailed Description

Definition at line 28 of file kalman_filter.h.

Public Member Functions

vgl_point_2d< double > get_cur_epipole () const
 get backprojection for debugging.
vcl_vector< vnl_matrix< double > > get_back_projection () const
vnl_matrix< double > get_predicted_curve ()
 predict next curve.
vnl_double_3 get_next_motion (vnl_double_3 v)
vcl_vector< vgl_point_2d<
double > > 
get_pre_observes ()
vcl_vector< vgl_point_2d<
double > > 
get_cur_observes ()
vcl_vector< vgl_point_2d<
double > > 
get_next_observes ()
vcl_vector< vgl_point_3d<
double > > 
get_local_pts ()
bugl_curve_3d get_curve_3d ()
void read_data (const char *fname)
 read all the data including time stampes, trackers.
vcl_vector< vdgl_digital_curve_sptrread_tracker_file (char *fname)
 read vishual tracker result out of a file.
void init ()
 initialize the kalman filter states.
void init_epipole (double x, double y)
void inc ()
vnl_double_2 projection (const vnl_double_3x4 &P, const vnl_double_3 &X)
 kalman_filter ()
 constructors.
 kalman_filter (const char *fname)
virtual ~kalman_filter ()

Protected Member Functions

vcl_vector< double > read_timestamp_file (char *fname)
 read time stamp.
double matched_point_prob (vnl_double_2 &z, vnl_double_2 &z_pred)
 if the zero probability returned, the matched point is a outlier.
vnl_matrix_fixed< double, 6, 6 > get_transit_matrix (int i, int j)
 get time interval from ith frame to j-th frame.
void update_confidence ()
 update the confidence for each 3d point.
void update_observes (const vnl_double_3x4 &P, int iframe)
 update the matched points in the next frame using closest neighbour.
void init_velocity ()
vnl_matrix_fixed< double, 2, 6 > get_H_matrix (vnl_double_3x4 &P, vnl_double_3 &Y)
 set linearized observation matrix.
vnl_double_3x4 get_projective_matrix (const vnl_double_3 &v) const
 compute projective matrix from predicted position.
void init_covariant_matrix ()
void init_cam_intrinsic ()
void init_state_3d_estimation ()
void init_transit_matrix ()

Private Attributes

bugl_curve_3d curve_3d_
 position and confidence of feature samples.
vcl_vector< double > prob_
vcl_vector< vcl_vector< bugl_gaussian_point_2d<
double > > > 
observes_
 used for matching point.
vcl_vector< double > time_tick_
 each element represents shooting times for this frame.
vcl_vector< vcl_vector< vdgl_digital_curve_sptr > > trackers_
 each element of the vector represents a projection of the same 3D curves.
vcl_vector< vnl_double_3 > motions_
int cur_pos_
 current frame position in history pool.
int queue_size_
int num_points_
int memory_size_
 how much the queue has been used.
vnl_vector_fixed< double, 6 > X_
 state vector.
vnl_matrix_fixed< double, 6, 6 > Q_
 covariant matrix of state vector.
vnl_matrix_fixed< double, 6, 2 > G_
 constraint kalman gain matrix.
vnl_matrix_fixed< double, 2, 2 > R_
 initial covariant matrix of state vector.
vnl_matrix_fixed< double, 6, 6 > Q0_
 covariant matrix of 2D projection.
vnl_double_2 * e_
 initial epipole.
vnl_double_3x3 K_
 camera intrinsic parameters.

Static Private Attributes

static const double large_num_
 used to denote outlier point in image.


Constructor & Destructor Documentation

kalman_filter::kalman_filter  ) 
 

constructors.

kalman_filter::kalman_filter const char *  fname  ) 
 

virtual kalman_filter::~kalman_filter  )  [virtual]
 


Member Function Documentation

vcl_vector<vnl_matrix<double> > kalman_filter::get_back_projection  )  const
 

vgl_point_2d<double> kalman_filter::get_cur_epipole  )  const
 

get backprojection for debugging.

vcl_vector<vgl_point_2d<double> > kalman_filter::get_cur_observes  ) 
 

bugl_curve_3d kalman_filter::get_curve_3d  ) 
 

vnl_matrix_fixed<double, 2, 6> kalman_filter::get_H_matrix vnl_double_3x4 P,
vnl_double_3 &  Y
[protected]
 

set linearized observation matrix.

vcl_vector<vgl_point_3d<double> > kalman_filter::get_local_pts  ) 
 

vnl_double_3 kalman_filter::get_next_motion vnl_double_3  v  ) 
 

vcl_vector<vgl_point_2d<double> > kalman_filter::get_next_observes  ) 
 

vcl_vector<vgl_point_2d<double> > kalman_filter::get_pre_observes  ) 
 

vnl_matrix<double> kalman_filter::get_predicted_curve  ) 
 

predict next curve.

vnl_double_3x4 kalman_filter::get_projective_matrix const vnl_double_3 &  v  )  const [protected]
 

compute projective matrix from predicted position.

vnl_matrix_fixed<double, 6, 6> kalman_filter::get_transit_matrix int  i,
int  j
[protected]
 

get time interval from ith frame to j-th frame.

void kalman_filter::inc  ) 
 

void kalman_filter::init  ) 
 

initialize the kalman filter states.

void kalman_filter::init_cam_intrinsic  )  [protected]
 

void kalman_filter::init_covariant_matrix  )  [protected]
 

void kalman_filter::init_epipole double  x,
double  y
 

void kalman_filter::init_state_3d_estimation  )  [protected]
 

void kalman_filter::init_transit_matrix  )  [protected]
 

void kalman_filter::init_velocity  )  [protected]
 

double kalman_filter::matched_point_prob vnl_double_2 &  z,
vnl_double_2 &  z_pred
[protected]
 

if the zero probability returned, the matched point is a outlier.

vnl_double_2 kalman_filter::projection const vnl_double_3x4 P,
const vnl_double_3 &  X
 

void kalman_filter::read_data const char *  fname  ) 
 

read all the data including time stampes, trackers.

vcl_vector<double> kalman_filter::read_timestamp_file char *  fname  )  [protected]
 

read time stamp.

vcl_vector<vdgl_digital_curve_sptr> kalman_filter::read_tracker_file char *  fname  ) 
 

read vishual tracker result out of a file.

void kalman_filter::update_confidence  )  [protected]
 

update the confidence for each 3d point.

void kalman_filter::update_observes const vnl_double_3x4 P,
int  iframe
[protected]
 

update the matched points in the next frame using closest neighbour.


Member Data Documentation

int kalman_filter::cur_pos_ [private]
 

current frame position in history pool.

Definition at line 107 of file kalman_filter.h.

bugl_curve_3d kalman_filter::curve_3d_ [private]
 

position and confidence of feature samples.

Definition at line 93 of file kalman_filter.h.

vnl_double_2* kalman_filter::e_ [private]
 

initial epipole.

Definition at line 130 of file kalman_filter.h.

vnl_matrix_fixed<double, 6, 2> kalman_filter::G_ [private]
 

constraint kalman gain matrix.

Definition at line 121 of file kalman_filter.h.

vnl_double_3x3 kalman_filter::K_ [private]
 

camera intrinsic parameters.

Definition at line 133 of file kalman_filter.h.

const double kalman_filter::large_num_ [static, private]
 

used to denote outlier point in image.

Definition at line 136 of file kalman_filter.h.

int kalman_filter::memory_size_ [private]
 

how much the queue has been used.

Definition at line 112 of file kalman_filter.h.

vcl_vector<vnl_double_3> kalman_filter::motions_ [private]
 

Definition at line 105 of file kalman_filter.h.

int kalman_filter::num_points_ [private]
 

Definition at line 109 of file kalman_filter.h.

vcl_vector<vcl_vector<bugl_gaussian_point_2d<double> > > kalman_filter::observes_ [private]
 

used for matching point.

Definition at line 98 of file kalman_filter.h.

vcl_vector<double> kalman_filter::prob_ [private]
 

Definition at line 95 of file kalman_filter.h.

vnl_matrix_fixed<double, 6, 6> kalman_filter::Q0_ [private]
 

covariant matrix of 2D projection.

Definition at line 127 of file kalman_filter.h.

vnl_matrix_fixed<double, 6, 6> kalman_filter::Q_ [private]
 

covariant matrix of state vector.

Definition at line 118 of file kalman_filter.h.

int kalman_filter::queue_size_ [private]
 

Definition at line 108 of file kalman_filter.h.

vnl_matrix_fixed<double, 2, 2> kalman_filter::R_ [private]
 

initial covariant matrix of state vector.

Definition at line 124 of file kalman_filter.h.

vcl_vector<double> kalman_filter::time_tick_ [private]
 

each element represents shooting times for this frame.

Definition at line 101 of file kalman_filter.h.

vcl_vector<vcl_vector<vdgl_digital_curve_sptr> > kalman_filter::trackers_ [private]
 

each element of the vector represents a projection of the same 3D curves.

Definition at line 103 of file kalman_filter.h.

vnl_vector_fixed<double, 6> kalman_filter::X_ [private]
 

state vector.

Definition at line 115 of file kalman_filter.h.


The documentation for this class was generated from the following file:
Generated on Thu Jan 10 14:54:04 2008 for contrib/brl/bmvl/brct by  doxygen 1.4.4