Download - CSC589 Introduction to Computer Vision Lecture 3 Gaussian Filter, Histogram Equalization Bei Xiao
![Page 1: CSC589 Introduction to Computer Vision Lecture 3 Gaussian Filter, Histogram Equalization Bei Xiao](https://reader035.vdocuments.us/reader035/viewer/2022070406/56649de45503460f94adacec/html5/thumbnails/1.jpg)
CSC589 Introduction to Computer VisionLecture 3
Gaussian Filter, Histogram EqualizationBei Xiao
![Page 2: CSC589 Introduction to Computer Vision Lecture 3 Gaussian Filter, Histogram Equalization Bei Xiao](https://reader035.vdocuments.us/reader035/viewer/2022070406/56649de45503460f94adacec/html5/thumbnails/2.jpg)
Last lecture
• Image can represented as a matrix• Point process• Linear filter: convolution
![Page 3: CSC589 Introduction to Computer Vision Lecture 3 Gaussian Filter, Histogram Equalization Bei Xiao](https://reader035.vdocuments.us/reader035/viewer/2022070406/56649de45503460f94adacec/html5/thumbnails/3.jpg)
Take-home assignments
• Chapter 3.2 on linear filtering• Image Histogram Equalization (pdf will be
uploaded in blackboard) • Chapter 1 of Solem (Computer vision with
Python). Many useful examples• Homework will be out this weekend and due a
week.
![Page 4: CSC589 Introduction to Computer Vision Lecture 3 Gaussian Filter, Histogram Equalization Bei Xiao](https://reader035.vdocuments.us/reader035/viewer/2022070406/56649de45503460f94adacec/html5/thumbnails/4.jpg)
Today’s lecture
• More on linear filter, Image Sharpening• Gaussian Filter (introduction)• Image Histogram Equalization• Basic image processing tutorial
![Page 5: CSC589 Introduction to Computer Vision Lecture 3 Gaussian Filter, Histogram Equalization Bei Xiao](https://reader035.vdocuments.us/reader035/viewer/2022070406/56649de45503460f94adacec/html5/thumbnails/5.jpg)
Last time we talked about convolution
![Page 6: CSC589 Introduction to Computer Vision Lecture 3 Gaussian Filter, Histogram Equalization Bei Xiao](https://reader035.vdocuments.us/reader035/viewer/2022070406/56649de45503460f94adacec/html5/thumbnails/6.jpg)
![Page 7: CSC589 Introduction to Computer Vision Lecture 3 Gaussian Filter, Histogram Equalization Bei Xiao](https://reader035.vdocuments.us/reader035/viewer/2022070406/56649de45503460f94adacec/html5/thumbnails/7.jpg)
![Page 8: CSC589 Introduction to Computer Vision Lecture 3 Gaussian Filter, Histogram Equalization Bei Xiao](https://reader035.vdocuments.us/reader035/viewer/2022070406/56649de45503460f94adacec/html5/thumbnails/8.jpg)
![Page 9: CSC589 Introduction to Computer Vision Lecture 3 Gaussian Filter, Histogram Equalization Bei Xiao](https://reader035.vdocuments.us/reader035/viewer/2022070406/56649de45503460f94adacec/html5/thumbnails/9.jpg)
![Page 10: CSC589 Introduction to Computer Vision Lecture 3 Gaussian Filter, Histogram Equalization Bei Xiao](https://reader035.vdocuments.us/reader035/viewer/2022070406/56649de45503460f94adacec/html5/thumbnails/10.jpg)
Image Sharpening
• Take this image and blur it
![Page 11: CSC589 Introduction to Computer Vision Lecture 3 Gaussian Filter, Histogram Equalization Bei Xiao](https://reader035.vdocuments.us/reader035/viewer/2022070406/56649de45503460f94adacec/html5/thumbnails/11.jpg)
Image Sharpening
• What do we get if we subtract this two?
This is the left-over sharp stuff!
![Page 12: CSC589 Introduction to Computer Vision Lecture 3 Gaussian Filter, Histogram Equalization Bei Xiao](https://reader035.vdocuments.us/reader035/viewer/2022070406/56649de45503460f94adacec/html5/thumbnails/12.jpg)
Let’s make the image sharper?
• We know: “sharp stuff + blurred = original”
![Page 13: CSC589 Introduction to Computer Vision Lecture 3 Gaussian Filter, Histogram Equalization Bei Xiao](https://reader035.vdocuments.us/reader035/viewer/2022070406/56649de45503460f94adacec/html5/thumbnails/13.jpg)
Let’s boost the sharp stuff a little
![Page 14: CSC589 Introduction to Computer Vision Lecture 3 Gaussian Filter, Histogram Equalization Bei Xiao](https://reader035.vdocuments.us/reader035/viewer/2022070406/56649de45503460f94adacec/html5/thumbnails/14.jpg)
Let’s boost the sharp stuff a little
![Page 15: CSC589 Introduction to Computer Vision Lecture 3 Gaussian Filter, Histogram Equalization Bei Xiao](https://reader035.vdocuments.us/reader035/viewer/2022070406/56649de45503460f94adacec/html5/thumbnails/15.jpg)
Side by Side
![Page 16: CSC589 Introduction to Computer Vision Lecture 3 Gaussian Filter, Histogram Equalization Bei Xiao](https://reader035.vdocuments.us/reader035/viewer/2022070406/56649de45503460f94adacec/html5/thumbnails/16.jpg)
Now look at the computation
• Operations– 1 convolution– 1 subtraction over the whole image
• As an equation:
![Page 17: CSC589 Introduction to Computer Vision Lecture 3 Gaussian Filter, Histogram Equalization Bei Xiao](https://reader035.vdocuments.us/reader035/viewer/2022070406/56649de45503460f94adacec/html5/thumbnails/17.jpg)
Rewrite this
![Page 18: CSC589 Introduction to Computer Vision Lecture 3 Gaussian Filter, Histogram Equalization Bei Xiao](https://reader035.vdocuments.us/reader035/viewer/2022070406/56649de45503460f94adacec/html5/thumbnails/18.jpg)
Rewrite this
![Page 19: CSC589 Introduction to Computer Vision Lecture 3 Gaussian Filter, Histogram Equalization Bei Xiao](https://reader035.vdocuments.us/reader035/viewer/2022070406/56649de45503460f94adacec/html5/thumbnails/19.jpg)
Now look at the computation
• Can pre-compute new filter
• Operations
1 convolution
![Page 20: CSC589 Introduction to Computer Vision Lecture 3 Gaussian Filter, Histogram Equalization Bei Xiao](https://reader035.vdocuments.us/reader035/viewer/2022070406/56649de45503460f94adacec/html5/thumbnails/20.jpg)
Photoshop: Unsharp Masknig
• http://en.wikipedia.org/wiki/Unsharp_masking
![Page 21: CSC589 Introduction to Computer Vision Lecture 3 Gaussian Filter, Histogram Equalization Bei Xiao](https://reader035.vdocuments.us/reader035/viewer/2022070406/56649de45503460f94adacec/html5/thumbnails/21.jpg)
Unsharp Masking (Scipy)
• alpha = 30• im_blur = filters.gaussian_filter(im, 3)• im_blur2 = filters.gaussian_filter(im_blur,1)• im_sharpened = im_blur + alpha * (im_blur -
im_blur2)
![Page 22: CSC589 Introduction to Computer Vision Lecture 3 Gaussian Filter, Histogram Equalization Bei Xiao](https://reader035.vdocuments.us/reader035/viewer/2022070406/56649de45503460f94adacec/html5/thumbnails/22.jpg)
Unsharp Masking (Scikit)
![Page 23: CSC589 Introduction to Computer Vision Lecture 3 Gaussian Filter, Histogram Equalization Bei Xiao](https://reader035.vdocuments.us/reader035/viewer/2022070406/56649de45503460f94adacec/html5/thumbnails/23.jpg)
Unsharp Masking (MATLAB)
• a = imread(‘rice.png’)• imshow(a)• b = imsharpen(a,’Radius’,2, ‘Amount’,1);• Imshow(b)
![Page 24: CSC589 Introduction to Computer Vision Lecture 3 Gaussian Filter, Histogram Equalization Bei Xiao](https://reader035.vdocuments.us/reader035/viewer/2022070406/56649de45503460f94adacec/html5/thumbnails/24.jpg)
Your Convolution filter toolbox
• 90% of the filtering that you will do will be either
• Smoothing (or Blurring)• High-Pass Filtering (will explain later)• Most common filters:• Smoothing: Gaussian• High Pass Filtering: Derivative of Gaussian
![Page 25: CSC589 Introduction to Computer Vision Lecture 3 Gaussian Filter, Histogram Equalization Bei Xiao](https://reader035.vdocuments.us/reader035/viewer/2022070406/56649de45503460f94adacec/html5/thumbnails/25.jpg)
Gaussian Filter
• Gaussian = normal distribution function•
![Page 26: CSC589 Introduction to Computer Vision Lecture 3 Gaussian Filter, Histogram Equalization Bei Xiao](https://reader035.vdocuments.us/reader035/viewer/2022070406/56649de45503460f94adacec/html5/thumbnails/26.jpg)
Gaussian Filter
• Gaussian = normal distribution function•
![Page 27: CSC589 Introduction to Computer Vision Lecture 3 Gaussian Filter, Histogram Equalization Bei Xiao](https://reader035.vdocuments.us/reader035/viewer/2022070406/56649de45503460f94adacec/html5/thumbnails/27.jpg)
Gaussian Filter
• Gaussian = normal distribution function•
![Page 28: CSC589 Introduction to Computer Vision Lecture 3 Gaussian Filter, Histogram Equalization Bei Xiao](https://reader035.vdocuments.us/reader035/viewer/2022070406/56649de45503460f94adacec/html5/thumbnails/28.jpg)
Gaussian Filter
• Gaussian = normal distribution function•
![Page 29: CSC589 Introduction to Computer Vision Lecture 3 Gaussian Filter, Histogram Equalization Bei Xiao](https://reader035.vdocuments.us/reader035/viewer/2022070406/56649de45503460f94adacec/html5/thumbnails/29.jpg)
Gaussian filter with different σ σ = 3
σ = 5 σ = 7
Original
![Page 30: CSC589 Introduction to Computer Vision Lecture 3 Gaussian Filter, Histogram Equalization Bei Xiao](https://reader035.vdocuments.us/reader035/viewer/2022070406/56649de45503460f94adacec/html5/thumbnails/30.jpg)
Gaussian Filter
• Remove “high-frequency” components from image (low-pass filter)– Images become more smooth
• Convolution with self is another Gaussian– So can smooth with small-width kernel, repeat
and get same result as larger-width kernel would have.
– Convolving two times with kernel width σ is same as convolving once with kernel width σ/2 (Can you proof this?)
![Page 31: CSC589 Introduction to Computer Vision Lecture 3 Gaussian Filter, Histogram Equalization Bei Xiao](https://reader035.vdocuments.us/reader035/viewer/2022070406/56649de45503460f94adacec/html5/thumbnails/31.jpg)
Separability of the Gaussian filter
• The 2D Gaussian can be expressed as the product of two functions, one a function of x and the other the function of y.
• In this case, the two functions are (identical) 1D Gaussian.
![Page 32: CSC589 Introduction to Computer Vision Lecture 3 Gaussian Filter, Histogram Equalization Bei Xiao](https://reader035.vdocuments.us/reader035/viewer/2022070406/56649de45503460f94adacec/html5/thumbnails/32.jpg)
![Page 33: CSC589 Introduction to Computer Vision Lecture 3 Gaussian Filter, Histogram Equalization Bei Xiao](https://reader035.vdocuments.us/reader035/viewer/2022070406/56649de45503460f94adacec/html5/thumbnails/33.jpg)
Why is separability useful?
• The process of performing a convolution requires K^2 operations per pixel
• Suppose v and h are horizontal and vertical kernels.
• K = vh^T• 2K operations per pixel!
![Page 34: CSC589 Introduction to Computer Vision Lecture 3 Gaussian Filter, Histogram Equalization Bei Xiao](https://reader035.vdocuments.us/reader035/viewer/2022070406/56649de45503460f94adacec/html5/thumbnails/34.jpg)
Image Histogram Equalization
• We have a low-contrast image:
![Page 35: CSC589 Introduction to Computer Vision Lecture 3 Gaussian Filter, Histogram Equalization Bei Xiao](https://reader035.vdocuments.us/reader035/viewer/2022070406/56649de45503460f94adacec/html5/thumbnails/35.jpg)
Image Histogram Equalization
• We would like to increase the contrast
![Page 36: CSC589 Introduction to Computer Vision Lecture 3 Gaussian Filter, Histogram Equalization Bei Xiao](https://reader035.vdocuments.us/reader035/viewer/2022070406/56649de45503460f94adacec/html5/thumbnails/36.jpg)
What is a histogram
![Page 37: CSC589 Introduction to Computer Vision Lecture 3 Gaussian Filter, Histogram Equalization Bei Xiao](https://reader035.vdocuments.us/reader035/viewer/2022070406/56649de45503460f94adacec/html5/thumbnails/37.jpg)
Image Histogram Equalization
• We have a low-contrast image:
Limited image range
![Page 38: CSC589 Introduction to Computer Vision Lecture 3 Gaussian Filter, Histogram Equalization Bei Xiao](https://reader035.vdocuments.us/reader035/viewer/2022070406/56649de45503460f94adacec/html5/thumbnails/38.jpg)
Image Histogram Equalization
• What we want is a histogram that covers the whole range of [0,255], but the shape must be preserved!
Ideal histogram
![Page 39: CSC589 Introduction to Computer Vision Lecture 3 Gaussian Filter, Histogram Equalization Bei Xiao](https://reader035.vdocuments.us/reader035/viewer/2022070406/56649de45503460f94adacec/html5/thumbnails/39.jpg)
PDF, density of a continuous random variable, is a function that describes the relative likelihood for this random variable to take on a given value.
Mini detour of Probability Theory
![Page 40: CSC589 Introduction to Computer Vision Lecture 3 Gaussian Filter, Histogram Equalization Bei Xiao](https://reader035.vdocuments.us/reader035/viewer/2022070406/56649de45503460f94adacec/html5/thumbnails/40.jpg)
Mini detour of Probability Theory
cumulative distribution function (CDF), describes the probability that a real-valued random variable X with a given probability distribution will be found to have a value less than or equal to x.
![Page 41: CSC589 Introduction to Computer Vision Lecture 3 Gaussian Filter, Histogram Equalization Bei Xiao](https://reader035.vdocuments.us/reader035/viewer/2022070406/56649de45503460f94adacec/html5/thumbnails/41.jpg)
How does it work?
• Mapping one distribution to another distribution (a wider and more uniform of intensity values) so that the intensity values are spreading over the whole range
• The mapping should be the cumulative density function (CDF)
![Page 42: CSC589 Introduction to Computer Vision Lecture 3 Gaussian Filter, Histogram Equalization Bei Xiao](https://reader035.vdocuments.us/reader035/viewer/2022070406/56649de45503460f94adacec/html5/thumbnails/42.jpg)
Stretching the CDF
Transform
Before After
![Page 43: CSC589 Introduction to Computer Vision Lecture 3 Gaussian Filter, Histogram Equalization Bei Xiao](https://reader035.vdocuments.us/reader035/viewer/2022070406/56649de45503460f94adacec/html5/thumbnails/43.jpg)
Next class
• Bordering effect• Image Derivatives