Download as pptx, pdf, or txt
Download as pptx, pdf, or txt
You are on page 1of 37

Histogram Processing

► Histogram Equalization

► Histogram Matching

► Local Histogram Processing

► Using Histogram Statistics for Image Enhancement

11/14/2022 1
Histogram Processing

Histogram h(rk )  nk
rk is the k th intensity value
nk is the number of pixels in the image with intensity rk

nk
Normalized histogram p( rk ) 
MN
nk : the number of pixels in the image of
size M  N with intensity rk

11/14/2022 2
11/14/2022 3
Histogram Equalization
The intensity levels in an image may be viewed as
random variables in the interval [0, L-1].
Let pr ( r ) and ps ( s) denote the probability density
function (PDF) of random variables r and s.

11/14/2022 4
Histogram Equalization

s  T (r ) 0  r  L 1

a. T(r) is a strictly monotonically increasing function


in the interval 0  r  L -1;
b. 0  T (r )  L -1 for 0  r  L -1.

11/14/2022 5
Histogram Equalization

s  T (r ) 0  r  L 1

a. T(r) is a strictly monotonically increasing function


in the interval 0  r  L -1;
b. 0  T (r )  L -1 for 0  r  L -1.

T (r ) is continuous and differentiable.

11/14/2022 6
Histogram Equalization

r
s  T (r )  ( L  1)  pr ( w)dw
0

ds dT ( r ) d  r 
dr

dr
 ( L  1)

dr  0
pr ( w) dw

 ( L  1) pr (r )

pr (r )dr pr (r ) pr (r ) 1
ps ( s )    
ds  ds  ( L  1) pr (r )  L  1
 
 dr 
11/14/2022 7
Example
Suppose that the (continuous) intensity values
in an image have the PDF

 2r
 2
, for 0  r  L-1
pr (r )   ( L  1)
 0, otherwise

Find the transformation function for equalizing


the image histogram.

11/14/2022 8
Example
r
s  T (r )  ( L  1)  pr ( w)dw
0

r 2w
 ( L  1)  2
dw
0 ( L  1)
2
r

L 1

11/14/2022 9
Histogram Equalization
Continuous case:
r
s  T (r )  ( L  1)  pr ( w)dw
0

Discrete values:
k
sk  T (rk )  ( L  1) pr (rj )
j 0
k nj L 1 k
 ( L  1)   nj k=0,1,..., L-1
j  0 MN MN j  0
11/14/2022 10
Example: Histogram Equalization
Suppose that a 3-bit image (L=8) of size 64 × 64 pixels (MN = 4096)
has the intensity distribution shown in following table.
Get the histogram equalization transformation function and give the
ps(sk) for each sk.

11/14/2022 11
Example: Histogram Equalization

0
s0  T (r0 )  7 pr (rj )  7  0.19  1.33 1
j 0
1
s1  T (r1 )  7 pr (rj )  7  (0.19  0.25)  3.08 3
j 0
s2  4.55  5 s3  5.67  6
s4  6.23  6 s5  6.65  7
s6  6.86  7 s7  7.00  7
11/14/2022 12
Example: Histogram Equalization

11/14/2022 13
11/14/2022 14
11/14/2022 15
Question
Is histogram equalization always good?

No

11/14/2022 16
Histogram Matching
Histogram matching (histogram specification)
— generate a processed image that has a specified histogram
Let pr ( r ) and pz ( z ) denote the continous probability
density functions of the variables r and z. p z ( z ) is the
specified probability density function.
Let s be the random variable with the probability
r
s  T ( r )  ( L  1)  pr ( w) dw
0

Define a random variable z with the probability


z
G ( z )  ( L  1)  pz (t ) dt  s
0
11/14/2022 17
Histogram Matching
r
s  T ( r )  ( L  1)  pr ( w)dw
0
z
G ( z )  ( L  1)  pz (t )dt  s
0

1
z  G (s)  G 1
T (r )

11/14/2022 18
Histogram Matching: Procedure

► Obtain pr(r) from the input image and then obtain the values of s
r
s  ( L  1)  pr ( w)dw
0

► Use the specified PDF and obtain the transformation function G(z)
z
G ( z )  ( L  1)  pz (t )dt  s
0

► Mapping from s to z

z  G 1 ( s )

11/14/2022 19
Histogram Matching: Example

Assuming continuous intensity values, suppose that an image has


the intensity PDF
 2r
 2
, for 0  r  L -1
pr (r )   ( L  1)
 0, otherwise

Find the transformation function that will produce an image
whose intensity PDF is
 3z 2
 3
, for 0  z  ( L -1)
pz ( z )   ( L  1)
 0, otherwise

11/14/2022 20
Histogram Matching: Example

Find the histogram equalization transformation for the input image


