Fisheye-Equirectangular 转换
Posted
技术标签:
【中文标题】Fisheye-Equirectangular 转换【英文标题】:Fisheye-Equirectangular conversion 【发布时间】:2020-06-25 08:30:36 【问题描述】:我有一个通过 OpenCV 的 fisheye::calibrate() 获得的鱼眼相机的内在参数(fx,fy, cx,cy, k1~k4)。如何将鱼眼图像转换为 equirectangular 图像?
我见过一些类似的问题,但似乎都没有反映校准结果。这个转换不需要失真参数k1~k4吗?
【问题讨论】:
您使用的是 Python 绑定还是 C++? 目前使用c++ 【参考方案1】:This Medium article,而在 Python 中可能会提供有关该主题的进一步阅读。这似乎表明,一旦您从 fisheye::calibrate 获得了 K 和 D 值,您就可以使用 fisheye::initUndistortRectifyMap (注意 D 可以是空的,就像您的情况一样)生成两个地图,可以然后与remap 一起使用,将扭曲的输入图像转换为去扭曲的输出图像(进一步阅读重新映射here)。
在 python 中(对于稍后查看此内容的任何人),这是这样完成的:
ap1, map2 = cv2.fisheye.initUndistortRectifyMap(K, D, np.eye(3),
K, DIM, cv2.CV_16SC2)
undistorted_img = cv2.remap(img, map1, map2,
interpolation=cv2.INTER_LINEAR,
borderMode=cv2.BORDER_CONSTANT)
【讨论】:
我目前没有时间附加 C++ 示例,但我希望这有助于您走上正确的道路。 我参考了this page 以获得不失真的图像,步骤包括您所建议的。但显然这不是一个等距矩形图像。 啊,我的错。我误解了你的问题。以上是关于Fisheye-Equirectangular 转换的主要内容,如果未能解决你的问题,请参考以下文章
剑指offer知识点List转int[],List转String,String转int,char[]转String,String 转char[],List转String[]
剑指offer知识点List转int[],List转String,String转int,char[]转String,String 转char[],List转String[]
剑指offer知识点List转int[],List转String,String转int,char[]转String,String 转char[],List转String[]
经纬度之间互相转换(高德转百度,高德转wgs84,百度转高德,百度转wgs84,wgs84转百度,wgs84转高德)