36
March 13, 2003 1 ECE 178: Image Processing REVIEW Lecture #20 March 13, 2003

ECE 178: Image Processing REVIEW · 2003-03-15 · March 13, 2003 1 ECE 178: Image Processing REVIEW Lecture #20 March 13, 2003

  • Upload
    others

  • View
    3

  • Download
    0

Embed Size (px)

Citation preview

Page 1: ECE 178: Image Processing REVIEW · 2003-03-15 · March 13, 2003 1 ECE 178: Image Processing REVIEW Lecture #20 March 13, 2003

March 13, 2003 1

ECE 178: Image ProcessingREVIEW

Lecture #20

March 13, 2003

Page 2: ECE 178: Image Processing REVIEW · 2003-03-15 · March 13, 2003 1 ECE 178: Image Processing REVIEW Lecture #20 March 13, 2003

March 13, 2003 2

Course Outline

! Introduction

! Digital Images

! Image Transforms

! Sampling and Quantization

! Image Enhancement

! Image/Video Coding– JPEG

– MPEG

Page 3: ECE 178: Image Processing REVIEW · 2003-03-15 · March 13, 2003 1 ECE 178: Image Processing REVIEW Lecture #20 March 13, 2003

March 13, 2003 3

Relationship between pixels

! Neighborhoods– 4-neighbors (N,S,W,E pixels) == N4(p).

– Diagonal neighbors == ND(p).

– 8-neighbors: include diagonal pixels == N8(p).

! Connectivity -> to trace contours, define object boundaries, segmentation.– V: Set of gray level values used to define

connectivity; e.g., V={1}.

Page 4: ECE 178: Image Processing REVIEW · 2003-03-15 · March 13, 2003 1 ECE 178: Image Processing REVIEW Lecture #20 March 13, 2003

March 13, 2003 4

Connected components

! If p and q are in S, p is connected to q in S if there is a path from p to q entirely in S.

! Connected component: Set of pixels in S that are connected; There can be more than one such set within a given S.

! Labelling of connected components.

Page 5: ECE 178: Image Processing REVIEW · 2003-03-15 · March 13, 2003 1 ECE 178: Image Processing REVIEW Lecture #20 March 13, 2003

March 13, 2003 5

Distance Measures

! What is a Distance Metric?For pixels p,q, and z, with coordinates (x,y), (s,t),

and (u,v), respectively:

D p q D p q p q

D p q D q p

D p z D p q D q z

( , ) ( ( , ) )

( , ) ( , )

( , ) ( , ) ( , )

≥ = ==≤ +

0 0 iff

Page 6: ECE 178: Image Processing REVIEW · 2003-03-15 · March 13, 2003 1 ECE 178: Image Processing REVIEW Lecture #20 March 13, 2003

March 13, 2003 6

Linear systems-review

2D impulse function

Line function

Step function

Linear systems and Shift invariance

Impulse Response of LSI Systems

2-D Convolution

Page 7: ECE 178: Image Processing REVIEW · 2003-03-15 · March 13, 2003 1 ECE 178: Image Processing REVIEW Lecture #20 March 13, 2003

March 13, 2003 7

2-D Digital Transforms

Week II-III

Page 8: ECE 178: Image Processing REVIEW · 2003-03-15 · March 13, 2003 1 ECE 178: Image Processing REVIEW Lecture #20 March 13, 2003

March 13, 2003 8

2D FT: Properties

Convolution: f(x,y) g(x,y) = F(u,v) G(u,v)

Multiplicationn: f(x,y) g(x,y) = F(u,v) G(u,v)

Separable functions: Suppose f(x,y) = g(x) h(y), ThenF(u,v)=G(u)H(v)

Shifting: f(x+x0, y+y0) exp[2π (x0u + y0v)] F(u,v)

Linearity: a f(x,y) + b g(x,y) a F(u,v) + b G(u,v)

