0

我正在实施一种有点通用的方法来处理带有相机校准的图像。

我想要一个总是调用重映射的基本例程。因此,即使我没有校准过的相机,我也想使用可以传递给 remap 的默认值调用相同的例程。

有人可以指导我将哪些默认值传递给 InitUndistortRectifyMap ,当输出传递给 remap 时不会导致图像修改?

当相机未校准或未找到保存的校准文件时,这将允许我采用通用方法。

谢谢你的帮助。

4

1 回答 1

0

好吧,我还没有测试过,但是......从OpenCv 站点的文档中,你有以下等式:

initUndistortRectifyMap

所以,如果你设置:

fx = fy = f'x = f'y = 1 
cx = cy = c'x  =c'y = 0

也就是说,相机矩阵 = 3x3 恒等式,并且

R = 3x3 identity

和零失真:

k1 = k2 = k3 = p1 = p2 = 0

你应该最终得到

mapx(u,v) = u
mapy(u,v) = v

也就是地图上每个点的原始坐标。

于 2013-09-24T08:37:25.617 回答