文章目录
2.2 2D投影平面
众所周知,平面中的一个点可以用 I R 2 \mathcal{\rm IR}^2 IR2中的坐标对 ( x , y ) (x,y) (x,y)表示。 因此,通常用 I R 2 \mathcal{\rm IR}^2 IR2识别平面。 将 I R 2 \mathcal{\rm IR}^2 IR2视为向量空间,坐标对 ( x , y ) (x,y) (x,y)是向量 - 将点标识为向量。 在本节中,我们将介绍平面上点和线的齐次坐标表示方法。
行向量和列向量
我们考虑向量空间之间的线性映射,并将这些映射表示为矩阵。
通常情况下,矩阵和向量的乘积是另一个向量,这个像被我们称为映射下的像。
相信大家应该在线性代数学过像与原像的概念
这引出了“列”和“行”向量之间的区别,因为矩阵可以在右侧乘以列向量而在左侧乘以行向量。
例如:
[ a b c d ] [ c d ] \left[ \begin{matrix} a & b \\ c & d\end{matrix} \right] \left[ \begin{matrix} c \\ d \end{matrix} \right] [acbd][cd]
[ c d ] [ a b c d ] \left[ \begin{matrix} c & d \end{matrix} \right]\left[ \begin{matrix} a & b \\ c & d\end{matrix} \right] [cd][acbd]
默认情况下,几何实体将由列向量表示。 诸如 x \rm x x 的粗体符号总是表示列向量,并且其转置是行向量 x T \rm x^T xT。 根据惯例,平面中的点将由列向量 ( x , y ) T (x,y)^{\rm T} (x,y)T表示,而不是其转置,行向量 ( x , y ) (x,y) (x,y)。 我们记 x = ( x , y ) T {\rm x} = (x,y)^{\rm T} x=(x,y)T,该等式的两边代表列向量。
点和线
线的齐次表示
平面中的线由诸如 a x + b y + c = 0 ax+by+c=0 ax+by+c=0的等式表示, a a a, b b b和 c c c的不同选择产生不同的线。因此,线可以自然地由向量 ( a , b , c ) T (a,b,c)^{\rm T} (a,b,c)T表示。
线和向量 ( a , b , c ) T (a,b,c)^{\rm T} (a,b,c)T之间的对应关系不是一对一的,因为对于任何非零常数 k k k,线 a x + b y + c = 0 ax+by+c=0 ax+by+c=0和 ( k a ) x + ( k b ) y + ( k c ) = 0 (ka)x+(kb)y+(kc)=0 (ka)x+(kb)y+(kc)=0是同一条直线。 因此对于任何非零 k k k,向量 ( a , b , c ) T (a,b,c)^{\rm T} (a,b,c)T和 k ( a , b , c ) T k(a,b,c)^{\rm T} k(a,b,c)T表示相同的线。
实际上,通过整体缩放相关的两个这样的向量被认为是等价的。 在这种等价关系下的等价类向量被称为齐次向量。 任何特定的向量 ( a , b , c ) T (a,b,c)^{\rm T} (a,b,c)T都是等价类的代表。 I R 3 \mathcal{\rm IR}^3 IR3中的向量等价类集合 - ( 0 , 0 , 0 ) T (0,0,0)^{\rm T} (0,0,0)T形成投影空间 I P 2 \mathcal{\rm IP}^2 IP2。 符号- ( 0 , 0 , 0 ) T (0,0,0)^{\rm T} (0,0,0)T表示排除了与任何行不对应的向量(也就是没有一条直线可以通过这个向量表示)。
点的齐次表示
当且仅当 a x + b y + c = 0 ax+by+c=0 ax+by+c=0时,我们可以说,点 x = ( x , y ) T {\rm x} = (x,y)^{\rm T} x=(x,y)T位于线 l = ( a , b , c ) T {\rm l}=(a,b,c)^{\rm T} l=(a,b,c)T上。这可以用表示向量的内积来表示点,即 ( x , y , 1 ) ( a , b , c ) T = ( x , y , z ) l = 0 (x,y,1)(a,b,c)^{\rm T}=(x,y,z) {\rm l}=0 (x,y,1)(a,b,c)T=(x,y,z)l=0; 也就是说, I R 2 \mathcal{\rm IR}^2 IR2中的点 ( x , y ) T (x,y)^{\rm T} (x,y)T通过加最后一维坐标为1从而表示为三维向量。
注意,对于任何非零常数 k k k和线 l \rm l l,等式 ( k x , k y , k ) l = 0 (kx,ky,k){\rm l}=0 (kx,ky,k)l=0当且仅当 ( x , y , z ) l = 0 (x,y,z) {\rm l}=0 (x,y,z)l=0时,因此,考虑k的变化值的向量集 ( k x , k y , k ) T (kx,ky,k)^{\rm T} (kx,ky,k)T是在 I R 2 \mathcal{\rm IR}^2 IR2中的点 ( x , y ) T (x,y)^{\rm T} (x,y)T的表示。
因此,正如线一样,点也可以由齐次矢量表示。
表示点的任意齐次向量具有 x = ( x 1 , x 2 , x 3 ) T {\rm x}=(x_1,x_2,x_3)^{\rm T} x=(x1,x2,x3)T的形式,表示在 I R 2 {\rm IR}^2 IR2中的点 ( x 1 / x 3 , x 2 / x 3 ) T (x_1/x_3,x_2/x_3)^{\rm T} (x1/x3,x2/x3)T。
因此,作为齐次矢量的点也是 I P 2 \rm IP^2 IP2的元素。
一个有一个简单的方程来确定一个点何时在一条线上,即
结论1 点 x \rm x x在直线 l \rm l l上当且仅当 x T l = 0 \rm x^Tl=0 xTl=0
值得注意的是 x T l \rm x^Tl xTl是两个向量 x \rm x x和 l \rm l l的内积或标量积,即 x T l = l T x = x ⋅ l \rm x^Tl=l^Tx=x\cdot l xTl=lTx=x⋅l。
一般我们更喜欢 l T x \rm l^Tx lTx,偶尔也会用 ⋅ \cdot ⋅去表示内积。
要注意,我们把 x = ( x 1 , x 2 , x 3 ) T {\rm x}=(x_1,x_2,x_3)^{\rm T} x=(x1,x2,x3)T称为点的齐次坐标,这是三维矢量。把 ( x , y ) T (x,y)^{\rm T} (x,y)T称为非齐次坐标,这是二维矢量。
自由度
为指定一个点,我们必须提供两个值,就是它的 x − x- x−坐标和 y − y- y−坐标。那么对于直线呢?这里一条直线,也是由两个参数指定(两个独立的比率 { a : b : c } \{a:b:c\} {a:b:c}),因而有两个自由度。
有人疑惑道,这不是三个未知的参数么,怎么会说是两个自由度。这里,我们可以把c看成是已知量,即为1。考虑到前面说的齐次坐标的等价性。我们可以把表示直线的 ( a , b , c ) T (a,b,c)^{\rm T} (a,b,c)T化成等价的齐次坐标表达 ( a / c , b / c , 1 ) T (a/c,b/c,1)^{\rm T} (a/c,b/c,1)T,这里值得注意的是其中 c c c不等于0才会成立。当然了,我们这里是取 c c c不等于0为例子。前面的意思是这两个独立的比率是两两之间的,只要存在两个比率,就能确保出 a , b , c a,b,c a,b,c三个数字,这两个比率就是自由度。
我们可以知道的是,在非齐次坐标中,两个参数可以取为直线的梯度和 y y y轴上的截距,即所谓的斜截式方程。

