1、图像处理之逆透视变换,智能车背景理论知识 系列专题讲座之一,主讲人:虞坤霖,目录,第零章 前言 第一章 基础知识 第二章 基本线性变换 第三章 智能车摄像头透视变换阵 第四章 不可逆与信息丢失 第五章 逆透视变换阵的求解与应用 第六章 用逆透视变换阵处理图形 附 线性变换阵在空间定位中的应用,第零章 前言,本文以智能车摄像头图像处理为背景 解决了根据图像信息逆透视变换得到赛道信息的问题 以线性变换阵作为理论基础给出了矩阵变换公式,第一章 基础知识,点的表示 向量的表示 线性变换 线性变换的表示,点的表示,三维空间中的点用14的矩阵表示: (x, y, z, 1) 一般的: (x, y, z,
2、w) 与 (x/w, y/w, z/w, 1) 表示同一点 其中 w=1 为标准型,向量的表示,三维空间中的向量用14的矩阵表示: (x, y, z, 0) 最后一位不得非零,否则表示点,点与向量之间的运算,向量向量=向量 点向量=点 点点点=点,线性变换,变换即映射,记为: 满足如下两个条件的变换为线性变换或简记为:,四维向量空间,三维点由14的矩阵表示 三维向量由14的矩阵表示 14的矩阵构成四维向量空间,四维向量空间中线性变换的表示,对于三维空间中的点和向量,都由四维向量表示 四维向量空间中线性变换可由四阶方阵表示,四维向量空间中线性变换的表示,若将四维向量看成行向量,则线性变换可表示成
3、对四维向量右乘变换阵的形式:A是线性变换阵,前者表示三维点,后者表示三维向量 乘法按照矩阵相乘的计算法则计算,线性变换的表示,也可将四维向量看成列向量,此时线性变换可表示为左乘线性变换阵 相应的变换阵转置,第二章基本线性变换,恒等变换 变换阵分区 平移变换 缩放变换 旋转变换 切变变换 投影变换 平行投影变换 透视投影变换 组合变换 逆变换,恒等变换,任意三维点与向量乘以单位阵后不变,变换阵分区,平移变换,平移变换只对点有效,对向量无效,缩放变换,主对角线前三维能分别缩放某个维度 第四维整体缩放所有维度,旋转变换,二维旋转变换: 已知点 求该点绕原点逆时针旋转后的坐标,二维旋转变换,推广到三维
4、旋转变换,沿Z轴正方向旋转的旋转变换阵 (旋转方向用右手法则确定),各个方向的旋转变换阵,切变变换,在第x列y行(第一列第二行)放一个系数k 点的y、z坐标不变,x坐标增加 y越大,x增加得越多 正方形被拉伸为梯形,投影变换,平行投影变换(Z方向),投影变换,透视投影变换 空间中任意一点与(-d,0,0)点的连线与Y,Z平面的交点,投影变换,(-d,0,0)为投影点,Y,Z平面为投影面 同理,以(0,-d,0)为投影点,X,Z平面为投影面的变换阵,以(0,0,-d)为投影点,X,Y平面为投影平面的透视变换阵分变为:,组合变换,将两个或以上基本变换阵相乘,得到组合变换阵 相乘的顺序表示基本变换执
5、行的顺序,逆变换,变换阵的逆矩阵表示其对应变换的逆变换,第三章 智能车摄像头透视变换阵,坐标系 坐标变换 坐标变换阵 透视变换阵,坐标系,世界坐标系(W) 在地面选取两个垂直的方向为X,Y轴 竖直向上为Z轴 智能车坐标系(C) 正右方为X轴 前进方向为Y轴 竖直向上为Z轴 摄像头坐标系(G) 视线方向为Z轴负方向 正右方为X轴 正上方为Y轴,坐标变换,将摄像头坐标与智能车坐标重合(摄像头质心置于智能车质心处并向下看) 将摄像头向上平移一个高度h 摄像头沿X轴旋转一个仰角 摄像头沿着Z轴方向透视 如此可由智能车坐标得摄像头坐标,坐标变换,将摄像头固定,上述过程可等价为: 智能车以及赛道向下平移一
6、个高度h 智能车以及赛道沿X负方向旋转一个仰角 智能车以及赛道沿着摄像头Z轴方向透视,坐标变换阵,向下平移(h为平移高度),坐标变换阵,沿X轴负方向旋转,坐标变换阵,沿Z轴方向透视变换,透视变换阵,将上述三者相乘即可得到透视变换阵,第四章 不可逆与信息丢失,透视变换阵不可逆 不可逆的意义,透视变换阵不可逆,上一章得到的透视变换阵第三列为零 则其可表示为其他三列的线性组合 故该矩阵的不满秩 故该矩阵不可逆,透视变换阵不可逆,该矩阵在计算时的一个因子已经是奇异的了 这个奇异性导致相乘后的矩阵也是奇异的 归根结底在于投影变换将三维空间的点映射到二维空间,信息丢失。 不同的点可能映射到相同的点,故无法
7、求出其逆变换,不可逆的意义,从映射关系上看,不可逆是因为不是一一映射,不同的值映射到相同的象 从信息的角度看,变换时有部分信息丢失,所以无法还原 从空间的角度看,三维空间变为二维空间,丢失了一个维度 从矩阵的角度看,矩阵奇异,第三列的代数余子式为零,不存在逆矩阵。,第五章 逆透视变换阵的求解与应用,补充信息使透视变换阵可逆 求逆矩阵 补充信息的几何意义 逆透视变换阵的应用,补充信息使透视变换阵可逆,只要将透视变换阵的主对角线全部补充为1即可,求逆矩阵,将修改的透视变换阵求逆,求逆矩阵,如此我们便得到了逆透视变换阵 (以下将三角函数简记为首字母),补充信息的几何意义,假设被变换点为P,则:,补充
8、信息的几何意义,为求得小车坐标系下点的坐标,需知道摄像头坐标下的Z坐标(深度)。 由此可见,透视变换阵新加入的信息是摄像头看到的每个像素点的深度信息。 根据上述公式,只要知道点在图像上的位置以及深度信息,即可求得小车坐标系下对应的坐标。 而根据摄像头图像只能知道点在图像上的位置。如何得到深度信息呢?,逆透视变换阵的应用,上一节中发现,为完成逆透视变换,需先知道摄像头的深度信息,而实际上摄像头本身无法测得该信息。 回忆透视变换的过程发现,透视变换阵将三维空间映射到二维空间,补充信息后的透视变换将三维空间映射到三维空间。 即如果知道摄像头的深度信息,可以还原出小车坐标系下完整的三维信息 而赛道本身
9、是二维的,我们不需要逆透视变换出三维空间,故现在的思路是,利用赛道是二维的这一点解出摄像头深度信息。,逆透视变换阵的应用,已知智能车坐标系下赛道的Z坐标为0,故,逆透视变换阵的应用,代入原公式可得,第六章 用逆透视变换阵处理图形,图像与图形的区别 赛道的图形表示方法 对图形逆透视变换,图像与图形的区别,图像与图形就是通常所说的位图与矢量图 图像由像素矩阵构成,每个像素记录通道的强度 图形由描述图形的点、曲线方程、方程的参数组成。 摄像头捕获的是图像,即像素矩阵 对摄像头拍摄的赛道进行提取的本质就是将图像提取为图形的过程。,赛道的图形表示方法,最常见的赛道的图形表示方法是离散点列 即用离散点列的
10、连线作为赛道的近似描述 其中点的Y坐标为该点在图像上对应的行号 点的X坐标为该点在所在行上的左右偏移量 这种方法可以表示赛道的边线,也可以表示中心线,对图形逆透视变换,如果对图像进行逆透视变换,则要对每个像素点所处位置进行变换,计算量过大,而且还要在像素之间插值,这样做不现实 对图形逆透视变换,只需对离散点列变换,计算量是完全可以接受的。,对图形逆透视变换,首先分析图像,得到每一行上赛道边线或中线的坐标,如此得到一列离散点列 每一个点有一个横纵坐标,单位为像素,根据感光阵列的大小(若干毫米)将坐标变换到实际摄像头上,单位变为米 根据每个点的X、Y坐标计算出Z(深度) 将每个点的坐标代入逆透视变换公式中得到智能车坐标系下的坐标,附 线性变换阵在空间 定位中的应用,