ece 178: image processing review · 2003-03-15 · march 13, 2003 1 ece 178: image processing...
TRANSCRIPT
![Page 1: ECE 178: Image Processing REVIEW · 2003-03-15 · March 13, 2003 1 ECE 178: Image Processing REVIEW Lecture #20 March 13, 2003](https://reader033.vdocument.in/reader033/viewer/2022050110/5f47da3380e61a3af0100113/html5/thumbnails/1.jpg)
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](https://reader033.vdocument.in/reader033/viewer/2022050110/5f47da3380e61a3af0100113/html5/thumbnails/2.jpg)
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](https://reader033.vdocument.in/reader033/viewer/2022050110/5f47da3380e61a3af0100113/html5/thumbnails/3.jpg)
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](https://reader033.vdocument.in/reader033/viewer/2022050110/5f47da3380e61a3af0100113/html5/thumbnails/4.jpg)
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](https://reader033.vdocument.in/reader033/viewer/2022050110/5f47da3380e61a3af0100113/html5/thumbnails/5.jpg)
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](https://reader033.vdocument.in/reader033/viewer/2022050110/5f47da3380e61a3af0100113/html5/thumbnails/6.jpg)
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](https://reader033.vdocument.in/reader033/viewer/2022050110/5f47da3380e61a3af0100113/html5/thumbnails/7.jpg)
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](https://reader033.vdocument.in/reader033/viewer/2022050110/5f47da3380e61a3af0100113/html5/thumbnails/8.jpg)
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](https://reader033.vdocument.in/reader033/viewer/2022050110/5f47da3380e61a3af0100113/html5/thumbnails/9.jpg)
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](https://reader033.vdocument.in/reader033/viewer/2022050110/5f47da3380e61a3af0100113/html5/thumbnails/10.jpg)
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](https://reader033.vdocument.in/reader033/viewer/2022050110/5f47da3380e61a3af0100113/html5/thumbnails/11.jpg)
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](https://reader033.vdocument.in/reader033/viewer/2022050110/5f47da3380e61a3af0100113/html5/thumbnails/12.jpg)
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](https://reader033.vdocument.in/reader033/viewer/2022050110/5f47da3380e61a3af0100113/html5/thumbnails/13.jpg)
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](https://reader033.vdocument.in/reader033/viewer/2022050110/5f47da3380e61a3af0100113/html5/thumbnails/14.jpg)
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](https://reader033.vdocument.in/reader033/viewer/2022050110/5f47da3380e61a3af0100113/html5/thumbnails/15.jpg)
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](https://reader033.vdocument.in/reader033/viewer/2022050110/5f47da3380e61a3af0100113/html5/thumbnails/16.jpg)
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](https://reader033.vdocument.in/reader033/viewer/2022050110/5f47da3380e61a3af0100113/html5/thumbnails/17.jpg)
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](https://reader033.vdocument.in/reader033/viewer/2022050110/5f47da3380e61a3af0100113/html5/thumbnails/18.jpg)
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](https://reader033.vdocument.in/reader033/viewer/2022050110/5f47da3380e61a3af0100113/html5/thumbnails/19.jpg)
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](https://reader033.vdocument.in/reader033/viewer/2022050110/5f47da3380e61a3af0100113/html5/thumbnails/20.jpg)
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](https://reader033.vdocument.in/reader033/viewer/2022050110/5f47da3380e61a3af0100113/html5/thumbnails/21.jpg)
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](https://reader033.vdocument.in/reader033/viewer/2022050110/5f47da3380e61a3af0100113/html5/thumbnails/22.jpg)
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](https://reader033.vdocument.in/reader033/viewer/2022050110/5f47da3380e61a3af0100113/html5/thumbnails/23.jpg)
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](https://reader033.vdocument.in/reader033/viewer/2022050110/5f47da3380e61a3af0100113/html5/thumbnails/24.jpg)
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](https://reader033.vdocument.in/reader033/viewer/2022050110/5f47da3380e61a3af0100113/html5/thumbnails/25.jpg)
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](https://reader033.vdocument.in/reader033/viewer/2022050110/5f47da3380e61a3af0100113/html5/thumbnails/26.jpg)
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](https://reader033.vdocument.in/reader033/viewer/2022050110/5f47da3380e61a3af0100113/html5/thumbnails/27.jpg)
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](https://reader033.vdocument.in/reader033/viewer/2022050110/5f47da3380e61a3af0100113/html5/thumbnails/28.jpg)
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](https://reader033.vdocument.in/reader033/viewer/2022050110/5f47da3380e61a3af0100113/html5/thumbnails/29.jpg)
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](https://reader033.vdocument.in/reader033/viewer/2022050110/5f47da3380e61a3af0100113/html5/thumbnails/30.jpg)
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](https://reader033.vdocument.in/reader033/viewer/2022050110/5f47da3380e61a3af0100113/html5/thumbnails/31.jpg)
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](https://reader033.vdocument.in/reader033/viewer/2022050110/5f47da3380e61a3af0100113/html5/thumbnails/32.jpg)
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](https://reader033.vdocument.in/reader033/viewer/2022050110/5f47da3380e61a3af0100113/html5/thumbnails/33.jpg)
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](https://reader033.vdocument.in/reader033/viewer/2022050110/5f47da3380e61a3af0100113/html5/thumbnails/34.jpg)
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](https://reader033.vdocument.in/reader033/viewer/2022050110/5f47da3380e61a3af0100113/html5/thumbnails/35.jpg)
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](https://reader033.vdocument.in/reader033/viewer/2022050110/5f47da3380e61a3af0100113/html5/thumbnails/36.jpg)
March 13, 2003 36
The End