其中m就是斜率,也就是 a a a与 b b b的比值, c c c是截距,即在 y y y轴上的截距。
直线的交点
给定两直线 I = ( a , b , c ) T {\rm I}=(a,b,c)^{\rm T} I=(a,b,c)T和 I ′ = ( a ′ , b ′ , c ′ ) T {\rm I}^\prime=(a^\prime,b^\prime,c^\prime)^{\rm T} I′=(a′,b′,c′)T,我们希望找到它们的交点。 定义向量 x = l × l ′ \rm x=l\times l^\prime x=l×l′,其中 × \times ×表示向量积或叉积。
由三重纯量积等式: l ⋅ ( l × l ′ ) = l ′ ⋅ ( l × l ′ ) \rm l\cdot (\rm l\times l^\prime)=l^\prime\cdot(l\times l^\prime) l⋅(l×l′)=l′⋅(l×l′),可以推算出 l T x = l ′ T x = 0 \rm l^{\rm T}x=l^{\prime T}x=0 lTx=l′Tx=0。
因此,如果 x \rm x x被认为是一个点, 然后 x \rm x x位于线 l \rm l l和 l ′ \rm l^\prime l′上,因此是两线的交点。 由此可见:
结论2 两直线 l \rm l l 和 l ′ \rm l^\prime l′ 的交点是点 x = l × l ′ \rm x=l\times l^\prime x=l×l′
注意,对于两条线的交点,该表达式之所以简洁是因为使用线和点的齐次矢量表示的结果。
小例子1
求直线 x = 1 x=1 x=1和 y = 1 y=1 y=1的交点.直线 x = 1 x=1 x=1等价于 − 1 x + 1 = 0 -1x+1=0 −1x+1=0,故而有齐次表示 l = ( − 1 , 0 , 1 ) T \rm l=(-1,0,1)^{\rm T} l=(−1,0,1)T。直线 y = 1 y=1 y=1等价于 − 1 y + 1 = 0 -1y+1=0 −1y+1=0,齐次表示是 l ′ = ( 0 , − 1 , 1 ) T \rm l^\prime=(0,-1,1)^{\rm T} l′=(0,−1,1)T,通过结论2,我们可以得到两个的交点为:
x = l × l ′ = ∣ i j k − 1 0 1 0 − 1 1 ∣ = ( 1 1 1 ) \rm x=l\times l^\prime=\left | \begin{matrix} {\rm i} & {\rm j}&{\rm k} \\ -1 & 0 & 1 \\ 0 & -1 & 1 \end{matrix} \right |=\left( \begin{matrix} 1 \\ 1\\1 \end{matrix} \right) x=l×l′=∣∣∣∣∣∣i−10j0−1k11∣∣∣∣∣∣=⎝⎛111⎠⎞
它是非齐次坐标点 ( 1 , 1 ) T (1,1)^{\rm T} (1,1)T,正是所求的。
点的连线
过两点 x \rm x x和 x ′ \rm x^\prime x′的直线表示式可以完全类似推导出。定义直线 l = x × x ′ \rm l=x \times x^\prime l=x×x′,很容易验证得点 x \rm x x和 x ′ \rm x^\prime x′都在直线 l \rm l l上。
小证明 我们可以知道,三重纯量积等式: x ⋅ ( x × x ′ ) = x ′ ⋅ ( x × x ′ ) = 0 \rm x\cdot(x\times x^\prime)=x^\prime \cdot (x \times x^\prime)=0 x⋅(x×x′)=x′⋅(x×x′)=0,假设定义矢量 l = x × x ′ \rm l=x\times x^\prime l=x×x′,很容易得到。 x T l = x ′ T l = 0 \rm x^Tl=x^{\prime T}l=0 xTl=x′Tl=0,如果把 l \rm l l看成一条直线,则可以知道点 x \rm x x和 x ′ \rm x^{\prime} x′都在这条直线上,将这两点连线就是直线 l \rm l l,因而得证。
结论3 过两点 x \rm x x和 x ′ \rm x^{\prime} x′的直线是 l = x × x ′ \rm l=x \times x^\prime l=x×x′
理想点和无穷远线
平行线的交点
考虑两条平行线 a x + b y + c = 0 ax+by+c=0 ax+by+c=0和 a x + b y + c ′ = 0 ax+by+c'=0 ax+by+c′=0。它们可以用矢量 l = ( a , b , c ) T {\rm l}=(a,b,c)^T l=(a,b,c)T和 l ′ = ( a , b , c ′ ) T {\rm l}^\prime=(a,b,c^\prime)^T l′=(a,b,c′)T表示,其中它们前两个坐标一样。由结论2可以得到两条直线的交点是 l × l ′ = ( c ′ − c ) ( b , − a , 0 ) T {\rm l}\times {\rm l}^\prime = (c^\prime-c)(b,-a,0)^T l×l′=(c′−c)(b,−a,0)T,忽略标量因子 ( c ′ − c ) (c^\prime-c) (c′−c),得到点 ( b , − a , 0 ) T (b,-a,0)^T (b,−a,0)T。
如果试图得到该点的非齐次表示,就会得到 ( b / 0 , a / 0 ) (b/0,a/0) (b/0,a/0),只能解释为无穷大坐标。一般具有齐次坐标 ( x , y , 0 ) (x,y,0) (x,y,0)的点不与 I R 2 \mathcal{\rm IR}^2 IR2。这一观察与通常平行线交于无穷远概念吻合。
小题目
考察两直线 x = 1 x=1 x=1和 x = 2 x=2 x=2。两线平行所以交于“无穷远点”.利用齐次坐标表示则为 l = ( − 1 , 0 , 1 ) T {\rm l}=(-1,0,1)^T l=(−1,0,1)T和 l ′ = ( − 1 , 0 , 2 ) T {\rm l}^\prime=(-1,0,2)^T l′=(−1,0,2)T。再有结论2可以得到:
x = l × l ′ = ∣ i j k − 1 0 1 − 1 0 2 ∣ = ( 0 1 0 ) {\rm x}={\rm l\times l^\prime}=\left|\begin{matrix}i&j&k\\-1&0&1\\-1&0&2\end{matrix}\right|=\begin{pmatrix}0\\1\\0\end{pmatrix} x=l×l′=∣∣∣∣∣∣i−1−1j00k12∣∣∣∣∣∣=⎝⎛010⎠⎞
这是在 y y y轴上的无穷远点。
理想点与无穷远线
当 x 3 ≠ 0 x_3\neq0 x3̸=0时,齐次矢量 x = ( x 1 , x 2 , x 3 ) T {\rm x}=(x_1,x_2,x_3)^T x=(x1,x2,x3)T对应于 I R 2 {\rm IR}^2 IR2的有限点。我们把最后坐标为 x 3 = 0 x_3=0 x3=0的点加入 I R 3 {\rm IR}^3 IR3。所扩展的空间是所有齐次3D矢量的集合,称为射影空间 I P 2 {\rm IP}^2 IP2。
关于射影空间和欧氏空间,查看博主的这篇博文,无处不在的射影空间。
最后只需要记住,最后一维坐标 x 3 = 0 x_3=0 x3=0的点被我们称为理想点,或无穷远点。
所有理想点的集合写成 ( x 1 , x 2 , 0 ) T (x_1,x_2,0)^T (x1,x2,0)T,并由比率 x 1 : x 2 x_1:x_2 x1:x2指定一个具体的点。
这个集合是在一条直线上,我们称为无穷远线。用矢量 l ∞ = ( 0 , 0 , 1 ) T {\rm l}_{\infty}=(0,0,1)^T l∞=(0,0,1)T表示。可以验证, ( 0 , 0 , 1 ) ( x 1 , x 2 , 0 ) T = 0 (0,0,1)(x_1,x_2,0)^T=0 (0,0,1)(x1,x2,0)T=0
由结论2可以知道,直线 l = ( a , b , c ) T {\rm l}=(a,b,c)^T l=(a,b,c)T与 l ∞ {\rm l}_{\infty} l∞交于理想点 ( b , − a , 0 ) T (b,-a,0)^T (b,−a,0)T(因为 ( b , − a , 0 ) l = 0 (b,-a,0)\rm l=0 (b,−a,0)l=0)。任何与 l \rm l l平行的线 l ′ = ( a , b , c ′ ) {\rm l}^\prime=(a,b,c^\prime) l′=(a,b,c′)都会与 l ∞ {\rm l}_{\infty} l∞交于同一理想点 ( b , − a , 0 ) T (b,-a,0)^T (b,−a,0)T,而与 c ′ c^\prime c′取值无关。
非齐次表示下, ( b , − a ) T (b,-a)^T (b,−a)T是直线相切的矢量,与直线法线 ( a , b ) T (a,b)^T (a,b)T正相交,因而它代表直线的方向。
当直线方向改变,理想点 ( b , − a , 0 ) T (b,-a,0)^T (b,−a,0)T也会沿着 l ∞ {\rm l}_{\infty} l∞变化。基于此,无穷远线被看做平面上所有直线方向的集合。
引入无穷远点概念将与直线相交的概念简化。
在射影平面 I P 2 {\rm IP}^2 IP2中,两条相异直线都相交于一点而任意两个相异的点都在一条直线上。这在标准欧式几何 I R 2 \mathrm{IR}^2 IR2中不成立,平行线就是特例。
射影几何中,无穷远点(理想点)和普通点无区别,为了区分,我们将无穷远线看成射影空间的一条特殊直线。
射影平面的模型
将 I P 2 {\rm IP}^2 IP2看成 I R 3 \mathrm{IR}^3 IR3中一种射线的集合。集合中所有矢量 k ( x 1 , x 2 , x 3 ) T k(x_1,x_2,x_3)^T k(x1,x2,x3)T当 k k k变化时形成过原点的射线。这样的射线在 I P 2 {\rm IP}^2 IP2却是一个点。
在此模型中, I P 2 {\rm IP}^2 IP2中的直线是过原点的平面,可以验证两相异的射线共处在一张平面上,而任何两个相异平面总相交于一条射线。
两个相异点确定一条直线,而两个相异直线总交于一点。
点与线可以用平面 x 3 = 1 x_3=1 x3=1与这些射线和平面集相交得到,如图1所示,理想(无穷远)点的射线和表示 I ∞ {\rm I}_{\infty} I∞的平面都与 x 3 = 1 x_3=1 x3=1平行。

