Part0:The Background:Projective Geometry, Transformations and Estimation(1)

1. Projective Geometry and Transformations of 2D

——2D摄影几何和变换

射影几何的概念和表示法是多视图几何分析的核心, 使用齐次坐标就能用线性矩阵方程来表示非线性映射(例如透视投影).

1.1 平面几何(Planar Geometry)

Point is Vector, Symmetric matrix is Conic.

1.2 2D射影平面(2D Projective Plane)

x=(x,y)T in IR2\textit{\textbf{x}}=(x,y)^T\ in\ \textit{\textbf{IR}}^2

1.2.1 Points and Lines

这种等价关系下的矢量等价类被称为齐次矢量,射影空间 IP2=IR3(0,0,0)T\textit{\textbf{IP}}^2=\textit{\textbf{IR}}^3-(0,0,0)^T
ax+by+c=0 ax+by+c=0
line:(a,b,c)Tk(a,b,c)T\\line:(a,b,c)^T~k(a,b,c)^T
point:(x,y)T(kx,ky,k)T\\point:(x,y)^T~(kx,ky,k)^T
Result 1:
xTl=0\textit{\textbf{x}}^T\textit{\textbf{l}}=0, dof=2([x,yx, y] or {a:b:ca :b :c});
Result 2:
x=l×l,l=x×x\textit{\textbf{x}}= \textit{\textbf{l}}\times\textit{\textbf{l}}', \textit{\textbf{l}}= \textit{\textbf{x}}\times\textit{\textbf{x}}';

1.2.2 Ideal Points and the Line at Infinity

由平行线交点定义 <idel points>,再由 <idel points> 定义 <infinity line>,<infinity line> 可以看作 <lines direction>集合;任意两条直线都相交于一点,而任意两个相异的点都在一条直线上;
x=l×l=ijkabcabc \textit{\textbf{x}}= \textit{\textbf{l}}\times\textit{\textbf{l}}'= \left| \begin{array}{ccc} i & j & k \\ a & b & c \\ a & b & c' \\ \end{array} \right|
i=(1,0,0),j=(0,1,0),k=(0,0,1) \\\textit{\textbf{i}}=(1,0,0), \textit{\textbf{j}}=(0,1,0),\textit{\textbf{k}}=(0,0,1)
xidel in ll×l=(0,0,1)(a,b,c)=(b,a,0)=xidelldir \\\textit{\textbf{x}}_{idel}\ in\ \textit{\textbf{l}}_\infty \rightarrow \textit{\textbf{l}}_\infty\times \textit{\textbf{l}}=(0,0,1)(a,b,c)=(b,-a,0)=\textit{\textbf{x}}_{idel} \rightarrow \textit{\textbf{l}}_{dir} \\
射影平面模型:
Part0:The Background:Projective Geometry, Transformations and Estimation(1)
两相异射线共处于一张平面上,而任何两张相异平面相交于一条射线; 表示理想点的射线和表示无穷远直线平面都与该平面平行;
Result 3:
(Dual)2维射影几何中的任何定理都有一个对应的对偶定理,它可以通过互换原定理中点和线的作用而导出;

1.2.3 Conics and Dual Conics

非退化二次曲线是不同方向的平面与圆锥相交所产生的截线,退化的二次曲线由过锥顶的平面产生,五点定义一条二次曲线:
ax2+bxy+cy2+dx+ey+f=0 a\textit{\textbf{x}}^2+b\textit{\textbf{xy}}+c\textit{\textbf{y}}^2+d\textit{\textbf{x}}+e\textit{\textbf{y}}+f=0
xTCx=0 \\\textit{\textbf{x}}^T\textbf{C}\textit{\textbf{x}}=0
C=[ab/2d/2b/2ce/2d/2e/2f] \\\textbf{C}= \left[ \begin{array}{ccc} a & b/2 & d/2 \\ b/2 & c & e/2 \\ d/2 & e/2 & f \\ \end{array} \right]
零空间拟合几何实体:
scalefactor:{a:b:c:d:e:f} scale factor:\{a:b:c:d:e:f\}
c=(a,b,c,d,e,f)T \textit{\textbf{c}}=(a,b,c,d,e,f)^T
[xi2xiyiyi2xiyi1]c=0 \left[ \begin{array}{ccccc} x^2_i & x_iy_i & y^2_i & x_i & y_i & 1 \end{array} \right]\textit{\textbf{c}}=0
Result 4:
(Tangent)过(非退化)二次曲线C\textbf{C}上点x\textit{\textbf{x}}的切线l\textit{\textbf{l}}l=Cx\textit{\textbf{l}}=\textbf{C}\textit{\textbf{x}}确定;
(Dual Conics)lTCl=0\textit{\textbf{l}}^T\textbf{C}^*\textit{\textbf{l}}=0*,C=C1\textbf{C}^*=\textbf{C}^{-1}
(Degenerate Conics)非满秩矩阵C\textbf{C}所定义的二次曲线称作退化二次曲线,退化的点二次曲线包含两条线(秩2)或一条重线(秩1),零矢量x=l×m\textit{\textbf{x}}=\textit{\textbf{l}}\times\textit{\textbf{m}}

