Table of Contents
Fetching ...

Optimal DLT-based Solutions for the Perspective-n-Point

Sébastien Henry, John A. Christian

TL;DR

The paper introduces an optimal normalized DLT (oDLT) for the Perspective-n-Point problem by analytically weighting the DLT residuals to form a maximum-likelihood estimator. A two-shot approach uses an initial guess to compute weights, enabling a linear solution that preserves SE(3) optimality via a weighted Procrustes step and optionally refines translation with LOST. Across synthetic and real datasets, oDLT achieves near-Gauss-Newton performance with substantially lower computational cost, often matching or surpassing non-iterative and some iterative methods. The approach remains versatile for calibrated and uncalibrated camera scenarios and is released in open source for broad use.

Abstract

We propose a modified normalized direct linear transform (DLT) algorithm for solving the perspective-n-point (PnP) problem with much better behavior than the conventional DLT. The modification consists of analytically weighting the different measurements in the linear system with a negligible increase in computational load. Our approach exhibits clear improvements -- in both performance and runtime -- when compared to popular methods such as EPnP, CPnP, RPnP, and OPnP. Our new non-iterative solution approaches that of the true optimal found via Gauss-Newton optimization, but at a fraction of the computational cost. Our optimal DLT (oDLT) implementation, as well as the experiments, are released in open source.

Optimal DLT-based Solutions for the Perspective-n-Point

TL;DR

The paper introduces an optimal normalized DLT (oDLT) for the Perspective-n-Point problem by analytically weighting the DLT residuals to form a maximum-likelihood estimator. A two-shot approach uses an initial guess to compute weights, enabling a linear solution that preserves SE(3) optimality via a weighted Procrustes step and optionally refines translation with LOST. Across synthetic and real datasets, oDLT achieves near-Gauss-Newton performance with substantially lower computational cost, often matching or surpassing non-iterative and some iterative methods. The approach remains versatile for calibrated and uncalibrated camera scenarios and is released in open source for broad use.

Abstract

We propose a modified normalized direct linear transform (DLT) algorithm for solving the perspective-n-point (PnP) problem with much better behavior than the conventional DLT. The modification consists of analytically weighting the different measurements in the linear system with a negligible increase in computational load. Our approach exhibits clear improvements -- in both performance and runtime -- when compared to popular methods such as EPnP, CPnP, RPnP, and OPnP. Our new non-iterative solution approaches that of the true optimal found via Gauss-Newton optimization, but at a fraction of the computational cost. Our optimal DLT (oDLT) implementation, as well as the experiments, are released in open source.

Paper Structure

This paper contains 11 sections, 29 equations, 9 figures, 2 tables, 1 algorithm.

Figures (9)

  • Figure 1: oDLT+LOST camera pose estimations on some ETH3D training sets. As a visual help, the camera is drawn in blue when it corresponds to the shown image.
  • Figure 2: Increasing $n$ Centered$\sigma_u = 1$ pixel
  • Figure 3: Increasing $n$ Uncentered$\sigma_u = 1$ pixel
  • Figure 4: Increasing $\sigma_u$ Centered$n=50$
  • Figure 5: Increasing $\sigma_u$ Uncentered$n=50$
  • ...and 4 more figures