1Ellen L. Walker Edges Humans easily understand “line drawings” as pictures.

Slides:



Advertisements
Similar presentations
November 12, 2013Computer Vision Lecture 12: Texture 1Signature Another popular method of representing shape is called the signature. In order to compute.
Advertisements

Spatial Filtering (Chapter 3)
EDGE DETECTION ARCHANA IYER AADHAR AUTHENTICATION.
Instructor: Mircea Nicolescu Lecture 6 CS 485 / 685 Computer Vision.
Sliding Window Filters and Edge Detection Longin Jan Latecki Computer Graphics and Image Processing CIS 601 – Fall 2004.
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.
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
CSSE463: Image Recognition Day 6 Yesterday: Yesterday: Local, global, and point operators all operate on entire image, changing one pixel at a time!! Local,
Canny Edge Detector.
Edge detection. Edge Detection in Images Finding the contour of objects in a scene.
CS 376b Introduction to Computer Vision 04 / 11 / 2008 Instructor: Michael Eckmann.
EE663 Image Processing Edge Detection 2 Dr. Samir H. Abdul-Jauwad Electrical Engineering Department King Fahd University of Petroleum & Minerals.
Computer Vision - A Modern Approach
Canny Edge Detector1 1)Smooth image with a Gaussian optimizes the trade-off between noise filtering and edge localization 2)Compute the Gradient magnitude.
Segmentation (Section 10.2)
EE663 Image Processing Edge Detection 3 Dr. Samir H. Abdul-Jauwad Electrical Engineering Department King Fahd University of Petroleum & Minerals.
Lecture 4: Edge Based Vision Dr Carole Twining Thursday 18th March 2:00pm – 2:50pm.
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.
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.
October 8, 2013Computer Vision Lecture 11: The Hough Transform 1 Fitting Curve Models to Edges Most contours can be well described by combining several.
CS 376b Introduction to Computer Vision 02 / 26 / 2008 Instructor: Michael Eckmann.
Chapter 10: Image Segmentation
Computer Vision Spring ,-685 Instructor: S. Narasimhan WH 5409 T-R 10:30 – 11:50am.
National Center for Supercomputing Applications University of Illinois at Urbana-Champaign Image Features Kenton McHenry, Ph.D. Research Scientist.
Discrete Images (Chapter 7) Fourier Transform on discrete and bounded domains. Given an image: 1.Zero boundary condition 2.Periodic boundary condition.
Edges. Edge detection schemes can be grouped in three classes: –Gradient operators: Robert, Sobel, Prewitt, and Laplacian (3x3 and 5x5 masks) –Surface.
Chapter 10, Part I.  Segmentation subdivides an image into its constituent regions or objects.  Image segmentation methods are generally based on two.
CSC508 What You Should Be Doing Code, code, code –Programming Gaussian Convolution Sobel Edge Operator.
Instructor: S. Narasimhan
Edge detection Goal: Identify sudden changes (discontinuities) in an image Intuitively, most semantic and shape information from the image can be encoded.
CSE 185 Introduction to Computer Vision Edges. Scale space Reading: Chapter 3 of S.
CSC508 Convolution Operators. CSC508 Convolution Arguably the most fundamental operation of computer vision It’s a neighborhood operator –Similar to the.
October 7, 2014Computer Vision Lecture 9: Edge Detection II 1 Laplacian Filters Idea: Smooth the image, Smooth the image, compute the second derivative.
Digital Image Processing Lecture 16: Segmentation: Detection of Discontinuities Prof. Charlene Tsai.
Edges.
CSSE463: Image Recognition Day 6 Yesterday: Local, global, and point operators use different context, but all Yesterday: Local, global, and point operators.
October 1, 2013Computer Vision Lecture 9: From Edges to Contours 1 Canny Edge Detector However, usually there will still be noise in the array E[i, j],
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.
Digital Image Processing Lecture 16: Segmentation: Detection of Discontinuities May 2, 2005 Prof. Charlene Tsai.
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.
Canny Edge Detection. 5 STEPS 5 STEPS Apply Gaussian filter to smooth the image in order to remove the noise Apply Gaussian filter to smooth the image.
Machine Vision Edge Detection Techniques ENT 273 Lecture 6 Hema C.R.
Computer Vision Image Features Instructor: Dr. Sherif Sami Lecture 4.
Instructor: Mircea Nicolescu Lecture 7
Instructor: Mircea Nicolescu Lecture 5 CS 485 / 685 Computer Vision.
September 26, 2013Computer Vision Lecture 8: Edge Detection II 1Gradient In the one-dimensional case, a step edge corresponds to a local peak in the first.
Sliding Window Filters Longin Jan Latecki October 9, 2002.
1 Edge Operators a kind of filtering that leads to useful features.
Edges Edges = jumps in brightness/color Brightness jumps marked in white.
April 21, 2016Introduction to Artificial Intelligence Lecture 22: Computer Vision II 1 Canny Edge Detector The Canny edge detector is a good approximation.
EDGE DETECTION Dr. Amnach Khawne. Basic concept An edge in an image is defined as a position where a significant change in gray-level values occur. An.
Edge Detection Phil Mlsna, Ph.D. Dept. of Electrical Engineering Northern Arizona University.
Chapter 10 Image Segmentation
Digital Image Processing Lecture 16: Segmentation: Detection of Discontinuities Prof. Charlene Tsai.
Edge Detection CS 678 Spring 2018.
Fitting Curve Models to Edges
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.
Dr. Chang Shu COMP 4900C Winter 2008
a kind of filtering that leads to useful features
a kind of filtering that leads to useful features
Canny Edge Detector.
Feature Detection .
Canny Edge Detector Smooth image with a Gaussian
IT472 Digital Image Processing
IT472 Digital Image Processing
Presentation transcript:

