Download Image (and Video) Processing and Coding

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the work of artificial intelligence, which forms the content of this project

Document related concepts
no text concepts found
Transcript
Image (and Video) Coding and
Processing
Lecture 5: Point Operations
Wade Trappe
Lecture Overview

Today’s lecture will focus on:
– Point-Operations: These are operations that basically do not
involve any explicit spatial memory
– Examples:




Contrast stretching
Noise Clipping
Histogram Equalization
Note: Most of this talk is borrowed from a lecture by my colleague Min Wu at UMD
Point Operations / Intensity Transform
v
Basic idea
– “Zero memory” operation

each output only depend on the
input intensity at the point
– Map a given gray or color level u
to a new level v, i.e. v = f ( u )
output gray level

– Doesn’t bring in new info.
input gray level
u
– But can improve visual appearance or make features easier to detect

Example-1: Color coordinate transformations
– RGB of each pixel  luminance + chrominance components  etc.

Example-2: Scalar quantization
– quantize pixel luminance/color with fewer bits
Gamma Characteristics & Gamma
Correction

Non-linearity in CRT display
L’

L’ = a U
– Voltage U vs. Displayed luminance L’

 L’ ~ U
where  = 2.0 ~ 2.5

Use preprocessing to compensate -distortion
– U~L
1/ 
U
– log(L) gives similar compensation curve to correction

~ logL
1/
~L
good for many practical applications
– Camera may have L
with c = 1.0-1.7

U
1/c
capturing distortion
Power-law transformations are also useful for
general purpose contrast manipulation
L
Typical Types of Gray-level Transformation
Figure is from slides at Gonzalez/ Woods DIP book website (Chapter 3)
Example: Negative Transformation
Figure is from slides at Gonzalez/ Woods DIP book website (Chapter 3)
Example: Log Transformation
Figure is from slides at Gonzalez/ Woods DIP book website (Chapter 3)
Example: Effects of Different Gammas
L0
( “vectors” sample image
from Matlab )
L02.2
L01/2.2
Luminance Histogram

Represents the relative frequency of occurrence of the various
gray levels in the image
– For each gray level, count the # of pixels having that level
– Can group nearby levels to form a big bin & count #pixels in it
( From Matlab Image Toolbox Guide Fig.10-4 )
Luminance Histogram (cont’d)

Interpretation
– Treat pixel values as i.i.d random variables
– Histogram is an estimate of the probability distribution of the r.v.

“Unbalanced” histogram doesn’t fully utilize the dynamic range
– Low contrast image ~ histogram concentrating in a narrow
luminance range
– Under-exposed image ~ histogram concentrating on the dark side
– Over-exposed image ~ histogram concentrating on the bright side

Balanced histogram gives more pleasant look and reveals rich
content
Example: Balanced and Unbalanced
Histograms
Figure is from slides at Gonzalez/ Woods DIP book website (Chapter 3)
Contrast Stretching for Low-Contrast
Images
Stretch the over-concentrated graylevels in histogram via a
nonlinear mapping
– Piece-wise linear stretching function
– Assign slopes of the stretching region to be greater than 1
v
output gray level

o



a
b
input gray level
u
Contrast Stretching: Example
original
stretched
Clipping & Thresholding
– Special case of contrast stretching with
==0
– Useful for noise reduction when
interested signal
mostly lie in range [a,b]

Thresholding
– Special case of clipping with a = b = T
– Useful for binarization of scanned binary
images

documents, signatures, fingerprints
output gray level
Clipping
o

a
b
input gray level
u
v
output gray level

v
o
T
input gray level
u
Examples of Histogram Equalization
( From Matlab Image
Toolbox Guide
Fig.10-10 & 10-11 )
Equalization Example (cont’d)
original
equalized
Histogram Equalization

Goal: Map the luminance of each pixel to a new value such that the
output image has approximately uniform distribution of gray levels

To find what mapping to use: first model pixels as i.i.d. r.v.
– How to generate r.v. with desired distribution?  Match c.d.f

Want to transform one r.v. with certain p.d.f. to a new r.v. with
uniform p.d.f.
– For r.v. U with continuous p.d.f. over [0,1], construct a new r.v. V by
a monotonically increasing mapping v(u) such that
u
v  FU (u)  P[U  u]   pU ( x)dx
0
– Can show V is uniformly distributed over [0,1]  FV(v) = v

FV(v) = P(V v) = P( FU(u) v)
= P( U  F-1U(v) ) = FU( F-1U(v) ) = v
– For u in discrete prob. distribution, the output v will be approximately
uniform
How to Do Histogram Equalization?
Approach: map input luminance u to the corresponding v
– v will be approximately uniform for u with discrete prob. distribution
b/c all pixels in one bin are mapped to a new bin (no splitting)

P(V<=v)
P(U<=u)
1
1
Fu0 
c.d.f
c.d.f
Fu0 

u0 
o
gray level
v0
255 u
o
gray level
255 v
Histogram Equalization Algorithm
v   pU ( xi )
u
v
xi  u
Uniform
quantization
v’
pU(xi)
pU ( xi ) 
h( xi )
L 1
 h( x )
i 0
for i  0, ..., L - 1
i
v   pU ( xi )
xi  u
 v  vmin

v'  Round 
( L  1)
 1  vmin

v [0,1]
• Map discrete v [0,1] to
v’ {0,…,L-1}
• vmin is the smallest
positive value of v
• vmin  0
1  L-1
Histogram Equalization: A Mini-Example
– xi
0
1
2
3
4
5
6
7
– p(xi) 0.1
0.2
0.4
0.15
0.1
0.05
0
0
– v
0.1
0.3
0.7
0.85
0.95
1.0
1.0
1.0
– v’
0
[1.5] [4.7] [5.8]
[6.6]
7
7
7
7
7
7
7
0
2
5
6
(L=8)
(L-1)/(1-vmin) = 7.78
Summary: Contrast Stretching vs. Histogram
Eq.
What are in common?

What are different?
v
output gray level




o
P(V<=v)
b
input gray level
u
P(U<=u)
1
1
Fu0 
c.d.f
c.d.f
Fu0 

u0 
v0
o
a
gray level
255 v
o
gray level
255 u
Generalization of Histogram Equalization

Histogram specification
– Want output v with specified p.d.f. pV(v)
– Use uniformly distributed r.v. W as an
intermediate step
-1
 W = FU(u) = FV(v)  V = F V (FU(u)
)
– Approximation in the intermediate step
needed for discrete r.v.
 W1 = FU(u) , W2 = FV(v)  take v
s.t. its w2 is equal to or just above
w1
Figure is from slides at Gonzalez/
Woods DIP book website (Chapter 3)
For Next Time…

Next time we will focus on quantization
Related documents