CS654: Digital Image Analysis Lecture 25: Hough Transform Slide credits: Guillermo Sapiro, Mubarak Shah, Derek Hoiem.

Slides:



Advertisements
Similar presentations
Object Recognition from Local Scale-Invariant Features David G. Lowe Presented by Ashley L. Kapron.
Advertisements

Image Segmentation Image segmentation (segmentace obrazu) –division or separation of the image into segments (connected regions) of similar properties.
Segmentation (2): edge detection
Fitting: The Hough transform
Lecture 5 Hough transform and RANSAC
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.
1 Model Fitting Hao Jiang Computer Science Department Oct 6, 2009.
1Ellen L. Walker Segmentation Separating “content” from background Separating image into parts corresponding to “real” objects Complete segmentation Each.
A Study of Approaches for Object Recognition
1 Model Fitting Hao Jiang Computer Science Department Oct 8, 2009.
Object Recognition with Invariant Features n Definition: Identify objects or scenes and determine their pose and model parameters n Applications l Industrial.
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.
GENERALIZED HOUGH TRANSFORM. Recap on classical Hough Transform 1.In detecting lines – The parameters  and  were found out relative to the origin (0,0)
Fitting a Model to Data Reading: 15.1,
CS 376b Introduction to Computer Vision 04 / 14 / 2008 Instructor: Michael Eckmann.
3-D Computer Vision CSc Feature Detection and Grouping.
Automatic Image Alignment (feature-based) : Computational Photography Alexei Efros, CMU, Fall 2006 with a lot of slides stolen from Steve Seitz and.
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.
Lecture 10: Robust fitting CS4670: Computer Vision Noah Snavely.
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 - Fitting and Alignment
FEATURE EXTRACTION FOR JAVA CHARACTER RECOGNITION Rudy Adipranata, Liliana, Meiliana Indrawijaya, Gregorius Satia Budhi Informatics Department, Petra Christian.
Fitting and Registration Computer Vision CS 543 / ECE 549 University of Illinois Derek Hoiem 02/14/12.
Feature Detection. Image features Global features –global properties of an image, including intensity histogram, frequency domain descriptors, covariance.
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.
Fitting : Voting and the Hough Transform Monday, Feb 14 Prof. Kristen Grauman UT-Austin.
Object Detection 01 – Advance Hough Transformation JJCAO.
CS 1699: Intro to Computer Vision Matching and Fitting Prof. Adriana Kovashka University of Pittsburgh September 29, 2015.
Generalized Hough Transform
Edges. Edge detection schemes can be grouped in three classes: –Gradient operators: Robert, Sobel, Prewitt, and Laplacian (3x3 and 5x5 masks) –Surface.
Mestrado em Ciência de Computadores Mestrado Integrado em Engenharia de Redes e Sistemas Informáticos VC 14/15 – TP8 Segmentation Miguel Tavares Coimbra.
Fitting: The Hough transform
CS654: Digital Image Analysis
CS654: Digital Image Analysis Lecture 24: Introduction to Image Segmentation: Edge Detection Slide credits: Derek Hoiem, Lana Lazebnik, Steve Seitz, David.
Edge Detection and Geometric Primitive Extraction Jinxiang Chai.
EECS 274 Computer Vision Model Fitting. Fitting Choose a parametric object/some objects to represent a set of points Three main questions: –what object.
Fitting Thursday, Sept 24 Kristen Grauman UT-Austin.
1 Model Fitting Hao Jiang Computer Science Department Sept 30, 2014.
Computer Vision - Fitting and Alignment (Slides borrowed from various presentations)
Object Detection 01 – Basic Hough Transformation JJCAO.
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.
Image Segmentation Image segmentation (segmentace obrazu)
776 Computer Vision Jan-Michael Frahm Spring 2012.
CS 2750: Machine Learning Linear Regression Prof. Adriana Kovashka University of Pittsburgh February 10, 2016.
Digital Image Processing Lecture 17: Segmentation: Canny Edge Detector & Hough Transform Prof. Charlene Tsai.
Fitting.
Hough Transform. Introduction The Hough Transform is a general technique for extracting geometrical primitives from e.g. edge data Performed after Edge.
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.
Grouping and Segmentation. Sometimes edge detectors find the boundary pretty well.
HOUGH TRANSFORM.
Lecture 07 13/12/2011 Shai Avidan הבהרה: החומר המחייב הוא החומר הנלמד בכיתה ולא זה המופיע / לא מופיע במצגת.
Fitting: Voting and the Hough Transform
Miguel Tavares Coimbra
Fitting.
Line Fitting James Hayes.
Detection of discontinuity using
Exercise Class 11: Robust Tecuniques RANSAC, Hough Transform
A special case of calibration
Fitting Curve Models to Edges
Photo by Carl Warner.
CSE 185 Introduction to Computer Vision
Introduction to Artificial Intelligence Lecture 22: Computer Vision II
Presentation transcript:

CS654: Digital Image Analysis Lecture 25: Hough Transform Slide credits: Guillermo Sapiro, Mubarak Shah, Derek Hoiem