Page 9: ECE 178: Image Processing REVIEW · 2003-03-15 · March 13, 2003 1 ECE 178: Image Processing REVIEW Lecture #20 March 13, 2003

March 13, 2003 9

2-D DFTOften it is convenient to consider a symmetric transform:

In 2-D: consider a NXN image

v kN

u n W

u nN

v k W

Nkn

n

N

Nkn

n

N

( ) ( )

( ) ( )

=

=

=

-

-

=

-

Â

Â

1

1

0

1

0

1

and

v k lN

u m n W W

u m nN

v k l W

n

N

Nkm

Nln

m

N

l

N

Nkm ln

k

N

( , ) ( , ) ,

( , ) ( , )

=

=

=

-

=

-

=

-- -

=

-

ÂÂ

ÂÂ

1

1

0

1

0

1

0

1

0

1

Page 10: ECE 178: Image Processing REVIEW · 2003-03-15 · March 13, 2003 1 ECE 178: Image Processing REVIEW Lecture #20 March 13, 2003

March 13, 2003 10

2D DFT Properties:Periodicity & Conjugate Symmetry

u(m,n) F

v(k,l)

v(k,l) = v(k+N, l) = v(k, l+N) = v(k+N, l+N)

If u(m,n) is real, v(k,l) also exhibits conjugate symmetryv(k,l) = v* (-k, -l) or | v(k,l) | = | v(-k, -l) |

Page 11: ECE 178: Image Processing REVIEW · 2003-03-15 · March 13, 2003 1 ECE 178: Image Processing REVIEW Lecture #20 March 13, 2003

March 13, 2003 11

Rotation

Page 12: ECE 178: Image Processing REVIEW · 2003-03-15 · March 13, 2003 1 ECE 178: Image Processing REVIEW Lecture #20 March 13, 2003

March 13, 2003 12

Linear Convolution using DFT

Extended sequences

Circular convolution

Page 13: ECE 178: Image Processing REVIEW · 2003-03-15 · March 13, 2003 1 ECE 178: Image Processing REVIEW Lecture #20 March 13, 2003

March 13, 2003 13

Discrete Cosine Transform

Consider 1- D first; Let x(n) be a N point sequence 0 n N -1.

x(n)2 - N point

y(n)

point

Y(u)

point

C(u)

≤ ≤

↔−

↔−

= + − − =≤ ≤ −

− − ≤ ≤ −

↔DFT N N

y n x n x N nx n n N

x N n N n N

2

2 10 1

2 1 2 1( ) ( ) ( )

( ),

( ),

0 1 2 3 4

x(n)

0 1 2 3 4 5 6 7 8

y(n)

Page 14: ECE 178: Image Processing REVIEW · 2003-03-15 · March 13, 2003 1 ECE 178: Image Processing REVIEW Lecture #20 March 13, 2003

March 13, 2003 14

Why DCT?

! Blocking artifacts less pronounced in DCT than in DFT.

! Good approximation to the Karhunen-Loeve Transform (KLT) but with basis vectors fixed.

! DCT is used in JPEG image compression standard.

Page 15: ECE 178: Image Processing REVIEW · 2003-03-15 · March 13, 2003 1 ECE 178: Image Processing REVIEW Lecture #20 March 13, 2003

March 13, 2003 15

Sampling and Quantization

WEEK IV

Page 16: ECE 178: Image Processing REVIEW · 2003-03-15 · March 13, 2003 1 ECE 178: Image Processing REVIEW Lecture #20 March 13, 2003

March 13, 2003 16

Sampling and Quantization

• 2D sampling theorem

• Optimal quantizer

•Uniform quantizer

Page 17: ECE 178: Image Processing REVIEW · 2003-03-15 · March 13, 2003 1 ECE 178: Image Processing REVIEW Lecture #20 March 13, 2003

March 13, 2003 17

Sampled Spectrum: Example

