• Keine Ergebnisse gefunden

Algorithms and Applications:

N/A
N/A
Protected

Academic year: 2022

Aktie "Algorithms and Applications:"

Copied!
65
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

Computer Vision I -

Algorithms and Applications:

Multi-View 3D reconstruction

Carsten Rother

09/12/2013

(2)

Roadmap this lecture

β€’ Two-view reconstruction

β€’ From projective to metric space (e.g. self-calibration)

β€’ Multi-view reconstruction

β€’ Iterative projective cameras

β€’ Closed form: affine cameras

β€’ Closed form: reference plane Next lecture:

β€’ dense labeling problems in computer vision:

β€’ stereo matching

β€’ ICP, KinectFusion

(3)

3D reconstruction - Definitions

β€’ Sparse Structure from Motion (SfM)

β€’ SLAM in robotics: Simultaneous Localization and Mapping:

β€œPlace a robot in an unknown location and in an unknown environment and have the robot incrementally build a map of this environment while simultaneously using this

map to compute its location”

β€’ Dense Multi-view reconstruction

(4)

Roadmap this lecture

β€’ Two-view reconstruction

β€’ From projective to metric space (e.g. self-calibration)

β€’ Multi-view reconstruction

β€’ Iterative projective cameras

β€’ Closed form: affine cameras

β€’ Closed form: reference plane Next lecture:

β€’ dense labeling problems in computer vision:

β€’ stereo matching

β€’ ICP, KinectFusion

(5)

First: Two-View reconstruction

(6)

Epipolar Geometry (Reminder)

Fundamental matrix 𝐹: 𝑝 2 𝑇 𝐹𝑝 1 = 0

(7)

2-view reconstruction

β€’ We have π‘₯β€² 𝑇 𝐹π‘₯ = 0

β€’ Can we get 𝑃, 𝑃’ such that:

π‘₯ = 𝑃𝑋 ; π‘₯β€² = 𝑃 β€² 𝑋 and π‘₯ ′𝑇 𝐹π‘₯ = 0 for all 3D points 𝑋

β€’ Derivation (blackboard) see HZ page 256 𝑃 = 𝐼 3Γ—3 0 ]; 𝑃 β€² = 𝑒 β€² Γ— 𝐹 𝑒′]

3 Γ— 4

3 Γ— 4

(8)

Derivation

T

(9)

Derivation

(10)

Triangulation - algebraic

β€’ Input: π‘₯, π‘₯’, 𝑃, 𝑃’

β€’ Output: 𝑋’𝑠

β€’ Triangulation is also called intersection

β€’ Simple algebraic solution:

1) πœ†π‘₯ = 𝑃 𝑋 and πœ†β€²π‘₯β€² = 𝑃′ 𝑋

2) Eliminate πœ†, πœ†β€² by taking ratios. This gives 4 linear independent equations for 3 unknowns: 𝑋 = (𝑋

1

, 𝑋

2

, 𝑋

3

, 𝑋

4

) where 𝑋 = 1.

An example ratio is:

π‘₯π‘₯1

2

=

𝑝𝑝1𝑋1+𝑝2𝑋2+𝑝3𝑋3+𝑝4𝑋4

5𝑋1+𝑝6𝑋2+𝑝7𝑋3+𝑝8𝑋4

3) This gives (as usual) a least square optimization problem:

𝐴 𝑋 = 0 with 𝑋 = 1 where 𝐴 is of size 4 Γ— 4.

This can be solved in closed-form using SVD.

(11)

Triangulation - geometric

Minize re-projection error with Fixed fundamental matrix.

π‘₯, π‘₯ ^ ^

β€²

= π‘Žπ‘Ÿπ‘”π‘šπ‘–π‘› 𝑑 π‘₯, π‘₯ ^

2

+ 𝑑 π‘₯

β€²

, π‘₯β€² ^

2

subject to π‘₯ ^

β€²

𝐹π‘₯ = 0 ^

π‘₯, π‘₯^β€²

^

(12)

Triangulation - geometric

β€’ Solution can be expressed as a 6-degree polynomial in 𝑑

β€’ This has up to 6 solutions and can computed (roots of polynomial) Minimize re-projection error with fixed fundamental matrix.

π‘₯, π‘₯ ^ ^

β€²

= π‘Žπ‘Ÿπ‘”π‘šπ‘–π‘› 𝑑 π‘₯, π‘₯ ^

