P r o j e c t s


          N o t e s



         I n f o r m a t i o n
         g i t h u b









Absolute Conic



1. Conic


  • Conic is a curve on a plane which is of form `ax^2+bxy+cy^2+dx+ey+f=0`.
  • Let `(x_1,x_2,x_3)^t ~ (frac{x_1}{x_3},frac{x_2}{x_3},1)^t ` be the homogeneous coordinates of a point, then  `ax_1^2+bx_1x_2+cx_2^2+dx_1x_3+ex_2x_3+fx_3^2=0`.
  • For matrix representation, it is of form `x^tCx=0`.
\begin{equation}
\begin{pmatrix} x_1 & x_2 & x_3 \end{pmatrix}
\begin{pmatrix}
a & \frac{b}{2} & \frac{d}{2} \\
\frac{b}{2} & c &  \frac{e}{2} \\
\frac{d}{2} & \frac{e}{2} & f
\end{pmatrix}
\begin{pmatrix} x_1 \\ x_2 \\ x_3 \end{pmatrix} =0 \Rightarrow x^tCx=0
\end{equation}
  • `C` is the conic as matrix representation which is symmetric. In addition, all `kC (kne0)` are the same conic.


2. The tangent to the conic


  • Let the point `x` be on the conic `C` and on the line `l`. It means `x^tCx=0` and `l^tx=0`. If there exists another point `y` such as `x`,  `y^tCy=0` and `l^ty=0`.
  • For any `alpha>0`, `(x+alphay)^tC(x+alphay)=x^tCx+alpha^2y^tCy+alphay^tCx+alphax^tCy=``0+0+0+0=0`. It implies that all the points on the line passing through points `x` and `y` is also on `C`, so it is a contradiction. Therefore, `l` is the tangent to the conic and `l=Cx`. 


3. Degenerate conic

  • When a double conic is divided by a plane passing through its center, its cross section is two lines, not parabola, hyperbola, circle, or ellipse. These two lines `l` and `m` are a degenerate conic `C_infty` such that `C_infty=lm^t+ml^t`.
  • Since `x^tC_inftyx=0`, `l^tx=0`, and `m^tx=0`,  `C_infty=lm^t+ml^t` and `rank(C_infty)=2`.


3. Dual conic




  • A conic on a plane is a set of points, but it can be viewed as a set of tangents to each point which is called dual conic.
  • The conic `C` satisfies `x^tCx=0` for a point `x` on `C`, and the dual conic `C^{ast}` satisfies `l^tC^{ast}l=0` for the tangent to the `x`.
  • If a point `x` is on the conic `C`, then the tangent `l` to `x` is `l=Cx`, so `x=C^{-1}l`.
  • `x^t=l^tC^{-t}=l^tC^{-1}` since `C` is symmetric. It implies that `x^tCx=(l^tC^{-1})l=0`. Therefore, `C^{ast}=C^{-1}`.


4. Homography of conic


  • Assume that a point `x` is on the conic `C` and a line `l` is on the dual conic `C^{ast}` of `C`. These are trasformed to `xprime`, `Cprime`, `lprime`, and `C^{ast prime}` by a homography `H`.
  • From `x^tCx` and `xprime=Hx`, `quad x^{primet}H^{-t}CH^{-1}xprime=0`, so `Cprime=H^{-t}CH^{-1}`.
  • The tangent `l` to `x` satisfies `l^tx=0`, so `l^tx=l^t(H^{-1}xprime)=(l^tH^{-1})xprime=0``=l^{primet}xprime`. It means `lprime=H^{-t}l`.
  • From `l^tC^{ast}l=0` and `lprime=H^{-t}l`, `quad l^{primet}HC^{ast}H^tlprime=0`, so `C^{ast prime}=HC^{ast}H^t`.


