September 25, 2014Computer Vision Lecture 6: Spatial Filtering 1 Computing Object Orientation We compute the orientation of an object as the orientation.

Slides:



Advertisements
Similar presentations
Computer Vision Lecture 7: The Fourier Transform
Advertisements

3-D Computer Vision CSc83020 / Ioannis Stamos  Revisit filtering (Gaussian and Median)  Introduction to edge detection 3-D Computater Vision CSc
電腦視覺 Computer and Robot Vision I
November 12, 2013Computer Vision Lecture 12: Texture 1Signature Another popular method of representing shape is called the signature. In order to compute.
October 2, 2014Computer Vision Lecture 8: Edge Detection I 1 Edge Detection.
CS 4487/9587 Algorithms for Image Analysis
Computer Vision Lecture 16: Texture
E.G.M. PetrakisFiltering1 Linear Systems Many image processing (filtering) operations are modeled as a linear system Linear System δ(x,y) h(x,y)
September 10, 2013Computer Vision Lecture 3: Binary Image Processing 1Thresholding Here, the right image is created from the left image by thresholding,
November 4, 2014Computer Vision Lecture 15: Shape Representation II 1Signature Another popular method of representing shape is called the signature. In.
December 5, 2013Computer Vision Lecture 20: Hidden Markov Models/Depth 1 Stereo Vision Due to the limited resolution of images, increasing the baseline.
6/9/2015Digital Image Processing1. 2 Example Histogram.
Image Filtering CS485/685 Computer Vision Prof. George Bebis.
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 Images and Transformations Images by Pawan SinhaPawan Sinha.
1 Image filtering Hybrid Images, Oliva et al.,
CS4670: Computer Vision Kavita Bala Lecture 7: Harris Corner Detection.
Most slides from Steve Seitz
Computer Vision Spring ,-685 Instructor: S. Narasimhan Wean Hall 5409 T-R 10:30am – 11:50am.
September 10, 2012Introduction to Artificial Intelligence Lecture 2: Perception & Action 1 Boundary-following Robot Rules 1  2  3  4  5.
CS 376b Introduction to Computer Vision 02 / 26 / 2008 Instructor: Michael Eckmann.
December 4, 2014Computer Vision Lecture 22: Depth 1 Stereo Vision Comparing the similar triangles PMC l and p l LC l, we get: Similarly, for PNC r and.
HCI/ComS 575X: Computational Perception Instructor: Alexander Stoytchev
September 23, 2014Computer Vision Lecture 5: Binary Image Processing 1 Binary Images Binary images are grayscale images with only two possible levels of.
Digital Image Processing Lecture 5: Neighborhood Processing: Spatial Filtering Prof. Charlene Tsai.
Lecture 03 Area Based Image Processing Lecture 03 Area Based Image Processing Mata kuliah: T Computer Vision Tahun: 2010.
Course 2 Image Filtering. Image filtering is often required prior any other vision processes to remove image noise, overcome image corruption and change.
CSC508 Convolution Operators. CSC508 Convolution Arguably the most fundamental operation of computer vision It’s a neighborhood operator –Similar to the.
October 7, 2014Computer Vision Lecture 9: Edge Detection II 1 Laplacian Filters Idea: Smooth the image, Smooth the image, compute the second derivative.
Digital Image Processing Lecture 16: Segmentation: Detection of Discontinuities Prof. Charlene Tsai.
Templates, Image Pyramids, and Filter Banks
CS654: Digital Image Analysis
September 19, 2013Computer Vision Lecture 6: Image Filtering 1 Image Filtering Many basic image processing techniques are based on convolution. In a convolution,
Digital Image Processing Lecture 5: Neighborhood Processing: Spatial Filtering March 9, 2004 Prof. Charlene Tsai.
October 1, 2013Computer Vision Lecture 9: From Edges to Contours 1 Canny Edge Detector However, usually there will still be noise in the array E[i, j],
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.
Machine Vision Edge Detection Techniques ENT 273 Lecture 6 Hema C.R.
Instructor: Mircea Nicolescu Lecture 5 CS 485 / 685 Computer Vision.
September 26, 2013Computer Vision Lecture 8: Edge Detection II 1Gradient In the one-dimensional case, a step edge corresponds to a local peak in the first.
Blob detection.
Image Enhancement in the Spatial Domain.
HCI/ComS 575X: Computational Perception Instructor: Alexander Stoytchev
图像处理技术讲座(3) Digital Image Processing (3) Basic Image Operations
Digital Image Processing Lecture 16: Segmentation: Detection of Discontinuities Prof. Charlene Tsai.
Image Pre-Processing in the Spatial and Frequent Domain
A Gentle Introduction to Bilateral Filtering and its Applications
Slope and Curvature Density Functions
Feature description and matching
Fourier Transform: Real-World Images
Common Classification Tasks
Computer Vision Lecture 5: Binary Image Processing
Computer Vision Lecture 9: Edge Detection II
Computer Vision Lecture 16: Texture II
Image filtering Images by Pawan Sinha.
Image Processing, Lecture #8
HCI / CprE / ComS 575: Computational Perception
Image filtering Images by Pawan Sinha.
Image filtering Images by Pawan Sinha.
Image Processing, Lecture #8
Digital Image Processing Week IV
Most slides from Steve Seitz
Image filtering Images by Pawan Sinha.
Magnetic Resonance Imaging
Fourier Transform of Boundaries
Lecture 2: Image filtering
Intensity Transformation
Most slides from Steve Seitz
Introduction to Artificial Intelligence Lecture 22: Computer Vision II
Presentation transcript:

