HCI / CprE / ComS 575: Computational Perception

Slides:



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

Spatial Filtering (Chapter 3)
Chapter 3 Image Enhancement in the Spatial Domain.
CS 4487/9587 Algorithms for Image Analysis
E.G.M. PetrakisFiltering1 Linear Systems Many image processing (filtering) operations are modeled as a linear system Linear System δ(x,y) h(x,y)
Digital Image Processing In The Name Of God Digital Image Processing Lecture3: Image enhancement M. Ghelich Oghli By: M. Ghelich Oghli
Lecture 4 Linear Filters and Convolution
Image Filtering CS485/685 Computer Vision Prof. George Bebis.
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.
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.
CS 376b Introduction to Computer Vision 02 / 25 / 2008 Instructor: Michael Eckmann.
1 Image filtering Images by Pawan SinhaPawan Sinha.
1 Images and Transformations Images by Pawan SinhaPawan Sinha.
Linear filtering.
1 Image filtering Hybrid Images, Oliva et al.,
September 25, 2014Computer Vision Lecture 6: Spatial Filtering 1 Computing Object Orientation We compute the orientation of an object as the orientation.
Most slides from Steve Seitz
Computer Vision Spring ,-685 Instructor: S. Narasimhan Wean Hall 5409 T-R 10:30am – 11:50am.
CS 376b Introduction to Computer Vision 02 / 26 / 2008 Instructor: Michael Eckmann.
Machine Vision ENT 273 Image Filters Hema C.R. Lecture 5.
HCI/ComS 575X: Computational Perception Instructor: Alexander Stoytchev
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
HCI / CprE / ComS 575: Computational Perception Instructor: Alexander Stoytchev
Lecture 03 Area Based Image Processing Lecture 03 Area Based Image Processing Mata kuliah: T Computer Vision Tahun: 2010.
Digital Image Processing Lecture 10: Image Restoration March 28, 2005 Prof. Charlene Tsai.
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.
Digital Image Processing Lecture 10: Image Restoration
Course 2 Image Filtering. Image filtering is often required prior any other vision processes to remove image noise, overcome image corruption and change.
Intelligent Vision Systems ENT 496 Image Filtering and Enhancement Hema C.R. Lecture 4.
September 19, 2013Computer Vision Lecture 6: Image Filtering 1 Image Filtering Many basic image processing techniques are based on convolution. In a convolution,
Linear filtering. Motivation: Image denoising How can we reduce noise in a photograph?
Instructor: Mircea Nicolescu Lecture 5 CS 485 / 685 Computer Vision.
Spatial Filtering (Chapter 3) CS474/674 - Prof. Bebis.
Image Enhancement in the Spatial Domain.
HCI/ComS 575X: Computational Perception Instructor: Alexander Stoytchev
Miguel Tavares Coimbra
Digital Image Processing Lecture 10: Image Restoration
Linear Filters T-11 Computer Vision University of Houston
HCI / CprE / ComS 575: Computational Perception
Filtering – Part I Gokberk Cinbis Department of Computer Engineering
Image Enhancement.
- photometric aspects of image formation gray level images
Image filtering Hybrid Images, Oliva et al.,
Review: Linear Systems
Image filtering Images by Pawan Sinha.
Sampling and Reconstruction
HCI/ComS 575X: Computational Perception
Image filtering Images by Pawan Sinha.
Histogram Probability distribution of the different grays in an image.
Image Processing Today’s readings For Monday
HCI/ComS 575X: Computational Perception
Image filtering Images by Pawan Sinha.
HCI/ComS 575X: Computational Perception
Digital Image Processing Week IV
Most slides from Steve Seitz
Image filtering Images by Pawan Sinha.
Image filtering
Image filtering
Magnetic Resonance Imaging
Department of Computer Engineering
Intensity Transformation
Image Filtering Readings: Ch 5: 5. 4, 5. 5, 5. 6, , 5
Most slides from Steve Seitz
Lecture 7 Spatial filtering.
Image Enhancement in the Spatial Domain
HCI/ComS 575X: Computational Perception
Presentation transcript:

HCI / CprE / ComS 575: Computational Perception Instructor: Alexander Stoytchev http://www.ece.iastate.edu/~alexs

