Presentation is loading. Please wait.

Presentation is loading. Please wait.

Depth Estimation (Sz 11) “3d” movies are trendy lately, but arguably they should be called “stereo 3d” movies because movies already have many 3d cues.

Similar presentations


Presentation on theme: "Depth Estimation (Sz 11) “3d” movies are trendy lately, but arguably they should be called “stereo 3d” movies because movies already have many 3d cues."— Presentation transcript:

1 Depth Estimation (Sz 11) “3d” movies are trendy lately, but arguably they should be called “stereo 3d” movies because movies already have many 3d cues. Slides from Steve Seitz, Robert Collins, James Hays

2 Multiple views Multi-view geometry, matching, invariant features, stereo vision Lowe Hartley and Zisserman CS 376 Lecture 16: Stereo 1

3 Why multiple views? Structure and depth are inherently ambiguous from single views. Images from Lana Lazebnik CS 376 Lecture 16: Stereo 1

4 Why multiple views? Structure and depth are inherently ambiguous from single views. P1 P2 P1’=P2’ Optical center CS 376 Lecture 16: Stereo 1

5

6

7 What cues help us to perceive depth (and 3D shape in general)?
Think-Pair-Share What cues help us to perceive depth (and 3D shape in general)?

8 Shading [Figure from Prados & Faugeras 2006]
CS 376 Lecture 16: Stereo 1 8

9 Focus/defocus Images from same point of view, different camera parameters 3d shape / depth estimates [figs from H. Jin and P. Favaro, 2002] CS 376 Lecture 16: Stereo 1

10 Texture CS 376 Lecture 16: Stereo 1 10
[From A.M. Loh. The recovery of 3-D structure using visual texture patterns. PhD thesis] CS 376 Lecture 16: Stereo 1 10

11 Perspective effects Image credit: S. Seitz

12

13

14

15 Motion CS 376 Lecture 16: Stereo 1 Figures from L. Zhang
CS 376 Lecture 16: Stereo 1

16 Stereo vision Two cameras, simultaneous views
Single moving camera and static scene

17 Stereo Vision Not that important for humans, especially at longer distances. Perhaps 10% of people are stereo blind. Many animals don’t have much stereo overlap in their fields of view

18 Public Library, Stereoscopic Looking Room, Chicago, by Phillips, 1923

19 Teesta suspension bridge-Darjeeling, India

20 Woman getting eye exam during immigration procedure at Ellis Island, c
Woman getting eye exam during immigration procedure at Ellis Island, c , UCR Museum of Phography

21 Mark Twain at Pool Table", no date, UCR Museum of Photography

22 Yes, you can be stereoblind.
Ask audience to put finger tip in line with dot in vision, then ask them to focus on dot -> should see two fingers. Then, ask them to focus on finger -> should see two dots. If people only see one finger and one dot, then they might be stereoblind….. Is this true? CS 376 Lecture 16: Stereo 1

23 Random dot stereograms
Julesz 1960: Do we identify local brightness patterns before fusion (monocular process) or after (binocular)? Think Pair Share – yes / no? how to test? CS 376 Lecture 16: Stereo 1 25

24 Random dot stereograms
Julesz 1960: Do we identify local brightness patterns before fusion (monocular process) or after (binocular)? To test: pair of synthetic images obtained by randomly spraying black dots on white objects CS 376 Lecture 16: Stereo 1 26

25 Random dot stereograms
Forsyth & Ponce CS 376 Lecture 16: Stereo 1 27

26 Random dot stereograms
CS 376 Lecture 16: Stereo 1 28

27 2. Select a region in one image.
1. Create an image of suitable size. Fill it with random dots. Duplicate the image. 2. Select a region in one image. 3. Shift this region horizontally by a small amount. The stereogram is complete. CC BY-SA 3.0,

