0% found this document useful (0 votes)
9 views179 pages

3 Chapter3

Chapter 3 discusses image enhancement techniques in the spatial domain, focusing on direct pixel manipulation to improve image quality for specific applications. It covers various methods such as contrast stretching, thresholding, and histogram equalization, explaining how these techniques can enhance visibility and detail in images. The chapter emphasizes the subjective nature of image quality evaluation and the importance of selecting appropriate enhancement methods based on the specific characteristics of the image.
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
9 views179 pages

3 Chapter3

Chapter 3 discusses image enhancement techniques in the spatial domain, focusing on direct pixel manipulation to improve image quality for specific applications. It covers various methods such as contrast stretching, thresholding, and histogram equalization, explaining how these techniques can enhance visibility and detail in images. The chapter emphasizes the subjective nature of image quality evaluation and the importance of selecting appropriate enhancement methods based on the specific characteristics of the image.
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd

Chapter 3:

Image Enhancement in
the Spatial Domain
Teacher: Ahsan Raza
Email : ahsan_raza@[Link]
Principle Objective of
Enhancement
 Process an image so that the result will be
more suitable than the original image for a
specific application.
 The suitableness is up to each application.
 A method which is quite useful for enhancing
an image may not necessarily be the best
approach for enhancing another images
2
2 domains
 Spatial Domain : (image plane)
 Techniques are based on direct manipulation of pixels in an
image
 Frequency Domain :
 Techniques are based on modifying the Fourier transform of
an image
 There are some enhancement techniques based on
various combinations of methods from these two
categories.
3
Introduction
Image Enhancement ?
• Enhance otherwise hidden information
• Filter important image features
• Discard unimportant image features
Spatial Domain ?
• Refers to the image plane (the ‘natural’ image)
• Direct image manipulation
Good images
 For human visual
 The visual evaluation of image quality is a highly subjective
process.
 It is hard to standardize the definition of a good image.
 For machine perception
 The evaluation task is easier.
 A good image is one which gives the best machine recognition
results.
 A certain amount of trial and error usually is required before
a particular image enhancement approach is selected.

5
Spatial Domain
 Procedures that operate
directly on pixels.
g(x,y) = T[f(x,y)]
where
 f(x,y) is the input image

 g(x,y) is the processed image

 T is an operator on f defined

over some neighborhood of


(x,y)

6
Assignment read about the r
dimensional image also sea
the 3D video

7
Transformations

Log Transformations

InvLog Log
Mask/Filter
 Neighborhood of a point (x,y)
can be defined by using a
(x,y) square/rectangular (common
used) or circular subimage
• area centered at (x,y)
 The center of the subimage is
moved from pixel to pixel
starting at the top of the
corner
9
Point Processing
 Neighborhood = 1x1 pixel
 g depends on only the value of f at (x,y)
 T = gray level (or intensity or mapping) transformation
function
s = T(r)
 Where

r = gray level of f(x,y)

s = gray level of g(x,y)
10
Contrast Stretching
 Produce higher contrast
than the original by
 darkening the levels
below m in the original
image
 Brightening the levels
above m in the original
image

11
Assignment: Get your image
in c++ get the log and see
the difference

12
Thresholding
 Produce a two-level
(binary) image

13
Mask Processing or Filter
 Neighborhood is bigger than 1x1 pixel
 Use a function of the values of f in a predefined
neighborhood of (x,y) to determine the value of g at
(x,y)
 The value of the mask coefficients determine the
nature of the process
 Used in techniques
 Image Sharpening
 Image Smoothing
14
3 basic gray-level
transformation functions
 Linear function
Negative
Output gray level, s

nth root

Negative and identity
transformations
Log
nth power  Logarithm function

Log and inverse-log
transformation

Identity Inverse Log


 Power-law function

nth power and nth root
transformations
Input gray level, r
15
Identity function
 Output intensities
Negative
Output gray level, s

nth root are identical to input


Log
intensities.
nth power
 Is included in the
graph only for
Identity Inverse Log
completeness.

Input gray level, r


16
Image Negatives
 An image with gray level in the
Negative range [0, L-1]
Output gray level, s

nth root where L = 2n ; n = 1, 2…


 Negative transformation :
Log
nth power s = L – 1 –r
 Reversing the intensity levels of
an image.
 Suitable for enhancing white or
Identity Inverse Log gray detail embedded in dark
regions of an image, especially
Input gray level, r
when the black area dominant in
size. 17
Log Transformations
s = c log (1+r)
Negative c is a constant
Output gray level, s


nth root and r  0
Log
 Log curve maps a narrow
nth power range of low gray-level values
in the input image into a
wider range of output levels.
 Used to expand the values of
Identity Inverse Log dark pixels in an image while
compressing the higher-level
values.
Input gray level, r
19
Log Transformations
 It compresses the dynamic range of images with
large variations in pixel values
 Example of image with dynamic range: Fourier
spectrum image
 It can have intensity range from 0 to 106 or higher.
 We can’t see the significant degree of detail as it
will be lost in the display.

20
Example of Logarithm
Image

