UTF8gbsn

我们这里的讲解都是在2D平面上面的. 现在我们来看看圆锥曲线(conics).

conics

在欧拉几何里面, 常见的有三中圆锥曲线. 双曲线, 椭圆, 抛物线.
当然还有退化的圆锥曲线,
后面我们会讲什么是退化的圆锥曲线.我们先来看看在非齐次坐标系下面,圆锥曲线的正式定义.

ax2+bxy+cy2+dx+ey+f=0ax^2+bxy+cy^2+dx+ey+f=0

如果换到齐次坐标系里面我们得到
ax12+bx1x2+cx22+dx1x3+ex2x3+fx32=0ax_1^2+bx_1x_2+cx_2^2+dx_1x_3+ex_2x_3+fx_3^2=0

或者表示成矩阵形式为 xTCx=0\mathbf{x}^T\mathbf{C}\mathbf{x}=0

其中,
C=[ab/2d/2b/2ce/2d/2e/2f]\mathrm{C}=\left[\begin{array}{ccc}a & b / 2 & d / 2 \\ b / 2 & c & e / 2 \\ d / 2 & e / 2 & f\end{array}\right]

注意这是一个对称矩阵. 另外这个矩阵的自由度为5, 因为hC,h0h\cdot C, h\neq 0
行程的等价类表示同一个圆锥曲线. 所以, {a:b:c:d:e:f}\{a:b:c:d:e:f\}
5个比值唯一确定一个圆锥曲线.

Five points define a conic

另外, 五个点也可以唯一确定一个圆锥曲线.因为

axi2+bxiyi+cyi2+dxi+eyi+f=0a x_{i}^{2}+b x_{i} y_{i}+c y_{i}^{2}+d x_{i}+e y_{i}+f=0

那么,方程可以写成.

(xi2xiyiyi2xiyi1)c=0\left(\begin{array}{llllll}x_{i}^{2} & x_{i} y_{i} & y_{i}^{2} & x_{i} & y_{i} & 1\end{array}\right) \mathbf{c}=0

这样只要有5个点, 就可以写成一个方程组.

[x12x1y1y12x1y11x22x2y2y22x2y21x32x3y3y32x3y31x42x4y4y42x4y41x52x5y5y52x5y51]c=0\left[\begin{array}{cccccc}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\end{array}\right] \mathbf{c}=\mathbf{0}

而这五个方程组形成了一个5×65\times 6的矩阵.
那么解c\mathbf{c},就是这个矩阵的null space.
注意如果矩阵的秩为5,那么这个null space的维度为1, 那么它所表示的等价类,
唯一确定一个圆锥曲线.

Tangent lines to conics

过点x\mathbf{x}, 的切线l\mathbf{l}定义为, 其中x\mathbf{x}CC上一点.
l=Cx\mathbf{l} = \mathbf{Cx}

证明:

lTx=xTCx=0\mathbf{l}^T\cdot \mathbf{x}=\mathbf{x^TCx}=0

可见, x\mathbf{x}在直线上,
再来证明唯一性.假设,有两个点x,y\mathbf{x,y}都在这条直线上和CC上.那么.

(x+αy)TC(x+αy)=0(\mathbf{x}+\alpha \mathbf{y})^TC(\mathbf{x}+\alpha\mathbf{y})=0

也就是说, 直线上的所有点都在CC上, 如果CC,
是一个非退化的圆锥曲线.那么这种情况是不可能的. 因为圆锥曲线不可能是直线.

圆锥曲线的对偶

如图所示的, xTCx=0\mathbf{x}^TC\mathbf{x}=0表示二维空间中的圆锥曲线.
lTCl=0\mathbf{l}^TC^{*}\mathbf{l}=0表示所有和CC,相切的直线.
它就是圆锥曲线的对偶.

[计算机视觉中的多视几何](2.2.3)2D中的圆锥曲线

同理5条直线可以确定一个圆锥曲线对偶.

Degenerate conics

  • 如果CC不满秩, 那么这种就叫做退化圆锥曲线. 如果Rank(C)=2Rank(C)=2,
    那么这个曲线退化为2条直线, 如果Rank(C)=1Rank(C)=1 退化为一条直线.

  • 对于圆锥曲线对偶, 如果CC^{*} 不满秩, 那么如果Rank(C)=2Rank(C^{*})=2.
    那么这个对偶退化成两个点,. 如果Rank(C)=1Rank(C^{*})=1,
    这个对偶退化为一个点.

相关文章:

  • 2021-08-20
  • 2021-12-31
  • 2022-12-23
  • 2022-12-23
  • 2021-04-03
  • 2021-09-08
  • 2021-11-24
猜你喜欢
  • 2022-12-23
  • 2021-10-10
  • 2021-12-10
  • 2022-01-03
  • 2021-11-24
  • 2021-05-01
  • 2021-05-18
相关资源
相似解决方案