5. Circular points: all the circles intersects with `l_infty` at two points

  • All the circles have `b=0` and `a=c` from the conic equation  `ax_1^2+bx_1x_2+cx_2^2+dx_1x_3+ex_2x_3+fx_3^2=0`.
  • If we set `a=1`, `x_1^2+x_2^2+dx_1x_3+ex_2x_3+fx_3^2=0`.
  • The intersection point with `l_infty` is at infinity, so `x_3=0` and it reduces to `x_1^2+x_2^2=0`.
  • In homogeneous coordinate, this has two solutions, `(x_1, x_2)={(1, i), (1, -i)}`.
  • Therefore, the circular points are `(1,i,0)^t` and `(1,-i,0)^t`.


6. Dual degenerate conic


  • It is the dual of degenerate conic `C_infty=lm^t+ml^t`.
  • Degenerate conic is defined by lines, so its dual is defined by points.
  • Let the circular points be `U` and `V`, the dual degenerate conic `C_{infty}^{ast}` satisfies `C_{infty}^{ast}=UV^t+VU^t`.
  • As the dual of `x^tCx=0` form is `l^tC^{ast}l=0`, `C_{infty}^{ast}` consists of the lines such that `l^tC_{infty}^{ast}l=0`.
  • `C_{infty}^{ast}` as matrix representation is the following:
\begin{align} C_{\infty}^{\ast} &= UV^t+VU^t=
\begin{pmatrix} 1 \\ i \\ 0 \end{pmatrix}
\begin{pmatrix} 1 & -i & 0 \end{pmatrix} +
\begin{pmatrix} 1 \\ -i \\ 0 \end{pmatrix}
\begin{pmatrix} 1 & i & 0 \end{pmatrix} \\ \\ &=
\begin{pmatrix}
1 & -i & 0 \\
i & 1 & 0 \\
0 & 0 & 0
\end{pmatrix} +
\begin{pmatrix}
1 & i & 0 \\
-i & 1 & 0 \\
0 & 0 & 0
\end{pmatrix} \equiv
\begin{pmatrix}
1 & 0 & 0 \\
0 & 1 & 0 \\
0 & 0 & 0
\end{pmatrix} =
\begin{pmatrix}
I & \vec{0} \\
\vec{0} & 0
\end{pmatrix}
\end{align}
  • `C_{infty}^{ast}` is invariant to similarity homography. This homography `H` is
\begin{equation} H=
\begin{pmatrix} A & \vec{v} \\ \vec{0} & 1 \end{pmatrix}
\quad \text{where} \quad A^tA=\lambda^{2}I^{2}.
\end{equation} 
   Since `C_{infty}^{ast prime}=HC_{infty}^{ast}H^t`, 
\begin{align}
C_{\infty}^{\ast \prime} &=
\begin{pmatrix} A & \vec{v} \\ \vec{0} & 1 \end{pmatrix}
\begin{pmatrix} I & \vec{0} \\ \vec{0} & 0 \end{pmatrix}
\begin{pmatrix} A^t & \vec{0} \\ \vec{v}^t & 1 \end{pmatrix} =
\begin{pmatrix} A & \vec{v} \\ \vec{0} & 1 \end{pmatrix}
\begin{pmatrix} A^t & \vec{0} \\ \vec{0} & 0 \end{pmatrix}=
\begin{pmatrix} \lambda^2I & \vec{0} \\ \vec{0} & 0 \end{pmatrix} \\ &\equiv
\begin{pmatrix} \vec{I} & \vec{0} \\ \vec{0} & 0 \end{pmatrix} = C_{\infty}^{\ast}
\end{align}


7. Quadric


  • Quadric is similar to conic and is defined in one more higher dimension than that of conic.
  • Quadric `Q` is a `4times 4` symmetric matrix and `x^tQx=0` for the point `x` on `Q`.
  • As `rank(C)=3` for a conic `C` in general except for the degenerate conic whose `rank(C_infty)=2`, quadric `Q` is, in general, `rank(Q)=4` except for the degenerate quadric whose `rank(Q_infty)=3`.


