The Perspective View of

builderanthologyAI and Robotics

Oct 19, 2013 (3 years and 9 months ago)

336 views

The Perspective View of

3 Points

bill wolfe

CSUCI

Fischler and Bolles 1981

“Random Sample Consensus” Communications of the ACM, Vol. 24, Number 6, June, 1981


Cartography application


Interpretation of sensed data


Pre
-
defined models and Landmarks


Noisy measurements


Averaging/smoothing does not always work


Inaccurate feature extraction


Gross errors vs. Random Noise

Example (Fischler and Bolles)

Least Squares

RANDSAC

Poison Point

camera

world

landmarks

image

position and orientation of
camera in world frame

Location Determination Problem

Location Determination
Problem


Variations:


Pose estimation


Inverse perspective


Camera Calibration


Location Determination


Triangulation

Applications


Computer Vision


Robotics


Cartography


Computer Graphics


Photogrammetry

Assumptions


Intrinsic camera parameters are known.


Location of landmarks in world frame
are known.


Correspondences between landmarks
and their images are known.


Single camera view.


Passive sensing.

Strategy

camera

world

landmarks

measured/
calculated

known

How Many Points are Enough?


1 Point
: infinitely many solutions.


2 Points
: infinitely many solutions, but
bounded.


3 Points
:


(no 3 colinear) finitely many solutions (up to 4).


4 Points
:


non coplanar (no 3 colinear): finitely many.


coplanar (no 3 colinear): unique solution!


5 Points
: can be ambiguous.


6 Points
: unique solutions (“general view”).

1 Point

2 Points

CP

A

B

Inscribed Angles are Equal

http://www.ies.co.jp/math/java/geo/enshukaku/enshukaku.html

q

q

q

CP

CP

CP

A

B

3 Points

s1

s2

s3

LA

A

B

C

LB

LC

Bezout’s Theorem


Number of solutions limited by the product of the
degrees of the equations: 2x2x2 = 8.


But, since each term in the equations is of degree 2,
each solution L1, L2, L3 generates another solution
by taking the negative values
-
L1,
-
L2,
-
L3.


Therefore, there can be at most 4 physically
realizable solutions.

Algebraic Approach

reduce to 4
th

order equation

(Fischler and Bolles, 1981)

http://planetmath.org/encyclopedia/QuarticFormula.html

Iterative Approach

s1

s2

slide

s3

Iterative Projections

http://faculty.csuci.edu/william.wolfe/csuci/articles/TNN_Perspective_View_3_pts.pdf

Geometric Approach

CP

The Orthocenter of a Triangle

http://www.mathopenref.com/triangleorthocenter.html

CP

4 solutions
when CP is
directly over
the orthocenter

CP

The
Danger

Cylinder

Why is the Danger Cylinder Dangerous in the P3P Problem?

C. Zhang,
Z. Hu, Acta Automatiica Sinica, Vol. 32, No. 4, July, 2006.

“A General Sufficient Condition of Four Positive
Solutions of the P3p Problem”

C. Zhang, Z. Hu, 2005

“Complete Solution Classification for the Perspective
-
Three
-
Point Problem”

X. Gao, X. Hou, J. Tang, H. Cheng

IEEE Trans PAMI Vol. 25, NO. 8, August 2003

4 Coplanar Points

(no 3 colinear)

“Passive Ranging to Known Planar Point Sets”

Y. Hung, P. Yeh, D. Harwood

IEEE Int’l Conf Robotics and Automation, 1985.

P0

P1

P3

P2

L

W

Object

Camera

CP

Q0

Q1

Q3

Q2

P0_Obj = <0,0,0>

P1_Obj = <L,0,0>

P2_Obj = <0,W,0>

P3_Obj = <L,W,0>

P0_Cam = k0*Q0_Cam

P1_Cam = k1*Q1_Cam

P2_Cam = k2*Q2_Cam

P3_Cam = k3*Q3_Cam

P0

P1

P3

P2

L

W

Object

Camera

CP

Q0

Q1

Q3

Q2

k0*Q0_Cam = P0_Cam

(P1_Cam
-

P0_Cam) + (P2_Cam
-

P0_Cam) = (P3_Cam
-

P0_Cam)

P2_Cam

Object

Camera

CP

P3_Cam

P0_Cam

P1_Cam

(k1*Q1_Cam
-

k0*Q0_Cam) + (k2*Q2_Cam
-

k0*Q_Cam) =

(k3*Q3_Cam
-

k0*Q0_Cam)

(P1_Cam
-

P0_Cam) + (P2_Cam
-

P0_Cam) = (P3_Cam
-

P0_Cam)

P0_Cam = k0*Q0_Cam

P1_Cam = k1*Q1_Cam

P2_Cam = k2*Q2_Cam

P3_Cam = k3*Q3_Cam

(k1*Q1_Cam) + (k2*Q2_Cam
-

k0*Q_Cam) = (k3*Q3_Cam)

let ki’ = ki/k3

(k1’*Q1_Cam) + (k2’*Q2_Cam
-

k0’*Q0_Cam) = Q3_Cam

-
k0’*Q0_Cam + k1’*Q1_Cam + k2’*Q2_Cam = Q3_Cam

Three linear equations in the 3 unknowns: k0’, k1’, k2’

|
P3_Obj
-

P0_Obj

| = |
P3_Cam
-

P0_Cam
| = | k3*Q3_Cam
-

k0*Q0_Cam |


k3 = | P3_Obj| / | k0’ * Q0_Cam
-

Q3_Cam |

P0

P1

P3

P2

L

W

Object

Camera

CP

Unit_x = (P1_Cam
-

P0_Cam)/ | P1_Cam
-

P0_Cam |

Unit_y = (P2_Cam
-

P0_Cam) / |P2_Cam
-

P0_Cam|

Unit_z = Unit_x X Unit_y

Orientation

Homgeneous Transformation

Unit_x Unit_y Unit_x P0_Cam

0

0

0

1

H =

Summary


Reviewed location determination problems
with 1, 2, 3, 4 points.


Algebraic vs. Geometric vs. Iterative
methods.


3 points can have up to 4 solutions.


Iterative solution method for 3 points.


4 coplanar points has unique solution.


Complete solution for 4 rectangular points.


Many unsolved geometric issues.

References


Random Sample Consensus
, Martin Fischler and Robert Bolles,
Communications of the ACM, Vol. 24, Number 6, June, 1981


Passive Ranging to Known Planar Point Sets
, Y. Hung, P. Yeh, D.
Harwood, IEEE Int’l Conf Robotics and Automation, 1985.


The Perspective View of 3 Points
, W. Wolfe, D. Mathis, C. Sklair, M.
Magee. IEEE Transactions on Pattern Analysis and Machine
Intelligence, Vol. 13, No. 1, January 1991.


Review and Analysis of Solutions of the Three Point Perspective
Pose Estimation Problem
. R. Haralick, C. Lee, K. Ottenberg, M.
Nolle. Int’l Journal of Computer Vision, 13, 3, 331
-
356, 1994.


Complete Solution Classification for the Perspective
-
Three
-
Point
Problem
, X. Gao, X. Hou, J. Tang, H. Cheng, IEEE Trans PAMI Vol.
25, NO. 8, August 2003.


A General Sufficient Condition of Four Positive Solutions of the
P3P Problem
, C. Zhang, Z. Hu, J. Comput. Sci. & Technol., Vol. 20,
N0. 6, pp. 836
-
842, 2005.


Why is the Danger Cylinder Dangerous in the P3P Problem?

C.
Zhang, Z. Hu, Acta Automatiica Sinica, Vol. 32, No. 4, July, 2006.