20
CS654: Digital Image Analysis Lecture 16: Convolution and Correlation

CS654: Digital Image Analysis Lecture 16: Convolution and Correlation

Embed Size (px)

Citation preview

Page 1: CS654: Digital Image Analysis Lecture 16: Convolution and Correlation

CS654: Digital Image Analysis

Lecture 16: Convolution and Correlation

Page 2: CS654: Digital Image Analysis Lecture 16: Convolution and Correlation

Recap of Lecture 15

• Image Transforms

• Hadamard Transform

• Haar Transform

• KL Transform (1-D)

Page 3: CS654: Digital Image Analysis Lecture 16: Convolution and Correlation

Outline of Lecture 16

• Mask processing

• Correlation

• Convolution

Page 4: CS654: Digital Image Analysis Lecture 16: Convolution and Correlation

Interpolation using mask

¼

Input image

Scaled image

Zero padded image

Interpolation mask

Page 5: CS654: Digital Image Analysis Lecture 16: Convolution and Correlation

Mask processing

¼

0 3.5 7 3.5

1.5 3.75 6 3

3 4 5

1.5 2

2.5

2.5 1.25

Page 6: CS654: Digital Image Analysis Lecture 16: Convolution and Correlation

Introduction

• Basic operations to extract information from images

• The simplest as well as most effective operations

• Can be analysed and understood very well

• Easy to implement and can be computed very efficiently

Page 7: CS654: Digital Image Analysis Lecture 16: Convolution and Correlation

Key Features

• Two key features: shift-invariant, and linear.

• Linear, Shift-Invariant System (LSI)

𝑓 1 𝑔1

𝑓 2 𝑔2

Linear system

𝛼 𝑓 1+𝛽 𝑓 2 𝛼𝑔1+𝛽𝑔2

Real systems cannot be strictly linear

𝑓 (𝑥 , 𝑦) 𝑔 (𝑥 , 𝑦 )

Shift Invariant System

Only holds for limited displacements

Page 8: CS654: Digital Image Analysis Lecture 16: Convolution and Correlation

Advantage of understanding LSI systems

• Understanding the properties of image-forming systems

• System shortcomings can often be discussed

• Transform the ideal image into the one actually observed

• Linear: replace every pixel with a linear combination of its neighbours

• Shift-invariance: same operation at every point in the image.

• Linear-spatial filtering

Page 9: CS654: Digital Image Analysis Lecture 16: Convolution and Correlation

Correlation

• The relationship of pixels with respect to its neighborhood

5 4 2 3 7 4 6 5 3 6

0 1 2 3 4 5 6 7 8 9

𝑓 (4 )=𝑓 (3 )+ 𝑓 (4 )+ f (5)

3

𝑓 (4 )= 𝑓 (3 )3

+𝑓 (4 )3

+𝑓 (5 )3

¿13𝑓 (3)+

13𝑓 (4)+

13𝑓 (5)

𝑓 ′(𝑘)=𝑤(𝑘−1) 𝑓 (𝑘−1)+𝑤(𝑘) 𝑓 (𝑘)+𝑤(𝑘+1) 𝑓 (𝑘+1)

𝑓 ′(𝑘)= ∑𝑖=𝑘−1

𝑘+1

𝑤 (𝑖 ) 𝑓 (𝑖) 𝐹 ∘ 𝐼 (𝑥 )= ∑𝒊=−𝒌

𝒌

𝒘 (𝒊 ) 𝒇 (𝒙+𝒊)

Page 10: CS654: Digital Image Analysis Lecture 16: Convolution and Correlation

Taking care of the boundaries

5 4 2 3 7 4 6 5 3 6

0 1 2 3 4 5 6 7 8 9

0 5 4 2 3 7 4 6 5 3 6 0

0 1 2 3 4 5 6 7 8 9

Case 1:

5 5 4 2 3 7 4 6 5 3 6 5Case 2:

6 5 4 2 3 7 4 6 5 3 6 5Case 3:

Zero-padding

Replication

Circular

5 3 4 5 6

Page 11: CS654: Digital Image Analysis Lecture 16: Convolution and Correlation

Constructing a filter

• Consider the 1-D Gaussian function

𝐺 (𝑥 )= 1𝜎 √ 2𝜋

𝑒−

(𝑥−𝜇 )2

2𝜎2

𝝁

𝝈𝐺 (𝑥 )= 1𝜎 √ 2𝜋

𝑒− 𝑥2

2𝜎2

0.053 0.242 0.399 0.242 0.053

0 1 2

𝜎=1 ,𝐺(𝑥 )

0.053 0.244 0.403 0.244 0.053

𝐺 (𝑥 )

∑¿𝑁

𝑁

𝐺(𝑥 )=¿

