MathLabs

几何学

射影几何

研究无穷远点与透视的几何学,平行线在地平线上相交。

直观平行线在哪里相交?

站在两条又长又直的铁轨之间向远处望去:两条实际上永不相交的铁轨,看起来却在地平线上的一点汇聚。画家正是利用这一技巧,把建筑物的平行边画得在一个消失点处相交。射影几何认真对待这种视觉现象:它为每个方向添加一个"无穷远点",使得每一对直线——即使是平行线——都恰好相交于一点。这一个额外的想法统一了透视绘画、相机几何,以及一些关于点、线与圆锥曲线最古老的定理。

展示关联结构的交互式点线网络图
法诺射影平面 PG(2,2)\mathrm{PG}(2,2):共 77 个点与 77 条线(内切圆为第七条线),每条线上恰有 33 点,每点恰在 33 条线上。

大学射影平面上的齐次坐标

定义: 实射影平面

实射影平面 RP2\mathbb{RP}^2 上的一个点是非零三元组 (X,Y,Z)(X, Y, Z) 的等价类,记作 [X:Y:Z][X:Y:Z] ,其中两个三元组表示同一点,当且仅当其中一个是另一个的非零数乘。

[X:Y:Z]∼[λX:λY:λZ],λ≠0[X : Y : Z] \sim [\lambda X : \lambda Y : \lambda Z], \qquad \lambda \neq 0

普通的(仿射)平面通过把 (x,y)(x, y) 映为 [x:y:1][x : y : 1] 而嵌入 RP2\mathbb{RP}^2 。满足 Z=0Z = 0 的点不对应任何普通点;它们构成无穷远直线,对应于方向——每一族平行线对应一个无穷远点。

(x,y)↦[x:y:1](x, y) \mapsto [x : y : 1]

定义: 点线对偶

RP2\mathbb{RP}^2 中的一条直线是满足线性方程 aX+bY+cZ=0aX + bY + cZ = 0 (系数 [a:b:c][a:b:c] 固定,同样只在相差一个非零倍数的意义下确定)的点 [X:Y:Z][X:Y:Z] 的集合。由于点 [X:Y:Z][X:Y:Z] 落在直线 [a:b:c][a:b:c] 上当且仅当 aX+bY+cZ=0aX+bY+cZ=0 ,而这个方程对两个三元组完全对称,所以关于点与直线的每一条真命题都有一条对偶命题,只需把"点"与"直线"、"落在...上"与"经过"互换即可得到。

aX+bY+cZ=0aX + bY + cZ = 0
射影平面中的点线对偶
关于点的命题关于直线的对偶命题
两个不同的点确定唯一一条直线两条不同的直线确定唯一一个点(它们的交点)
三点共线三线共点
点 [X:Y:Z][X:Y:Z] 落在直线 [a:b:c][a:b:c] 上直线 [a:b:c][a:b:c] 经过点 [X:Y:Z][X:Y:Z]

进阶交比与经典构形定理

定义: 交比

对于四个共线的不同点 A,B,C,DA, B, C, D ,交比 (A,B;C,D)(A,B;C,D) 是 CC 与 DD 分割线段 ABAB 所得的两个带符号分割比之比。它是射影几何的基本数值不变量:与距离或普通比值不同,它在透视绘图下保持不变。

(A,B;C,D)=CA‾CB‾/DA‾DB‾(A,B;C,D) = \dfrac{\overline{CA}}{\overline{CB}} \Big/ \dfrac{\overline{DA}}{\overline{DB}}

进阶关键定理

如果 RP2\mathbb{RP}^2 的射影变换 φ\varphi 将四个共线点 A,B,C,DA, B, C, D 映为像直线上的 A′,B′,C′,D′A', B', C', D' ,那么交比保持一致: (A,B;C,D)=(A′,B′;C′,D′)(A,B;C,D) = (A',B';C',D') 。

为什么成立?

射影变换由齐次坐标上的可逆线性映射表示,而交比仅由把两个点表示成另外两个点的线性组合的系数构成;由于线性映射精确保持线性组合,它不能改变这些系数,因此交比得以保持。

证明

把四个共线点表示为位于同一个二维子空间中的齐次坐标向量 A,B,C,D∈R3A, B, C, D \in \mathbb{R}^3 ,并把 φ\varphi 表示为可逆的 3×33\times 3 矩阵 MM ,使得对向量为 PP 的点施加 φ\varphi 得到齐次坐标 MPMP 。

