More on Stereo. Outline Fast window-based correlationFast window-based correlation DiffusionDiffusion Energy minimizationEnergy minimization Graph cutsGraph.

Slides:



Advertisements
Similar presentations
Graph Cut Algorithms for Computer Vision & Medical Imaging Ramin Zabih Computer Science & Radiology Cornell University Joint work with Y. Boykov, V. Kolmogorov,
Advertisements

Stereo Vision Reading: Chapter 11
Public Library, Stereoscopic Looking Room, Chicago, by Phillips, 1923.
Stereo Many slides adapted from Steve Seitz. Binocular stereo Given a calibrated binocular stereo pair, fuse it to produce a depth image Where does the.
The University of Ontario CS 4487/9687 Algorithms for Image Analysis Multi-Label Image Analysis Problems.
Stereo Matching Segment-based Belief Propagation Iolanthe II racing in Waitemata Harbour.
Lecture 8: Stereo.
Stereo.
Markov Random Fields (MRF)
1 Can this be generalized?  NP-hard for Potts model [K/BVZ 01]  Two main approaches 1. Exact solution [Ishikawa 03] Large graph, convex V (arbitrary.
Last Time Pinhole camera model, projection
Announcements Quiz Thursday Quiz Review Tomorrow: AV Williams 4424, 4pm. Practice Quiz handout.
Computer Vision : CISC 4/689 Adaptation from: Prof. James M. Rehg, G.Tech.
Stereo Matching Vision for Graphics CSE 590SS, Winter 2001 Richard Szeliski.
2010/5/171 Overview of graph cuts. 2010/5/172 Outline Introduction S-t Graph cuts Extension to multi-label problems Compare simulated annealing and alpha-
Stereo & Iterative Graph-Cuts Alex Rav-Acha Vision Course Hebrew University.
Stereo Binocular Stereo Calibration (finish up) Next Time Motivation
Stereopsis Mark Twain at Pool Table", no date, UCR Museum of Photography.
The plan for today Camera matrix
Announcements Readings for today:
Lecture 10: Stereo and Graph Cuts
Stereo Computation using Iterative Graph-Cuts
Lecture 11: Stereo and optical flow CS6670: Computer Vision Noah Snavely.
Matching Compare region of image to region of image. –We talked about this for stereo. –Important for motion. Epipolar constraint unknown. But motion small.
Announcements PS3 Due Thursday PS4 Available today, due 4/17. Quiz 2 4/24.
Stereo Matching & Energy Minimization Vision for Graphics CSE 590SS, Winter 2001 Richard Szeliski.
VZvZ r t b image cross ratio Measuring height B (bottom of object) T (top of object) R (reference point) ground plane H C scene cross ratio  scene points.
What have we leaned so far? Camera structure Eye structure Project 1: High Dynamic Range Imaging.
Computer Vision Spring ,-685 Instructor: S. Narasimhan WH 5409 T-R 10:30am – 11:50am Lecture #15.
Image Renaissance Using Discrete Optimization Cédric AllèneNikos Paragios ENPC – CERTIS ESIEE – A²SI ECP - MAS France.
What have we leaned so far? Camera structure Eye structure Project 1: High Dynamic Range Imaging.
Structure from images. Calibration Review: Pinhole Camera.
Fast Approximate Energy Minimization via Graph Cuts
A Selective Overview of Graph Cut Energy Minimization Algorithms Ramin Zabih Computer Science Department Cornell University Joint work with Yuri Boykov,
Mutual Information-based Stereo Matching Combined with SIFT Descriptor in Log-chromaticity Color Space Yong Seok Heo, Kyoung Mu Lee, and Sang Uk Lee.
Graph Cut & Energy Minimization
Joint Depth Map and Color Consistency Estimation for Stereo Images with Different Illuminations and Cameras Yong Seok Heo, Kyoung Mu Lee and Sang Uk Lee.
Graph Cut Algorithms for Binocular Stereo with Occlusions
A Non-local Cost Aggregation Method for Stereo Matching
Stereo Vision Reading: Chapter 11 Stereo matching computes depth from two or more images Subproblems: –Calibrating camera positions. –Finding all corresponding.
Stereo Many slides adapted from Steve Seitz.
Computer Vision, Robert Pless
1 Markov Random Fields with Efficient Approximations Yuri Boykov, Olga Veksler, Ramin Zabih Computer Science Department CORNELL UNIVERSITY.
Computer Vision Stereo Vision. Bahadir K. Gunturk2 Pinhole Camera.
Bahadir K. Gunturk1 Phase Correlation Bahadir K. Gunturk2 Phase Correlation Take cross correlation Take inverse Fourier transform  Location of the impulse.
Lecture 19: Solving the Correspondence Problem with Graph Cuts CAP 5415 Fall 2006.
Presenter : Kuang-Jui Hsu Date : 2011/3/24(Thur.).
Lecture 16: Stereo CS4670 / 5670: Computer Vision Noah Snavely Single image stereogram, by Niklas EenNiklas Een.
The University of Ontario CS 4487/9687 Algorithms for Image Analysis Multi-Label Image Analysis Problems.
Gaussian Mixture Models and Expectation-Maximization Algorithm.
Digital Image Processing
Solving for Stereo Correspondence Many slides drawn from Lana Lazebnik, UIUC.
CS654: Digital Image Analysis Lecture 28: Advanced topics in Image Segmentation Image courtesy: IEEE, IJCV.
A global approach Finding correspondence between a pair of epipolar lines for all pixels simultaneously Local method: no guarantee we will have one to.
Graph Algorithms for Vision Amy Gale November 5, 2002.
Project 2 due today Project 3 out today Announcements TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AAAAA.
Project 2 artifacts—vote now!! Project 3 questions? Start thinking about final project ideas, partners Announcements.
Energy functions f(p)  {0,1} : Ising model Can solve fast with graph cuts V( ,  ) = T[  ] : Potts model NP-hard Closely related to Multiway Cut Problem.
Non-linear filtering Example: Median filter Replaces pixel value by median value over neighborhood Generates no new gray levels.
Energy minimization Another global approach to improve quality of correspondences Assumption: disparities vary (mostly) smoothly Minimize energy function:
CSE 185 Introduction to Computer Vision Stereo 2.
Stereo CS4670 / 5670: Computer Vision Noah Snavely Single image stereogram, by Niklas EenNiklas Een.
Graph-based Segmentation
CS 6501: 3D Reconstruction and Understanding Stereo Cameras
Digital Visual Effects, Spring 2009 Yung-Yu Chuang 2009/5/21
Motion and Optical Flow
Markov Random Fields with Efficient Approximations
What have we learned so far?
Counting in High-Density Crowd Videos
Automatic User Interaction Correction via Multi-label Graph-cuts
Presentation transcript:

More on Stereo

Outline Fast window-based correlationFast window-based correlation DiffusionDiffusion Energy minimizationEnergy minimization Graph cutsGraph cuts

Window-Based Correlation For each pixelFor each pixel – For each disparity For each pixel in windowFor each pixel in window –Compute difference – Find disparity with minimum SSD

Reverse Order of Loops For each disparityFor each disparity – For each pixel For each pixel in windowFor each pixel in window –Compute difference Find disparity with minimum SSD at each pixelFind disparity with minimum SSD at each pixel

Incremental Computation Given SSD of a window, at some disparityGiven SSD of a window, at some disparity Image 1 Image 2

Incremental Computation Want: SSD at next locationWant: SSD at next location Image 1 Image 2

Incremental Computation Subtract contributions from leftmost column, add contributions from rightmost columnSubtract contributions from leftmost column, add contributions from rightmost column Image 1 Image               

Selecting Window Size Small window: more detail, but more noiseSmall window: more detail, but more noise Large window: more robustness, less detailLarge window: more robustness, less detail Example:Example:

Selecting Window Size 3 pixel window 20 pixel window

Non-Square Windows Compromise: have a large window, but higher weight near the centerCompromise: have a large window, but higher weight near the center Example: GaussianExample: Gaussian For each disparityFor each disparity – For each pixel Compute weighted SSDCompute weighted SSD

Diffusion For each disparityFor each disparity – For each pixel Compute difference in intensitiesCompute difference in intensities – For n iterations: E i  (1-4 ) E i +  E jE i  (1-4 ) E i +  E j Sum is over four neighbors of each pixelSum is over four neighbors of each pixel

Non-Linear Diffusion To prevent blurring even more, only perform diffusion in ambiguous regionsTo prevent blurring even more, only perform diffusion in ambiguous regions For each pixel, compute certaintyFor each pixel, compute certainty – High certainty iff one disparity has low error, aothers have high error For each pixel, only perform diffusion if certainty goes upFor each pixel, only perform diffusion if certainty goes up

Certainty Metrics for Non-Linear Diffusion Winner margin: normalized difference between lowest and second-lowest errorWinner margin: normalized difference between lowest and second-lowest error Negative entropy:Negative entropy:

Results Scharstein and Szeliski, 1996Scharstein and Szeliski, pixel window 20 pixel window Nonlinear diffusion

Energy Minimization Another approach to preventing incorrectAnother approach to preventing incorrect Make assumption: disparities vary (mostly) smoothly across imageMake assumption: disparities vary (mostly) smoothly across image Minimize energy function: E data + E smoothnessMinimize energy function: E data + E smoothness E data : how well does disparity match dataE data : how well does disparity match data E smoothness : how well does disparity match that of neighbors – regularizationE smoothness : how well does disparity match that of neighbors – regularization

Energy Minimization If data and energy terms are nice (continuous, smooth, etc.) can try to minimize via gradient descent, etc.If data and energy terms are nice (continuous, smooth, etc.) can try to minimize via gradient descent, etc. In practice, disparities only piecewise smoothIn practice, disparities only piecewise smooth Design smoothness function that doesn’t penalize large jumps too muchDesign smoothness function that doesn’t penalize large jumps too much – Example: V(  )=min(|  |, K)

Energy Minimization Hard to find global minimum of non- smooth functionsHard to find global minimum of non- smooth functions – Many local minima – Provably NP-hard Practical algorithms look for approximate minima (e.g., simulated annealing)Practical algorithms look for approximate minima (e.g., simulated annealing)

Energy Minimization via Graph Cuts Boykov, Veksler, and Zabih, 2001Boykov, Veksler, and Zabih, 2001 Define a class of operationsDefine a class of operations – e.g., change some of the disparities to  Look for operations that reduce energyLook for operations that reduce energy Terminate when no operations of the class being considered reduce energyTerminate when no operations of the class being considered reduce energy

Energy Minimization via Graph Cuts Different kinds of operations:Different kinds of operations: Challenge: how to find operations that reduce energy the mostChallenge: how to find operations that reduce energy the most

Energy Minimization via Graph Cuts Represent possible operations as cuts through graphsRepresent possible operations as cuts through graphs Graph cut: minimal subset of edges that separates two (given) edges of graphGraph cut: minimal subset of edges that separates two (given) edges of graph Fast algorithms for computing minimal-cost cutsFast algorithms for computing minimal-cost cuts

Energy Minimization via Graph Cuts  -  swap: interchange  and  labels  -  swap: interchange  and  labels

Energy Minimization via Graph Cuts  expansion: add pixels to  class  expansion: add pixels to  class

Results Image Ground truth Swap algorithm Expansion algorithm

Results Image Ground truth Normalized correlation Simulated annealing

Energy Minimization for Image Smoothing Apply same principle: image should be close to original image, but piecewise smoothApply same principle: image should be close to original image, but piecewise smooth Original image Noise added Local energy minimum with one-pixel changes Local energy minimum with  -expansion