Edges.

Slides:



Advertisements
Similar presentations
Scale & Affine Invariant Interest Point Detectors Mikolajczyk & Schmid presented by Dustin Lennon.
Advertisements

Boundary Detection - Edges Boundaries of objects –Usually different materials/orientations, intensity changes.
CSE 473/573 Computer Vision and Image Processing (CVIP)
Interest points CSE P 576 Ali Farhadi Many slides from Steve Seitz, Larry Zitnick.
1Ellen L. Walker Edges Humans easily understand “line drawings” as pictures.
Edge and Corner Detection Reading: Chapter 8 (skip 8.1) Goal: Identify sudden changes (discontinuities) in an image This is where most shape information.
Edge Detection. Our goal is to extract a “line drawing” representation from an image Useful for recognition: edges contain shape information –invariance.
EE663 Image Processing Edge Detection 1
Edge detection Goal: Identify sudden changes (discontinuities) in an image Intuitively, most semantic and shape information from the image can be encoded.
Lecture 4 Edge Detection
Computer Vision Group Edge Detection Giacomo Boracchi 5/12/2007
Canny Edge Detector.
Computer Vision - A Modern Approach Set: Linear Filters Slides by D.A. Forsyth Differentiation and convolution Recall Now this is linear and shift invariant,
(1) Feature-point matching by D.J.Duff for CompVis Online: Feature Point Matching Detection,
Edge detection. Edge Detection in Images Finding the contour of objects in a scene.
Image processing. Image operations Operations on an image –Linear filtering –Non-linear filtering –Transformations –Noise removal –Segmentation.
Computer Vision - A Modern Approach
CS 376b Introduction to Computer Vision 02 / 27 / 2008 Instructor: Michael Eckmann.
Segmentation (Section 10.2)
Linear filters and edges. Linear Filters General process: Form new image whose pixels are a weighted sum of original pixel values, using the same set.
CS443: Digital Imaging and Multimedia Filters Spring 2008 Ahmed Elgammal Dept. of Computer Science Rutgers University Spring 2008 Ahmed Elgammal Dept.
Filters and Edges. Zebra convolved with Leopard.
Announcements Since Thursday we’ve been discussing chapters 7 and 8. “matlab can be used off campus by logging into your wam account and bringing up an.
CS4670: Computer Vision Kavita Bala Lecture 7: Harris Corner Detection.
Edge Detection.
Computer Vision P. Schrater Spring 2003
Edge detection Goal: Identify sudden changes (discontinuities) in an image Intuitively, most semantic and shape information from the image can be encoded.
Computer Vision Linear filters and edges Marc Pollefeys COMP 256.
MASKS © 2004 Invitation to 3D vision Lecture 3 Image Primitives andCorrespondence.
Computer Vision Spring ,-685 Instructor: S. Narasimhan WH 5409 T-R 10:30 – 11:50am.
Linear Filters and Edges
Local invariant features Cordelia Schmid INRIA, Grenoble.
Lecture 06 06/12/2011 Shai Avidan הבהרה: החומר המחייב הוא החומר הנלמד בכיתה ולא זה המופיע / לא מופיע במצגת.
Discrete Images (Chapter 7) Fourier Transform on discrete and bounded domains. Given an image: 1.Zero boundary condition 2.Periodic boundary condition.
Computer Vision : CISC 4/689 Sobel Edge Detection: Gradient Approximation Horizontal diff.Vertical diff Note anisotropy of edge.
Edge Detection Today’s reading Cipolla & Gee on edge detection (available online)Cipolla & Gee on edge detection From Sandlot ScienceSandlot Science.
Lecture 6: Edge Detection CAP 5415: Computer Vision Fall 2008.
EECS 274 Computer Vision Linear Filters and Edges.
CSC508 What You Should Be Doing Code, code, code –Programming Gaussian Convolution Sobel Edge Operator.
Instructor: S. Narasimhan
Local invariant features Cordelia Schmid INRIA, Grenoble.
Edge detection Goal: Identify sudden changes (discontinuities) in an image Intuitively, most semantic and shape information from the image can be encoded.
CSC508 Convolution Operators. CSC508 Convolution Arguably the most fundamental operation of computer vision It’s a neighborhood operator –Similar to the.
Computer Vision - A Modern Approach Set: Linear Filters Slides by D.A. Forsyth Gradients and edges Points of sharp change in an image are interesting:
Features, Feature descriptors, Matching Jana Kosecka George Mason University.
CSE 6367 Computer Vision Image Operations and Filtering “You cannot teach a man anything, you can only help him find it within himself.” ― Galileo GalileiGalileo.
CS654: Digital Image Analysis
Course 5 Edge Detection. Image Features: local, meaningful, detectable parts of an image. edge corner texture … Edges: Edges points, or simply edges,
Lecture 04 Edge Detection Lecture 04 Edge Detection Mata kuliah: T Computer Vision Tahun: 2010.
Instructor: Mircea Nicolescu Lecture 7
Finding Boundaries Computer Vision CS 143, Brown James Hays 09/28/11 Many slides from Lana Lazebnik, Steve Seitz, David Forsyth, David Lowe, Fei-Fei Li,
MASKS © 2004 Invitation to 3D vision Lecture 3 Image Primitives andCorrespondence.
Edges Edges = jumps in brightness/color Brightness jumps marked in white.
Winter in Kraków photographed by Marcin Ryczek
Edge Detection Images and slides from: James Hayes, Brown University, Computer Vision course Svetlana Lazebnik, University of North Carolina at Chapel.
Edge Detection slides taken and adapted from public websites:
Linear Filters and Edges Chapters 7 and 8
Linear Filters and Edges Chapters 7 and 8
Linear Filters and Edges Chapters 7 and 8
Image Primitives and Correspondence
Edge Detection CS 678 Spring 2018.
Computer Vision Lecture 9: Edge Detection II
Edge detection Goal: Identify sudden changes (discontinuities) in an image Intuitively, most semantic and shape information from the image can be encoded.
Review: Linear Systems
Canny Edge Detector.
Feature Detection .
Lecture 5: Feature invariance
Winter in Kraków photographed by Marcin Ryczek
IT472 Digital Image Processing
IT472 Digital Image Processing
Presentation transcript:

Edges

University of Missouri at Columbia Gradients and edges Points of sharp change in an image are interesting: change in reflectance change in object change in illumination noise Sometimes called edge points General strategy determine image gradient now mark points where gradient magnitude is particularly large wrt neighbours (ideally, curves of such points). CS8690 Computer Vision University of Missouri at Columbia

University of Missouri at Columbia There are three major issues: 1) The gradient magnitude at different scales is different; which should we choose? 2) The gradient magnitude is large along thick trail; how do we identify the significant points? 3) How do we link the relevant points up into curves? Figures show gradient magnitude of zebra at two different scales CS8690 Computer Vision University of Missouri at Columbia

Smoothing and Differentiation Issue: noise smooth before differentiation two convolutions to smooth, then differentiate? actually, no - we can use a derivative of Gaussian filter because differentiation is convolution, and convolution is associative Important to point out that the derivative of gaussian kernels I’ve illustrated “look like” the effects that they’re trying to identify. CS8690 Computer Vision University of Missouri at Columbia

University of Missouri at Columbia 1 pixel 3 pixels 7 pixels The scale of the smoothing filter affects derivative estimates, and also the semantics of the edges recovered. CS8690 Computer Vision University of Missouri at Columbia

University of Missouri at Columbia We wish to mark points along the curve where the magnitude is biggest. We can do this by looking for a maximum along a slice normal to the curve (non-maximum suppression). These points should form a curve. There are then two algorithmic issues: at which point is the maximum, and where is the next one? CS8690 Computer Vision University of Missouri at Columbia

University of Missouri at Columbia Non-maximum suppression At q, we have a maximum if the value is larger than those at both p and at r. Interpolate to get these values. CS8690 Computer Vision University of Missouri at Columbia

University of Missouri at Columbia Predicting the next edge point Assume the marked point is an edge point. Then we construct the tangent to the edge curve (which is normal to the gradient at that point) and use this to predict the next points (here either r or s). CS8690 Computer Vision University of Missouri at Columbia

University of Missouri at Columbia Remaining issues Check that maximum value of gradient value is sufficiently large drop-outs? use hysteresis use a high threshold to start edge curves and a low threshold to continue them. CS8690 Computer Vision University of Missouri at Columbia

University of Missouri at Columbia Notice Something nasty is happening at corners Scale affects contrast Edges aren’t bounding contours CS8690 Computer Vision University of Missouri at Columbia

University of Missouri at Columbia CS8690 Computer Vision University of Missouri at Columbia

University of Missouri at Columbia fine scale high threshold CS8690 Computer Vision University of Missouri at Columbia