Page 12: CS654: Digital Image Analysis Lecture 16: Convolution and Correlation

Derivative

• Rate of , with respect to , i.e.

1 4 9 16 25 36 49 64 81

𝑓 (𝑥 )=𝑥2⇒ 𝑓 ′ (𝑥 )=2𝑥

1 4 6 8 10 12 14 16 18

𝑓 ′(𝑘)=𝑤(𝑘−1) 𝑓 (𝑘−1)+𝑤(𝑘) 𝑓 (𝑘)+𝑤(𝑘+1) 𝑓 (𝑘+1)

−𝟏𝟐

𝟏𝟐

𝟎

0

Page 13: CS654: Digital Image Analysis Lecture 16: Convolution and Correlation

Matching with correlation

• Locations in an image that are similar to a template

• How to measure the similarity

• Sum of the square of the differences

∑𝑖=− 𝑁

𝑁

(𝐹 (𝑖 )− 𝐼 (𝑥+1))2

As the correlation between the filter and the image increases, the Euclidean distance between them decreases

Page 14: CS654: Digital Image Analysis Lecture 16: Convolution and Correlation

Example

3 7 5

3 2 4 1 3 8 4 0 3 8 0 7 7 7 1 2

Template

Image

40 43 39 34 64 85 52 27 61 65 59 84 105 75 38 27

3 7 5

Correlation

25 26 26 41 29 2 59 54 34 26 78 13 20 32 61 38

Sum of squared difference

.94

.88

.94

.73

.81

.99

.64

.59

.78

.84

.61

.93

.95 .83

.57

.99

Normalized correlation

∑𝑖=−𝑁

𝑁

𝐹 (𝑖 ) 𝐼 (𝑥+𝑖)

√ ∑𝑖=−𝑁

𝑁

(𝐹 (𝑖 ) )2√ ∑𝑖=−𝑁

𝑁

( 𝐼 (𝑥+𝑖))2

Normalized correlation=

Page 15: CS654: Digital Image Analysis Lecture 16: Convolution and Correlation

Correlation in 2D

𝐹 ∘ 𝐼 (𝑥 )= ∑𝑖=−𝑁

𝑁

𝐹 (𝑖 ) 𝐼 (𝑥+𝑖)

𝐹 ∘ 𝐼 (𝑥 , 𝑦 )= ∑𝑖=−𝑁

𝑁

∑𝑗=−𝑁

𝑁

𝐹 (𝑖 , 𝑗 ) 𝐼 (𝑥+ 𝑖 , 𝑦+ 𝑗)

Page 16: CS654: Digital Image Analysis Lecture 16: Convolution and Correlation

Seperability

8 3 4 5

7 6 4 5

4 5 7 8

6 5 5 6

Mask

5.33

Input image Averaged image

[ 13 13

13 ]

8 3 4

7 6 4

4 5 7 [131313]

Reduced computational complexity?

Page 17: CS654: Digital Image Analysis Lecture 16: Convolution and Correlation

Convolution

• Similar to correlation

• Flip over the filter before correlating

𝐹∗ 𝐼 (𝑥 )= ∑𝑖=−𝑁

𝑁

𝐹 (𝑖 ) 𝐼 (𝑥−𝑖)

𝐹∗ 𝐼 (𝑥 , 𝑦 )= ∑𝑖=− 𝑁

𝑁

∑𝑗=−𝑁

𝑁

𝐹 (𝑖 , 𝑗 ) 𝐼 (𝑥−𝑖 , 𝑦− 𝑗 )

2D convolution we flip the filter both horizontally and vertically

In case of symmetric filters?

Page 18: CS654: Digital Image Analysis Lecture 16: Convolution and Correlation

Example: 1D

3 4 50

1

2

3

4

5

𝑓 (𝑥 )={3,4,5 } 𝑔 (𝑥 )={2,1 }

2 10

1

2

3

4

5

Dimension of the resultant signal = (No. of columns in f + No. of columns in g) - 1

Page 19: CS654: Digital Image Analysis Lecture 16: Convolution and Correlation

Example: 2DDimension of the resultant signal = (No. of rows in f + No. of rows in g) - 1

X (No. of columns in f + No. of columns in g) - 1

𝑥 (𝑚 ,𝑛)=[ 4 5 67 8 9]

h

𝑦 (𝑚 ,𝑛)=[ 𝑦 1 𝑦 2 𝑦 3𝑦 4 𝑦 5 𝑦 6𝑦7 𝑦 8 𝑦 9𝑦10 𝑦11 𝑦 12

]

4 5 6

7 8 9

𝑦 (𝑚 ,𝑛)=[ 4 5 611 13 1511 13 157 8 9

]

Page 20: CS654: Digital Image Analysis Lecture 16: Convolution and Correlation

Thank youNext lecture: Image Enhancement