0%

点集的最小外包围椭圆01

背景理论,主要摘自https://www.cs.cornell.edu/cv/OtherPdf/Ellipse.pdf

给定点集 \(\mathcal{P}=\{P_1,P_2,\cdots,P_n\}\) ,求包围该点集的最小椭圆 \(\mathcal{E}\)

椭圆定义

二次曲线

一般方程 \[ Ax^2+Bxy+Cy^2+Dx+Ey+F=0 \] 对于椭圆需满足 \[ B^2-4AC<0 \] 避免退化需满足 \[ \frac{D^2}{4A}+\frac{E^2}{4C}-F>0 \]

参数方程

矩阵形式 \[ \begin{bmatrix} x(t) \\ y(t) \end{bmatrix}= \begin{bmatrix} h \\ k \end{bmatrix}+ \left[\begin{array}{lr} \cos(\tau)&-\sin(\tau) \\ \sin(\tau)&\cos(\tau) \end{array}\right]\cdot \begin{bmatrix} a\cos(t) \\ b\sin(t) \end{bmatrix} \] 其中,\((h,k)\) 为椭圆中心,\(\tau\) 为逆时针旋转角度,\(0 \le t \le 2\pi\)

焦点形式

给定焦点 \(F_1=(\alpha_1,\beta_1)\)\(F_2=(\alpha_2,\beta_2)\) 以及绳长 \(s\) ,则有 \[ \sqrt{(x-\alpha_1)^2+(y-\beta_1)^2}+\sqrt{(x-\alpha_2)^2+(y-\beta_2)^2}=s \]

转换关系

二次曲线 ⇒ 参数方程

定义矩阵 \[ M_0=\begin{bmatrix} F&D/2&E/2 \\ D/2&A&B/2 \\ E/2&B/2&C \end{bmatrix}\qquad M=\begin{bmatrix} A&B/2 \\ B/2&C \end{bmatrix} \] 则有 \[ \begin{array}{lc} a=\sqrt{-\det(M_0)/(\det(M)\lambda_1)} & b=\sqrt{-\det(M_0)/(\det(M)\lambda_2)}\\[5pt] h=(BE-2CD)/(4AC-B^2) & k=(BD-2AE)/(4AC-B^2)\\[5pt] \tau=\mathrm{arccot}((A-C)/B)/2 & \end{array} \]

其中,\(\lambda_1\)\(\lambda_2\) 为矩阵 \(M\) 的特征值,且满足 \(|{\lambda_1}-A| \le |{\lambda_1}-C|\)\(|{\lambda_2}-C| \le |{\lambda_2}-A|\)

参数方程 ⇒ 二次曲线

\(c=\cos(\tau)\)\(s=\sin(\tau)\) ,则有 \[ \begin{array}{l} A=(bc)^2+(as)^2 \\[5pt] B=-2cs(a^2-b^2) \\[5pt] C=(bs)^2+(ac)^2 \\[5pt] D=-2Ah-kB \\[5pt] E=-2Ck-hB \\[5pt] F=-(ab)^2+Ah^2+Bhk+Ck^2 \end{array} \]

参数方程 ⇒ 焦点形式

\(c=\sqrt{a^2-b^2}\) ,则有 \[ s=2a \]

\[ F_1=(h-\cos(\tau)c~,~k-\sin(\tau)c)\qquad F_2=(h+\cos(\tau)c~,~k+\sin(\tau)c) \]

焦点形式 ⇒ 参数方程

\(F_1=(\alpha_1,\beta_1)\)\(F_2=(\alpha_2,\beta_2)\) ,则有 \[ \begin{array}{l}   a=s/2 \\[5pt] b=\sqrt{s^2-[(\alpha_1-\alpha_2)^2+(\beta_1-\beta_2)^2]}~/~2 \\[5pt] h=(\alpha_1+\alpha_2)/2 \\[5pt] k=(\beta_1+\beta_2)/2 \\[5pt] \tau=\arctan((\beta_1-\beta_2)/(\alpha_1-\alpha_2)) \end{array} \]