直线的方程与性质

本文介绍计算几何中常用的直线方程和直线性质。下面用圆括号(x,y)表示点的坐标,用方括号[x,y]表示方向矢量。

一、平面直线

1. 两点式

过两点和的直线方程是:

2.点向式

过点且平行于的直线方程是:

3.点法式

过点且垂直于的直线方程可由得到:

4.角距式

设法向的方向角为θ,原点到直线的距离为ρ。由点法式可推出直线方程为:

5.一般式

上述直线方程都可以写成一般式:

6.参数方程

过点,倾角α为直线方程为:

二、直线性质

1.点到直线的距离

点到直线的距离为:

两条平行线和的距离为:

所以可以看作是过原点的直线平移了,并且垂直于点(A,B)和原点之间的连线。

2.归一化

取,可得归一化的一般式方程:

点到直线的距离为:

3.两条直线的夹角

两条直线和的倾角分别为α和β,夹角θ=α-β的计算方法如下:

4.直线的交点

4.1 两条直线的交点

将两个直线方程联立,得到一个方程组:

可以解出交点坐标为:, .
当时,两条直线平行,或者说交点在无穷远处。

4.2 多条直线的交点

当多条直线不严格地交于一点时,找一个点使得点到这些直线的距离平方和最小。

设直线方程为,并且。点(x,y)到直线的距离为,最小化正好是方程组的最小二乘解,由可得:

若直线方程为,上述方程组则相当于求直线和的交点。

5.点到直线的垂足

联立直线ax+by+c=0和过点(m,n)的垂线:

可得垂足坐标为:

6. 点关于直线的对称点

点(m,n)到关于直线ax+by+c=0的对称点的有向距离为,连线的单位方向为.
对称点坐标为.

7.拟合直线

给定n个点,拟合一条直线使得这些点到该直线的距离平方和最小。

7.1 直接线性变换法

假设直线的系数为(a,b,c),将点的坐标代入可以得到一组线性方程:

写成矩阵形式为:

当点的个数≤3时,可以求矩阵A的零向量得到拟合的直线;
当点的个数>3时,可以求的最小本征值对应的本征向量作为拟合的结果。

直接线性变换法的本质是在3维空间拟合一个过原点的平面ax+by+cz=0,使得样本点(xᵢ,yᵢ,1)投影到该平面法线方向上的长度平方和∑(axᵢ+byᵢ+c)²最小,拟合的直线为该平面与z=1平面的交线,所以并不能最小化点到直线的距离平方和。

7.2 最小二乘法,最小化点到直线的竖直距离

设 y=ax+b,最小化 S(a,b)=∑(axᵢ+b-yᵢ)²。
写成矩阵形式为:

记为 .

用最小二乘法可得.

还有一种推导是用偏微分求极值:
\begin{aligned} &\frac{\partial}{\partial b}S=2∑(axᵢ+b-yᵢ)=0 \implies b=\frac{1}{n}(∑yᵢ-a∑xᵢ)\\ &\implies b=\overline{y}-a\overline{x} \\ &\frac{\partial}{\partial a}S=2∑(axᵢ+b-yᵢ)xᵢ=0 \implies ∑(axᵢ+\overline{y}-a\overline{x}-yᵢ) = 0 \\ &\implies a=\frac{∑(yᵢ-\overline{y})xᵢ}{∑(xᵢ-\overline{x})xᵢ} \\ &=\frac{∑(xᵢyᵢ-n\overline{x}\overline{y})}{(∑xᵢ^2)-n\overline{x}^2}=\frac{(∑xᵢyᵢ)-2n\overline{x}\overline{y}+n\overline{x}\overline{y}}{(∑xᵢ^2)-2n\overline{x}\overline{x}+n\overline{x}^2}\\ &=\frac{∑xᵢyᵢ-∑xᵢ\overline{y}-∑\overline{x}yᵢ+∑\overline{x}\overline{y}}{∑xᵢ^2-2∑xᵢ\overline{x}+∑\overline{x}^2}\\ &\implies a=\frac{∑(xᵢ-\overline{x})(yᵢ-\overline{y})}{∑(xᵢ-\overline{x})^2} \end{aligned}

最小二乘法最小化 y 坐标到直线的竖直距离的平方和,且不适用于 x=c 的直线。

7.3 主成分分析法,最小化点到直线的垂直距离

先计算n个点的中心点的坐标(x₀,y₀),即x坐标和y坐标的平均值。
各个点到中心点的差值组成一个矩阵:

计算
求S的本征值和本征向量,最大的本征值对应的本征向量就是拟合直线的方向,即“主成分”。另一个本征向量的方向垂直于直线方向,使得点到直线的垂直距离和最小,同时这个较小的本征值就等于点到直线的距离的方差。

根据拟合直线的方向和中心点坐标,可求出直线的方程系数。

8. 线性组合

两条直线和的线性组合:

是通过这两条直线的交点的一簇直线。

两个点的线性组合是过这两点的直线上的点。

三、空间直线

1. 两点式

经过点a和b的直线为:

2. 两向式

直线方向为m,过原点和直线的平面法向为n,直线方程为:

3. 点向式

过点a,方向为n的直线为:

4. 点到直线的距离

点b到直线距离是b-a与n组成平行四边形,以n为底求高:

5. 两条直线的距离

两条异面直线和最短距离是三个向量组成的平行六面体的高:

距离最近处的连线同时垂直与这两条直线,所以
\begin{gathered} (a+λp - b-µq) \cdot p= 0 \\ (a+λp - b-µq) \cdot q= 0 \end{gathered} \implies \begin{gathered} λp \cdot p - µq \cdot p = (b-a) \cdot p \\ λp \cdot q - µq \cdot q= (b-a) \cdot q \end{gathered}
解出λ和µ,就可以得到两条直线上距离最近的两个点。

你可能感兴趣的:(直线的方程与性质)