#include <contrib.hpp>
Public Member Functions | |
LevMarqSparse () | |
LevMarqSparse (int npoints, int ncameras, int nPointParams, int nCameraParams, int nErrParams, Mat &visibility, Mat &P0, Mat &X, TermCriteria criteria, void(CV_CDECL *fjac)(int i, int j, Mat &point_params, Mat &cam_params, Mat &A, Mat &B, void *data), void(CV_CDECL *func)(int i, int j, Mat &point_params, Mat &cam_params, Mat &estim, void *data), void *data, BundleAdjustCallback cb, void *user_data) | |
virtual | ~LevMarqSparse () |
virtual void | run (int npoints, int ncameras, int nPointParams, int nCameraParams, int nErrParams, Mat &visibility, Mat &P0, Mat &X, TermCriteria criteria, void(CV_CDECL *fjac)(int i, int j, Mat &point_params, Mat &cam_params, Mat &A, Mat &B, void *data), void(CV_CDECL *func)(int i, int j, Mat &point_params, Mat &cam_params, Mat &estim, void *data), void *data) |
virtual void | clear () |
virtual void | optimize (CvMat &_vis) |
void | ask_for_proj (CvMat &_vis, bool once=false) |
void | ask_for_projac (CvMat &_vis) |
Static Public Member Functions | |
static void | bundleAdjust (vector< Point3d > &points, const vector< vector< Point2d > > &imagePoints, const vector< vector< int > > &visibility, vector< Mat > &cameraMatrix, vector< Mat > &R, vector< Mat > &T, vector< Mat > &distCoeffs, const TermCriteria &criteria=TermCriteria(TermCriteria::COUNT+TermCriteria::EPS, 30, DBL_EPSILON), BundleAdjustCallback cb=0, void *user_data=0) |
Public Attributes | |
CvMat * | err |
double | prevErrNorm |
double | errNorm |
double | lambda |
CvTermCriteria | criteria |
int | iters |
CvMat ** | U |
CvMat ** | V |
CvMat ** | inv_V_star |
CvMat ** | A |
CvMat ** | B |
CvMat ** | W |
CvMat * | X |
CvMat * | hX |
CvMat * | prevP |
CvMat * | P |
CvMat * | deltaP |
CvMat ** | ea |
CvMat ** | eb |
CvMat ** | Yj |
CvMat * | S |
CvMat * | JtJ_diag |
CvMat * | Vis_index |
int | num_cams |
int | num_points |
int | num_err_param |
int | num_cam_param |
int | num_point_param |
void(* | fjac )(int i, int j, Mat &point_params, Mat &cam_params, Mat &A, Mat &B, void *data) |
void(* | func )(int i, int j, Mat &point_params, Mat &cam_params, Mat &estim, void *data) |
void * | data |
BundleAdjustCallback | cb |
void * | user_data |
cv::LevMarqSparse::LevMarqSparse | ( | int | npoints, |
int | ncameras, | ||
int | nPointParams, | ||
int | nCameraParams, | ||
int | nErrParams, | ||
Mat & | visibility, | ||
Mat & | P0, | ||
Mat & | X, | ||
TermCriteria | criteria, | ||
void(CV_CDECL *fjac)(int i, int j, Mat &point_params, Mat &cam_params, Mat &A, Mat &B, void *data) | , | ||
void(CV_CDECL *func)(int i, int j, Mat &point_params, Mat &cam_params, Mat &estim, void *data) | , | ||
void * | data, | ||
BundleAdjustCallback | cb, | ||
void * | user_data | ||
) |
virtual cv::LevMarqSparse::~LevMarqSparse | ( | ) | [virtual] |
virtual void cv::LevMarqSparse::run | ( | int | npoints, |
int | ncameras, | ||
int | nPointParams, | ||
int | nCameraParams, | ||
int | nErrParams, | ||
Mat & | visibility, | ||
Mat & | P0, | ||
Mat & | X, | ||
TermCriteria | criteria, | ||
void(CV_CDECL *fjac)(int i, int j, Mat &point_params, Mat &cam_params, Mat &A, Mat &B, void *data) | , | ||
void(CV_CDECL *func)(int i, int j, Mat &point_params, Mat &cam_params, Mat &estim, void *data) | , | ||
void * | data | ||
) | [virtual] |
virtual void cv::LevMarqSparse::clear | ( | ) | [virtual] |
static void cv::LevMarqSparse::bundleAdjust | ( | vector< Point3d > & | points, |
const vector< vector< Point2d > > & | imagePoints, | ||
const vector< vector< int > > & | visibility, | ||
vector< Mat > & | cameraMatrix, | ||
vector< Mat > & | R, | ||
vector< Mat > & | T, | ||
vector< Mat > & | distCoeffs, | ||
const TermCriteria & | criteria = TermCriteria(TermCriteria::COUNT+TermCriteria::EPS, 30, DBL_EPSILON) , |
||
BundleAdjustCallback | cb = 0 , |
||
void * | user_data = 0 |
||
) | [static] |
virtual void cv::LevMarqSparse::optimize | ( | CvMat & | _vis | ) | [virtual] |
void cv::LevMarqSparse::ask_for_proj | ( | CvMat & | _vis, |
bool | once = false |
||
) |
void cv::LevMarqSparse::ask_for_projac | ( | CvMat & | _vis | ) |
double cv::LevMarqSparse::errNorm |
double cv::LevMarqSparse::lambda |
void(* cv::LevMarqSparse::fjac)(int i, int j, Mat &point_params, Mat &cam_params, Mat &A, Mat &B, void *data) |
void(* cv::LevMarqSparse::func)(int i, int j, Mat &point_params, Mat &cam_params, Mat &estim, void *data) |