You are on page 1of 48

Lec 2 – Intensity Transformation

and Image Filtering in Spatial


Domain
Mustafa Elattar

1
Image Enhancement

● The principal objective of enhancement

○ to process an image so that the result is more suitable than the


original image for a specific application.
● Enhancement methods

○ Spatial Domain (This Lecture)


■ based on direct manipulation of pixels in an image
○ Frequency Domain (Next Lecture)
■ based on modifying the Fourier transform of an image
● The viewer is the ultimate judge of how well of a particular method
works.

CS451 – Digital Image Processing Mustafa Elattar 2


Outline

● Background
● Some basic gray level transformations
● Histogram processing
● Enhancement using arithmetic/logic operations
● Basics of spatial filtering
● Smoothing spatial filters
● Sharpening spatial filters
● Combining spatial enhancement methods

CS451 – Digital Image Processing Mustafa Elattar 3


Background

● Spatial domain methods operate directly on image pixels

g(x, y)= T[f (x, y)]

● T operates only for one pixel


s =T(r)
○ Mapping

○ Contrast Stretching

○ Thresholding

○ Binary Image

CS451 – Digital Image Processing Mustafa Elattar 4


Background

CS451 – Digital Image Processing Mustafa Elattar 5


Background

● T operates with neighboring pixels

○ Mask (filter, kernel, template, window)

CS451 – Digital Image Processing Mustafa Elattar 6


Background (Convolution)

CS451 – Digital Image Processing Mustafa Elattar 7


Background (Convolution)

CS451 – Digital Image Processing Mustafa Elattar 8


Background (Basic Gray Level Transformations)

CS451 – Digital Image Processing Mustafa Elattar 9


Negative Transformation

s = (L - 1) - r

CS451 – Digital Image Processing Mustafa Elattar 10


Negative Transformation

S = (L - 1) - r

CS451 – Digital Image Processing Mustafa Elattar 11


Log Transformation

s = c log (1+r)

CS451 – Digital Image Processing Mustafa Elattar 12


Power-Law Transformation

s = c r𝛄

CS451 – Digital Image Processing Mustafa Elattar 13


Power-Law Transformation

CS451 – Digital Image Processing Mustafa Elattar 14


Power-Law Transformation

CS451 – Digital Image Processing Mustafa Elattar 15


Piecewise-Linear Transformation Functions

● Contrast Stretching

CS451 – Digital Image Processing Mustafa Elattar 16


Piecewise-Linear Transformation Functions

● Gray-level slicing

CS451 – Digital Image Processing Mustafa Elattar 17


Piecewise-Linear Transformation Functions

● Gray-level slicing

CS451 – Digital Image Processing Mustafa Elattar 18


Piecewise-Linear Transformation Functions

● Bit-plane slicing is a technique that highlights the contribution made


by a specific bit and each biplane is a binary image.

CS451 – Digital Image Processing Mustafa Elattar 19


Histogram Mathematical Notation

● I: image,
● Coordinates: x and y
● Intensity at x and y: I(x,y)
● the histogram h, as h(i) indicating that intensity i, appears h(i) times in the
image.

CS451 – Digital Image Processing Mustafa Elattar 20


A simple image and its histogram

CS451 – Digital Image Processing Mustafa Elattar 21


Histogram Processing

h(rk) = nk

CS451 – Digital Image Processing Mustafa Elattar 22


Histogram Processing

CS451 – Digital Image Processing Mustafa Elattar 23


Histogram Equalization

● The idea is to spread out the histogram so that it


makes full use of the dynamic range of the image.
● Transformation Function that will generate a nice
or useful image
● f to make the histogram of the new image, J, as
uniform as possible, we call this histogram
equalization.
s = T(r), 0 ≤ r ≤ 1
○ Conditions:
■ T(r) is single valued and monotonically
increasing
■ 0 ≤ T(r) ≤ 1 for 0 ≤ r ≤ 1
● Reversible??
r = T−1(s), 0 ≤ s ≤ 1

CS451 – Digital Image Processing Mustafa Elattar 24


Histogram Equalization

Cumulative Distribution Function (CDF)