Image Filtering HCI/CprE/ComS 575: Computational Perception Iowa State University, Ames, IA Copyright © Alexander Stoytchev

Reading Today’s Lecture Jain, Kasturi, and Schunck (1995). Machine Vision, ``Chapter 4: Image Filtering,'' McGraw-Hill, pp. 112-139.

Readings for next time

F. Bobick and J.W. Davis ``An appearance-based representation of action''. In Proceedings of IEEE International Conference on Pattern Recognition 1996, August 1996, pp. 307-312.

Davis, J. and A. Bobick ``The Representation and Recognition of Action Using Temporal Templates'', In Proceedings of IEEE Conference on Computer Vision and Pattern Recognition, June 1997, pp. 928-934.

“Skin-color modeling and adaptation” Yang, Lu, and Waibel CMU-CS-97-146, May 1997 (Available on the Class Web page) [Readings Section]

Administrative Stuff

Some Questions from Last Lecture [Haralick and Shapiro (1993). “Computer and Robot Vision,” Ch. 5 ]

What would be the result?

Which one is correct?

Let’s verify this using matlab

Histogram Modification Scaling Equalization Normalization

Histogram Scaling [Jain, Kasturi, and Schunck (1995). Machine Vision, Ch. 4]

Histogram Scaling (Contrast Stretching) [Jain, Kasturi, and Schunck (1995). Machine Vision, Ch. 4]

Histogram Equalization [Jain, Kasturi, and Schunck (1995). Machine Vision, Ch. 4]