Recap of Lecture 24 Introduction to image segmentation Top down and bottom up segmentation Edge based segmentation First order derivative operators Second order derivative operator DoG, LoG

Outline of Lecture 25 Preprocessing Edge Images Edge Tracking Methods Fitting Lines and Curves to Edges The Hough Transform

Boundaries of Objects Marked by many users

Boundaries of Objects from Edges Brightness Gradient (Edge detection) Missing edge continuity, many spurious edges

Boundaries of Objects from Edges Multi-scale Brightness Gradient But, low strength edges may be very important

Boundaries of Objects from Edges Image Machine Edge Detection Human Boundary Marking

Boundaries in Medical Imaging Detection of cancerous regions. [Foran, Comaniciu, Meer, Goodell, 00]

Boundaries in Ultrasound Images Hard to detect in the presence of large amount of speckle noise

Boundaries of Objects Sometimes hard even for humans!

Preprocessing Edge Images Image Edge detection and Thresholding Noisy edge image Incomplete boundaries Shrink and Expand Thinning

How to fit a line Least squares Fit (over constraint) There are more equations than unknowns Many points two unknowns RANSAC (constraint) Number of equations are equal to the number of unknowns Two points, one line Hough Transform (under constraint) There are fewer equations than unknowns One equation, two unknowns

Fitting Lines to Edges (Least Squares) Given: Many pairs Find: Parameters Minimize: Average square distance:

Fitting Lines to Edges (Least Squares) Minimize: Average square distance: Using: Note:

Curve Fitting Find Polynomial: that best fits the given points Minimize: Using: Note:is LINEAR in the parameters (a, b, c, d)

RANSAC (Random Sampling and Consensus) 1.Randomly select two points to fit a line 2.Find the error between the estimated solution and all other points. 3.If the error is less than tolerance, then quit, else go to step (1).

Line Grouping Problem Slide credit: David Jacobs

This is difficult because of: Extraneous data: clutter or multiple models We do not know what is part of the model? Can we pull out models with a few parts from much larger amounts of background clutter? Missing data: only some parts of model are present Noise Cost: It is not feasible to check all combinations of features by fitting a model to each possible subset

Hough Transform Elegant method for direct object recognition Edges need not be connected Complete object need not be visible Key Idea: Edges VOTE for the possible model Several Lines How do we Know which points belong to which lines?

Line Fitting: Hough Transform

Image and Parameter Spaces Equation of Line: Find: Consider point: Image Space Parameter Space Parameter space also called Hough Space

Line Detection by Hough Transform Parameter Space Algorithm: Quantize Parameter Space Create Accumulator Array Set For each image edge increment: If lies on the line: Find local maxima in

Better Parameterization NOTE: Large Accumulator More memory and computations Improvement: Line equation: Here Given points find (Finite Accumulator Array Size) Image Space Hough Space ? Hough Space Sinusoid

Image space Votes Horizontal axis is θ, vertical is rho.

Image space votes

Image space votes

Fewer votes land in a single bin when noise increases.

Adding more clutter increases number of bins with false peaks.

Mechanics of the Hough transform Difficulties –how big should the cells be? –too big, and we merge quite different lines; –too small, and noise causes lines to be missed) How many lines? –Count the peaks in the Hough array –Treat adjacent peaks as a single peak Which points belong to each line? –Search for points close to the line –Solve again for line and iterate

Real World Example Original Edge Detection Found Lines Parameter Space

Finding Circles by Hough Transform Equation of Circle: If radius is known: Accumulator Array (2D Hough Space) Image space

Finding Circles by Hough Transform Equation of Circle: Image space Hough Space If radius is known:Accumulator Array (2D Hough Space)

Finding Circles by Hough Transform Equation of Circle: If radius is not known: 3D Hough Space! Use Accumulator array What is the surface in the Hough space? Image space

Using Gradient Information Gradient information can save lot of computation: Edge Location Edge Direction Need to increment only one point in Accumulator!! Assume radius is known:

Finding Coins Original Edges (note noise)

Finding Coins (Continued) PenniesQuarters

Finding Coins (Continued) Coin finding sample images from: Vivek Kwatra Note that because the quarters and penny are different sizes, a different Hough transform (with separate accumulators) was used for each circle size.

Generalized Hough Transform Model Shape NOT described by equation Requires training Object of known shape Generate model R-table Similar approach to line and circle fitting during detection

Generating R Table 1.Compute centroid 2.For each pixel compute r 3.Find edge orientation 4.Construct a table of angle and r values

Generating R-table Edge orientation Distance (r)

GHT Algorithm

Scale and Rotation Invariance Modified centroid location Transformed coordinate

Hough Transform: Comments Works on Disconnected Edges Relatively insensitive to occlusion Effective for simple shapes (lines, circles, etc) Trade-off between work in Image Space and Parameter Space Handling inaccurate edge locations: Increment Patch in Accumulator rather than a single point

Thank you Next Lecture: Region based segmentation