因为 A,B,C,DA, B, C, D 共线,可以选取代表元使得 C=λ1A+μ1BC = \lambda_1 A + \mu_1 B 且 D=λ2A+μ2BD = \lambda_2 A + \mu_2 B ,其中 λ1,μ1,λ2,μ2\lambda_1, \mu_1, \lambda_2, \mu_2 为标量;交比 (A,B;C,D)(A,B;C,D) 完全由这四个标量定义,具体为 μ1/λ1μ2/λ2\dfrac{\mu_1/\lambda_1}{\mu_2/\lambda_2} 。

施加线性映射 MM 得到 MC=λ1(MA)+μ1(MB)MC = \lambda_1(MA) + \mu_1(MB) 与 MD=λ2(MA)+μ2(MB)MD = \lambda_2(MA) + \mu_2(MB) ,因为矩阵乘法对线性组合满足分配律;因此正是同样的标量 λ1,μ1,λ2,μ2\lambda_1, \mu_1, \lambda_2, \mu_2 把 φ(C)\varphi(C) 与 φ(D)\varphi(D) 表示为 φ(A)\varphi(A) 与 φ(B)\varphi(B) 的组合。

由于交比只依赖于这些标量,而它们在 MM 下保持不变,我们得出 (φ(A),φ(B);φ(C),φ(D))=(A,B;C,D)(\varphi(A),\varphi(B);\varphi(C),\varphi(D)) = (A,B;C,D) ,这正是所要证明的不变性。

设两个三角形 ABCABC 与 A′B′C′A'B'C' 满足直线 AA′AA' 、BB′BB' 、CC′CC' 相交于同一点 OO (两三角形关于一点透视)。那么三点 P=BC∩B′C′P = BC \cap B'C' 、 Q=CA∩C′A′Q = CA \cap C'A' 、R=AB∩A′B′R = AB \cap A'B' 共线(两三角形关于一条直线透视)。

为什么成立?

如果只在平面内讨论,由于牵涉许多不同的直线,这个命题看起来很微妙。把图形提升到三维空间后,每一个关联关系都变成了两个平面的交线,而两个不同的平面总是交于一条直线,这就迫使这三个点落在同一条直线上。

证明

把两个三角形看作位于 R3\mathbb{R}^3 中平面 π\pi 内,并在 π\pi 上方构造一个空间构形:一个不在 π\pi 内的点 O^\widehat{O} ,以及位于空间中两个不同平面内的三角形 A^B^C^\widehat{A}\widehat{B}\widehat{C} 与 A′^B′^C′^\widehat{A'}\widehat{B'}\widehat{C'} ,使得直线 A^A′^\widehat{A}\widehat{A'} 、B^B′^\widehat{B}\widehat{B'} 、C^C′^\widehat{C}\widehat{C'} 都经过 O^\widehat{O} ,并且把这个空间图形投影回 π\pi 后能还原出关于 OO 透视的原始三角形 ABCABC 与 A′B′C′A'B'C' 。

在这个空间图形中,直线 B^C^\widehat{B}\widehat{C} 与直线 B′^C′^\widehat{B'}\widehat{C'} 都位于由 O^,B^,C^\widehat{O}, \widehat{B}, \widehat{C} 张成的平面内(因为 B′^\widehat{B'} 与 C′^\widehat{C'} 分别位于经过 O^\widehat{O} 与 B^,C^\widehat{B}, \widehat{C} 的直线上),所以这两条直线相交于一点 P^\widehat{P} ;类似地,Q^\widehat{Q} 与 R^\widehat{R} 也作为边 CACA 与 ABAB 对应的交点存在于空间中。