Fourier Spectrum with Result after apply the


range = 0 to 1.5 x 106 log transformation with
c = 1, range = 0 to 6.2 21
Inverse Logarithm
Transformations
 Do opposite to the Log
Transformations
 Used to expand the values of high
pixels in an image while compressing
the darker-level values.

22
Power-Law
Transformations
s = cr
Output gray level, s

 c and  are positive constants


 Power-law curves with
fractional values of  map a
narrow range of dark input
values into a wider range of
output values, with the
opposite being true for higher
values of input levels.
 c =  = 1  Identity function
Input gray level, r
Plots of s = cr
 for various values of
23
Gamma correction
 Cathode ray tube (CRT)
devices have an intensity-
Monitor to-voltage response that
is a power function, with 
varying from 1.8 to 2.5
Gamma  = 2.5  The picture will become
correction darker.
 Gamma correction is done
Monitor
by preprocessing the
image before inputting it
to the monitor with s = cr1/
24
 =1/2.5 = 0.4
a b
Another example : MRI c d

(a) a magnetic resonance image of an


upper thoracic human spine with a
fracture dislocation and spinal cord
impingement
 The picture is predominately dark
 An expansion of gray levels are desirable 
needs  < 1
(b) result after power-law
transformation with  = 0.6, c=1
(c) transformation with  = 0.4
(best result)
(d) transformation with  = 0.3
(under acceptable level) 25
Effect of decreasing
gamma
 When the  is reduced too much, the
image begins to reduce contrast to
the point where the image started to
have very slight “wash-out” look,
especially in the background

26
a b
Another example c d
(a) image has a washed-out appearance,
it needs a compression of gray levels 
needs  > 1
(b) result after power-law
transformation with  = 3.0 (suitable)
(c) transformation with  = 4.0
(suitable)
(d) transformation with  = 5.0
(high contrast, the image has areas
that are too dark, some detail is lost)

27
Piecewise-Linear
Transformation Functions
 Advantage:
 The form of piecewise functions can be
arbitrarily complex
 Disadvantage:
 Their specification requires considerably
more user input
28
Contrast Stretching
 increase the dynamic range of
the gray levels in the image
 (b) a low-contrast image : result
from poor illumination, lack of
dynamic range in the imaging
sensor, or even wrong setting of
a lens aperture of image
acquisition
 (c) result of contrast stretching:
(r1,s1) = (rmin,0) and (r2,s2) =
(rmax,L-1)
 (d) result of thresholding 29
Gray-level slicing
 Highlighting a specific range of
gray levels in an image
 Display a high value of all gray
levels in the range of interest
and a low value for all other
gray levels
 (a) transformation highlights range
[A,B] of gray level and reduces all
others to a constant level
 (b) transformation highlights range
[A,B] but preserves all other levels

30
Bit-plane slicing
 Highlighting the contribution
made to total image
appearance by specific bits
One 8-bit byte Bit-plane 7  Suppose each pixel is
(most significant)
represented by 8 bits
 Higher-order bits contain the
majority of the visually
significant data
 Useful for analyzing the relative
Bit-plane 0 importance played by each bit
(least significant)
of the image

31
Example
 The (binary) image for bit-
plane 7 can be obtained
by processing the input
image with a thresholding
gray-level transformation.

Map all levels between 0 and
127 to 0

Map all levels between 129
and 255 to 255

An 8-bit fractal image


32
8 bit planes

Bit-plane 7 Bit-plane 6

Bit- Bit- Bit-


plane 5 plane 4 plane 3

Bit- Bit- Bit-


plane 2 plane 1 plane 0

33
Histogram Processing
 Histogram of a digital image with gray levels in
the range [0,L-1] is a discrete function

h(rk) = nk
 Where
 rk : the kth gray level
 nk : the number of pixels in the image having gray level r k
 h(rk) : histogram of a digital image with gray levels rk
34
Normalized Histogram
 dividing each of histogram at gray level rk by the total
number of pixels in the image, n

p(rk) = nk / n
 For k = 0,1,…,L-1
 p(rk) gives an estimate of the probability of occurrence of gray
level rk
 The sum of all components of a normalized histogram is
equal to 1
35
Histogram Processing
 Basic for numerous spatial domain
processing techniques
 Used effectively for image enhancement
 Information inherent in histograms also
is useful in image compression and
segmentation
36
h(rk) or p(rk)

Example rk

Dark image
Components of
histogram are
concentrated on
the low side of
the gray
Bright scale.
image
Components of
histogram are
concentrated on
the high side of37
Example
Low-contrast image
histogram is
narrow and
centered toward
the middle ofimage
High-contrast the
gray scale covers
histogram
broad range of the
gray scale and the
distribution of pixels
is not too far from
uniform, with very 38
Histogram Equalization
 As the low-contrast image’s histogram is narrow
and centered toward the middle of the gray
scale, if we distribute the histogram to a wider
range the quality of the image will be improved.
 We can do it by adjusting the probability
density function of the original histogram of the
image so that the probability spread equally