8. The intersection of quadric and plane is a conic


  • For the non-colinear points `A`, `B`, and `C` are on a plane `Pi`, a point `x` on `Pi` is represented as `x=uA+vB+wC` for some `u, v, c in mathbb{R}`. In other words, `x=(A,B,C)(u,v,w)^t=Mvec{p}` where `M` is a `4times3` matrix and `vec{p}` is a `3times1` matrix.
  • If `x` is on the intersection area of a quadric `Q` and `Pi`, `x^tQx=0` and `vec{p}^tM^tQMvec{p}=0`.
  • In fact, `vec{p}` can be represented in homogeneous coornidate which is composed of `A`, `B`, and `C`. It means that `x=mvec{e_1}+nvec{e_2}``=m(A-C)+n(B-C)``=mA+nB-(m+n)C` where `m=u`, `n=v`, and `w=-m-n`.
  • Therefore, `vec{p}^t(M^tQM)vec{p}` can be considered as the conic `C` where `C=M^tQM` for the point `vec{p}` on `C`.


9. The tangent to the quadric


  • For the point `x` on the tangent plane `Pi` to the quadric `Q`,  `x^tQx=0` and `Pi^tx=0`. It implies that `Pi=Q^tx=Qx`. This property is correspoding to that of conic.


10. Dual quadric

  • A quadric is a set of points, but it can be viewed as a set of tangent planes to each point which is called dual quadric.
  • The quadric `Q` satisfies `x^tQx=0` for a point `x` on `Q`, and the dual quadric `Q^{ast}` satisfies `Pi^tQ^{ast}Pi=0` for the tangent plane to the `x`.
  • The tangent plane `Pi` on the quadric `Q` satisfies `Pi=Qx`, so `x^tQx=``Pi^tQ^{-t}Q Q^{-1}Pi=0`. It means `Q^{ast}=Q^{-t}=Q^{-1}`. This property is correspoding to that of conic.


11. Homography of quadric


  • Assume that a point `x` is on the quadric `Q` and a plane `Pi` is on the dual quadric `Q^{ast}` of `Q`. These are trasformed to `xprime`, `Qprime`, `Piprime`, and `Pi^{ast prime}` by a homography `H`.
  • From `x^tQx` and `xprime=Hx`, `quad x^{primet}H^{-t}QH^{-1}xprime=0`, so `Qprime=H^{-t}QH^{-1}`.
  • From`Pi^tQ^{ast}Pi=0` and `Piprime=H^{-t}Pi`, `quad Pi^{primet}HQ^{ast}H^tPiprime=0`, so `Q^{ast prime}=HQ^{ast}H^t`.


12. What `Qx` stands for where the point `x` is NOT on the quadric `Q`




  • `Qx` means a polar plane when the point `x` is not on the quadric `Q`.
  • In other words, the polar plane consists of the planes which passes through `x` and tangent to `Q`. This property is corresponding to that of conic which is called a polar line.
  •  Assume that the point `y` is on `Q` and its tangent plane `Qy` passes through `x`. So, `(Qy)^tx=0=``y^tQ^tx=y^tQx`. Since `y^tQx` is a scalar, `y^tQx=(y^tQx)^t=``x^tQ^ty=(Qx)^ty`.  Therefore, `Qx` is the polar plane.
  • Assume that the point `y` is on a conic `C` and its tangent line `Cy` passes through `x`. So, `(Cy)^tx=0=``y^tC^tx=y^tCx`. Since `y^tCx` is a scalar, `y^tCx=(y^tCx)^t=``x^tC^ty=(Cx)^ty`.  Therefore, `Cx` is the polar line.


