MTF
FALK.h
1 #ifndef MTF_FALK_H
2 #define MTF_FALK_H
3 
4 #include "SearchMethod.h"
5 #include "FALKParams.h"
6 
7 _MTF_BEGIN_NAMESPACE
8 
9 template<class AM, class SSM>
10 class FALK : public SearchMethod < AM, SSM > {
11 public:
12 
13  typedef FALKParams ParamType;
14  typedef ParamType::HessType HessType;
15 
16  using SearchMethod<AM, SSM> ::name;
17  using SearchMethod<AM, SSM> ::am;
18  using SearchMethod<AM, SSM> ::ssm;
19  using typename SearchMethod<AM, SSM> ::AMParams;
20  using typename SearchMethod<AM, SSM> ::SSMParams;
21  using SearchMethod<AM, SSM> ::cv_corners_mat;
22  using SearchMethod<AM, SSM> ::initialize;
23  using SearchMethod<AM, SSM> ::update;
24 
25  FALK(const ParamType *falk_params = nullptr,
26  const AMParams *am_params = nullptr, const SSMParams *ssm_params = nullptr);
27 
28  void initialize(const cv::Mat &corners) override;
29  void update() override;
30 
31 protected:
32  ParamType params;
33 
34  // Let S = size of SSM state vector and N = resx * resy = no. of pixels in the object patch
35 
37  RowVectorXd jacobian;
39  MatrixXd init_self_hessian, hessian;
41  MatrixXd init_pix_jacobian, curr_pix_jacobian;
43  MatrixXd init_pix_hessian, curr_pix_hessian;
44 
45  Matrix24d prev_corners;
46  VectorXd ssm_update;
47  int frame_id;
48 
49  init_profiling();
50  char *log_fname;
51  char *time_fname;
52 
53 };
54 _MTF_END_NAMESPACE
55 
56 #endif
57 
Definition: FALKParams.h:8
Definition: StateSpaceModel.h:35
RowVectorXd jacobian
1 x S Jacobian of the AM similarity function w.r.t. SSM state vector
Definition: FALK.h:37
Definition: FALK.h:10
Definition: AMParams.h:12
Definition: SearchMethod.h:10
MatrixXd init_pix_hessian
N x S x S hessians of the pixel values w.r.t the SSM state vector stored as a (S*S) x N 2D matrix...
Definition: FALK.h:43
MatrixXd init_pix_jacobian
N x S jacobians of the pixel values w.r.t the SSM state vector.
Definition: FALK.h:41
MatrixXd init_self_hessian
S x S Hessian of the AM similarity function w.r.t. SSM state vector.
Definition: FALK.h:39