#include <kalman_filter.h>
Definition at line 29 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_sptr > | read_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. | |
| kalman_filter::kalman_filter | ( | ) |
constructors.
| kalman_filter::kalman_filter | ( | const char * | fname | ) |
| virtual kalman_filter::~kalman_filter | ( | ) | [virtual] |
| vgl_point_2d<double> kalman_filter::get_cur_epipole | ( | ) | const |
get backprojection for debugging.
| vcl_vector<vnl_matrix<double> > kalman_filter::get_back_projection | ( | ) | const |
| vnl_matrix<double> kalman_filter::get_predicted_curve | ( | ) |
predict next curve.
| vnl_double_3 kalman_filter::get_next_motion | ( | vnl_double_3 | v | ) |
| vcl_vector<vgl_point_2d<double> > kalman_filter::get_pre_observes | ( | ) |
| vcl_vector<vgl_point_2d<double> > kalman_filter::get_cur_observes | ( | ) |
| vcl_vector<vgl_point_2d<double> > kalman_filter::get_next_observes | ( | ) |
| vcl_vector<vgl_point_3d<double> > kalman_filter::get_local_pts | ( | ) |
| bugl_curve_3d kalman_filter::get_curve_3d | ( | ) |
| void kalman_filter::read_data | ( | const char * | fname | ) |
read all the data including time stampes, trackers.
| vcl_vector<vdgl_digital_curve_sptr> kalman_filter::read_tracker_file | ( | char * | fname | ) |
read vishual tracker result out of a file.
| void kalman_filter::init | ( | ) |
initialize the kalman filter states.
| void kalman_filter::init_epipole | ( | double | x, | |
| double | y | |||
| ) |
| void kalman_filter::inc | ( | ) |
| vnl_double_2 kalman_filter::projection | ( | const vnl_double_3x4 & | P, | |
| const vnl_double_3 & | X | |||
| ) |
| vcl_vector<double> kalman_filter::read_timestamp_file | ( | char * | fname | ) | [protected] |
read time stamp.
| 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_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::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.
| void kalman_filter::init_velocity | ( | ) | [protected] |
| vnl_matrix_fixed<double, 2, 6> kalman_filter::get_H_matrix | ( | vnl_double_3x4 & | P, | |
| vnl_double_3 & | Y | |||
| ) | [protected] |
set linearized observation matrix.
| vnl_double_3x4 kalman_filter::get_projective_matrix | ( | const vnl_double_3 & | v | ) | const [protected] |
compute projective matrix from predicted position.
| void kalman_filter::init_covariant_matrix | ( | ) | [protected] |
| void kalman_filter::init_cam_intrinsic | ( | ) | [protected] |
| void kalman_filter::init_state_3d_estimation | ( | ) | [protected] |
| void kalman_filter::init_transit_matrix | ( | ) | [protected] |
bugl_curve_3d kalman_filter::curve_3d_ [private] |
vcl_vector<double> kalman_filter::prob_ [private] |
Definition at line 96 of file kalman_filter.h.
vcl_vector<vcl_vector<bugl_gaussian_point_2d<double> > > kalman_filter::observes_ [private] |
vcl_vector<double> kalman_filter::time_tick_ [private] |
each element represents shooting times for this frame.
Definition at line 102 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 104 of file kalman_filter.h.
vcl_vector<vnl_double_3> kalman_filter::motions_ [private] |
Definition at line 106 of file kalman_filter.h.
int kalman_filter::cur_pos_ [private] |
int kalman_filter::queue_size_ [private] |
Definition at line 109 of file kalman_filter.h.
int kalman_filter::num_points_ [private] |
Definition at line 110 of file kalman_filter.h.
int kalman_filter::memory_size_ [private] |
vnl_vector_fixed<double, 6> kalman_filter::X_ [private] |
vnl_matrix_fixed<double, 6, 6> kalman_filter::Q_ [private] |
vnl_matrix_fixed<double, 6, 2> kalman_filter::G_ [private] |
vnl_matrix_fixed<double, 2, 2> kalman_filter::R_ [private] |
vnl_matrix_fixed<double, 6, 6> kalman_filter::Q0_ [private] |
vnl_double_2* kalman_filter::e_ [private] |
vnl_double_3x3 kalman_filter::K_ [private] |
const double kalman_filter::large_num_ [static, private] |
1.5.1