接着上一篇博客计算机视觉之相机模型推导建立过程
在上一篇博客中介绍了针孔模型,这篇博客介绍一下相机的畸变参数,然后对推导过程做了详细的推导。
畸变参数:由于针孔模型透光很少,导致相机的曝光时间很长,现实生活中一般使用凸透镜代替针孔,大大提高了曝光效率,但是代价便是引入了畸变。畸变主要分为两种,切向畸变和径向畸变。
径向畸变:由于一般透镜在制作过程中,由于工艺问题,所以光在离中心越远的地方折射的角度会越大,导致成像就是产生了"鱼眼"效果,导致了径向畸变,如图所示。一般来说,贵一点的镜头径向畸变的影响会小一点。可以采用泰勒级数展开式来矫正,至于为什么,由于知识较少,无法解释。
切向畸变:由于镜头在装配过程中没法保证凸透镜和成像面绝对的平行,所以会产生切向畸变,具体表现就是
图像有点夸张,不过大概是这个样子。同样切向畸变可以通过公式矫正,同样没法解释为什么要用这个来矫正。
到目前为止,我们介绍了比较完整的相机模型,接下来开始推导求解内参数矩阵K和畸变参数k和p的过程,这个过程也称为相机内参数的标定。至于相机的外参数R和t是在每一个场景都会发生变化的,所以内参数才是所追求的不变的东西,但是标定过程中也会涉及到外参数。
内参数的重要性:在立体视觉中,所有的计算都是建立在内参数的基础上的,所以要保证内参数尽可能的精确,一般会进行标定。接下来介绍张正友标定法,也就是常见的使用标定板标定,这里介绍他的原理。
单应性
在计算机视觉中,平面的单应性被定义为从一个平面到另一个平面的投影映射。因此一个二维平面的点映射到摄像机成像仪上的映射就是平面单应性的例子。
我们把单应性应用到棋盘格标定法中,第一步就是要求出从棋盘格角点的世界坐标到像素坐标的单应性变换矩阵H。求解步骤如下,注意这个是可以直接通过所拍摄的足够多照片求解的,这个很重要,很重要,很重要。
我们对公式稍微变形一下