Page 18: ECE 178: Image Processing REVIEW · 2003-03-15 · March 13, 2003 1 ECE 178: Image Processing REVIEW Lecture #20 March 13, 2003

March 13, 2003 18

Reconstruction

0

R1

R2

δR

Page 19: ECE 178: Image Processing REVIEW · 2003-03-15 · March 13, 2003 1 ECE 178: Image Processing REVIEW Lecture #20 March 13, 2003

March 13, 2003 19

Quantization

!Optimal quantizer

! Uniform Quantizer

Page 20: ECE 178: Image Processing REVIEW · 2003-03-15 · March 13, 2003 1 ECE 178: Image Processing REVIEW Lecture #20 March 13, 2003

March 13, 2003 20

Image Quantization

u(continuous )

Quantizeru’ ε {r1,r2,r3,....,rL}

u’

ut1 tL+1

tk tk+1

rk

Page 21: ECE 178: Image Processing REVIEW · 2003-03-15 · March 13, 2003 1 ECE 178: Image Processing REVIEW Lecture #20 March 13, 2003

March 13, 2003 21

MMSE Quantizer

Minimise the mean squared error, MSE = Expected value of (u-u’)2 given the number ofquantization levels L.

Assume that the density function pu(u) is known (or can be approximated by a normalised

histogram).

Note that for images, u==image intensity. pu(u) isthe image intensity ditribution.

Page 22: ECE 178: Image Processing REVIEW · 2003-03-15 · March 13, 2003 1 ECE 178: Image Processing REVIEW Lecture #20 March 13, 2003

March 13, 2003 22

Optimum transition/reconst.

(1) Optimal transition levels lie halfway between the optimumreconstruction levels.

(2) Optimum reconstruction levels lie at the center of mass of theprobabality density in between the transition levels.

(3) A and B are simultaneous non-linear equations (in general)

Closed form solutions normally dont exist use

numerical techniques

Page 23: ECE 178: Image Processing REVIEW · 2003-03-15 · March 13, 2003 1 ECE 178: Image Processing REVIEW Lecture #20 March 13, 2003

March 13, 2003 23

Image Enhancement

WEEK V-VI

Page 24: ECE 178: Image Processing REVIEW · 2003-03-15 · March 13, 2003 1 ECE 178: Image Processing REVIEW Lecture #20 March 13, 2003

March 13, 2003 24

Image Enhancement

! Point Operations

! Histogram Modification

! Average and Median Filtering

! Frequency domain operations

! Homomorphic Filtering

! Edge enhancement

Page 25: ECE 178: Image Processing REVIEW · 2003-03-15 · March 13, 2003 1 ECE 178: Image Processing REVIEW Lecture #20 March 13, 2003

March 13, 2003 25

Histogram Modification

! Histogram Equalization

! Histogram Specification

Page 26: ECE 178: Image Processing REVIEW · 2003-03-15 · March 13, 2003 1 ECE 178: Image Processing REVIEW Lecture #20 March 13, 2003

March 13, 2003 26

Equalization (contd.)

We are interested in obtaining a transformation function T( )which transforms an arbitrary p.d.f. to an uniform distribution

pr(r) ps(s)

s

Page 27: ECE 178: Image Processing REVIEW · 2003-03-15 · March 13, 2003 1 ECE 178: Image Processing REVIEW Lecture #20 March 13, 2003

March 13, 2003 27

Histogram specification

Steps:(1) Equalize the levels of original image(2) Specify the desired pz(z) and obtain G(z)(3) Apply z=G-1(s) to the levels s obtained in step 1

Suppose

Original histogram ; Desired histogram

Let and

But and are identical p.d.f.

s T r p w dw

p r p z

v G z p w dw z G v

s v

z G v G s G T r

r

r

r z

z

z

= =

→ →

= = =

∴ = = =

z

z −

− − −

( ) ( )

( ) ( )

( ) ( ) ( )

( ) ( ) ( ( ))