1.3 射影变换(Projective Transformations)

射影映射=>保线变换=>射影变换=>单应(homograph)
homography: x=Hx\textit{\textbf{x}}'=\textbf{H}\textit{\textbf{x}} , l=HTl\textit{\textbf{l}}'=\textbf{H}^{-T}\textit{\textbf{l}} , C=HCH1\textbf{C}'=\textbf{H}\textbf{C}\textbf{H}^{-1}, C=HCHT{\textbf{C}^*}'=\textbf{H}\textbf{C}^*\textbf{H}^T (H\textbf{H} - 逆变,H1\textbf{H}^{-1} - 协变);

1.4 变换层次(A Hierarchy of Transformations)

1.4.1 isometric

x=HEx=[Rt0T1]x \textit{\textbf{x}}'=\textbf{H}_E\textit{\textbf{x}}= \left[ \begin{array}{cc} \textbf{R} & \textit{\textbf t}\\ \textbf 0^T & 1 \end{array} \right]\textit{\textbf{x}}
dof = 3,RTR=RRT=I\textbf{R}^T\textbf{R}=\textbf{R}\textbf{R}^T=\textbf{I},保向等距矩阵R=1|\textbf{R}|=1,逆向等距矩阵R=1|\textbf{R}|=-1,不变量为长度、角度和面积;

1.4.2 similarity

x=HSx=[sRt0T1]x \textit{\textbf{x}}'=\textbf{H}_S\textit{\textbf{x}}= \left[ \begin{array}{cc} \textit{s}\textbf{R} & \textit{\textbf t}\\ \textbf 0^T & 1 \end{array} \right]\textit{\textbf{x}}
dof = 4,不变量为角度和比率,度量结构就是确定到只相差一个相似变换的结构;

1.4.3 affine

x=HAx=[At0T1]x \textit{\textbf{x}}'=\textbf{H}_A\textit{\textbf{x}}= \left[ \begin{array}{cc} \textbf{A} & \textit{\textbf t}\\ \textbf 0^T & 1 \end{array} \right]\textit{\textbf{x}}
A=R(θ)R(ϕ)DR(ϕ), D=[λ100λ2] \textbf{A} = \textbf{R}(\theta)\textbf{R}(-\phi)\textbf{D}\textbf{R}(\phi) ,\ \textbf{D} = \left[ \begin{array}{cc} \lambda_1 & 0\\ 0 & \lambda_2 \end{array} \right]
SVD:
A=UDVT=(UVT)(VDVT)=R(θ)(R(ϕ)DR(ϕ)) \textbf{A} = \textbf{U}\textbf{D}\textbf{V}^T=(\textbf{U}\textbf{V}^T)(\textbf{V}\textbf{D}\textbf{V}^T)= \textbf{R}(\theta)(\textbf{R}(-\phi)\textbf{D}\textbf{R}(\phi))
dof = 6,不变量为平行线、平行线段长度比(直线段的长度缩放仅与该线段方向和缩放方向之间的夹角有关λ12cos2α+λ22sin2α\sqrt{\lambda_1^2\cos^2\alpha+\lambda_2^2\sin^2\alpha})、面积比(detA=λ1λ2detA=\lambda_1\lambda_2);
仿射矩阵 A 被看成是一个旋转(ϕ)(\phi),加上在(已旋转)的xxyy方向分别进行按比例因子(λ1)(\lambda_1)(λ2)(\lambda_2)缩放,再加上一个回转(ϕ)(-\phi)和最后一个旋转(θ)(\theta)的复合变换,(比相似变换多了缩放方向角度ϕ\phi和缩放比率λ1:λ2\lambda_1:\lambda_2两个*度);
Part0:The Background:Projective Geometry, Transformations and Estimation(1)

