首先列一下参考资料:
- Fisheye camera model
- 鱼眼相机标定以及OpenCV实现
- 鱼眼相机畸变矫正的汇总链接
- 鱼眼相机成像模型
- 鱼眼相机矫正原理
- 鱼眼相机畸变矫正的总结
- 鱼眼镜头的选型
- Fisheye Calibration Basics鱼眼镜头
鱼眼镜头是具有超广视角的镜头。与一般的广角镜头、超广角镜头相比,在设计规格上,鱼眼镜头的焦距更短、视角更广。相同画幅和像素尺寸下,鱼眼镜头能容纳更多景物信息。
广角 | 超广角 | 鱼眼 | |
焦距 | 24~38 | 13~20 | <16 |
视角 | 60~84 | 94 ~118 | 120 ~225 |
根据鱼眼投影圆与成像面的几何关系分类:
鱼眼相机
圆形相机
桶形相机
全画幅相机
圆形鱼眼图
鼓型鱼眼图
全帧鱼眼图
鱼眼镜头模型分类
r=f.sin a
r=f.a
r=2f.sina/2
r=2f.tana/2
鱼眼镜头模型
正交投影模型
等距投影模型
等角投影模型
体视投影模型
其中r是在成像平面上,对象到光轴的距离
f是镜头的焦距
a是入射光线与光轴的夹角
鱼眼镜头模型优缺点比较:
优点 | 缺点 | |
正交投影模型 | 映射关系简单,图像中心畸变小 | 边缘图像失真严重,仅适用视角小于180°的场景 |
等距投影模型 | 适用于视角大于180°场景,价格亲民 | |
等角投影模型 | 图像不失真 | 映射关系较为复杂 |
体视投影模型 | 对视角接近180°的图像压缩较小 | 成像面积小,畸变较大,价格昂贵 |
鱼眼相机畸变分类:
相机畸变
径向畸变
切向畸变
枕型畸变
桶型畸变
薄透镜畸变
离心畸变
参考文档
径向畸变公式:
薄透镜畸变公式:
离心畸变公式:
s为薄透镜畸变参数,p为离心畸变参数。
鱼眼相机畸变矫正
所谓的鱼眼相机,工程上视角超过140°的相机镜头,而鱼眼相机拍摄的图片因为广角更大,可以理解为全景图片。
鱼眼相机矫正就是将全景图片进行转换成一张平面图片。效果图如下:
鱼眼相机原理
之所以叫鱼眼,是因为仿生鱼眼。
当鱼眼靠近水面时。视角可以接近180°这种现象在光学原理中属于全反射和光路可逆。
人类借鉴鱼类仰视水面智商半球空域的视觉与案例
成像系统模型
鱼眼镜头成像畸变理论
在传统光学原理中,受到高斯原理成像视角限制,能成像的空间大小极为有限。
为了突破成像限制,鱼眼相机引入畸变。
标定方法:
- 固定内外径法
- 径向展开法
- 改良版双经度法
- 经纬映射法
- opencv法
拍摄天或者地的时候,径向展开法效果最好,opecnv方法处理结果也不错。
固定内外径法和改良版双经度法、经纬映射在使用范围上有一定的限制
opencv法是我用的效果最好,使用范围最广的一种方法。
相机标定是计算相机的外部和内部参数的过程。一旦标定了相机,就可以使用图像信息从2维的图像构建出3维图像。
鱼眼相机的涉及到三个坐标系,分别是世界坐标系,相机坐标系和图像坐标系。
其中外参包括旋转矩阵R,平移矩阵T,相机坐标系的原点在光学中心,x轴和y轴定义了图像平面。