Computer Vision Fitting Marc Pollefeys COMP 256 Some slides and illustrations from D. Forsyth, T. Darrel, A. Zisserman,...

Slides:



Advertisements
Similar presentations
Computer Vision - A Modern Approach Set: Probability in segmentation Slides by D.A. Forsyth Missing variable problems In many vision problems, if some.
Advertisements

MASKS © 2004 Invitation to 3D vision Lecture 7 Step-by-Step Model Buidling.
776 Computer Vision Jan-Michael Frahm, Enrique Dunn Spring 2013.
Segmentation and Fitting Using Probabilistic Methods
776 Computer Vision Jared Heinly Spring 2014 (slides borrowed from Jan-Michael Frahm, Svetlana Lazebnik, and others)
Lecture 5 Hough transform and RANSAC
Multiple View Geometry
Fitting lines. Fitting Choose a parametric object/some objects to represent a set of tokens Most interesting case is when criterion is not local –can’t.
Computer Vision Fitting Marc Pollefeys COMP 256 Some slides and illustrations from D. Forsyth, T. Darrel, A. Zisserman,...
Jan-Michael Frahm, Philippos Mordohai
Computer Vision - A Modern Approach Set: Fitting Slides by D.A. Forsyth Fitting Choose a parametric object/some objects to represent a set of tokens Most.
Fitting. We’ve learned how to detect edges, corners, blobs. Now what? We would like to form a higher-level, more compact representation of the features.
Computing F Class 8 Read notes Section 4.2. C1C1 C2C2 l2l2  l1l1 e1e1 e2e2 Fundamental matrix (3x3 rank 2 matrix) 1.Computable from corresponding points.
Fitting: Concepts and recipes. Review: The Hough transform What are the steps of a Hough transform? What line parametrization is best for the Hough transform?
Parameter estimation class 6 Multiple View Geometry Comp Marc Pollefeys.
Multiple View Geometry
Many slides and illustrations from J. Ponce
Computer Vision Segmentation Marc Pollefeys COMP 256 Some slides and illustrations from D. Forsyth, T. Darrel,...
Multiple View Geometry Marc Pollefeys University of North Carolina at Chapel Hill Modified by Philippos Mordohai.
Lecture 10: Cameras CS4670: Computer Vision Noah Snavely Source: S. Lazebnik.
Triangulation and Multi-View Geometry Class 9 Read notes Section 3.3, , 5.1 (if interested, read Triggs’s paper on MVG using tensor notation, see.
Fitting a Model to Data Reading: 15.1,
CS664 Lecture #19: Layers, RANSAC, panoramas, epipolar geometry Some material taken from:  David Lowe, UBC  Jiri Matas, CMP Prague
Some slides and illustrations from D. Forsyth, …
Fitting. Choose a parametric object/some objects to represent a set of tokens Most interesting case is when criterion is not local –can’t tell whether.
Lecture 8: Image Alignment and RANSAC
Lecture 10: Robust fitting CS4670: Computer Vision Noah Snavely.
Computer Vision Segmentation Marc Pollefeys COMP 256 Some slides and illustrations from D. Forsyth, T. Darrel,...
1Jana Kosecka, CS 223b EM and RANSAC EM and RANSAC.
Computer Vision Optical Flow Marc Pollefeys COMP 256 Some slides and illustrations from L. Van Gool, T. Darell, B. Horn, Y. Weiss, P. Anandan, M. Black,
Epipolar geometry Class 5. Geometric Computer Vision course schedule (tentative) LectureExercise Sept 16Introduction- Sept 23Geometry & Camera modelCamera.
Fitting.
כמה מהתעשייה? מבנה הקורס השתנה Computer vision.
Computer Vision Spring ,-685 Instructor: S. Narasimhan Wean Hall 5409 T-R 10:30am – 11:50am.
CSE 185 Introduction to Computer Vision
Chapter 6 Feature-based alignment Advanced Computer Vision.
Computer Vision - Fitting and Alignment
1 Robust estimation techniques in real-time robot vision Ezio Malis, Eric Marchand INRIA Sophia, projet ICARE INRIA Rennes, projet Lagadic.
Fitting & Matching Lecture 4 – Prof. Bregler Slides from: S. Lazebnik, S. Seitz, M. Pollefeys, A. Effros.
HOUGH TRANSFORM & Line Fitting Introduction  HT performed after Edge Detection  It is a technique to isolate the curves of a given shape / shapes.
Example: line fitting. n=2 Model fitting Measure distances.
EM and model selection CS8690 Computer Vision University of Missouri at Columbia Missing variable problems In many vision problems, if some variables.
Random Thoughts 2012 (COMP 066) Jan-Michael Frahm Jared Heinly.
CS654: Digital Image Analysis Lecture 25: Hough Transform Slide credits: Guillermo Sapiro, Mubarak Shah, Derek Hoiem.
EECS 274 Computer Vision Model Fitting. Fitting Choose a parametric object/some objects to represent a set of points Three main questions: –what object.
Computer Vision - Fitting and Alignment (Slides borrowed from various presentations)
Fitting image transformations Prof. Noah Snavely CS1114
CSE 185 Introduction to Computer Vision Feature Matching.
Visual Tracking by Cluster Analysis Arthur Pece Department of Computer Science University of Copenhagen
Model fitting ECE 847: Digital Image Processing Stan Birchfield Clemson University.
Robust Estimation Course web page: vision.cis.udel.edu/~cv April 23, 2003  Lecture 25.
Fitting.
Grouping and Segmentation. Sometimes edge detectors find the boundary pretty well.
Fitting.
Line Fitting James Hayes.
Lecture 7: Image alignment
Homography From Wikipedia In the field of computer vision, any
A special case of calibration
Multiple View Geometry Comp Marc Pollefeys
Fitting.
Computer Vision - A Modern Approach
Segmentation by fitting a model: robust estimators and RANSAC
Fitting CS 678 Spring 2018.
Introduction to Sensor Interpretation
CSE 185 Introduction to Computer Vision
Introduction to Sensor Interpretation
Calibration and homographies
CS5760: Computer Vision Lecture 9: RANSAC Noah Snavely
Parameter estimation class 6
CS5760: Computer Vision Lecture 9: RANSAC Noah Snavely
Presentation transcript:

Computer Vision Fitting Marc Pollefeys COMP 256 Some slides and illustrations from D. Forsyth, T. Darrel, A. Zisserman,...

Computer Vision Aug 26/28-Introduction Sep 2/4CamerasRadiometry Sep 9/11Sources & ShadowsColor Sep 16/18Linear filters & edges(hurricane Isabel) Sep 23/25Pyramids & TextureMulti-View Geometry Sep30/Oct2StereoProject proposals Oct 7/9Tracking (Welch)Optical flow Oct 14/16-- Oct 21/23Silhouettes/carving(Fall break) Oct 28/30-Structure from motion Nov 4/6Project updateProj. SfM Nov 11/13Camera calibrationSegmentation Nov 18/20FittingProb. segm.&fit. Nov 25/27Matching templates(Thanksgiving) Dec 2/4Matching relationsRange data Dec 8 or 9?Final project Tentative class schedule

Computer Vision Final project presentation Presentation and/or Demo (your choice, but let me know) Short paper (Due Dec.5) Final presentation/demo Monday 8, 2-5pm?

Computer Vision Last week: Segmentation Group tokens into clusters that fit together –foreground-background –cluster on intensity, color, texture, location, … K-means graph-based

Computer Vision Fitting Choose a parametric object/some objects to represent a set of tokens Most interesting case is when criterion is not local –can’t tell whether a set of points lies on a line by looking only at each point and the next. Three main questions: –what object represents this set of tokens best? –which of several objects gets which token? –how many objects are there? (you could read line for object here, or circle, or ellipse or...)

Computer Vision Fitting and the Hough Transform Purports to answer all three questions –in practice, answer isn’t usually all that much help We do for lines only A line is the set of points (x, y) such that Different choices of , d>0 give different lines For any (x, y) there is a one parameter family of lines through this point, given by Each point gets to vote for each line in the family; if there is a line that has lots of votes, that should be the line passing through the points

Computer Vision tokens votes

Computer Vision Mechanics of the Hough transform Construct an array representing , d For each point, render the curve (, d) into this array, adding one at each cell Difficulties –how big should the cells be? (too big, and we cannot distinguish between quite different lines; too small, and noise causes lines to be missed) How many lines? –count the peaks in the Hough array Who belongs to which line? –tag the votes Hardly ever satisfactory in practice, because problems with noise and cell size defeat it

Computer Vision tokens votes

Computer Vision

Computer Vision

Computer Vision

Computer Vision Cascaded hough transform Tuytelaars and Van Gool ICCV‘98

Computer Vision Line fitting can be max. likelihood - but choice of model is important

Computer Vision Who came from which line? Assume we know how many lines there are - but which lines are they? –easy, if we know who came from which line Three strategies –Incremental line fitting –K-means –Probabilistic (later!)

Computer Vision

Computer Vision

Computer Vision

Computer Vision

Computer Vision

Computer Vision

Computer Vision

Computer Vision

Computer Vision

Computer Vision

Computer Vision

Computer Vision

Computer Vision

Computer Vision

Computer Vision Robustness As we have seen, squared error can be a source of bias in the presence of noise points –One fix is EM - we’ll do this shortly –Another is an M-estimator Square nearby, threshold far away –A third is RANSAC Search for good points

Computer Vision

Computer Vision

Computer Vision

Computer Vision

Computer Vision M-estimators Generally, minimize whereis the residual

Computer Vision

Computer Vision

Computer Vision

Computer Vision Too small

Computer Vision Too large

Computer Vision

Computer Vision RANSAC Choose a small subset uniformly at random Fit to that Anything that is close to result is signal; all others are noise Refit Do this many times and choose the best Issues –How many times? Often enough that we are likely to have a good line –How big a subset? Smallest possible –What does close mean? Depends on the problem –What is a good line? One where the number of nearby points is so big it is unlikely to be all outliers

Computer Vision

Computer Vision Distance threshold Choose t so probability for inlier is α (e.g. 0.95) Often empirically Zero-mean Gaussian noise σ then follows distribution with m =codimension of model (dimension+codimension=dimension space) CodimensionModelt 2 1line,F3.84σ 2 2H,P5.99σ 2 3T7.81σ 2

Computer Vision How many samples? Choose N so that, with probability p, at least one random sample is free from outliers. e.g. p=0.99 proportion of outliers e s5%10%20%25%30%40%50%

Computer Vision Acceptable consensus set? Typically, terminate when inlier ratio reaches expected ratio of inliers

Computer Vision Adaptively determining the number of samples e is often unknown a priori, so pick worst case, e.g. 50%, and adapt if more inliers are found, e.g. 80% would yield e =0.2 –N=∞, sample_count =0 –While N >sample_count repeat Choose a sample and count the number of inliers Set e=1-(number of inliers)/(total number of points) Recompute N from e Increment the sample_count by 1 –Terminate

Computer Vision Step 1. Extract features Step 2. Compute a set of potential matches Step 3. do Step 3.1 select minimal sample (i.e. 7 matches) Step 3.2 compute solution(s) for F Step 3.3 determine inliers until  (#inliers,#samples)<95% #inliers90%80%70%60%50% #samples Step 4. Compute F based on all inliers Step 5. Look for additional matches Step 6. Refine F based on all correct matches (generate hypothesis) (verify hypothesis) RANSAC for Fundamental Matrix

Computer Vision Step 1. Extract features Step 2. Compute a set of potential matches Step 3. do Step 3.1 select minimal sample (i.e. 7 matches) Step 3.2 compute solution(s) for F Step 3.3 Randomize verification verify if inlier while hypothesis is still promising while  (#inliers,#samples)<95% Step 4. Compute F based on all inliers Step 5. Look for additional matches Step 6. Refine F based on all correct matches (generate hypothesis) (verify hypothesis) Randomized RANSAC for Fundamental Matrix

Computer Vision Example: robust computation Interest points (500/image) (640x480) Putative correspondences (268) (Best match,SSD<20,±320) Outliers (117) (t=1.25 pixel; 43 iterations) Inliers (151) Final inliers (262) (2 MLE-inlier cycles; d  =0.23→d  =0.19; Iter Lev-Mar =10) #in 1-e adapt. N 62%20M 103%2.5M 4416%6, %2, % %43 from H&Z

Computer Vision More on robust estimation LMedS, an alternative to RANSAC (minimize Median residual in stead of maximizing inlier count) Enhancements to RANSAC –Randomized RANSAC –Sample ‘good’ matches more frequently –… RANSAC is also somewhat robust to bugs, sometimes it just takes a bit longer…

Computer Vision Epipolar geometry from silhouettes RANSAC is used to combine exploration of random epipole locations and robustness to outliers (Sinha et al. CVPR 2004? paper due tomorrow…) more on Dec. 8 …

Computer Vision Fitting curves other than lines In principle, an easy generalisation –The probability of obtaining a point, given a curve, is given by a negative exponential of distance squared In practice, rather hard –It is generally difficult to compute the distance between a point and a curve

Computer Vision Next class: Segmentation and Fitting using Probabilistic Methods Reading: Chapter 16 Missing data: EM algorithm Model selection