1.4.4 projective

x=HPx=[At0T1]x \textit{\textbf{x}}'=\textbf{H}_P\textit{\textbf{x}}= \left[ \begin{array}{cc} \textbf{A} & \textit{\textbf t}\\ \textbf 0^T & 1 \end{array} \right]\textit{\textbf{x}}
dof = 8,不变量为交比,射影变换可对消影点建模;

1.4.5 decomposition

H=HSHAHP=[sRtv0T1][K00T1][I0vTv]=[AtvTv] \textbf{H}= \textbf{H}_S\textbf{H}_A\textbf{H}_P= \left[ \begin{array}{cc} \textit{s}\textbf{R} & \textit{\textbf{t}}\setminus\textit{v}\\ \textbf{0}^T & 1 \end{array} \right] \left[ \begin{array}{cc} \textbf{K} & \textbf{0}\\ \textbf{0}^T & 1 \end{array} \right] \left[ \begin{array}{cc} \textbf{I} & \textbf{0}\\ \textit{\textbf{v}}^T & \textit{v} \end{array} \right]= \left[ \begin{array}{cc} \textbf{A} & \textit{\textbf{t}}\\ \textit{\textbf{v}}^T & \textit{v} \end{array} \right]
Part0:The Background:Projective Geometry, Transformations and Estimation(1)
Result 5:
与函数无关的不变量数等于或大于配置的*度数减去变换的*度数;

1.5 1D射影几何(The Projective Geometry of 1D)

xˉ=H2×2xˉ \bar{\textit{\textbf{x}}}'= \textbf{H}_{2\times2}\bar{\textit{\textbf{x}}}
交比是IP1\textbf{IP}^1的基本射影不变量:
Cross(xˉ1,xˉ2,xˉ3,xˉ4)=xˉ1xˉ2xˉ3xˉ4xˉ1xˉ3xˉ2xˉ4 Cross(\bar{\textit{\textbf{x}}}_1,\bar{\textit{\textbf{x}}}_2,\bar{\textit{\textbf{x}}}_3,\bar{\textit{\textbf{x}}}_4)= \frac{|\bar{\textit{\textbf{x}}}_1\bar{\textit{\textbf{x}}}_2||\bar{\textit{\textbf{x}}}_3\bar{\textit{\textbf{x}}}_4|}{|\bar{\textit{\textbf{x}}}_1\bar{\textit{\textbf{x}}}_3||\bar{\textit{\textbf{x}}}_2\bar{\textit{\textbf{x}}}_4|}
xˉixˉj=det[xi1xj1xi2xj2] |\bar{\textit{\textbf{x}}}_i\bar{\textit{\textbf{x}}}_j|= det\left[ \begin{array}{cc} \textit{x}_{i1} & \textit{x}_{j1}\\ \textit{x}_{i2} & \textit{x}_{j2} \end{array} \right]
共点线是直线上共线点的对偶,任何四条共点线都有一个确定的交比;

1.6 射影平面的拓扑(Topology of the Projective Plane)

x=(x1,x2,x3)\textit{\textbf{x}}=(x_1,x_2,x_3)乘以一个非零因子归一化为IR3\textbf{IR}^3单位球面x12+x22+x32=1x^2_1+x^2_2+x^2_3=1,任何相差一个乘数因子-1的矢量x\textit{\textbf{x}}x-\textit{\textbf{x}}表示同一个点,IR3\textbf{IR}^3单位球面和IP2\textbf{IP}^2之间存在一种二对一的对应;由于包含一条逆向路径,所以射影平面不可定向;

1.7 从图像恢复仿射和度量性质(Recovery of Affine and Metric Properties from Images)