28 Random dot stereograms
When viewed monocularly, they appear random; when viewed stereoscopically, see 3d structure. Human binocular fusion not directly associated with the physical retinas; must involve the central nervous system (V2, for instance). Imaginary “cyclopean retina” that combines the left and right image stimuli as a single unit. High level scene understanding not required for stereo…but, high level scene understanding is arguably better than stereo. According to Ralph Siegel, Dr. Bela Julesz had "unambiguously demonstrated that stereoscopic depth could be computed in the absence of any identifiable objects, in the absence of any perspective, in the absence of any cues available to either eye alone." Artists are more often stereo blind than average people. Being stereo blind may train you to be better at recognizing and thus depicting other monocular depth cues. CS 376 Lecture 16: Stereo 1 30

29 Stereo attention is weird wrt. mind’s eye
- In the following figure, a viewer perceives an image which is a superposition of two images, one shown to each of the two eyes using the equivalent of spectacles for watching 3D movies. - To the viewer, it is as if the perceived image is shown simultaneously to both eyes --- we see a superposition of the two images, and the left eye image ‘fills the space’ in the right eye image; the ocular singleton appears identical to all the other background bars, i.e. we are blind to its distinctiveness. The uniquely tilted bar appears most distinctive from the background. Nevertheless, the ocular singleton often attracts attention more strongly than the orientation singleton (so that the first gaze shift is more frequently directed to the ocular rather than the orientation singleton) even when the viewer is told to find the latter as soon as possible and ignore all distractions. It is as if the ocular singleton is uniquely coloured and distracting, like the lone-red flower in a green field, except that we are “colour-blind” to it. Many vision scientists find this hard to believe without experiencing it themselves. Fig 5.9 from Li Zhaoping, Understanding Vision: Theory Models, and Data [Li Zhaoping, Understanding Vision] CS 376 Lecture 16: Stereo 1

30 Autostereograms – ‘Magic Eye’
Exploit disparity as depth cue using single image. (Single image random dot stereogram, Single image stereogram) Images from magiceye.com CS 376 Lecture 16: Stereo 1 32

31 Autostereograms Images from magiceye.com CS 376 Lecture 16: Stereo 1
33

32

33

34

35

36 Stereo Depth Estimation Slides by Kristen Grauman
CS 376 Lecture 16: Stereo 1

37 Geometry for a simple stereo system
First, assuming parallel optical axes, known camera parameters (i.e., calibrated cameras): Two cameras, simultaneous views CS 376 Lecture 16: Stereo 1

38 optical center (right) optical center (left)
World point Depth of p image point (left) image point (right) Focal length optical center (right) optical center (left) baseline CS 376 Lecture 16: Stereo 1 40

39 Geometry for a simple stereo system
Assume parallel optical axes, known camera parameters (i.e., calibrated cameras). What is expression for Z? Similar triangles (pl, P, pr) and (Ol, P, Or): disparity CS 376 Lecture 16: Stereo 1 41

40 Depth from disparity (x´,y´)=(x+D(x,y), y)
image I(x,y) Disparity map D(x,y) image I´(x´,y´) (x´,y´)=(x+D(x,y), y) So if we could find the corresponding points in two images, we could estimate relative depth… CS 376 Lecture 16: Stereo 1

41 Basic stereo matching algorithm
Rectify the two stereo images to transform epipolar lines into scanlines For each pixel x in the first image Find corresponding epipolar scanline in the right image Examine all pixels on the scanline and pick the best match x’ Use individual pixels? Use patches! This should look familiar... Compute disparity x-x’ and set depth(x) = fB/(x-x’)

42 Correspondence problem
Intensity profiles Source: Andrew Zisserman

43 Correspondence problem
Neighborhoods of corresponding points are similar in intensity patterns. Source: Andrew Zisserman

44 Correlation-based window matching
Let’s take a particular window size placed in the left window and slide it on the right. Here you see the target in the left band

45 Correlation-based window matching
This is the epipolar corresponding right band. When I slide that window across I get this…

46 Correlation-based window matching
Using cross correlation, [a] you can see a clear peak at the right spot.

47 Correlation-based window matching
But what about this less textured region?

48 Correlation-based window matching
??? We get this corrleation. [a] And where the peak is located is hard to tell. How could we fix that? Well… Textureless regions are non-distinct; high ambiguity for matches.

49 When will this work/not work?
Think-Pair-Share When will this work/not work?