2
r 2w r r
s  T (r )  ( L  1)  pr ( w)dw  ( L  1)  dw 
0 0 ( L  1) 2
L 1

Find the histogram equalization transformation for the specified histogram

z z 3t 2 z3
G ( z )  ( L  1)  pz (t )dt  ( L  1)  3
dt  2
s
0 0 ( L  1) ( L  1)
The transformation function
2 1/3
2 1/3  2 r  2 1/3
z  ( L  1) s   ( L  1)    ( L  1)r 
 L  1 
11/14/2022 21
2 1/3
2 1/3  2 r  2 1/3
z  ( L  1) s   ( L  1)    ( L  1)r 
 L  1 

► Thus, squaring the value of each pixel in


the original image, multiplying the result
by and raising the product to the power
will yield an image 1 > 3 (L - 1), whose
intensity levels, z, have the specified PDF.

11/14/2022 22
Histogram Matching: Discrete Cases

► Obtain pr(rj) from the input image and then obtain the values of
sk, round the value to the integer range [0, L-1].
k
( L  1) k
sk  T (rk )  ( L  1) pr (rj )   nj
j 0 MN j 0
► Use the specified PDF and obtain the transformation function
G(zq), round the value to the integer range [0, L-1].
q
G ( zq )  ( L  1) pz ( zi )  sk
i 0

► Mapping from sk to zq
zq  G 1 ( sk )
11/14/2022 23
Example: Histogram Matching
Suppose that a 3-bit image (L=8) of size 64 × 64 pixels (MN = 4096)
has the intensity distribution shown in the following table (on the
left). Get the histogram transformation function and make the output
image with the specified histogram, listed in the table on the right.

11/14/2022 24
Example: Histogram Matching

Obtain the scaled histogram-equalized values,

s0  1, s1  3, s2  5, s3  6, s4  7,
s5  7, s6  7, s7  7.
Compute all the values of the transformation function G,
0
G ( z0 )  7 pz ( z j )  0.00  0
j 0

G ( z1 )  0.00 0 G( z2 )  0.00  0
G ( z3 )  1.05 1 G( z4 )  2.45  2
G ( z5 )  4.55  5 G ( z6 )  5.95  6
G ( z7 )  7.00  7

11/14/2022 25
Example: Histogram Matching

Obtain the scaled histogram-equalized values,

s0  1, s1  3, s2  5, s3  6, s4  7,
s5  7, s6  7, s7  7.
Compute all the values of the transformation function G,
0
G ( z0 )  7 pz ( z j )  0.00  0
j 0

G ( z1 )  0.00 0 G( z2 )  0.00  0
G ( z3 )  1.05 1 s0 G( z4 )  2.45  2 s1
G ( z5 )  4.55  5 s2 G ( z6 )  5.95  6 s3
G ( z7 )  7.00  7 s4 s5 s 6 s 7

11/14/2022 26
Example: Histogram Matching

s0  1, s1  3, s2  5, s3  6, s4  7,
s5  7, s6  7, s7  7.

rk
0
1
2
3
4
5
6 11/14/2022 27

7
Example: Histogram Matching
rk  zq
03
1 4
25
36
47
57
67
77
11/14/2022 28
Example: Histogram Matching

11/14/2022 29
Example: Histogram Matching

11/14/2022 30
Example: Histogram Matching

11/14/2022 31
Example: Histogram Matching

11/14/2022 32
Local Histogram Processing
Define a neighborhood and move its center from pixel to pixel

At each location, the histogram of the points in the


neighborhood is computed. Either histogram equalization or
histogram specification transformation function is obtained

Map the intensity of the pixel centered in the neighborhood

Move to the next location and repeat the procedure

11/14/2022 33
Local Histogram Processing: Example

11/14/2022 34
Using Histogram Statistics for Image
Enhancement
Average Intensity L 1
1 M 1 N 1

m   ri p (ri ) 
MN
  f ( x, y )
x 0 y 0
i 0
L 1
un (r )   (ri  m) n p( ri )
i 0

Variance L 1
1 M 1 N 1
  u2 (r )   (ri  m)    f ( x, y )  m 
2 2 2
p(ri ) 
i 0
MN x 0 y 0

11/14/2022 35
Using Histogram Statistics for Image
Enhancement

Local average intensity


L 1
msxy   ri psxy (ri )
i 0

sxy denotes a neighborhood

Local variance
L 1
 s2xy   (ri  msxy ) 2 psxy (ri )
i 0

11/14/2022 36
Using Histogram Statistics for Image
Enhancement: Example
 E  f ( x, y ), if msxy  k0 mG and k1 G   sxy  k 2 G
g ( x, y )  
 f ( x, y ), otherwise

mG : global mean;  G : global standard deviation


k0  0.4; k1  0.02; k2  0.4; E  4

11/14/2022 37

You might also like