问题描述
我正在使用 C++ 中的 OpenCV 制作相机校准工具包。我正在使用 opencv2/calib3d 中的“calibrateCamera”和“undistort”函数。我在两个图像集上得到了很好的结果,但在 5 个图像集上得到了糟糕的结果。所有图像集都很好,并且有足够的图片来校准相机。>
例如,当我使用该图像集尝试我的代码时,我可以正确找到并绘制棋盘的角,但其他东西是错误的。畸变系数不是真的,相机的光心是负的,所以不畸变很奇怪。
你怎么看问题?
解决方法
我觉得你搞错了。 第一个图像序列和第二个图像序列之间存在一些差异。 第 1 个序列中的图像包含大范围的校准图案,但第 2 个序列中的图像不包含。 因此,相机畸变信息不足,openCV的标定功能无法正常工作。