A Conic Transformation Approach for Solving the Perspective-Three-Point Problem
Haidong Wu, Snehal Bhayani, Janne Heikkilä
TL;DR
This work tackles the Perspective-Three-Point (P3P) problem by introducing a conic-transformation that maps the intersection of two conics into a coordinate system where one conic becomes a canonical parabola. The method derives a real-valued quartic equation in the transformed coordinates and solves it using Ferrari’s method, explicitly avoiding complex arithmetic by enforcing real roots only. It then recovers the depth variables $d_i$ and refines the pose via Gauss-Newton, computing $\mathbf{R}$ and $\mathbf{t}$ from the reconstituted distances. Empirical results on synthetic data show the approach delivers faster solving times with robustness on par with, or better than, state-of-the-art solvers and with the added benefit of avoiding complex-number computations. The authors also provide code for practical deployment.
Abstract
We propose a conic transformation method to solve the Perspective-Three-Point (P3P) problem. In contrast to the current state-of-the-art solvers, which formulate the P3P problem by intersecting two conics and constructing a degenerate conic to find the intersection, our approach builds upon a new formulation based on a transformation that maps the two conics to a new coordinate system, where one of the conics becomes a standard parabola in a canonical form. This enables expressing one variable in terms of the other variable, and as a consequence, substantially simplifies the problem of finding the conic intersection. Moreover, the polynomial coefficients are fast to compute, and we only need to determine the real-valued intersection points, which avoids the requirement of using computationally expensive complex arithmetic. While the current state-of-the-art methods reduce the conic intersection problem to solving a univariate cubic equation, our approach, despite resulting in a quartic equation, is still faster thanks to this new simplified formulation. Extensive evaluations demonstrate that our method achieves higher speed while maintaining robustness and stability comparable to state-of-the-art methods.
