Lecture 5 Hough transform and RANSAC

Slides:



Advertisements
Similar presentations
Hough Transforms CSE 6367 – Computer Vision Vassilis Athitsos University of Texas at Arlington.
Advertisements

Fitting: The Hough transform. Voting schemes Let each feature vote for all the models that are compatible with it Hopefully the noise features will not.
Hough Transform Reading Watt, An edge is not a line... How can we detect lines ?
Segmentation (2): edge detection
Fitting: The Hough transform
Announcements Quiz solutions on the web page. Problem Set 5 on the web page. Due Thursday, April 1. Results from Problem Set 4.
Announcements Quiz on Tuesday, March 10. Material covered (Union not Intersection) – All lectures before today (March 3). –Forsyth and Ponce Readings:
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,...
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.
Object Recognition A wise robot sees as much as he ought, not as much as he can Search for objects that are important lamps outlets wall corners doors.
Color a* b* Brightness L* Texture Original Image Features Feature combination E D 22 Boundary Processing Textons A B C A B C 22 Region Processing.
Feature Detection: Corners and Lines. Edges vs. Corners Edges = maxima in intensity gradientEdges = maxima in intensity gradient.
Fitting a Model to Data Reading: 15.1,
CS 376b Introduction to Computer Vision 04 / 14 / 2008 Instructor: Michael Eckmann.
Stockman MSU/CSE Fall 2009 Finding region boundaries.
Edge Detection Today’s readings Cipolla and Gee –supplemental: Forsyth, chapter 9Forsyth Watt, From Sandlot ScienceSandlot Science.
Fitting: The Hough transform
Robust estimation Problem: we want to determine the displacement (u,v) between pairs of images. We are given 100 points with a correlation score computed.
Segmentation Slides Credit: Jim Rehg, G.Tech. Christopher Rasmussen, UD John Spletzer, Lehigh Also, Slides adopted from material provided by David Forsyth.
Fitting.
כמה מהתעשייה? מבנה הקורס השתנה Computer vision.
Computer Vision Spring ,-685 Instructor: S. Narasimhan Wean Hall 5409 T-R 10:30am – 11:50am.
October 8, 2013Computer Vision Lecture 11: The Hough Transform 1 Fitting Curve Models to Edges Most contours can be well described by combining several.
Computer Vision More Image Features Hyunki Hong School of Integrative Engineering.
Segmentation Course web page: vision.cis.udel.edu/~cv May 7, 2003  Lecture 31.
Fitting: The Hough transform. Voting schemes Let each feature vote for all the models that are compatible with it Hopefully the noise features will not.
Fitting & Matching Lecture 4 – Prof. Bregler Slides from: S. Lazebnik, S. Seitz, M. Pollefeys, A. Effros.
HOUGH TRANSFORM Presentation by Sumit Tandon
HOUGH TRANSFORM & Line Fitting Introduction  HT performed after Edge Detection  It is a technique to isolate the curves of a given shape / shapes.
Edges. Edge detection schemes can be grouped in three classes: –Gradient operators: Robert, Sobel, Prewitt, and Laplacian (3x3 and 5x5 masks) –Surface.
CSSE463: Image Recognition Day 25 This week This week Today: Finding lines and circles using the Hough transform (Sonka 6.26) Today: Finding lines and.
Lecture 08 Detecting Shape Using Hough Transform Lecture 08 Detecting Shape Using Hough Transform Mata kuliah: T Computer Vision Tahun: 2010.
CS654: Digital Image Analysis Lecture 25: Hough Transform Slide credits: Guillermo Sapiro, Mubarak Shah, Derek Hoiem.
Fitting: The Hough transform
Edge Detection and Geometric Primitive Extraction Jinxiang Chai.
Session 2 – Hough Transformation Ashay Tejwani. Video Processing In the last session we saw that an image can be represented by an array of RGB values.
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)
Object Detection 01 – Basic Hough Transformation JJCAO.
Hough Transform Procedure to find a shape in an image Shape can be described in parametric form Shapes in image correspond to a family of parametric solutions.
CSE 185 Introduction to Computer Vision Feature Matching.
October 16, 2014Computer Vision Lecture 12: Image Segmentation II 1 Hough Transform The Hough transform is a very general technique for feature detection.
Digital Image Processing Lecture 17: Segmentation: Canny Edge Detector & Hough Transform Prof. Charlene Tsai.
Detecting Image Features: Corner. Corners Given an image, denote the image gradient. C is symmetric with two positive eigenvalues. The eigenvalues give.
Hough Transform CS 691 E Spring Outline Hough transform Homography Reading: FP Chapter 15.1 (text) Some slides from Lazebnik.
Object Recognition. Segmentation –Roughly speaking, segmentation is to partition the images into meaningful parts that are relatively homogenous in certain.
1 Hough Transform. 2 A Technique to Isolate Features of a Particular Shape within an Image The classical Hough transform is most commonly used for the.
Grouping and Segmentation. Sometimes edge detectors find the boundary pretty well.
From Last Time… Normalization If using a filter for smoothing want to preserve average brightnessIf using a filter for smoothing want to preserve average.
CSSE463: Image Recognition Day 26
Fitting: Voting and the Hough Transform
Fitting.
Line Fitting James Hayes.
Detection of discontinuity using
Fitting: The Hough transform
Fitting Curve Models to Edges
Computer Vision - A Modern Approach
Hough Transform COMP 4900C Winter 2008.
CSSE463: Image Recognition Day 26
CSSE463: Image Recognition Day 26
Hough Transform.
Outline Announcement Perceptual organization, grouping, and segmentation Hough transform Read Chapter 17 of the textbook File: week14-m.ppt.
CSSE463: Image Recognition Day 27
CSSE463: Image Recognition Day 26
Edge Detection Today’s readings Cipolla and Gee Watt,
CSE 185 Introduction to Computer Vision
CSSE463: Image Recognition Day 26
Finding Line and Curve Segments from Edge Images
Introduction to Artificial Intelligence Lecture 22: Computer Vision II
Presentation transcript:

Lecture 5 Hough transform and RANSAC Slides by: David A. Forsyth Clark F. Olson

Further abstraction Even after edge detection we may have more information than we want. How can we abstract this even further? Choose a parametric object to represent a set of pixels Example: a line (or segment) can represent a set of edge pixels Other possibilities include circles and complex structures

Fitting After deciding what representation you are using, there are three main questions: How many objects are there? To which of the objects does each pixel belong (if any)? What parameters best represents each of the objects?

Curve extraction One way to extract curves is to link edge pixels together. A junction (3-way intersection) indicates a break point. Can fit curves with model (line, conic section, etc.) after extraction. However, this doesn’t usually work that well: Edges are broken by areas of low contrast Junctions are often missed by edge detectors Another bad idea: test all possible lines (or other shape).

Incremental line fitting

The Hough transform The Hough transform is an important method for detecting structure (originally lines, but much more general). The basic idea is to examine the parameter space for lines, rather than the image space, by mapping pixels in the image into the parameter space.

Line parameterizations A line is the set of points (x, y) such that: y = mx + b (slope-intercept) or (sin θ) x + (cos θ) y + ρ = 0 (rho-theta) (Two common ways to parameterize a line.)

The Hough transform Different choices of m, b (or q, ρ) give different lines. For any (x, y) there is a one parameter family of lines through this point. 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

Example ρ y x θ pixels votes Figure 15.1, top half. Note that most points in the vote array are very dark, because they get only one vote. x pixels θ votes

Mechanics of the Hough transform Construct an array representing q, ρ. For each point, render the curve (q, ρ) into this array, adding one at each cell ρ y pixels x votes θ

Mechanics of the Hough transform Issues: How big should the cells be? If too big, we can’t distinguish between different lines. If too small, noise causes lines to be missed. How many lines? Count the peaks in the array. Who belongs to which line? Tag the votes, or post-process.

Example with noise ρ y This is 15.1 lower half x pixels votes θ

Random data ρ y x θ pixels votes 15.2; main point is that lots of noise can lead to large peaks in the array x pixels votes θ

Hough transform algorithm Construct parameter space voting array (bins). For each edge pixel in image: Increment counter for each bin consistent with pixel. For each bin in voting array: Determine if sufficient votes exist (and local maximum). If so, output line.

Variations Can use pairs of points to vote in parameter space - Two points are consistent with only one line Can use the edge gradient to reduce the number of bins consistent with an edge pixel - One point plus orientation is consistent with only one line Same ideas can be applied to many other structures: - Circles - Conic sections - Arbitrary 2D shapes - Three-dimensional objects

RANSAC RANSAC (RANdom SAmple Consensus) is a useful algorithm using Monte Carlo sampling. Choose a small subset uniformly at random Fit the selected subset Anything else that is close to this fit is included Refit Do this many times and choose the best fits This algorithm contains concepts that are hugely useful; in my experience, everyone with some experience of applied problems who doesn’t yet know RANSAC is almost immediately able to use it to simplify some problem they’ve seen.

RANSAC Issues: How big a subset? - Usually smallest possible How many times? - Often enough that we are likely to have a good line How close is “close enough”? - Depends on the problem