Skip to main content
Log in

Tractable Algorithms for Robust Model Estimation

  • Published:
International Journal of Computer Vision Aims and scope Submit manuscript

Abstract

What is the computational complexity of geometric model estimation in the presence of noise and outliers? We show that the number of outliers can be minimized in polynomial time with respect to the number of measurements, although exponential in the model dimension. Moreover, for a large class of problems, we prove that the statistically more desirable truncated \(L_2\)-norm can be optimized with the same complexity. In a similar vein, it is also shown how to transform a multi-model estimation problem into a purely combinatorial one—with worst-case complexity that is polynomial in the number of measurements but exponential in the number of models. We apply our framework to a series of hard fitting problems. It gives a practical method for simultaneously dealing with measurement noise and large amounts of outliers in the estimation of low-dimensional models. Experimental results and a comparison to random sampling techniques are presented for the applications rigid registration, triangulation and stitching.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9
Fig. 10
Fig. 11
Fig. 12
Fig. 13
Fig. 14
Fig. 15
Fig. 16

Similar content being viewed by others

References

  • Ask, E., Kuang, Y., & Åström, K. (2012). Exploiting p-fold symmetries for faster polynomial equation solving. In: International Conference on Pattern Recognition. Tsukuba, Japan.

  • Bazaraa, M. S., Sherali, H. D., & Shetty, C. M. (1993). Nonlinear programming: Theory and algorithms. New York: Wiley.

    MATH  Google Scholar 

  • Bazin, J.-C., Seo, Y., Demonceaux, C., Vasseur, P., Ikeuchi, K., Kweon, I., et al. (2012). Globally optimal line clustering and vanishing point estimation in manhattan world. In: Conference on Computer Vision and Pattern Recognition. Providence, Rhode Island, USA.

  • Blake, A., & Zisserman, A. (1987). Visual reconstruction. Cambridge, MA: MIT Press.

    Google Scholar 

  • Breuel, T. M. (2003). Implementation techniques for geometric branch-and-bound matching methods. Computer Vision and Image Understanding, 90(3), 258–294.

    Article  MATH  Google Scholar 

  • Byröd, M., Josephson, K., & Åström, K. (2009). Fast and stable polynomial equation solving and its application to computer vision. International Journal Computer Vision, 84(3), 237–256.

    Article  Google Scholar 

  • Cass, T. A. (1999). Polynomial-time geometric matching for object recognition. International Journal Computer Vision, 21(1–2), 37–61.

    Google Scholar 

  • Chum, O., & Matas, J. (2008). Optimal randomized ransac. IEEE Transactions on Pattern Analysis and Machine Intelligence, 30(8), 1472–1482.

    Article  Google Scholar 

  • Enqvist, O., & Kahl, F. (2008). Robust optimal pose estimation. In European Conference on Computer Vision (pp. 141–153). Marseille, France.

  • Fischler, M. A., & Bolles, R. C. (1981). Random sample consensus: a paradigm for model fitting with application to image analysis and automated cartography. Communications of Association for Computing Machinery, 24, 381–395.

    Article  MathSciNet  Google Scholar 

  • Hartley, R., & Sturm, P. (1997). Triangulation. Computer Vision and Image Understanding, 68(2), 146–157.

  • Hartley, R. I., & Zisserman, A. (2004). Multiple view geometry in computer vision (Second ed.). Cambridge: Cambridge University Press.

    Book  MATH  Google Scholar 

  • Horn, B. K. P., Hilden, H. M., & Negahdaripour, S. (1988). Closed-form solution of absolute orientation using ortonormal matrices. Journal of the Optical Society of America A, 5(7), 1127–1135.

    Article  MathSciNet  Google Scholar 

  • Johnson, D. S., & Preparata, F. P. (1978). The densest hemisphere problem. Theoretical Computer Science, 6(1), 93–107.

    Article  MATH  MathSciNet  Google Scholar 

  • Kahl, F. (2001). Geometry and critical configurations of multiple views. PhD thesis, Lund Institute of Technology, Sweden.

  • Kahl, F., & Hartley, R. (2008). Multiple view geometry under the \(L_\infty \)-norm. IEEE Transactions on Pattern Analysis and Machine Intelligence, 30(9), 1603–1617.

    Article  Google Scholar 

  • Ke, Q., & Kanade, T. (2007). Quasiconvex optimization for robust geometric reconstruction. IEEE Transactions on Pattern Analysis and Machine Intelligence, 29(10), 1834–1847.

    Article  Google Scholar 

  • Lebeda, K., Matas, J., & Chum, O. (2012). Fixing the locally optimized ransac. In: British Machine Vision Conference. Guilford, UK.

  • Li, H. (2007). A practical algorithm for \(L_\infty \) triangulation with outliers. In:Conference on Computer Vision and Pattern Recognition. Minneapolis, USA.

  • Li, H. (2009). Consensus set maximization with guaranteed global optimality for robust geometry estimation. In: International Conference on Computer Vision. Kyoto, Japan.

  • Mittal, S., Anand, S., & Meer, P. (2012). Generalized projection based m-estimator: Theory and applications. IEEE Transactions on Pattern Analysis and Machine Intelligence, 34(12), 2351–2364.

    Article  Google Scholar 

  • Olsson, C., Enqvist, O., & Kahl, F. (2008). A polynomial-time bound for matching and registration with outliers. In: Conference of Computer Vision and Pattern Recognition. Anchorage, USA.

  • Olsson, C., Eriksson, A., & Hartley, R. (2010). Outlier removal using duality. In: Conference on Computer Vision and Pattern Recognition. San Francisco, USA.

  • Sim, K., & Hartley, R. (2006). Removing outliers using the \(L_\infty \)-norm. In: Conference on Computer Vision and Pattern Recognition (pp. 485–492). New York City, USA.

  • Toldo, R., & Fusiello, A. (2008). Robust multiple structures estimation with J-linkage. In: European Conference on Computer Vision. Marseille, France.

  • Tordoff, B., & Murray, D. W. (2002). Guided sampling and consensus for motion estimation. In: European Conference on Computer Vision (pp. 82–98). Copenhagen, Denmark.

  • Wills, J., Agarwal, S., & Belongie, S. (2006). A feature-based approach for dense segmentation and estimation of large disparity motion. International Journal Computer Vision, 68(2), 125–143.

    Article  Google Scholar 

  • Yu, J., Eriksson, A., Chin, T.-J., & Suter, D. (2011). An adversarial optimization approach to efficient outlier removal. In: International Conference on Computer Vision. Barcelona, Spain.

  • Zuliani, M., Kenney, C. S., & Manjunath, B. S. (2005). The multi-RANSAC algorithm and its application to detect planar homographies. In: International Conference on Image Processing. Genoa, Italy.

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Olof Enqvist.