50 Stereo reconstruction pipeline
What will cause errors? Camera calibration errors Poor image resolution Occlusions Violations of brightness constancy (specular reflections) Large motions Low-contrast image regions

51 Failures of correspondence search
Occlusions, repetition Textureless surfaces Non-Lambertian surfaces, specularities

52 Effect of window size W = 3 W = 20 Smaller window Larger window
+ More detail More noise Larger window + Smoother disparity maps Less detail smaller window: more detail, more noise bigger window: less noise, more detail Adaptive window approach T. Kanade and M. Okutomi, A Stereo Matching Algorithm with an Adaptive Window: Theory and Experiment,, Proc. International Conference on Robotics and Automation, 1991. D. Scharstein and R. Szeliski. Stereo matching with nonlinear diffusion. International Journal of Computer Vision, 28(2): , July 1998

53 Stereo results Scene Ground truth Data from University of Tsukuba
Similar results on other images without ground truth Scene Ground truth

54 Results with window search
Data Window-based matching Ground truth

55 Correspondence problem
There are “soft” constraints to help identify corresponding points Similarity Disparity gradient – depth doesn’t change too quickly. Uniqueness Ordering CS 376 Lecture 17 Stereo

56 Uniqueness constraint
Up to one match in right image for every point in left image Figure from Gee & Cipolla 1999 CS 376 Lecture 17 Stereo

57 Problem: Occlusion Uniqueness says “up to match” per pixel
When is there no match? Occluded pixels

58 Disparity gradient constraint
Assume piecewise continuous surface, so want disparity estimates to be locally smooth Figure from Gee & Cipolla 1999 CS 376 Lecture 17 Stereo

59 Ordering constraint Points on same surface (opaque object) will be in same order in both views Figure from Gee & Cipolla 1999 CS 376 Lecture 17 Stereo

60 Ordering constraint Won’t always hold, e.g. consider transparent object, or an occluding surface Figures from Forsyth & Ponce CS 376 Lecture 17 Stereo

61 Stereo as energy minimization
What defines a good stereo correspondence? Match quality Want each pixel to find a good match in the other image Smoothness If two pixels are adjacent, they should (usually) move about the same amount

62 Scanline stereo Try to coherently match pixels on the entire scanline
Different scanlines are still optimized independently Left image Right image intensity

63 “Shortest paths” for scan-line stereo
Left image Right image Right occlusion s q Left occlusion t p correspondence Can be implemented with dynamic programming Ohta & Kanade ’85, Cox et al. ‘96 Slide credit: Y. Boykov

64 Coherent stereo on 2D grid
Scanline stereo generates streaking artifacts Can’t use dynamic programming to find spatially coherent disparities/ correspondences on a 2D grid Patch-based Per scanline dynamic programming

65 Stereo matching as energy minimization
D W1(i ) W2(i+D(i )) D(i ) data term smoothness term Energy functions of this form can be minimized using graph cuts Y. Boykov, O. Veksler, and R. Zabih, Fast Approximate Energy Minimization via Graph Cuts, PAMI 2001

66 Stereo matching as energy minimization
D W1(i ) W2(i+D(i )) D(i ) Energy functions of this form can be minimized using graph cuts. Y. Boykov, O. Veksler, and R. Zabih, Fast Approximate Energy Minimization via Graph Cuts, PAMI 2001 Source: Steve Seitz CS 376 Lecture 17 Stereo

67 Constraints encoded in an energy function and solved using graph cuts
Patch-based Graph cuts Ground truth Y. Boykov, O. Veksler, and R. Zabih, Fast Approximate Energy Minimization via Graph Cuts, PAMI 2001 For the latest and greatest:

68 Depth from disparity f x x’ baseline z C C’ X

69 Active stereo: project structured light onto object
Li Zhang’s one-shot stereo camera 2 camera 1 projector camera 1 projector Simplifies the correspondence problem L. Zhang, B. Curless, and S. M. Seitz. Rapid Shape Acquisition Using Color Structured Light and Multi-pass Dynamic Programming. 3DPVT 2002

70 Active stereo with structured light
Sequence of known expected appearance across surface

