Line 104... |
Line 104... |
104 |
cv::solvePnPRansac(Q[i], qc0[i], cal.K0, cal.k0, cam_rvecs0[i], cam_tvecs0[i], true, 100, 0.05, 100, cv::noArray(), CV_ITERATIVE);
|
104 |
cv::solvePnPRansac(Q[i], qc0[i], cal.K0, cal.k0, cam_rvecs0[i], cam_tvecs0[i], true, 100, 0.05, 100, cv::noArray(), CV_ITERATIVE);
|
105 |
|
105 |
|
106 |
std::vector<cv::Mat> cam_rvecs1, cam_tvecs1;
|
106 |
std::vector<cv::Mat> cam_rvecs1, cam_tvecs1;
|
107 |
cal.cam1_error = cv::calibrateCamera(Q, qc1, frameSize, cal.K1, cal.k1, cam_rvecs1, cam_tvecs1, flags);
|
107 |
cal.cam1_error = cv::calibrateCamera(Q, qc1, frameSize, cal.K1, cal.k1, cam_rvecs1, cam_tvecs1, flags);
|
108 |
|
108 |
|
109 |
// stereo calibration (fix K0, K1, k0, k1)
|
109 |
// stereo calibration
|
110 |
int flags_stereo = cv::CALIB_FIX_INTRINSIC;
|
110 |
int flags_stereo = cv::CALIB_USE_INTRINSIC_GUESS + cv::CALIB_FIX_K3;
|
111 |
cv::Mat E, F, R1, T1;
|
111 |
cv::Mat E, F, R1, T1;
|
112 |
cal.stereo_error = cv::stereoCalibrate(Q, qc0, qc1, cal.K0, cal.k0, cal.K1, cal.k1,
|
112 |
cal.stereo_error = cv::stereoCalibrate(Q, qc0, qc1, cal.K0, cal.k0, cal.K1, cal.k1,
|
113 |
frameSize, R1, T1, E, F,
|
113 |
frameSize, R1, T1, E, F,
|
114 |
cv::TermCriteria(cv::TermCriteria::COUNT + cv::TermCriteria::EPS, 50, DBL_EPSILON),
|
114 |
cv::TermCriteria(cv::TermCriteria::COUNT + cv::TermCriteria::EPS, 50, DBL_EPSILON),
|
115 |
flags_stereo);
|
115 |
flags_stereo);
|