+ All Categories
Home > Documents > Stereopsis-II - UMIACSramani/cmsc426/Lecture15_stereo.pdfStereo matching algorithms • Match Pixels...

Stereopsis-II - UMIACSramani/cmsc426/Lecture15_stereo.pdfStereo matching algorithms • Match Pixels...

Date post: 27-Jan-2021
Category:
Upload: others
View: 1 times
Download: 0 times
Share this document with a friend
32
Stereopsis-II
Transcript
  • Stereopsis-II

  • Stereo correspondence

    • Determine Pixel Correspondence– Pairs of points that correspond to same scene point

    • Epipolar Constraint– Reduces correspondence problem to 1D search along

    conjugate epipolar lines

    epipolar plane epipolar lineepipolar lineepipolar lineepipolar line

    (Seitz)

  • The epipolar geometry

    C,C’,x,x’ and X are coplanar

  • The epipolar geometryepipoles e,e’= intersection of baseline with image plane = projection of projection center in other image

    an epipolar plane = plane containing baseline (1-D family)

    an epipolar line = intersection of epipolar plane with image(always come in corresponding pairs)

  • Epipolar constraint• Given an image point its image in the second image lies

    on the epipolar line

  • Simplest Case• Image planes of cameras are parallel.• Focal points are at same height.• Focal lengths same.• Then, epipolar lines are horizontal scan lines.

  • Epipolar Geometryfor Parallel Cameras

    ff ffTT

    PP

    OOll OOrr

    eell eerr

    EpipolesEpipoles are at infinityare at infinityEpipolarEpipolar lines are parallel to the baselinelines are parallel to the baseline

  • We can always achieve this geometry with image rectification

    • Image Reprojection– reproject image planes onto common

    plane parallel to line between optical centers• Notice, only focal point of camera really matters

    (Seitz)

  • Image pair rectification

    simplify stereo matching by warping the images

    Apply projective transformation so that epipolar linescorrespond to horizontal scanlines

    e

    e

    map epipole e to (1,0,0)

    try to minimize image distortion

    problem when epipole in (or close to) the image

    He001

    =⎥⎥⎦

    ⎢⎢⎣

  • Planar rectification

    Bring two views Bring two views to standard stereo setupto standard stereo setup(moves epipole to ∞)(not possible when in/close to image)

    (standard approach)

  • Let’s discuss reconstruction with this geometry before correspondence, because it’s much easier.

    ZT

    fZxxT

    lr =−−+

    OOll OOrr

    PP

    ppll pprr

    TT

    ZZ

    xxll xxrrff

    T T is the stereo baselineis the stereo baselined d measures the difference in retinal position between correspondinmeasures the difference in retinal position between corresponding pointsg points

    Then given Z, we can compute X and Y.

    rlxx

    TfZ−

    =

    rlxxd −=Disparity:

  • Comparing Windows: ==??

    ff gg

    MostMostpopularpopular

    For each window, match to closest window on epipolarline in other image.

  • It is closely related to the SSD:It is closely related to the SSD:

    Maximize Cross correlation

    Minimize Sum of Squared Differences

  • Other constraints• Smoothness: disparity usually doesn’t change too quickly.

    – Unfortunately, this makes the problem 2D again.– Solved with a host of graph algorithms, Markov Random Fields, Belief

    Propagation, ….

    • Uniqueness constraint (each feature can at most have one match• Occlusion and disparity are connected.

  • Stereo matching algorithms• Match Pixels in Conjugate Epipolar Lines

    – Assume brightness constancy– This is a tough problem– Numerous approaches

    • dynamic programming [Baker 81,Ohta 85]• smoothness functionals• more images (trinocular, N-ocular) [Okutomi 93]• graph cuts [Boykov 00]

    – A good survey and evaluation: http://www.middlebury.edu/stereo/

  • Correspondence using Discrete Search

  • Sum of Squared Differences (SSD)

  • Image Normalization

  • Stereo Correspondences

    … …Left scanline Right scanline

  • Stereo Correspondences

    … …Left scanline Right scanline

    Match

    Match

    MatchOcclusion Disocclusion

  • Search Over Correspondences

    Three cases:– Sequential – add cost of match (small if intensities agree)– Occluded – add cost of no match (large cost)– Disoccluded – add cost of no match (large cost)

    Left scanline

    Right scanline

    Occluded Pixels

    Disoccluded Pixels

  • Stereo Matching with Dynamic Programming

    Dynamic programming yields the optimal path through grid. This is the best set of matches that satisfy the ordering constraint

    Occluded Pixels

    Left scanline

    Dis-occluded Pixels

    Right scanline

    Start

    End

  • Dynamic Programming

    • Efficient algorithm for solving sequential decision (optimal path) problems.

    1

    2

    3

    1

    2

    3

    1

    2

    3

    1=t 2=t 3=t

    1=i

    2=i

    3=i

    1

    2

    3

    Tt =

    How many paths through this trellis? T3

  • Dynamic Programming

    1

    2

    3

    1

    2

    3

    1

    2

    3

    1−tC tC 1+tC

    12Π

    22Π

    32Π

    Suppose cost can be decomposed into stages:

    jiij state to state from going ofCost =Π

    1=i

    2=i

    3=i

    States:

  • Dynamic Programming

    1

    2

    3

    1

    2

    3

    1

    2

    3

    1−tC tC 1+tC

    12Π

    22Π

    32Π

    Principle of Optimality for an n-stage assignment problem:

    ))((min)( 1 iCjC tijit −+Π=

    2=j

    1=i

    2=i

    3=i

  • Dynamic Programming

    1

    2

    3

    1

    2

    3

    1

    2

    3

    1−tC tC 1+tC

    2)2( =tb

    ))((minarg)(

    ))((min)(

    1

    1

    iCjb

    iCjC

    tijit

    tijit

    +Π=

    +Π=

    2=j

    1=i

    2=i

    3=i

  • Stereo Matching with Dynamic Programming

    Scan across grid computing optimal cost for each node given its upper-left neighbors.Backtrack from the terminal to get the optimal path.

    Occluded Pixels

    Left scanline

    Dis-occluded Pixels

    Right scanline

    Terminal

  • Stereo Matching with Dynamic Programming

    Scan across grid computing optimal cost for each node given its upper-left neighbors.Backtrack from the terminal to get the optimal path.

    Occluded Pixels

    Left scanline

    Dis-occluded Pixels

    Right scanline

    Terminal

  • Stereo Matching with Dynamic Programming

    Scan across grid computing optimal cost for each node given its upper-left neighbors.Backtrack from the terminal to get the optimal path.

    Occluded Pixels

    Left scanline

    Dis-occluded Pixels

    Right scanline

    Terminal

  • Problems with window matching

  • Foreshortening


Recommended