双目立体视觉中的坐标系与转换关系 [留意~摄影测量学与计算机视觉学科中的差异]

文章目录

    • 前言
    • 影像坐标系
    • 相机坐标系
    • 世界坐标系
    • 影像坐标系与相机坐标系之间的相互转换
    • 相机坐标系与世界坐标系之间的相互转换


前言


  通过模拟人眼立体视觉,两个摄像机拍摄同一场景可构成双目成像模型,或者在单相机航空摄影以及时序序列摄影中,同一个相机在两个不同的位置对同一场景拍摄两张不同的影像,也可构成双目成像模型。双目立体视觉的目标是利用三角测量原理从双目成像模型中恢复所拍摄景物的深度信息或者在空间中的三维坐标信息,即从二维成像影像中恢复三维信息。

  在上世纪80年代Marr和Paggio首次提出双目立体视觉的计算理论。其基本原理图如图1所示:

图1 双目立体视觉基本原理图

双目立体视觉中的坐标系与转换关系 [留意~摄影测量学与计算机视觉学科中的差异]_第1张图片

  在图1中,P为空间场景中的一个物理点,pp’ 分别为点 P在左右两个视角影像LR中的投影像点,OlOr分别为左右两个视角的相机中心。双目立体视觉的目的是通过两个相机的位置姿态,以及同一个物理点P在影像上的两个投影像点pp’,获取P的三维空间位置,关键技术点在于尽可能寻找两幅影像中同名点对(pp’),从而计算P的位置。

  双目立体视觉技术通过相机标定技术获得两个视角的相机外参数(位置与姿态)及影像的内参数,并构建立体视觉坐标系统,包括影像坐标系、相机坐标系以及世界坐标系,并提供坐标系之间的相互转换关系,具体描述如下:

影像坐标系


  影像坐标系是以二维影像为基本建立的坐标系,描述像素点在影像上的位置,分为以像素为单位的(u,v)坐标系以及以物理尺寸为单位的(x,y)坐标系。在摄影测量中,(u,v)坐标系以左下角位置为原点,u轴和v轴分别平行于图像平面的两条垂直边(u轴朝右,v轴朝上);(x,y)坐标系以相机中心在像平面上的垂足为原点,x轴和y轴分别与u轴和v轴平行且方向一致。在计算机视觉中,(u,v)坐标系以左上角位置为原点,u轴和v轴分别平行于图像平面的两条垂直边(u轴朝右,v轴朝下);(x,y)坐标系以相机主光轴与像平面的交点为原点,x轴和y轴分别与u轴和v轴平行且方向一致。图2为摄影测量与计算机视觉领域各自的影像坐标系示意图。

图2 摄影测量学与计算机视觉中的影像坐标系

双目立体视觉中的坐标系与转换关系 [留意~摄影测量学与计算机视觉学科中的差异]_第2张图片

相机坐标系


  相机坐标系是双目视觉中十分关键的坐标系,它从相机的视角来描述影像在三维空间中的坐标。相机坐标系以相机中心为原点,X轴与Y轴分别与影像坐标系的x轴与y轴平行,且方向一致,根据右手坐标系规则得到Z方向,因为影像坐标系中y轴方向的不同,导致摄影测量与计算机视觉的Z轴方向正好相反,如图3所示:

图3 摄影测量与计算机视觉中的相机坐标系

双目立体视觉中的坐标系与转换关系 [留意~摄影测量学与计算机视觉学科中的差异]_第3张图片

世界坐标系


  世界坐标系是客观三维世界中的绝对坐标系,它描述了双目立体视觉系统中的所有实体(包括相机、影像、真实物体等所有实体)在客观世界中的位置,在航空摄影测量中,世界坐标系通常是大地坐标系,而在近景摄影测量中,世界坐标系根据应用场景的不同而有所区别,在多视实景三维建模中,因为要得到目标的真实大地坐标,世界坐标系会选择大地坐标系;而在手持式三维扫描应用中,由于只需要得到被扫描目标的真实尺寸信息,而不关心物体的坐标是否位于大地坐标系下,因此世界坐标系可以选择目标附近的一个局部位置,通常将原点放在第一个有效扫描帧扫描仪双目立体系统的左相机中心。

  建立坐标系的根本目的是为了建立三维空间点与二维像素点之间的联系,当三种坐标系确定之后,它们之间的转换关系也被确定,其中最重要的两种转换关系是影像坐标系与相机坐标系之间的相互转换以及相机坐标系与世界坐标系之间的相互转换。

影像坐标系与相机坐标系之间的相互转换


  在实际应用中,获取影像后最直观接触到的是影像的(u,v)坐标系,而相机坐标系的X和Y轴与(x,y)坐标系平行,所以通常会先通过公式1将(u,v)坐标系转换至(x,y)坐标系,再由公式2将(x,y)坐标系转换至相机坐标系。在本文中,假设影像是无畸变影像。

式1 (u,v)坐标系转换至(x,y)坐标系