39
Histogram transformation
s s = T(r)
 Where 0  r  1
 T(r) satisfies
sk= T(rk)  (a). T(r) is single-valued
and monotonically
T(r) increasingly in the
interval 0  r  1
 (b). 0  T(r)  1 for
0r1
0 r 1 r
k
40
2 Conditions of T(r)
 Single-valued (one-to-one relationship) guarantees
that the inverse transformation will exist
 Monotonicity condition preserves the increasing
order from black to white in the output image thus it
won’t cause a negative image
 0  T(r)  1 for 0  r  1 guarantees that the output
gray levels will be in the same range as the input
levels.
 The inverse transformation from s back to r is
r = T -1(s) ;0s1 41
Probability Density
Function
 The gray levels in an image may be
viewed as random variables in the
interval [0,1]
 PDF is one of the fundamental
descriptors of a random variable

42
Random Variables
 Random variables often are a source
of confusion when first encountered.
 This need not be so, as the concept of
a random variable is in principle quite
simple.

43
Random Variables
 A random variable, x, is a real-valued function defined
on the events of the sample space, S.
 In words, for each event in S, there is a real number
that is the corresponding value of the random
variable.
 Viewed yet another way, a random variable maps
each event in S onto the real [Link]
 That is it. A simple, straightforward definition.
44
Random Variables
 Part of the confusion often found in
connection with random variables is
the fact that they are functions.
functions
 The notation also is partly responsible
for the problem.

45
Random Variables
 In other words, although typically the notation
used to denote a random variable is as we
have shown it here, x, or some other
appropriate variable,
 to be strictly formal, a random variable should
be written as a function x(·) where the
argument is a specific event being considered.
46
Random Variables
 However, this is seldom done, and, in our
experience, trying to be formal by using
function notation complicates the issue more
than the clarity it introduces.
 Thus, we will opt for the less formal notation,
with the warning that it must be keep clearly
in mind that random variables are functions.
47
Random Variables
 Example:
 Consider the experiment of drawing a single card
from a standard deck of 52 cards.
 Suppose that we define the following events. A: a
heart; B: a spade; C: a club; and D: a diamond, so
that S = {A, B, C, D}.
 A random variable is easily defined by letting x =
1 represent event A, x = 2 represent event B, and
so on.
48
Random Variables
 As a second illustration,
 consider the experiment of throwing a single die and observing
the value of the up-face.
 We can define a random variable as the numerical outcome of
the experiment (i.e., 1 through 6), but there are many other
possibilities.
 For example, a binary random variable could be defined simply
by letting x = 0 represent the event that the outcome of throw
is an even number and
x = 1 otherwise.
49
Random Variables
 Note
 the important fact in the examples just
given that the probability of the events
have not changed;
 all a random variable does is map events
onto the real line.

50
Random Variables
 Thus far we have been concerned with
random variables whose values are discrete.
 To handle continuous random variables we
need some additional tools.
 In the discrete case, the probabilities of
events are numbers between 0 and 1.

51
Random Variables
 When dealing with continuous quantities
(which are not denumerable) we can no
longer talk about the "probability of an
event" because that probability is zero.
 This is not as unfamiliar as it may seem.

52
Random Variables
 For example,
 given a continuous function we know that the
area of the function between two limits a and b
is the integral from a to b of the function.
 However, the area at a point is zero because
the integral from,say, a to a is zero.
 We are dealing with the same concept in the
case of continuous random variables.
53
Random Variables
 Thus, instead of talking about the probability of a specific
value, we talk about the probability that the value of the
random variable lies in a specified range.
 In particular, we are interested in the probability that the
random variable is less than or equal to (or, similarly,
greater than or equal to) a specified constant a.
 We write this as

F(a) = P(x  a)
54
Random Variables
 If this function is given for all values of a (i.e.,   <
a < ), then the values of random variable x have
been defined.
 Function F is called the cumulative probability
distribution function or simply the cumulative
distribution function (cdf).
 The shortened term distribution function also is
used.
55
Random Variables
 Observe that the notation we have used makes no
distinction between a random variable and the
values it assumes.
 If confusion is likely to arise, we can use more
formal notation in which we let capital letters
denote the random variable and lowercase letters
denote its values.
 For example, the cdf using this notation is written as

FX(x) = P(X  x) 56
Random Variables
 When confusion is not likely, the cdf
often is written simply as F(x).
 This notation will be used in the
following discussion when speaking
generally about the cdf of a random
variable.
57
Random Variables
 Due to the fact that it is a probability,
the cdf has the following properties:

1. F(-) = 0
2. F() = 1
3. 0  F(x)  1
4. F(x1)  F(x2) if x1 < x2
5. P(x1 < x  x2) = F(x2) – F(x1)
6. F(x+) = F(x),

where x+ = x + , with  being a positive, infinitesimally small


58
number.
Random Variables
The probability density function
(pdf or shortly called density
function) of random variable x is
defined as the dF
derivative
(x) of the
p( x ) 
cdf: dx
59
Random Variables
The pdf satisfies the following properties:

60
Random Variables
 The preceding concepts are applicable to discrete random
