3D Vision: Stereo Marc Pollefeys, Torsten Sattler Spring 2016 - - PowerPoint PPT Presentation

3d vision
SMART_READER_LITE
LIVE PREVIEW

3D Vision: Stereo Marc Pollefeys, Torsten Sattler Spring 2016 - - PowerPoint PPT Presentation

3D Vision: Stereo Marc Pollefeys, Torsten Sattler Spring 2016 http://cvg.ethz.ch/teaching/3dvision/ Dense Correspondence / Stereo Tsukuba dataset http://cat.middlebury.edu/stereo/ Stereo Standard stereo geometry Stereo matching


slide-1
SLIDE 1

3D Vision: Stereo

Marc Pollefeys, Torsten Sattler Spring 2016

http://cvg.ethz.ch/teaching/3dvision/

slide-2
SLIDE 2

Dense Correspondence / Stereo

http://cat.middlebury.edu/stereo/ Tsukuba dataset

slide-3
SLIDE 3

Stereo

  • Standard stereo geometry
  • Stereo matching
  • Correlation
  • Optimization (DP, GC)
  • General camera configurations
  • Rectification
  • PatchMatch Stereo
slide-4
SLIDE 4

Stereo

slide-5
SLIDE 5

Disparity map

image I(x,y) image I´(x´,y´) Disparity map D(x,y)

(x´,y´)=(x+D(x,y),y)

slide-6
SLIDE 6

Stereo camera configurations

(Slide from Pascal Fua)

slide-7
SLIDE 7

Occlusions

(Slide from Pascal Fua)

slide-8
SLIDE 8

Exploiting scene constraints

slide-9
SLIDE 9

Ordering constraint

  • cclusion right
  • cclusion left
slide-10
SLIDE 10

Uniqueness constraint

  • In an image pair each pixel has at most
  • ne corresponding pixel
  • In general one corresponding pixel
  • In case of occlusion there is none
slide-11
SLIDE 11

Disparity constraint

bounding box

use reconstructed features to determine bounding box

constant disparity surfaces

slide-12
SLIDE 12

Stereo matching

Optimal path (dynamic programming ) Similarity measure (SSD or NCC) Constraints

  • epipolar
  • ordering
  • uniqueness
  • disparity limit

Trade-off

  • Matching cost (data)
  • Discontinuities (prior)

Consider all paths that satisfy the constraints pick best using dynamic programming

slide-13
SLIDE 13

Hierarchical stereo matching

Downsampling

(Gaussian pyramid)

Disparity propagation

Allows faster computation Deals with large disparity ranges

slide-14
SLIDE 14

(Scharstein & Szeliski, IJCV‘02)

slide-15
SLIDE 15

Energy minimization

(Slide from Pascal Fua)

slide-16
SLIDE 16

Graph Cut

(Slide from Pascal Fua)

(general formulation requires multi-way cut!)

slide-17
SLIDE 17

(Boykov et al ICCV‘99) (Roy and Cox ICCV‘98)

Simplified graph cut

slide-18
SLIDE 18

(Scharstein & Szeliski, IJCV‘02)

slide-19
SLIDE 19

Semi-global optimization

  • Optimize:

E=Edata+E(|Dp-Dq|=1)+E(|Dp-Dq|>1) [Hirschmüller CVPR05]

  • Use mutual information as cost
  • NP-hard using graph cuts or belief

propagation (2-D optimization)

  • Instead do dynamic programming along

many directions

  • Don’t use visibility or ordering constraints
  • Enforce uniqueness
  • Add costs of all paths
slide-20
SLIDE 20

Stereo matching with general camera configurations

slide-21
SLIDE 21

Image pair rectification

slide-22
SLIDE 22

Planar rectification

~ image size

Distortion minimization

(uncalibrated)

slide-23
SLIDE 23
slide-24
SLIDE 24
  • Polar re-parameterization around epipoles
  • Requires only (oriented) epipolar geometry
  • Preserve length of epipolar lines
  • Choose Δθ so that no pixels are compressed
  • riginal image

rectified image

Polar rectification

(Pollefeys et al. ICCV’99) Works for all relative motions Guarantees minimal image size

slide-25
SLIDE 25

polar rectification planar rectification

  • riginal

image pair

slide-26
SLIDE 26

Example: Béguinage of Leuven

Does not work with standard Homography-based approaches

slide-27
SLIDE 27

Plane-sweep multi-view matching

  • Simple algorithm for multiple cameras
  • no rectification necessary
  • doesn’t deal with occlusions

Collins’96; Roy and Cox’98 (GC); Yang et al.’02/’03 (GPU)

slide-28
SLIDE 28

Fast GPU-based plane-sweeping stereo Plane-sweep multi-view depth estimation

(Yang & Pollefeys, CVPR’03)

slide-29
SLIDE 29

Slanted Support Windows

fronto-parallel windows vs. slanted support windows (Bleyer et al. BMVC’11)

slide-30
SLIDE 30

PatchMatch Stereo

(Bleyer et al. BMVC’11)

  • For a particular plane the disparity at a pixel is given by
  • The plane with the minimal cost is chosen
  • The dissimilarity cost is calculated as

with

slide-31
SLIDE 31

PatchMatch Stereo

(Bleyer et al. BMVC’11) Idea: Start with a random initialization of disparities and plane parameters for each pixel and update the estimates by propagating information from the neighboring pixels

  • Spatial propagation: Check for each pixel the disparities and

plane parameters for the left and upper (right and lower) neighbors and replace the current estimates if matching costs are smaller

  • View propagation: Warp the point in the other view and

check the corresponding etimates in the other image. Replace if the matching costs are lower.

  • Temporal propagation: Propagate the information

analogously by considering the etimates for the same pixel at the preceding and consecutive video frame

slide-32
SLIDE 32

PatchMatch Stereo

(Bleyer et al. BMVC’11)

  • Plane refinement: disparity and plane parameters for each

pixel are refined by generating random samples within a certain range interval and updating the current estimates if matching costs are reduced

  • Post-processing: remove outliers with left/right consistency

checking and weighted median filter. Gaps are filled by propagating information from the neighborhood.

slide-33
SLIDE 33

PatchMatch Stereo

(Bleyer et al. BMVC’11)

slide-34
SLIDE 34

PatchMatch Stereo

(Bleyer et al. BMVC’11) Left to right:

  • Fronto-parallel, discrete disparities
  • Fronto-parallel, continuous disparities
  • PatchMatch Stereo (slanted, continuous

disparities)

slide-35
SLIDE 35

Next week: Bundle Adjustment & SLAM