三点 P^,Q^,R^\widehat{P}, \widehat{Q}, \widehat{R} 都位于包含三角形 A^B^C^\widehat{A}\widehat{B}\widehat{C} 的平面内(因为每个点都由其一对边构造而成),同时也位于包含 A′^B′^C′^\widehat{A'}\widehat{B'}\widehat{C'} 的平面内。因此 P^,Q^,R^\widehat{P}, \widehat{Q}, \widehat{R} 位于这两个平面的交线上,因为空间中任意两个不同的平面恰好交于一条直线。

把这个空间构形投影回平面 π\pi ,会把 P^,Q^,R^\widehat{P}, \widehat{Q}, \widehat{R} 变为 P,Q,RP, Q, R 并保持共线性,因为从一点出发的投影把任意直线映为直线。因此 P,Q,RP, Q, R 在 π\pi 中共线,这正是德萨格定理。

大学实际应用与典型例题

射影几何是计算机视觉与摄影测量学(利用射影相机模型与齐次坐标从二维照片中恢复三维场景结构)、计算机图形学(任何三维渲染流水线中的透视投影矩阵都是一种射影变换)以及编码理论(有限射影平面给出用于数据存储与网络传输的射影里德-穆勒纠错码)的基础。

例题: 求消失点

用针孔相机拍摄两条平行的铁轨。在照片中,一条铁轨经过像素点 (0,390)(0, 390) 和 (300,420)(300, 420) ,另一条铁轨经过像素点 (0,480)(0, 480) 和 (300,465)(300, 465) 。用齐次坐标把每条铁轨建模为一条射影直线,并求这两条像直线相交的消失点。

解答

把每个像素写成齐次点 [x:y:1][x:y:1] 。直线上两点的叉积给出该直线的齐次坐标 [a:b:c][a:b:c] ;对第一条铁轨,[0:390:1]×[300:420:1]=[−30:300:−117000]∼[1:−10:3900][0:390:1]\times[300:420:1] = [-30:300:-117000] \sim [1:-10:3900] ,因此第一条铁轨是直线 X−10Y+3900=0X - 10Y + 3900 = 0 。

对第二条铁轨的点 [0:480:1][0:480:1] 与 [300:465:1][300:465:1] 重复同样的叉积运算,得到 [15:300:−144000]∼[1:20:−9600][15:300:-144000] \sim [1:20:-9600] ,即直线 X+20Y−9600=0X + 20Y - 9600 = 0 。

消失点就是这两条直线的交点:两式相减消去 XX ,得到 30Y−13500=030Y - 13500 = 0 ,故 Y=450Y = 450 ;代回可得 X=10(450)−3900=600X = 10(450) - 3900 = 600 。

因此消失点位于像素 (600,450)(600, 450) :这正是现实中永不相交的两条铁轨在照片中看似汇聚的点,恰如射影几何所预言的——平行线在无穷远直线上相交,并被相机的透视映射为图像中的一个有限点。

例题: 数轴上的交比

在数轴上,点 A,B,C,DA, B, C, D 的带符号坐标分别为 0,1,3,60, 1, 3, 6 。计算交比 (A,B;C,D)(A,B;C,D) 。

解答

利用定义 (A,B;C,D)=CA‾CB‾/DA‾DB‾(A,B;C,D)=\dfrac{\overline{CA}}{\overline{CB}} \Big/ \dfrac{\overline{DA}}{\overline{DB}} ,先计算带符号长度:CA‾=0−3=−3\overline{CA} = 0-3=-3 ,CB‾=1−3=−2\overline{CB}=1-3=-2 ,DA‾=0−6=−6\overline{DA}=0-6=-6 ,DB‾=1−6=−5\overline{DB}=1-6=-5 。

构造两个比:CA‾CB‾=−3−2=32\dfrac{\overline{CA}}{\overline{CB}} = \dfrac{-3}{-2} = \dfrac{3}{2} 与 DA‾DB‾=−6−5=65\dfrac{\overline{DA}}{\overline{DB}} = \dfrac{-6}{-5} = \dfrac{6}{5} 。

用第一个比除以第二个比:(A,B;C,D)=3/26/5=32⋅56=1512=54(A,B;C,D) = \dfrac{3/2}{6/5} = \dfrac{3}{2}\cdot\dfrac{5}{6} = \dfrac{15}{12} = \dfrac{5}{4} 。

所以 (A,B;C,D)=54(A,B;C,D) = \dfrac{5}{4} ;由于交比是射影不变量,根据上面证明的不变性定理,对 A,B,C,DA, B, C, D 施加任何射影变换所得到的四个新点,其交比仍然恰好是 54\dfrac{5}{4} 。

下列哪个齐次三元组表示与 [2:−4:6][2 : -4 : 6] 相同的射影点?

射影平面中一条直线的齐次方程为 2X−Y+4Z=02X - Y + 4Z = 0 。下列哪个仿射点(取 Z=1Z=1)落在这条直线上?

在实射影平面中,"三点共线"的对偶命题是什么?

在摄影测量中,现实中平行的建筑物两条边在照片里表现为两条线段,延长后会交于同一个像素点。这一交点用哪个射影几何概念来解释?

参考文献

  1. H. S. M. Coxeter (1974). Projective Geometry
  2. Jürgen Richter-Gebert (2011). Perspectives on Projective Geometry: A Guided Tour Through Real and Complex Geometry
  3. Wikipedia contributors (2026). Pascal's theorem — Wikipedia
  4. Wikipedia contributors (2026). Lam's problem — Wikipedia