2

+ 𝑑 π‘₯

β€²

, π‘₯β€² ^

2

subject to π‘₯ ^

β€²

𝐹π‘₯ = 0 ^

π‘₯, π‘₯^ ^β€²

(13)

Triangulation - uncertainty

Large baseline Smaller area

smaller baseline Larger area

Very small baseline

Very larger area

(14)

Roadmap this lecture

β€’ Two-view reconstruction

β€’ From projective to metric space (e.g. self-calibration)

β€’ Multi-view reconstruction

β€’ Iterative projective cameras

β€’ Closed form: affine cameras

β€’ Closed form: reference plane Next lecture:

β€’ dense labeling problems in computer vision:

β€’ stereo matching

β€’ ICP, KinectFusion

(15)

3D reconstruction

β€’ Given: m cameras and n static 3D points

β€’ Formally: π‘₯ 𝑖𝑗 = 𝑃 𝑗 𝑋 𝑖 for 𝑗 = 1 … π‘š; 𝑖 = 1 … 𝑛

β€’ Important in practice we do not have all points visible in all views, i.e. Number π‘₯ 𝑖𝑗 ≀ π‘šπ‘›

β€’ Goal: find all 𝑃 𝑗 ’s and 𝑋 𝑖 ’s

Example: β€œVisibility” matrix

(16)

Iterative multi-view reconstruction – Method 1

Three views of an un-calibrated or calibrated camera

(17)

Iterative multi-view reconstruction – Method 1

Three views of an un-calibrated or calibrated camera

Similiar problem as intersection (and same as camera calibration):

πœ†π‘₯ = 𝑃 𝑋 and πœ†

β€²

π‘₯

β€²

= 𝑃𝑋′

with 6 points you get 12 constraints

and we have 11 unknowns.

(18)

Iterative multi-view reconstruction – Method 1

Three views of an un-calibrated or calibrated camera

You can iterate between: intersection and re-sectioning to get all points and cameras reconstructed (in projective or metric space)

Similiar problem as intersection (and same as camera calibration):

πœ†π‘₯ = 𝑃 𝑋 and πœ†

β€²

π‘₯

β€²

= 𝑃𝑋′

with 6 points you get 12 constraints

and we have 11 unknowns.

(19)

Iterative multi-view reconstruction – Method 2

Three views of an un-calibrated or calibrated camera

Reconstruct Points and

Camera 1 and 2

(20)

Iterative multi-view reconstruction – Method 2

Three views of an un-calibrated or calibrated camera

Reconstruct Points and Camera 2 and 3

Zipp the 2 reconstructions together.

1. They share a camera and 7+ points (needed for 𝐹 -matrix).

2. Get 𝐻 4 Γ— 4 from 𝑋

1βˆ’7

= 𝐻𝑋′

1βˆ’7

(here points 𝑋1βˆ’7β€² are in second reconstruction and 𝑋1βˆ’7in first reconstruction)

3. Zipp them together:

𝑃

3

= 𝑃′

3

𝐻

βˆ’1

; 𝑋

𝑖

= 𝐻𝑋′

𝑖

(Here 𝑃

3β€²

is camera in

second reconstruction)

Note:

(21)

The full pipeline

[See page 453 HZ]

Comment: Between 3 and 4 views there exists Trifocal and

Quadrifocal tensor (as Fundamental matrix for 2 views)

– not discussed in this lecture

(22)

Bundle adjustment

β€’ Global refinement of jointly structure (points) and cameras

β€’ Minimize geometric error:

here 𝛼

𝑖𝑗

is 1 if 𝑋

𝑗

visible in view 𝑃

𝑗

(otherwise 0)

β€’ Non-linear optimization with e.g. Levenberg-Marquard

π‘Žπ‘Ÿπ‘”π‘šπ‘–π‘›

{𝑃′𝑠,𝑋′𝑠}

𝑗 𝑖

𝛼

𝑖𝑗

𝑑(𝑃

𝑗

𝑋

𝑖

, π‘₯

𝑖𝑗

)

(23)

Example

(24)

Main Problem of iterative methods is Drift

Solution: 1) look for β€œLoop closure” if possible

2) global methods (next)

(25)

Roadmap this lecture

β€’ Two-view reconstruction

β€’ From projective to metric space (e.g. self-calibration)

β€’ Multi-view reconstruction

