源代码来自halcon/3d vision/ camera_calibration_external.hdev。
我比较感兴趣的是:根据已知的世界坐标和图像坐标,得出两者间的关系,用于实际定位:已知图像坐标计算世界坐标。
1)读取相机参数
相机参数来自于上一篇文章(camera_calibration_internal):
//Read internal camera parameters from a file
HOperatorSet.ReadCamPar("camera_parameters.dat", out camParam);
HOperatorSet.CreateCalibData("calibration_object", 1, 1, out calibDataID);
HOperatorSet.SetCalibDataCamParam(calibDataID, 0, "", camParam);
HOperatorSet.SetCalibDataCalibObject(calibDataID, 0, caltabName);
其中caltabName定义为:
string caltabName = "caltab_30mm.descr";
2)放入标定板,读取标定信息
读取标定板信息,得到标定板姿态信息posForCalibrationPlate:
HOperatorSet.FindCalibObject(hImg, calib