极线校正原理

设左相机坐标系为世界坐标系,右相机外参为R,T,则左相机坐标系中的点P1,在右相机坐标系中为:P2=RP1+T           (1)

极线校正的第一步,是将两个相机各旋转R的一半,令两相机的成像平面平行

首先对R进行罗德里格斯变换,得到旋转向量θn,其中θ为旋转角,n为旋转轴单位向量

对旋转向量θ/2*n做罗德里格斯逆变换,得到旋转矩阵r,r具有性质:r*r=R。

则令左相机旋转r,右相机旋转,可令左右相机图像平面平行,

旋转后点的坐标为:,

代入(1) 可得:  (2) 令 为旋转后的平移向量

下一步需要让两相机图像的极线水平,即x轴与t重合,则:

首先计算t与x轴的旋转轴:对t与单位向量(1,0,0)做叉乘得到旋转轴w,其模为t的模与需要旋转角α的正弦:|t|*sinα

下一步计算旋转角:t在x轴上的分量,即为其x轴坐标c,则旋转角α=acos(c/|t|)

则因此对w的长度进行调整:让其等于α,需乘acos(c/|t|)/ |w|

对缩放后的w进行罗德格里斯逆变换得到旋转矩阵Rw

对左右相机都旋转Rw,', ',代入(2)可得:

最终得到左右相机的旋转矩阵:

此时两相机图像平面平行,且极线与基线平行

接下来调整相机内参:

由于两相机焦距不同,要实现行对齐,需要令fy相等,因此令fx=fy=(fy1+fy2)/2=f

即对两平面前后移动至对齐。

接下来计算主点的位置:

设图像的尺寸为(w×h)

首先将左右图像的四个角的坐标(0,0),(w ,0)(0,h)  (w ,h) 根据内参矩阵和畸变系数,计算出归一化坐标,即将其坐标从图像坐标系转换到相机坐标系中,再投影到z=1的平面上,再将其投影到矫正后的z=f,(cx,cy)=(0,0)的图像平面上

,取图像上四点坐标的平均(x,y)为图像的中心(h/2,w/2),原点仍在左上角,则主点坐标为(w/2-u,h/2-v)。该步骤对左右相机均适用。

即(x,y)->((nx - 1) / 2,(ny - 1) / 2),(0,0)->(cx,cy),cx=(nx - 1) / 2-x,cy=(ny - 1) / 2-y

由此可以求得调整后的相机内参,fx,fy,cx,cy

评论 20
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值