β€’ Iterative projective cameras

β€’ Closed form: affine cameras

β€’ Closed form: reference plane Next lecture:

β€’ dense labeling problems in computer vision:

β€’ stereo matching

β€’ ICP, KinectFusion

(26)

Reminder: affine cameras (from lecture 4)

β€’ Affine camera has 8 DoF:

π‘₯ 𝑦 1 =

π‘Ž 𝑏 𝑐 𝑑 𝑒 𝑓 𝑔 β„Ž 0 0 0 1

𝑋 π‘Œ 𝑍 1

β€’ In short: π‘₯ = 𝑀𝑋 + 𝑑 ~ ~

2 Γ— 3 2 Γ— 1 2 Γ— 1

(27)

Reminder: affine cameras (from lecture 4)

(very large focal length) (normal focal length)

β€œClose to parallel projection”

Parallel 3D lines map to parallel 2D lines

(since points stay at infinity)

(28)

Multi-View Reconstruction for affine cameras

(derivation on blackboard)

(29)

Multi-View Reconstruction for affine cameras

(derivation on blackboard)

π‘Š βˆ’ 𝑀𝑋 = 0

π‘Š = 𝑀𝑋

(30)

Comments / Extensions

β€’ Main restriction is that all points have to be visible in all views.

(can be used for a subset of views and then zipping subviews together)

β€’ Extensions to missing data have been done (see HZ chapter 18)

β€’ Extensions to projective cameras have been done (ch. 18.4)

β€’ Extensions to non-rigidly moving scenes (ch. 18.3)

(31)

Roadmap this lecture

β€’ Two-view reconstruction

β€’ From projective to metric space (e.g. self-calibration)

β€’ Multi-view reconstruction

β€’ Iterative projective cameras

β€’ Closed form: affine cameras

β€’ Closed form: reference plane Next lecture:

β€’ dense labeling problems in computer vision:

β€’ stereo matching

β€’ ICP, KinectFusion

(32)

Direct reference plane approach (DRP)

β€’ 𝐻

∞

= 𝐾𝑅 is called infinity homography since it is the mapping from plane at infinity to image:

π‘₯ = 𝐾𝑅 (𝐼| βˆ’ 𝐢) π‘₯ 𝑦 𝑧 0

=𝐾𝑅 π‘₯ 𝑦

𝑧 = 𝐻

∞

π‘₯ 𝑦 𝑧

~

β€’ Idea: simply define an arbitrary plane as πœ‹

∞

= 0,0,0,1

𝑇

(this can be done in projective space)

(33)

Direct reference plane approach (DRP)

Derivation on blackboard

[Rother PhD Thesis 2003]

(34)

Result

(35)

How to get infinite Homographies

β€’ Real Plane in the scene:

β€’ Fixed / known 𝐾 and 𝑅, e.g. translating camera with fixed camera intrinsics

β€’ Orthogonal scene directions and a square pixel camera

see above we get out: 𝐾, 𝑅 (up to a small ambiguity)

(36)

Result: University Stockholm

(Show video)

(37)

Half-way slide

3 Minutes break

(38)

Roadmap this lecture

β€’ Two-view reconstruction

β€’ From projective to metric space (e.g. self-calibration)

β€’ Multi-view reconstruction

β€’ Iterative projective cameras

β€’ Closed form: affine cameras

β€’ Closed form: reference plane Next lecture:

β€’ dense labeling problems in computer vision:

β€’ stereo matching

β€’ ICP, KinectFusion

(39)

Scale ambiguity

Is the pumpkin 5 meters or 30 cm high?

(40)

Scale ambiguity

(41)

Structure from Motion Ambiguity

β€’ We can always write:

π‘₯ = 𝑃 π‘˜

π‘˜ 𝑋 = 1

π‘˜ 𝑃 (π‘˜π‘‹)

β€’ It is impossible to recover the absolute scale of the scene!

(42)

Projective ambiguity

We can write (most general): π‘₯

𝑖𝑗

= 𝑃

𝑗

𝑋

𝑖

= 𝑃

𝑗

𝑄

βˆ’1

𝑄𝑋

𝑖

= 𝑃

𝑗′

𝑋

𝑖′

β€’ Q has 15 DoF (projective ambiguity)

β€’ If we do not have any additional information about the cameras or points then we cannot recover 𝑄.

