一文搞懂鱼眼相机模型

本文转自|计算机视觉life

7e7f8fbde5a6ff7ebbac719fb9c9f5df.png

鱼眼镜头

之前的文章我们介绍了针孔相机模型,相机镜头是一个凸透镜,而本文介绍的鱼眼相机镜头是由十几个不同的透镜组合而成,在成像的过程中,入射光线经过不同程度的折射,投影到尺寸有限的成像平面上,使得鱼眼镜头拥有更大的视野范围。下图为鱼眼相机的组成结构:

e6b2b95144fedfc247d294290329bc81.png

与针孔相机原理不同,鱼眼镜头采用非相似成像,在成像过程中引入畸变,通过对直径空间的压缩,突破成像视角的局限,从而达到广角成像。

2363df1ee65ed404b6ef074976e3ee87.png

所以鱼眼镜头是一种极端的广角镜头,通常焦距小于等于16mm并且视角接近或等于180°(在工程上视角超过140°的镜头即统称为鱼眼镜头)。

相机畸变

鱼眼镜头无论如何它的边缘线条都是要弯曲的,即使90度的鱼眼也是这样,这种畸变我们在很多广角镜头上都可以看到,而这就是明显的桶形畸变。同样的120度的鱼眼看起来弯曲的更加厉害一些了,而且被容纳进范围的景物更多;150度同样如此,而180度的鱼眼则可以把镜头周围180度范围内的所有物体都拍摄进去。众所周知,焦距越短,视角越大,因光学原理产生的变形也就越强烈。为了达到180度的超大视角,鱼眼镜头不得不允许这种变形(桶形畸变)的合理存在。

610e36c3f0e33d70cf438f304370e955.png

针对原始图像进行畸变校正后,带有冗余边界,需要做进一步截取。如下图:

f7c3f80c6aa93b8a5675188e3e346a25.png

投影模型

通常的光学系统均基于高斯光学,遵循相似成像准则,而鱼眼镜头为了将尽可能大的场景投影到有限的图像平面内采用非相似成像,故需要选择其他的成像公式来替换高斯光学成像公式,每一个成像公式对应一种镜头设计模型。常用的鱼眼镜头模型一共有四个,分别是等距投影、正交投影、等立体角投影、体视投影。

f为鱼眼相机的焦距,即成像平面的半径,θ是入射光线与鱼眼相机光轴的夹角,即入射角,rd为鱼眼图像的点到畸变中心的距离。rd随着设计模型的变化而发生变化,四种模型投射距离的大小关系如下(反映空间中的一点P投影到球面再到图像平面的成像过程):

等距投影的成像点的位置rd与入射角θ成正比。这种模型可以解决在小孔成像下入射角为 90°时图像无限拉伸的问题,在二维图像中,成像为随着入射角不断变化的同心圆,最大视场角可达到 360°,这种鱼眼模型是最简单的一种模型。

65dea61922cb1dda9c6bd90e5ddcafd0.png

正交投影的成像结果,不会产生出透射映射的近大远小结果。在二维图像中,从 0 到 90 度,等差的视场角成像越来越密。180度视场角以内的场景都可以进行投影。

6839a0c2a1d0f701b953f1bf61e6477b.png

等立体角投影是鱼眼镜头中比较常用的一种模型。

33c7dda4c8bc00bed36d9dc96e53be95.png

体视投影是一种将圆球投影至平面的映射,在几何学里也称共型映射,是一种保角映射。此时相机的光心移至南极的位置,光轴朝北极。体视投影可以将 360度的场景都投影到图像上。

bb4486e2a12b534bb1f895fb3cabdcd8.png

成像模型

相比针孔相机模型可以将三维点直接投影到归一化平面,鱼眼相机则多了一个中间过程:先将三维点投影到单位球面,再将单位球面上的点投影到归一化平面上。

47c11a802e77002012ee8871a4bb4fb1.png

对于三维世界中的一点𝑃,其坐标向量为𝑋,𝑃在相机坐标系中的坐标Xc = RX + T。其中R、T分别为世界坐标系到相机坐标系的旋转与平移矩阵,对于针孔投影到相平面上的坐标(𝑎, 𝑏),满足如下等式:

680f0e3314e7a5f0db9e89cdaac1fdcb.png

其中:

76f7b4d1e627ff7b1dbf84c0c9f51740.png

加入鱼眼相机畸变:

543d447e3b8b8525b70f044a7361c183.png

畸变后坐标(𝑥′, 𝑦′),满足:

b81c1d06ee69abfa4c4c1c076d047fb6.png

最后调整到像素坐标系(𝑢, 𝑣):

cb527177b328ddad23816beef3924290.png

其中𝑓𝑥= f/d𝑥, 𝑓𝑦= f/d𝑦分别为两个方向上的归一化焦距,d𝑥, d𝑦代表了一个像素点对应的图像平面中的长度。

本文仅做学术分享,如有侵权,请联系删文。

下载1

在「3D视觉工坊」公众号后台回复:3D视觉即可下载 3D视觉相关资料干货,涉及相机标定、三维重建、立体视觉、SLAM、深度学习、点云后处理、多视图几何等方向。

下载2

在「3D视觉工坊」公众号后台回复:3D视觉github资源汇总即可下载包括结构光、标定源码、缺陷检测源码、深度估计与深度补全源码、点云处理相关源码、立体匹配源码、单目、双目3D检测、基于点云的3D检测、6D姿态估计源码汇总等。

下载3

在「3D视觉工坊」公众号后台回复:相机标定即可下载独家相机标定学习课件与视频网址;后台回复:立体匹配即可下载独家立体匹配学习课件与视频网址。

重磅!3DCVer-学术论文写作投稿 交流群已成立

扫码添加小助手微信,可申请加入3D视觉工坊-学术论文写作与投稿 微信交流群,旨在交流顶会、顶刊、SCI、EI等写作与投稿事宜。

同时也可申请加入我们的细分方向交流群,目前主要有3D视觉CV&深度学习SLAM三维重建点云后处理自动驾驶、多传感器融合、CV入门、三维测量、VR/AR、3D人脸识别、医疗影像、缺陷检测、行人重识别、目标跟踪、视觉产品落地、视觉竞赛、车牌识别、硬件选型、学术交流、求职交流、ORB-SLAM系列源码交流、深度估计等微信群。

一定要备注:研究方向+学校/公司+昵称,例如:”3D视觉 + 上海交大 + 静静“。请按照格式备注,可快速被通过且邀请进群。原创投稿也请联系。

a0ccb03b79197b47596a328d61d49f49.png

▲长按加微信群或投稿

308b13bc7ea3ea6a82b5484f0f00782f.png

▲长按关注公众号

3D视觉从入门到精通知识星球:针对3D视觉领域的视频课程(三维重建系列三维点云系列结构光系列手眼标定相机标定orb-slam3知识点汇总、入门进阶学习路线、最新paper分享、疑问解答五个方面进行深耕,更有各类大厂的算法工程人员进行技术指导。与此同时,星球将联合知名企业发布3D视觉相关算法开发岗位以及项目对接信息,打造成集技术与就业为一体的铁杆粉丝聚集区,近2000星球成员为创造更好的AI世界共同进步,知识星球入口:

学习3D视觉核心技术,扫描查看介绍,3天内无条件退款

dc06a58c38a0cf9292f85837e415e62b.png

 圈里有高质量教程资料、答疑解惑、助你高效解决问题

觉得有用,麻烦给个赞和在看~  05caf1814d521c1fc50ec8120ea94dd7.gif

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值