
Understanding Edge Detection Techniques in Computational Vision
Discover the concepts of edge detection in computational vision through convolution, Gaussian functions, and difference of Gaussians. Learn how to detect edges with discrete samples and apply various operators for smoothing and differentiation processes.
Download Presentation

Please find below an Image/Link to download the presentation.
The content on the website is provided AS IS for your information and personal use only. It may not be sold, licensed, or shared on other websites without obtaining consent from the author. Download presentation by click this link. If you encounter any issues during the download, it is possible that the publisher has removed the file from their server.
E N D
Presentation Transcript
Computational Vision CSCI 363, Spring 2023 Lecture 5 Edge Detection Striate Cortex I 1
Convolution To smooth a function, we replace the value at each x position with the averaged values around that position. This process is called convolution. Smoothing works best if the average is weighted: nearby neighbors count more, distant neighbors count less. A Gaussian function works well for this weighting. Convolution of I with G is written: G(x) * I(x) 2 For continuous functions:
The Derivative of a Convolution Instead of taking the derivative of a convolution of the image and the Gaussian, we can convolve image with the derivative of the Gaussian Gaussian and its derivatives 3
A 2D Gaussian For a 2D image, I(x, y), we convolve with a 2D Gaussian: To differentiate, we use the Laplacian operator: looks like a center surround receptive field. can be approximated by G( 1, x, y) - G( 2, x, y) (A "Difference of Gaussians" or DOG) 4
Difference of Gaussians Note: A single retinal ganglion cell cannot distinguish between a zero crossing and uniform intensity. To find edges, one must evaluate the difference in responses of neighboring cells. 5
Detecting Edges with Discrete Samples Normally, images will be a group of discrete values: 14 7 2 5 9 27 6 5 18 15 9 2 7 25 1D Image 2D Image We use an approximation of convolution to perform the smoothing and differentiation. 6
Smoothing a 1D array Image: 1 3 6 4 5 2 3 6 6 3 1 1 Operator: 1 3 5 3 1 Position 1: 1x1 + 3x3 + 6x5 + 4x3 + 5x1 = 57 Image: 1 3 6 4 5 2 3 6 6 3 1 1 Operator: 1 3 5 3 1 Position 2: 3x1 + 6x3 + 4x5 + 5x3 + 2x1 = 58 Position: 1 2 3 4 5 6 7 8 Value: 57 58 52 44 50 62 81 43 7
Other Operators Averaging: 1/5 1/5 1/5 1/5 1/5 Differentiation: 1 -1 Second Derivative: 1 -2 1 2D Convolution: 0 0 0 0 0 2 3 2 0 1 2 1 0 0 0 0 1 1 1 1 0 0 0 0 0 2 5 5 0 3 8 8 0 1 3 3 = * 8
From Retina to V1 Hubel and Wiesel identified 3 types of cells in V1: 1. Simple Cells 2. Complex Cells 3. End-stopped Cells 9
Simple Cells Simple cells have discrete regions that have on or off responses to a bar or an edge. 10
Simple Cell Responses Simple cells are selective for orientation and position. 11
A possible circuit for simple cells Hubel and Wiesel suggested this circuit to construct a simple cell from a group of LGN cells. 13
Complex Cells Complex cell responses are not divided into discrete on and off regions. Complex cells are orientation selective. Many complex cells respond best to moving stimuli. Some complex cells are direction selective. 14
Complex Cell Circuit Hubel and Wiesel proposed this circuit to construct a complex cell from simple cells. 15
End-stopped Cells Complex cells show increased response with the length of a line up to some maximum length. The response then levels off. End-stopped cells show inhibition when a line stimulus is too long. 16
Direction Selectivity Direction selective cells respond to motion in one direction, but not to motion in the opposite direction. The color of the bar (dark or light) does not matter for the direction selectivity. 17
Direction selective circuit Barlow and Levick proposed this circuit for direction selectivity. Neurons are connected by delayed inhibition along the null (non- responding) direction of motion. 18