66
Optimisation in Multiple View Geometry: The L-infinity Way (Part 2) Tat-Jun Chin The University of Adelaide CVPR 2018 Tutorial Tat-Jun Chin (The University of Adelaide) Optimisation in Multiple View Geometry CVPR 2018 Tutorial 1 / 66

Optimisation in Multiple View Geometry: The L-infinity Way (Part 2)tjchin/tutorials/cvpr18/Part2.pdf · Optimisation in Multiple View Geometry: The L-in nity Way (Part 2) Tat-Jun

  • Upload
    others

  • View
    4

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Optimisation in Multiple View Geometry: The L-infinity Way (Part 2)tjchin/tutorials/cvpr18/Part2.pdf · Optimisation in Multiple View Geometry: The L-in nity Way (Part 2) Tat-Jun

Optimisation in Multiple View Geometry:The L-infinity Way

(Part 2)

Tat-Jun Chin

The University of Adelaide

CVPR 2018 Tutorial

Tat-Jun Chin (The University of Adelaide) Optimisation in Multiple View Geometry CVPR 2018 Tutorial 1 / 66

Page 2: Optimisation in Multiple View Geometry: The L-infinity Way (Part 2)tjchin/tutorials/cvpr18/Part2.pdf · Optimisation in Multiple View Geometry: The L-in nity Way (Part 2) Tat-Jun

Table of Contents

1 Recap: Quasiconvexity

2 LP-type problems

3 Approximation

4 Robust estimation

5 References

Tat-Jun Chin (The University of Adelaide) Optimisation in Multiple View Geometry CVPR 2018 Tutorial 2 / 66

Page 3: Optimisation in Multiple View Geometry: The L-infinity Way (Part 2)tjchin/tutorials/cvpr18/Part2.pdf · Optimisation in Multiple View Geometry: The L-in nity Way (Part 2) Tat-Jun

Table of Contents

1 Recap: Quasiconvexity

2 LP-type problems

3 Approximation

4 Robust estimation

5 References

Tat-Jun Chin (The University of Adelaide) Optimisation in Multiple View Geometry CVPR 2018 Tutorial 3 / 66

Page 4: Optimisation in Multiple View Geometry: The L-infinity Way (Part 2)tjchin/tutorials/cvpr18/Part2.pdf · Optimisation in Multiple View Geometry: The L-in nity Way (Part 2) Tat-Jun

Recap: Quasiconvexity

r(x) = π − θ(x)x ∈ upper halfplane

Animation of sublevel sets.

Tat-Jun Chin (The University of Adelaide) Optimisation in Multiple View Geometry CVPR 2018 Tutorial 4 / 66

Page 5: Optimisation in Multiple View Geometry: The L-infinity Way (Part 2)tjchin/tutorials/cvpr18/Part2.pdf · Optimisation in Multiple View Geometry: The L-in nity Way (Part 2) Tat-Jun

Recap: QuasiconvexityLet {ri}Ni=1 be a set of quasiconvex functions, where each

ri : D 7→ R≥0

and D is a convex domain.Then, the point-wise maximum function

Q(x) = maxi

ri (x) =

∥∥∥∥∥∥∥ r1(x)

...rN(x)

∥∥∥∥∥∥∥∞

is also quasiconvex for x ∈ D.48 2. APPROXIMATE ALGORITHMS

-2 -1 0 1 2x

0

0.5

1

1.5

r(x)

s

(a)

-2 -1 0 1 2x

0

2

4

6

8

10

12

r(x)

s

(b)

Figure 2.16: (a) A quasiconvex function r(x) with the real line R as its domain. The s-sublevel

set Lrs is plotted as a red line segment on the x-axis. For any s � 0, Lr

s is a convex set, i.e., a

contiguous line segment. Note that this function is not convex. (b) A non-quasiconvex function

for comparison; in this function, not all Lrs for s � 0 are convex.

2.5 LP-TYPE PROBLEMS

This slightly lengthier section explores consensus maximisation under the framework of

LP-type problems. The motivation for including this relatively abstract topic is two-fold:

• LP-type problems are a generalisation of the Chebyshev approximation problem. As

we will see later in Section 2.5.3, the LP-type framework allows further theoretical

analysis of the outlier removal technique in Section 2.4.2.

• LP-type problems provide a unifying framework and convenient terminology to discuss

a class of “tractable” exact algorithms in Chapter 3.

We begin by defining LP-type problems and describing their common properties.

2.5.1 DEFINITION AND PROPERTIES

LP-type problems were first defined by Matousek et al. [1996] as a generalisation of linear

programming problems. In abstract terms, an LP-type problem (S, f) consists of a set of

constraints S, each involving d variables ✓, and an objective function f that maps subsets