1Ellen L. Walker Edges Humans easily understand “line drawings” as pictures.

2Ellen L. Walker What is an edge? Edge = where intensity (or color or texture) changes quickly (large gradient) Step edge Roof edge Noisy edge In 2D, direction of max. gradient is perpendicular to the edge contour

3Ellen L. Walker Edge Properties Magnitude Edge strength (how sharp is the change?) Direction Orientation along edge Perpendicular to gradient (greatest change in brightness) direction

4Ellen L. Walker Measuring Change Difference (first derivative - S') Look for large differences between nearby pixels 1D mask: (vary # of 0’s) Thick edges Maximum absolute value at “center” of edge Difference of differences (second derivative - S'') Look for change from growing difference to shrinking difference 1D mask: Value crosses zero at “center” of edge

5Ellen L. Walker Edge Detection (first derivative) Roberts (“home” is upper-left, usually) add the results of both 2x convolutions Sobel (compute “vertical” and “horizontal” separately, take ratio v/h as estimate of tangent of angle of edge, v*v + h*h as estimate of magnitude of edge h v

6Ellen L. Walker Edge Detection (second derivative) Laplacian – symmetric differences of differences connected 3x connected 3x Laplacian of Gaussian (LoG) (eq. 4.23) Smooth first, then take second derivative By properties of convolution, mix into one mask Also called "Mexican Hat filter” Difference of Gaussian (DoG) is often a good substitute (as in SIFT paper)

7Ellen L. Walker Finding the zero-crossing Look directly for 0’s -- not a good idea (why?) Look for values near zero -- still not too great? Look for small regions that contain both positive and negative values - assign one value in the region as zero Zero-crossing images look like “plate of spaghetti”

8Ellen L. Walker Properties of Derivative Masks Sum of coordinates of the mask is 0 Response to uniform region is 0 Different from smoothing masks, with output = input for uniform region Response of first-derivative mask is large absolute value at points of high contrast Positive or negative depending on which side of the edge is dark Response of second-derivative mask is zero-crossing at points of high contrast

9Ellen L. Walker Extending to 2D Each second-level neuron receives inputs from a receptive field Receptive fields are the equivalent of neighborhoods In animal vision, they are generally circular Input weights based on distance of neuron from center Central pixels are positive Border pixels are negative Second-level neuron responds to… Edges passing through the receptive field Edges that "nick" the receptive field Small spots within the receptive field

10Ellen L. Walker Canny Edge Detector Derived from “first principles” Detect all edges and only edges (detection) Put each edge in its proper place (localization) One detection per edge (one response) Mathematical optimization for first two, numerical optimization for all three Assume edges are step edges corrupted by white noise

11Ellen L. Walker Canny Edge Detector (Algorithm) Convolve image with Gaussian of scale  Estimate local edge normal directions for each pixel Find location of edges using one-dimensional Laplacian (a form of non-maximal suppression) Compute edge magnitudes Threshold edges with hysteresis (as contours are followed) (two thresholds - general and “border”) Repeat for multiple scales & find persistent edges

12Ellen L. Walker Scale Features exist at different scales Gaussian smoothing parameter  chooses a scale Edges can be associated with scale(s) where they appear

13Ellen L. Walker Choosing Edge Pixels First (higher threshold) Find strong edge pixels Next (lower threshold) Find (weaker, but not too weak) neighboring edge pixels to follow the contours This ensures connected edges Non-maximal suppression Given directed edges, remove all but the maximum responding pixel in the perpendicular direction to the edge This effectively thins the edges

14Ellen L. Walker Color Edges Detect edges separately in each band (RGB, etc) – combine results for each point Any edge detector can be used Depending on combination method, issues can arise Adding – what if edges cancel? Or’ing – likelihood of thick edges. Work in a higher dimension, e.g. 2x2x3 Estimate local color statistics in each band and make decisions Estimate magnitudes and orientations in each band, then compute weighted average orientation

15Ellen L. Walker Contour Following (General) Assume a list of existing segments, a current segment, and a pixel Examine every pixel If "start", create a new segment with this pixel If "interior", add it to the neighboring segment If "end", add it to the neighboring segment and end that segment If "corner", add to IN segment & end that segment, add pixel to OUT segment (or start one, if needed) If "junction", add to IN segment and end that segment, also add to each OUT segment (creating new ones as necessary)

16Ellen L. Walker Contour Tracking Issues Starting a new segment Adding a pixel to a segment Need current segment # Ending a segment Need current segment # Finding a junction Need "in" segment # and "out" segment #s Finding a corner Need "in" segment # and "out" segment #

17Ellen L. Walker Contour Tracking + Thresholding with Hysteresis Original threshold (high) for selecting initial edge points Second threshold (lower) for extending contours

18Ellen L. Walker Encoding Contours Chain code Each segment is coded by the direction to its successor (N, NE, E, SE, S, SW, W, NW) Not amenable to further processing Arc length parameterization (fig. 4.38) Curve is “unwrapped”; x and y plotted separately

19Ellen L. Walker Matching Curves First normalize: Scale coordinates so total arc length = 1 Translate coordinates so centroid is (0,0) Then match: Similar curves will have similar coordinates, except Phase shift due to rotation Shift in starting point

20Ellen L. Walker Fitting Lines to Contour Given a contour (sequence of edgels) Find a poly-line approximation (sequence of connected line segments) For which all points lie sufficiently close to the contour. Example:

21Ellen L. Walker Curve Approximation Algorithm Begin with a single segment (the endpoints of the curve) Repeatedly subdivide the worst-fitting segment until all segments fit sufficiently well Find the point on the segment furthest from the contour Split the segment, by creating a new point on the contour. Figure 4.43