variables.
 In this case, there is a finite no. of events and we talk
about probabilities, rather than probability density
functions.
 Integrals are replaced by summations and, sometimes, the
random variables are subscripted.
 For example, in the case of a discrete variable with N
possible values we would denote the probabilities by P(xi),
i=1, 2,…, N.
61
Random Variables
 If a random variable x is transformed by a monotonic
transformation function T(x) to produce a new random
variable y,
 the probability density function of y can be obtained
from knowledge of T(x) and the probability density
function of x, as follows:
dx
p y ( y )  px ( x )
dy
where the vertical bars signify the absolute 62
Random Variables
 A function T(x) is monotonically increasing if
T(x1) < T(x2) for x1 < x2, and
 A function T(x) is monotonically decreasing if
T(x1) > T(x2) for x1 < x2.
 The preceding equation is valid if T(x) is an
increasing or decreasing monotonic function.

63
Applied to Image
 Let
 pr(r) denote the PDF of random variable r
 ps (s) denote the PDF of random variable s
 If pr(r) and T(r) are known and T-1(s) satisfies condition
(a) then ps(s) can be obtained using a formula :

dr
p s (s)  p r (r)
ds 64
Applied to Image
The PDF of the transformed variable s
is determined by
the gray-level PDF of the input image
and by
the chosen transformation function
65
Transformation function
 A transformation function is a cumulative
distribution function (CDF) of random variable r
: r
s T ( r ) pr ( w )dw
0

where w is a dummy variable of


integration
Note: T(r)
Note: depends on
T(r) depends on 66
Cumulative
Distribution function
 CDF is an integral of a probability function
(always positive) is the area under the
function
 Thus, CDF is always single valued and
monotonically increasing
 Thus, CDF satisfies the condition (a)
 We can use CDF as a transformation function
67
Finding ps(s) from given T(r)
ds dT ( r )

dr dr
dr
d  
r
p s ( s )  pr ( r )
  pr ( w )dw  ds
dr  0 
1
 pr ( r )  pr ( r )
pr ( r )
1 where 0 s 1
Substitute and yield
68
ps(s)
 As ps(s) is a probability function, it must be zero
outside the interval [0,1] in this case because
its integral over all values of s must equal 1.
 Called ps(s) as a uniform probability density
function
 ps(s) is always a uniform, independent of the
form of pr(r)
69
r
s T ( r ) pr ( w )dw
0

yields
Ps(s)

a random variable 1

s characterized by
a uniform 0
70
s
Discrete
transformation function
 The probability of occurrence of gray level in an
image is approximated by
nk
pr ( rk )  where k  0 , 1, ..., L-1
n
 The discrete version kof transformation
sk T ( rk )  pr ( r j )
j 0
k nj
 where k  0 , 1, ..., L-1
j 0 n 71
Histogram Equalization
 Thus, an output image is obtained by mapping
each pixel with level rk in the input image into a
corresponding pixel with level sk in the output
image
 In discrete space, it cannot be proved in general
that this discrete transformation will produce the
discrete equivalent of a uniform probability density
function, which would be a uniform histogram
72
Example
before after Histogram
equalization

73
Example
before after Histogram
equalization

The quality is
not improved
much because
the original
image already
has a broaden
gray-level scale

74
Example
No. of pixels
6
2 3 3 2
5
4 2 4 3 4
3 2 3 5 3
2 4 2 4 2
1
Gray level
4x4 image
0 1 2 3 4 5 6 7 8 9
Gray scale = [0,9]
histogram
75
Gray
0 1 2 3 4 5 6 7 8 9
Level(j)
No. of
0 0 6 5 4 1 0 0 0 0
pixels
k

n
j 0
j 0 0 6 11 15 16 16 16 16 16

k nj 6 11 15 16 16 16 16 16
s 
j 0 n 0 0 / / / / / / / /
16 16 16 16 16 16 16 16
3.3 6.1 8.4
sx9 0 0 9 9 9 9 9
3 6 8
Example
No. of pixels
6
3 6 6 3
5
8 3 8 6 4
6 3 6 9 3
3 8 3 8 2
1
Output image
0 1 2 3 4 5 6 7 8 9
Gray scale = [0,9] Gray level
Histogram equalization
77
Note
 It is clearly seen that
 Histogram equalization distributes the gray level to reach
the maximum gray level (white) because the cumulative
distribution function equals 1 when
0  r  L-1
 If the cumulative numbers of gray levels are slightly
different, they will be mapped to little different or same
gray levels as we may have to approximate the processed
gray level of the output image to integer number
 Thus the discrete transformation function can’t guarantee
the one to one mapping relationship
78
Two Different Images-The Same
Histogram
Histogram Equalisation
Histogram Equalisation
Histogram Equalisation
Histogram Equalisation
Histogram Equalisation
Histogram Equalisation
Histogram Equalisation
Local Histogram
Equalisation
Local Histogram
Equalisation
Histogram Modification
Summary
Histogram Matching
(Specification)
 Histogram equalization has a disadvantage
