资讯动态

平面射影几何进阶:齐次坐标、交比、对合与极点极线实战解析

发布时间:2026/10/13 23:14:48 来源:尧图企业网站定制
上一篇我们聊了中心投影、无穷远点和交比的基本思想今天把平面射影几何里更硬核的部分补上齐次坐标的运算、交比的参数计算、对合以及二次曲线的极点极线。很多朋友学到平面射影几何的第二阶段往往卡在“定理看得懂题目算不动”的尴尬里尤其是从“欧氏几何思维”切换到“射影几何思维”的那一刻脑子里的平行、垂直、中点突然都不灵了剩下的只有点在直线上、直线过点这类抽象关系。这篇文章的主角是四个词齐次坐标、交比、对合、极点极线。它们共同构成平面射影几何后半程的地基也能帮你真正上手处理共点、共线、二次曲线相关的问题。适合已经了解射影平面基本定义、但对计算和定理理解还浮于表面的读者读完可以直接拿坐标法验证经典结论。1. 先搭骨架齐次坐标与无穷远点1.1 为什么要把平行线硬生生“掰”成交点射影几何最反直觉的地方就是承认无穷远点的存在。在欧氏平面里两条平行线没有交点但当你用中心投影去看一块铺满平行线的地面时它们在照片里交于“视野尽头”的那个点。如果你不想为了每一个画面都重新解释“它们只是看起来相交”最省事的办法就是直接规定所有平行线真的相交交点就在无穷远处。这个规定不是文字游戏而是几何结构的升级。从线性代数角度看射影平面可以看作三维空间里所有过原点的直线组成的集合。一个点用齐次坐标 $(x:y:z)$ 表示其中 $(x,y,z)$ 不同时为零而且 $(x:y:z)$ 和 $(\lambda x:\lambda y:\lambda z)$ 表示同一个点。当 $z0$ 时这个点落在无穷远直线上当 $z\neq 0$ 时它对应普通的仿射点 $(x/z, y/z)$。为什么要引入这样一个“多余”的坐标因为中心投影在欧氏坐标下很难处理而在齐次坐标下投影变换就是一个简单的矩阵乘法。生活化类比普通坐标是站在地面看世界铁轨从脚下延伸到远方看起来是平行的齐次坐标是站到足够高的地方俯视铁轨的物理性质没变但你可以把“远方交汇”这个观察事实直接纳入同一套坐标系。这一下就把平行线合并到交点框架里射影几何的大厦才立得住。1.2 齐次坐标的换算与第一次踩坑很多新手在用齐次坐标时都会踩同一个坑看到 $(1:2:3)$ 就下意识把它当成三维向量 $(1,2,3)$然后按向量加法去算。实际上它在射影平面里是二维点 $(1/3, 2/3)$和 $(3:6:9)$ 完全是同一个点。换算规则很简单当 $z\neq 0$ 时把前两个分量都除以第三个分量就得到仿射坐标当 $z0$ 时它是无穷远点不能执行“除以零”只能保留齐次形式。实际计算中我建议你尽量保留齐次坐标不要急着设 $z1$。为什么因为很多射影性质比如交比、极点极线往往在无穷远点参与时反而显得简洁。如果一开始就归一化你会遗漏 $(x:y:0)$ 这类点。等到最后需要看几何意义时再把有限点的坐标归一化也不迟。另外齐次坐标的“等价类”思想会影响后续所有计算一个向量乘以任意非零常数仍然代表同一个点所以检查“两点是否相同”时不能用普通坐标直接比而要看两个三元组是否成比例。2. 交比四个点怎么排投影都变不了2.1 交比的定义和计算公式交比是射影几何里第一个真正的不变量。直线上有四个点 $A,B,C,D$交比定义为有向线段长度比值的比值$$ (A,B;C,D)\frac{AC/CB}{AD/DB} $$更实用的公式是引入直线上的参数 $t$设四个点的参数分别是 $a,b,c,d$则$$ (A,B;C,D)\frac{(c-a)(d-b)}{(c-b)(d-a)} $$这个公式的好处是不需要关心测量方向只要坐标系一致参数直接代入即可。如果点 $B$ 的参数是无穷大即 $b\to\infty$公式会退化成 $(c-a)/(d-a)$其他情况也可以取极限。为什么不用两条线段长度的简单比值因为中心投影会改变线段长度简单比值不守恒。交比像一个“四把椅子之间的投影不变量”无论你从哪个方向观察四个点的排列扭曲程度都用一个数字固定下来。这里的关键不是“交比等于几”而是“经过射影变换后这个数字不变”。你可以把交比理解成射影世界的“全息签名”。2.2 一个手算实例从齐次坐标到参数化光给公式容易飘我们拿具体数值走一遍。设直线 $l: xy-z0$在上面取四个点$$A(1:0:1),\quad B(0:1:1),\quad C(1:1:2),\quad D(1:-1:0)$$注意 $D$ 的第三坐标是 0所以它是一个无穷远点。此时不能直接设 $z1$必须保留齐次坐标。用 $A,B$ 作为直线的基向量直线上任意点可写为 $P(\lambda,\mu)\lambda A\mu B(\lambda:\mu:\lambda\mu)$。于是每个点对应一个参数比例 $t\mu/\lambda$。逐个对应$A$$(\lambda,\mu)(1,0)$所以 $t0$$B$$(\lambda,\mu)(0,1)$所以 $t\infty$$C$$(1:1:2)$ 要满足 $\lambda1, \mu1$所以 $t1$$D$$(1:-1:0)$ 满足 $\lambda1, \mu-1$所以 $t-1$要求 $(A,B;C,D)$代入公式并用极限处理 $b\infty$。交比退化为$$ (A,B;C,D)\frac{c-a}{d-a}\frac{1-0}{-1-0}-1 $$得出 $-1$说明 $C$ 和 $D$ 调和分割 $A$ 和 $B$。这个例子也展示了为什么齐次坐标里不能随便把所有点都归一到 $z1$——$D$ 是无穷远点但它参与的交比计算非常干净。2.3 调和点列射影几何中最常用的特例当 $(A,B;C,D)-1$ 时称 $C,D$ 调和分割 $A,B$这四个点组成一个调和点列。调和点列在射影几何里到处都是甚至可以说它是“中等难度的入门钥匙”。最经典的一个调和点列是在普通数轴上取 $A0$$B1$$C$ 是 $AB$ 的中点 $C1/2$$D$ 是无穷远点。这时 $a0,b1,c1/2,d\infty$代入极限公式得到$$ (A,B;C,D)\frac{c-a}{c-b}\frac{1/2}{-1/2}-1 $$所以中点和无穷远点调和分割线段的两个端点。这解释了射影几何里“中点”为什么不是一个看似很强的概念它只是在某个仿射坐标下的特殊调和位置经过射影变换后可能变得面目全非。调和点列的另一个来源是完全四点形。取平面上四个点无三点共线连接所有六条边三组对边的交点会构成对角线点。这些对角线点和原来四条边上的某些交点之间会形成调和关系。这类构造在尺规作图里非常有用不过初学者不必急着背图先记住“交比等于 -1”这个代数特征后面作图题自然能套上去。3. 对合与极点极线二次曲线登场3.1 对合自己就是自己的变换对合involution是一类特殊的射影变换它满足“做两次等于什么都没做”但它本身不是恒等变换。一维射影变换可以用二阶矩阵表示如果矩阵 $A$ 满足 $A^2\lambda I$$\lambda\neq 0$那么它对应的射影变换就是对合。最简单的例子是交换两个基向量$$ (x:y)\mapsto (y:x) $$矩阵是 $\begin{pmatrix}01\10\end{pmatrix}$平方是单位矩阵所以做两次确实回到原点。这个变换的几何意义是直线上的“反射”但不是欧氏反射而是在某个射影坐标下的配对。对合的双重元素是满足 $T(P)P$ 的点。比如在 $(x:y)\mapsto(y:x)$ 中双重元素满足 $xy$所以点 $(1:1)$ 和 $(1:-1)$ 是双重元素。更一般地对合可以由两对对应点完全确定这在作图题中非常强大只要你指定两对点整个对合就被唯一“锁死”了。对合的直观理解可以借用镜子你对着镜子做一次动作看到的是相反的动作再做一次动作指令又回到原来。射影几何里的对合就是这种“对称操作”的抽象版。值得注意的是对合不一定有实数双重元素比如 $(x:y)\mapsto(-y:x)$ 平方后是 $-I$在实数射影平面上没有固定点但作为抽象射影变换它依然成立。3.2 极点极线方程怎么算二次曲线在射影几何里占据中心位置。给定一个对称矩阵 $Q$二次曲线记作$$ X^T Q X0 $$其中 $X(x,y,z)^T$。例如圆 $x^2y^2-z^20$ 对应的 $Q\mathrm{diag}(1,1,-1)$。对于平面上任意一点 $P(x_p:y_p:z_p)$它的极线方程是$$ P^T Q X0 $$即把 $P$ 的坐标代进 $Q$得到一个线性方程。如果 $P$ 恰好在二次曲线上这条极线就是该点的切线如果 $P$ 在曲线外极线是过 $P$ 的两条切线的切点连成的弦。这个“切点弦”性质是作图时最常用的理解方式。举个例子。设曲线 $C: x^2y^2-z^20$取点 $P(1:2:1)$。那么$$ Q P \begin{pmatrix}100\010\00-1\end{pmatrix}\begin{pmatrix}1\2\1\end{pmatrix}(1,2,-1)^T $$所以极线方程为$$ x2y-z0 $$这个结果在普通坐标下就是 $x2y1$看起来像一条直线但它其实经过无穷远点在射影意义上是一条完整的直线。3.3 配极原则把共点共线问题变成矩阵乘法极点极线最漂亮的性质是配极原则如果点 $R$ 在点 $P$ 的极线上那么点 $P$ 也在点 $R$ 的极线上。用矩阵表达就是$$ P^T Q R0 $$因为 $Q$ 是对称矩阵这个式子等价于 $R^T Q P0$所以双向成立。配极原则的威力在于它把几何中的“点在直线上”变成了代数中的“内积为零”。很多原本绕来绕去的共线共点题翻译成矩阵乘法之后只是一页纸的线性代数。比如要证明三个点共线可以证明它们的极线共点要证明三条线共点可以证明对应的极点共线。这种对偶关系是射影几何区别于欧氏几何的核心美感。如果没有配极原则你想验证两个点是否互为配极得先求极线再代入过程一步都不能少有了配极原则直接算 $P^T Q R$ 是不是 0 就行几步搞定。这就体现了矩阵符号的力量。4. 实操两个小题目把上面的工具串起来4.1 题目一验证四点调和上一节我们已经做过一个数值验证这里再完整走一遍流程方便你以后照着做。第一步确定直线和四个点的齐次坐标。第二步选两个方便的点作为基地参数化整条直线。第三步把每个点对应的参数 $t$ 算出来。第四步代入交比公式或极限公式。如果你得到 -1就说明它们调和。实际操作中最容易出错的是第二步参数化时用 $\lambda,\mu$ 而不是直接用坐标比。因为很多点比如无穷远点在一个坐标系下看起来很别扭但在另一个参数系里可能就是个很自然的 $t$ 值。参数化的选择不唯一但交比的结果不会变。你可以选任意两个点作为基算出来的交比都一样。这本身就是交比不变性的又一次体现。4.2 题目二求二次曲线的极线并验证配极再看一个完整例子。给定曲线 $C: x^2y^2-z^20$ 和点 $P(1:2:1)$我们算出它的极线 $l_P: x2y-z0$。现在在 $l_P$ 上取一个点 $R(1:0:1)$验算 $R$ 是否满足 $P^T Q R0$。代入$$ P^T Q R(1,2,1)\begin{pmatrix}100\010\00-1\end{pmatrix}\begin{pmatrix}1\0\1\end{pmatrix} 1 - 1 0 $$成功。所以 $R$ 的极线也应该经过 $P$。计算 $R$ 的极线$$ Q R(1,0,-1)^T $$极线方程为 $x-z0$。把 $P(1:2:1)$ 代入$1-10$确实经过 $P$。这个验证过程虽然简单但完整呈现了配极原则的代数机制矩阵对称性就是几何对偶性的根源。如果你以后遇到要证明“某某直线是某某点的极线”的题目别去硬画图直接写出二次曲线矩阵然后算矩阵乘法。这是我在实际解题中最常用的方法省时且不容易错。4.3 如何用计算机代数系统快速验证如果题目数据复杂手算容易出错。我通常会在纸上推完公式后再用熟悉的数学软件或线性代数库做一遍验算。你只需要把二次曲线矩阵 $Q$、点坐标向量 $p$ 写出来然后用矩阵乘法求出 $lQp$再检查 $l^T p$ 是否等于零实际上 $p^TQp$ 代表点是否在曲线上。整个过程十几行就能完成。举一个思路示例Q diag([1, 1, -1]) p [1, 2, 1] l Q * p # 得到极线方程系数例如 (1, 2, -1)这里的技巧是不要直接在屏幕上画图验证而是把点、线、二次曲线全部用矩阵表示用线性代数工具算交比、求秩、判断三点共线。这个习惯会让你在后面学到更复杂的射影几何时如鱼得水。5. 常见坑与进阶路径5.1 三个最容易让新手翻车的地方第一个坑是把齐次坐标当成普通坐标去比较。比如你觉得 $(1:2:3)$ 和 $(2:4:6)$ 不是同一个点但实际上它们就是同一点只是你习惯了“坐标不同就是不同点”的欧氏思维。第二个坑是认为中点、平行在射影变换下保持不变。中点这个概念只在仿射几何里稳定经历任意射影变换后它可能变成某个奇怪的调和点不再位于线段中央。第三个坑是用极线公式时忽略了 $Q$ 必须是对称矩阵。如果你从一般二次式 $ax^22bxy\cdots$ 转换成矩阵时忘掉因子或者不对称极线就会算错。这三个坑对应的对策分别是多写齐次坐标的比例关系、多做投影变换的数值例题、以及每次写二次曲线矩阵前都确认对称形式。这些建议看起来简单真能坚持下来的话后面做题会顺利很多。5.2 一套适合自学的记号与流程我建议你把射影几何的练习流程固化成先用齐次坐标表示所有点和直线再写出二次曲线矩阵然后把“点在直线上”翻译成 $l^T p0$把“共线”翻译成三个点坐标的行列式为零把“极线”翻译成矩阵乘法。整个过程不要依赖图形图形只在最后检验时用。这个流程的好处是极大降低思考负担。很多人学射影几何到后来不是在学几何而是在学线性代数——这不是坏事。一旦你接受“点就是向量、直线就是线性方程”的视角很多复杂定理会变得异常直白。5.3 下一步可以往哪走平面射影几何的后半程还有几个值得关注的方向一维射影几何与对合的更深入分类二次曲线的射影等价分类射影度量与绝对形以及视觉领域里特别常见的单应矩阵。如果你是为了应用可以去研究图像矫正、相机标定相关的模型那些模型本质上都是平面射影几何的现代版本。就学习顺序来说我建议你先练熟齐次坐标的基本运算再掌握交比与调和点列之后进入极点极线和配极原则。当你发现自己在做共点共线题时已经条件反射地写出矩阵方程就可以进入下一个阶段了。我个人在实际操作中的体会是射影几何最“劝退”的阶段不是定义而是从理解到计算的跨越。每个人都说“交比是不变量”但真让你手算时可能会因为参数选得不好或齐次坐标忘除第三分量而卡住。我的建议是遇到任何经典定理都自己至少做一遍坐标验证哪怕计算繁琐也比光看证明要记得牢。最后再分享一个小技巧验证配极性质时如果结果和你预期不一致先检查二次曲线矩阵是否对称再检查点坐标是否漏了无穷远点这两处占了绝大部分错误来源。

读完文章,也想定制专属网站?

尧图设计师 24 小时内与您沟通定制方案

免费获取报价 →
↑