鱼眼矫正
常见的鱼眼矫正算法
棋盘格矫正法
经纬度矫正法
鱼眼图示例
棋盘格矫正法
利用棋盘格进行标定, 然后计算鱼眼镜头的畸变系数以及内参, opencv中自带有fisheye模块, 可以直接根据棋盘格标定结果,采用cv2.fisheye.calibrate计算畸变系数以及内参, 然后使用cv2.fisheye.initUndistortRectifyMap函数计算映射矩阵, 最后根据映射矩阵, 使用cv2.remap进行矫正。
矫正结果如下:
棋盘格矫正法的效果并不好, 而且边缘效果较差, 拉伸比较严重。
参考代码:
经纬度矫正法
经纬度矫正法, 可以把鱼眼图想象成半个地球, 然后将地球展开成地图,经纬度矫正法主要是利用几何原理, 对图像进行展开矫正, 基于经纬度矫正法进行改进的矫正的算法也很多, 下面主要介绍的是双径度矫正法, 具体的原理参考论文《基于双经度模型的鱼眼图像畸变矫正方法
1