Table of Contents
Fetching ...

An Elliptic Curve Based Solution to the Perspective-Three-Point Problem

Michael Q. Rieck

TL;DR

This paper addresses the Perspective-Three-Point problem (P3P) by reframing it through an arc-sliding problem on the unit sphere and revealing a connection to a broad class of elliptic curves, including Edwards-type curves. The authors develop a novel elliptic-curve–based P3P algorithm that reduces the problem to solving a quartic on a projective plane, implemented in C with a five-phase procedure that yields high-precision distance estimates for the control points. Although slower than Lambda Twist, the EC solver achieves notably higher accuracy in many regimes, especially away from near-right attack angles, demonstrating the practical viability and potential of elliptic-curve methods for pose estimation. The work also establishes a rich mathematical link between P3P and genus-one curves, suggesting future exploration of elliptic-curve optimizations and Abelian-group structures to improve solver properties and performance.

Abstract

The Perspective-Three-Point Problem (P3P) is solved by first focusing on determining the directions of the lines through pairs of control points, relative to the camera, rather than the distances from the camera to the control points. The analysis of this produces an efficient, accurate and reasonably simple P3P solver, which is compared with a state-of-the-art P3P solver, "Lambda Twist." Both methods depend on the accurate computation of a single root of a cubic polynomial. They have been implemented and tested for a wide range of control-point triangles, and under certain reasonable restrictions, the new method is noticably more accurate than Lambda Twist, though it is slower. However, the principal value of the present work is not in introducing yet another P3P solver, but lies rather in the discovery of an intimate connection between the P3P problem and a special family of elliptic curves that includes curves utilized in cryptography. This holds the potential for further advances in a number of directions. To make this connection, an interesting spherical analogue of an ancient "sliding" problem is stated and solved.

An Elliptic Curve Based Solution to the Perspective-Three-Point Problem

TL;DR

This paper addresses the Perspective-Three-Point problem (P3P) by reframing it through an arc-sliding problem on the unit sphere and revealing a connection to a broad class of elliptic curves, including Edwards-type curves. The authors develop a novel elliptic-curve–based P3P algorithm that reduces the problem to solving a quartic on a projective plane, implemented in C with a five-phase procedure that yields high-precision distance estimates for the control points. Although slower than Lambda Twist, the EC solver achieves notably higher accuracy in many regimes, especially away from near-right attack angles, demonstrating the practical viability and potential of elliptic-curve methods for pose estimation. The work also establishes a rich mathematical link between P3P and genus-one curves, suggesting future exploration of elliptic-curve optimizations and Abelian-group structures to improve solver properties and performance.

Abstract

The Perspective-Three-Point Problem (P3P) is solved by first focusing on determining the directions of the lines through pairs of control points, relative to the camera, rather than the distances from the camera to the control points. The analysis of this produces an efficient, accurate and reasonably simple P3P solver, which is compared with a state-of-the-art P3P solver, "Lambda Twist." Both methods depend on the accurate computation of a single root of a cubic polynomial. They have been implemented and tested for a wide range of control-point triangles, and under certain reasonable restrictions, the new method is noticably more accurate than Lambda Twist, though it is slower. However, the principal value of the present work is not in introducing yet another P3P solver, but lies rather in the discovery of an intimate connection between the P3P problem and a special family of elliptic curves that includes curves utilized in cryptography. This holds the potential for further advances in a number of directions. To make this connection, an interesting spherical analogue of an ancient "sliding" problem is stated and solved.

Paper Structure

This paper contains 13 sections, 8 theorems, 46 equations, 6 figures.

Key Result

Theorem 1

Assuming the preceding setup, the point $\hat{a}$ with Cartesian coordinates $(x, y, z)$ moves along a curve on the unit sphere given by the equation $x^2 + y^2 + z^2 \; = \; 1$ together with the equation

Figures (6)

  • Figure 1: an arc-sliding problem
  • Figure 2: projections onto the unit sphere
  • Figure 3: attack angle range 0 - 30, lift range 10 - 20
  • Figure 4: attack angle range 0 - 30, lift range 100 - 200
  • Figure 5: attack angle range 30 - 60, lift range 10 - 20
  • ...and 1 more figures

Theorems & Definitions (13)

  • Theorem 1
  • Proposition 1
  • proof
  • Corollary 1
  • Proposition 2
  • proof
  • Corollary 2
  • Proposition 3
  • proof
  • Theorem 2
  • ...and 3 more