图1,射影平面模型: I P 2 {\rm IP}^2 IP2中的点和线分别表示为 I R 3 \rm IR^3 IR3中过原点的射线和平面。 x 1 x 2 x_1x_2 x1x2所构成的平面,该平面上面的射线表示理想点,即无穷远点。该平面也被称为 I ∞ {\rm I}_{\infty} I∞
在上面的图像中,两个点分别是两条过原点的射线,而这两条射线在原点处相交,两条射线和原点构成的平面 σ \sigma σ则是在射影空间中表示为一条直线,而且是过这两个点的直线。图像平面 π \pi π则是 x 3 = 1 x_3=1 x3=1的平面。当 x 3 = 1 x_3=1 x3=1的平面与前面所述的平面 σ \sigma σ相交时,得到了直线 l \rm l l 则是表示该直线的齐次坐标表示,而且最后一维的坐标 x 3 = 1 x_3=1 x3=1。而且 l \rm l l在 σ \sigma σ上。当我们变换 l \rm l l上的 x 3 x_3 x3坐标,则构成的就是平面 σ \sigma σ,也就是 l \rm l l的同等齐次表示的线集合。
对偶(Duality)
直线与点的基本关联方程式 l T x = 0 \rm l^Tx=0 lTx=0是对称的。因为 l T x = 0 \rm l^Tx=0 lTx=0意味着 x T l = 0 \rm x^Tl=0 xTl=0。其中点和线位置互换。所以结论2和3中点线作用互换,本质一样。因此引出一个定理:对偶原理(duality principle)。
结论4 对偶原理 二维射影几何中任何定理都有一个对应的对偶定理,它可以通过互换原定理中的点和线作用而导出。
一旦原定理被证明,则无需证明其对偶。对偶证明不过是原定理证明的对偶。
二次曲线和对偶二次曲线
二次曲线由平面上二次方程描述。在欧式几何中,二次曲线主要有三类:双曲线(hyperbola), 椭圆(ellipse), 和抛物线(parabola,后面将定义的所谓退化二次曲线除外)。
经典理论中,三类曲线是不同方向的平面与圆锥相交所产生的截线(退化的二次曲线由过锥顶的平面产生)。在2D射影几何中,所有非退化二次曲线在射影变换下都等价。