which is that it can generate only one type of
output image.
 With Histogram Specification, we can specify
the shape of the histogram that we wish the
output image to have.
 It doesn’t have to be a uniform histogram
93
Consider the continuous domain

Let pr(r) denote continuous probability density


function of gray-level of input image, r
Let pz(z) denote desired (specified) continuous
probability density function of gray-level of output
image, z

Let s be a random variable with the property


r
s T ( r ) pr ( w )dw Histogram equalization
0

Where w is a dummy variable of integration


94
Next, we define a random variable z with the property
z
g ( z ) pz ( t )dt s Histogram equalization
0

Where t is a dummy variable of integration


thus
s = T(r) = G(z)

Therefore, z must satisfy the condition

z = G-1(s) = G-1[T(r)]

Assume G-1 exists and satisfies the condition (a) and (b)
We can map an input gray level r to output gray level z
95
Procedure Conclusion
1. Obtain the transformation function T(r) by
calculating the histogram equalization of
the input image r
s T ( r ) pr ( w )dw
0

2. Obtain the transformation function G(z) by


calculating histogram equalization of the
desired density function
z
G ( z ) pz ( t )dt s
0 96
Procedure Conclusion
3. Obtain the inversed transformation
function G-1
z = G-1(s) = G-1[T(r)]

4. Obtain the output image by applying the


processed gray-level from the inversed
transformation function to all the pixels in the
input image
97
Example
Assume an image has a gray level probability density function
pr(r) as shown.

Pr(r)   2r  2 ;0 r 1
pr ( r ) 
2  0 ; elsewhere

r
1
p
0
r ( w )dw 1

0 1 2 r 98
Example
We would like to apply the histogram specification with the
desired probability density function pz(z) as shown.
Pz(z)
 2z ;0 z 1
2 pz ( z ) 
 0 ; elsewhere
1 z

p
0
z ( w )dw 1
z
0 1 2 99
Step 1:
Obtain the transformation function T(r)
r
s=T(r)
s T ( r ) pr ( w )dw
0
1 r
(  2 w  2 )dw
One to one 0

mapping 2
 w  2 w
r

function 0

0 r  r 2  2r
1
100
Step 2:
Obtain the transformation function G(z)
z
z
G ( z ) ( 2 w )dw z 2
z 2
0
0

101
Step 3:
Obtain the inversed transformation function G-1
G ( z ) T ( r )
z 2  r 2  2r
z  2r  r 2

We can guarantee that 0  z 1 when 0  r 1


102
Discrete formulation
k
sk T ( rk )  pr ( r j )
j 0
k nj
 k 0 ,1,2 ,..., L  1
j 0 n
k
G ( z k )  pz ( z i ) sk k 0 ,1,2 ,..., L  1
i 0

z k G  1 T ( rk )
G  1 sk  k 0 ,1,2 ,..., L  1 103
Example

Image is dominated by large, dark


areas, resulting in a histogram
characterized by a large
Image of Mars moon concentration of pixels in pixels in
104
Image Equalization

Result image
after
histogram
Transformation function Histogram of the result
equalization
for histogram image
The histogram equalization doesn’t make the result image look better than the original
equalization
image. Consider the histogram of the result image, the net effect of this method is to map a
very narrow interval of dark pixels into the upper end of the gray scale of the output image.
As a consequence, the output image is light and has a washed-out appearance.
105
Solve the problem Histogram
Equalization
Since the problem with the
transformation function of the
histogram equalization was caused
by a large concentration of pixels in
the original image with levels near 0 Histogram
Specification
a reasonable approach is to modify
the histogram of that image so that
it does not have this property

106
Histogram Specification
 (1) the transformation
function G(z) obtained
from k
G ( z )  p ( z ) s
k z i k
i 0

k 0 ,1,2 ,..., L  1

 (2) the inverse


transformation G-1(s)
107
Result image and its
histogram

The output image’s


histogram
Notice that the output
After applied histogram’s low end has
Original image the histogram
shifted right toward the
lighter region of the gray
equalization 108
scale as desired.
Note
 Histogram specification is a trial-and-
error process
 There are no rules for specifying
histograms, and one must resort to
analysis on a case-by-case basis for
any given enhancement task.
109
Note
 Histogram processing methods are global
processing, in the sense that pixels are
modified by a transformation function based
on the gray-level content of an entire image.
 Sometimes, we may need to enhance details
over small areas in an image, which is called
a local enhancement.
110
a)Original image
(slightly blurred to
reduce noise)

Local Enhancement b) global histogram


equalization
(enhance noise &
slightly increase
contrast but the
construction is not
changed)
c) local histogram
equalization using
7x7 neighborhood
(a) (b) (c) (reveals the small
 define a square or rectangular neighborhood and move the squares
center inside
of this
area from pixel to pixel. larger ones of the
 original image.
at each location, the histogram of the points in the neighborhood is
computed and either histogram equalization or histogram specification
transformation function is obtained.
 another approach used to reduce computation is to utilize nonoverlapping
regions, but it usually produces an undesirable checkerboard effect. 111
Explain the result in c)
 Basically, the original image consists of many small