71 How does a depth camera work?
Microsoft Kinect v1 Intel laptop depth camera

72 Kinect: Structured infrared light

73 How does a depth camera work?
Stereo in infrared.

74 Digital Michelangelo Project
Laser scanning Digital Michelangelo Project Optical triangulation Project a single stripe of laser light Scan it across the surface of the object This is a very precise version of structured light scanning

75 The Digital Michelangelo Project, Levoy et al.
Laser scanned models The Digital Michelangelo Project, Levoy et al.

76 The Digital Michelangelo Project, Levoy et al.
Laser scanned models The Digital Michelangelo Project, Levoy et al.

77 The Digital Michelangelo Project, Levoy et al.
Laser scanned models The Digital Michelangelo Project, Levoy et al.

78 The Digital Michelangelo Project, Levoy et al.
Laser scanned models The Digital Michelangelo Project, Levoy et al.

79 Time of Flight (Kinect V2)
Depth cameras in HoloLens use time of flight “SONAR for light” Emit light of a known wavelength, and time how long it takes for it to come back

80 Time of Flight Humans can learn to echolocate!

81 Break here.

82 The Camera Many slides by Alexei A. Efros
CS 129: Computational Photography James Hays, Brown, Spring 2011

83 How do we see the world? Let’s design a camera
Idea 1: put a piece of film in front of an object Do we get a reasonable image? Slide by Steve Seitz

84 Pinhole camera Add a barrier to block off most of the rays
This reduces blurring The opening known as the aperture How does this transform the image? It gets inverted Slide by Steve Seitz

85 Pinhole camera model Pinhole model:
Captures pencil of rays – all rays through a single point The point is called Center of Projection (COP) The image is formed on the Image Plane Effective focal length f is distance from COP to Image Plane Slide by Steve Seitz

86 Dimensionality Reduction Machine (3D to 2D)
3D world 2D image What have we lost? Angles Depth, lengths Figures © Stephen E. Palmer, 2002

87 Funny things happen…

88 Lengths can’t be trusted...
Figure by David Forsyth

89 …but humans adopt! We don’t make measurements in the image plane
Müller-Lyer Illusion We don’t make measurements in the image plane

90 Modeling projection The coordinate system
We will use the pin-hole model as an approximation Put the optical center (Center Of Projection) at the origin Put the image plane (Projection Plane) in front of the COP Why? The camera looks down the negative z axis we need this if we want right-handed-coordinates This way the image is right-side-up Slide by Steve Seitz

91 Modeling projection Projection equations
Compute intersection with PP of ray from (x,y,z) to COP Derived using similar triangles We get the projection by throwing out the last coordinate: Slide by Steve Seitz

92 Homogeneous coordinates
Is this a linear transformation? no—division by z is nonlinear Trick: add one more coordinate: homogeneous image coordinates homogeneous scene coordinates Converting from homogeneous coordinates Slide by Steve Seitz

93 Perspective Projection
Projection is a matrix multiply using homogeneous coordinates: divide by third coordinate This is known as perspective projection The matrix is the projection matrix Can also formulate as a 4x4 divide by fourth coordinate Slide by Steve Seitz

94 Orthographic Projection
Special case of perspective projection Distance from the COP to the PP is infinite Also called “parallel projection” What’s the projection matrix? Image World Slide by Steve Seitz

95 Camera parameters Camera frame 2 Camera frame 1 Extrinsic parameters: Camera frame 1  Camera frame 2 Intrinsic parameters: Image coordinates relative to camera  Pixel coordinates Extrinsic params: rotation matrix and translation vector Intrinsic params: focal length, pixel sizes (mm), image center point, radial distortion parameters We’ll assume for now that these parameters are given and fixed. CS 376 Lecture 16: Stereo 1 107

96 Estimating depth with stereo
Stereo: shape from “motion” between two views We’ll need to consider: Info on camera pose (“calibration”) Image point correspondences scene point image plane optical center CS 376 Lecture 16: Stereo 1 108

97 General case, with calibrated cameras
The two cameras need not have parallel optical axes. Vs. CS 376 Lecture 16: Stereo 1

