自动驾驶TPM技术杂谈 ———— 摄像头标定

介绍

 标定传感器是自动驾驶感知系统中不可缺少的环节,也是后续传感器融合的必要步骤和先决条件,其目的使将两个或多个传感器变换到统一的时空坐标系,使得传感器融合具有意义,使感知决策的关键前提。任何传感器在制造、安装之后都需要通过实验进行标定,以保证传感器符合设计指标,保证测量值的准确。传感器在安装上汽车之后,需要对其进行标定;同时,车辆的行驶过程中出现的震动等原因,会导致传感器与原位置产生一定的偏离,因此需要每隔一段时间进行校准。自动驾驶汽车通过多种类型的传感器同时工作以保证环境感知和自我感知,传感器的健壮性和准确性在自动驾驶的感知环节就显得尤其重要。传感器的标定是建立传感器输出与现实中的值的对应关系。

摄像头

内参标定

摄像头模型的建立

 对单目摄像头来说,单目视觉的标定本质上是建立物体在环境坐标系中的坐标与图像坐标系中的坐标之间的关系。假设现实中一个物体P,在环境坐标系的位置为(Xw, Yw, Zw)。如果想获取到物体P在成像面上的位置,则需要建立三个辅助坐标系:摄像头坐标系、图像物理坐标系、图像像素坐标系,最后得到的是P在图像像素坐标系上的投影。

摄像头坐标系与环境坐标系的转换

 如下图所示,摄像头坐标系通常以镜头中心为原点,以垂直镜头的平面为Z 轴建立空间直角坐标系,X 轴与Y 轴在镜头平面上。X, Y, Z满足右手坐标系。
在这里插入图片描述
 摄像头在空间中也是有一个位置的,因此可以建立环境坐标系与摄像头坐标系之间的关系[R, T]。其中,T 为摄像头坐标系原点相对于环境坐标系原点的平移,即摄像头的镜头中心在环境坐标系的坐标,R 为摄像头坐标系相对于环境坐标系的旋转矩阵。空间中的P点在摄像头坐标系中的位置可以通过下方的公式计算得到:
在这里插入图片描述
 通过公式间的运算和转换,可以得到环境坐标系与摄像头坐标系之间的转换关系:
在这里插入图片描述

图像坐标系与图像像素坐标系

 在计算机视觉中,图像通常使用点阵的方式存储,可以理解为每个像素对应点阵中的一行与一列。其实图像像素坐标系完全也存在着这种对应关系。图像像素坐标系通常以图像左上角作为原点,向右的方向为U坐标轴,向下的方向为V坐标轴,那么像素在图像像素坐标系中的位置可以用(U, V)。图像像素坐标系是符合计算机对图像处理的要求的,但是在图像像素坐标系中的坐标仅代表像素的行列数,并不具备任何物理单位。但是在环境坐标系中的坐标点则是带有物理单位的,因此我们需要引入图像物理坐标系。定义摄像头光轴与图像平面的交点为图像主点,图像物理坐标系以主点为原点,X 轴与Y 轴分别平行于图像像素坐标系的U 轴与 V轴,具体的情况如下图。
在这里插入图片描述
 假设像元底边长W,高度为H,主点在图像像素坐标系下的坐标为(uo, vo)。在理想情况下,图像物理坐标系下的点(Xl,Yl)在图像像素坐标系下的坐标可通过一下公式算出:
在这里插入图片描述

小孔成像与图像物理坐标系

 摄像头成像的原理的基础是小孔成像原理。从摄像机成像原理上看,图像物理坐标系的原点与摄像机的光学中心重合,当摄像头坐标系的XY轴与图像物理坐标系的XY轴平行,就可以构建起图像坐标系与摄像机坐标系之间的关系。
在这里插入图片描述
 对于物体P,在摄像机坐标系下的坐标为(xc, yc, zc)。根据几何关系,有ΔOPA相似于ΔOoPoAo。因此存在以下关系:
在这里插入图片描述
 假设s=zc,则可以得到摄像头坐标系与图像物理坐标系之间的关系:
在这里插入图片描述

环境坐标系与图像像素坐标系的转换

 在得到环境坐标系-摄像机坐标系、摄像机坐标系-图像像素坐标系之间的关系后,便可以求出环境坐标系与图像像素坐标系之间的转换关系。对现实世界中的P,其环境坐标系下的坐标为(Xw, Yw, Zw),在图像中的位置为(U, V),两者之间的转换关系如下:在这里插入图片描述
 其中:在这里插入图片描述
 矩阵M2为环境坐标系到摄像头坐标系的转换关系,是摄像头在世界坐标系选的位置姿态矩阵。在计算机视觉中,确定M2矩阵的过程称为视觉定位。矩阵M1中的四个常量αx,αy,uo,vo与摄像头的焦距、主点以及传感器的设计技术参数相关,与外部因素无关,因此称为摄像头的内参。内参在摄像头出厂的时候就已经确定了。

