基础矩阵
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
基础矩阵及其求法
同一三维场景在两个不同视点处得到的两幅二维图像之间的几何关系——极几何以及极几何的代数表示——基础矩阵。
两幅图像可以是由两个摄像机在不同位置同时采集的,也可以是同一摄像机顺序采集的,例如摄像机相对场景移动。
对于这两种情况,几何上认为是相等的。
一般地,同一世界坐标系下的同一物体的图像间存在一种几何上的对极约束关系。
在立体视觉中,可以利用图像点的匹配来恢复这种几何关系,反过来,也可以利用这种几何关系来约束匹配,使得对应点的搜索范围由二维平面降低到对应一维极线,使得匹配的鲁棒性、精度都得到很大提高。
对极几何关系在数学上可以用基础矩阵F 来表示,因此,对极几何问题就转化为对基础矩阵F 的估计问题。
精确地计算F 对于标定、寻找精确匹配和三维重建都有重要意义。
2.1 基础矩阵
假设在一个立体视觉系统中,有两个摄像机,如图2.1所示,设C和C’分别为两个摄像机的光心,两个摄像机获得的图像分别为I和I’,M为三维空间中任意一点,m和m’是点M 在两个图像上的像点(投影点),称m和m’为一对对应点。
连接光心C和C’的直线称为基线。
空间点M和两个光心C和C’共面,设它们所在的平面为π,该面称为极平面。
极平面与图像平面的交线l和l’称为极线。
因为m(m’)也同时在平面π和像平面I(I’)上。
从这里可以看出,寻找m(m’)的对应点m(m’)时,不必在I(I’)整幅图像中寻找,只需在m(m’)在I(I’)的极线上寻找即可。
这就提供了一个重要的极线约束,将对应点的搜索空间从二维降到了一维。
当三维空间点M移动时,产生的对所有极线都穿过极点e(e’),极点是极线与图像平面的交点。
图2.1两幅图像间的对极几何
2.1.1 参考坐标系
为了描述基础矩阵,首先需要定义四个参考坐标系:图像坐标系、成像平面坐标系、摄像机坐标系和世界坐标系。
摄像机采集的数字图像在计算机内可以存储为数组,数组中的每一个元素(称为像素,pixel)的值即是图像点的亮度。
在图像上定义直角坐标系u-v,那么(u , v )是以像素为单位的图像坐标系坐标,如图2.2所示。
图2.2 图像坐标系和成像平面坐标系
图像坐标系表示像素位于数字图像中的列数和行数,而成像坐标系用物理单位(例如毫米)表示出该像素在图像中的物理位置。
如图2.2所示,在 x-y 坐标系中,原点O 1定义在摄像机光轴和图像平面的交点处,称为图像的主点(principal point ),该点一般位于图像中心处。
若O 1在u-v 坐标系中的坐标为 (u 0,v 0),每个像素在x 轴和y 轴方向上的物理尺寸为 dx ,dy ,则两个坐标系的关系如下:
⎥⎥
⎥⎦
⎤⎢⎢⎢⎣⎡⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡=⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡1100/100/1100y x v dy u dx
v u (2.1) 摄像机成像几何关系可由图2.3表示,其中C 点称为摄像机光心,Xc 轴和Yc 轴与成像平
面坐标系的X 轴和Y 轴平行,Zc 轴与成像平面垂直,称为摄像机的光轴。
光轴与成像平面的交点为图像主点C 1,由点 C 与Xc, Yc ,Zc 轴组成的直角坐标系称为摄像机坐标系。
CC 1为摄像机焦距。
我们用世界坐标系来描述真实世界环境中摄像机和物体的位置。
摄像机坐标系和世界坐标系之间的关系可用旋转矩阵R 与平移向量t 来描述。
由此,空间点M 在世界坐标系和摄像机坐标系下的齐次坐标(Xw , Yw , Zw,1) T 与 (Xc , Yc, Zc,1) T 存在如式(2.2)的关系,其中R 是3
×3旋转矩阵,t 是3维平移向量,0= (0,0,0)T
,P 是两个坐标系之间的变换矩阵。
图2.3摄像机成像几何
(2.2)
2.1.2摄像机模型 2.1.3 基础矩阵
基础矩阵是对极几何的代数表示。
设两个摄像机的投影矩阵分别为1P 和2P 。
则两个摄像机
的投影方程如下:
[]M P P M P m Z B A c 111== (2.6)
[]M P P M P m Z B A
c 222''== (2.7)
其中,M 为三维空间点M 在世界坐标系下的齐次坐标:m 、m ’分别是投影点m 、m ’在图像坐标系下的齐次坐标;将投影矩阵P 1和P 2中左面的3×3部分记为A P 1和A P 2,右边的3×1
部分记为B P 1和B P 2。
如果将T W
W W Z Y X M )1,,,(=记为T T M M )1(=,其中T W W W Z Y X M )1,,,(=,则式(2.6)
、(2.7)可展开为 B A C P M P m Z 11+= (2.8) B A C P M P m Z 22''+= (2.9)
将上式消去M 得
B A A B A A
C C P P P P m P P Z m Z 11
122112''---=- (2.10)
定义2.1 如果t 为三维向量,T z y x t t t t ),,(=,称下列矩阵为由t 定义的反对称矩阵,记为[]⨯t 。
[]⎥⎥⎥⎦
⎤
⎢⎢⎢⎣⎡---=⨯
000
x
y
x s y s t t t t t t t 令p 等于式(2.10)右端的向量,即
B A A B P P P P p 11
122--= (2.11)
用[]⨯p 左乘式(2.10)两边,则由[]0=⨯p p 可得
[]0)(112'=--⨯m P P Z m Z p A A C C (2.12)
将式(2.12)两边除以'C Z ,并令'/C C Z Z Z =,得
[][]'122m p m P ZP p A A ⨯-⨯= (2.13)
式(2.13)右边向量为[]''m p m p ⨯=⨯,可见该向量与'm 正交,将T
m '左乘上式两边,并
将所得两边除以Z 后得到下式:
[]0'1
12=-⨯m P P p m A A T (2.14)
令[]1
12-⨯=A A P P p F ,则式(2.14)可以改写成:
0'=Fm m T (2.15)
矩阵F 是立体视觉与运动视觉中一个非常重要的矩阵,称为基本矩阵。
式(2.15)的重要性在于它给出了一个描述基本矩阵的方法:不需要摄像机的投影矩阵,而仅需两幅图像间的对应点。
这就使得我们可以利用对应点的关系恢复出基本矩阵F 。
基础矩阵的基本性质如下: 基础矩阵F 的自由度为7。
对极几何约束可以由基础矩阵代数表示0'=Fm m T 。
设左图像中m 点映射到右图像上对应点 m '的矩阵为F ,将右图像上点 m '映射到左图像上的对应点m 的矩阵为 F ',则有T F F ='。
对极线可以由基础矩阵代数表示为: 点m 在另一幅图像上的极线为 Fm l ='
点m '在另一幅图像上的极线为
'''m F m F l T ==
极点可利用基础矩阵表示为
0=Fe ;0'=e F T
上面的五条性质给出了对极几何的主要几何关系表达式,其中最为核心的是等式(2.15),它代表着所有匹配点所应遵循的约束方程。
2.2 特征点提取与匹配
基础矩阵的计算需要有一系列的匹配点,而从图像中提取特征点是匹配的第一步。
这里的特征点通常指灰度变化剧烈的点,包括物体轮廓上的曲率变化最大点、直线的交点、单调背景上的孤点等。
这节中我们介绍提取和匹配特征点常用的几种方法。
2.2.1 Harris 特征点提取算法 2.2.2 灰度相关匹配 2.2.3 SIFT 匹配方法 2.3 基础矩阵的求解
由于基础矩阵在计算机视觉领域中的重要地位,精确地估计基础矩阵已经成为人们研究的一个重要方向。
所有的估计基础矩阵的方法都是基于求解一个齐次方程组。
假设给定一个对应点的集合},,2,1|',{n i m m i i =,其中T i i i v u m )1,,(,
T i i i v u m )1,','('=,7≥n ,当使用n 对对应点时,方程(2.15)可以改写成如下形式: 0=f U n (2.19) 其中
T F F F F F F F F F f ],,,,,,,,[262524232221131211= (2.20)
9
22
222222222
21111111111111''''''1''''''1''''''⨯⎥⎥
⎥⎥
⎦⎤⎢
⎢⎢⎢⎣⎡=n n n
n n n n n n n n n n n v u v v v v u u u v u u v u
v v v v u u u v u u v u v v v v u u u v u u U
(2.21) 方程(2.19)是一个齐次方程组。
需要注意的是,F 在相差一个比例因子的情况下,应该有8个独立变量,但是因为F 还满足det( F ) = 0,因此在F 的9个未知变量中只有7个独立变量。
基础矩阵的一个重要特性是它是奇异的,即秩为2,大多数基础矩阵的应用都依赖于这个性质。
如果求得的基础矩阵不是奇异的,则计算出来的极线将不交于一点,如图2.6所示。
一般情况下,由方程(2.19)求解出的基础矩阵的秩并不为2。
(a) 非奇异基础矩阵极线不交于一点 (b) 奇异基础矩阵极线交于一点
图 2.6 相交极线图
一种求解基础矩阵的实用方法
2 基础矩阵计算算法 2.1 算法整体框架如下 利用SIFT (Scale Invariant Feature Transformation )方法提取图像中特征点,并进行匹配。
利用经典的8 点法计算基础矩阵,由于存在误配问题,所以将之作为RANSAC 方法的迭代初值。
使用RANSAC(RANdom Sample Consensus)方法得到基础矩阵的鲁棒解。
2.2.2 归一化8点法求基础矩阵[3]介绍:
根据两视外极几何:
0'=Fx x T
其中x ’和x 分别表示两幅图像中对应点对的齐次坐标。
而假若在两幅图像中得到若干对应特征点,则有:
0]1,,,',',',',','[=f v u v vv uv u vu uu
其中f 为包含了基础矩阵F 中未知元素的列向量,Hartley 将图像点坐标归一化,就是所谓的归一化8点法。
但是由于8点法在计算中高度依赖于特征点匹配的正确度,所以当图像出现错误匹配时,结果会变的很坏,所以为了使结果更精确,更鲁棒。
这里将8点法的计算结果作为RANSAC 方法的初值。
2.2.3 RANSAC :
2.2.
3.1 原始的RANSAC 通用框架[4]:随机采样一致性法的思想很简单:给定 参数F ,估计之。
假设:
(1)参数可以用数目为Ssub 的最小点集计算出来。
/ * 这里是8 个点对* / 。
(2)存在总共数目为S 的数据集合。
/* 这里就是从SIFT 中提取出特征点数目。
* / 算法为:
(1)随机选择8个点对。
并计算F 。
(2)在原始点对中寻找有多少点对支持已经计算出的F ,并记为K 。
(3)若K 足够大,则算法结束。
(4)设计数器。
当算法计算次数小于设定值时重复1到4 。
(5)如果到此步,则认为计算失败。
第三章 估计基础矩阵的方法
目前,基础矩阵的估计算法一般可以分为三类:线性方法、非线性迭代方法和鲁棒方法。
其中线性方法和非线性方法适合于特征点匹配无误的情况下,在一定程度上可以克服特征点定位精度不够所引入的数据噪声;鲁棒方法适合于特征点匹配有误的情况,算法可以剔除错误匹配数据或者抑制较大的数据噪声。
本章在获得匹配点集的基础上介绍估计基础矩阵的一些算法,为后面的算法改进做理论准备。
3.1 问题描述
对两幅图像中的匹配点T i i i y x m )1,,(=和T i i i y x m )1,','('=,存在如下等式:
0'=i i Fm m (3-1)
这里的F 即为所要估计的基础矩阵,F 是一个33⨯矩阵,记为⎥⎥⎥⎦
⎤
⎢⎢⎢⎣⎡=3332
31
232221131211F F F F F F F F F F 写成如下齐次线性方程:
0=f u T
i (3-2)
其中,
⎪⎩⎪⎨⎧==T
T
i i i i i i i i i i i i i F F F F F F F F F f y x y y y y x x x y x x u ]
,,,,,,,,[]
1,,,',',',',','[333231232221131211 (3-3) 对于n 对匹配点,可以得到n 个线性方程,写成如下的形式:
0=f U n (3-4)
其中n U 是一个9⨯n 的矩阵且T n n u u u U ],[21 =。
基础矩阵的计算方法都是建立在线性方程(3-4)的基础上。
基础矩阵F 在相差一个常数因子的情况下是唯一的,因为0)det(=F ,因此F 的9个未知变量中只有7个独立变量。
基础矩阵的一个重要特性是它是奇异的,即2)(=F Rank ,大多数基础矩阵的应用都依赖于这个性质。
如果求得的基础矩阵不是奇异的,则用基础矩阵计算出来的极线将不交于一点。
一般情况下,由方程(3-4)求解出的F 矩阵的秩并不为2。
3.2.1 7 点算法 3.2.2 8点算法
当匹配点对的个数大于或等于8时,就可以用最小二乘法求解基础矩阵F 。
8点算法将问题转化为求解下面的问题:
2
min Af
约束条件1=f (3-5)
具体算法步骤:
(1) 由对应点(8≥n )集构造系数矩阵A ;
(2) 对矩阵A 进行奇异值分解T
UDV A =,由向量9v f =构造基础矩阵F ; (3) 对矩阵F 进行秩2约束,即对F 进行SVD 分解T V s s s Udiag F )(32
1
=,然后
令03=s 得到基础矩阵的估T V s s s Udiag F
)(ˆ32
1=.
8点算法优点是计算量小,易于实现。
缺点就是在最小化过程中的目标函数没有物理意义,
另外估计基础矩阵F 的结果与图像点的坐标系有关。
当图像数据有噪声,即对应点不精确时,由8点算法给出的基础矩阵F 的解精度很低。
3.2.3 改进的8点算法
从以上对线性方法的描述中可以看出,线性方法的优点是计算量小,易于实现。
但是当匹配
的对应点对中有错误匹配或者由于噪声原因点的定位不好时,线性方法的计算不稳定,得到的结果精度不理想。
Hartey 【13】分析了线性方法不稳定的原因,认为主要原因是直接使用原始图像象素坐标时,系数矩阵的条件数不好造成的,而引起方程组的条件数恶化的原因是点的齐次坐标表示式的各个分量的数量级相差太大。
基于以上的认识,Hartley 提出了改进的8点算法,在应用8点算法估计基础矩阵之前,先对数据进行一个规范化处理,即对原始数据做各向同性的变换,就可以减少噪声的干扰,大大提高8点算法的精度。
规范化变换:
(1) 对图像点做位移变换,使图像的原点位于图像点集的质心;
(2) 对图像点做缩放变换,使图像点分布在以质心为圆心半径为2的圆内。
图3.1形象的描述了数据规范化的过程,其中 H 为变换矩阵,写成如下形式:
⎥⎥⎥⎦
⎤
⎢⎢⎢⎣⎡--=10
000v k k u k k H m m
m m
(3-6)
∑∑====
N
i i N
i i v N v u N
u 1
01
01
,1
(3-7)
∑=-+-=
N
i i i m v v u u N
1
2
020])()[(1
σ (3-8) m
m k σ2
=
(3-9)
改进的8点算法步骤如下:
(1) 对图像坐标进行如下变换:
'''ˆ,ˆi i i i m H m Hm m
== (3-10) 其中,H 、'H 是33⨯的变换矩阵,使得点集的质心在原点,并且点到原点的评价距离为
2,得到新的对应点集;
(2) 根据新的对应点集和8点算法估计基础矩阵F ˆ; (3) 根据变换H F
H F T
ˆ'=,得到真正的基础矩阵F 。
经过简单的数据规范化处理以后,改进的8点法的确非常有效,且该算法的运算速度很快。
基于计算机立体视觉的三维重建 2.5基础矩阵求解
鉴于基础矩阵在立体视觉中的重要作用,对它的精确估计已成为研究中的一个重点。
1981年,Longuet-Higgins[29]提出了八点算法,该算法是线性的,虽易于实现,但对噪声非常敏感,难以在实际中应用。
1992年,Fangeras[30]提出了基于二小平面的算法,其稳定性和精度较八点算法均有提高。
不久,Hartley[31]提出了改进的八点算法,它通过在计算前对二维数据进行规范化处理(平移和尺度变换)来减少噪声干扰,其结果与最好的迭代法不相上下。
其它用到的算 法还有M-估计法(M-estimators)、最小中值法(LMedS)等,其共同点就是把问题最终归结为无约束最优化问题,而在求取最优解时一般都采用了最小二乘法。
2.5.1八点法
原理如下:对于两幅图像之间的匹配点m 、'm ,它们必然满足对极约束0'=Fm m T
,该方程是关于F 的9个未知参数的线性齐次方程,由于F 在相差一个常数因子的意义下是唯一的,所以可以将其中的一个非零参数归一化而变为8个未知参数,因此如果能得到8对匹配点,就可以线性地确定F ,这就是所谓的八点法(8-points Algorithm)。
设T v u
m ]1[=,T v u m ]1''['=分别是两图像中对应像点的归一化坐标,F 为基础
矩阵,则有0'=Fm m T
,令⎥⎥⎥⎦
⎤
⎢⎢⎢⎣⎡=98
7
654
321
f f f f f f f f f F ,将F 写成由各元素组成的列矢量形式,即T f f f f f f f f f f ][98
7654321
=,则对每一对匹配点()',m m 有
[]01''''''=f v u v vv uv u vu uu (2-10)
因此,只要知道8对匹配点,就可以得到一个由8个形如(2-10)式的方程构成的线性方程组,在
相差一个常数因子的意义下求出F 矩阵。
如果匹配点对的数目多于8个,则可以利用最小二乘法求解。
将n(n>8)个这样的方程叠起来得到线性方程组
0=Af (2-11)
其中
⎥⎥
⎥⎦
⎤⎢⎢⎢⎣⎡=1''''''1''
''''
111
111111111N N N
N N N N N
N N N N v u v v v u v u v u u u v u v v v u v u v u u u A
(2-12)
是一个9⨯N 的矩阵。
根据基础矩阵的定义,所有的解向量f 之间只相差一个常数因子。
为
了避免多余解,加一个约束条件1=f ,则f 就是A A T
的最小特征值所对应的特征向量。
设A 的奇异值分解)(SVD 为T
UDV A =,[]98
7654321
v v v v v v v v v V =,
则9v f =,从而求出F 。
2.5.2 Hartley 的改进的八点法
虽然按照上面的方法可以求出F ,但在实际计算中存在两个问题。
Hartley[31]对此做了改进,提出了改进的八点算法。
首先,因为像点坐标的尺度变化过大,对计算不利,所以需要对原始的像点坐标进行尺度放缩。
令∑==N
i i u n u 101,∑=-=
N
i i u u u n i 1
0)(σ (2-13) 同样对v ,'u ,'v 也做类似地计算。
令⎥⎥⎥⎦
⎤
⎢⎢
⎢⎣⎡--=100//10/0/100v v u u
v u T σσσσ,类似地定义'T 。
令'ˆTm m
=,'''ˆm T m =,则由0'=Fm m T 有 求得'F 后,根据FT T F '=即可得F 。
另外,因为F 的秩为2,而求得的解可能并不满足这个要求,所以要对求得的F 进行SVD
修正。
设F 的SVD 分解为T T V Udiag UDV F
),,(ˆ321σσσ==,其中321σσσ>>,则修正后的结果为T V Udiag F )0,,(ˆ2
1σσ=。
文献[32]已经证明F ˆ在Frobenius 范数意义下,满足秩2约束且最接近F 。
所以实际计算时的步骤:1、尺度放缩;2、线性化求解;3、尺度恢复;4、对厂进行SVD 修正得最终结果。
基于极线几何约束的非标定图像的立体匹配 1 对极几何和基础矩阵
对于从同一景物获取的两幅未标定图像,匹配的关键问题是在图像位置关系和摄像机参数未知的情况下,确定图像间的匹配点。
对极几何关系是唯一能够从匹配点集中获得的信息, 数学上用基础矩阵(F ) 表示, 因此对极几何问题可以转化为基础矩阵的估计问题。
对极几何和基础矩阵的描述如下:
如图1所示, 三维空间点P 在平面I ,'I 上的投影分别为m 和'm ,m 和'm 为对应匹配点;两摄像机的光心C 、'C 与摄像机图像平面的交点e 、'e 称为两图像平面的极心;射线'm l 称为点m 在图像平面'I 中的极线,极线m l 也有类似的定义;R 为摄像机的旋转矩阵,T 为平移向量。
在射影空间,像平面上的直线l 可用射影坐标l 来表示。
点m 与'm 的极线'm l 与m l 的射影坐
标为'm l 与m l ,则'm l 与m 之间满足一个线性变换:
Fm l m =' (1)
其中,F 是一个秩为2的33⨯矩阵,称为基础矩阵。
图像特征提取_匹配和新视点图像生成技术研究
1.3.2图像之间的几何变换和极线几何约束
对于图像之间的几何变换,我们也分两种情况考虑,即空间平面的关系和空间点的关系"
1.空间平面
空间平面由于增加了平面方程的约束,使投影矩阵表达方式相对简单些。
首先考虑摄像机任意运动采集的两幅图像,在透视投影模型下,由式(1-11)可知图像0I 上点),(000z y x 与图像1I 上的对应点),(111z y x 可由射影变换表示:
当摄像机距离拍摄位置很远时,即投影模型为拟透视投影模型时,由式(1-12)可得图像间的变换可由仿射变换表示:
其中,()1,,y x t t 为两图像间的平行距离,d c b a ,,,为其伸缩、尺度、旋转变换因子。
因此, 空间平面在不同图像上的成像可由仿射变换表示。
2.空间点
在计算机视觉中,从两个不同视点获得的两幅同一景物的图像之间存在着一定的基本几何约束关系——极线几何约束(epipolar geometric consrtaints)。
它是寻找图像间对应关系的一种最基本的约束。
在计算机视觉中,可以利用图像点的匹配来确定极线几何约束。
反过来,可以利用这种几何关系来约束匹配,使匹配点的搜索由二维图像平面转化为在对应极线上的一维搜索。
如图1- 9所示,空间点P 在左右两幅图像上的成像分别为0p 、1p 。
0C 是左摄像机的光学中心视点, 1C 是右摄像机视点。
0C 1C 连线被称为基线(BaseLine),其与0I 交点为0e ,与1I 交点为1e ,0e 和1e 分别称为左右两图的极点(Epipolar)。
点0C 、1C 、0p 、1p 和P 共面∏,称为极平面 (Epipolar plane)。
在图像上通过极点的线称为极线(Epipolar),0p 的对应点1
p
位于极平面与图像1I 的交线1l 上,称1l 是与点0p 相关联的极线。
同理,称0l 是与点1p 相关联的极线。
在立体视觉中极线约束可陈述为:如0p 和1p 对应空间同一点,则1p 一定位于与0p 相关联的极线1l 上,0p 一定位于与1p 相关联的极线0l 上。
由于一条极线上任意一点的对应点都在同一对应极线上,两视图中的极线描述的图像内容具有对应关系,0I 中的00p e 线段,对应1I 中11p e 线段,称为对应极线。
下面给出极线几何关系的数学证明。
0p 在线0l 上,其向量计算式为000=P l T
(1-15)
空间点P 在面∏上,可以表示成:0=∏P T (1-16)
立体匹配算法的研究和应用
3.3 极线几何模型
为了讨论同一个三维场景两个不同角度与空间关系的二维投影之间的关系,文献[4]给出了极线几何模型,极线几何模型不仅因为讨论了两个摄像机图像平面的关系而在双目立体匹配中得到广泛的应用,并且在三维重建和运动分析中都受到广泛重视。
一般进行的立体图像的校正和匹配,都要用到极线几何约束,因此我们在这里对极线几何做一个简单的介绍。
3.3.1 极线几何学
处于不同位置的两个摄像机对空间同一场景的图像记录称为立体图像对,其中同一物点在这两个像平面上的投影称为对应点,根据射影几何学知识,对应点应该满足外极几何的约束关系,即同一物点的对应点落在不同投影平面的同一外极线上。
具体的说,对于左投影平面上的任意一点m ,将其与左投影中心C 相连一条无限长的直线l ,那么点m 在三维空间所对应的所有的点必然位于这条直线上;如果将这条直线在右投影平面做一个投影,其必然表现为一条直线。
我们将这条直线称之为右投影平面的一条极线l ’,如图3.4所示:
由图3.4可以看到,左投影平面上的点m,其在右投影平面的对应点m’应该位于直线l’之上,由于点m是左投影平面上的任意指定的一点,我们取不同的m,由文献[4]中的证明,所有的m所得到的极线,最终都会经过右投影平面上的一个特定点,这个点被称为该投影平面的极点e’;经过同样的方法可以得到左投影平面的极点e和极线l。
文献[4]还给出了对确定极线位置的另一种更加简单的解释方式。
在图3.4中,C,C’分别代表左右投影平面的中心,m、m’则代表同一个物点在左右投影平面中的投影,点m所对应的极线l可以看成是由基线CC’和直线Cm交叉所确定的平面L与左投影平面R相交得到的;同样的道理,右极线l’也可以看作是这一平面与右投影平面R’的交界,也就是说,左投影平面上的点m,其在右投影平面的对应点m’必位于l’上。
借助于上述的解释,如图3.5所示,我们可以利用基线所在的平面集合与左右投影平面的交线来得到左右投影平面的极线集合,这个时候可以发现,所谓的极点实际上是左右投影平面的投影中心,也就是摄像机的光心在相对的图像坐标系中的投影。
因此,如果采用会聚型配置摄像机对,亦即左右两个投影平面存在交角的时候,此时左右投影平面中各条极线必然各自相交于一点,也就是说必然存在对应的极点。
反映在图像上,对应点将同时在X轴方向和Y轴方向上同时具备视差。
因此可以想见,如果要消除图像对应点间在Y轴方向上的视差,应该将两个投影平面校正到同一个平面内,也就是说将左右投影平面的极线调整到都和基线CC’平行的位置,如图3.6所示。
此时,两个投影中心在对方图像中的投影,也就是极点,可以看作位于无穷远处,因此对应点所在的极线都可以看作是与基线CC’和X轴平行。
进行立体匹配时,这些对应点只存在X轴方向上的位移,从而大大简化视差计算算法的计算复杂度。
由上述的分析可以知道,极线变换的目的就是要将左右投影平面调整到共面,极线变换的过程就是将极点映射到无穷远的过程。
这个过程一般是通过射影变换来进行的,在进行视差计算之前应当把不处于同一平面的图像根据极线几何学利用旋转等一系列操作变换到同一平面,将图像的极点映射到无穷远,这一过程被称为立体校正。
经过这样的校正并且再进行重采样,保证输出的图像的极线平行于X 轴,也就是和基线保持水平,此时两个投影平面必然共面,对应的匹配点的坐标差异将只存在沿着水平极线的方向也就是X 轴方向的分量,而不存在Y 轴方向上的分量。
3.3.2 极线几何公式推导
有了上述的介绍,这一小节我们进行关于极线几何的一些公式推导。
跟前面的假设一样,空间中的点M在左投影平面R中的投影是点m,在右投影平面R’中的投影点m’,也就是说,点m和点m’互为对应点,如图3.4所示。
假设左右投影平面的投影矩阵P和P’,我们可以得到:
于是左投影平面上的点m 在右投影平面上对应的极线l '可以用式(3.25)简洁的表示为:
c
P
P
l+
=(3.25)
P
'm
(
'
)
]
'
[
⨯。