OpenCV的相机校准似乎是错误的

时间:2016-10-24 07:31:17

标签: opencv opencv3.0

请帮助我理解这种行为。

使用此代码进行相机校准时:

Calib3d.calibrateCamera(objectPoints, imagePoints, savedImageSize, intrinsic, distCoeffs, rvecs, tvecs,
                Calib3d.CALIB_FIX_PRINCIPAL_POINT +
                Calib3d.CALIB_ZERO_TANGENT_DIST +
                Calib3d.CALIB_FIX_ASPECT_RATIO +
                Calib3d.CALIB_FIX_K4 +
                Calib3d.CALIB_FIX_K5
                ,term);

使用45张图像,如下所示: enter image description here 我收到了这个: enter image description here 显然不正确。

结果值:

  [26384.00145168781, 0, 1631.5;       0, 26384.00145168781, 917.5;        0, 0, 1]
  [-33.54856921170454, -0.2057610950119468, 0, 0, 0]

如何设置校准以检索正确的数据?

1 个答案:

答案 0 :(得分:0)

我发现纯c ++ opencv项目使用相同的属性和代码提供正确的结果。 这段代码有效: https://github.com/opencv/opencv/blob/master/samples/cpp/calibration.cpp

小心使用java opencv库!