170 likes | 285 Views
Multimedia Systems & Interfaces. Karrie G. Karahalios Spring 2007. Overview. Filters Edge Detection Non Photo-realistic Rendering. Image Filtering Overview. http://www.courses.fas.harvard.edu/~ext12559/lectures/2005-11-29-Filtering.pdf by Chris Wren. Spatial domain
E N D
Multimedia Systems &Interfaces Karrie G. KarahaliosSpring 2007
Overview • Filters • Edge Detection • Non Photo-realistic Rendering
Image Filtering Overview http://www.courses.fas.harvard.edu/~ext12559/lectures/2005-11-29-Filtering.pdfby Chris Wren
Spatial domain refers to planar region of intensity values Frequency domain think of each color plane as a sinusoidal function of changing intensity values apply DFT to subsets of pixels for compression Spatial and Frequency Domains
Convolution Filters • Filter an image by replacing each pixel in the source with a weighted sum of its neighbors • Define the filter using a convolution mask, also referred to as a kernel • non-zero values in small neighborhood, typically centered around a central pixel • generally have odd number of rows/columns
20 12 14 23 45 15 19 33 55 34 81 22 8 64 49 95 Mean Filter Subset of image Convolution filter
Mean Filter 20 12 14 23 45 15 19 33 55 34 81 22 8 64 49 95 Subset of image Convolution filter
Common 3x3 Filters • Low/High pass filter • Blur operator • H/V Edge detector
Edge Detection • Identify areas of strong intensity contrast • filter unecessary data; preserve important properties • Fundamental technique • object recognition, orientation • image segmentation • e.g., use gestures as input • identify shapes, match to templates, invoke commands
Identify high slope in first derivative Pixel is on an edge if value of the gradient exceeds a threshold Characteristics of Edges http://www.pages.drexel.edu/~weg22/edge.html
Basic Method • Step 1: filter noise using mean filter • Step 2: compute spatial gradient • Step 3: mark points > threshold as edges
Compute partials Compute gradient Compute length Divide by length Compute Spatial Gradient
Compute Partials P3 – P1 + 2*P6 – 2*P4+ P9 – P7 P7 – P1 + 2*P8 – 2*P2+ P9 – P3
Given gradient at each pixel and threshold mark pixels where gradient > threshold as edges Canny algorithm extends basic method Mark Edge Points http://www.cee.hw.ac.uk/hipr/html/sobel.html
Compute direction of maximum change Compute Edge Direction
For each pixel If G(x,y) < either neighbor along Normal direction, then set G(x,y) = 0 Suppress local change when larger change nearby helps reduce false positives Apply Non-Max Suppression
Hysteresis • Oscillation of gradient at threshold • Use two thresholds • T1 and T2 with T2 > T1 • Mark pixel as edge pixel if G(x,y) > T2 • keep pixels along normal direction withG(x,y) > T1