September 25, 2014Computer Vision Lecture 6: Spatial Filtering 1 Computing Object Orientation We compute the orientation of an object as the orientation of its greatest elongation. This axis of elongation is also called the axis of second moment of the object. It is determined as the axis with the least sum of squared distances between the object points and itself. In order to standardize the orientation of the object, we rotate it around its center so that its axis of second moment is vertical.

September 25, 2014Computer Vision Lecture 6: Spatial Filtering 2 Intensity Transformation Sometimes we need to transform the intensities of all image pixels to prepare the image for better visibility of information or for algorithmic processing.

September 25, 2014Computer Vision Lecture 6: Spatial Filtering 3 Gamma Transformation Gammatransformation:

September 25, 2014Computer Vision Lecture 6: Spatial Filtering 4 Gamma Transformation

September 25, 2014Computer Vision Lecture 6: Spatial Filtering 5 Linear Histogram Scaling

September 25, 2014Computer Vision Lecture 6: Spatial Filtering 6 Linear Histogram Scaling For a desired intensity range [a, b] we can use the following linear transformation: Note that outliers (individual pixels of very low or high intensity) should be disregarded when computing I min and I max.

September 25, 2014Computer Vision Lecture 6: Spatial Filtering 7 Image Filtering Many basic image processing techniques are based on convolution. In a convolution, a convolution filter W is applied to every pixel of an image I to create a filtered image I*. The filter W itself is a 2D matrix of real values. To simplify the mathematics, we could consider W to have a center [0, 0] and extend from –m to m vertically and –n to n horizontally. This means that W is of size (2m + 1)×(2n + 1).

September 25, 2014Computer Vision Lecture 6: Spatial Filtering 8 j iConvolution Example: Averaging filter: 1/91/91/9 1/91/91/9 1/91/91/9

September 25, 2014Computer Vision Lecture 6: Spatial Filtering 9Convolution Grayscale Image: /91/91/91/91/91/9 1/91/91/9 Averaging Filter:

September 25, 2014Computer Vision Lecture 6: Spatial Filtering 10Convolution Original Image: Filtered Image: /91/91/91/91/91/9 1/91/91/9 value = 1  1/9 + 6  1/9 + 3  1/9 + 2  1/  1/9 + 3  1/9 + 5  1/  1/9 + 6  1/9 = 47/9 =

September 25, 2014Computer Vision Lecture 6: Spatial Filtering 11Convolution Original Image: Filtered Image: /91/91/91/91/91/9 1/91/91/9 value = 6  1/9 + 3  1/9 + 2  1/  1/9 + 3  1/  1/  1/9 + 6  1/9 + 9  1/9 = 60/9 =

September 25, 2014Computer Vision Lecture 6: Spatial Filtering 12Convolution Original Image: Filtered Image: Now you can see the averaging (smoothing) effect of the 3  3 filter that we applied.

