Solution: filter the image, then subsample F 1 F 2. subsample blur subsample. blur

Similar documents
Edge and Texture. CS 554 Computer Vision Pinar Duygulu Bilkent University

CS5670: Computer Vision

Edge Detection CSC 767

Edge detection. Goal: Identify sudden. an image. Ideal: artist s line drawing. object-level knowledge)

Review of Filtering. Filtering in frequency domain

Edge Detection. Computer Vision Shiv Ram Dubey, IIIT Sri City

DIGITAL IMAGE PROCESSING

Edges and Binary Images

Edge detection. Winter in Kraków photographed by Marcin Ryczek

Edge Detection. CSE 576 Ali Farhadi. Many slides from Steve Seitz and Larry Zitnick

Edge detection. Winter in Kraków photographed by Marcin Ryczek

CS4670: Computer Vision Noah Snavely

Edge Detection. CSC320: Introduction to Visual Computing Michael Guerzhoy. René Magritte, Decalcomania. Many slides from Derek Hoiem, Robert Collins

What is an edge? Paint. Depth discontinuity. Material change. Texture boundary

Edge and corner detection

Boundaries and Sketches

Prof. Feng Liu. Winter /15/2019

CS 2770: Computer Vision. Edges and Segments. Prof. Adriana Kovashka University of Pittsburgh February 21, 2017

Does everyone have an override code?

Image Analysis. Edge Detection

Lecture 7: Most Common Edge Detectors

CS 4495 Computer Vision. Linear Filtering 2: Templates, Edges. Aaron Bobick. School of Interactive Computing. Templates/Edges

Low-level Vision Processing Algorithms Speaker: Ito, Dang Supporter: Ishii, Toyama and Y. Murakami

Edge Detection. Today s reading. Cipolla & Gee on edge detection (available online) From Sandlot Science

Image Analysis. Edge Detection

Edge Detection. Announcements. Edge detection. Origin of Edges. Mailing list: you should have received messages

Image gradients and edges April 11 th, 2017

Image gradients and edges April 10 th, 2018

Filtering Applications & Edge Detection. GV12/3072 Image Processing.

Lecture 6: Edge Detection

Straight Lines and Hough

Image gradients and edges

Image gradients and edges

Edge Detection. EE/CSE 576 Linda Shapiro

Edge Detection (with a sidelight introduction to linear, associative operators). Images

Digital Image Processing COSC 6380/4393

2%34 #5 +,,% ! # %& ()% #% +,,%. & /%0%)( 1 ! # %& % %()# +(& ,.+/ +&0%//#/ &

Filtering in frequency domain

CS334: Digital Imaging and Multimedia Edges and Contours. Ahmed Elgammal Dept. of Computer Science Rutgers University

Local Image preprocessing (cont d)

CS534: Introduction to Computer Vision Edges and Contours. Ahmed Elgammal Dept. of Computer Science Rutgers University

Other Linear Filters CS 211A

[ ] Review. Edges and Binary Images. Edge detection. Derivative of Gaussian filter. Image gradient. Tuesday, Sept 16

ME/CS 132: Introduction to Vision-based Robot Navigation! Low-level Image Processing" Larry Matthies"

Edge Detection. CS664 Computer Vision. 3. Edges. Several Causes of Edges. Detecting Edges. Finite Differences. The Gradient

convolution shift invariant linear system Fourier Transform Aliasing and sampling scale representation edge detection corner detection

Digital Image Processing. Image Enhancement - Filtering

Edge detection. Convert a 2D image into a set of curves. Extracts salient features of the scene More compact than pixels

Multimedia Computing: Algorithms, Systems, and Applications: Edge Detection

Computer Vision I. Announcement. Corners. Edges. Numerical Derivatives f(x) Edge and Corner Detection. CSE252A Lecture 11

Edge Detection. CMPUT 206: Introduction to Digital Image Processing. Nilanjan Ray. Source:

Image Processing

Edges and Binary Image Analysis. Thurs Jan 26 Kristen Grauman UT Austin. Today. Edge detection and matching

Lecture 4: Finding lines: from detection to model fitting

Computer Vision I. Announcements. Fourier Tansform. Efficient Implementation. Edge and Corner Detection. CSE252A Lecture 13.

Edges and Binary Image Analysis April 12 th, 2018

Previously. Edge detection. Today. Thresholding. Gradients -> edges 2/1/2011. Edges and Binary Image Analysis

Filters (cont.) CS 554 Computer Vision Pinar Duygulu Bilkent University

Segmentation and Grouping

Filters and Pyramids. CSC320: Introduction to Visual Computing Michael Guerzhoy. Many slides from Steve Marschner, Alexei Efros

Biometrics Technology: Image Processing & Pattern Recognition (by Dr. Dickson Tong)

CAP 5415 Computer Vision Fall 2012

Concepts in. Edge Detection

