4 #include "ProjectiveBase.h" 5 #include "SSMEstimator.h" 6 #include "SSMEstimatorParams.h" 11 int pt_based_sampling;
20 int runKernel(
const CvMat* m1,
const CvMat* m2, CvMat* model)
override;
21 bool refine(
const CvMat* m1,
const CvMat* m2,
22 CvMat* model,
int maxIters)
override;
24 void computeReprojError(
const CvMat* m1,
const CvMat* m2,
25 const CvMat* model, CvMat* error)
override;
32 Isometry(
const ParamType *params_in =
nullptr);
34 void setState(
const VectorXd &ssm_state)
override;
35 void compositionalUpdate(
const VectorXd& state_update)
override;
37 void getInitPixGrad(Matrix2Xd &ssm_grad,
int pix_id)
override;
38 void getCurrPixGrad(Matrix2Xd &ssm_grad,
int pix_id)
override;
40 void cmptInitPixJacobian(MatrixXd &jacobian_prod,
const PixGradT &am_jacobian)
override;
41 void cmptPixJacobian(MatrixXd &jacobian_prod,
const PixGradT &am_jacobian)
override;
42 void cmptApproxPixJacobian(MatrixXd &jacobian_prod,
43 const PixGradT &pix_jacobian)
override;
44 void cmptWarpedPixJacobian(MatrixXd &dI_dp,
const PixGradT &dI_dx)
override;
45 void cmptInitPixHessian(MatrixXd &pix_hess_ssm,
const PixHessT &pix_hess_coord,
46 const PixGradT &pix_grad)
override;
47 void cmptPixHessian(MatrixXd &pix_hess_ssm,
const PixHessT &pix_hess_coord,
48 const PixGradT &pix_grad)
override;
49 void cmptWarpedPixHessian(MatrixXd &d2I_dp2,
const PixHessT &d2I_dw2,
50 const PixGradT &dI_dw)
override;
52 void estimateWarpFromCorners(VectorXd &state_update,
const Matrix24d &in_corners,
53 const Matrix24d &out_corners)
override;
54 void estimateWarpFromPts(VectorXd &state_update, vector<uchar> &mask,
55 const vector<cv::Point2f> &in_pts,
const vector<cv::Point2f> &out_pts,
61 void updateGradPts(
double grad_eps)
override;
62 void updateHessPts(
double hess_eps)
override;
64 void applyWarpToCorners(Matrix24d &warped_corners,
const Matrix24d &orig_corners,
65 const VectorXd &state_update)
override;
66 void applyWarpToPts(Matrix2Xd &warped_pts,
const Matrix2Xd &orig_pts,
67 const VectorXd &state_update)
override;
68 void generatePerturbation(VectorXd &perturbation)
override;
70 void getWarpFromState(Matrix3d &warp_mat,
const VectorXd& ssm_state)
override;
71 void getStateFromWarp(VectorXd &state_vec,
const Matrix3d& warp_mat)
override;
74 bool supportsSPI()
override{
return true; }
79 double getAngleOfRotation(
double sin_theta,
double cos_theta);
81 cv::Mat estimateIsometry(cv::InputArray _points1, cv::InputArray _points2,
83 int estimateIsometry(
const CvMat* in_pts,
const CvMat* out_pts,
Definition: StateSpaceModel.h:35
Definition: Isometry.h:16
Definition: SSMEstimatorParams.h:9
Definition: Isometry.h:10
Base class for robust estimators for different SSMs adapted from CvModelEstimator2 defined in _modelt...
Definition: SSMEstimator.h:14
Definition: Isometry.h:28
base class for all SSMs that can be expressed by homogeneous multiplication with a 3x3 projective tra...
Definition: ProjectiveBase.h:14