式2 (x,y)坐标系转换至相机坐标系

  式1中,cxcy为像主点(即相机中心在像平面的垂足点)在(u,v)坐标系中的坐标,dxdy分别为影像像素在x和y方向上的物理尺寸,式2所表示的是像平面上像素点在相机坐标系中的坐标,而像素点所代表的物方点在相机坐标系中的坐标则可以通过式3来获得,这是根据中心投影模型的相机中心点、像点、物方点三点共线理论来推导出的,图4中描述了这种关系。

式3 像素点所代表的物方点在相机坐标系中的坐标

图4 空间点P在相机坐标系中的位置关系

双目立体视觉中的坐标系与转换关系 [留意~摄影测量学与计算机视觉学科中的差异]_第4张图片

  式3中,λ为尺度因子,很显然,当只有一个相机时,若不对P的位置添加某种固定的约束(比如限定P在某个固定平面移动),而是允许P在三维空间中自由移动的话,是不可能通过一个相机以及单幅图像来计算出λ的值进而计算出P点在相机坐标系中的坐标的,这就是双目立体视觉所研究的问题,即如何确定点P在相机坐标系中的确定坐标(或者说确定尺度因子λ的值)。在计算机视觉中,用深度Z来表示点P在相机坐标系的Z方向上距离相机中心Co的距离,如果将深度概念应用到摄影测量学中,则点P在相机坐标系中的坐标可表示为(Xc,Yc,-Z),式3可以变化为:

式4 式3的变化形式

  从式4可以得出,如果知道点P的深度,则可以很方便的计算出P在相机空间坐标系中的坐标,而如何恢复影像中每个像素点的深度值,即是双目立体视觉所研究的内容,在双目立体视觉中,像素点的深度值可以和另外一个名为视差值的概念相互转换。

相机坐标系与世界坐标系之间的相互转换


  知道点P在相机坐标系中的坐标后,即可以通过相机坐标系与世界坐标系之间的转换关系来获得点P在世界坐标系中的坐标。因为世界坐标系与相机坐标系一样是右手坐标系(本文不讨论坐标系中存在左手坐标系的特殊情况),所以两个坐标系之间的变换是一个刚体变换,通过旋转与平移变换即可完成两者之间的相互转换。本文采用矩阵运算的方式来描述两者的转换关系,如式5所示。

式5 摄影测量学中相机坐标系到世界坐标系的转换

  式5中Xw,Yw,Zw为世界坐标系坐标,Xc,Yc,Zc为相机坐标系坐标,由式4计算,R为旋转矩阵,描述相机坐标系到世界坐标系所做的旋转操作,T为平移矩阵,是相机中心在世界坐标系中的坐标,描述相机坐标系到世界坐标系所做的平移操作。R和T均属于相机外参数,由相机标定或多视影像运动恢复结构(Structure from Motion, SfM)算法获得。式5是摄影测量学中的转换公式,而在计算机视觉中R矩阵与T矩阵描述的转换关系与摄影测量正好相反,即世界坐标系到相机坐标系的转换关系,当然,两者只是转换对象的位置做了颠倒,所依据的基本几何原理是一致的。计算机视觉中的转换关系如式6所示。

式6 计算机视觉中世界坐标系到相机坐标系的转换

双目立体视觉中的坐标系与转换关系 [留意~摄影测量学与计算机视觉学科中的差异]_第5张图片

  以上三类坐标系和它们之间的转换关系,构成了双目立体视觉的几何框架基础,通过该几何框架,可以完成像素点到世界坐标系之间的相互转换,即完成二维信息与三维信息之间的相互映射。

恒叨立码之立体匹配
SGM
理论恒叨系列

【恒叨立码】【理论恒叨】【立体匹配系列】经典SGM:(1)匹配代价计算之互信息(MI))
【恒叨立码】【理论恒叨】【立体匹配系列】经典SGM:(2)匹配代价计算之Census变换
【恒叨立码】【理论恒叨】【立体匹配系列】经典SGM:(3)代价聚合(Cost Aggregation)
【恒叨立码】【理论恒叨】【立体匹配系列】经典SGM:(4)视差计算、视差优化

码上教学系列

【恒叨立码】【码上实战】【立体匹配系列】经典SGM:(1)框架与类设计
【恒叨立码】【码上实战】【立体匹配系列】经典SGM:(2)代价计算
【恒叨立码】【码上实战】【立体匹配系列】经典SGM:(3)代价聚合
【恒叨立码】【码上实战】【立体匹配系列】经典SGM:(4)代价聚合2
【恒叨立码】【码上实战】【立体匹配系列】经典SGM:(5)视差优化
【恒叨立码】【码上实战】【立体匹配系列】经典SGM:(6)视差填充
【恒叨立码】【码上实战】【立体匹配系列】经典SGM:(7)弱纹理优化

恒叨立码之立体匹配 -- PatchMatch
PatchMatch
理论恒叨系列

【恒叨立码】【理论恒叨】【立体匹配系列】经典PatchMatch: (1)Slanted support windows倾斜支持窗模型
【恒叨立码】【理论恒叨】【立体匹配系列】经典PatchMatch: (2)基于PatchMatch的视差估计
【恒叨立码】【理论恒叨】【立体匹配系列】经典PatchMatch: (3)后处理(一致性检查与视差填充)

你可能感兴趣的:(#,立体匹配,三维重建)