β€’ Possible information (we will see details later)

β€’ known calibration matrix

β€’ calibration matrix is same for all cameras

β€’ external constraints: given 3D points

(43)

Projective ambiguity

This is a β€œprotectively” correct reconstruction

… but not a nice looking one

3D points map to image points

(44)

Affine ambiguity

We can write (most general): π‘₯

𝑖𝑗

= 𝑃

𝑗

𝑋

𝑖

= 𝑃

𝑗

𝑄

βˆ’1

𝑄𝑋

𝑖

= 𝑃

𝑗′

𝑋

𝑖′

β€’ 𝑄 has now 12 DoF (affine ambiguity)

β€’ With affine cameras we get only affine ambiguity

β€’ 𝑄 leaves the plane at infinity πœ‹

∞

= 0,0,0,1

𝑇

in place:

any point on πœ‹

∞

moves like: 𝑄 π‘Ž, 𝑏, 𝑐, 0

𝑇

= π‘Ž

β€²

, 𝑏

β€²

, 𝑐

β€²

, 0

Therefore parallel 3D lines stay parallel for any 𝑄

(45)

From Projective to Affine

The red directions point to places where the projection of a vanishing point lies.

𝑋

1

𝑋

2

𝑋

3

Step:

Take points 𝑋

1βˆ’3

= π‘₯

1βˆ’3

, 𝑦

1βˆ’3

, 𝑧

1βˆ’3

, 1

𝑇

and move to a point at infinity:

π‘₯

1βˆ’3β€²

, 𝑦

1βˆ’3β€²

, 𝑧

1βˆ’3β€²

, 0

𝑇

.

Same as having plane at infinity in its

canonical position πœ‹

∞

= 0,0,0,1

𝑇

(46)

Affine ambiguity

3D Points at infinity stay at infinity

(47)

Similarity Ambiguity (Metric space)

β€’ 𝑄 has now 7 DoF (similarity ambiguity)

β€’ 𝑄 preserves angles, ratios of lengths, etc.

β€’ For visualization purpose this ambiguity is sufficient.

We don’t need to know what 1m, 1cm, 1mm, etc. means

β€’ Note, if we don’t care about the choice of Q we can set for instance the camera center of first camera to 0.

We can write (most general): π‘₯

𝑖𝑗

= 𝑃

𝑗

𝑋

𝑖

= 𝑃

𝑗

𝑄

βˆ’1

𝑄𝑋

𝑖

= 𝑃

𝑗′

𝑋

𝑖′

(48)

From Projective/Affine to Metric

Essentially, we need the true camera calibration matrices 𝐾 (see details later)

Known 𝐾

Steps: (see HZ page 277)

One option: with known 𝐾

operate with essential matrix

and get out R,C of all cameras ~

(49)

Similarity Ambiguity

(50)

How to β€œupgrade” a reconstruction

β€’ Camera is calibrated

β€’ Calibration from external constraints

β€’ Calibration from a mix of in- and external constraints

β€’ Calibration from internal constraints, called self/auto calibration

Illustrating some ways to upgrade from Projective to Affine and Metric (see details in HZ page 270ff and chapter 19)

β€’ Find plane at infinity and move in canonical position:

β€’ One of the cameras is affine see HZ page 271)

β€’ 3 non-collinear 3D vanishing points

β€’ Translational motion (HZ page 268)

π‘₯𝑖𝑗 = 𝑃𝑗𝑋𝑖 = π‘ƒπ‘—π‘„βˆ’1𝑄𝑋𝑖 = 𝑃𝑗′𝑋𝑖′

(51)

Projective to Affine – Three 3D vanishing points

Possible method

1. Identify three pairs of lines in the 3D reconstruction that have to be parallel, respectively.

2. Compute the three 3D intersection points 𝑋

1βˆ’3

3. Move 𝑋

1βˆ’3

somewhere on the plane at infinity

πœ‹

∞

= 0,0,0,1

𝑇

. Define the equation:

𝑋′

1βˆ’3

= 𝑄 𝑋

1βˆ’3

where

𝑋′

1βˆ’3

= 1,0,0,0

𝑇

, 0,1,0,0

𝑇

, 0,0,1,0

𝑇

4. Compute an 𝑄 using SVD

5. Update all points and cameras 𝑃

𝑗

= 𝑄

βˆ’1

𝑃

𝑗

; 𝑋