Comparison between Various Edge Detection Methods on Satellite Image

Edge and local feature detection - 2. Importance of edge detection in computer vision

Why is computer vision difficult?

Templates, Image Pyramids, and Filter Banks

CPSC 425: Computer Vision

Edge detection. Gradient-based edge operators

Outline 7/2/201011/6/

Filtering Images. Contents

Effects Of Shadow On Canny Edge Detection through a camera

SIFT: SCALE INVARIANT FEATURE TRANSFORM SURF: SPEEDED UP ROBUST FEATURES BASHAR ALSADIK EOS DEPT. TOPMAP M13 3D GEOINFORMATION FROM IMAGES 2014

Announcements. Edge Detection. An Isotropic Gaussian. Filters are templates. Assignment 2 on tracking due this Friday Midterm: Tuesday, May 3.

Edge Detection Lecture 03 Computer Vision

Computer Vision. Recap: Smoothing with a Gaussian. Recap: Effect of σ on derivatives. Computer Science Tripos Part II. Dr Christopher Town

CPSC 425: Computer Vision

Image Segmentation and Registration

SURVEY ON IMAGE PROCESSING IN THE FIELD OF DE-NOISING TECHNIQUES AND EDGE DETECTION TECHNIQUES ON RADIOGRAPHIC IMAGES

CS 534: Computer Vision Segmentation and Perceptual Grouping

Ulrik Söderström 16 Feb Image Processing. Segmentation

Topic 4 Image Segmentation

Lecture 4: Image Processing

Feature Detectors - Canny Edge Detector

Digital Image Processing (CS/ECE 545) Lecture 5: Edge Detection (Part 2) & Corner Detection

Advanced Video Content Analysis and Video Compression (5LSH0), Module 4

Neighborhood operations

Recap from Monday. Visualizing Networks Caffe overview Slides are now online

Adaptative Elimination of False Edges for First Order Detectors