squares inside the larger dark ones.
 However, the small squares were too close in gray
level to the larger ones, and their sizes were too
small to influence global histogram equalization
significantly.
 So, when we use the local enhancement technique,
it reveals the small areas.
 Note also the finer noise texture is resulted by the
local processing using relatively small
neighborhoods. 112
Enhancement using
Arithmetic/Logic Operations
 Arithmetic/Logic operations perform
on pixel by pixel basis between two or
more images
 except NOT operation which perform
only on a single image

113
Logic Operations
 Logic operation performs on gray-level
images, the pixel values are processed as
binary numbers
 light represents a binary 1, and dark
represents a binary 0
 NOT operation = negative transformation
114
Example of AND Operation

original image AND image result of AND


mask operation
115
Example of OR Operation

original image OR image result of OR


mask operation
116
Image Subtraction

g(x,y) = f(x,y) – h(x,y)

 enhancement of the differences


between images
117
a b
c d
Image Subtraction
 a). original fractal image
 b). result of setting the four lower-
order bit planes to zero

refer to the bit-plane slicing

the higher planes contribute
significant detail

the lower planes contribute more to
fine detail

image b). is nearly identical visually to
image a), with a very slightly drop in
overall contrast due to less variability
of the gray-level values in the image.
 c). difference between a). and b).
(nearly black)
 d). histogram equalization of c).
(perform contrast stretching
transformation)
118
Mask mode radiography
 h(x,y) is the mask, an X-ray
image of a region of a patient’s
body captured by an intensified
TV camera (instead of traditional
X-ray film) located opposite an X-
ray source
 f(x,y) is an X-ray image taken
after injection a contrast medium
mask image an image (taken after into the patient’s bloodstream
injection of a contrast  images are captured at TV rates,
medium (iodine) into so the doctor can see how the
medium propagates through the
Note: the bloodstream) with various arteries in the area being
mask
• the background subtracted
is dark becauseout.
it observed (the effect of
doesn’t change much in both images. subtraction) in a movie showing
mode.
• the difference area is bright because 119
Note
 We may have to adjust the gray-scale of the subtracted image to
be [0, 255] (if 8-bit is used)
 first, find the minimum gray value of the subtracted image

 second, find the maximum gray value of the subtracted image

 set the minimum value to be zero and the maximum to be

255
 while the rest are adjusted according to the interval

[0, 255], by timing each value with 255/max


 Subtraction is also used in segmentation of moving pictures to
track the changes
 after subtract the sequenced images, what is left should be

the moving elements in the image, plus noise 120


Image Averaging
 consider a noisy image g(x,y) formed
by the addition of noise (x,y) to an
original image f(x,y)

g(x,y) = f(x,y) + (x,y)


121
Image Averaging
 if noise has zero mean and be
uncorrelated then it can be shown
thatgif( x, y ) = image formed by averaging
K different noisy images

K
1
g ( x, y ) 
K
 g ( x, y )
i 1
i

122
Image Averaging
 then
1 2
 2
g ( x, y )    ( x, y )
K
 2
g ( x, y ) , 2
 ( x, y ) = variances of g and 

if K increase, it indicates that the variability (noise) of the pixel


at each location (x,y) decreases.
123
Image Averaging
 thus
E{g ( x, y )}  f ( x, y )

E{g ( x, y )} = expected value of g


(output after averaging)

= original image f(x,y)


124
Image Averaging
 Note: the images gi(x,y) (noisy
images) must be registered (aligned)
in order to avoid the introduction of
blurring and other artifacts in the
output image.

125
a b
c d
Example e f

 a) original image
 b) image corrupted by
additive Gaussian noise with
zero mean and a standard
deviation of 64 gray levels.
 c). -f). results of averaging K
= 8, 16, 64 and 128 noisy
images
126
Image Averaging Example
Spatial Filtering
 use filter (can also be called as
mask/kernel/template or window)
 the values in a filter subimage are referred
to as coefficients, rather than pixel.
 our focus will be on masks of odd sizes,
e.g. 3x3, 5x5,…

128
Spatial Masks
Low-pass Masks (Local
Averaging)
Spatial Filtering Process
 simply move the filter mask from point to point
in an image.
 at each point (x,y), the response of the filter at
that point is calculated using a predefined
relationship.
R w1 z1  w2 z 2  ...  wmn z mn
mn
 wi zi
i i
131
Linear Filtering
 Linear Filtering of an image f of size MxN filter
mask of size mxn is given by the expression
a b
g ( x, y )    w( s, t ) f ( x  s, y  t )
t  a t  b

where a = (m-1)/2 and b = (n-1)/2


To generate a complete filtered image this equation must be
applied for x = 0, 1, 2, … , M-1 and y = 0, 1, 2, … , N-1 132
Smoothing Spatial Filters
 used for blurring and for noise reduction
 blurring is used in preprocessing steps, such as
 removal of small details from an image prior to
object extraction
 bridging of small gaps in lines or curves

 noise reduction can be accomplished by blurring