射影变换比相似变换多了4个*度:无穷远直线l\textit{\textbf{l}}_\infty(2dof)和在l\textit{\textbf{l}}_\infty上的两个虚圆点(2dof);

1.7.1 the line at infinity

Result 6:
在射影变换H\textbf{H}下,无穷远直线l\textit{\textbf{l}}_\infty为不东直线的充要条件是H\textbf{H}是仿射变换;

1.7.2 recovery of affine properties from images

H=HA[100010l1l2l3] \textbf{H}=\textbf{H}_A \left[ \begin{array}{ccc} 1 & 0 & 0\\ 0 & 1 & 0\\ \textit{l}_1 & \textit{l}_2 & \textit{l}_3 \end{array} \right]
仿射矫正:世界平面上的无穷远直线被影像为该平面的消影线l=(l1,l2,l3)T\textit{\textbf{l}}=(\textit{\textbf{l}}_1,\textit{\textbf{l}}_2,\textit{\textbf{l}}_3)^T,由平行线交点计算,无穷远点由直线上的距离比确定,使消影线映射到规范位置达到仿射矫正HT(l1,l2,l3)T=(0,0,1)T=l\textbf{H}^{-T}(\textit{\textbf{l}}_1,\textit{\textbf{l}}_2,\textit{\textbf{l}}_3)^T=(0,0,1)^T=\textit{\textbf{l}}_\infty

1.7.3 the circular points and their dual

Result 7:
在射影变换的H\textbf{H}下,虚圆点I\textbf{I}J\textbf{J}为不动点的充要条件是H\textbf{H}是相似变换,任何圆都交l\textit{\textbf{l}}_\infty于虚圆点I=(1,i,0)T\textbf{I}=(1,i,0)^TJ=(1,i,0)T\textbf{J}=(1,-i,0)^T
I=HSI=[scosθssinθtxssinθscosθty001][1i0]=seiθ[1i0]=I \textbf{I}= \textbf{H}_S\textbf{I}= \left[ \begin{array}{ccc} \textit{s}\cos\theta & -\textit{s}\sin\theta & \textit{\textbf{t}}_x\\ \textit{s}\sin\theta & \textit{s}\cos\theta & \textit{\textbf{t}}_y\\ 0 & 0 & 1 \end{array} \right] \left[ \begin{array}{c} 1\\ i\\ 0 \end{array} \right]= \textit{se}^{-i\theta} \left[ \begin{array}{c} 1\\ i\\ 0 \end{array} \right]= \textbf{I}
与虚圆点对偶的退化二次曲线(detC=0det\textbf{C}^*_\infty=0):
C=IJT+JIT=[100010000] \textbf{C}^*_\infty=\textbf{IJ}^T+\textbf{JI}^T= \left[ \begin{array}{ccc} 1 & 0 & 0\\ 0 & 1 & 0\\ 0 & 0 & 0 \end{array} \right]

1.7.4 angles on the projective plane

cosθ=l1m1+l2m2(l12+l22)(m12+m22)cosθ=lTCm(lTCl)(mTCm) \cos\theta=\frac{\textit{l}_1\textit{m}_1+\textit{l}_2\textit{m}_2}{\sqrt{(\textit{l}_1^2+\textit{l}_2^2)(\textit{m}_1^2+\textit{m}_2^2)}} \rightarrow \cos\theta=\frac{\textit{\textbf{l}}^T\textbf{C}^*_\infty\textit{\textbf{m}}}{\sqrt{(\textit{\textbf{l}}^T\textbf{C}^*_\infty\textit{\textbf{l}})(\textit{\textbf{m}}^T\textbf{C}^*_\infty\textit{\textbf{m}}})}
Result 8:
一旦二次曲线C\textbf{C}^*_\infty在射影平面上被辨认,那么欧氏角和长度比可以用来测量,lTCm\textit{\textbf{l}}^T\textbf{C}^*_\infty\textit{\textbf{m}}在射影框架下不变,lTCm=0\textit{\textbf{l}}^T\textbf{C}^*_\infty\textit{\textbf{m}}=0,则直线l\textit{\textbf{l}}m\textit{\textbf{m}}(共轭)正交;

1.7.5 recovery of metric properties from images