98 Stereo correspondence constraints
Given p in left image, where can corresponding point p’ be? CS 376 Lecture 16: Stereo 1

99 Stereo correspondence constraints
CS 376 Lecture 16: Stereo 1

100 Epipolar constraint Geometry of two views constrains where the corresponding pixel for some image point in the first view must occur in the second view. It must be on the line carved out by a plane connecting the world point and optical centers. CS 376 Lecture 16: Stereo 1 112

101 Epipolar geometry Epipolar Line Epipolar Plane Epipole Baseline
CS 376 Lecture 16: Stereo 1 113

102 Epipolar geometry: terms
Baseline: line joining the camera centers Epipole: point of intersection of baseline with image plane Epipolar plane: plane containing baseline and world point Epipolar line: intersection of epipolar plane with the image plane All epipolar lines intersect at the epipole An epipolar plane intersects the left and right image planes in epipolar lines Why is the epipolar constraint useful? CS 376 Lecture 16: Stereo 1

103 Epipolar constraint This is useful because it reduces the correspondence problem to a 1D search along an epipolar line. Image from Andrew Zisserman

104 Example CS 376 Lecture 16: Stereo 1

105 Think Pair Share = camera center Where are the epipoles? What do the epipolar lines look like? X X a) b) X X c) d)

106 Example: converging cameras
Figure from Hartley & Zisserman CS 376 Lecture 16: Stereo 1 118

107 Example: parallel cameras
Where are the epipoles? Figure from Hartley & Zisserman CS 376 Lecture 16: Stereo 1 119

108 Example: Forward motion
Epipole has same coordinates in both images. Points move along lines radiating from e: “Focus of expansion”

109 Example: Forward motion
Epipole has same coordinates in both images. Points move along lines radiating from e: “Focus of expansion”

110 Fundamental matrix 𝑙 ′ =𝐹𝑥 𝑙= 𝐹 𝑇 𝑥′ 𝑥 ′ 𝐹𝑥=0
Let x be a point in left image, x’ in right image Epipolar relation x maps to epipolar line l’ x’ maps to epipolar line l Epipolar mapping described by a 3x3 matrix F: It follows that: l’ l x x’ 𝑙 ′ =𝐹𝑥 𝑙= 𝐹 𝑇 𝑥′ 𝑥 ′ 𝐹𝑥=0

111 Fundamental matrix 𝑥 ′ 𝐹𝑥=0 This matrix F is called
the “Essential Matrix” when image intrinsic parameters are known the “Fundamental Matrix” more generally (uncalibrated case) Can solve for F from point correspondences Each (x, x’) pair gives one linear equation in entries of F F has 9 entries, but really only 7 degrees of freedom. With 8 points it is simple to solve for F, but it is also possible with 7. See Marc Pollefey’s notes for a nice tutorial 𝑥 ′ 𝐹𝑥=0

112 Stereo image rectification

113 Stereo image rectification
Reproject image planes onto a common plane parallel to the line between camera centers Pixel motion is horizontal after this transformation Two homographies (3x3 transform), one for each input image reprojection C. Loop and Z. Zhang. Computing Rectifying Homographies for Stereo Vision. IEEE Conf. Computer Vision and Pattern Recognition, 1999.

114 Rectification example

115 Summary: Key idea: Epipolar constraint
X X X x x’ x’ x’ Potential matches for x have to lie on the corresponding line l’. Potential matches for x’ have to lie on the corresponding line l.

116 Summary Epipolar geometry Stereo depth estimation
Epipoles are intersection of baseline with image planes Matching point in second image is on a line passing through its epipole Fundamental matrix maps from a point in one image to a line (its epipolar line) in the other Can solve for F given corresponding points (e.g., interest points) Stereo depth estimation Estimate disparity by finding corresponding points along scanlines Depth is inverse to disparity

117 Stereo reconstruction pipeline
Steps Calibrate cameras Rectify images Compute disparity Estimate depth


Download ppt "Depth Estimation (Sz 11) “3d” movies are trendy lately, but arguably they should be called “stereo 3d” movies because movies already have many 3d cues."

Similar presentations


Ads by Google