《多视图几何》中被省略的推导过程(1)

时间:2024-04-04 12:18:52

Multiple View Geometry in Computer Vision省略的推导过程(1)

本文是Jesse Chen的原创文章。

Multiple View Geometry in Computer Vision一书中有几处推导被作者省略了,有几处的结论还很有趣。本文给出了其中两处被省略的推导过程。


顶点为V并与二次曲面Q相切的锥面是一个退化的二次曲面

Result 8.10结论表述

Multiple View Geometry in Computer Vision 2nd Edition的Page 202的Result 8.10是关于二次曲面的切锥面,结论非常简洁,我查了国外关于Multiple View Geometry in Computer Vision的课程,都只是在PPT中列出了这个结论,并没有给出Result 8.10的推导过程。

Result 8.10 The cone with vertex V and tangent to the quadric Q is the degenerate quadric

(1)Qco=(VTQV)Q(QV)(QV)T

Note that QcoV=0, so that V is the vertex of the cone as required. The proof is omitted.

顶点为V并与二次曲面Q相切的锥面是一个退化的二次曲面Qco。注意QcoV=0。因而V正是所要求的锥面的顶点。

《多视图几何》中被省略的推导过程(1)

上图中的点c换成V就是Result 8.10的示意图。

证明: 3维空间中过点X0且方向为X~=(x~,y~,z~,0)T的点可以记为X(t)=X0+tX~。(此处先暂且用X0代替V,后面会在恰当的时候把V换回来)

二次曲面Q的方程为:

(2)XTQX=0

X(t)=X0+tX~带入方程(2)中,可以得到:

(3)(X0+tX~)TQ(X0+tX~)=0

展开方程(3)的左边得到:

(4)t2X~TQX~+t(X~TQX0+X0TQX~)+X0TQX0=0

3D空间的直线和二次曲面相切等价于方程(4)的判别式Δ=b24ac=0,可以进一步得到,

(5)(X~TQX0+X0TQX~)24(X~TQX~)(X0TQX0)=0

方程(5)就是锥面的方程 。展开方程(5)的左边,并将X~=XX0t带入方程(5)的左边得到:

(6)1t2(XX0)TQX0(XX0)TQX0+1t2X0TQ(XX0)X0TQ(XX0)+2t2(XX0)TQX0X0TQ(XX0)4t2(XX0)TQ(XX0)X0TQX0=0

消去方程(6)中的1t2,并将X0=V带入方程(5),经过展开、化简得到:

(7)XTQVXTQV+VTQXVTQX+2XTQVVTQX4XTQXVTQV=0

因为Q=QT,以及R上乘法的可交换性,可以得到:

XT(VTQV)QXXT(QV)(QV)TX=0

所以,顶点为V并与二次曲面Q相切的锥面是一个退化的二次曲面Qco=(VTQV)Q(QV)(QV)T

注意:对于矩阵ARm×nBRn×m,一般情况下AB是不可交换的,但对于c1Rc2Rc1c2是可交换的,c1A也是可交换的。

下面开始推导QcoV=0

QcoV=(VTQV)QV(QV)(QV)TV=QV(VTQV)(QV)(VTQ)V=0

注意:VTQVR

图9.10a的证明

《多视图几何》中被省略的推导过程(1)

Skew-symmetric part. The matrix Fa is skew-symmetric and may be written as
Fa=[xa]×, where xa is the null-vector of Fa. The skew-symmetric part has 2 degrees of freedom and is identified with the point xa.
The relation between the point xa and conic Fs is shown in figure 9.10a. The polar of xa intersects the Steiner conic Fs at the epipoles e and e (the pole–polar relation is described in section 2.2.3(p30)). The proof of this result is left as an exercise.

证明目标:Fs上过e的切线为Fsexa点,xaTFse=0。同理,xaTFse=0

证明: xaFa的零矢量,
Faxa=0xaTFa=0
Fs=FFT2
Fxa=FTxaxaTF=xaTFT
直线la=Fsxa=12(F+FT)xa=Fxa=FTxa
e在直线la上,所以

laTe=xaTFsTe=xaTFse=xaTFe

又基本矩阵的性质知 Fe=0,所以xaTFse=0

同理,由e在直线la上,可以得到xaTFse=0