1. Introduction
Multiple-view triangulation is the problem of estimating a scene point from its estimated image projections on two or more cameras and from their estimated projection matrices; see, e.g., [
1,
2]. This problem is important in various applications, such as map building, object reconstruction, visual servoing, etc.
A simple method for addressing multiple-view triangulation consists of minimizing the algebraic error in the estimated projective relationship between the candidate scene point and its estimated image projections. This method only requires the solution of a linear least-squares optimization, but the obtained estimates can be unsatisfactory. In order to provide more accurate estimates, other methods have been proposed in the literature, generally aimed at minimizing a geometrical error defined as the estimated reprojection error, i.e., the mean of the distances between the image projections of the candidate scene point provided by the estimated projection matrices and its estimated image projections. These distances are typically defined via the
norm (i.e., defined as Euclidean distances) due to its isomorphic property; see, e.g., refs. [
3,
4,
5] about multiple-view triangulation with the reprojection error defined via other norms.
Multiple-view
triangulation is a nontrivial problem as it is equivalent to a rational least-squares optimization where the function to be minimized can be nonconvex. Various methods have been proposed in the literature for addressing this problem, which include the pioneering methods [
1,
6] based on the solution of system of polynomial equations for the cases of two and three views, the method [
7] based on the recursive partition of the search space via branch-and-bound algorithms, the method [
8] based on the use of evolutionary computational techniques, and the method [
9] based on reducing the complexity of geometric vision problems through the targeted reweighting of the cost functions used to minimize reprojection errors.
In spite of these contributions, multiple-view triangulation remains a challenging problem in practice. One reason is that the sought scene point may be uncertain in some views due to possible occlusions caused by objects, with the consequence that admissible regions (rather than just points) should be allowed for the estimated image projections. For instance, such admissible regions could be one-dimensional sets such as lines and curves, or two-dimensional sets such as rectangles, polytopes and ellipses. Clearly, this increases the difficulty of the resulting multiple-view triangulation (which is referred to as uncertain multiple-view triangulation in this paper), since the cost function to be minimized may be irrational and may not have an explicit expression.
A possibility for addressing uncertain multiple-view
triangulation consists of exploiting numerical methods for nonlinear optimization. However, given the fact that the function to be minimized can be nonconvex, these methods have two main weaknesses. The first weakness is that the solution provided by these methods can depend on the chosen initialization, and it is unclear how such an initialization should be chosen in order to guarantee that the found solution is a global minimizer. The second weakness is that these methods do not allow one to establish if the found solution is a global minimizer. In other words, these methods do not guarantee the achievement or recognition of optimal estimates sought in the uncertain multiple-view
triangulation; see, e.g., refs. [
10,
11,
12] for a comprehensive collection of numerical methods for nonlinear optimization and for detailed discussions about the limitations previously mentioned when used for solving nonconvex optimization problems. In order to cope with these issues, two methods known as TFML and TPML have been proposed in [
13] for uncertain multiple-view
triangulation based on the solution of LMI problems built with the use of sums of squares of polynomials (SOS). However, the estimates provided by these two methods may be not optimal, and the computational burden can be prohibitive; see, e.g., ref. [
14] for the complexity of SOS programming.
Before proceeding, it is worth mentioning that camera pose estimation and camera calibration are problems closely related to multiple-view triangulation. Indeed, camera pose estimation consists of estimating the relative orientation and translation among two or more cameras from the estimated image projections of a set of scene points and possibly additional information about the position of such points. Also, camera calibration consists of estimating the intrinsic camera parameters, such as the focal lengths, aspect ratio, and camera center. The relative orientation and translation among the cameras, together with the intrinsic camera parameters, determine the projection matrices used to define multiple-view triangulation, which is used for a number of tasks such as scene reconstruction and human pose estimation. Recent works in these areas include various contributions. For instance, camera pose estimation is addressed in [
15] via integration with machine learning model, in [
16] via weighted M-estimate sample consensus, and in [
17] based on the analytical elimination of translation. Human pose estimation is studied in [
18] using appearance similarity and in [
19] via the combination of multiple views and wearable inertia measurement units. Scene reconstruction is considered in [
20] for the case of complex objects and in [
21] using ray regression and deep learning. Also, camera calibration is addressed in [
22] by using full camera models, in [
23] for heterogeneous cameras, in [
24] for portable monocular cameras, in [
25] using a starling-inspired strategy optimization algorithm, and in [
26] through online cascade optimization.
This paper proposes a novel approach for uncertain multiple-view triangulation where the estimated image projections are allowed to be uncertain in admissible regions described by polynomial inequalities and equalities. Firstly, this problem is transformed by introducing variables in the image domain rather than in the 3D space. Secondly, the semialgebraic set constraining these variables is re-elaborated by using a singular-value decomposition (SVD) in order to obtain a minimal description of the required polynomials. Thirdly, candidate image variables corresponding to the optimal estimate of the scene point are obtained by solving an LMI problem, in particular, a generalized eigenvalue problem (GEVP) or a semidefinite program (SDP), built with the introduction of polynomial multipliers and the use of the Gram matrix method. Lastly, an estimate of the scene point is recovered as the scene point matching such candidates through linear algebra operations on matrices obtained from the solution of the LMI problem. It is proven that the optimal estimate can always be achieved by using multipliers with sufficiently large degree. Moreover, a simple test is provided in order to establish the optimality of the obtained estimate. As shown by some examples with real and synthetic data, the proposed approach presents key advantages with respect to several existing methods of a different nature. Specifically, these examples show that the existing methods based on nonconvex optimization may fail to find the optimal estimate or may not allow one to establish their optimality of the found estimate, while the existing methods based on convex optimization may fail to find the optimal estimate or may require a larger computational burden.
The paper is organized as follows.
Section 2 introduces the preliminaries.
Section 3 states the problem formulation.
Section 4 describes the proposed approach.
Section 5 presents the examples. Lastly,
Section 6 reports the conclusions.
3. Problem Formulation
Multiple-view triangulation consists of estimating the scene point from the knowledge of its image projections in two or more cameras and from the knowledge of the projection matrices of such cameras—see
Figure 1 for an illustration. In the ideal case where the image projections and the projection matrices are known, the scene point can be recovered by exploiting (
1), which consists of solving a system of linear equations. However, in the real case, the image projections and the projection matrices are unknown due to image noise and calibration errors, and the problem consists of estimating the scene point from their available estimates by minimizing an error, typically chosen as the mean square re-projection error in the
norm. Moreover, the available estimate of each image projection may be not just a single point but, due to possible occlusions, an admissible region.
Hence, in this paper, we address an uncertain multiple-view triangulation problem, which is formulated as follows. Consider a scene point observed by N cameras. The problem consists of estimating from the estimates of the projection matrices of these cameras and from the admissible regions for the image projections of on these cameras, , by minimizing the mean square re-projection error in the norm. It is assumed that the admissible regions can be described by polynomial inequalities and equalities in the image space.
Specifically, let
be the variable scene point used to search for the estimate of
. The uncertain multiple-view
triangulation problem considered in this paper is
where
is defined as
and
is the Euclidean distance from the image projection
to the admissible region
, i.e.,
The estimate
of the scene point
provided by the uncertain multiple-view
triangulation problem in (
5) is defined as any minimizer of
, i.e.,
5. Examples
In this section, we present some examples of the proposed approach. The optimization problem (
44) is solved via an SDP with the numerical toolbox SeDuMi for Matlab (version 2023b) on a standard computer with Windows 11, Intel Core i7, 3.2 GHz, 16 GB RAM. This SDP is built by exploiting the Gram matrix method in
Section 4.4 with
which is an SOS polynomial, symmetric with respect to all entries of
. The vectors
satisfying (
45) are found via (
51). Since
can be empty due to the finite numerical precision used in the calculations,
is replaced with the span of the eigenvectors corresponding to the smallest eigenvalue of
.
For completeness, the proposed approach is compared with several existing methods of a different nature:
The classical Newton method; see, e.g, [
12]. This method is implemented using the analytical expressions of the first and second order derivatives of the cost function in (
5), and, hence, is applied only when each admissible region is a point.
The Nelder–Mead simplex (NMS) method; see, e.g, [
12].
The particle swarm optimization (PSO) method; see, e.g., [
31].
The sequential quadratic programming (SQP) method; see, e.g., [
12].
The TFML and TPML methods in [
13], which require the solution of an LMI problem in the form of an SDP.
The NMS, PSO and SQP methods are tested by using their available implementations in Matlab with the default values of their parameters (in order to avoid the introduction of specific choices of such parameters that could benefit the proposed approach in the comparisons with these methods). The Newton, NMS and SQP methods are initialized with the estimate obtained by minimizing the algebraic error of (
1) relative to the center of the admissible regions. In the examples, the TFML method is omitted for brevity as it coincides with Corollary 1 for
.
In order to provide some information about the complexity of these methods, the computational time (CT) or the average computational time (ACT) are reported in the examples, both measured in seconds. Since the computational time depends on the hardware used, the number of independent LMI scalar variables (denoted by ) is also reported for the proposed approach and for the existing methods based on LMIs in order to provide hardware-independent information about the complexity.
Other abbreviations used in the examples are as follows:
#: number of;
NA: not applicable (e.g., regarding the possibility of recognizing optimality of the estimate found by a method if the method has not such capability).
OOM: out of memory (when the estimate of a method cannot be found because the method runs out of memory due to the size of the optimization problem to be solved; in this case, the size of the problem is measured through ).
5.1. Example 1: Real Data
Here we present the results obtained with real data, in particular, using the following image sequences from the Visual Geometry Group at the University of Oxford:
The corridor sequence (11 views with 737 points);
The dinosaur sequence (36 views with 4983 points);
The model house sequence (10 views with 672 points);
The university library sequence (3 views with 667 points);
The Merton College III sequence (3 views with 566 points);
The Wadham College sequence (5 views with 1331 points).
Only the points of these sequences visible in at least two views are here considered.
Figure 2 shows an image of each sequence.
Each 3D point is estimated using all the available views through Corollary 1 with
. The estimations are carried out, firstly, by normalizing the data in order to improve the numerical accuracy, and, secondly, by de-normalizing the found solutions.
Table 1,
Table 2,
Table 3,
Table 4,
Table 5 and
Table 6 show the obtained results.
As we can see from
Table 1,
Table 2,
Table 3,
Table 4,
Table 5 and
Table 6,
is always equal to
, i.e., optimal, except for 1 point out of 8956 points. Specifically, this point belongs to the corridor sequence, and is visible in three views. The multiple-view
triangulation problem for this point is (
5)–(
8) with
Using Corollary 1 with
(for which
), we obtain
which does not allow us to conclude optimality of
. However, using Corollary 1 with
(for which
) or Theorem 1 with
(for which
), we obtain
which allows us to conclude optimality of
.
Table 7 reports the found results and the comparisons with the existing methods mentioned at the beginning of
Section 5. As can be seen, the proposed approach (Corollary 1 with
), though slower than some of the existing methods, achieves the minimum number of non-optimal cases (one only, as previously explained). Moreover, only the proposed approach allows us to recognize the optimality of the found estimate.
5.2. Example 2
In this example, we consider a situation with three views where an admissible region is a circumference. Specifically, the uncertain multiple-view
triangulation problem (
5)–(
8) is considered with
Table 8 reports the found results and the comparisons with the existing methods mentioned at the beginning of
Section 5. As can be seen, the optimal estimate is found by the proposed approach (Theorem 1 or Corollary 1 with
) and by the NMS, PSO and SQP methods. However, only the proposed approach allows us to recognize its optimality.
Figure 3a shows the admissible regions
and the found image projections
in
.
5.3. Example 3
In this example, we consider a situation with three views where two admissible regions are line segments. Specifically, the uncertain multiple-view
triangulation problem (
5)–(
8) is considered with
,
and
as in Example 2, and with
Table 9 reports the found results and the comparisons with the existing methods mentioned at the beginning of
Section 5. As can be seen, the optimal estimate is found by the proposed approach (Theorem 1 or Corollary 1 with
) and by the SQP method. However, only the proposed approach allows us to recognize its optimality.
Figure 3b shows the admissible regions
and the found image projections
in
.
5.4. Example 4
In this example, we consider a situation with four views. Specifically, the uncertain multiple-view
triangulation problem (
5)–(
8) is considered with
,
and
as in Example 2, and with
Table 10 reports the found results and the comparisons with the existing methods mentioned at the beginning of
Section 5. As can be seen, only the proposed approach (Theorem 1 or Corollary 1 with
) allows to find the optimal estimate and to recognize its optimality.
Figure 3c shows the admissible regions
and the found image projections
in
.
5.5. Example 5
In this last example, we aim to investigate multiple trials for acquiring the estimates of the image projections and of the projection matrices with the same level of the uncertainty, as well as investigating the obtained results for different levels of the uncertainty. To this end, we generate a total of 1000 cases, as follows:
Firstly, we randomly generate 25 scene points visible in the four views described by the projection matrices chosen as the projection matrices used in Example 4 and normalized in order to have unitary 2-norm;
Secondly, for each scene point, we calculate its image projections in the four views;
Thirdly, we consider four different levels of the uncertainty parameterized by the scalar according to ;
Fourthly, for each scene point and for each level of the uncertainty, we generate, over 10 times (the trials), the following:
- –
The estimates of the image projections of the scene point by adding a random uncertainty in the interval to each entry of the true image projections , where ;
- –
The estimates of the projection matrices by adding a random uncertainty in the interval to each entry of the true projection matrices.
Table 11 and
Table 12 report the found results and the comparisons with the existing methods mentioned at the beginning of
Section 5. As can be seen, only the proposed approach (Theorem 1 or Corollary 1 with
) achieves zero non-optimal cases, allows us to recognize the optimality of the found solution, and achieves the minimum average distance from the estimated scene point to the true one.
6. Conclusions
This paper has proposed a novel approach for uncertain multiple-view triangulation where the estimated image projections are allowed to be uncertain in admissible regions described by polynomial inequalities and equalities. The proposed approach is based on the introduction of polynomial multipliers and requires the solution of an LMI problem. It has been proven that the optimal estimate of the scene point can always be achieved by using multipliers with sufficiently large degree. Moreover, a simple test has been provided in order to establish the optimality of the found estimate.
The complexity of the proposed approach has been investigated by deriving analytical expressions for the number of independent LMI scalar variables present in the derived LMI problems. Although these expressions show that this number may quickly grow with the number of views and with the number and degree of the polynomials involved, various examples with real and synthetic data have shown that the complexity is not only manageable but also competitive at least with respect to the existing methods based on convex optimization.
The proposed approach presents key advantages with respect to several existing methods of a different nature. Indeed, various examples with real and synthetic data have shown that the existing methods based on nonconvex optimization may fail to find the optimal estimate or may not allow one to establish the optimality of the found estimate, while the existing methods based on convex optimization may fail to find the optimal estimate or may require a larger computational burden.
Future work could consider reducing the complexity of the proposed approach (for instance, by exploiting KKT conditions or duality theory), integrating the proposed approach with methods for camera pose estimation, and developing an open-source code of the proposed approach.