Histogram Equalization [http://www.profc.udec.cl/~gabriel/tutoriales/rsnote/cp10/cp10-3.htm]

Histogram Equalization [http://www.profc.udec.cl/~gabriel/tutoriales/rsnote/cp10/cp10-3.htm]

Histogram Equalization The number of pixels At level zi in the old histogram The number of pixels At level z1 in the new histogram [Jain, Kasturi, and Schunck (1995). Machine Vision, Ch. 4]

Histogram Equalization [Jain, Kasturi, and Schunck (1995). Machine Vision, Ch. 4]

Histogram Normalization [http://www.profc.udec.cl/~gabriel/tutoriales/rsnote/cp10/cp10-3.htm]

Linear Systems [Jain, Kasturi, and Schunck (1995). Machine Vision, Ch. 4]

Linear Space Invariant System A system whose response remains the same irrespective of the position of the input pulse is called a space invariant system. [Jain, Kasturi, and Schunck (1995). Machine Vision, Ch. 4]

Linear Space Invariant System Impulse Response [Jain, Kasturi, and Schunck (1995). Machine Vision, Ch. 4]

This relation must hold Output Image Corresponding to f2 Scaling Constants Input Images Output Image Corresponding to f1 [Jain, Kasturi, and Schunck (1995). Machine Vision, Ch. 4]

Convolution For such a system the output h(x,y) is the convolution of f(x,y) with the impulse response g(x,y) [Jain, Kasturi, and Schunck (1995). Machine Vision, Ch. 4]

Convolution [Jain, Kasturi, and Schunck (1995). Machine Vision, Ch. 4]

Example of 3x3 convolution mask [Jain, Kasturi, and Schunck (1995). Machine Vision, Ch. 4]

Example of 3x3 convolution mask [Jain, Kasturi, and Schunck (1995). Machine Vision, Ch. 4]

In plain words Convolution is essentially equivalent to computing a weighted sum of image pixels.

Convolution is a linear operation [Jain, Kasturi, and Schunck (1995). Machine Vision, Ch. 4]

Types of Image Noise Salt and Pepper Noise Impulse noise random occurrences of black and white pixels Impulse noise Random occurrences of white pixels only Gaussian noise Variations of intensity that are drawn from a Gaussian or normal distribution

[Jain, Kasturi, and Schunck (1995). Machine Vision, Ch. 4]

Mean Filter Arbitrary neighborhood For a 3x3 neighborhood [Jain, Kasturi, and Schunck (1995). Machine Vision, Ch. 4]

3x3 Mean Filter [Jain, Kasturi, and Schunck (1995). Machine Vision, Ch. 4]

3x3 Linear Smoothing Filter In general, it is a good idea to have only a single peak in your smoothing filter: [Jain, Kasturi, and Schunck (1995). Machine Vision, Ch. 4]

Median Filter Sort the pixels into ascending order by their gray level values Select the value of the middle pixel as the new value for pixel [i, j]

3x3 Median Filter [Jain, Kasturi, and Schunck (1995). Machine Vision, Ch. 4]

Matlab Demo

Gaussian Smoothing [Jain, Kasturi, and Schunck (1995). Machine Vision, Ch. 4]

The Gaussian Function Zero mean 1D Gaussian Zero mean 2D Gaussian for image processing applications [Jain, Kasturi, and Schunck (1995). Machine Vision, Ch. 4]

Gaussian Properties Rotationally symmetric in 2D Has a single peak The width of the filter and the degree of smoothing are determined by sigma Large Gaussian filters can be implemented very efficiently using small Gaussian filters [Jain, Kasturi, and Schunck (1995). Machine Vision, Ch. 4]

Rotational Symmetry Original formula Switch to polar coordinates Result (does not depend on θ) [Jain, Kasturi, and Schunck (1995). Machine Vision, Ch. 4]

Gaussian Separability [Jain, Kasturi, and Schunck (1995). Machine Vision, Ch. 4]

Gaussian Separability The convolution of the input image f[i,j] with a vertical 1D Gaussian function [Jain, Kasturi, and Schunck (1995). Machine Vision, Ch. 4]

Cascading Gaussians [Jain, Kasturi, and Schunck (1995). Machine Vision, Ch. 4]

The convolution of a Gaussian with itself yields a scaled Gaussian with larger sigma [Jain, Kasturi, and Schunck (1995). Machine Vision, Ch. 4]

Properties The product of the convolution of two Gaussian functions with a spread is a Gaussian function with a spread scaled by the area of the Gaussian filter [Jain, Kasturi, and Schunck (1995). Machine Vision, Ch. 4]

Designing Gaussian Filters [Jain, Kasturi, and Schunck (1995). Machine Vision, Ch. 4]

Pascal’s Triangle (Binomial Expansion) [Jain, Kasturi, and Schunck (1995). Machine Vision, Ch. 4]

Example: 6 choose 3 6 * 5 * 4 * 3 * 2 * 1 For example, [6:3] = ------------------------ = 20 3 * 2 * 1 * 3 * 2 * 1

Binomial Coefficients (x+1)^0 = 1 (x+1)^1 = 1 + x (x+1)^2 = 1 + 2x + x^2 (x+1)^3 = 1 + 3x + 3x^2 + x^3 (x+1)^4 = 1 + 4x + 6x^2 + 4x^3 + x^4 (x+1)^5 = 1 + 5x + 10x^2 + 10x^3 + 5x^4 + x^5 .....

Pascal’s Triangle [http://ptri1.tripod.com/]

A Five Point Approximation [Jain, Kasturi, and Schunck (1995). Machine Vision, Ch. 4]

Another Way: Compute the Weights Start with a discrete Gaussian Normalize the weights [Jain, Kasturi, and Schunck (1995). Machine Vision, Ch. 4]

Example: sigma^2=2, n=7 [Jain, Kasturi, and Schunck (1995). Machine Vision, Ch. 4]

To keep them all integers [Jain, Kasturi, and Schunck (1995). Machine Vision, Ch. 4]

Integer Weights [Jain, Kasturi, and Schunck (1995). Machine Vision, Ch. 4]

Normalization constant [Jain, Kasturi, and Schunck (1995). Machine Vision, Ch. 4]

Discrete Gaussian Filters

7x7 Gaussian Mask [Jain, Kasturi, and Schunck (1995). Machine Vision, Ch. 4]

3D Plot of the 7x7 Gaussian [Jain, Kasturi, and Schunck (1995). Machine Vision, Ch. 4]

15 x 15 Gaussian Mask [Jain, Kasturi, and Schunck (1995). Machine Vision, Ch. 4]

Properties of Discrete Gaussian Filters Step 1: smooth with n x n discrete Gaussian Filter Step 2: smooth the intermediary result from Step 1 with m x m discrete Gaussian Filter Step 1 + Step 2 are equivalent to smoothing the original with (n+m-1)x(n+m-1) discrete Gaussian Filter [Jain, Kasturi, and Schunck (1995). Machine Vision, Ch. 4]

THE END