C=(HPHAHS)C(HPHAHS)T=(HPHA)(HSCHS)(HATHPT)=(HPHA)(C)(HATHPT)=[KKTKKTvvTKKTvTKKTv] {\textbf{C}^*_\infty}'=(\textbf{H}_P\textbf{H}_A\textbf{H}_S)\textbf{C}^*_\infty(\textbf{H}_P\textbf{H}_A\textbf{H}_S)^T \\=(\textbf{H}_P\textbf{H}_A)(\textbf{H}_S\textbf{C}^*_\infty\textbf{H}_S)(\textbf{H}_A^T\textbf{H}_P^T) \\=(\textbf{H}_P\textbf{H}_A)(\textbf{C}^*_\infty)(\textbf{H}_A^T\textbf{H}_P^T) \\= \left[ \begin{array}{cc} \textbf{KK}^T & \textbf{KK}^T\textbf{\textit{v}}\\ \textbf{\textit{v}}^T\textbf{KK}^T & \textbf{\textit{v}}^T\textbf{KK}^T\textbf{\textit{v}} \end{array} \right]
Result 9:
在射影平面上,一旦C\textbf{C}^*_\infty被辨认,那么射影失真可以矫正到相差一个相似变换,C\textbf{C}^*_\infty可由两个直角、椭圆、两个已知长度比例(l\textit{\textbf{l}}_\infty已知)确定,或五个直角直接确定;

1.8 二次曲线的其它性质(More Properties of Conics)

1.8.1 the pole-polar relationship

极点x\textit{\textbf{x}}关于二次曲线C\textbf{C}的极线l=Cx\textit{\textbf{l}}=\textbf{C}\textit{\textbf{x}}C\textbf{C}交于两点,C\textbf{C}过这两点的两条切线相交于x=C1l\textit{\textbf{x}}=\textbf{C}^{-1}\textit{\textbf{l}};点x\textit{\textbf{x}}C\textbf{C}上,则极线就是过x\textit{\textbf{x}}点的切线;yTl=yTCx=0\textit{\textbf{y}}^T\textit{\textbf{l}}=\textit{\textbf{y}}^T\textbf{C}\textit{\textbf{x}}=0x\textit{\textbf{x}}y\textit{\textbf{y}}共轭(互在彼此的极线上);
Part0:The Background:Projective Geometry, Transformations and Estimation(1)

1.8.2 classification of conics

C=UTDUC=UTCU1=D \textbf{C}=\textbf{U}^T\textbf{D}\textbf{U} \rightarrow \textbf{C}'=\textbf{U}^{-T}\textbf{C}\textbf{U}^{-1}=\textbf{D}
D=diag(ε1d1,ε2d2,ε3d3)=diag(s1,s2,s3)Tdiag(ε1,ε2,ε3)diag(s1,s2,s3)si2=di,εi=±1 or 0 \textbf{D}=diag(\varepsilon_1d_1,\varepsilon_2d_2,\varepsilon_3d_3)= diag(s_1,s_2,s_3)^T diag(\varepsilon_1,\varepsilon_2,\varepsilon_3) diag(s_1,s_2,s_3) \\s^2_i=d_i,\varepsilon_i=\pm1\ or\ 0
Part0:The Background:Projective Geometry, Transformations and Estimation(1)
点二次曲线的仿射分类:
Part0:The Background:Projective Geometry, Transformations and Estimation(1)

1.9 不动点与直线(Points and Lines)

He=λe\textbf{H}\textit{\textbf{e}}=\lambda\textit{\textbf{e}},特征矢量对应不动点,HTe=λe\textbf{H}^{-T}\textit{\textbf{e}}=\lambda\textit{\textbf{e}},特征矢量对应不动直线,不动直线不是点点不动,不动点才映射为自身;

1.10 总结

  1. 引入齐次坐标表示2D射影平面
  2. 定义了理想点和无穷远直线
  3. 通过二次曲线介绍对偶及退化二次曲线概念
  4. 射影变换的四个变换层次(欧氏、相似、仿射、射影)及*度和不变量
  5. 消影线确定可以实现仿射矫正,虚圆点对偶二次曲线确定可以实现相似矫正
  6. 极点与极线概念对二次曲线分类
  7. 以射影矩阵的特征矢量描述不动点与不动直线