2d Circular Convolution 2 PDF

You might also like

Download as pdf or txt
Download as pdf or txt
You are on page 1of 6

OpenStax-CNX module: m12058 1

2D Circular Convolution
*

Richard Baraniuk
This work is produced by OpenStax-CNX and licensed under the
Creative Commons Attribution License 1.0„

1 1D Signals
Circular convolution for 1D1 signals (Figure 1).

Figure 1

N −1
(1)
X
y [n] = h [(n − k) modN ] x [k]
k=0

for 0 ≤ n ≤ N − 1.
1. Flip h around
2. Shift this function
3. Multiply by x
4. Add up to get y [n]
5. Repeat for each n

* Version 1.2: Jul 16, 2004 1:32 pm -0500


„ http://creativecommons.org/licenses/by/1.0
1 The time domain is 1D.

http://cnx.org/content/m12058/1.2/
OpenStax-CNX module: m12058 2

2 2D "Signals"
The domain has two dimensions.
Example 1
Images (N × N box of numbers), Figure 2.

Figure 2: x [m, n] and x ∈ RN .


2

3 2D LSI Systems
Figure 3.

http://cnx.org/content/m12058/1.2/
OpenStax-CNX module: m12058 3

Figure 3: In general, H is a "hypermatrix" N × N × N × N .

When H is LSI, it is completely determined by its impulse response :


2
h ∈ RN

h [m, n]
Compute output y via 2D circular convolution (Figure 4).

Figure 4: y = h~N x.

2D circular convolution of x~N h (each N × N image), Figure 5.

Figure 5: y = x~N h.

N −1 N −1
(5)
X X
y [m, n] = (h [(m − l) modN, (n − k) modN ] x [l, k])
k=0 l=0

Same procedure as 1D: ip; shift; multiply; add up; repeat.

http://cnx.org/content/m12058/1.2/
OpenStax-CNX module: m12058 4

4 Example Filters
4.1 1. Smoothers

Figure 6, Figure 7, Figure 8 divided by 10, etc...

Figure 6

http://cnx.org/content/m12058/1.2/
OpenStax-CNX module: m12058 5

Figure 7

Figure 8

4.2 2. Edge Detectors

Detects edges in any direction: Figure 9, Figure 10, Figure 10(b), Figure 10(c).

http://cnx.org/content/m12058/1.2/
OpenStax-CNX module: m12058 6

Figure 9

(a) (b) (c)

Figure 10

All vector space theory goes through to 2D images and general d-dimensional functions.
Example 2

 −1 N
p NX −1
(10)
X p
k x kp = (|x [m, n] |)
m=0 n=0

N −1 N −1
(10)
X X
< x, y >= x [m, n] y [m, n]
m=0 n=0

< x, y >≤ k x k2 k y k2 (10)


(where (10) is CSI). There exist 2D ONB's etc...
You will learn more on this in Elec 439.
note: Much more prevalant use of nonlinear lters on images.

http://cnx.org/content/m12058/1.2/

You might also like