with a linear filter and also by a nonlinear filter

133
Smoothing Linear Filters
 output is simply the average of the
pixels contained in the neighborhood of
the filter mask.
 called averaging filters or lowpass filters.

134
Smoothing Linear Filters
 replacing the value of every pixel in an image by
the average of the gray levels in the neighborhood
will reduce the “sharp” transitions in gray levels.
 sharp transitions
 random noise in the image
 edges of objects in the image
 thus, smoothing can reduce noises (desirable) and
blur edges (undesirable)

135
3x3 Smoothing Linear Filters

box filter weighted average


the center is the most important and other
pixels are inversely weighted as a function of
their distance from the center of the mask 136
Weighted average filter
 the basic strategy behind weighting the
center point the highest and then
reducing the value of the coefficients as
a function of increasing distance from the
origin is simply an attempt to reduce
blurring in the smoothing process.
137
General form : smoothing
mask
 filter of size mxn (m and n odd)
a b

  w( s, t ) f ( x  s, y  t )
g ( x, y )  s  at  b a b

  w( s, t )
s  a t  b

summation of all coefficient of the mask


138
a b
c d
Example e f

 a). original image 500x500 pixel


 b). - f). results of smoothing with
square averaging filter masks of size
n = 3, 5, 9, 15 and 35, respectively.
 Note:

big mask is used to eliminate small
objects from an image.

the size of the mask establishes the
relative size of the objects that will
be blended with the background .
139
Example

original image result after smoothing result of thresholding


with 15x15 averaging
we can see that the result after smoothing and thresholding, the
mask
remains are the largest and brightest objects in the image. 140
Order-Statistics Filters
(Nonlinear Filters)
 the response is based on ordering (ranking) the
pixels contained in the image area encompassed
by the filter
 example

median filter : R = median{zk |k = 1,2,…,n x n}

max filter : R = max{zk |k = 1,2,…,n x n}

min filter : R = min{zk |k = 1,2,…,n x n}
 note: n x nis the size of the mask
141
Median Filters
 replaces the value of a pixel by the median of the gray
levels in the neighborhood of that pixel (the original
value of the pixel is included in the computation of the
median)
 quite popular because for certain types of random
noise (impulse noise  salt and pepper noise)
noise , they
provide excellent noise-reduction capabilities,
capabilities with
considering less blurring than linear smoothing filters of
similar size.
142
Median Filtering
Median Filters
 forces the points with distinct gray levels to be
more like their neighbors.
 isolated clusters of pixels that are light or dark with
respect to their neighbors, and whose area is less
than n2/2 (one-half the filter area), are eliminated
by an n x n median filter.
 eliminated = forced to have the value equal the
median intensity of the neighbors.
 larger clusters are affected considerably less
145
Example : Median Filters

146
Sharpening Spatial Filters
 to highlight fine detail in an image
 or to enhance detail that has been
blurred, either in error or as a natural
effect of a particular method of image
acquisition.

147
Blurring vs. Sharpening
 as we know that blurring can be done in
spatial domain by pixel averaging in a
neighbors
 since averaging is analogous to integration
 thus, we can guess that the sharpening must
be accomplished by spatial differentiation.

148
Derivative operator
 the strength of the response of a derivative
operator is proportional to the degree of
discontinuity of the image at the point at which
the operator is applied.
 thus, image differentiation

enhances edges and other discontinuities (noise)

deemphasizes area with slowly varying gray-level
values.
149
First-order derivative
 a basic definition of the first-order
derivative of a one-dimensional
function f(x) is the difference
F(X f
)
 f ( x  1)  f ( x )
x
-1 1
X X+ 1 150
2nd order derivator wrt x-axis
F(X
)

X -1 X X+ 1
F(X)- F(X-1) F(X+1)- F(X) 1 -2 1

F(X+1)+F(X-1) – 2F(X)
151
Second-order derivative
 similarly, we define the second-order
derivative of a one-dimensional
function f(x) is the difference
2
 f
2
 f ( x  1)  f ( x  1)  2 f ( x )
x
1 -2 1
152
First and Second-order
derivative of f(x,y)
 when we consider an image function
of two variables, f(x,y), at which time
we will dealing with partial derivatives
along the two
f 
fspatial
( x, y ) axes.

f ( x, y ) f ( x, y )

Gradient operator xy x y
Laplacian operator  2
f ( x , y )  2
f ( x, y )
2
(linear operator)  f  2

x y 2 153
Discrete Form of Laplacian
2 f
from
2
 f ( x  1, y )  f ( x  1, y )  2 f ( x, y )
x
2 f
2
 f ( x, y  1)  f ( x, y  1)  2 f ( x, y )
y
yield,
2 f [ f ( x  1, y )  f ( x  1, y )
 f ( x, y  1)  f ( x, y  1)  4 f ( x, y )]
154
Result Laplacian mask

155
an extension of diagonal
neighbors

156
Other implementation of
Laplacian masks

give the same result, but we have to keep in mind that when
combining (add / subtract) a Laplacian-filtered image with
another image. 157
Effect of Laplacian Operator
 as it is a derivative operator,
 it highlights gray-level discontinuities in an image
 it deemphasizes regions with slowly varying gray