of S to R+ [ {0}. Further, f satisfies the following properties:

Property 2.10 (Monotonicity) For every two sets P ✓ Q ✓ S, the inequalities f(P) f(Q) f(S) can be established.

Tat-Jun Chin (The University of Adelaide) Optimisation in Multiple View Geometry CVPR 2018 Tutorial 5 / 66

Page 6: Optimisation in Multiple View Geometry: The L-infinity Way (Part 2)tjchin/tutorials/cvpr18/Part2.pdf · Optimisation in Multiple View Geometry: The L-in nity Way (Part 2) Tat-Jun

Quasiconvex programming

Minimising the point-wise maximum of a set of quasiconvex functions{ri}Ni=1 defined over a convex domain D, i.e.,

minx∈D

maxi

ri (x)

D. Eppstein. Quasiconvex programming. Combinatorial and Computational Geometry 25 (2005).

Tat-Jun Chin (The University of Adelaide) Optimisation in Multiple View Geometry CVPR 2018 Tutorial 6 / 66

Page 7: Optimisation in Multiple View Geometry: The L-infinity Way (Part 2)tjchin/tutorials/cvpr18/Part2.pdf · Optimisation in Multiple View Geometry: The L-in nity Way (Part 2) Tat-Jun

Example: Mesh smoothing

Function ri (x) = π − θi (x)decreases with θi (x).

Solving

minx∈D

maxi

ri (x)

finds mesh vertex x that is asclose as possible to all sides.

Solution can only lie in D (theconvex region shaded in blue).

Amenta et al. Optimal point placement for mesh smoothing. Journal of Algorithms 30.2 (1999), pp. 302–322.

Tat-Jun Chin (The University of Adelaide) Optimisation in Multiple View Geometry CVPR 2018 Tutorial 7 / 66

Page 8: Optimisation in Multiple View Geometry: The L-infinity Way (Part 2)tjchin/tutorials/cvpr18/Part2.pdf · Optimisation in Multiple View Geometry: The L-in nity Way (Part 2) Tat-Jun

Example: Multi-view triangulation (L-infinity)

Given camera matrix P and image point u,

r(x) =

∥∥∥∥∥P(1:2)x

P(3)x− u

∥∥∥∥∥2

=

∥∥[P(1:2) − uP(3)]x∥∥

2

P(3)x

gives the reprojection error of 3D point x ∈ R3. If P(3)x ≥ 0, then xlies in front of the camera.

Given N 2D points {ui}Ni=1 fromN views {Pi}Ni=1, solving

minx∈D

maxi

ri (x)

finds x that minimises thelargest reprojection error. Here

D ={x ∈ R3 | P(3)

i x ≥ 0}. Figure from Kahl and Hartley, ECCV’06 Tutorial.

Tat-Jun Chin (The University of Adelaide) Optimisation in Multiple View Geometry CVPR 2018 Tutorial 8 / 66

Page 9: Optimisation in Multiple View Geometry: The L-infinity Way (Part 2)tjchin/tutorials/cvpr18/Part2.pdf · Optimisation in Multiple View Geometry: The L-in nity Way (Part 2) Tat-Jun

Example: Minimum enclosing circle (MEC)

Given a set of points {pi}Ni=1 on theplane, find the smallest circle thatencloses all the points:

minx∈R2

maxi‖x− pi‖2

Tat-Jun Chin (The University of Adelaide) Optimisation in Multiple View Geometry CVPR 2018 Tutorial 9 / 66

Page 10: Optimisation in Multiple View Geometry: The L-infinity Way (Part 2)tjchin/tutorials/cvpr18/Part2.pdf · Optimisation in Multiple View Geometry: The L-in nity Way (Part 2) Tat-Jun

Example: Chebyshev approximation

Given a set of points {(ai , bi )}Ni=1 in (d + 1) dimensions, find thehyperplane x ∈ Rd that minimises the largest residual

minx∈Rd

maxi|aTi x− bi |

Special case: Minimum enclosing slab (MES)Setting ai = [pi 1]T and bi = qi ,where (pi , qi ) are points on theplane, performing Chebyshevapproximation amounts to findingthe thinnest slab that encloses allthe points.

Width of slab is measured vertically(i.e., along the q-axis).

Tat-Jun Chin (The University of Adelaide) Optimisation in Multiple View Geometry CVPR 2018 Tutorial 10 / 66

Page 11: Optimisation in Multiple View Geometry: The L-infinity Way (Part 2)tjchin/tutorials/cvpr18/Part2.pdf · Optimisation in Multiple View Geometry: The L-in nity Way (Part 2) Tat-Jun

Table of Contents

1 Recap: Quasiconvexity

2 LP-type problems

3 Approximation

4 Robust estimation

5 References

Tat-Jun Chin (The University of Adelaide) Optimisation in Multiple View Geometry CVPR 2018 Tutorial 11 / 66

Page 12: Optimisation in Multiple View Geometry: The L-infinity Way (Part 2)tjchin/tutorials/cvpr18/Part2.pdf · Optimisation in Multiple View Geometry: The L-in nity Way (Part 2) Tat-Jun

Linear programming (LP)-type problems

An LP-type problem consists ofI A set of “constraints” S;I An objective function f that measures the cost of any subset of S.

The goal is to compute f (S).

Two main properties:

Monotonicity

For any two subsets A and B of S, if A ⊂ B then f (A) ≤ f (B).

Locality

For any A ⊆ S, p ∈ S and q ∈ S, if f (A) = f (A ∪ {p}) = f (A ∪ {q}),then f (A) = f (A ∪ {p, q}).

D. Eppstein. Quasiconvex programming. Combinatorial and Computational Geometry 25 (2005).

Tat-Jun Chin (The University of Adelaide) Optimisation in Multiple View Geometry CVPR 2018 Tutorial 12 / 66

Page 13: Optimisation in Multiple View Geometry: The L-infinity Way (Part 2)tjchin/tutorials/cvpr18/Part2.pdf · Optimisation in Multiple View Geometry: The L-in nity Way (Part 2) Tat-Jun

Examples: MEC and MES

Minimum enclosing circle (MEC):

S = {pi}Ni=1 and f (S) gives the radius of MEC(S).

Monotonicity

If A ⊂ B ⊆ S, then MEC(A) cannot be larger than MEC(B).

Locality

If f (A) = f (A ∪ {pi}), then point pi lies in MEC(A).If f (A) = f (A ∪ {qi}), then point qi also lies in MEC(A).Clearly {pi ,qi} also lie in MEC(A), hence f (A) = f (A ∪ {pi ,qi}).

Minimum enclosing slab (MES):

S = {(ai , bi )}Ni=1 and f (S) gives the width of MES(S).

Replace MEC with MES in the arguments above.

Tat-Jun Chin (The University of Adelaide) Optimisation in Multiple View Geometry CVPR 2018 Tutorial 13 / 66

Page 14: Optimisation in Multiple View Geometry: The L-infinity Way (Part 2)tjchin/tutorials/cvpr18/Part2.pdf · Optimisation in Multiple View Geometry: The L-in nity Way (Part 2) Tat-Jun

Basis

A basis of an LP-type problem (S, f ) is a subset B ⊆ S such thatf (A) < f (B) for every A ⊂ B.

Tat-Jun Chin (The University of Adelaide) Optimisation in Multiple View Geometry CVPR 2018 Tutorial 14 / 66

Page 15: Optimisation in Multiple View Geometry: The L-infinity Way (Part 2)tjchin/tutorials/cvpr18/Part2.pdf · Optimisation in Multiple View Geometry: The L-in nity Way (Part 2) Tat-Jun

Examples: MEC and MES

Tat-Jun Chin (The University of Adelaide) Optimisation in Multiple View Geometry CVPR 2018 Tutorial 15 / 66

Page 16: Optimisation in Multiple View Geometry: The L-infinity Way (Part 2)tjchin/tutorials/cvpr18/Part2.pdf · Optimisation in Multiple View Geometry: The L-in nity Way (Part 2) Tat-Jun

Support set

The support set K of an LP-type problem (S, f ) is a basis of the problemsuch that f (S) = f (K).

Further properties:

Solving an LP-type problem amounts to finding its support set.

The cost/residual of all items in K are equal w.r.t. the estimate.

Items not in the support set (the subset S \ K) can be ignored.

Tat-Jun Chin (The University of Adelaide) Optimisation in Multiple View Geometry CVPR 2018 Tutorial 16 / 66

Page 17: Optimisation in Multiple View Geometry: The L-infinity Way (Part 2)tjchin/tutorials/cvpr18/Part2.pdf · Optimisation in Multiple View Geometry: The L-in nity Way (Part 2) Tat-Jun

Example: MEC

Tat-Jun Chin (The University of Adelaide) Optimisation in Multiple View Geometry CVPR 2018 Tutorial 17 / 66

Page 18: Optimisation in Multiple View Geometry: The L-infinity Way (Part 2)tjchin/tutorials/cvpr18/Part2.pdf · Optimisation in Multiple View Geometry: The L-in nity Way (Part 2) Tat-Jun

Example: MES

Points in the support set K have equal (maximum) distance to theChebyshev fit.

Tat-Jun Chin (The University of Adelaide) Optimisation in Multiple View Geometry CVPR 2018 Tutorial 18 / 66

Page 19: Optimisation in Multiple View Geometry: The L-infinity Way (Part 2)tjchin/tutorials/cvpr18/Part2.pdf · Optimisation in Multiple View Geometry: The L-in nity Way (Part 2) Tat-Jun

Combinatorial dimension

The upper bound on the size of a basis in an LP-type problem (S, f ).

Any quasiconvex program forms an LP-type problem of combinatorialdimension is 2d + 1.

If each component ri is continuously shrinking, then the combinatorialdimension is d + 1.

Sim and Harley showed that functions of the form

r(x) =‖Ax + b‖2

pTx + q

are continuously shrinking for pTx + q > 0. Call problems of thisform quasiconvex geometric problems.

Amenta et al. Optimal point placement for mesh smoothing. Journal of Algorithms 30.2 (1999), pp. 302–322.

K. Sim and R. Hartley. Removing outliers using the l-infinity norm. CVPR 2006.

Tat-Jun Chin (The University of Adelaide) Optimisation in Multiple View Geometry CVPR 2018 Tutorial 19 / 66

Page 20: Optimisation in Multiple View Geometry: The L-infinity Way (Part 2)tjchin/tutorials/cvpr18/Part2.pdf · Optimisation in Multiple View Geometry: The L-in nity Way (Part 2) Tat-Jun

Example: L-infinity triangulationS = {(Pi ,ui )}Ni=1 is a set of N camera matrices and image points, and

f (S) = minx∈D

maxi∈S

∥∥∥[P(1:2)i − uiP

(3)i

]x∥∥∥

2

P(3)i x

Tat-Jun Chin (The University of Adelaide) Optimisation in Multiple View Geometry CVPR 2018 Tutorial 20 / 66

Page 21: Optimisation in Multiple View Geometry: The L-infinity Way (Part 2)tjchin/tutorials/cvpr18/Part2.pdf · Optimisation in Multiple View Geometry: The L-in nity Way (Part 2) Tat-Jun

Solving LP-type problems

function solve lptype(S,f ,C):

1: if S = C then2: return C.3: end if4: c ← A random item from S \ C.5: B ← solve lptype(S \ {c}, f , C).6: if f (B) 6= f (B ∪ {c}) then7: B ← basis(B ∪ {c}).8: B ← solve lptype(S,f ,B).9: end if

10: return B

// Core 1: violation test// Core 2: basis updating

Matousek et al. A subexponential bound for linear programming. Algorithmica 16 (1996), pp. 498–516.

Tat-Jun Chin (The University of Adelaide) Optimisation in Multiple View Geometry CVPR 2018 Tutorial 21 / 66

Page 22: Optimisation in Multiple View Geometry: The L-infinity Way (Part 2)tjchin/tutorials/cvpr18/Part2.pdf · Optimisation in Multiple View Geometry: The L-in nity Way (Part 2) Tat-Jun

Solving LP-type problems

function solve lptype(S,f ,C):

1: if S = C then2: return C.3: end if4: c ← A random item from S \ C.5: B ← solve lptype(S \ {c}, f , C).6: if f (B) 6= f (B ∪ {c}) then7: B ← basis(B ∪ {c}).8: B ← solve lptype(S,f ,B).9: end if

10: return B

H. Li. Efficient reduction of L-infinity geometry problems. CVPR 2009.

Tat-Jun Chin (The University of Adelaide) Optimisation in Multiple View Geometry CVPR 2018 Tutorial 22 / 66

Page 23: Optimisation in Multiple View Geometry: The L-infinity Way (Part 2)tjchin/tutorials/cvpr18/Part2.pdf · Optimisation in Multiple View Geometry: The L-in nity Way (Part 2) Tat-Jun

Table of Contents

1 Recap: Quasiconvexity

2 LP-type problems

3 Approximation

4 Robust estimation

5 References

Tat-Jun Chin (The University of Adelaide) Optimisation in Multiple View Geometry CVPR 2018 Tutorial 23 / 66

Page 24: Optimisation in Multiple View Geometry: The L-infinity Way (Part 2)tjchin/tutorials/cvpr18/Part2.pdf · Optimisation in Multiple View Geometry: The L-in nity Way (Part 2) Tat-Jun

Another algorithm

Keep expanding C and updating xC using the point with the largestresidual until all points are covered.

function solve lptype mv(S,f ):

1: C ← Randomly select one item from S.2: while true do3: xC ← arg minx∈D maxi∈C ri (x). // Solve on current coreset C.4: i∗ ← arg maxi∈S ri (xC). // Find most violating point.5: if ri∗(xC) ≤ f (C) then6: Break. // Most violating point already covered; done.7: end if8: C ← C ∪ {i∗}. // Insert one point.9: end while

10: return xC

Clarkson. Coresets, sparse greedy approximation, and the Frank-Wolfe algorithm. SODA 2008.

Seo and Hartley. A Fast Method to Minimize L Error Norm for Geometric Vision Problems. ICCV 2007.

Tat-Jun Chin (The University of Adelaide) Optimisation in Multiple View Geometry CVPR 2018 Tutorial 24 / 66

Page 25: Optimisation in Multiple View Geometry: The L-infinity Way (Part 2)tjchin/tutorials/cvpr18/Part2.pdf · Optimisation in Multiple View Geometry: The L-in nity Way (Part 2) Tat-Jun

Another algorithm

Keep expanding C and updating xC using the point with the largestresidual until all points are covered.

function solve lptype mv(S,f ):

1: C ← Randomly select one item from S.2: while true do3: xC ← arg minx∈D maxi∈C ri (x). // Warm start using prev. xC .4: i∗ ← arg maxi∈S ri (xC). // Find most violating point.5: if ri∗(xC) ≤ f (C) then6: Break. // Most violating point already covered; done.7: end if8: C ← C ∪ {i∗}. // Insert one point.9: end while

10: return xC

Clarkson. Coresets, sparse greedy approximation, and the Frank-Wolfe algorithm. SODA 2008.

Seo and Hartley. A Fast Method to Minimize L Error Norm for Geometric Vision Problems. ICCV 2007.

Tat-Jun Chin (The University of Adelaide) Optimisation in Multiple View Geometry CVPR 2018 Tutorial 25 / 66

Page 26: Optimisation in Multiple View Geometry: The L-infinity Way (Part 2)tjchin/tutorials/cvpr18/Part2.pdf · Optimisation in Multiple View Geometry: The L-in nity Way (Part 2) Tat-Jun

Example: MEC

Input data S: Initial C:

Tat-Jun Chin (The University of Adelaide) Optimisation in Multiple View Geometry CVPR 2018 Tutorial 26 / 66

Page 27: Optimisation in Multiple View Geometry: The L-infinity Way (Part 2)tjchin/tutorials/cvpr18/Part2.pdf · Optimisation in Multiple View Geometry: The L-in nity Way (Part 2) Tat-Jun

Example: MEC

Found most violating point: Insert into C and update MEC:

Tat-Jun Chin (The University of Adelaide) Optimisation in Multiple View Geometry CVPR 2018 Tutorial 27 / 66

Page 28: Optimisation in Multiple View Geometry: The L-infinity Way (Part 2)tjchin/tutorials/cvpr18/Part2.pdf · Optimisation in Multiple View Geometry: The L-in nity Way (Part 2) Tat-Jun

Example: MEC

Found most violating point: Insert into C and update MEC:

Tat-Jun Chin (The University of Adelaide) Optimisation in Multiple View Geometry CVPR 2018 Tutorial 28 / 66

Page 29: Optimisation in Multiple View Geometry: The L-infinity Way (Part 2)tjchin/tutorials/cvpr18/Part2.pdf · Optimisation in Multiple View Geometry: The L-in nity Way (Part 2) Tat-Jun

Example: MEC

Found most violating point: Insert into C and update MEC:

Tat-Jun Chin (The University of Adelaide) Optimisation in Multiple View Geometry CVPR 2018 Tutorial 29 / 66

Page 30: Optimisation in Multiple View Geometry: The L-infinity Way (Part 2)tjchin/tutorials/cvpr18/Part2.pdf · Optimisation in Multiple View Geometry: The L-in nity Way (Part 2) Tat-Jun

Example: MEC

Found most violating point: Insert into C and update MEC:

No more violating points—done.

Tat-Jun Chin (The University of Adelaide) Optimisation in Multiple View Geometry CVPR 2018 Tutorial 30 / 66

Page 31: Optimisation in Multiple View Geometry: The L-infinity Way (Part 2)tjchin/tutorials/cvpr18/Part2.pdf · Optimisation in Multiple View Geometry: The L-in nity Way (Part 2) Tat-Jun

Coresets

Red circle = MEC on current C.Blue circle = MEC on S.

errorC := maxi∈S ri (xC).

errorS := f (S) = maxi∈S ri (xS).

By construction errorC ≥ errorS , but we can also guarantee that

errorCerrorS

≤ (1 + ε), where ε =2

|S|

Tat-Jun Chin (The University of Adelaide) Optimisation in Multiple View Geometry CVPR 2018 Tutorial 31 / 66

Page 32: Optimisation in Multiple View Geometry: The L-infinity Way (Part 2)tjchin/tutorials/cvpr18/Part2.pdf · Optimisation in Multiple View Geometry: The L-in nity Way (Part 2) Tat-Jun

Coresets

Blue = Theoretical boundRed = Actual error ratios

Q. Zhang and T.-J. Chin. Coresets for triangulation. IEEE TPAMI (2017). doi: 10.1109/TPAMI.2017.2750672.

Tat-Jun Chin (The University of Adelaide) Optimisation in Multiple View Geometry CVPR 2018 Tutorial 32 / 66

Page 33: Optimisation in Multiple View Geometry: The L-infinity Way (Part 2)tjchin/tutorials/cvpr18/Part2.pdf · Optimisation in Multiple View Geometry: The L-in nity Way (Part 2) Tat-Jun

Coresets

Q. Zhang and T.-J. Chin. Coresets for triangulation. IEEE TPAMI (2017). doi: 10.1109/TPAMI.2017.2750672.

Tat-Jun Chin (The University of Adelaide) Optimisation in Multiple View Geometry CVPR 2018 Tutorial 33 / 66

Page 34: Optimisation in Multiple View Geometry: The L-infinity Way (Part 2)tjchin/tutorials/cvpr18/Part2.pdf · Optimisation in Multiple View Geometry: The L-in nity Way (Part 2) Tat-Jun

Coresets

Q. Zhang and T.-J. Chin. Coresets for triangulation. IEEE TPAMI (2017). doi: 10.1109/TPAMI.2017.2750672.

Tat-Jun Chin (The University of Adelaide) Optimisation in Multiple View Geometry CVPR 2018 Tutorial 34 / 66

Page 35: Optimisation in Multiple View Geometry: The L-infinity Way (Part 2)tjchin/tutorials/cvpr18/Part2.pdf · Optimisation in Multiple View Geometry: The L-in nity Way (Part 2) Tat-Jun

Table of Contents

1 Recap: Quasiconvexity

2 LP-type problems

3 Approximation

4 Robust estimation

5 References

Tat-Jun Chin (The University of Adelaide) Optimisation in Multiple View Geometry CVPR 2018 Tutorial 35 / 66

Page 36: Optimisation in Multiple View Geometry: The L-infinity Way (Part 2)tjchin/tutorials/cvpr18/Part2.pdf · Optimisation in Multiple View Geometry: The L-in nity Way (Part 2) Tat-Jun

Sensitivity to outliers

Minimising the largest residual amounts to fitting on the outliers.Hence, L-infinity estimation is not robust.

Nonetheless, the L-infinity approach provides a good framework toanalyse and develop robust estimation algorithms.

Tat-Jun Chin (The University of Adelaide) Optimisation in Multiple View Geometry CVPR 2018 Tutorial 36 / 66

Page 37: Optimisation in Multiple View Geometry: The L-infinity Way (Part 2)tjchin/tutorials/cvpr18/Part2.pdf · Optimisation in Multiple View Geometry: The L-in nity Way (Part 2) Tat-Jun

Robust estimation

Let (S, f ) be an LP-type problem with quasiconvex geometricresiduals {ri}Ni=1, where some of the residuals correspond to outliers.

Solve for x by ignoring residuals that are greater than ε:

maxx∈D, I⊆S

|I|

s.t. ri (x) ≤ ε, i ∈ I.(Consensus maximisation)

Let I∗ be the maximum consensus set. Observe that

minx∈D

maxi∈I∗

ri (x)

is the LP-type problem (I∗, f ), and by construction

f (I∗) ≤ ε.

Tat-Jun Chin (The University of Adelaide) Optimisation in Multiple View Geometry CVPR 2018 Tutorial 37 / 66

Page 38: Optimisation in Multiple View Geometry: The L-infinity Way (Part 2)tjchin/tutorials/cvpr18/Part2.pdf · Optimisation in Multiple View Geometry: The L-in nity Way (Part 2) Tat-Jun

Simple algorithm (enumeration)

Let K be the support set of (I∗, f ). Since I∗ ⊆ S, K is also a basisof (S, f ). =⇒ Find K by enumerating all bases of (S, f ).

Require: LP-type problem (S, f ), inlier threshold ε.1: ψ ← 0, K ← ∅.2: for all (d + 1)-subsets B of S do3: if f (B) ≤ ε then4: if coverage(B)> ψ then5: ψ ← coverage(B). // Needs a bit of explanation.6: K ← B.7: end if8: end if9: end for

10: return K.

Number of iterations =( Nd+1

). Including checking coverage, runtime

is O(Nd+2T (d)), where T (d) is time to solve f (B).

Olsson et al. A polynomial-time bound for matching and registration with outliers. CVPR 2008.

Enqvist et al. Robust fitting for multiple view geometry. ECCV 2012.

Tat-Jun Chin (The University of Adelaide) Optimisation in Multiple View Geometry CVPR 2018 Tutorial 38 / 66

Page 39: Optimisation in Multiple View Geometry: The L-infinity Way (Part 2)tjchin/tutorials/cvpr18/Part2.pdf · Optimisation in Multiple View Geometry: The L-in nity Way (Part 2) Tat-Jun

Computational hardness

NP-hardness

Consensus maximisation is NP-hard.

Proof: Turing reduction from Least Median Squares.=⇒ There are no polynomial time algorithms.

XP (slice-wise polynomial)

Consensus maximisation is XP in the dimension d .

Proof: Use enumeration method to get runtime of O(Nd+2T (d)).=⇒ For a fixed d , can get polynomial time in N.

W[1]-hardness

Consensus maximisation is W[1]-hard in the dimension d .

Proof: FPT reduction from K-clique.=⇒ There are no algorithms that are faster than O(N f (d)).

Chin et al. Robust Fitting in Computer Vision: Easy or Hard? CoRR abs/1802.06464 (2018).

Tat-Jun Chin (The University of Adelaide) Optimisation in Multiple View Geometry CVPR 2018 Tutorial 39 / 66

Page 40: Optimisation in Multiple View Geometry: The L-infinity Way (Part 2)tjchin/tutorials/cvpr18/Part2.pdf · Optimisation in Multiple View Geometry: The L-in nity Way (Part 2) Tat-Jun

The model is fitted to the outliers...

Tat-Jun Chin (The University of Adelaide) Optimisation in Multiple View Geometry CVPR 2018 Tutorial 40 / 66

Page 41: Optimisation in Multiple View Geometry: The L-infinity Way (Part 2)tjchin/tutorials/cvpr18/Part2.pdf · Optimisation in Multiple View Geometry: The L-in nity Way (Part 2) Tat-Jun

Recursive support set removal

For any instance (S, f ), if f (S) > ε, then there are outliers.

Since f (K) = f (S) > ε, where K is the support set, it is reasonable tosuspect that K contains outliers.

Idea: Recursively remove support sets of S until f (S) ≤ ε.Require: LP-type problem (S, f ), inlier threshold ε.

1: while true do2: K ← Support set of S.3: if f (K) > ε then4: S ← S \ K.5: else6: Break.7: end if8: end while9: return K.

Sim and Hartley. Removing Outliers Using The L-infty Norm. CVPR 2006.

Olsson et al. Outlier removal using duality. CVPR 2010.

Yu et al. An adversarial optimization approach to efficient outlier removal. ICCV 2011.

Tat-Jun Chin (The University of Adelaide) Optimisation in Multiple View Geometry CVPR 2018 Tutorial 41 / 66

Page 42: Optimisation in Multiple View Geometry: The L-infinity Way (Part 2)tjchin/tutorials/cvpr18/Part2.pdf · Optimisation in Multiple View Geometry: The L-in nity Way (Part 2) Tat-Jun

Recursive support set removal

Chin and Suter. The maximum consensus problem: recent algorithmic advances. Morgan & Claypool Publishers, Feb. 2017.

Tat-Jun Chin (The University of Adelaide) Optimisation in Multiple View Geometry CVPR 2018 Tutorial 42 / 66

Page 43: Optimisation in Multiple View Geometry: The L-infinity Way (Part 2)tjchin/tutorials/cvpr18/Part2.pdf · Optimisation in Multiple View Geometry: The L-in nity Way (Part 2) Tat-Jun

Recursive support set removal

Chin and Suter. The maximum consensus problem: recent algorithmic advances. Morgan & Claypool Publishers, Feb. 2017.

Tat-Jun Chin (The University of Adelaide) Optimisation in Multiple View Geometry CVPR 2018 Tutorial 43 / 66

Page 44: Optimisation in Multiple View Geometry: The L-infinity Way (Part 2)tjchin/tutorials/cvpr18/Part2.pdf · Optimisation in Multiple View Geometry: The L-in nity Way (Part 2) Tat-Jun

Recursive support set removal

Chin and Suter. The maximum consensus problem: recent algorithmic advances. Morgan & Claypool Publishers, Feb. 2017.

Tat-Jun Chin (The University of Adelaide) Optimisation in Multiple View Geometry CVPR 2018 Tutorial 44 / 66

Page 45: Optimisation in Multiple View Geometry: The L-infinity Way (Part 2)tjchin/tutorials/cvpr18/Part2.pdf · Optimisation in Multiple View Geometry: The L-in nity Way (Part 2) Tat-Jun

Recursive support set removal (bad case)

Chin and Suter. The maximum consensus problem: recent algorithmic advances. Morgan & Claypool Publishers, Feb. 2017.

Tat-Jun Chin (The University of Adelaide) Optimisation in Multiple View Geometry CVPR 2018 Tutorial 45 / 66

Page 46: Optimisation in Multiple View Geometry: The L-infinity Way (Part 2)tjchin/tutorials/cvpr18/Part2.pdf · Optimisation in Multiple View Geometry: The L-in nity Way (Part 2) Tat-Jun

“True” inliers and outliers

Call items in I∗ the “true” inliers, and items in O∗ = S \ I∗ the“true” outliers.

Existence of true outliers

Let C be a subset of S. If

f (C) > ε,

then C contains at least one item from O∗.The LP-type properties allow us to prove the above easily: iff (C) > ε, then by monotonicity

f (I∗ ∪ C) ≥ f (C) > ε. (1)

If C is a subset of I∗, then by locality

f (I∗ ∪ C) = f (I∗) ≤ ε (2)

which violates (1). =⇒ C contains at least one item from O∗.Tat-Jun Chin (The University of Adelaide) Optimisation in Multiple View Geometry CVPR 2018 Tutorial 46 / 66

Page 47: Optimisation in Multiple View Geometry: The L-infinity Way (Part 2)tjchin/tutorials/cvpr18/Part2.pdf · Optimisation in Multiple View Geometry: The L-in nity Way (Part 2) Tat-Jun

“True” inliers and outliers

Recursively removing support sets is sort of justified, but it alsoremoves true inliers in each iteration.

For combinatorial dimension d + 1, in the worst case, d true inliersare removed in each iteration.

To avoid losing too many inliers, the inlier proportion should begreater than

d

d + 1.

=⇒ Method is not advisable for high-dimensional or high-outlierrate problems.

Tat-Jun Chin (The University of Adelaide) Optimisation in Multiple View Geometry CVPR 2018 Tutorial 47 / 66

Page 48: Optimisation in Multiple View Geometry: The L-infinity Way (Part 2)tjchin/tutorials/cvpr18/Part2.pdf · Optimisation in Multiple View Geometry: The L-in nity Way (Part 2) Tat-Jun

Running example: Robust subspace fitting (1D)

Tat-Jun Chin (The University of Adelaide) Optimisation in Multiple View Geometry CVPR 2018 Tutorial 48 / 66

Page 49: Optimisation in Multiple View Geometry: The L-infinity Way (Part 2)tjchin/tutorials/cvpr18/Part2.pdf · Optimisation in Multiple View Geometry: The L-in nity Way (Part 2) Tat-Jun

In parameter space

Tat-Jun Chin (The University of Adelaide) Optimisation in Multiple View Geometry CVPR 2018 Tutorial 49 / 66

Page 50: Optimisation in Multiple View Geometry: The L-infinity Way (Part 2)tjchin/tutorials/cvpr18/Part2.pdf · Optimisation in Multiple View Geometry: The L-in nity Way (Part 2) Tat-Jun

In parameter space

Tat-Jun Chin (The University of Adelaide) Optimisation in Multiple View Geometry CVPR 2018 Tutorial 50 / 66

Page 51: Optimisation in Multiple View Geometry: The L-infinity Way (Part 2)tjchin/tutorials/cvpr18/Part2.pdf · Optimisation in Multiple View Geometry: The L-in nity Way (Part 2) Tat-Jun

Bases for LP-type problem

Tat-Jun Chin (The University of Adelaide) Optimisation in Multiple View Geometry CVPR 2018 Tutorial 51 / 66

Page 52: Optimisation in Multiple View Geometry: The L-infinity Way (Part 2)tjchin/tutorials/cvpr18/Part2.pdf · Optimisation in Multiple View Geometry: The L-in nity Way (Part 2) Tat-Jun

Bases for LP-type problem (closeup)

Every basis can be reached from the support set via a directed path.

Matousek. On geometric optimization with few violated constraints. Discrete comput. geom. 14.1 (1995), pp. 365–384.

H. Li. A practical algorithm for l-infinity triangulation with outliers. CVPR 2007.

Tat-Jun Chin (The University of Adelaide) Optimisation in Multiple View Geometry CVPR 2018 Tutorial 52 / 66

Page 53: Optimisation in Multiple View Geometry: The L-infinity Way (Part 2)tjchin/tutorials/cvpr18/Part2.pdf · Optimisation in Multiple View Geometry: The L-in nity Way (Part 2) Tat-Jun

Tree structure

Tat-Jun Chin (The University of Adelaide) Optimisation in Multiple View Geometry CVPR 2018 Tutorial 53 / 66

Page 54: Optimisation in Multiple View Geometry: The L-infinity Way (Part 2)tjchin/tutorials/cvpr18/Part2.pdf · Optimisation in Multiple View Geometry: The L-in nity Way (Part 2) Tat-Jun

Level of basis

Tat-Jun Chin (The University of Adelaide) Optimisation in Multiple View Geometry CVPR 2018 Tutorial 54 / 66

Page 55: Optimisation in Multiple View Geometry: The L-infinity Way (Part 2)tjchin/tutorials/cvpr18/Part2.pdf · Optimisation in Multiple View Geometry: The L-in nity Way (Part 2) Tat-Jun

Consensus maximisation

Chin et al. Efficient globally optimal consensus maximisation with tree search. CVPR 2015.

Tat-Jun Chin (The University of Adelaide) Optimisation in Multiple View Geometry CVPR 2018 Tutorial 55 / 66

Page 56: Optimisation in Multiple View Geometry: The L-infinity Way (Part 2)tjchin/tutorials/cvpr18/Part2.pdf · Optimisation in Multiple View Geometry: The L-in nity Way (Part 2) Tat-Jun

Tree search

Breadth first search (BFS) and A* search.

Chin et al. Efficient globally optimal consensus maximisation with tree search. CVPR 2015.

Tat-Jun Chin (The University of Adelaide) Optimisation in Multiple View Geometry CVPR 2018 Tutorial 56 / 66

Page 57: Optimisation in Multiple View Geometry: The L-infinity Way (Part 2)tjchin/tutorials/cvpr18/Part2.pdf · Optimisation in Multiple View Geometry: The L-in nity Way (Part 2) Tat-Jun

A* search

A* search prioritises the bases to expand by

eval(B) = level(B) + h(B),

where h is a heuristic function.

h estimates (but cannot overestimate) number of levels remaining.

Performing recursive support set removal with B as the initial supportset, and counting the number of removals, gives a valid heuristic.

Chin et al. Efficient globally optimal consensus maximisation with tree search. CVPR 2015.

Tat-Jun Chin (The University of Adelaide) Optimisation in Multiple View Geometry CVPR 2018 Tutorial 57 / 66

Page 58: Optimisation in Multiple View Geometry: The L-infinity Way (Part 2)tjchin/tutorials/cvpr18/Part2.pdf · Optimisation in Multiple View Geometry: The L-in nity Way (Part 2) Tat-Jun

Fixed parameter tractability

Fixed parameter tractability

Consensus maximisation is FPT in the dimension d and number of outliers|O∗|.

Proof: Use BFS to search the basis tree to get runtime ofO((d + 1)|O

∗|L(N, d)), where L(N, d) is time to solve LP-type problem.

Chin et al. Robust Fitting in Computer Vision: Easy or Hard? CoRR abs/1802.06464 (2018).

Tat-Jun Chin (The University of Adelaide) Optimisation in Multiple View Geometry CVPR 2018 Tutorial 58 / 66

Page 59: Optimisation in Multiple View Geometry: The L-infinity Way (Part 2)tjchin/tutorials/cvpr18/Part2.pdf · Optimisation in Multiple View Geometry: The L-in nity Way (Part 2) Tat-Jun

Monte Carlo Tree Search

Use randomisation to explore the tree quickly.

Leads to asymmetric treegrowth (tends to exploremore promising branches).

Browne et al. A survey of Monte Carlo tree search methods. IEEE Trans. Computational Intelligence and AI in Games, 2012.

Le et al. RATSAC - Random Tree Sampling for Maximum Consensus Estimation. DICTA 2017.

Tat-Jun Chin (The University of Adelaide) Optimisation in Multiple View Geometry CVPR 2018 Tutorial 59 / 66

Page 60: Optimisation in Multiple View Geometry: The L-infinity Way (Part 2)tjchin/tutorials/cvpr18/Part2.pdf · Optimisation in Multiple View Geometry: The L-in nity Way (Part 2) Tat-Jun

Approximability

APX-hardness

Consensus maximisation is APX-hard.

Proof: L-reduction from MAX-2SAT.=⇒ There are no polynomial time algorithms that can solve consensus

maximisation up to (1− δ)|I∗| for any pre-determined δ.

Chin et al. Robust Fitting in Computer Vision: Easy or Hard? CoRR abs/1802.06464 (2018).

Tat-Jun Chin (The University of Adelaide) Optimisation in Multiple View Geometry CVPR 2018 Tutorial 60 / 66

Page 61: Optimisation in Multiple View Geometry: The L-infinity Way (Part 2)tjchin/tutorials/cvpr18/Part2.pdf · Optimisation in Multiple View Geometry: The L-in nity Way (Part 2) Tat-Jun

So what can be done?

Tat-Jun Chin (The University of Adelaide) Optimisation in Multiple View Geometry CVPR 2018 Tutorial 61 / 66

Page 62: Optimisation in Multiple View Geometry: The L-infinity Way (Part 2)tjchin/tutorials/cvpr18/Part2.pdf · Optimisation in Multiple View Geometry: The L-in nity Way (Part 2) Tat-Jun

So what can be done?

RANSAC and variants (no guarantees, not necessarily efficient).

Use M-estimators and IRLS.

Deterministic refinement methods:I Penalty formulation + bilinear programming (Le et al.).I Iteratively reweighted L1 (Purkait et al.).

Le et al. An exact penalty method for locally convergent maximum consensus. CVPR 2017.

Purkait et al. Maximum consensus parameter estimation by reweighted L1 methods. EMMCVPR 2017.

Tat-Jun Chin (The University of Adelaide) Optimisation in Multiple View Geometry CVPR 2018 Tutorial 62 / 66

Page 63: Optimisation in Multiple View Geometry: The L-infinity Way (Part 2)tjchin/tutorials/cvpr18/Part2.pdf · Optimisation in Multiple View Geometry: The L-in nity Way (Part 2) Tat-Jun

Table of Contents

1 Recap: Quasiconvexity

2 LP-type problems

3 Approximation

4 Robust estimation

5 References

Tat-Jun Chin (The University of Adelaide) Optimisation in Multiple View Geometry CVPR 2018 Tutorial 63 / 66

Page 64: Optimisation in Multiple View Geometry: The L-infinity Way (Part 2)tjchin/tutorials/cvpr18/Part2.pdf · Optimisation in Multiple View Geometry: The L-in nity Way (Part 2) Tat-Jun

References I

N. Amenta, M. Bern, and D. Eppstein. “Optimal point placement for mesh smoothing”. In: Journal of Algorithms

30.2 (1999), pp. 302–322.

C. B. Browne et al. “A survey of Monte Carlo tree search methods”. In: IEEE Trans. Computational Intelligence and

AI in Games 4.1 (Mar. 2012), pp. 1–43.

T.-J. Chin, Z. Cai, and F. Neumann. “Robust Fitting in Computer Vision: Easy or Hard?” In: CoRR abs/1802.06464

(2018).

T.-J. Chin and D. Suter. The maximum consensus problem: recent algorithmic advances. Ed. by G. Medioni and

S. Dickinson. Synthesis Lectures on Computer Vision. Morgan & Claypool Publishers, San Rafael, CA, U.S.A., Feb. 2017.

T.-J. Chin et al. “Efficient globally optimal consensus maximisation with tree search”. In: CVPR. 2015.

K. L Clarkson. “Coresets, sparse greedy approximation, and the Frank-Wolfe algorithm”. In: SODA. 2008.

K. L. Clarkson. “Coresets, sparse greedy approximation, and the Frank-Wolfe algorithm”. In: ACM Trans. Algorithms

6.4 (2010), 63:1–63:30.

P.-A. Coquelin and R. Munos. “Bandit algorithms for tree search”. In: UAI. 2007.

O. Enqvist et al. “Robust fitting for multiple view geometry”. In: European Conference on Computer Vision (ECCV).

2012.

Tat-Jun Chin (The University of Adelaide) Optimisation in Multiple View Geometry CVPR 2018 Tutorial 64 / 66

Page 65: Optimisation in Multiple View Geometry: The L-infinity Way (Part 2)tjchin/tutorials/cvpr18/Part2.pdf · Optimisation in Multiple View Geometry: The L-in nity Way (Part 2) Tat-Jun

References IID. Eppstein. “Quasiconvex programming”. In: Combinatorial and Computational Geometry 25 (2005).

H. Le, T.-J. Chin, and D. Suter. “An exact penalty method for locally convergent maximum consensus”. In: CVPR.

2017.

H. Le, T.-J. Chin, and D. Suter. “RATSAC - Random Tree Sampling for Maximum Consensus Estimation”. In:

DICTA. 2017.

H. Li. “A practical algorithm for l∞ triangulation with outliers”. In: CVPR. 2007.

H. Li. “Efficient reduction of L-infinity geometry problems”. In: CVPR. 2009.

J. Matousek. “On geometric optimization with few violated constraints”. In: Discrete comput. geom. 14.1 (1995),

pp. 365–384.

J. Matousek, M. Sharir, and E. Welzl. “A subexponential bound for linear programming”. In: Algorithmica 16 (1996),

pp. 498–516.

C. Olsson, O. Enqvist, and F. Kahl. “A polynomial-time bound for matching and registration with outliers”. In: CVPR.

2008.

C. Olsson, A. Eriksson, and R. Hartley. “Outlier removal using duality”. In: CVPR. 2010.

P. Purkait, C. Zach, and A. Eriksson. “Maximum consensus parameter estimation by reweighted L1 methods”. In:

EMMCVPR. 2017.

Tat-Jun Chin (The University of Adelaide) Optimisation in Multiple View Geometry CVPR 2018 Tutorial 65 / 66

Page 66: Optimisation in Multiple View Geometry: The L-infinity Way (Part 2)tjchin/tutorials/cvpr18/Part2.pdf · Optimisation in Multiple View Geometry: The L-in nity Way (Part 2) Tat-Jun

References III

Y. Seo and R. I. Hartley. “A Fast Method to Minimize L Error Norm for Geometric Vision Problems”. In: ICCV. 2007.

K. Sim and R. Hartley. “Removing outliers using the l∞ norm”. In: CVPR. 2006.

J. Yu et al. “An adversarial optimization approach to efficient outlier removal”. In: ICCV. 2011.

Q. Zhang and T.-J. Chin. “Coresets for triangulation”. In: IEEE TPAMI (2017). doi: 10.1109/TPAMI.2017.2750672.

Tat-Jun Chin (The University of Adelaide) Optimisation in Multiple View Geometry CVPR 2018 Tutorial 66 / 66