附录B摄象机模型和外极线几何 B.1摄象机模型 B.1.1针孔模型和透视投影 B12摄象机外参数 B1.3摄象机内参数和归一化摄象机 B.14透视矩阵的一般形式 B2透视投影的各种线性近似 B21正投影( orthographic projection) B.22弱透视( weak perspective B23平行透视( paraperspective projection) B24仿射摄象机 B.3透视投影下的外极线几何 B31外极线几何中的概念 B32归一化坐标系中的外极线方程 B3.3像素坐标系中的外极线方程 B34投影矩阵下的外极线方程 B35基础矩阵和外极几何变换 B.1摄象机模型 在大部分应用环境中可以用理想的针孔模型来近似实际摄象机。针孔模型的几何关系就 是透视投影。下面我们先介绍透视投影的几何关系 B1.1针孔模型和透视投影 针孔摄象机的模型在第五章中已有介绍。在那里我们使用了矢量代数的表示方法,下面 我们用坐标变换的方法来推导之 我们定义的第一个坐标系是摄象机坐标系。该坐标系的原点在焦心C,X、Y、Z轴由 A、H和V决定,其中A为光轴方向,H和V是正交的方向,三者组成右手直角坐标系。 三维点在该坐标系中的坐标M记为(X,Y,Z)2 为表示透视模型我们还需要在图象平面中建立图象坐标系。这是一个二维坐标系,其原 点位于光轴和图象平面的交点c(称为主点, principal point),两坐标轴与H和Ⅴ平行且反 向。在该坐标系中像点m的坐标表示为uv) 在定义了这两个坐标系后,投影模型可表示为 其中f为焦心到图象平面的距离,即焦距。 摄象机坐标系和图象坐标系如图B.1所示
224 附录 B 摄象机模型和外极线几何 B.1 摄象机模型 B.1.1 针孔模型和透视投影 B.1.2 摄象机外参数 B.1.3 摄象机内参数和归一化摄象机 B.1.4 透视矩阵的一般形式 B.2 透视投影的各种线性近似 B.2.1 正投影(orthographic projection) B.2.2 弱透视(weak perspective) B.2.3 平行透视(paraperspective projection) B.2.4 仿射摄象机 B.3 透视投影下的外极线几何 B.3.1 外极线几何中的概念 B.3.2 归一化坐标系中的外极线方程 B.3.3 像素坐标系中的外极线方程 B.3.4 投影矩阵下的外极线方程 B.3.5 基础矩阵和外极几何变换 B.1 摄象机模型 在大部分应用环境中可以用理想的针孔模型来近似实际摄象机。针孔模型的几何关系就 是透视投影。下面我们先介绍透视投影的几何关系。 B.1.1 针孔模型和透视投影 针孔摄象机的模型在第五章中已有介绍。在那里我们使用了矢量代数的表示方法,下面 我们用坐标变换的方法来推导之。 我们定义的第一个坐标系是摄象机坐标系。该坐标系的原点在焦心 C,X、Y、Z 轴由 A、H’和 V’决定,其中 A 为光轴方向,H’和 V’是正交的方向,三者组成右手直角坐标系。 三维点在该坐标系中的坐标 Mc记为(Xc,Yc,Zc) T。 为表示透视模型我们还需要在图象平面中建立图象坐标系。这是一个二维坐标系,其原 点位于光轴和图象平面的交点 c(称为主点,principal point),两坐标轴与 H’和 V’平行且反 向。在该坐标系中像点 m 的坐标表示为(u,v)T。 在定义了这两个坐标系后,投影模型可表示为 c c Zc f Y v X u = = (B.1) 其中 f 为焦心到图象平面的距离,即焦距。 摄象机坐标系和图象坐标系如图 B.1 所示
mage plane focal plane 图B.1针孔模型,其中过焦心C和图象平面平行的平面称为焦平面 在实际应用中物体离焦心的距离一般都远大于焦距。因此我们常在光轴上和实际图象平 面关于焦心对称的位置上设置一个虚拟图象平面,如图B2。并在该虚拟平面上建立二维坐 标系。原点在光轴和该平面的交点,两坐标轴与H和V平行并且方向相同。把像平面上的 点经焦心作中心对称映射到该虚拟平面上。这样该平面上点的二维坐标与三维点的摄象机坐 标系坐标同样满足上面的投影模型。以后我们一般把此虚拟平面称为像平面。 图B2使用虚拟图象平面的针孔模型 对任一坐标值x=(x,x2….),我们用X表示x的齐次坐标。它由x的所有分量加上一个 为1的元素生成,即X=(x2,1)。 在投影模型中如果我们使用m点的齐次坐标(UV,S),则有 25
225 图 B.1 针孔模型,其中过焦心 C 和图象平面平行的平面称为焦平面 在实际应用中物体离焦心的距离一般都远大于焦距。因此我们常在光轴上和实际图象平 面关于焦心对称的位置上设置一个虚拟图象平面,如图 B.2。并在该虚拟平面上建立二维坐 标系。原点在光轴和该平面的交点,两坐标轴与 H’和 V’平行并且方向相同。把像平面上的 点经焦心作中心对称映射到该虚拟平面上。这样该平面上点的二维坐标与三维点的摄象机坐 标系坐标同样满足上面的投影模型。以后我们一般把此虚拟平面称为像平面。 图 B.2 使用虚拟图象平面的针孔模型 对任一坐标值 x=(x1,x2,…)T,我们用 x ~ 表示 x 的齐次坐标。它由 x 的所有分量加上一个 为 1 的元素生成,即 T T ( ,1) ~ x = x 。 在投影模型中如果我们使用 m 点的齐次坐标(U,V,S)T,则有
0f00 Xy.Z (B.2) S丿(0010 f00 其中U、VS满足S:0且u=US,v=VS。另外,我们用P表示3*矩阵0f00, 则上式可写成线性形式 其中s=S为一比例因子 B12摄象机外参数 上面的讨论都是在摄象机坐标系(C,X,Y,Z)中进行的,不过在实际应用中,摄象机的位 置和方向并不总是固定不变的,因此我们需要用固定的世界坐标系(O,X,Y,Z来表示三维点 记P。在世界坐标系中的坐标为M=(XY,Z),则两坐标系的关系可用M=RM+t来表示,R 是旋转矩阵,它表示摄象机的方向:t则与摄象机的位置有关,它实际是世界坐标系原点在 摄象机坐标系中的坐标。这两者被称为摄象机的外参数 如果我们使用齐次坐标,上面的坐标系间的关系可写成 M= DM 其中D/P 01/0=00 结合(B.3)和(B4)式,我们有 sm=PM =PDM=PM (B.6) 其中P=PD为世界坐标系中的投影矩阵。 B13摄象机内参数和归一化摄象机 下面我们考虑图象平面上的坐标变换。它在实际应用中十分重要,这是因为 像素坐标系的原点不一定与光轴和图象平面的交点(即主点)重合; 像素坐标系中两坐标轴的单位由实际设备的采样率决定,它们不一定相同: 像素坐标系中两坐标轴不一定成直角。 为了处理这些问题,我们需要建立图象坐标系和像素坐标系间的仿射变换关系。如图 B3所示,(cxy)是上一节介绍的图象坐标系。它是直角坐标系,并且两个轴向上的单位相
226 = 1 0 0 1 0 0 0 0 0 0 0 c c c Z Y X f f S V U (B.2) 其中 U,V,S 满足 S0 且 u=U/S,v=V/S。另外,我们用 Pc表示 3*4 矩阵 0 0 1 0 0 0 0 0 0 0 f f , 则上式可写成线性形式 m Mc ~ ~ Pc s = (B.3) 其中 s=S 为一比例因子。 B.1.2 摄象机外参数 上面的讨论都是在摄象机坐标系(C,Xc,Yc,Zc)中进行的,不过在实际应用中,摄象机的位 置和方向并不总是固定不变的,因此我们需要用固定的世界坐标系(O,X,Y,Z)来表示三维点。 记 Pc 在世界坐标系中的坐标为 M=(X,Y,Z) T,则两坐标系的关系可用 Mc=RM+t 来表示,R 是旋转矩阵,它表示摄象机的方向;t 则与摄象机的位置有关,它实际是世界坐标系原点在 摄象机坐标系中的坐标。这两者被称为摄象机的外参数。 如果我们使用齐次坐标,上面的坐标系间的关系可写成 Mc DM ~ ~ = (B.4) 其中 = 03 1 T R t D ,03=[0,0,0]T (B.5) 结合(B.3)和(B.4)式,我们有 m M M M ~ ~ ~ ~ s = Pc c = PcD = P (B.6) 其中 P=PcD 为世界坐标系中的投影矩阵。 B.1.3 摄象机内参数和归一化摄象机 下面我们考虑图象平面上的坐标变换。它在实际应用中十分重要,这是因为: ⚫ 像素坐标系的原点不一定与光轴和图象平面的交点(即主点)重合; ⚫ 像素坐标系中两坐标轴的单位由实际设备的采样率决定,它们不一定相同; ⚫ 像素坐标系中两坐标轴不一定成直角。 为了处理这些问题,我们需要建立图象坐标系和像素坐标系间的仿射变换关系。如图 B.3 所示,(c,x,y)是上一节介绍的图象坐标系。它是直角坐标系,并且两个轴向上的单位相
同。(o,u)则是像素坐标系,其原点常位于图象的左上角而不是主点c,像素也常常不是方 的。设k、k是u,v轴上的单位在图象坐标系中的度量值,θ是u,v两轴的夹角,(uoo)是c 在像素坐标系中的坐标。这五个参数就是摄象机的内参数 y 图B3摄象机的内参数,图象平面上的坐标变换 令md=x,y]为图象坐标系中的坐标值,mew=[uv则是像素坐标。显然有 =Hm。ld 其中H=0k,snOo。另外,根据B3)式,我们有smm=PaM1,代入上式, 0 smew=HPoldM=Pe m f0001「f。 fk, cot 8 lo0 其中Pm=HP=H0f00=0,/sinv0(B7 0010|0 Paew即像素坐标表示的投影矩阵。从中我们可以看到真正起作用的是au=fku和a=k, 即焦距的变化和像素尺度的变化在最终的图象上是不可区分的。 在实际应用中为简化公式,我们常常使用所谓的归一化坐标系。该坐标系也是定义在图 象平面上的二维坐标系,如果用该坐标系表示图象平面上的点,则投影矩阵PN有非常简单 的形式P=0100 (B.8) 0010 对摄象机坐标系中的点(XYZ-),其像点的归一化坐标(xNy)满足 XN=XZ, yN=Yc/z (B.9) 根据PN和Paew的定义,我们可以看到PN和Pasw满足
227 同。(o,u,v)则是像素坐标系,其原点常位于图象的左上角而不是主点 c,像素也常常不是方 的。设 ku、kv 是 u,v 轴上的单位在图象坐标系中的度量值,是 u,v 两轴的夹角,(u0,v0)是 c 在像素坐标系中的坐标。这五个参数就是摄象机的内参数。 图 B.3 摄象机的内参数,图象平面上的坐标变换 令 mold=[x,y]T为图象坐标系中的坐标值,mnew=[u,v]T则是像素坐标。显然有 mnew Hmold ~ ~ = , 其中 = 0 0 1 0 /sin cot 0 0 k v k k u H v u u 。另外,根据(B.3)式,我们有 m Mc ~ ~ old Pold s = ,代入上式, 得 new HPold c Pnew c sm M M ~ ~ ~ = = 其中 = = = 0 0 1 0 0 /sin 0 cot 0 0 0 1 0 0 0 0 0 0 0 0 0 f k v f k f k u f f P HP H v u u new old (B.7) Pnew 即像素坐标表示的投影矩阵。从中我们可以看到真正起作用的是u=fku 和v=fkv, 即焦距的变化和像素尺度的变化在最终的图象上是不可区分的。 在实际应用中为简化公式,我们常常使用所谓的归一化坐标系。该坐标系也是定义在图 象平面上的二维坐标系,如果用该坐标系表示图象平面上的点,则投影矩阵 PN 有非常简单 的形式 = 0 0 1 0 0 1 0 0 1 0 0 0 PN (B.8) 对摄象机坐标系中的点(Xc,Yc,Zc),其像点的归一化坐标(xN,yN)满足 xN=Xc/Zc, yN=Yc/Zc (B.9) 根据 PN 和 Pnew 的定义,我们可以看到 PN 和 Pnew 满足
Pew=APN 其中,A=0a,/ sin 8 vo 0 而归一化坐标(xN2yN)和像素坐标(uy)满足 使用归一化坐标系实际是把摄象机的内外参数分解开来考虑,这样当我们关注于摄象机 的外参数变化的情况(例如运动视觉)时就不必考虑使用的是什么样的摄象机。 B14透视矩阵的一般形式 同时考虑摄象机的内外参数,即建立像素坐标系中点m与三维对应点在世界坐标系中 的坐标值M之间的映射关系,我们有 其中P=APD=ARt (B.14) 其中A,R,t如上两节所述 透视矩阵P为3*4矩阵,由于可相差一个尺度,因此只有11个独立参量。 记p为P中i行j列的元素,消去尺度因子s,我们得到 Pux+pu2+ piZ +p (B.15) P3rX+p2+p33Z+p P21X+p2+p232m+P P31X+P32n+P32m+ 上两式可用于标定摄象机。如果有六个以上的像点和三维点的对应就可求出P,然后从 P中分解出内外参数。这方面的内容就不详述了 根据P我们还可以求出焦心C在世界坐标系中的坐标。令P=[Bb,其中B为3*3矩阵 三推列向,有0,4=0故 B-Ib 根据P和一个像点m我们可以得到空间中的一条射线,该射线由焦心和m决定,并且 其上的所有点都透视投影为m。这条射线的参数方程为M=B-(-b+Am),其中x为任一 正实数
228 Pnew=APN (B.10) 其中, = 0 0 1 0 /sin cot 0 0 v u A v u u (B.11) 而归一化坐标(xN,yN) T和像素坐标(u,v)T满足 = − 1 1 1 v u y A x N N (B.12) 使用归一化坐标系实际是把摄象机的内外参数分解开来考虑,这样当我们关注于摄象机 的外参数变化的情况(例如运动视觉)时就不必考虑使用的是什么样的摄象机。 B.1.4 透视矩阵的一般形式 同时考虑摄象机的内外参数,即建立像素坐标系中点 m 与三维对应点在世界坐标系中 的坐标值 Mw之间的映射关系,我们有 P w sm M ~ ~ = (B.13) 其中 P AP D AR t = N = (B.14) 其中 A,R,t 如上两节所述。 透视矩阵 P 为 3*4 矩阵,由于可相差一个尺度,因此只有 11 个独立参量。 记 pij 为 P 中 i 行 j 列的元素,消去尺度因子 s,我们得到 31 32 33 34 11 12 13 14 p X p Y p Z p p X p Y p Z p u w w w w w w + + + + + + = (B.15) 31 32 33 34 21 22 23 24 p X p Y p Z p p X p Y p Z p v w w w w w w + + + + + + = (B.16) 上两式可用于标定摄象机。如果有六个以上的像点和三维点的对应就可求出 P,然后从 P 中分解出内外参数。这方面的内容就不详述了。 根据 P 我们还可以求出焦心 C 在世界坐标系中的坐标。令 P=[B b],其中 B 为 3*3 矩阵, b 为三维列向量。显然有 0 ~ PCw = ,即 0 1 = Cw B b ,故 Cw=−B −1b (B.17) 根据 P 和一个像点 m 我们可以得到空间中的一条射线,该射线由焦心和 m 决定,并且 其上的所有点都透视投影为 m。这条射线的参数方程为 ) ~ ( 1 M = − + m − B b ,其中为任一 正实数
B2透枧投影的各种线性近似 从上节的讨论可以知道,透视投影实际是一个非线性映射。这在实际求解时可能需要大 的计算量:更重要的是,如果透视效果并不明显,直接使用该模型可能会使实际问题称为病 态问题。另外,在某些条件下,例如,摄象机的视场很小,并且物体的尺寸相对于到观察者 的距离也很小,透视模型可以很好地用线性模型近似。这种近似可大大简化推导和计算 为简单起见,如果不作特别说明的话,下面的讨论都认为像点用其归一化坐标表示,三 维点用其在摄象机坐标系中的坐标表示。 B1正投影( orthographic projection) 最简单的线性近似称为正投影。这种近似完全忽略了深度信息。在这种投影方式下,物 体到摄象机的垂直距离(深度信息)和物体到光轴的距离(位置信息)都完全丢失了。因此, 它只在这两种信息确实可以忽略时才可使用。 正投影的公式为x=X,y=Y。 B22弱透视( weak perspective) 如果物体的尺寸相对其到摄象机的距离很小的话,物体上各点的深度可以用一共同的深 度值Z近似,这个值一般取物体质心的深度。这样透视模型可近似为 X4y (B.18) 这种近似可以看作两阶段投影的合成。第一步,整个物体按平行于光轴的方向正投影到 经过物体质心并与图象平面平行的平面上:第二步,再按透视模型投影到图象平面上,这一 步实际是全局的放缩。因此,弱透视也被称为放缩正投影( scaled orthographic projection) 000 令P=0100 000Z 则弱透视模型可写成与透视投影类似的形式 将摄象机的内外参数都考虑进来,我们有 sm=APDM,其中s为一比例因子,A和D如上节定义。消去比例因子,我们看
229 B.2 透视投影的各种线性近似 从上节的讨论可以知道,透视投影实际是一个非线性映射。这在实际求解时可能需要大 的计算量;更重要的是,如果透视效果并不明显,直接使用该模型可能会使实际问题称为病 态问题。另外,在某些条件下,例如,摄象机的视场很小,并且物体的尺寸相对于到观察者 的距离也很小,透视模型可以很好地用线性模型近似。这种近似可大大简化推导和计算。 为简单起见,如果不作特别说明的话,下面的讨论都认为像点用其归一化坐标表示,三 维点用其在摄象机坐标系中的坐标表示。 B.2.1 正投影(orthographic projection) 最简单的线性近似称为正投影。这种近似完全忽略了深度信息。在这种投影方式下,物 体到摄象机的垂直距离(深度信息)和物体到光轴的距离(位置信息)都完全丢失了。因此, 它只在这两种信息确实可以忽略时才可使用。 正投影的公式为 x=X, y=Y。 B.2.2 弱透视(weak perspective) 如果物体的尺寸相对其到摄象机的距离很小的话,物体上各点的深度可以用一共同的深 度值 Z0 近似,这个值一般取物体质心的深度。这样透视模型可近似为 0 0 Z Y y Z X x = = (B.18) 这种近似可以看作两阶段投影的合成。第一步,整个物体按平行于光轴的方向正投影到 经过物体质心并与图象平面平行的平面上;第二步,再按透视模型投影到图象平面上,这一 步实际是全局的放缩。因此,弱透视也被称为放缩正投影(scaled orthographic projection)。 令 = 0 0 0 0 0 1 0 0 1 0 0 0 Z Pwp (B.19) 则弱透视模型可写成与透视投影类似的形式 = 1 1 Z Y X y P x s wp 。将摄象机的内外参数都考虑进来,我们有 APwpD w sm M ~ ~ = ,其中 s 为一比例因子,A 和 D 如上节定义。消去比例因子,我们看
到二维点和三维点的对应关系确实是线性的 下面我们来推导这种近似带来的误差。现在我们又回到归一化坐标系和摄象机坐标系 设三维点M的真正深度值为Z=Z0+ΔZ。该点按透视模型投影为m,而弱透视的结果为mvp, 我们用泰勒公式把Z在Z0处展开并略去高阶项,得到两者的差mmor为 X X mgrror-mp-m ZoEY z0(z0 Y」zLY △z,△Z,(△Z X△z 1+ year 我们可以看到有两种原因带来误差,一是。,即物体的深度信息:二是,即位 置信息。误差对物体的不同部分是不同的。在实际应用中为使用弱透视模型,一般要求 Z0>10△z B23平行透视( paraperspective projection) 在弱透视投影中,三维点先被正投影到过物体质心并与图象平面平行的平面上。这一过 程中丢失了物体的位置信息。如果物体离光轴较远,弱透视带来的误差是很大的。在平行透 视中,投影过程仍可分为两步,第一步仍是把物体平行投影到过质心且与象平面平行的平面 上,不过这次的投影线不是平行于光轴,而是平行于质心G和焦心C的连线C 容易得到平行透视的公式为 Z+X Lr-Yo z 其中(X0,Yo,Z0)为质心的三维坐标。 为将该模型写成与透视投影类似的形式,我们令 01 (B.21) 230
230 到二维点和三维点的对应关系确实是线性的。 下面我们来推导这种近似带来的误差。现在我们又回到归一化坐标系和摄象机坐标系。 设三维点 M 的真正深度值为 Z=Z0+Z。该点按透视模型投影为 mp,而弱透视的结果为 mwp, 我们用泰勒公式把 Z 在 Z0 处展开并略去高阶项,得到两者的差 merror为 = − + = − − + − = − − − + = − − + = − = Y X Z Z Y Z X Z Z Z Z Y X Z Z Z Z Z Z Y X Y Z X Z Z Z Z Y Z X Y Z X Z Z error p wp 0 0 2 0 2 0 0 2 0 0 2 0 0 0 0 0 1 1 1 1 1 1 1 1 1 m m m 我们可以看到有两种原因带来误差,一是 Z0 Z ,即物体的深度信息;二是 Y X ,即位 置信息。误差对物体的不同部分是不同的。在实际应用中为使用弱透视模型,一般要求 Z0>10*|Z|。 B.2.3 平行透视(paraperspective projection) 在弱透视投影中,三维点先被正投影到过物体质心并与图象平面平行的平面上。这一过 程中丢失了物体的位置信息。如果物体离光轴较远,弱透视带来的误差是很大的。在平行透 视中,投影过程仍可分为两步,第一步仍是把物体平行投影到过质心且与象平面平行的平面 上,不过这次的投影线不是平行于光轴,而是平行于质心 G 和焦心 C 的连线 CG。 容易得到平行透视的公式为 = − + = − + 0 0 0 0 0 0 0 0 1 1 Z Y Z Y Y Z y Z X Z X X Z x (B.20) 其中(X0,Y0,Z0)为质心的三维坐标。 为将该模型写成与透视投影类似的形式,我们令 − − = 0 0 0 0 0 0 0 0 0 0 0 1 1 0 Z Y Z Y X Z X Ppp (B.21)
则 。即使考虑了摄象机的内外参数,二维点与三维点间的对应关系也 仍是线性的。 最后我们也来看看平行透视引入的误差。令(X,Y,Z)2=(X0+△X,Y0+△YZ0+△Z),我们用 与上节类似的方法得到 X--0Z+X o+△X z+△z|Y+△Y 0y-2。z+y X △Z(△z X+△X1 Zo Z+Ao AZ △YZY△Z 可以看到,像点误差是三维点误差的二阶无穷小。而在弱透视的情况下,像点误差是三 维点误差的一阶无穷小。这说明,平行透视确实是比弱透视更好的近似 图B4是各种线性近似和透视模型的比较。从图中可看到,各模型的近似程度和我们前 面的分析是一致的。 Forth wp app Ip mage plane average depth plane 图B4透视模型及其各种线性近似的比较 图中xm、xw、x和xp分别是物体上的三维点M在正投影、弱透视、平行透视和透视投 231
231 则 = 1 1 Z Y X y P x s pp 。即使考虑了摄象机的内外参数,二维点与三维点间的对应关系也 仍是线性的。 最后我们也来看看平行透视引入的误差。令(X,Y,Z)T=(X0+X,Y0+Y,Z0+Z)T,我们用 与上节类似的方法得到 + + − + + − = − + − + − + + − + = − − + − + − + + + = − = 3 0 2 0 0 2 0 3 0 2 0 0 2 0 0 0 0 0 0 0 0 0 0 2 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 Z Z O Z Z Z Y Z Y Z Z Z O Z Z Z X Z X Z Z Y Z Y Y Z X Z X X Y Y Z X X Z Z Z Z Z Z Y Z Y Y Z X Z X X Y Y Z X X Z Z merror m p m p p 可以看到,像点误差是三维点误差的二阶无穷小。而在弱透视的情况下,像点误差是三 维点误差的一阶无穷小。这说明,平行透视确实是比弱透视更好的近似。 图 B.4 是各种线性近似和透视模型的比较。从图中可看到,各模型的近似程度和我们前 面的分析是一致的。 图 B.4 透视模型及其各种线性近似的比较 图中 xorth、xwp、xpp 和 xp 分别是物体上的三维点 M 在正投影、弱透视、平行透视和透视投
影下的投影点。G为物体的质心。 透视投影还有一种误差更小的线性近似,即正透视( orthoperspective)。同样从两阶段 过程来考虑,正透视与平行透视的区别在于第一阶段的投影平面不是与图象平面平行,而是 经过质心和CG(即焦心和质心的连线)垂直。它也可被看作以下三步操作的合成 1.摄象机绕焦心C旋转,直至光轴与CG重合 2.进行弱透视投影 3.将摄象机旋转回原位置,这引起图象平面上的一个仿射变换。 正透视的数学表示形式很复杂,在这里就不给出其公式了。 B.24仿射摄象机 观察在正投影、弱透视和平行透视下的投影矩阵,我们发现它们都具有如下的形式: P1P12P13P14 P4=|P21P2P23P2 000 PA是一3*4矩阵,它决定了一个三维空间到二维平面的线性映射(用齐次坐标表示), 所以我们把PA称为仿射摄象机。与透视投影矩阵类似,PA也可相差一个尺度因子,因此它 只有8个自由参量。它可由4组二维点和三维点的对应决定 如果用非齐次坐标,仿射摄象机可表示为 m=TAM+ta (B.23) 其中TA为一2*3矩阵,其元素TP/P3,而tA为二维向量[P1P34P2P4 仿射摄象机的一个重要性质是保平行性:三维空间的平行线投影为二维空间的平行线 这和透视投影是不同的。证明很简单:设M1(入)=M+λ*u和M1(μ)=M+μ如是三维空间的两 平行线,其中u是三维方向向量,λ和μ是直线参数。投影结果为m1()=(TAM+tA)+TAu和 m2(μ)=(TAM+tA)+uTAu,显然它们都平行于方向向量TAu 仿射摄象机的另一个重要性质是它把三维点集的质心投影为对应二维投影点的质心。这 也是透视投影不具有的性质 仿射摄象机的缺点是几何意义不明显。它当然是前几节介绍的各种透视投影线性近似的 推广。这种推广可按下面两种方式来理解 (1)允许三维物体作某种非刚性变形。实际上,如果对P右乘DsMt 这样的三 维仿射变换,其中M为3*3矩阵,而t为三维列向量,相乘的结果仍是仿射摄象机 (2)无需标定摄象机内参数。实际上,对P左乘B=「Bb 这样的二维仿射变换 其中B1为2*2矩阵,而b为二维列向量,相乘的结果也仍是仿射摄象机。 即使不标定摄象机的内参数,我们仍能从图象中提取出如平行性、定长度比这样的仿射 度量。对于某些视觉任务来说,这样的仿射度量就足够了。 最后需要指出的是仿射摄象机是实际摄象机的近似。它只在感兴趣目标的深度变化相对 232
232 影下的投影点。G 为物体的质心。 透视投影还有一种误差更小的线性近似,即正透视(orthoperspective)。同样从两阶段 过程来考虑,正透视与平行透视的区别在于第一阶段的投影平面不是与图象平面平行,而是 经过质心和 CG(即焦心和质心的连线)垂直。它也可被看作以下三步操作的合成: 1. 摄象机绕焦心 C 旋转,直至光轴与 CG 重合; 2. 进行弱透视投影; 3. 将摄象机旋转回原位置,这引起图象平面上的一个仿射变换。 正透视的数学表示形式很复杂,在这里就不给出其公式了。 B.2.4 仿射摄象机 观察在正投影、弱透视和平行透视下的投影矩阵,我们发现它们都具有如下的形式: = 34 21 22 23 24 11 12 13 14 0 0 0 p p p p p p p p p PA (B.22) PA 是一 3*4 矩阵,它决定了一个三维空间到二维平面的线性映射(用齐次坐标表示), 所以我们把 PA 称为仿射摄象机。与透视投影矩阵类似,PA 也可相差一个尺度因子,因此它 只有 8 个自由参量。它可由 4 组二维点和三维点的对应决定。 如果用非齐次坐标,仿射摄象机可表示为 m=TAM+tA (B.23) 其中 TA 为一 2*3 矩阵,其元素 Tij=Pij/P34,而 tA 为二维向量[P14/P34,P24/P34] T。 仿射摄象机的一个重要性质是保平行性:三维空间的平行线投影为二维空间的平行线。 这和透视投影是不同的。证明很简单:设 M1()=Ma+*u 和 M1()=Mb+*u 是三维空间的两 平行线,其中 u 是三维方向向量,和是直线参数。投影结果为 m1()=(TAMa+tA)+TAu 和 m2()=(TAMb+tA)+ TAu,显然它们都平行于方向向量 TAu。 仿射摄象机的另一个重要性质是它把三维点集的质心投影为对应二维投影点的质心。这 也是透视投影不具有的性质。 仿射摄象机的缺点是几何意义不明显。它当然是前几节介绍的各种透视投影线性近似的 推广。这种推广可按下面两种方式来理解: (1) 允许三维物体作某种非刚性变形。实际上,如果对 PA 右乘 = 03 1 T M t D 这样的三 维仿射变换,其中 M 为 3*3 矩阵,而 t 为三维列向量,相乘的结果仍是仿射摄象机。 (2) 无需标定摄象机内参数。实际上,对 PA 左乘 = 02 1 1 T B b B 这样的二维仿射变换, 其中 B1 为 2*2 矩阵,而 b 为二维列向量,相乘的结果也仍是仿射摄象机。 即使不标定摄象机的内参数,我们仍能从图象中提取出如平行性、定长度比这样的仿射 度量。对于某些视觉任务来说,这样的仿射度量就足够了。 最后需要指出的是仿射摄象机是实际摄象机的近似。它只在感兴趣目标的深度变化相对
其深度而言可忽略不计时才适用 B3透视投影下的外极线几何 本节我们介绍透视投影下的外极线几何,并讨论其概念和数学表示 B31外极线几何中的概念 外极线几何讨论的是两摄象机图象平面间的关系。考虑图B.5中的两个摄象机。设C 为第一个摄象机的焦心,C为第二个摄象机焦心;m为第一个摄象机图象平面I上的点,m 为其在第二个摄象机图象平面I上的对应点(即两者是同一三维点M分别在两个像平面上 的投影)。则m'必然位于该像平面内由m决定的一条直线lm上。其中lm3是I和由三维点M、 两焦心C、C决定的平面π(称为外极平面)的交线。这是因为在I上的投影点是m的三维 点必然在射线CM上,而CM在I上的投影为lm'。lm称为m决定的外极线。不仅如此, 我们还发现,I上所有的外极线交于同一点e,此点称为外极点。它是CC和I的交点。这 可以这样解释:任给I上一点m,它在P上决定的外极线lm是I与πm的交线,其中πm是由 m决定的外极平面。这样所有的πm形成过CC的平面族,这个平面族与CC的交点位于所 有外极线上,因而是外极点e’。由于两摄象机的地位是完全对称的,因而类似的分析可发现, I上任一点m在I上决定一条外极线lm,I上所有外极线交于外极点ee和e'都在直线CC 上。m、m、C和C四点共面(其中m和m3是对应点),这被称为共面约束。它在已知摄 象机内参数的情况下从运动求解结构中有重要作用 图B.5外极线几何 利用外极线的概念可大大减少在两幅图象间匹配对应点的计算量。由于I中点m在I 中的对应点在由m决定的外极线上,因此搜索空间的维数由二维降为一维。该约束称为外 233
233 其深度而言可忽略不计时才适用。 B.3 透视投影下的外极线几何 本节我们介绍透视投影下的外极线几何,并讨论其概念和数学表示。 B.3.1 外极线几何中的概念 外极线几何讨论的是两摄象机图象平面间的关系。考虑图 B.5 中的两个摄象机。设 C 为第一个摄象机的焦心,C’为第二个摄象机焦心;m 为第一个摄象机图象平面 I 上的点,m’ 为其在第二个摄象机图象平面 I’上的对应点(即两者是同一三维点 M 分别在两个像平面上 的投影)。则 m’必然位于该像平面内由 m 决定的一条直线 lm’上。其中 lm’是 I’和由三维点 M、 两焦心 C、C’决定的平面(称为外极平面)的交线。这是因为在 I 上的投影点是 m 的三维 点必然在射线 CM 上,而 CM 在 I’上的投影为 lm’。 lm’称为 m 决定的外极线。不仅如此, 我们还发现,I’上所有的外极线交于同一点 e’,此点称为外极点。它是 CC’和 I’的交点。这 可以这样解释:任给 I 上一点 m,它在 I’上决定的外极线 lm’是 I’与m的交线,其中m是由 m 决定的外极平面。这样所有的m 形成过 CC’的平面族,这个平面族与 CC’的交点位于所 有外极线上,因而是外极点 e’。由于两摄象机的地位是完全对称的,因而类似的分析可发现, I’上任一点 m’在 I 上决定一条外极线 lm’,I 上所有外极线交于外极点 e。e 和 e’都在直线 CC’ 上。m、m’、C 和 C’四点共面(其中 m 和 m’是对应点),这被称为共面约束。它在已知摄 象机内参数的情况下从运动求解结构中有重要作用。 图 B.5 外极线几何 利用外极线的概念可大大减少在两幅图象间匹配对应点的计算量。由于 I 中点 m 在 I’ 中的对应点在由 m 决定的外极线上,因此搜索空间的维数由二维降为一维。该约束称为外