levels
 tends to produce images that have
 grayish edge lines and other discontinuities, all
superimposed on a dark,
 featureless background.
158
Correct the effect of
featureless background
 easily by adding the original and Laplacian
image.
 be careful with the Laplacian filter used
if the center coefficient of the
 f ( x, y )  2 f ( x, y ) Laplacian mask is negative
g ( x, y )  2
 f ( x , y )   f ( x, y )
if the center coefficient of the
Laplacian mask is positive

159
Example
 a). image of the North
pole of the moon
 b). Laplacian-filtered
image with
1 1 1
1 -8 1
 c). Laplacian
1 1image
1 scaled
for display purposes
 d). image enhanced by
addition with original
image
160
Mask of Laplacian +
addition
 to simply the computation, we can
create a mask which do both
operations, Laplacian Filter and
Addition the original image.

161
Mask of Laplacian +
addition
g ( x, y )  f ( x, y )  [ f ( x  1, y )  f ( x  1, y )
 f ( x, y  1)  f ( x, y  1)  4 f ( x, y )]
5 f ( x, y )  [ f ( x  1, y )  f ( x  1, y )
 f ( x, y  1)  f ( x, y  1)]

0 -1 0
-1 5 -1
0 -1 0
162
Example

163
 f ( x, y )  2 f ( x, y )
g ( x, y ) 
Note  f ( x , y )  2
f ( x, y )

0 -1 0 0 0 0 0 -1 0
-1 5 -1 = 0 1 0 + -1 4 -1
0 -1 0 0 0 0 0 -1 0

0 -1 0 0 0 0 0 -1 0
-1 9 -1 = 0 1 0 + -1 8 -1
0 -1 0 0 0 0 0 -1 0

164
Unsharp masking
f s ( x, y )  f ( x, y )  f ( x, y )

sharpened image
sharpened image =
= original
original image
image –– blurred
blurred
image
image
 to subtract a blurred version of an image
produces sharpening output image.

165
High-boost filtering
f hb ( x, y )  Af ( x, y )  f ( x, y )

f hb ( x, y ) ( A  1) f ( x, y )  f ( x, y ) f ( x, y )
( A  1) f ( x, y )  f s ( x, y )
 generalized form of Unsharp masking
 A1
166
High-boost filtering
f hb ( x, y ) ( A  1) f ( x, y )  f s ( x, y )
 if we use Laplacian filter to create sharpen
image fs(x,y) with addition of original image

 f ( x, y )  2 f ( x, y )
f s ( x, y )  2
 f ( x , y )   f ( x, y )
167
High-boost filtering
if the center coefficient of the
 yields Laplacian mask is negative

 Af ( x, y )  2 f ( x, y )
f hb ( x, y )  2
 Af ( x , y )   f ( x, y )

if the center coefficient of the


Laplacian mask is positive
168
High-boost Masks

 A1
 if A = 1, it becomes “standard” Laplacian
sharpening 169
Example

170
 f 
 Gx   x 
f    f 
Gradient Operator G
 y  
 y 

 first derivatives are implemented


using the magnitude of the gradient.
gradient
1
2 2
f mag (f ) [G  G ]x y
2

1 commonly approx.
  f  2  f  2 2

      
  x   y  
f  G x  G y
the magnitude becomes nonlinear
171
z1 z2 z3
z4 z5 z6
Gradient Mask z7 z8 z9

 simplest approximation, 2x2


G x ( z8  z5 ) and G y ( z 6  z5 )
1 1
2 2 2 2
f [G  G ]
x y
2
[( z8  z5 )  ( z6  z5 ) ] 2

f  z8  z5  z6  z5

172
z1 z2 z3
z4 z5 z6
Gradient Mask z7 z8 z9

 Roberts cross-gradient operators, 2x2


Gx ( z9  z5 ) and G y ( z8  z6 )
1 1
2 2 2 2
f [G  G ]
x y
2
[( z9  z5 )  ( z8  z6 ) ] 2

f  z9  z5  z8  z6

173
z1 z2 z3
z4 z5 z6
Gradient Mask z7 z8 z9

 Sobel operators, 3x3


Gx ( z7  2 z8  z9 )  ( z1  2 z 2  z3 )
G y ( z3  2 z6  z9 )  ( z1  2 z 4  z7 )
f  G x  G y
the weight value 2 is to
achieve smoothing by
giving more important to
the center point
174
Note
 the summation of coefficients in all
masks equals 0, indicating that they
would give a response of 0 in an area
of constant gray level.

175
Example

176
Spatial Enhancement
Methods
 want to sharpen the
original image and bring
out more skeletal detail.
 problems: narrow dynamic
range of gray level and
high noise content makes
the image difficult to
enhance

177
Spatial Enhancement
Methods
 solve :

1. Laplacian to highlight fine detail


2. gradient to enhance prominent edges
3. gray-level transformation to increase
the dynamic range of gray levels

178
179
180

You might also like