项目场景:
最近在对鱼眼相机标定,只标外参,然后计算重投影误差。
问题描述:
使用projectPoints函数时一直报错,OpenCV Error: Assertion failed (_tvec.getMat().isContinuous() && _rvec.getMat().isContinuous()) in projectPoints,相关报错在网上没有找到,这里记录一下
int main(){
vector<Point2f> corners; // the detected corners
vector<Point3d> obj_temp;// real objects' point in one image
cv::Mat intrinsics, distCoeffs;//input your intrinsics coefficients
cv::Mat rvec, tvec;
// Vec3d rvec, tvec;
Mat img1 = imread("C:/Clion Projects/fisheye_calibration-master/test_image/2pattern25_12_9/test/1.jpg",1); //source image
bool patternfound = findChessboardCorners(img1, patternsize, corners,CALIB_CB_ADAPTIVE_THRESH | CALIB_CB_FAST_CHECK | CALIB_CB_NORMALIZE_IMAGE);
Mat gray;
cvtColor(img1, gray, CV_BGR2GRAY);
if(patternfound){
// detect subpixel corner , cornerSubPix只接收单通道图像
cornerSubPix(gray, corners, Size(11, 11