University of Missouri at Columbia coarse scale, high threshold CS8690 Computer Vision University of Missouri at Columbia

University of Missouri at Columbia coarse scale low threshold CS8690 Computer Vision University of Missouri at Columbia

The Laplacian of Gaussian Another way to detect an extremal first derivative is to look for a zero second derivative Appropriate 2D analogy is rotation invariant the Laplacian Bad idea to apply a Laplacian without smoothing smooth with Gaussian, apply Laplacian this is the same as filtering with a Laplacian of Gaussian filter Now mark the zero points where there is a sufficiently large derivative, and enough contrast CS8690 Computer Vision University of Missouri at Columbia

University of Missouri at Columbia sigma=4 contrast=1 LOG zero crossings contrast=4 sigma=2 CS8690 Computer Vision University of Missouri at Columbia

University of Missouri at Columbia We still have unfortunate behaviour at corners This is the usual story; if you find edges as a level crossing of a function, then trihedral vertices are going to cause trouble. Also, notice the bulges at the corners. CS8690 Computer Vision University of Missouri at Columbia

University of Missouri at Columbia Filters are templates Applying a filter at some point can be seen as taking a dot-product between the image and some vector Filtering the image is a set of dot products Insight filters look like the effects they are intended to find filters find effects they look like CS8690 Computer Vision University of Missouri at Columbia

University of Missouri at Columbia Positive responses Zero mean image, -1:1 scale Zero mean image, -max:max scale The filter is the little block in the top left hand corner. Notice this is a fair spot-detector. CS8690 Computer Vision University of Missouri at Columbia

University of Missouri at Columbia Positive responses Zero mean image, -1:1 scale Zero mean image, -max:max scale The filter is the little block in the top left hand corner. Notice this is a fair bar-detector. CS8690 Computer Vision University of Missouri at Columbia

University of Missouri at Columbia This is a figure from the book, figure 7.16. Read the caption for the story! Figure from “Computer Vision for Interactive Computer Graphics,” W.Freeman et al, IEEE Computer Graphics and Applications, 1998 copyright 1998, IEEE CS8690 Computer Vision University of Missouri at Columbia

Normalized correlation Think of filters of a dot product now measure the angle i.e normalised correlation output is filter output, divided by root sum of squares of values over which filter lies Tricks: ensure that filter has a zero response to a constant region (helps reduce response to irrelevant background) subtract image average when computing the normalizing constant (i.e. subtract the image mean in the neighbourhood) absolute value deals with contrast reversal CS8690 Computer Vision University of Missouri at Columbia

Region based Similarity Metric Sum of squared differences Normalize cross-correlation Sum of absolute differences CS8690 Computer Vision University of Missouri at Columbia

Orientation representations The gradient magnitude is affected by illumination changes but it’s direction isn’t We can describe image patches by the swing of the gradient orientation Important types: constant window small gradient mags edge window few large gradient mags in one direction flow window many large gradient mags in one direction corner window large gradient mags that swing CS8690 Computer Vision University of Missouri at Columbia

University of Missouri at Columbia Representing Windows Types constant small eigenvalues Edge one medium, one small Flow one large, one small corner two large eigenvalues CS8690 Computer Vision University of Missouri at Columbia

Point Feature Extraction Compute eigenvalues of G If smallest eigenvalue  of G is bigger than  - mark pixel as candidate feature point Alternatively feature quality function (Harris Corner Detector) CS8690 Computer Vision University of Missouri at Columbia

University of Missouri at Columbia Harris Corner Detector - Example CS8690 Computer Vision University of Missouri at Columbia

University of Missouri at Columbia On the left, I’ve plotted the gradients on top of the image. It’s hard to see what’s going on, which is why there’s more detail in the next slide. CS8690 Computer Vision University of Missouri at Columbia

University of Missouri at Columbia Here we see gradient arrows at each pixel of a detailed view. In some regions, the arrows swing, which should be detectable using our analysis of H above CS8690 Computer Vision University of Missouri at Columbia

University of Missouri at Columbia Here H was averaged over a small window, and I’m plotting ellipses x^t H^(-1) x=eps (so if H has one big and one small eigenvalue, I’ll see a heavily oriented ellipse; if H has two small eigenvalues, I’ll see a tiny circle, etc.) CS8690 Computer Vision University of Missouri at Columbia

University of Missouri at Columbia The average is now over a bigger window. CS8690 Computer Vision University of Missouri at Columbia