multi view geometry (spring '08)ocw.snu.ac.kr/sites/default/files/note/2772.pdf · 2018. 1. 30. ·...

18
Prof. Kyoung Mu Lee Dept. of EECS, Seoul National University Introduction 1 Multi View Geometry (Spring '08) Introduction K. M. Lee, EECS, SNU Introduction 2 Multi View Geometry (Spring '08) Course Objectives To understand the geometric relations between multiple views of scenes. To understand how to calibrate cameras To understand how to reconstruct 3D structure information using views To understand the general principles of parameter estimation.

Upload: others

Post on 26-Jan-2021

1 views

Category:

Documents


0 download

TRANSCRIPT

  • Prof. Kyoung Mu LeeDept. of EECS, Seoul National University

    Introduction 1

    Multi View Geometry (Spring '08)

    Introduction

    K. M. Lee, EECS, SNU

    Introduction 2

    Multi View Geometry (Spring '08)

    Course Objectives

    • To understand the geometric relations between multiple views of scenes.

    • To understand how to calibrate cameras• To understand how to reconstruct 3D structure information

    using views• To understand the general principles of parameter

    estimation.

  • K. M. Lee, EECS, SNU

    Introduction 3

    Multi View Geometry (Spring '08)

    Materials

    • Text book;“Multiple View Geometry in Computer

    Vision” 2nd ed. by Richard Hartley and Andrew Zisserman, Cambridge University Press

    • Reference:“An Invitation to 3-D Vision”, Yi Ma et

    al., Springer“The Geometry from Multiple Images”,by Olivier Faugeras and Quan-Tuan Luong, MIT Press“Introductory Techniques for 3-D Computer Vision”, E. Trucco and A. Verri, Prentice Hall

    K. M. Lee, EECS, SNU

    Introduction 4

    Multi View Geometry (Spring '08)

    Related Links

    • Course Home Page: http://cv.snu.ac.kr• Related Links

    The Computer Vision HomepageCVonline: Compendium of Computer VisionAnnotated Computer Vision BibliographyUSC Computer Vision BibliographyThe Digital Michelangelo ProjectIBM's Pieta ProjectOpen Directory Project CV links Matlab HomepageMatlab PrimerOnline Tutorial by Pollefey: http://www.esat.kuleuven.ac.be/~pollefey/tutorial/

  • K. M. Lee, EECS, SNU

    Introduction 5

    Multi View Geometry (Spring '08)

    Grading

    • Grading:Participation : 20%Homework Assignments & Quiz: 50% Final Projects: 30%

    • Computer Assignments:There will be 3-4 HWs (computer projects) during the semester. The grade of the projects will be based on the report, which should include the problem statement, your approaches, implement detail, experimental results and discussion. Computer projects can be done by using MATLAB or C++.

    • Term Project : Each student has to turn in a term project. This project is due one week after the end of the class. The term project must be done INDIVIDUALLY .

    K. M. Lee, EECS, SNU

    Introduction 6

    Multi View Geometry (Spring '08)

    Grading

    • Academic Integrity: Every student should submit only their own original work, or where applicable, to cite its origin, for the written and programming assignments. Programs shall not be copied. Standard and publicly available libraries may be used after seeking consent of the course instructor or TA.

  • K. M. Lee, EECS, SNU

    Introduction 7

    Multi View Geometry (Spring '08)

    Content

    • Background: Projective geometry (2D, 3D), Parameter estimation, Algorithm evaluation.

    • Single View: Camera model, Calibration, Single View Geometry.

    • Two Views: Epipolar Geometry, 3D reconstruction, Computing F, Computing structure, Plane and homographies.

    • Three Views: Trifocal Tensor, Computing T.• More Views: N-Linearities, Multiple view reconstruction,

    Bundle adjustment, auto-calibration, Dynamic SfM, Cheirality, Duality

    K. M. Lee, EECS, SNU

    Introduction 8

    Multi View Geometry (Spring '08)

    Overview

    • Quick Overview (by Marc pollefey)

  • K. M. Lee, EECS, SNU

    Introduction 9

    Multi View Geometry (Spring '08)

    Background

    La reproduction interdite (Reproduction Prohibited), 1937, René Magritte.

    K. M. Lee, EECS, SNU

    Introduction 10

    Multi View Geometry (Spring '08)

    • Points, lines & conics

    • Transformations

    • Cross-ratio and invariants

    Projective 2D Geometry

  • K. M. Lee, EECS, SNU

    Introduction 11

    Multi View Geometry (Spring '08)

    Projective 3D Geometry

    • Points, lines, planes and quadrics

    • Transformations

    • П∞, ω∞ and Ω ∞

    K. M. Lee, EECS, SNU

    Introduction 12

    Multi View Geometry (Spring '08)

    Estimation

    How to compute a geometric relation from correspondences

    Linear (normalized) Non-linear and Maximum Likelihood EstimationRobust Estimator (RANSAC, LMeds)

  • K. M. Lee, EECS, SNU

    Introduction 13

    Multi View Geometry (Spring '08)

    Evaluation and error analysis

    How to evaluate the accuracyBounds on performance

    Covariance propagation & Monte-Carlo estimation

    residual

    error

    ( )+= − JΣJΣ XP 1T

    K. M. Lee, EECS, SNU

    Introduction 14

    Multi View Geometry (Spring '08)

    Single-View Geometry

    The Cyclops, c. 1914, Odilon Redon

  • K. M. Lee, EECS, SNU

    Introduction 15

    Multi View Geometry (Spring '08)

    Camera Models

    X.xλor

    110t

    11

    1

    11λ

    3

    PR

    =

    ⎥⎥⎥⎥

    ⎢⎢⎢⎢

    ⎥⎦

    ⎤⎢⎣

    ⎥⎥⎥

    ⎢⎢⎢

    ⎥⎥⎥

    ⎢⎢⎢

    ⎡=

    ⎥⎥⎥

    ⎢⎢⎢

    ZYX

    pfpf

    yx

    y

    x

    T

    pinhole (perspective) camera model

    affine cameras

    pushbroom camera, etc.

    K. M. Lee, EECS, SNU

    Introduction 16

    Multi View Geometry (Spring '08)

    Camera Calibration

    • How to compute camera matrix P(normalized) linear, MLE,…

    • How to correct Radial lens distortion

  • K. M. Lee, EECS, SNU

    Introduction 17

    Multi View Geometry (Spring '08)

    More Single-View Geometry

    • Projective cameras and planes, lines, conics and quadrics.

    • Camera center and camera rotation

    • Camera calibration and vanishing points, calibrating conic and the IAC

    ** CPPQ =T

    coneQCPP =T

    K. M. Lee, EECS, SNU

    Introduction 18

    Multi View Geometry (Spring '08)

    Two-View Geometry

    The Birth of Venus (detail), c. 1485, Sandro Botticelli

  • K. M. Lee, EECS, SNU

    Introduction 19

    Multi View Geometry (Spring '08)

    Epipolar Geometry

    Fundamental matrix Essential matrix

    0xx' =FT ( ) 0x̂[t]'x̂ =×RT'PP,F → 'PP,E →

    • What is Epipolar geometry?• What are Fundamental matrix and Essential matrix

    K. M. Lee, EECS, SNU

    Introduction 20

    Multi View Geometry (Spring '08)

    Two-View Reconstruction

  • K. M. Lee, EECS, SNU

    • How to determine the Fundamental matrix F

    Introduction 21

    Multi View Geometry (Spring '08)

    Epipolar Geometry Computation

    (normalized) linear:

    minimal:

    MLE:

    RANSAC… and automated two view matching

    0xx' =FT

    ( ) 0λdet 21 =+ FF0).1,,,',',',',','( =fyxyyyxyxyxxx

    ( ) ( )

    0x̂'x̂for which

    'x̂,x'x̂,x 2i

    2

    =

    +∑

    ii

    iiii dd

    FT

    K. M. Lee, EECS, SNU

    Introduction 22

    Multi View Geometry (Spring '08)

    Image Rectification

    Warp images to simplify epipolar geometryAlign epipolar lines

  • K. M. Lee, EECS, SNU

    Introduction 23

    Multi View Geometry (Spring '08)

    Structure Computation

    • How to recover 3D features• Points: Linear, optimal, direct optimal

    • Also lines and vanishing points

    K. M. Lee, EECS, SNU

    Introduction 24

    Multi View Geometry (Spring '08)

    Three-View Geometry

    The Birth of Venus (detail), c. 1485, Sandro Botticelli

  • K. M. Lee, EECS, SNU

    Introduction 25

    Multi View Geometry (Spring '08)

    Trifocal Tensor

    • Relationship between three view correspondence.

    K. M. Lee, EECS, SNU

    Introduction 26

    Multi View Geometry (Spring '08)

    Three View Reconstruction

    • (normalized) linear• minimal (6 points)• MLE (Gold Standard)

  • K. M. Lee, EECS, SNU

    Introduction 27

    Multi View Geometry (Spring '08)

    Multiple-View Geometry

    The Birth of Venus (detail), c. 1485, Sandro Botticelli

    K. M. Lee, EECS, SNU

    Introduction 28

    Multi View Geometry (Spring '08)

    Multiple View Geometry

    wxyzpqrs

    lszkryjqxipwiiii Qxxxx 0=′′′′′′ εεεε

    Quadrifocal tensor

    wxyzpqrs

    srqp Qllll 0=′′′′′′ 81 parameters, but only 29 DOF!

    • Relationship between multiple view correspondence.

  • K. M. Lee, EECS, SNU

    Introduction 29

    Multi View Geometry (Spring '08)

    Multiple View Reconstruction

    • Affine factorization• Projective factorization

    • Sequential reconstruction

    [ ]nmn

    mm

    n

    n

    XXX

    P

    PP

    xxx

    xxxxxx

    21

    m

    2

    1

    21

    222

    21

    112

    11

    LM

    L

    MOMM

    L

    L

    ⎥⎥⎥⎥⎥

    ⎢⎢⎢⎢⎢

    =

    ⎥⎥⎥⎥⎥

    ⎢⎢⎢⎢⎢

    K. M. Lee, EECS, SNU

    Introduction 30

    Multi View Geometry (Spring '08)

    Bundle Adjustment

    Maximum Likelyhood Estimation for complete structure and motion

    U1

    U2

    U3

    WT

    W

    V

    P1 P2 P3 M

    =J == JJN T

    12xm 3xn(in general

    much larger)

    ( )( )∑∑= =

    m

    k

    n

    iikd

    1 1

    2

    ki X̂P̂,x

  • K. M. Lee, EECS, SNU

    Introduction 31

    Multi View Geometry (Spring '08)

    Bundle adjustment

    No bundle adjustment

    Bundle adjustment needed to avoid drift of virtual objectthroughout sequence

    Bundle adjustment (including radial distortion)

    K. M. Lee, EECS, SNU

    • How to determine camera calibration matrix K directly from multiple uncalibrated images

    Introduction 32

    Multi View Geometry (Spring '08)

    ω*Ω*

    projection

    constraints

    Tii

    Tiii Ωω KKPP ==

    ∗∗

    Auto-calibration

    Tijiijj ∞

    ∗∞

    ∗ = HH ωω

  • K. M. Lee, EECS, SNU

    Introduction 33

    Multi View Geometry (Spring '08)

    Applications

    • 3D modeling• Augmented Reality• Image-based rendering

    • http://www.robots.ox.ac.uk/~vanguard/examples.html

    K. M. Lee, EECS, SNU

    Introduction 34

    Multi View Geometry (Spring '08)

    Applications

  • K. M. Lee, EECS, SNU

    Applications

    Scene reconstruction

    Scene reconstruction

    Photo Explorer

    Photo Explorer

    Input photographs Relative camera positions and orientations

    Point cloud

    Sparse correspondence

    K. M. Lee, EECS, SNU

    • Reading assignment:Read Ch. 1 & Ch 2.

    /ColorImageDict > /JPEG2000ColorACSImageDict > /JPEG2000ColorImageDict > /AntiAliasGrayImages false /CropGrayImages true /GrayImageMinResolution 300 /GrayImageMinResolutionPolicy /OK /DownsampleGrayImages true /GrayImageDownsampleType /Bicubic /GrayImageResolution 300 /GrayImageDepth -1 /GrayImageMinDownsampleDepth 2 /GrayImageDownsampleThreshold 1.50000 /EncodeGrayImages true /GrayImageFilter /DCTEncode /AutoFilterGrayImages true /GrayImageAutoFilterStrategy /JPEG /GrayACSImageDict > /GrayImageDict > /JPEG2000GrayACSImageDict > /JPEG2000GrayImageDict > /AntiAliasMonoImages false /CropMonoImages true /MonoImageMinResolution 1200 /MonoImageMinResolutionPolicy /OK /DownsampleMonoImages true /MonoImageDownsampleType /Bicubic /MonoImageResolution 1200 /MonoImageDepth -1 /MonoImageDownsampleThreshold 1.50000 /EncodeMonoImages true /MonoImageFilter /CCITTFaxEncode /MonoImageDict > /AllowPSXObjects false /CheckCompliance [ /None ] /PDFX1aCheck false /PDFX3Check false /PDFXCompliantPDFOnly false /PDFXNoTrimBoxError true /PDFXTrimBoxToMediaBoxOffset [ 0.00000 0.00000 0.00000 0.00000 ] /PDFXSetBleedBoxToMediaBox true /PDFXBleedBoxToTrimBoxOffset [ 0.00000 0.00000 0.00000 0.00000 ] /PDFXOutputIntentProfile () /PDFXOutputConditionIdentifier () /PDFXOutputCondition () /PDFXRegistryName () /PDFXTrapped /False

    /Description > /Namespace [ (Adobe) (Common) (1.0) ] /OtherNamespaces [ > /FormElements false /GenerateStructure false /IncludeBookmarks false /IncludeHyperlinks false /IncludeInteractive false /IncludeLayers false /IncludeProfiles false /MultimediaHandling /UseObjectSettings /Namespace [ (Adobe) (CreativeSuite) (2.0) ] /PDFXOutputIntentProfileSelector /DocumentCMYK /PreserveEditing true /UntaggedCMYKHandling /LeaveUntagged /UntaggedRGBHandling /UseDocumentProfile /UseDocumentBleed false >> ]>> setdistillerparams> setpagedevice