𝑖

= 𝑄𝑋

𝑖

The red directions point to places where the projection of a vanishing point lies.

Goal: Find plane at infinity

and move to πœ‹

∞

= 0,0,0,1

𝑇

(52)

Projective to Metric – Direct Method

Given: five known 3D points Compute 𝑄:

1) 𝑄𝑋

𝑖

= 𝑋

𝑖′

(each 3D point gives 3 linear independent equations) 2) 5 points give 15 equations, enough to compute 𝑄 using SVD Upgrade cameras and points:

𝑃

𝑗′

= 𝑃

𝑗

𝑄

βˆ’1

and 𝑋

𝑖′

= 𝑄𝑋

𝑖

(53)

β€’ For a camera 𝑃 = 𝐾 [𝐼 | 0] the ray outwards is:

π‘₯ = 𝑃 𝑋 hence 𝑋 = 𝐾

βˆ’1

π‘₯

β€’ The angle Θ is computed as the normalized rays 𝑑

1

, 𝑑

2

:

β€’ We define the matrix: πœ” = 𝐾

βˆ’π‘‡

𝐾

βˆ’1

β€’ Comment: (𝐾

βˆ’1

)

𝑇

= (𝐾

𝑇

)

βˆ’1

=: 𝐾

βˆ’π‘‡

But without external knowledge?

cos Θ = 𝑑

1𝑇

𝑑

2

𝑑

1𝑇

𝑑

1

𝑑

2𝑇

𝑑

2

= 𝐾

βˆ’1

π‘₯

1 𝑇

𝐾

βˆ’1

π‘₯

2

√ 𝐾

βˆ’1

π‘₯

1 𝑇

𝐾

βˆ’1

π‘₯

1

√ 𝐾

βˆ’1

π‘₯

2 𝑇

𝐾

βˆ’1

π‘₯

2

= π‘₯

1𝑇

πœ” π‘₯

2

π‘₯

1𝑇

πœ”π‘₯

1

π‘₯

2𝑇

πœ”π‘₯

2

(54)

But without external knowledge?

cos Θ = π‘₯

1𝑇

πœ” π‘₯

2

π‘₯

1𝑇

πœ”π‘₯

1

π‘₯

2𝑇

πœ”π‘₯

2

β€’ We have:

β€’ If we were to know πœ” then we can compute angle Θ

β€’ 𝐾 can be derived from πœ” = 𝐾

βˆ’π‘‡

𝐾

βˆ’1

using Cholesky decomposition (see HZ page 582)

β€’ Comment, if Θ = 90

π‘œ

then we have π‘₯

1𝑇

πœ” π‘₯

2

= 0

β€’ How do we get πœ” ?

(55)

πœ” is the Image of the absolute Conic (IAC)

β€’ πœ” is called the image of the absolute conic Ξ©

∞

= 𝐼

3Γ—3

on the plane at infinity πœ‹

∞

= 0,0,0,1

𝑇

β€’ Remember a conic 𝐢 is defined as: π‘₯

𝑇

𝐢 π‘₯ = 0 . Here it is: π‘₯, 𝑦, 1 Ξ©

∞

π‘₯, 𝑦, 1

𝑇

= 0

That is: π‘₯

2

+ 𝑦

2

= βˆ’1

an imaginary circle with radius 𝑖

the points (𝑖, 0) and (0, 𝑖) lie on the conic.

image

𝐻

∞

πœ”

(56)

πœ” is the Image of the absolute Conic (IAC)

β€’ Proof.

1. The homography 𝐻

∞

= 𝐾𝑅 is the mapping from the pane at infinity to the image plane.

Since:

π‘₯ = 𝐾𝑅 𝐼 βˆ’ 𝐢] π‘₯, 𝑦, 𝑧, 0

𝑇

is π‘₯ = 𝐾𝑅 π‘₯, 𝑦, 𝑧

𝑇

2. The conic C = Ξ©

∞

= I

3Γ—3

maps from the plane at infinity to πœ‹

∞

to the image as:

πœ” = 𝐻

βˆžβˆ’T

C𝐻

βˆžβˆ’1

= 𝐾𝑅

βˆ’π‘‡

𝐼 𝐾𝑅

βˆ’1

= 𝐾

βˆ’π‘‡

𝑅

βˆ’π‘‡

𝑅

βˆ’1

𝐾

βˆ’1

