Prof Emmanuel Agu - WPIemmanuel/courses/cs545/S14/slides/lecture03.pdfHistogram Matching Prior...
Transcript of Prof Emmanuel Agu - WPIemmanuel/courses/cs545/S14/slides/lecture03.pdfHistogram Matching Prior...
![Page 1: Prof Emmanuel Agu - WPIemmanuel/courses/cs545/S14/slides/lecture03.pdfHistogram Matching Prior method needed reference distribution to be invertible What if reference histogram is](https://reader033.fdocuments.in/reader033/viewer/2022042108/5e884e4245b4fc2c11787625/html5/thumbnails/1.jpg)
Digital Image Processing (CS/ECE 545) Lecture 3: Point Operations (Part 2)
& Filters (Part 1)(Neighborhood and Spatial Processing)
Prof Emmanuel Agu
Computer Science Dept.Worcester Polytechnic Institute (WPI)
![Page 2: Prof Emmanuel Agu - WPIemmanuel/courses/cs545/S14/slides/lecture03.pdfHistogram Matching Prior method needed reference distribution to be invertible What if reference histogram is](https://reader033.fdocuments.in/reader033/viewer/2022042108/5e884e4245b4fc2c11787625/html5/thumbnails/2.jpg)
Recall: Histogram Equalization Adjust 2 different images to make their histograms (intensity
distributions) similar Apply a point operation that changes histogram of modified
image into uniform distribution
Histogram
Cumulative Histogram
![Page 3: Prof Emmanuel Agu - WPIemmanuel/courses/cs545/S14/slides/lecture03.pdfHistogram Matching Prior method needed reference distribution to be invertible What if reference histogram is](https://reader033.fdocuments.in/reader033/viewer/2022042108/5e884e4245b4fc2c11787625/html5/thumbnails/3.jpg)
Recall: Equalization Transformation Function
Imag
es ta
ken
from
Gon
zale
z &
Woo
ds, D
igita
l Im
age
Pro
cess
ing
(200
2)
![Page 4: Prof Emmanuel Agu - WPIemmanuel/courses/cs545/S14/slides/lecture03.pdfHistogram Matching Prior method needed reference distribution to be invertible What if reference histogram is](https://reader033.fdocuments.in/reader033/viewer/2022042108/5e884e4245b4fc2c11787625/html5/thumbnails/4.jpg)
Linear Histogram Equalization Histogram cannot be made exactly flat – peaks cannot be
increased or decreased by point operations. Following point operation makes histogram as flat as possible:(assuming M x N image and pixels in range [0, K ‐ 1])
Cumulative Histogram: Σ how manytimes intensity a occurs
Point operation that returnsLinear equalized value of a
![Page 5: Prof Emmanuel Agu - WPIemmanuel/courses/cs545/S14/slides/lecture03.pdfHistogram Matching Prior method needed reference distribution to be invertible What if reference histogram is](https://reader033.fdocuments.in/reader033/viewer/2022042108/5e884e4245b4fc2c11787625/html5/thumbnails/5.jpg)
Effects of Linear Histogram Equalization
Original Image I
CumulativeHistogram
Originalhistogram
Cumulative HistogramAfter Linear Equalization
Image I’ after LinearEqualization
Histogram after Linear Equalization
![Page 6: Prof Emmanuel Agu - WPIemmanuel/courses/cs545/S14/slides/lecture03.pdfHistogram Matching Prior method needed reference distribution to be invertible What if reference histogram is](https://reader033.fdocuments.in/reader033/viewer/2022042108/5e884e4245b4fc2c11787625/html5/thumbnails/6.jpg)
Sample Linear Equalization Code
Obtain histogram of image ipCompute cumulative histogram in place
Equalize pixel intensityGet intensity value at (u,v)
Cumulative Histogram: Σ how many times intensity a occurs
![Page 7: Prof Emmanuel Agu - WPIemmanuel/courses/cs545/S14/slides/lecture03.pdfHistogram Matching Prior method needed reference distribution to be invertible What if reference histogram is](https://reader033.fdocuments.in/reader033/viewer/2022042108/5e884e4245b4fc2c11787625/html5/thumbnails/7.jpg)
Histogram Specification
Real images never show uniform distribution (unnatural) Most real images, distribution of pixel intensities is gaussian Histogram specification modifies an image’s histogram into an arbitrary intensity
distribution (may not be uniform)
Image 1’s histogram can also be used as target for image 2 Why? Makes images taken by 2 different cameras to appear as if
taken by same camera
![Page 8: Prof Emmanuel Agu - WPIemmanuel/courses/cs545/S14/slides/lecture03.pdfHistogram Matching Prior method needed reference distribution to be invertible What if reference histogram is](https://reader033.fdocuments.in/reader033/viewer/2022042108/5e884e4245b4fc2c11787625/html5/thumbnails/8.jpg)
Images and Probability
![Page 9: Prof Emmanuel Agu - WPIemmanuel/courses/cs545/S14/slides/lecture03.pdfHistogram Matching Prior method needed reference distribution to be invertible What if reference histogram is](https://reader033.fdocuments.in/reader033/viewer/2022042108/5e884e4245b4fc2c11787625/html5/thumbnails/9.jpg)
Histogram Specification Find a mapping such that distribution of a matches some reference distribution.i.e
to convert original image IA into IA’ such that
i.e. a and a’ have same height (b) on different CDF distributions
PA(a)P-1
R(b)
Mapping function: maps distribution onright to equivalent point (same height)On distribution on left
![Page 10: Prof Emmanuel Agu - WPIemmanuel/courses/cs545/S14/slides/lecture03.pdfHistogram Matching Prior method needed reference distribution to be invertible What if reference histogram is](https://reader033.fdocuments.in/reader033/viewer/2022042108/5e884e4245b4fc2c11787625/html5/thumbnails/10.jpg)
Adjusting Linear Distribution Piecewise
In practice, reference distribution may be specified as a piecewise linear function
2 endpoints are fixed
![Page 11: Prof Emmanuel Agu - WPIemmanuel/courses/cs545/S14/slides/lecture03.pdfHistogram Matching Prior method needed reference distribution to be invertible What if reference histogram is](https://reader033.fdocuments.in/reader033/viewer/2022042108/5e884e4245b4fc2c11787625/html5/thumbnails/11.jpg)
Adjusting Linear Distribution PiecewiseFor each segment, linearlyInterpolate to find any value
We also need the inverse mapping
![Page 12: Prof Emmanuel Agu - WPIemmanuel/courses/cs545/S14/slides/lecture03.pdfHistogram Matching Prior method needed reference distribution to be invertible What if reference histogram is](https://reader033.fdocuments.in/reader033/viewer/2022042108/5e884e4245b4fc2c11787625/html5/thumbnails/12.jpg)
Adjusting Linear Distribution Piecewise
![Page 13: Prof Emmanuel Agu - WPIemmanuel/courses/cs545/S14/slides/lecture03.pdfHistogram Matching Prior method needed reference distribution to be invertible What if reference histogram is](https://reader033.fdocuments.in/reader033/viewer/2022042108/5e884e4245b4fc2c11787625/html5/thumbnails/13.jpg)
Adjusting Linear Histogram Piecewise
![Page 14: Prof Emmanuel Agu - WPIemmanuel/courses/cs545/S14/slides/lecture03.pdfHistogram Matching Prior method needed reference distribution to be invertible What if reference histogram is](https://reader033.fdocuments.in/reader033/viewer/2022042108/5e884e4245b4fc2c11787625/html5/thumbnails/14.jpg)
Histogram Matching
Prior method needed reference distribution to be invertible
What if reference histogram is not invertible? For example not invertible if histogram has some
intensities that occur with probability 0? i.e. p(k) = 0 Use different method called histogram matching
Has to be invertible
![Page 15: Prof Emmanuel Agu - WPIemmanuel/courses/cs545/S14/slides/lecture03.pdfHistogram Matching Prior method needed reference distribution to be invertible What if reference histogram is](https://reader033.fdocuments.in/reader033/viewer/2022042108/5e884e4245b4fc2c11787625/html5/thumbnails/15.jpg)
Histogram Matching
![Page 16: Prof Emmanuel Agu - WPIemmanuel/courses/cs545/S14/slides/lecture03.pdfHistogram Matching Prior method needed reference distribution to be invertible What if reference histogram is](https://reader033.fdocuments.in/reader033/viewer/2022042108/5e884e4245b4fc2c11787625/html5/thumbnails/16.jpg)
Adjusting to a Given Histogram
Original intensityMatched intensity
ReferenceCumulative Distribution
Height of originalIntensity on histogram
![Page 17: Prof Emmanuel Agu - WPIemmanuel/courses/cs545/S14/slides/lecture03.pdfHistogram Matching Prior method needed reference distribution to be invertible What if reference histogram is](https://reader033.fdocuments.in/reader033/viewer/2022042108/5e884e4245b4fc2c11787625/html5/thumbnails/17.jpg)
Adjusting to a Given Histogram
![Page 18: Prof Emmanuel Agu - WPIemmanuel/courses/cs545/S14/slides/lecture03.pdfHistogram Matching Prior method needed reference distribution to be invertible What if reference histogram is](https://reader033.fdocuments.in/reader033/viewer/2022042108/5e884e4245b4fc2c11787625/html5/thumbnails/18.jpg)
Adjusting to a Given Histogram
Original histogram after matching
CDF of original histogram after matching
CDF of original histogram
original histogram
![Page 19: Prof Emmanuel Agu - WPIemmanuel/courses/cs545/S14/slides/lecture03.pdfHistogram Matching Prior method needed reference distribution to be invertible What if reference histogram is](https://reader033.fdocuments.in/reader033/viewer/2022042108/5e884e4245b4fc2c11787625/html5/thumbnails/19.jpg)
Adjusting to a Given Histogram
![Page 20: Prof Emmanuel Agu - WPIemmanuel/courses/cs545/S14/slides/lecture03.pdfHistogram Matching Prior method needed reference distribution to be invertible What if reference histogram is](https://reader033.fdocuments.in/reader033/viewer/2022042108/5e884e4245b4fc2c11787625/html5/thumbnails/20.jpg)
Gamma Correction
Different camera sensors Have different responses to light intensity Produce different electrical signals for same input
How do we ensure there is consistency in:a) Images recorded by different cameras for given light inputb) Light emitted by different display devices for same image?
Light Electric Signal
Light Electric Signal
Camera
Display
![Page 21: Prof Emmanuel Agu - WPIemmanuel/courses/cs545/S14/slides/lecture03.pdfHistogram Matching Prior method needed reference distribution to be invertible What if reference histogram is](https://reader033.fdocuments.in/reader033/viewer/2022042108/5e884e4245b4fc2c11787625/html5/thumbnails/21.jpg)
Gamma Correction
What is the relation between: Camera: Light on sensor vs. “intensity” of corresponding pixel Display: Pixel intensity vs. light from that pixel
Relation between pixel value and corresponding physical quantity is usually complex, nonlinear
An approximation ?
![Page 22: Prof Emmanuel Agu - WPIemmanuel/courses/cs545/S14/slides/lecture03.pdfHistogram Matching Prior method needed reference distribution to be invertible What if reference histogram is](https://reader033.fdocuments.in/reader033/viewer/2022042108/5e884e4245b4fc2c11787625/html5/thumbnails/22.jpg)
What is Gamma?
Originates from analog photography Exposure function: relationship between: logarithmic light intensity vs. resulting film density.
Gamma: slope of linear range of the curve
The same in TV broadcasting
Log of light intensity
Film density(measure of response)
![Page 23: Prof Emmanuel Agu - WPIemmanuel/courses/cs545/S14/slides/lecture03.pdfHistogram Matching Prior method needed reference distribution to be invertible What if reference histogram is](https://reader033.fdocuments.in/reader033/viewer/2022042108/5e884e4245b4fc2c11787625/html5/thumbnails/23.jpg)
What is Gamma?
Gamma function: a goodapproximation of exposure curve
Inverse of a Gamma function is another gamma function with
Gamma of CRT and LCD monitors: 1.8‐2.8 (typically 2.4)
Output signalRaised by gamma
Correct output signalBy dividing by 1/ gamma(called Gamma correction)
![Page 24: Prof Emmanuel Agu - WPIemmanuel/courses/cs545/S14/slides/lecture03.pdfHistogram Matching Prior method needed reference distribution to be invertible What if reference histogram is](https://reader033.fdocuments.in/reader033/viewer/2022042108/5e884e4245b4fc2c11787625/html5/thumbnails/24.jpg)
Gamma Correction
Obtain a measurement b proportional to original light intensity B by applying inverse gamma function
Gamma correction is important to achieve a device independent representation
![Page 25: Prof Emmanuel Agu - WPIemmanuel/courses/cs545/S14/slides/lecture03.pdfHistogram Matching Prior method needed reference distribution to be invertible What if reference histogram is](https://reader033.fdocuments.in/reader033/viewer/2022042108/5e884e4245b4fc2c11787625/html5/thumbnails/25.jpg)
Gamma Correction
![Page 26: Prof Emmanuel Agu - WPIemmanuel/courses/cs545/S14/slides/lecture03.pdfHistogram Matching Prior method needed reference distribution to be invertible What if reference histogram is](https://reader033.fdocuments.in/reader033/viewer/2022042108/5e884e4245b4fc2c11787625/html5/thumbnails/26.jpg)
Gamma Correction Code
Compute corrected intensity andstore in lookup table fgc
![Page 27: Prof Emmanuel Agu - WPIemmanuel/courses/cs545/S14/slides/lecture03.pdfHistogram Matching Prior method needed reference distribution to be invertible What if reference histogram is](https://reader033.fdocuments.in/reader033/viewer/2022042108/5e884e4245b4fc2c11787625/html5/thumbnails/27.jpg)
Point Operations in ImageJ
![Page 28: Prof Emmanuel Agu - WPIemmanuel/courses/cs545/S14/slides/lecture03.pdfHistogram Matching Prior method needed reference distribution to be invertible What if reference histogram is](https://reader033.fdocuments.in/reader033/viewer/2022042108/5e884e4245b4fc2c11787625/html5/thumbnails/28.jpg)
ImageJ Operations involving 2 images
![Page 29: Prof Emmanuel Agu - WPIemmanuel/courses/cs545/S14/slides/lecture03.pdfHistogram Matching Prior method needed reference distribution to be invertible What if reference histogram is](https://reader033.fdocuments.in/reader033/viewer/2022042108/5e884e4245b4fc2c11787625/html5/thumbnails/29.jpg)
Example: Alpha Blending
![Page 30: Prof Emmanuel Agu - WPIemmanuel/courses/cs545/S14/slides/lecture03.pdfHistogram Matching Prior method needed reference distribution to be invertible What if reference histogram is](https://reader033.fdocuments.in/reader033/viewer/2022042108/5e884e4245b4fc2c11787625/html5/thumbnails/30.jpg)
Alpha Blending PlugIn
![Page 31: Prof Emmanuel Agu - WPIemmanuel/courses/cs545/S14/slides/lecture03.pdfHistogram Matching Prior method needed reference distribution to be invertible What if reference histogram is](https://reader033.fdocuments.in/reader033/viewer/2022042108/5e884e4245b4fc2c11787625/html5/thumbnails/31.jpg)
What Is Image Enhancement?
Image enhancement makes images more useful by: Highlighting interesting detail in images Removing noise from images Making images more visually appealing
![Page 32: Prof Emmanuel Agu - WPIemmanuel/courses/cs545/S14/slides/lecture03.pdfHistogram Matching Prior method needed reference distribution to be invertible What if reference histogram is](https://reader033.fdocuments.in/reader033/viewer/2022042108/5e884e4245b4fc2c11787625/html5/thumbnails/32.jpg)
Image Enhancement Examples
Imag
es ta
ken
from
Gon
zale
z &
Woo
ds, D
igita
l Im
age
Pro
cess
ing
(200
2)
![Page 33: Prof Emmanuel Agu - WPIemmanuel/courses/cs545/S14/slides/lecture03.pdfHistogram Matching Prior method needed reference distribution to be invertible What if reference histogram is](https://reader033.fdocuments.in/reader033/viewer/2022042108/5e884e4245b4fc2c11787625/html5/thumbnails/33.jpg)
Image Enhancement Examples (cont…)
Imag
es ta
ken
from
Gon
zale
z &
Woo
ds, D
igita
l Im
age
Pro
cess
ing
(200
2)
![Page 34: Prof Emmanuel Agu - WPIemmanuel/courses/cs545/S14/slides/lecture03.pdfHistogram Matching Prior method needed reference distribution to be invertible What if reference histogram is](https://reader033.fdocuments.in/reader033/viewer/2022042108/5e884e4245b4fc2c11787625/html5/thumbnails/34.jpg)
Image Enhancement Examples (cont…)
Imag
es ta
ken
from
Gon
zale
z &
Woo
ds, D
igita
l Im
age
Pro
cess
ing
(200
2)
![Page 35: Prof Emmanuel Agu - WPIemmanuel/courses/cs545/S14/slides/lecture03.pdfHistogram Matching Prior method needed reference distribution to be invertible What if reference histogram is](https://reader033.fdocuments.in/reader033/viewer/2022042108/5e884e4245b4fc2c11787625/html5/thumbnails/35.jpg)
Image Enhancement Examples (cont…)
Imag
es ta
ken
from
Gon
zale
z &
Woo
ds, D
igita
l Im
age
Pro
cess
ing
(200
2)
![Page 36: Prof Emmanuel Agu - WPIemmanuel/courses/cs545/S14/slides/lecture03.pdfHistogram Matching Prior method needed reference distribution to be invertible What if reference histogram is](https://reader033.fdocuments.in/reader033/viewer/2022042108/5e884e4245b4fc2c11787625/html5/thumbnails/36.jpg)
Spatial & Frequency Domains
There are two broad categories of image enhancement techniques Spatial domain techniques Direct manipulation of image pixels (intensity values)
Frequency domain techniques Manipulation of Fourier transform or wavelet transform of an image
First spatial domain techniquesLater: frequency domain techniques
![Page 37: Prof Emmanuel Agu - WPIemmanuel/courses/cs545/S14/slides/lecture03.pdfHistogram Matching Prior method needed reference distribution to be invertible What if reference histogram is](https://reader033.fdocuments.in/reader033/viewer/2022042108/5e884e4245b4fc2c11787625/html5/thumbnails/37.jpg)
What is a Filter? Capabilities of point operations are limited Filters: combine pixel’s value + values of neighbors E.g blurring: Compute average intensity of block of pixels
Combining multiple pixels needed for certain operations: Blurring, Smoothing Sharpening
![Page 38: Prof Emmanuel Agu - WPIemmanuel/courses/cs545/S14/slides/lecture03.pdfHistogram Matching Prior method needed reference distribution to be invertible What if reference histogram is](https://reader033.fdocuments.in/reader033/viewer/2022042108/5e884e4245b4fc2c11787625/html5/thumbnails/38.jpg)
What Point Operations Can’t Do
Example: sharpening
![Page 39: Prof Emmanuel Agu - WPIemmanuel/courses/cs545/S14/slides/lecture03.pdfHistogram Matching Prior method needed reference distribution to be invertible What if reference histogram is](https://reader033.fdocuments.in/reader033/viewer/2022042108/5e884e4245b4fc2c11787625/html5/thumbnails/39.jpg)
What Point Operations Can’t Do
Other cool artistic patterns by combining pixels
![Page 40: Prof Emmanuel Agu - WPIemmanuel/courses/cs545/S14/slides/lecture03.pdfHistogram Matching Prior method needed reference distribution to be invertible What if reference histogram is](https://reader033.fdocuments.in/reader033/viewer/2022042108/5e884e4245b4fc2c11787625/html5/thumbnails/40.jpg)
Definition: Spatial Filter
![Page 41: Prof Emmanuel Agu - WPIemmanuel/courses/cs545/S14/slides/lecture03.pdfHistogram Matching Prior method needed reference distribution to be invertible What if reference histogram is](https://reader033.fdocuments.in/reader033/viewer/2022042108/5e884e4245b4fc2c11787625/html5/thumbnails/41.jpg)
Example: Average (Mean) of 3x3 Neighborhood
pixel
8 neighborpixel
Blurring: Replace each pixel with AVERAGE Intensity of pixel + neighbors
![Page 42: Prof Emmanuel Agu - WPIemmanuel/courses/cs545/S14/slides/lecture03.pdfHistogram Matching Prior method needed reference distribution to be invertible What if reference histogram is](https://reader033.fdocuments.in/reader033/viewer/2022042108/5e884e4245b4fc2c11787625/html5/thumbnails/42.jpg)
Smoothing an Image by Averaging
Replace each pixel by average of pixel + neighbors For 3x3 neighborhood:
![Page 43: Prof Emmanuel Agu - WPIemmanuel/courses/cs545/S14/slides/lecture03.pdfHistogram Matching Prior method needed reference distribution to be invertible What if reference histogram is](https://reader033.fdocuments.in/reader033/viewer/2022042108/5e884e4245b4fc2c11787625/html5/thumbnails/43.jpg)
Smoothing an Image by Averaging
![Page 44: Prof Emmanuel Agu - WPIemmanuel/courses/cs545/S14/slides/lecture03.pdfHistogram Matching Prior method needed reference distribution to be invertible What if reference histogram is](https://reader033.fdocuments.in/reader033/viewer/2022042108/5e884e4245b4fc2c11787625/html5/thumbnails/44.jpg)
Example: Smoothing Spatial Filtering
1/9 1/9 1/91/9 1/9 1/91/9 1/9 1/9
Origin x
y Image f (x, y)
e = 1/9*106 + 1/9*104 + 1/9*100 + 1/9*108 + 1/9*99 + 1/9*98 + 1/9*95 + 1/9*90 + 1/9*85
= 98.3333
FilterSimple 3*3
Neighbourhood106
104
99
95
100 108
98
90 85
1/9 1/9 1/91/9 1/9 1/91/9 1/9 1/9
3*3 SmoothingFilter
104 100 108
99 106 98
95 90 85
Original Image Pixels
*
The above is repeated for every pixel in the original image to generate the smoothed image
![Page 45: Prof Emmanuel Agu - WPIemmanuel/courses/cs545/S14/slides/lecture03.pdfHistogram Matching Prior method needed reference distribution to be invertible What if reference histogram is](https://reader033.fdocuments.in/reader033/viewer/2022042108/5e884e4245b4fc2c11787625/html5/thumbnails/45.jpg)
Smoothing an Image by Averaging
Many possible filter parameters (size, weights, function, etc) Filter size (size of neighborhood): 3x3, 5x5, 7x7, …,21x21,.. Filter shape: not necessarily square. Can be rectangle, circle, etc Filter weights: May apply unequal weighting to different pixels Filters function: can be linear (a weighted summation) or nonlinear
Previous example:Filter size: 3x3
![Page 46: Prof Emmanuel Agu - WPIemmanuel/courses/cs545/S14/slides/lecture03.pdfHistogram Matching Prior method needed reference distribution to be invertible What if reference histogram is](https://reader033.fdocuments.in/reader033/viewer/2022042108/5e884e4245b4fc2c11787625/html5/thumbnails/46.jpg)
The Filter Matrix
Filter operation can be expressed as a matrixExample: averaging filter
Filter matrix also called filter mask H(i,j)
![Page 47: Prof Emmanuel Agu - WPIemmanuel/courses/cs545/S14/slides/lecture03.pdfHistogram Matching Prior method needed reference distribution to be invertible What if reference histogram is](https://reader033.fdocuments.in/reader033/viewer/2022042108/5e884e4245b4fc2c11787625/html5/thumbnails/47.jpg)
Example: What does this Filter Do?
![Page 48: Prof Emmanuel Agu - WPIemmanuel/courses/cs545/S14/slides/lecture03.pdfHistogram Matching Prior method needed reference distribution to be invertible What if reference histogram is](https://reader033.fdocuments.in/reader033/viewer/2022042108/5e884e4245b4fc2c11787625/html5/thumbnails/48.jpg)
What Does this Filter Do?
![Page 49: Prof Emmanuel Agu - WPIemmanuel/courses/cs545/S14/slides/lecture03.pdfHistogram Matching Prior method needed reference distribution to be invertible What if reference histogram is](https://reader033.fdocuments.in/reader033/viewer/2022042108/5e884e4245b4fc2c11787625/html5/thumbnails/49.jpg)
Mean Filters: Effect of Filter Size
![Page 50: Prof Emmanuel Agu - WPIemmanuel/courses/cs545/S14/slides/lecture03.pdfHistogram Matching Prior method needed reference distribution to be invertible What if reference histogram is](https://reader033.fdocuments.in/reader033/viewer/2022042108/5e884e4245b4fc2c11787625/html5/thumbnails/50.jpg)
Applying Linear Filters: Convolution
1. Move filter matrix H overimage such that H(0,0) coincides with current imageposition (u,v)
For each image position I(u,v): 2. Multiply all filter coefficients H(i,j)with corresponding pixelI(u + i, v + j)
3. Sum up results and store sum in corresponding positionin new image I’(u, v)
Stated formally:
RH is set of all pixels Covered by filter.For 3x3 filter, this is:
![Page 51: Prof Emmanuel Agu - WPIemmanuel/courses/cs545/S14/slides/lecture03.pdfHistogram Matching Prior method needed reference distribution to be invertible What if reference histogram is](https://reader033.fdocuments.in/reader033/viewer/2022042108/5e884e4245b4fc2c11787625/html5/thumbnails/51.jpg)
Computing Filter Operation Filter matrix Hmoves over each pixel in original image I to
compute corresponding pixel in new image I’ Cannot overwrite new pixel value in original image I Why?
Store results I’ in intermediateimage, then copy back to replace I
Copy original image I to intermediateimage, use it as source, then store results I’ to replace original image
![Page 52: Prof Emmanuel Agu - WPIemmanuel/courses/cs545/S14/slides/lecture03.pdfHistogram Matching Prior method needed reference distribution to be invertible What if reference histogram is](https://reader033.fdocuments.in/reader033/viewer/2022042108/5e884e4245b4fc2c11787625/html5/thumbnails/52.jpg)
Simple 3x3 Averaging Filter (“Box” Filter)
No explicit filter matrix since all coefficients are the same (1/9)
No clamping required
Make copy of original imageto use as source
Filter computation by adding current pixel’s neighbors
Loop over all pixels in image
Store result back in original image
![Page 53: Prof Emmanuel Agu - WPIemmanuel/courses/cs545/S14/slides/lecture03.pdfHistogram Matching Prior method needed reference distribution to be invertible What if reference histogram is](https://reader033.fdocuments.in/reader033/viewer/2022042108/5e884e4245b4fc2c11787625/html5/thumbnails/53.jpg)
Weighted Smoothing FiltersMore effective smoothing filters can be generated by allowing different pixels in the neighbourhood different weights in the averaging function Pixels closer to central
pixel more important Often referred to as a
weighted averaging
1/162/16
1/16
2/164/16
2/16
1/162/16
1/16
Weighted averaging filter
![Page 54: Prof Emmanuel Agu - WPIemmanuel/courses/cs545/S14/slides/lecture03.pdfHistogram Matching Prior method needed reference distribution to be invertible What if reference histogram is](https://reader033.fdocuments.in/reader033/viewer/2022042108/5e884e4245b4fc2c11787625/html5/thumbnails/54.jpg)
Another Smoothing Filter
Use real filter matrix with coefficentsApply bell-shaped function H(i,j)
Bell-shaped function H(i,j)?- More weight applied to center
Apply filter
Store result back in original
![Page 55: Prof Emmanuel Agu - WPIemmanuel/courses/cs545/S14/slides/lecture03.pdfHistogram Matching Prior method needed reference distribution to be invertible What if reference histogram is](https://reader033.fdocuments.in/reader033/viewer/2022042108/5e884e4245b4fc2c11787625/html5/thumbnails/55.jpg)
Integer Coefficients
Instead of floating point coeffients, more efficient, simpler to use:
scaling factor + integer coefficients
![Page 56: Prof Emmanuel Agu - WPIemmanuel/courses/cs545/S14/slides/lecture03.pdfHistogram Matching Prior method needed reference distribution to be invertible What if reference histogram is](https://reader033.fdocuments.in/reader033/viewer/2022042108/5e884e4245b4fc2c11787625/html5/thumbnails/56.jpg)
Example: 5x5 Filter in Adobe Photoshop
Integer filter coefficients
Scaling factor for coeffients
If resulting pixel value is negative, offset shifts it into visible range
![Page 57: Prof Emmanuel Agu - WPIemmanuel/courses/cs545/S14/slides/lecture03.pdfHistogram Matching Prior method needed reference distribution to be invertible What if reference histogram is](https://reader033.fdocuments.in/reader033/viewer/2022042108/5e884e4245b4fc2c11787625/html5/thumbnails/57.jpg)
Computation Range For a filter of size (2K+1) x (2L+1), if image size is MxN, filter is computed over the range:
Filter can only be applied at image locations (u, v) where filter matrix His fully contained in the image
![Page 58: Prof Emmanuel Agu - WPIemmanuel/courses/cs545/S14/slides/lecture03.pdfHistogram Matching Prior method needed reference distribution to be invertible What if reference histogram is](https://reader033.fdocuments.in/reader033/viewer/2022042108/5e884e4245b4fc2c11787625/html5/thumbnails/58.jpg)
Filter of Arbitrary Size
Clamp result as a precaution
Declare filter
![Page 59: Prof Emmanuel Agu - WPIemmanuel/courses/cs545/S14/slides/lecture03.pdfHistogram Matching Prior method needed reference distribution to be invertible What if reference histogram is](https://reader033.fdocuments.in/reader033/viewer/2022042108/5e884e4245b4fc2c11787625/html5/thumbnails/59.jpg)
What to do at image boundaries?
a) Crop
![Page 60: Prof Emmanuel Agu - WPIemmanuel/courses/cs545/S14/slides/lecture03.pdfHistogram Matching Prior method needed reference distribution to be invertible What if reference histogram is](https://reader033.fdocuments.in/reader033/viewer/2022042108/5e884e4245b4fc2c11787625/html5/thumbnails/60.jpg)
What to do at image boundaries?
a) Cropb) Pad
![Page 61: Prof Emmanuel Agu - WPIemmanuel/courses/cs545/S14/slides/lecture03.pdfHistogram Matching Prior method needed reference distribution to be invertible What if reference histogram is](https://reader033.fdocuments.in/reader033/viewer/2022042108/5e884e4245b4fc2c11787625/html5/thumbnails/61.jpg)
What to do at image boundaries?
a) Cropb) Padc) Extend
![Page 62: Prof Emmanuel Agu - WPIemmanuel/courses/cs545/S14/slides/lecture03.pdfHistogram Matching Prior method needed reference distribution to be invertible What if reference histogram is](https://reader033.fdocuments.in/reader033/viewer/2022042108/5e884e4245b4fc2c11787625/html5/thumbnails/62.jpg)
What to do at image boundaries?
a) Cropb) Padc) Extendd) Wrap
![Page 63: Prof Emmanuel Agu - WPIemmanuel/courses/cs545/S14/slides/lecture03.pdfHistogram Matching Prior method needed reference distribution to be invertible What if reference histogram is](https://reader033.fdocuments.in/reader033/viewer/2022042108/5e884e4245b4fc2c11787625/html5/thumbnails/63.jpg)
Linear Filters: Smoothing Filters 2 main classes of linear filters:
Smoothing: +ve coeffients (weighted average). E.g box, gaussian Difference filters: +ve and –ve weights. E.g. Laplacian
Box Gaussian Laplacian
![Page 64: Prof Emmanuel Agu - WPIemmanuel/courses/cs545/S14/slides/lecture03.pdfHistogram Matching Prior method needed reference distribution to be invertible What if reference histogram is](https://reader033.fdocuments.in/reader033/viewer/2022042108/5e884e4245b4fc2c11787625/html5/thumbnails/64.jpg)
Gaussian Filter
where σ is width (standard deviation) r is distance from center σ
r
Gaussianfilter
![Page 65: Prof Emmanuel Agu - WPIemmanuel/courses/cs545/S14/slides/lecture03.pdfHistogram Matching Prior method needed reference distribution to be invertible What if reference histogram is](https://reader033.fdocuments.in/reader033/viewer/2022042108/5e884e4245b4fc2c11787625/html5/thumbnails/65.jpg)
Difference Filters
Coefficients: some +ve, some negative Example: Laplacian filter Computation is difference
Laplacianfilter
![Page 66: Prof Emmanuel Agu - WPIemmanuel/courses/cs545/S14/slides/lecture03.pdfHistogram Matching Prior method needed reference distribution to be invertible What if reference histogram is](https://reader033.fdocuments.in/reader033/viewer/2022042108/5e884e4245b4fc2c11787625/html5/thumbnails/66.jpg)
Mathematical Properties of Convolution
Applying a filter as described called linear convolution For discrete 2D signal, convolution defined as:
![Page 67: Prof Emmanuel Agu - WPIemmanuel/courses/cs545/S14/slides/lecture03.pdfHistogram Matching Prior method needed reference distribution to be invertible What if reference histogram is](https://reader033.fdocuments.in/reader033/viewer/2022042108/5e884e4245b4fc2c11787625/html5/thumbnails/67.jpg)
Properties of Convolution
Commutativity
Linearity
(notice)
Associativity
Same result if we convolve image with filter or vice versa
If image multiplied by scalarResult multiplied by same scalar
If 2 images added and convolveresult with a kernel H, Same result if each imageis convolved individually + added
Order of filter application irrelevantAny order, same result
![Page 68: Prof Emmanuel Agu - WPIemmanuel/courses/cs545/S14/slides/lecture03.pdfHistogram Matching Prior method needed reference distribution to be invertible What if reference histogram is](https://reader033.fdocuments.in/reader033/viewer/2022042108/5e884e4245b4fc2c11787625/html5/thumbnails/68.jpg)
References Wilhelm Burger and Mark J. Burge, Digital Image Processing, Springer, 2008 Histograms (Ch 4) Point operations (Ch 5) Filters (Ch 6)
University of Utah, CS 4640: Image Processing Basics, Spring 2012
Rutgers University, CS 334, Introduction to Imaging and Multimedia, Fall 2012