Lecture 4-1CS251: Intro to AI/Lisp II Where did that edge go? April 29th, 1999
Lecture 4-1CS251: Intro to AI/Lisp II What’s the plan? Build on a set of primitives –Edges –Lines –Segments –Regions –Depth –Objects Construct a representation of a 3D scene
Lecture 4-1CS251: Intro to AI/Lisp II
Lecture 4-1CS251: Intro to AI/Lisp II Threshold
Lecture 4-1CS251: Intro to AI/Lisp II
Lecture 4-1CS251: Intro to AI/Lisp II Another Edge Finder
Lecture 4-1CS251: Intro to AI/Lisp II Wagon Wheel (From UBC)
Lecture 4-1CS251: Intro to AI/Lisp II
Lecture 4-1CS251: Intro to AI/Lisp II Histogram
Lecture 4-1CS251: Intro to AI/Lisp II Edge Detection What’s an edge? Many kinds of edges Smoothing to aid edge detection
Lecture 4-1CS251: Intro to AI/Lisp II Where do edges come from? Shadows Changes in reflectance Surface discontinuities
Lecture 4-1CS251: Intro to AI/Lisp II Naïve Edge Detection Look at d/dI(Image) Robustness to noise
Lecture 4-1CS251: Intro to AI/Lisp II Point of View Signal domain –Edge is large local variation in a direction perpendicular –Computing a derivative changes the problem to looking for local extrema
Lecture 4-1CS251: Intro to AI/Lisp II The Frequency World Functions can be written as combinations of sines and cosines Move from signal domain to frequency domain with Fourier transform Derivative is a high-frequency booster
Lecture 4-1CS251: Intro to AI/Lisp II Edge Detection Schematic Edge enhancement Edge thresholding f(x, y) f c (x, y) g(x, y)
Lecture 4-1CS251: Intro to AI/Lisp II Fourier Series Write functions as a combination of sin & cos What’s important are the coefficients of the series
Lecture 4-1CS251: Intro to AI/Lisp II Approximation in Action From CSC MathematicalCSC Mathematical
Lecture 4-1CS251: Intro to AI/Lisp II Fourier Transforms Check out this tutorial on the Web: Fourier tutorial
Lecture 4-1CS251: Intro to AI/Lisp II Computers are Discrete Creatures Discrete version FFT
Lecture 4-1CS251: Intro to AI/Lisp II Why bother? Split into signal (time) and frequency domains –Operations performed in one domain have corresponding operations in the other –Convolution operation in time is multiplication in the frequency domain:
Lecture 4-1CS251: Intro to AI/Lisp II Back to Discrete Edges Use discrete approximations
Lecture 4-1CS251: Intro to AI/Lisp II An Image is a Function Treat intensity as function in R 3: z = f(x, y) Create a 3-D vector Projection onto (x, y) plane carries same information and points in direction of maximum intensity change
Lecture 4-1CS251: Intro to AI/Lisp II Convolution Cool example of convolution Use convolutions to calculate finite differences