1 Image Filtering Readings: Ch 5: 5.4, 5.5, 5.6,5.7.3, 5.8 (This lecture does not follow the book.) Images by Pawan SinhaPawan Sinha formal terminology.

Slides:



Advertisements
Similar presentations
Linear Filtering – Part I Selim Aksoy Department of Computer Engineering Bilkent University
Advertisements

Lecture 2: Convolution and edge detection CS4670: Computer Vision Noah Snavely From Sandlot ScienceSandlot Science.
Spatial Filtering (Chapter 3)
Topic 6 - Image Filtering - I DIGITAL IMAGE PROCESSING Course 3624 Department of Physics and Astronomy Professor Bob Warwick.
Sliding Window Filters and Edge Detection Longin Jan Latecki Computer Graphics and Image Processing CIS 601 – Fall 2004.
CS 4487/9587 Algorithms for Image Analysis
Lecture 4 Linear Filters and Convolution
1 Image filtering Hybrid Images, Oliva et al.,
Lecture 1: Images and image filtering
1 Linear image transforms Let’s start with a 1-D image (a “signal”): A very general and useful class of transforms are the linear transforms of f, defined.
CS443: Digital Imaging and Multimedia Filters Spring 2008 Ahmed Elgammal Dept. of Computer Science Rutgers University Spring 2008 Ahmed Elgammal Dept.
1 Image filtering Images by Pawan SinhaPawan Sinha.
1 Image filtering
Lecture 2: Image filtering
1 Images and Transformations Images by Pawan SinhaPawan Sinha.
Linear filtering.
1 Image filtering Hybrid Images, Oliva et al.,
1 Image Filtering Slides by Steve Seitz. 2 Salvador Dali, “Gala Contemplating the Mediterranean Sea, which at 30 meters becomes the portrait of Abraham.
Image Filtering. Problem! Noise is a problem, even in images! Gaussian NoiseSalt and Pepper Noise.
Most slides from Steve Seitz
CS 376b Introduction to Computer Vision 02 / 26 / 2008 Instructor: Michael Eckmann.
HCI/ComS 575X: Computational Perception Instructor: Alexander Stoytchev
University of Texas at Austin CS384G - Computer Graphics Fall 2010 Don Fussell Image processing.
Linear Filtering – Part I Selim Aksoy Department of Computer Engineering Bilkent University
Lecture 03 Area Based Image Processing Lecture 03 Area Based Image Processing Mata kuliah: T Computer Vision Tahun: 2010.
CS 556 – Computer Vision Image Basics & Review. What is an Image? Image: a representation, resemblance, or likeness An image is a signal: a function carrying.
Linear filtering. Motivation: Noise reduction Given a camera and a still scene, how can you reduce noise? Take lots of images and average them! What’s.
Machine Vision ENT 273 Image Filters Hema C.R. Lecture 5.
CSE 473/573 Computer Vision and Image Processing (CVIP) Ifeoma Nwogu Lecture 7 – Linear Filters 1.
Digital Image Processing Lecture 16: Segmentation: Detection of Discontinuities Prof. Charlene Tsai.
Visual Computing Computer Vision 2 INFO410 & INFO350 S2 2015
CS 691B Computational Photography
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.
Lecture 3: Filtering and Edge detection
Machine Vision Edge Detection Techniques ENT 273 Lecture 6 Hema C.R.
Linear filtering. Motivation: Image denoising How can we reduce noise in a photograph?
CSE 185 Introduction to Computer Vision Image Filtering: Spatial Domain.
Sliding Window Filters Longin Jan Latecki October 9, 2002.
Lecture 1: Images and image filtering CS4670/5670: Intro to Computer Vision Noah Snavely Hybrid Images, Oliva et al.,
Spatial Filtering (Chapter 3) CS474/674 - Prof. Bebis.
HCI/ComS 575X: Computational Perception Instructor: Alexander Stoytchev
Correlation and Convolution They replace the value of an image pixel with a combination of its neighbors Basic operations in images Shift Invariant Linear.
ECE 692 – Advanced Topics in Computer Vision
Filtering – Part I Gokberk Cinbis Department of Computer Engineering
Digital Image Processing
IMAGE PROCESSING AKSHAY P S3 EC ROLL NO. 9.
Image filtering Hybrid Images, Oliva et al.,
Recap from Wednesday Spectra and Color Light capture in cameras and humans.
Introduction Computer vision is the analysis of digital images
Filters (Smoothing, Edge Detection)
Image filtering Images by Pawan Sinha.
HCI / CprE / ComS 575: Computational Perception
a kind of filtering that leads to useful features
Image filtering Images by Pawan Sinha.
a kind of filtering that leads to useful features
Image Processing Today’s readings For Monday
Image filtering Images by Pawan Sinha.
Linear filtering.
Digital Image Processing Week IV
Most slides from Steve Seitz
Image filtering Images by Pawan Sinha.
Image filtering
Image filtering
Department of Computer Engineering
Introduction Computer vision is the analysis of digital images
Image Filtering Readings: Ch 5: 5. 4, 5. 5, 5. 6, , 5
Most slides from Steve Seitz
Image Filtering with GLSL
Lecture 7 Spatial filtering.
Presentation transcript:

1 Image Filtering Readings: Ch 5: 5.4, 5.5, 5.6,5.7.3, 5.8 (This lecture does not follow the book.) Images by Pawan SinhaPawan Sinha formal terminology filtering with masks mean filter Gaussian filter general cross-correlation convolution median filter

2 What is an image? We can think of an image as a function, f, from R 2 to R:  f( x, y ) gives the intensity at position ( x, y ).  It is a continuous function, usually over a rectangle. A color image is just three functions pasted together. We can write this as a “vector-valued” function: Courtesy of NASA

3 Images as functions These are 4 different ways that people use to show gray tones, just for illustration. The 3D shows the “height” of each pixel.

4 Digital images In computer vision we usually operate on digital (discrete) images:  Sample the continuous 2D space on a regular grid.  Quantize each sample by rounding to nearest integer. The image can now be represented as a matrix of integer values.

5 Filtering Operations Use Masks Masks operate on a neighborhood of pixels. A mask of coefficients is centered on a pixel. The mask coefficients are multiplied by the pixel values in its neighborhood and the products are summed. The result goes into the corresponding pixel position in the output image /9 1/9 1/9 ** ** ** ** ** ** 39 ** ** ** ** ** ** ** ** Input Image 3x3 Mask Output Image

6 Application: Noise Filtering Image processing is useful for noise reduction... Common types of noise:  Salt and pepper noise: contains random occurrences of black and white pixels  Impulse noise: contains random occurrences of white pixels  Gaussian noise: variations in intensity drawn from a Gaussian normal distribution

7 Practical noise reduction How can we “smooth” away noise in a single image?

8 Mean filtering

9 Mean filtering Sum the values in a 3x3 nbd. Divide by 9. Replace center. Input Image Output Image

10 Effect of mean filters

11 Generalization: Cross-Correlation Filtering Let’s write this down as an equation. Assume the averaging window is (2k+1)x(2k+1): We can generalize this idea by allowing different weights for different neighboring pixels: This is called a cross-correlation operation and written: H is called the “filter,” “kernel,” or “mask.”

12 Mean Kernel What’s the kernel for a 3x3 mean filter? In other words, what do you multiply each pixel by when you find the mean?

13 Mean Kernel What’s the kernel for a 3x3 mean filter? In other words, what do you multiply each pixel by when you find the mean? mean filter 1/9

14 Gaussian Filtering A Gaussian kernel gives less weight to pixels further from the center of the window This kernel is an approximation of a Gaussian function:

15 Mean vs. Gaussian filtering

16 Convolution A convolution operation is a cross-correlation where the filter is flipped both horizontally and vertically before being applied to the image: It is written: Suppose H is a Gaussian or mean kernel. How does convolution differ from cross-correlation? In computer vision, we tend to use symmetric kernels most of the time, and we tend to call them convolution kernels. In EE, convolution is useful for solving linear systems problems.

17 Convolution vs. Correlation When do they differ? 1D Example from Signal Processing Correlation Mask: w = Signal: Zero padding Apply mask to first position Produces a 0 for first out Apply mask to 4 th position Produces a 0 Final result: Remove padding: Convolution Mask: w' = Signal: Zero padding Apply mask to first position Produces a 0 for first out Apply mask to 4 th position Produces a 1 Final results: Remove padding:

18 Convolution Examples

19 Convolution Examples

20 Convolution Examples

21 Convolution Examples

22 Median filters A Median Filter operates over a window by selecting the median intensity in the window. What advantage does a median filter have over a mean filter? Is a median filter a kind of convolution? No, it’s called a nonlinear filter

23 Comparison: salt and pepper noise

24 Comparison: Gaussian noise

25 More Comparisons: Mean vs. Median using Matlab

26 Edge Detection Basic idea: look for a neighborhood with strong signs of change Problems: neighborhood size how to detect change

27 Differential Operators Differential operators attempt to approximate the gradient at a pixel via masks threshold the gradient to select the edge pixels What’s a gradient? Def: the gradient of a scalar function f(x 1, x 2,... x n ) is denoted by  f (del f) and is defined by:  f = (  f/  x 1,  f/  x 2,...  f/  x n ) What’s a derivative?

28 Example: Sobel Operator S x = S y = On a pixel of the image I let g x be the response to mask S x let g y be the response to mask S y g = (g x 2 + g y 2 ) 1/2 is the gradient magnitude.  = atan2(g y,g x ) is the gradient direction. Then the gradient is   I = [g x gy] T 28

29 Sobel Operator on Blocks Image original image gradient thresholded magnitude gradient magnitude

30 Some Well-Known Masks for Computing Gradients Sobel: Prewitt: Roberts SxSy