Professional Documents
Culture Documents
• formal terminology
• filtering with masks
• mean filter
• Gaussian filter
• general cross-correlation
• convolution
• median filter
1
What is an image?
r ( x, y )
f ( x, y ) g ( x, y )
b( x, y )
Courtesy of NASA
2
Images as functions
4
Filtering Operations Use Masks
36 36 36 36 36 ** ** ** ** **
36 36 45 45 45 1/9 1/9 1/9
** 39 ** ** **
1/9 1/9 1/9
36 45 45 45 54 1/9 1/9 1/9 ** ** ** ** **
36 45 54 54 54 ** ** ** ** **
45 45 54 54 54 3x3 Mask
** ** ** ** **
Input Image Output Image
5
Application: Noise Filtering
Image processing is useful for noise reduction...
6
Practical noise reduction
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
7
Mean filtering
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 90 90 90 90 90 0 0
0 0 0 90 90 90 90 90 0 0
0 0 0 90 90 90 90 90 0 0
0 0 0 90 0 90 90 90 0 0
0 0 0 90 90 90 90 90 0 0
0 0 0 0 0 0 0 0 0 0
0 0 90 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
8
Mean filtering
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 90 90 90 90 90 0 0
0 0 0 90 90 90 90 90 0 0
0 0 0 90 90 90 90 90 0 0
0 0 0 90 0 90 90 90 0 0
0 0 0 90 90 90 90 90 0 0 Input
0 0 0 0 0 0 0 0 0 0 Image
0 0 90 0 0 0 0 0 0 0
Sum the
0 0 0 0 0 0 0 0 0 0
values in
a 3x3 nbd.
Divide by 9.
Replace
center.
0 10 20 30 30 30 20 10
0 20 40 60 60 60 40 20
0 30 60 90 90 90 60 30
0 30 50 80 80 90 60 30
0 30 50 80 80 90 60 30
0 20 30 50 50 60 40 20
10 20 30 30 30 30 20 10 Output
10 10 10 0 0 0 0 0
Image
9
Effect of mean filters
10
Generalization:
Cross-Correlation Filtering
Let’s write this down as an equation. Assume the
averaging window is (2k+1)x(2k+1):
11
Mean Kernel
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 90 90 90 90 90 0 0
0 0 0 90 90 90 90 90 0 0
0 0 0 90 90 90 90 90 0 0
0 0 0 90 0 90 90 90 0 0
0 0 0 90 90 90 90 90 0 0
0 0 0 0 0 0 0 0 0 0
0 0 90 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
12
Mean Kernel
0 0 0 0 0 0 0 0 0 0
mean filter
1 1 1
0 0 0 0 0 0 0 0 0 0
0 0 0 90 90 90 90 90 0 0 1/9 1 1 1
1 1 1
0 0 0 90 90 90 90 90 0 0
0 0 0 90 90 90 90 90 0 0
0 0 0 90 0 90 90 90 0 0
0 0 0 90 90 90 90 90 0 0
0 0 0 0 0 0 0 0 0 0
0 0 90 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
13
Gaussian Filtering
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 90 90 90 90 90 0 0
0 0 0 90 90 90 90 90 0 0 1 2 1
0 0 0 90 90 90 90 90 0 0
2 4 2
0 0 0 90 0 90 90 90 0 0
1 2 1
0 0 0 90 90 90 90 90 0 0
0 0 0 0 0 0 0 0 0 0
0 0 90 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
14
Mean vs. Gaussian filtering
15
Convolution
It is written:
16
Convolution vs. Correlation
When do they differ?
1D Example from Signal Processing
Correlation Convolution
17
Convolution Examples
http://www.aishack.in/2010/08/image-convolution-examples/
18
Convolution Examples
19
Convolution Examples
20
Convolution Examples
21
Median filters
50 45 49
51 57 43 43 45 49 50 51 52 53 57 84
52 53 84
22
Comparison: salt and pepper noise
23
Comparison: Gaussian noise
24
More Comparisons:
Mean vs. Median using Matlab
http://www.mathworks.com/help/toolbox/images/f11-12251.html
25
Edge Detection
Problems: 81 82 26 24
82 33 25 25
• neighborhood size 81 82 26 24
26
Differential Operators
Differential operators
What’s a gradient?
What’s a derivative?
27
Example: Sobel Operator
-1 0 1 1 2 1
Sx = -2 0 2 Sy = 0 0 0
-1 0 1 -1 -2 -1
29
Some Well-Known Masks for
Computing Gradients
Sx Sy
-1 0 1 1 2 1
Sobel: -2 0 2 0 0 0
-1 0 1 -1 -2 -1
-1 0 1 1 1 1
Prewitt: -1 0 1 0 0 0
-1 0 1 -1 -1 -1
Roberts 0 1 1 0
-1 0 0 -1
30