13. Absolute conic:  all the spheres intersect with `Pi_infty`


  • A sphere is a kind of a quadric, so the intersection of a sphere and `Pi_infty=(0,0,0,1)^t` is a conic.
  • All the spheres satisfy `x_1^2+x_2^2+x_3^2+dx_1x_4+ex_2x_4+fx_3x_4+gx_4^2=0` for the point `(x_1, x_2, x_3, x_4)^t` in homogeneous coordinate.
  • The intersection with `Pi_infty` is at infinity, so `x_4=0` and it reduces to `x_1^2+x_2^2+x_3^2=0`.
  • This form can be changed as `(x_1, x_2, x_3)I(x_1, x_2, x_3)^t=0` which is of conic form. This conic is on `Pi_infty` and consists of the only imaginary part, which is called the absolute conic.
  • The absolute conic is denoted by `Omega_infty`.
  • The dual of  `Omega_infty` is called absolute dual quadric `Omega_infty^{ast}`,
\begin{equation}
\begin{pmatrix}
1 & 0 & 0 & 0 \\
0 & 1 & 0 & 0 \\
0 & 0 & 1 & 0 \\
0 & 0 & 0 & 0  
\end{pmatrix}
\end{equation}
  • For all the planes `Pi=(x_1, x_2, x_3, x_4)^t` such that `(x_1, x_2, x_3)(x_1, x_2, x_3)^t=0`, `Pi` is tangent to the `Omega_infty`. Moreover, this `Pi` satisfies `Pi^t Omega_infty^{ast} Pi=0`, which is the dual quadric form.
  • Geometrically, `Omega_infty^{ast}` consists of all the tangent planes of `Omega_infty`.




14. Projection of `Omega_infty`


  • When the point `x=(x_1, x_2, x_3, 0)^t` on `Pi_infty` is projected by `P`, the image of `x` is
\begin{equation} PX=KR[\ I\ |\ -E\ ]
\begin{pmatrix} x_1 \\ x_2 \\ x_3 \\ 0 \end{pmatrix}=KR
\begin{pmatrix} x_1 \\ x_2 \\ x_3 \end{pmatrix}
=H\bar{x}
\end{equation} 
   where `K` is the intricsic matrix of the camera, `R` is the rotation matrix, `E` is the camera center, `H=KR` and `bar{x}=(x_1,x_2,x_3)^t`. It means that `bar{x}` is the direction to the intersection with `Pi_infty`.
  • `Omega_infty` is defined by this `x` which satisfies `bar{x}^tOmega_inftybar{x} `. Moreover, `Omega_infty` can be transformed by this `H` as follows:
\begin{align}
H^{-t}\Omega_{\infty}H^{-1} &= H^{-t}IH^{-1}=(KR)^{-t}(KR)^{-1}=(R^tK^t)^{-1}(KR)^{-1} \\
&= K^{-t}R^{-t}R^{-1}K^{-1}=K^{-t}(RR^t)^{-1}K^{-1}=K^{-t}K^{-1}=\omega
\end{align}
  • `bar{x}` and `Omega_infty` are transformed to `omega` and `Hbar{x}` by `H`. Since `bar{x}` is on the `Omega_infty`, `Hbar{x}` should be on `omega` which means `(Hbar{x})^tw(Hbar{x})`. 
  • `(Hbar{x})^tw(Hbar{x})=(Hbar{x})^t(K^{-t}K^{-1})(Hbar{x})>0` yields that `K^{-t}K^{-1}` is positive definite. Therefore, all this kind of `Hbar{x}` are imaginary.


15. All the planes intersect with `Omega_infty` at circular points

  • Since `Omega_infty` is on `Pi_infty`, `l_infty` is also on `Pi_infty`. An arbitrary plane `Pi` includes any circles, so these circles intersect with `l_infty` at circular points. It means that this `Pi` includes `l_infty`.



  • For a circle on `Pi`, there exists the sphere including this circle. This sphere also intersects with `Pi_infty` because all the spheres intersect with `Pi_infty` at absolute conic `Omega_infty`. Therefore, this sphere includes `Omega_infty`. As a result, the intersection of `Omega_infty` and `l_infty` is circular points.

︎Reference


[1] https://engineering.purdue.edu/kak/computervision/ECE661Folder/Index.html
[2] Hartley, R. and Zisserman, A. (2003) Multiple View Geometry in Computer Vision. 2nd Edition, Cambridge University Press, Cambridge.

emoy.net
Mark