= 𝐾

βˆ’π‘‡

𝐾

βˆ’1

β€’ Note, πœ” depends on 𝐾 only and not on 𝑅, 𝐢.

Hence it plays a central role in auto-calibration.

~

~

image

𝐻

∞

πœ”

β€’ πœ” is called the image of the absolute conic Ξ©

∞

= 𝐼

3Γ—3

on the plane at infinity πœ‹

∞

= 0,0,0,1

𝑇

(57)

Degrees of Freedom of πœ”

β€’ We have:

πœ” = (𝐾

βˆ’1

)

𝑇

𝐾

βˆ’1

= π‘Ž 0 0 𝑏 𝑑 0 𝑐 𝑒 1

π‘Ž 𝑏 𝑐 0 𝑑 𝑒 0 0 1

=

π‘Ž

2

π‘Žπ‘ π‘Žπ‘

π‘Žπ‘ 𝑏

2

+ 𝑑

2

𝑏𝑐 + 𝑑𝑒 π‘Žπ‘ 𝑏𝑐 + 𝑑𝑒 𝑐

2

+ 𝑒

2

+ 1

=

πœ”

1

πœ”

2

πœ”

3

πœ”

2

πœ”

4

πœ”

5

πœ”

3

πœ”

5

πœ”

6

𝑲 =

𝑓 𝑠 𝑝

π‘₯

0 π‘šπ‘“ 𝑝

𝑦

0 0 1

then 𝑲

βˆ’1

= π‘Ž 𝑏 0 𝑑 𝑒 𝑐 0 0 1

where π‘Ž, 𝑏, 𝑐, 𝑑, 𝑒 are some values that depend on: 𝑓, π‘š, 𝑠, 𝑝

π‘₯

, 𝑝

𝑦

β€’ Then it is:

β€’ This means that πœ” has 5 DoF (scale is not unique)

(58)

How to compute the IAC?

β€’ External constraints:

orthogonal directions, etc.

β€’ Internal constraints:

β€’ Square pixels (i.e. π‘š = 1, 𝑠 = 0 in 𝐾)

β€’ Camera matrix is the same in two or more views (e.g. video sequence with no zooming)

β€’ If only internal constraints are used then it is called auto/self-calibration.

𝑲 =

𝑓 𝑠 𝑝π‘₯ 0 π‘šπ‘“ 𝑝𝑦

0 0 1

camera matrix

(59)

How to compute the IAC?

We need 5 constraints on πœ” to determine it uniquely

(60)

Example: internal + external constraints

β€’ Square pixel cameras (i.e. π‘š = 1, 𝑠 = 0 in 𝐾) gives two constraints: πœ”

1

= πœ”

4

and πœ”

2

= 0

β€’ Then

πœ” =

πœ”1 0 πœ”3 0 πœ”1 πœ”5

πœ”3 πœ”5 𝑀6

with only 3 DoF

β€’ Given 3 image points 𝑣

1βˆ’3

that point to orthogonal directions, respectively:

𝑣

1𝑇

πœ” 𝑣

2

= 0; 𝑣

1𝑇

πœ” 𝑣

3

= 0; 𝑣

2𝑇

πœ” 𝑣

3

= 0

β€’ This gives an equation system π΄πœ” = 0 with 𝐴 of size 3 Γ— 4.

Hence πœ” can be obtained with SVD

β€’ 𝐾 can be derived from πœ” using Cholesky decomposition

𝑣

1

𝑣

2

𝑣

3

𝑲 =

𝑓 𝑠 𝑝π‘₯ 0 π‘šπ‘“ 𝑝𝑦

0 0 1

camera matrix

(61)

Example: internal constraints (practically important)

β€’ Assume two cameras with: 𝑠 = 0, and π‘š, 𝑝

π‘₯

, 𝑝

𝑦

known

β€’ The only unknowns are the two focal lengths: 𝑓

0

, 𝑓

1

β€’ Then you get the so-called Kruppa equations:

𝑒

1𝑇

πœ”

0βˆ’1

𝑒

1

𝜎

02

𝑣

0𝑇

πœ”

1βˆ’1

𝑣

0

= 𝑒

0𝑇

πœ”

0βˆ’1

𝑒

1

𝜎

0

𝜎

1

𝑣

0𝑇

πœ”

1βˆ’1

𝑣

1

= 𝑒

0𝑇