1是抛物线,2是圆和椭圆,3是双曲线
齐次坐标中的二次曲线方程是
a x 2 + b x y + c y 2 + d x + e y + f = 0 ax^2+bxy+cy^2+dx+ey+f=0 ax2+bxy+cy2+dx+ey+f=0
对应于一个二次多项式。
通过替代 x ↦ x 1 / x 3 , y ↦ x 2 / x 3 x \mapsto x_1/x_3,y \mapsto x_2/x_3 x↦x1/x3,y↦x2/x3,”齐次化“得到:
(1) a x 1 2 + b x 1 x 2 + c x 2 2 + d x 1 x 3 + e x 2 x 3 + f x 3 2 = 0 ax_1^2+bx_1x_2+cx_2^2+dx_1x_3+ex_2x_3+fx_3^2=0\tag{1} ax12+bx1x2+cx22+dx1x3+ex2x3+fx32=0(1)
或表述为矩阵形式
x T C x = 0 x^TCx=0 xTCx=0
其中二次曲线系数矩阵 C C C为
C = [ a b / 2 d / 2 b / 2 c e / 2 d / 2 e / 2 f ] C=\begin{bmatrix}a&b/2&d/2\\b/2&c&e/2\\d/2&e/2&f\end{bmatrix} C=⎣⎡ab/2d/2b/2ce/2d/2e/2f⎦⎤
注意这个二次曲线的系数矩阵 C C C是对称矩阵。标量乘法不影响上面方程,所以该矩阵是一条二次曲线的齐次表示。
二次曲线有五个自由度,可视为比率 a : b : c : d : e : f {a:b:c:d:e:f} a:b:c:d:e:f或等价地视为对称矩阵六个元素减去比例因子。
五点定义一条二次曲线
求过点集 x i {\rm x}_i xi的二次曲线,如何确定该二次曲线?我们可以从式(1)看出,每一个点 x i {\rm x}_i xi都给二次系数一个约束,即如果二次曲线过点 ( x i , y i ) T (x_i,y_i)^T (xi,yi)T,那么
a x i 2 + b x i y i + c y i 2 + d x i + c y i + f = 0 ax_i^2+bx_iy_i+cy_i^2+dx_i+cy_i+f=0 axi2+bxiyi+cyi2+dxi+cyi+f=0
我们把这个约束重新成两个向量的内积,即
( x i 2 x i y i y i 2 x i y i 1 ) c = 0 \begin{pmatrix}x_i^2&x_iy_i&y_i^2&x_i&y_i&1\end{pmatrix}{\rm c}=0 (xi2xiyiyi2xiyi1)c=0
其中 c = ( a , b , c , d , e , f ) T c=(a,b,c,d,e,f)^T c=(a,b,c,d,e,f)T是把二次曲线 C C C表示成一个六维矢量。
说不定有人联系到了叉乘和反对称矩阵的互相转换,不过这里是对称矩阵而非反对称。
我们知道方程式中有五个未知数(自由度6维有一个是比例因子可以忽略),需要的是五个不同的关于该未知数的等式联立才能求解。
所以我们需要在集合 x i {\rm x}_i xi中找到该曲线过的五个点,然后将约束堆积起来则得到:
[ x 1 2 x 1 y 1 y 1 2 x 1 y 1 1 x 2 2 x 2 y 2 y 2 2 x 2 y 2 1 x 3 2 x 3 y 3 y 3 2 x 3 y 3 1 x 4 2 x 4 y 4 y 4 2 x 4 y 4 1 x 5 2 x 5 y 5 y 5 2 x 5 y 5 1 ] c = 0 \begin{bmatrix}x_1^2&x_1y_1&y_1^2&x_1&y_1&1\\x_2^2&x_2y_2&y_2^2&x_2&y_2&1\\x_3^2&x_3y_3&y_3^2&x_3&y_3&1\\x_4^2&x_4y_4&y_4^2&x_4&y_4&1\\x_5^2&x_5y_5&y_5^2&x_5&y_5&1\end{bmatrix}{\rm c}=0 ⎣⎢⎢⎢⎢⎡x12x22x32x42x52x1y1x2y2x3y3x4y4x5y5y12y22y32y42y52x1x2x3x4x5y1y2y3y4y511111⎦⎥⎥⎥⎥⎤c=0
因此二次曲线是 5 × 6 5\times 6 5×6矩阵的零矢量(回亿一下矩阵方程式求解【博文系列已描述过线性代数矩阵运算相关】,零空间,相当于 A x = 0 Ax=0 Ax=0)。
这个式子表明了一条二次曲线是由一般位置的五点唯一确定(相差尺度因子)。
二次曲线的切线
在齐次坐标系,求过点 x {\rm x} x的二次曲线的切线 l {\rm l} l。
结论5 过(非退化)二次曲线 C C C 上点 x {\rm x} x 的切线 l {\rm l} l 由 l = C x {\rm l}=Cx l=Cx 确定。
证明
假设 l = C x {\rm l}=Cx l=Cx成立,所以 l T x = x T C x = 0 {\rm l}^Tx=\rm x^TCx=0 lTx=xTCx=0,若能证明直线 l \rm l l仅与二次曲线交于一点,那么它就是切线。否则若还能交于另一个点 y \rm y y,则有 y T C y = 0 y^TCy=0 yTCy=0和 x T C y = l T y = 0 x^TCy={\rm l}^Ty=0 xTCy=lTy=0。
所以我们有
x T C x + x T C ( α y ) + ( α y ) T C x + ( α y ) T C ( α y ) = 0 x^T C x+x^TC(\alpha y)+(\alpha y)^TCx+(\alpha y)^TC(\alpha y)=0 xTCx+xTC(αy)+(αy)TCx+(αy)TC(αy)=0
⇔ ( x T + ( α y ) T ) ( C x + C ( α y ) ) = 0 \Leftrightarrow (x^T+(\alpha y)^T)(Cx+C (\alpha y))=0 ⇔(xT+(αy)T)(Cx+C(αy))=0
⇔ ( x + α y ) T C ( x + α y ) = 0 \Leftrightarrow (x+\alpha y)^TC(x+\alpha y)=0 ⇔(x+αy)TC(x+αy)=0
对于所有 α \alpha α成立,这表明连接 x \rm x x和 y \rm y y的整条直线 l = C x \rm l=Cx l=Cx就在该二次曲线 C \rm C C上,则 C \rm C C是退化的(后面有描述)。
对偶二次曲线
上面的二次曲线 C C C被确切称为点二次曲线,因为定义的是点的方程。由结论4的对偶定理可知,应当有由直线方程定义的二次曲线。
这种对偶(或线)二次曲线也由一个 3 × 3 3\times 3 3×3矩阵表示,被记为 C ∗ C^* C∗。即二次曲线 C C C的切线 l \rm l l满足 l T C ∗ l = 0 {\rm l}^TC^*{\rm l}=0 lTC∗l=0。其中 C ∗ C^* C∗表示为 C C C的伴随矩阵,即 C ∗ = det ( C ) C − T C^*=\det (C)C^{-T} C∗=det(C)C−T。对非奇异对称矩阵 C C C有 C ∗ = C − 1 C^*=C^{-1} C∗=C−1。
当 C C C满秩时,对偶二次曲线方程可直接推导:由结论5得到过 C C C上的点 x {\rm x} x的切线是 l = C x {\rm l}=Cx l=Cx,换句话说直线 l {\rm l} l与 C C C相切与点 x \rm x x,其中 x = C − 1 l \rm x=C^{-1}{\rm l} x=C−1l。
由于 x T C x = 0 x^TCx=0 xTCx=0所以 ( C − 1 l ) T C ( C − 1 l ) = l T C − 1 l = 0 (C^{-1}{\rm l})^TC(C^{-1}{\rm l}) = {\rm l}^TC^{-1}{\rm l}=0 (C−1l)TC(C−1l)=lTC−1l=0,因为 C C C是对称的所以 C − T = C − 1 C^{-T}=C^{-1} C−T=C−1,所以得到最后的结果。
对偶二次曲线也称为二次曲线的包络(conic envelopes)包络线(中文维基),由图2说明。对偶二次曲线有五个自由度,与点二次曲线类似,由一般位置上的五条直线定义一条对偶二次曲线。