The SIFT (Scale Invariant Feature

Image Processing. Traitement d images. Yuliya Tarabalka Tel.

What Are Edges? Lecture 5: Gradients and Edge Detection. Boundaries of objects. Boundaries of Lighting. Types of Edges (1D Profiles)

Edge detection. Stefano Ferrari. Università degli Studi di Milano Elaborazione delle immagini (Image processing I)

Local invariant features

Image processing. Reading. What is an image? Brian Curless CSE 457 Spring 2017

Biomedical Image Analysis. Point, Edge and Line Detection

Image features. Image Features

Texture Representation + Image Pyramids

CS 558: Computer Vision 3 rd Set of Notes

PERFORMANCE ANALYSIS OF CANNY AND OTHER COMMONLY USED EDGE DETECTORS Sandeep Dhawan Director of Technology, OTTE, NEW YORK

Transcription:

Pyramids

Gaussian pre-filtering Solution: filter the image, then subsample blur F 0 subsample blur subsample * F 0 H F 1 F 1 * H F 2

{ Gaussian pyramid blur F 0 subsample blur subsample * F 0 H F 1 F 1 * H F 2

Gaussian pyramids [Burt and Adelson, 1983] In computer graphics, a mip map [Williams, 1983] Gaussian Pyramids have all sorts of applications in computer vision Source: S. Seitz

Gaussian pyramids - Searching over scales

Gaussian pyramids - Searching over scales

The Gaussian Pyramid Low resolution G 4 = ( G 3 * gaussian) 2 G3 = ( G2 * gaussian blur ) 2 blur G 2 = ( G 1 * gaussian) 2 blur G 1 = ( G0 * gaussian) 2 G 0 = Image blur High resolution

Gaussian pyramid and stack Source: Forsyth

Memory Usage What is the size of the pyramid? 9

Laplacian pyramid - - = = Reduce - = - =

Laplacian pyramid L 4 = G 4 = L 3 = G 3 - expand(g 4 ) = L 2 = G 2 - expand(g 3 ) = L 1 = G 1 - expand(g 2 ) = L 0 = G 0 - expand(g 1 ) =

Reconstructing the image from a Laplacian pyramid + + = = + = + =

Laplacian pyramid Source: Forsyth

Edge detection

Why edges? Resilience to lighting and color useful for recognition, matching patches across images

Why edges? Humans are sensitive to edges Convert a 2D image into a set of curves Extracts salient features of the scene, more compact

Why edges? Cue to shape and geometry useful for recognition, understanding 3D structure Credit: Attneave Credit: Jitendra Malik

Why edges? Grouping pixels into objects ( perceptual organization )

This lecture Edge detection in general Edge detection for grouping

Edges Edges are curves in the image, across which the brightness changes a lot Corners/Junctions

Aside

Closeup of edges Source: D. Hoiem

Closeup of edges Source: D. Hoiem

Closeup of edges Source: D. Hoiem

Closeup of edges Source: D. Hoiem

Characterizing edges An edge is a place of rapid change in the image intensity function image intensity function (along horizontal scanline) first derivative Source: L. Lazebnik edges correspond to extrema of derivative

Intensity profile Source: D. Hoiem

Derivatives and convolution Differentiation is linear @(af(x)+bg(x)) @x = a @f(x) @x + b@g(x) @x Differentiation is shift-invariant Derivative of shifted signal is shifted derivative Hence, differentiation can be represented as convolution!

Image derivatives How can we differentiate a digital image F[x,y]? Option 1: reconstruct a continuous image, f, then compute the derivative Option 2: take discrete derivative (finite difference) How would you implement this as a linear filter? : 1-1 : -1 1 Source: S. Seitz

Image gradient The gradient of an image: The gradient points in the direction of most rapid increase in intensity The edge strength is given by the gradient magnitude: The gradient direction is given by: how does this relate to the direction of the edge? Source: Steve Seitz

Image gradient Source: L. Lazebnik

With a little Gaussian noise Gradient Source: D. Hoiem

Effects of noise Noisy input image Where is the edge? Source: S. Seitz

Effects of noise Noise is high frequency Differentiation accentuates noise d sin!x dx =! cos!x

Solution: smooth first f h f * h To find edges, look for peaks in Source: S. Seitz

Associative property of convolution Differentiation is a convolution Convolution is associative: This saves us one operation: f Source: S. Seitz

2D edge detection filters Gaussian derivative of Gaussian (x)

Derivative of Gaussian filter x-direction y-direction

Two Dimensional Gaussian

Oriented Gaussian First and Second Derivatives

Grouping

What is grouping?

Why grouping? Pixels property of sensor, not world Reasoning at object level (might) make things easy: objects at consistent depth objects can be recognized objects move as one "I stand at the window and see a house, trees, sky. Theoretically I might say there were 327 brightnesses and nuances of colour. Do I have "327"? No. I have sky, house, and trees." Max Wertheimer

Regions Boundaries

Is grouping well-defined? A Depends on purpose Object parts Background segmentation B C

Is grouping well-defined? A Perceptual organization forms a tree: A Image BG L-bird R-bird B B C grass bush far beak body beak body C eye head eye head D. Martin, C. Fowlkes, D. Tal, J. Malik. "A Database of Human Segmented Natural Images and its Application to Evaluating Segmentation Algorithms and Measuring Ecological Statistics", ICCV, 2001

How do we group things? Gestalt principles Principle of proximity https://courses.lumenlearning.com/wsu-sandbox/chapter/gestalt-principles-of-perception/

How do we group things? Gestalt principles Principle of similarity https://courses.lumenlearning.com/wsu-sandbox/chapter/gestalt-principles-of-perception/

How do we group things? Gestalt principles Principle of continuity and closure https://courses.lumenlearning.com/wsu-sandbox/chapter/gestalt-principles-of-perception/

How do we group things? Gestalt principles Principle of common fate

Gestalt principles in the context of images Principle of proximity: nearby pixels are part of the same object Principle of similarity: similar pixels are part of the same object Look for differences in color, intensity, or texture across the boundary Principle of closure and continuity: contours are likely to continue High-level knowledge?

Regions Boundaries

Designing a good boundary detector Differences in color, intensity, or texture across the boundary Continuity and closure High-level knowledge

Criteria for a good boundary detector Criteria for a good boundary detector: Good detection: Fire only on real edges, not anywhere else Good localization the edges detected must be as close as possible to the true edges the detector must return one point only for each true edge point Source: L. Fei-Fei

Canny edge detector The classic edge detector Baseline for all later work on grouping Theoretical model: step-edges corrupted by additive Gaussian noise J. Canny, A Computational Approach To Edge Detection, IEEE Trans. Pattern Analysis and Machine Intelligence, 8:679-714, 1986. 22,000 citations! Source: L. Fei-Fei

Example original image

Compute Gradients (DoG) X-Derivative of Gaussian Y-Derivative of Gaussian

Gradient magnitude and orientation Orientation is undefined at pixels with 0 gradient Magnitude Orientation theta = numpy.arctan2(gy, gx)

Non-maximum suppression for each orientation At q, we have a maximum if the value is larger than those at both p and at r. Interpolate to get these values. Source: D. Forsyth

Before Non-max Suppression

After Non-max Suppression

Hysteresis thresholding Threshold at low/high levels to get weak/strong edge pixels Do connected components, starting from strong edge pixels

Final Canny Edges

Canny edge detector 1. Filter image with x, y derivatives of Gaussian 2. Find magnitude and orientation of gradient 3. Non-maximum suppression: Thin multi-pixel wide ridges down to single pixel width 4. Thresholding and linking (hysteresis): Define two thresholds: low and high Use the high threshold to start edge curves and the low threshold to continue them Source: D. Lowe, L. Fei-Fei

Does Canny always work?

The challenges of edge detection Texture Low-contrast boundaries