0

0

1

1 1 1

Page 28: ECE 178: Image Processing REVIEW · 2003-03-15 · March 13, 2003 1 ECE 178: Image Processing REVIEW Lecture #20 March 13, 2003

March 13, 2003 28

Example Problem

Which transformation should be applied in order to change the

histogram into h b t b bb( ) ( ) sin( )?= =3

2 2

π π

Page 29: ECE 178: Image Processing REVIEW · 2003-03-15 · March 13, 2003 1 ECE 178: Image Processing REVIEW Lecture #20 March 13, 2003

March 13, 2003 29

Median filtering

Replace f (x,y) with median [ f (x’ , y’) ](x’ , y’) E neighbourhood

• Useful in eliminating intensity spikes. ( salt & pepper noise)• Better at preserving edges.

Example:

10101010 20202020 20202020

20202020 15151515 20202020

25252525 20202020 100100100100

( 10,15,20,20,20,20,20,25,100)

Median=20

So replace (15) with (20)

Page 30: ECE 178: Image Processing REVIEW · 2003-03-15 · March 13, 2003 1 ECE 178: Image Processing REVIEW Lecture #20 March 13, 2003

March 13, 2003 30

Invariant SignalsInvariant signals to a median filter:

ConstantMonotonically

increasing decreasing

length?

Page 31: ECE 178: Image Processing REVIEW · 2003-03-15 · March 13, 2003 1 ECE 178: Image Processing REVIEW Lecture #20 March 13, 2003

March 13, 2003 31

Homomorphic filtering(not discussed during class lecture)

Consider f (x,y) = i (x,y) . r (x,y)

Illumination Reflectance

Now

So cannot operate on individual components directly

Let

Let

Let

ℑ ≠ ℑ

= = +ℑ = ℑ + ℑ

= + = = += ℑ + ℑ′ = ℑ ′ = ℑ

− −

− −

{ ( , )} { . }

( , ) ln ( , ) ln ( , ) ln ( , )

{ ( , )} {ln } {ln }

( , ) ; ( , )

( , ) { } { }

( , ) { } ; ( , ) { }

f x y i r

z x y f x y i x y r x y

z x y i r

Z u v I R S u v HZ HI HR

s x y HI HR

i x y HI r x y HR

1 1

1 1

Page 32: ECE 178: Image Processing REVIEW · 2003-03-15 · March 13, 2003 1 ECE 178: Image Processing REVIEW Lecture #20 March 13, 2003

March 13, 2003 32

IMAGE COMPRESSION

Week VIII-IX

Page 33: ECE 178: Image Processing REVIEW · 2003-03-15 · March 13, 2003 1 ECE 178: Image Processing REVIEW Lecture #20 March 13, 2003

March 13, 2003 33

Image compression

Objective: To reduce the amount of data required to represent an image.

Important in data storage and transmission• Progressive transmission of images (internet, www)• Video coding (HDTV, Teleconferencing)• Digital libraries and image databases

•Medical imaging•Satellite images

Page 34: ECE 178: Image Processing REVIEW · 2003-03-15 · March 13, 2003 1 ECE 178: Image Processing REVIEW Lecture #20 March 13, 2003

March 13, 2003 34

IMAGE COMPRESSION

! Data redundancy

! Self-information and Entropy

! Error-free and lossy compression

! Huffman coding, Arithmetic coding

! Predictive coding

! Transform coding

Page 35: ECE 178: Image Processing REVIEW · 2003-03-15 · March 13, 2003 1 ECE 178: Image Processing REVIEW Lecture #20 March 13, 2003

March 13, 2003 35

Video Coding

! Motion compensation

! H.261, MPEG-1 and MPEG-2

Page 36: ECE 178: Image Processing REVIEW · 2003-03-15 · March 13, 2003 1 ECE 178: Image Processing REVIEW Lecture #20 March 13, 2003

March 13, 2003 36

The End