Additional information

Communicated by M. Hebert.

Appendices

Appendix 1: Fast Outlier Rejection

It would naturally be a great advantage if outliers could be discarded early and not even considered as input to Algorithm 2. This section will present such a method for fast outlier rejection which works both for registration and stitching. Our presentation is focused on the zero-one, but it can easily be adapted to the truncated \(L_2\)-norm as well. Note that only correspondences that can be shown to not be part of an optimal inlier set will be discarded.

The technique iterates through the correspondences, or in our terminology, the residuals. For each residual function \(r_i \in S\), we obtain a bound of the following type: If \(r_i\) is an inlier to the (unknown) optimal solution \(\theta ^*\), then the total loss \(l(\theta ^*)\) is larger than some number, say \(l_{bound}\). If this bound \(l_{bound}\) is higher than the best solution found so far, we get a contradiction and we can draw the conclusion that \(r_i\) must be an outlier. The residual \(r_i\) can then be permanently removed from the discussion (that is, removed from \(S\)).

Let us assume that residual \(r_i\) is below the threshold at optimum, that is, the \(i\)th correspondence is an inlier. Under this assumption, we will produce a bound on the optimal solution.

Proposition 1

Suppose that for a set of corresponding points there exists a transformation \(T\) represented with parameters \(\theta \) (for registration or stitching) such that all residuals are less than \(\epsilon \), that is, \(r_j(\theta ) \le \epsilon \) for all \(j\). Then there exists another transformation \(T'\) with parameters \(\theta '\) such that \(r_i(\theta ') = 0\) and all other residuals are less than \(2\epsilon \), that is, \(r_j(\theta ') \le 2 \epsilon \) for all \(j\) but \(i\).