September 25, 2014Computer Vision Lecture 6: Spatial Filtering 13Convolution It needs to be noted that for convolution the filter needs to be rotated by 180  before starting the computations (otherwise it’s a correlation). An intuitive explanation is that we would like convolution to be like a “local multiplication of patterns.” For example, if our image contains a few 1s and otherwise 0s, we would expect the convolution result to contain a copy of the filter pattern centered at each 1. Let us look at an image with one 1-pixel:

September 25, 2014Computer Vision Lecture 6: Spatial Filtering 14Convolution Image: Filter: Result: Oops! The copy of the filter is rotated by 180  !

September 25, 2014Computer Vision Lecture 6: Spatial Filtering 15Convolution If we rotate the filter by 180  beforehand, we get the desired result. This leads to the following definition of convolution for image I, filter W, and result I * : This formula needs to be applied to all coordinates [i, j] in I in order to create the complete image I *. Convolution is commutative, i.e., W and I are exchangeable.

September 25, 2014Computer Vision Lecture 6: Spatial Filtering 16 Image Filtering More common: Gaussian Filters Discrete version: 1/273 implement decreasing influence by more distant pixels Continuous version:

September 25, 2014Computer Vision Lecture 6: Spatial Filtering 17 Image Filtering original 33333333 99999999 15  15 Effect of Gaussian smoothing:

September 25, 2014Computer Vision Lecture 6: Spatial Filtering 18 Properties of Gaussian Filters The application of Gaussian convolution filters can be made more efficient. This is important, for example, if we want to apply different Gaussian filters to a large number of big input images. The basic idea is to separate the convolution with the 2D Gaussian filter into two successive convolutions with 1D Gaussian filters. One of these filters is vertical, the other one horizontal.

September 25, 2014Computer Vision Lecture 6: Spatial Filtering 19 Properties of Gaussian Filters The general form of the Gaussian filter, without a normalizing factor, is given by: The convolution of an image F with a Gaussian filter G of size (2m + 1)  (2n + 1) is given by: This formula needs to be applied to all coordinates [i, j] in F in order to create the convoluted image.

September 25, 2014Computer Vision Lecture 6: Spatial Filtering 20 Properties of Gaussian Filters Then we have:

September 25, 2014Computer Vision Lecture 6: Spatial Filtering 21 Properties of Gaussian Filters The formula in the curly braces describes the convolution of F[i, j] with a horizontal one- dimensional Gaussian filter. The remainder of the formula takes the result of this first convolution and performs a convolution with a vertical one-dimensional Gaussian filter on it. So instead of applying an (2m + 1)  (2n + 1) Gaussian convolution filter, we can successively apply a 1  (2n + 1) filter and an (2m + 1)  1 filter. This increases the efficiency of the computation.

September 25, 2014Computer Vision Lecture 6: Spatial Filtering 22 Different Types of Filters Smoothing can reduce noise in the image.Smoothing can reduce noise in the image. This can be useful, for example, if you want to find regions of similar color or texture in an image.This can be useful, for example, if you want to find regions of similar color or texture in an image. However, there are different types of noise.However, there are different types of noise. For so-called “salt-and-pepper” noise, for example, a median filter can be more effective.For so-called “salt-and-pepper” noise, for example, a median filter can be more effective. Note that it is not a convolution filter, but it works similarly.Note that it is not a convolution filter, but it works similarly.

September 25, 2014Computer Vision Lecture 6: Spatial Filtering 23 Median Filter Use, for example, a 3  3 filter and move it across the image like we did before.Use, for example, a 3  3 filter and move it across the image like we did before. For each position, compute the median of the brightness values of the nine pixels in question.For each position, compute the median of the brightness values of the nine pixels in question. –To compute the median, sort the nine values in ascending order. –The value in the center of the list (here, the fifth value) is the median. Use the median as the new value for the center pixel.Use the median as the new value for the center pixel.

September 25, 2014Computer Vision Lecture 6: Spatial Filtering 24 Median Filter Advantage of the median filter: Capable of eliminating outliers such as the extreme brightness values in salt-and-pepper noise.Advantage of the median filter: Capable of eliminating outliers such as the extreme brightness values in salt-and-pepper noise. Disadvantage: The median filter may change the contours of objects in the image.Disadvantage: The median filter may change the contours of objects in the image.

September 25, 2014Computer Vision Lecture 6: Spatial Filtering 25 Median Filter original image 3  3 median 7  7 median