图2。(a) 满足 x T C x = 0 x^TCx=0 xTCx=0的点 x {\rm x} x在一条点二次曲线上。(b)满足 l T C ∗ l = 0 {\rm l}^TC^*{\rm l}=0 lTC∗l=0的直线 l {\rm l} l是点二次曲线 C C C的切线,即二次曲线 C C C是直线 l {\rm l} l的包络。
关于包络,下面是维基百科的一种动图,很形象。

退化的二次曲线
非满秩矩阵 C C C所定义的二次曲线被才称为退化二次曲线,退化的点二次曲线包含两条线(秩为2)或一条重线(秩为1)。
退化的线二次曲线包含两个点(秩为2)或一个重点(秩为1)。例如,线二次曲线 C ∗ = x y T + y x T C^*=xy^T+yx^T C∗=xyT+yxT的秩为2,并且由一切过点 x x x或 y y y的直线组成。
注意对非可逆矩阵而言, ( C ∗ ) ∗ ≠ C (C^*)^*\ne C (C∗)∗̸=C。

图像来源于维基百科,维基百科认为,如果把二次曲线的定义改成平面与对偶二次曲线在三维空间中的交点。如果平面穿过圆锥的定点,则二次曲线是退化的二次曲线。
实际上,退化的二次曲线可以是两条线,可以是平行的也可以是不平行的两条线,还可以是一条线(可以是两条重合的线或者一条线和无穷远线的结合),还可以是一个点(实际上两个复共轭线,目前为止我们不会讨论复平面,所以可以说在本系列博文来说,退化二次曲线是前两类)。
小题目
二次曲线
C = l m T + m l T \rm C=lm^T+ml^T C=lmT+mlT
由 l \rm l l和 m \rm m m两线组成。 l \rm l l上的点满足 l T x = 0 {\rm l^T}x=0 lTx=0,因而在二次曲线上,由于 x T C x = ( x T l ) ( m T x ) + ( x T m ) ( l T x ) = 0 x^TCx=(x^T{\rm l})({\rm m}^Tx)+(x^T{m})({\rm l}^Tx)=0 xTCx=(xTl)(mTx)+(xTm)(lTx)=0。类似地, m T x = 0 {\rm m^T}x=0 mTx=0同样满足 x T C x = 0 x^TCx=0 xTCx=0。
矩阵 C C C是秩为2的对称矩阵,它的零矢量为 x = l × m x={\rm l\times m} x=l×m,它是和 m \rm m m的交点。
博文总结和内容概览
结论
结论名 | 结论内容 |
---|---|
点在直线上 | 点 x \rm x x在直线 l \rm l l上当且仅当 x T l = 0 \rm x^Tl=0 xTl=0 |
直线求交点 | 两直线 l \rm l l 和 l ′ \rm l^\prime l′ 的交点是点 x = l × l ′ \rm x=l\times l^\prime x=l×l′ |
过两点的直线 | 过两点 x \rm x x和 x ′ \rm x^{\prime} x′的直线是 l = x × x ′ \rm l=x \times x^\prime l=x×x′ |
对偶原理 | 二维射影几何中任何定理都有一个对应的对偶定理,它可以通过互换原定理中的点和线作用而导出。 |
非退化二次曲线的切线 | 过(非退化)二次曲线 C C C 上点 x {\rm x} x 的切线 l {\rm l} l 由 l = C x {\rm l}=Cx l=Cx 确定。 |
应记内容
知识点 | 内容 |
---|---|
直线方程 | a x + b y + c = 0 ax+by+c=0 ax+by+c=0 |
直线的齐次表示 | ( a , b , c ) T , k ( a , b , c ) T (a,b,c)^{\rm T},k(a,b,c)^{\rm T} (a,b,c)T,k(a,b,c)T |
− ( 0 , 0 , 0 ) T -(0,0,0)^{\rm T} −(0,0,0)T | 不与 ( 0 , 0 , 0 ) T (0,0,0)^{\rm T} (0,0,0)T任何直线对应 |
点的齐次表示 | ( x , y , 1 ) T , k ( x , y , 1 ) T , ( x 1 , x 2 , x 3 ) T (x,y,1)^{\rm T},k(x,y,1)^{\rm T},(x_1,x_2,x_3)^T (x,y,1)T,k(x,y,1)T,(x1,x2,x3)T |
理想点 | ∀ ( x 1 , x 2 , x 3 ) , x 3 = 0 , x 1 , x 2 \forall (x_1,x_2,x_3),x_3=0,x_1,x_2 ∀(x1,x2,x3),x3=0,x1,x2不全为0 |
射影空间 I P 2 {\rm IP}^2 IP2 | I R 3 − ( 0 , 0 , 0 ) T {\rm IR}^3-(0,0,0)^T IR3−(0,0,0)T中矢量等价类集合 |
I P 2 {\rm IP}^2 IP2的点 | I R 3 {\rm IR}^3 IR3中是经过原点的射线 |
I P 2 {\rm IP}^2 IP2的直线 | I R 3 {\rm IR}^3 IR3中的平面 |
二次曲线方程式 | a x i 2 + b x i y i + c y i 2 + d x i + c y i + f = 0 ax_i^2+bx_iy_i+cy_i^2+dx_i+cy_i+f=0 axi2+bxiyi+cyi2+dxi+cyi+f=0 |
二次曲线系数矩阵 | C = [ a b / 2 d / 2 b / 2 c e / 2 d / 2 e / 2 f ] C=\begin{bmatrix}a&b/2&d/2\\b/2&c&e/2\\d/2&e/2&f\end{bmatrix} C=⎣⎡ab/2d/2b/2ce/2d/2e/2f⎦⎤ |