● This encodes the fraction of pixels with an intensity that is equal to or
less than a specific value.
● If h is a histogram and C is a CDF, then h(i) indicates the number of
pixels with intensity of i, while,

indicates the fraction of pixels with intensity equal or less than i,


assuming the image has N pixels.

CS451 – Digital Image Processing Mustafa Elattar 25


Histogram Equalization

● g is the histogram of J, and D its CDF.

● If there are k intensity levels in an image, then we want


g=(N/k, N/k, …), and D=(1/k, 2/k,3/k, …).
● This means that we want D(i) = i/k.
● Notice that C(i) = D(f(i)).
● That is, all the pixels in I that have an intensity less than or equal to i
will have an intensity less than or equal to f(i) in J (since f is
monotonic, if j<i, f(j) < f(i)).

● Putting these together, we have D(f(i))=f(i)/k=C(i), so f(i) = kC(i).

CS451 – Digital Image Processing Mustafa Elattar 26


Enhancement using Arithmetic/Logic Operations

● Performed on a pixel by pixel basis between two or more images

● Logic Operations

○ AND
○ OR
○ NOT
● Arithmetic Operations

○ Subtraction
○ Averaging

CS451 – Digital Image Processing Mustafa Elattar 27


Enhancement using Arithmetic/Logic Operations

CS451 – Digital Image Processing Mustafa Elattar 28


Enhancement using Arithmetic/Logic Operations

CS451 – Digital Image Processing Mustafa Elattar 29


Enhancement using Arithmetic/Logic Operations

CS451 – Digital Image Processing Mustafa Elattar 30


Enhancement using Arithmetic/Logic Operations

CS451 – Digital Image Processing Mustafa Elattar 31


Basics of Spatial Filtering

● Mask

○ filter, kernel, template, window

CS451 – Digital Image Processing Mustafa Elattar 32


CS451 – Digital Image Processing Mustafa Elattar 33
Smoothing Spatial Filtering

● Smoothing filters are used for

○ blurring
○ noise reduction
● Smoothing linear filters also called averaging filter or lowpass filter

CS451 – Digital Image Processing Mustafa Elattar 34


Smoothing Spatial Filtering

CS451 – Digital Image Processing Mustafa Elattar 35


Smoothing Spatial Filtering

● Non-linear filters

○ Median filter
■ example
■ unsorted (60,20,15,23,35,47,78,53,65)
■ sorted (15,20,23,35,47,53,60,65,78)
■ the median is 47
○ Max filter
○ Min filter

CS451 – Digital Image Processing Mustafa Elattar 36


Smoothing Spatial Filtering (Median)

CS451 – Digital Image Processing Mustafa Elattar 37


Sharpening Spatial Filtering

● Sharpening Spatial filters are used to

○ highlight fine detail


○ enhance detail that has been blurred
● First-order derivative

● Second-order derivative

CS451 – Digital Image Processing Mustafa Elattar 38


Sharpening Spatial Filtering

CS451 – Digital Image Processing Mustafa Elattar 39


Sharpening Spatial Filtering (Second Order Derivatives)

● The Laplacian operator

CS451 – Digital Image Processing Mustafa Elattar 40


Sharpening Spatial Filtering (Second Order Derivatives)

● Filters

CS451 – Digital Image Processing Mustafa Elattar 41


Sharpening Spatial Filtering (Second Order Derivatives)

● Composite
Laplacian
Mask

CS451 – Digital Image Processing Mustafa Elattar 42


Sharpening Spatial Filtering (Second Order Derivatives)

● Filters

CS451 – Digital Image Processing Mustafa Elattar 43


Sharpening Spatial Filtering (First Order Derivatives)

● The Gradient

CS451 – Digital Image Processing Mustafa Elattar 44


Sharpening Spatial Filtering (First Order Derivatives)

● The Gradient

CS451 – Digital Image Processing Mustafa Elattar 45


Sharpening Spatial Filtering (First Order Derivatives)

CS451 – Digital Image Processing Mustafa Elattar 46


Sharpening Spatial Filtering (First Order Derivatives)

CS451 – Digital Image Processing Mustafa Elattar 47


Combining Spatial Enhancement Methods

CS451 – Digital Image Processing Mustafa Elattar 48

You might also like