【问题标题】:Undistortion fail in OpenCVOpenCV中的去失真失败
【发布时间】:2021-09-14 04:19:25
【问题描述】:

我正在制作相机校准工具包。我正在使用来自 opencv2/calib3d.hpp 的cv::calibrateCamera(...) 函数,这对于鱼眼相机拍摄的图像效果很好,至少未失真的图像看起来是正确的。但是,当我尝试使用手机摄像头中的图像时,它会产生有趣的结果,您可以在下面看到。

该功能不适合校准这种相机吗?我必须使用哪个函数来正确校准它?

【问题讨论】:

    标签: c++ opencv image-processing camera camera-calibration


    【解决方案1】:

    您的图案必须是扁平的。我看到那张纸卷曲了。不过,这只是一个小问题。

    您必须确保保持相机不动。滚动快门和运动共同导致无法校准的失真。

    为了获得良好的校准效果,您需要移动相机/图案,使图案延伸到镜头失真最严重的视图角落。您需要覆盖整个视图。不是在一张照片中,而是在所有一起拍摄的照片中。

    如果你不覆盖角落,数值优化将没有数据,并且会引入它自己的失真,如你所见。

    这些只是“只是”实际问题。你还需要一个理论基础。将 API 插入在一起并不能提供理解。关于此事的标准书是

    Multiple View Geometry in Computer Vision by Hartley & Zisserman

    【讨论】:

      猜你喜欢
      • 2013-12-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-03-24
      • 2023-03-13
      • 1970-01-01
      • 2014-06-01
      • 2014-05-23
      相关资源
      最近更新 更多