Proof

(Registration) Set \(t'=y_i-Rx_i\) and \(R'=R\). Then

$$\begin{aligned} r_i(\theta ')=||R'x_i + t' - y_i||=0. \end{aligned}$$

Further,

$$\begin{aligned} ||t-t'|| = ||t+Rx_i-y_i|| \le \epsilon \end{aligned}$$

and hence for any \(j\),

$$\begin{aligned} r_j(\theta ')&= ||R'x_j + t' - y_j|| \\&\le ||Rx_j + t - y_j|| + ||t-t'|| \le 2\epsilon . \end{aligned}$$

\(\square \)

Proof

(Stitching) Let \(\alpha = \angle (y_i,Rx_i)\). Then a rotation \(R_\alpha \) about \(Rx_i \times y_i\) will map \(Rx_i\) exactly to \(y_i\) and \(||R_\alpha || \le \epsilon \). So, set \(R'=R_\alpha R\) and hence

$$\begin{aligned} r_i(\theta ')=||R'x_i-y_i||=||R_\alpha Rx_i-y_i||=0 \end{aligned}$$

and for any \(j\),

$$\begin{aligned} ||R' x_j - y_j||&\le ||R_\alpha Rx_j - Rx_j|| + ||Rx_j - y_j||\\&\le ||R_\alpha || + \epsilon \le 2\epsilon . \end{aligned}$$

\(\square \)

This means that a bound for the number of \(2\epsilon \)-inliers given that \(r_i = 0\) is also a bound for the number of \(\epsilon \)-inliers given that \(r_i \le \epsilon \). For both registration and stitching, computing the former bound is fairly easy as the constraint \(r_i=0\) fixes the transformation up to a one-dimensional rotation using correspondence \((x_i,y_i)\). We can parameterize this rotation with an angle \(\alpha \). Each of the remaining correspondences yields an interval constraint on this \(\alpha \) (which should be interpreted modulo \(2\pi \)) for which it is an inlier. To get a bound on the number of inliers we need to find a point that lies in as many of these intervals as possible. This can be done by sorting the intervals and going through the sorted list. The computationally most costly part here is the sorting and hence the cost of this algorithm is \(\mathcal {O}(n \log {n})\). If we do this for each correspondence we get a cost of \(\mathcal {O}(n^2 \log {n})\), which is significantly cheaper than the optimal algorithm.

Appendix 2: Handling Degeneracies

Essentially, Condition 3 states that constraints are in some sense random. For example, it will normally not happen that more than \(d\) residuals will be exactly equal to \(\epsilon \) at the same \(\theta \)—and numerical accuracy will make it impossible to securely detect it. Having said that, assume that the problem has some special structure which makes degeneracies possible (and which makes it possible for us to detect them). With a little extra work we can still compute all inlier-outlier partitions. As we are not aware of any applications with this type of degeneracy we will only briefly sketch the solution.

Consider a critical point, \(\theta _c\), such that Condition 3 does not hold. We want to find all partitions \((I,O)\) that such that \(\theta _c \in \overline{D}(I,O)\). Place a ball around \(\theta _c\) such that all other critical points are outside this ball. We will now show that this \(\overline{D}(I,O)\) intersects this ball for all the desired partitions.

Assume the contrary, that there exists a partition \((I,O)\) such that \(\overline{D}(I,O)\) (or at least a subset of it) is completely contained in this ball. Then that set is compact and hence \(f\) has both a maximizer and a minimizer on this set. These two cannot coincide and they will both be critical points. Hence there is another critical point inside the specified ball, which is a contradiction.

A strategy to find the partitions at \(\theta _c\) is to enumerate all the partitions on the specified ball. If necessary this process can be iterated.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Enqvist, O., Ask, E., Kahl, F. et al. Tractable Algorithms for Robust Model Estimation. Int J Comput Vis 112, 115–129 (2015). https://doi.org/10.1007/s11263-014-0760-2

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s11263-014-0760-2

Keywords

Navigation