πœ”

0βˆ’1

𝑒

0

𝜎

12

𝑣

1𝑇

πœ”

1βˆ’1

𝑣

1

where SVD of 𝐹 = 𝑒

0

𝑒

1

𝑒

1

𝜎

0

0 0 0 𝜎

1

0

0 0 0

𝑣

0𝑇

𝑣

1𝑇

𝑒

0𝑇

and πœ”

π‘–βˆ’1

= (𝐾

π‘–βˆ’π‘‡

𝐾

π‘–βˆ’1

) = 𝐾

𝑖

𝐾

𝑖𝑇

= diag(𝑓

𝑖2

, 𝑓

𝑖2

, 1)

β€’ This can be solved in closed form (see next slide)

𝑲 =

𝑓 𝑠 𝑝π‘₯ 0 π‘šπ‘“ 𝑝𝑦

0 0 1

camera matrix

βˆ’1

(62)

Sketch of the solution for 𝑓 0 , 𝑓 1

(63)

Example: internal constraints (sketch)

β€’ Assume 𝐾 is constant over 3+ frames then 𝐾 can be computed

β€’ We know (lecture 6) we can get 𝐾, 𝑅, 𝐢 from 𝑃 = 𝐾 𝑅 (𝐼

3Γ—3

| βˆ’ 𝐢)

β€’ We have already 𝑃

1

, 𝑃

2

, 𝑃

3

and it is π‘₯

𝑖1

= 𝑃

1

𝑋

𝑖

= 𝑃

1

𝑄

βˆ’1

𝑄𝑋

𝑖

= 𝑃

1β€²

𝑋

𝑖′

π‘₯

𝑖2

= 𝑃

2

𝑋

𝑖

= 𝑃

2

𝑄

βˆ’1

𝑄𝑋

𝑖

= 𝑃

2β€²

𝑋

𝑖′

π‘₯

𝑖3

= 𝑃

3

𝑋

𝑖

= 𝑃

3

𝑄

βˆ’1

𝑄𝑋

𝑖

= 𝑃

3β€²

𝑋

𝑖′

β€’ Try to find a 𝑄 such that all 𝑃

1

, 𝑃

2

, 𝑃

3

have the same 𝐾 but different 𝑅

1βˆ’3

and 𝐢

1βˆ’3

β€’ See details in chapter 19 HZ

~

~

~

(64)

How to β€œupgrade” a reconstruction

β€’ Camera is calibrated

β€’ Calibration from external constraints (example: 5 known 3D points)

β€’ Calibration from a mix of in- and external constraints

(example: single camera:

3 orthogonal vanishing points and a square pixel camera)

β€’ Calibration from internal constraints, called self/auto calibration

(example: 3+ views with same 𝐾;

or two cameras with unknown focal length)

Illustrating some ways to upgrade from Projective to Affine and Metric (see details in HZ page 270ff and chapter 19)

β€’ Find plane at infinity and move in canonical position:

β€’ One of the cameras is affine. See HZ page 271)

β€’ 3 non-collinear 3D vanishing points

β€’ Translational motion (HZ page 268)

(65)

Roadmap this lecture

β€’ Two-view reconstruction

β€’ From projective to metric space (e.g. self-calibration)

β€’ Multi-view reconstruction

β€’ Iterative projective cameras

β€’ Closed form: affine cameras

β€’ Closed form: reference plane Next lecture:

β€’ dense labeling problems in computer vision:

β€’ stereo matching

β€’ ICP, KinectFusion

Referenzen

Γ„HNLICHE DOKUMENTE

True solution Bilateral filter Guided filter Guidance

β€’ Undirected graphical model (also called Markov Random Field).. β€’ Factor graphs (which we will

Generative Models are used successfully when

We want to classify the white pixel Feature: color of the green pixel Parameters: 2D offset vector. 1-dimensional: We want to classify the

β€’ Image categorization: Generative versus Discriminative Approach (finalize from last lecture).. β€’

In this section we prove completeness and the finite model property for a range of stronger logics that are obtained by imposing one or several stan- dard frame conditions on

2.3 The Parties included in Annex I shall strive to implement policies and measures under this Article in such a way as to minimize adverse effects, including the adverse effects

Study 1 and Study 2 demonstrated that stressors or negative experience in Domain A are related to self-regulatory strategies either in Domain B or cross-domain (i.e., SOC in