摄像头畸变矫正

 上面提到的情况都是理想情况,但是实际情况下,摄像头并不能完全精确地按照理想的针孔摄像机模型进行投影,通常会存在透镜畸变,即物点在实际的摄像头成像平面上生成的像与理想成像之间存在一定的光学畸变误差。其畸变误差主要是径向畸变误差和切向畸变误差。径向畸变误差是沿着透镜半径方向分布的畸变,产生的原因是光线远离透镜中心的地方比靠近中心的地方更加弯曲;切向畸变是由于透镜本身与摄像头传感器平面或图像平面不平行而产生的,产生的原因主要是由于透镜被粘贴到镜头模组上的安装偏差导致。畸变是透镜的固定特性,无法消除,只能改善。
 影响自动驾驶中的摄像头的工作的畸变主要分为两种:一种是桶形畸变;另一种是枕形畸变。枕形畸变是由镜头引起的画面向中间“收缩”的现象。在使用长焦镜头或使用变焦镜头的长焦端时较为容易察觉枕形畸变现象。桶形畸变则是由于镜头中透镜物理性能以及镜片组结构引起的成像画面呈桶形膨胀状的失真现象。一般发生在广角镜头或使用变焦镜头的广角端时。桶形畸变和枕形畸变统称为径向畸变。
在这里插入图片描述
 在计算机视觉中,径向畸变对场景重建有着非常重要的影响。自动驾驶系统对环境的感知,要求摄像头能够实现对周边环境的高精度重建。如果不对畸变进行矫正,就无法得到精确的环境信息。对于一般的摄像头来讲,图像的径向畸变通常被描述为一个低阶多项式模型。
在这里插入图片描述
 其中,像素(u,v)在没有畸变的情况下的图像像素坐标为(u0,v0)。对于rc2的含义为: rc2 = u02 + v02 。k1,k2,k3,k4称为径向畸变系数,属于摄像头内参。我们可以使用多种方法来实现标定畸变系数,其中最简单的方法陈伟铅垂线方法(Plumb-line method)。其基本思路是拍摄多条直线,特别是与图像的边缘对齐的场景图像,然后通过调整畸变参数来使得图像中所有的线条均变成直线。另一种方法是使用若干个重叠图像,将径向畸变参数的估计与图像配准过程相结合。在现阶段,径向畸变参数的标定一般与其余内参同时进行。

常见内参标定方法

 最初的标定是需要在一个宽阔的地带来观察远处已经事先通过测量工具确定好位置的目标。随着摄影测量学和计算机视觉技术的进步以及室内机器人应用的需求,两种全新的标定方法 —— 平面标定和自标定被开发出来。

平面标定

 平面标定模式是指制作一块标定板,在工作区的空间内使用一种可控的移动方式来移动该目标。这种方法又称为“N-平面标定发”。在一系列的平面标定模式方法中,目前应用最广泛的是张正友于2000年提出的张正友标定法。其主要通过在不同位置拍摄棋盘标定板的方式,在每个图像中找到棋盘标定板的内角点,通过内角点之间的对应关系建立矩阵 B = K-TK-1的约束,从而恢复内参矩阵K

自标定

 当没有标定板时,可以通过摄像机的运动来进行标定。这种不使用已知目标进行标定的方法称为自标定。自标定的方法往往需要大量精准的图像。在自动驾驶汽车系统中,通常可以在程序中设定一周期,使用时间达到设定周期时,摄像头开始执行自标定。

摄像头间外参标定

 自动驾驶汽车中,为了尽可能的减少感知盲区,往往采用多摄像头的模式。确定多摄像头之间的相对位置关系,这个过程可以称为摄像机的外参标定。换个角度来看,摄像机的外参标定也可以称为“姿态估计”问题。两个摄像头之间相对位姿有6个维度 —— 空间位置(x,y,z)和旋转关系(α,β,γ)。理论层面来看,只要两个摄像头同时获取空间中3个点即可恢复二者之间的相对姿态。从三队对应点恢复摄像头之间的相对姿态问题,称为“透视三点问题”(Perpective-3-Point-Problem)。现实中,常常使用3个以上的点来恢复相对姿态,以提高健壮性,P3P的问题被推广位PnP问题。最初研究者使用直接线性法(Direct Linear Transform)解决PnP问题。为了提升精度,学者提出了健壮线性化的重投影误差,开始采用迭代的方法来求解PnP问题,并由此提出了著名的光束平差法(Bundle Adjustment)。

  • 2
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小趴菜_自动驾驶搬砖人

谢谢大爷赏饭吃

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值