【发布时间】:2018-08-06 00:08:21
【问题描述】:
我正在尝试通过 OpenCV 3.4.0(C++,MS Windows)执行鱼眼相机校准。
我使用 cv::fisheye::calibrate 来制作 K 和 D(相机矩阵和径向畸变系数矩阵)。然后我使用 cv::fisheye::initUndistortRectifyMap 为 X 和 Y 坐标生成地图。 最后,我使用 cv::remap 通过来自 initUndistortRectifyMap 的地图来消除鱼眼相机的图像失真。 一切看起来都不错,但 OpenCV 只扭曲了鱼眼图像的中心部分。 边缘移到外面。 我想扭曲整个图像。 我尝试手动更改 K 矩阵中的焦距,并得到不失真的边缘,但它们变得非常模糊。 我在这个任务中找到了一些结果。例如
https://www.youtube.com/watch?v=Ll8KCnCw4iU
和
https://www.youtube.com/watch?v=p1kCR1i2nF0
据您所知,这些结果与我的结果非常相似。 有人有解决这个问题的办法吗?
【问题讨论】:
-
您可能想要分享 K 和 D 矩阵、您用来解包的代码以及您得到的结果。它将帮助我们定义问题
标签: c++ opencv distortion fisheye radial