《视觉SLAM十四讲》学习笔记-摄像机成像公式

针孔相机模型

针孔相机模型

设P点坐标为 [X,Y,Z] [ X , Y , Z ] ⊤ , P P ′ 坐标为 [X,Y,Z] [ X ′ , Y ′ , Z ′ ] ⊤ , 根据三角形等比关系有

Zf=XX=YY Z f = − X X ′ = − Y Y ′

成像平面

在对称的成像平面上为:

Zf=XX=YY Z f = X X ′ = Y Y ′

所以得到: X=fXZ X ′ = f X Z and Y=fYZ Y ′ = f Y Z .

摄像机内外参数矩阵

内参数矩阵

设像素平面 P P ′ 的坐标为 [u,v] [ u , v ] ⊤ . 注意到摄像机的坐标系为 Oxyz O − x − y − z , 像素坐标定义为 ouv o ′ − u − v , 其中 u u x平行, v v y平行.像素平面与成像平面相差一个缩放因子和平移因子: uv u − v 轴上缩放 α α 倍和放 β β 倍, 平移量为 [cx,cy] [ c x , c y ] ⊤ . 则:

{u=αX+cxv=βY+cy { u = α X ′ + c x v = β Y ′ + c y

代入上式合并 fx=αf f x = α f fy=βf f y = β f :

{u=fxXZ+cxv=fyYZ+cy { u = f x X Z + c x v = f y Y Z + c y

展开成矩阵形式:

uv1=1Zfx000fy0cxcy1XYZ=1ZKP⃗  [ u v 1 ] = 1 Z [ f x 0 c x 0 f y c y 0 0 1 ] [ X Y Z ] = △ 1 Z K P →

整理可得:

Zuv1=fx000fy0cxcy1XYZ=KP⃗  Z [ u v 1 ] = [ f x 0 c x 0 f y c y 0 0 1 ] [ X Y Z ] = △ K P →

这里 K K 称为摄像机的内参数矩阵.

外参数矩阵

下面推导外参数矩阵。P点的坐标是由世界坐标Pw根据当前位姿变换到相机坐标下的结果,位姿由旋转矩阵 R R 和平移量 t⃗  t → 来描述:

ZPuv=Zuv1=K(RPw+t⃗ )=KTPw Z P u v = Z [ u v 1 ] = K ( R P w + t → ) = K T P w

相机的位姿 R,t⃗  R , t → 称为 相机的外参数.

畸变

径向畸变

径向畸变:由透镜形状引起的畸变称之为径向畸变。主要包括,桶形畸变和枕形畸变。
[x,y] [ x , y ] 是未纠正的点坐标, [xcorrected,ycorrected] [ x c o r r e c t e d , y c o r r e c t e d ] 是纠正后的点坐标,皆为归一化平面上的点。校正公式为

{xcorrected=x(1+k1r2+k2r4+k3r6)ycorrected=y(1+k1r2+k2r4+k3r6) { x c o r r e c t e d = x ( 1 + k 1 r 2 + k 2 r 4 + k 3 r 6 ) y c o r r e c t e d = y ( 1 + k 1 r 2 + k 2 r 4 + k 3 r 6 )

切向畸变

切向畸变:在相机的组装过程中由于不能使得透镜和成像面严格平行也会引入切向畸变。
可用两个参数 p1,p2 p 1 , p 2 来校正:

{xcorrected=x+2p1xy+p2(r2+2x2)ycorrected=y+2p2xy+p1(r2+2y2) { x c o r r e c t e d = x + 2 p 1 x y + p 2 ( r 2 + 2 x 2 ) y c o r r e c t e d = y + 2 p 2 x y + p 1 ( r 2 + 2 y 2 )

所以,对于相机坐标系的点 P(X,Y,Z) P ( X , Y , Z ) , 可通过五个畸变系数找到其正确位置。
1) 首先将空间点投影到归一化平面上,归一化坐标为 [x,y] [ x , y ] ⊤ ;
2) 归一化的点进行径向畸变和切向畸变:

{xcorrected=x(1+k1r2+k2r4+k3r6)+2p1xy+p2(r2+2x2)ycorrected=y(1+k1r2+k2r4+k3r6)+2p2xy+p1(r2+2y2) { x c o r r e c t e d = x ( 1 + k 1 r 2 + k 2 r 4 + k 3 r 6 ) + 2 p 1 x y + p 2 ( r 2 + 2 x 2 ) y c o r r e c t e d = y ( 1 + k 1 r 2 + k 2 r 4 + k 3 r 6 ) + 2 p 2 x y + p 1 ( r 2 + 2 y 2 )

3) 将纠正后的点通过内参数投影到像素平面,得到点的正确坐标:
{u=fxxcorrected+cxv=fyycorrected+cy { u = f x x c o r r e c t e d + c x v = f y y c o r r e c t e d + c y

注意这里一共有四种坐标:世界坐标 OXYZ O − X − Y − Z 相机坐标 Oxyz O − x − y − z 归一化相机坐标 Oxyz O − x − y − z ( z=1 z = 1 ), 和图像像素坐标 Ouv O − u − v .

双目相机

双目相机模型

空间点 P P 在左眼和右眼的点为PLandPR, 理想情况下只在u-轴上有位移,左侧位置记为 uL u L , 右侧位置 uR u R .根据三角形相似关系有:

zfz=buL+uRb z − f z = b − u L + u R b

整理得:
z=fbd, d=uLuR z = f b d ,   d = u L − u R

其中, d d 表示视差(disparity), d很难计算。

RGB-D相机模型

RGB-D模型

1) 红外结构光(structed light):发射一束光线,根据返回的结构光图案计算距离。
2) Time-of-flight, ToF: 发射脉冲,根据发送到返回之间的光束飞行时间确定自身距离。
弊端:易受日光或其他发射红外光装置的干扰,不能在室外和多个装置一起工作。不能测量透射材质的物体。

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值