【发布时间】:2016-05-07 20:29:34
【问题描述】:
我想校准我的相机并绘制 xyz 轴。 (如此链接所示:http://docs.opencv.org/3.1.0/d7/d53/tutorial_py_pose.html)
不幸的是,我的校准出现了一些奇怪的问题,我似乎无法修复它。我制作了一个 cad 模型以尽量减少其他可能的错误...
所以基本上,我做了两个步骤:
- 校准每个摄像头
- 使用投影点绘制线条
不知道哪里出错了……
cameraCalibration 中的变量。 imagepoints中的点由棋盘找到。
vector< vector<cv::Point2f> > imagePoints;
vector< vector< cv::Point3f> > objectPoints;
vector<cv::Mat> rvecs, tvecs;
cv::Mat intrinsic_Matrix, distortion_coeffs;
查找点的代码
cv::Point2f clsCameraControl::FindSpecific(cv::Point3f o3Dpoint)
{
cv::Mat rvec, tvec;
rvec.create(1, 3, cv::DataType<double>::type);
tvec.create(1, 3, cv::DataType<double>::type);
rvec = rvecs[0].clone();
tvec = tvecs[0].clone();
cv::solvePnP(objectPoints[0], imagePoints[0], intrinsic_Matrix, distortion_coeffs, rvec, tvec);
vector<cv::Point3f> Input1;
vector <cv::Point2f> Output1;
Input1.insert(Input1.end(), o3Dpoint);
Output1.clear();
cv::projectPoints(Input1, rvec, tvec, intrinsic_Matrix, distortion_coeffs, Output1);
return Output1[0];
}
This image represents the four results i got(绘制 X(绿色)、Y(红色)和 Z(蓝色)轴)
Z 轴总是错的。它应该只是向上(或者至少在同一个方向上都错了)
我使用的基础图片是in this album,如果你想自己尝试一下(我自己制作的,大家可以免费使用!)
有人知道为什么以及如何解决这个问题吗?
【问题讨论】:
标签: c++ opencv computer-vision camera-calibration