Ask Your Question

somedev's profile - activity

2020-07-28 12:48:22 -0600 received badge  Necromancer (source)
2014-02-25 04:05:21 -0600 received badge  Editor (source)
2014-02-25 04:04:30 -0600 answered a question solvePNP() - Assertion failed

the solvePnP() method takes the following as input :

vector<point3f> ObjectPoints, vector<point2f> imagePoints, Mat cameraMatrix, Mat distortionCoeffs, Mat rvec, Mat tvec

The parameters you seem to be passing are:

vector<vector<point3f> > boardPoints, vector<point2f> boardCorners, vector<mat> intrinsics, vector<mat> distortion, vector<mat> rvec, vector<mat> tvec

solvePnP() doesn't implicitly convert vector<vector<t> > to vector<t> like the calibrateCamera() method does, try to pass the parameters iteratively, it will work. Someone should include this in the documentation to avoid confusion.

2014-02-23 00:29:56 -0600 answered a question OpenCV Error: Bad argument (For non-planar calibration rigs the initial intrinsic matrix must be specified) in cvCalibrateCamera2

To make the cameraCalibrate function use the initial cameraMatrix you specified, you have to give a flags parameter with the value CV_CALIB_USE_INTRINSIC_GUESS;

try

calibrateCamera(objectPoints,imagePoints,imageSize,cameraMatrix,distCoeffs,rvecs,tvecs,CV_CALIB_USE_INTRINSIC_GUESS);