Introduction to Digital Image
Processing
Dr.S.Deepa
Assistant Professor
SRM Institute of Science and Technology
[email protected]
Outline
► Definition
► Image Sampling and Quantization
► Types of Digital Images
► Stages in Digital Image processing
► Applications
2
Digital Image
► A digital image is a representation of a two-dimensional
image as a finite set of digital values, called picture
elements or pixels.
► Pixel values typically represent gray levels, colours ,
heights, opacities etc.
► Digitization implies that a digital image is an approximation
of a real scene.
► Common image formats include black and white images,
grayscale images and RGB images.
3
Digital Image Processing
► Digital Image Processing means processing
digital image by means of a digital
computer.
► It uses computer algorithms, in order to get
enhanced image to extract some useful
information.
4
Image Acquisition Process
5
Introduction
► What is Digital Image Processing?
Digital Image
— a two-dimensional function f ( x, y )
x and y are spatial coordinates
The amplitude of f is called intensity or gray level at the point (x, y)
Digital Image Processing
— process digital images by means of computer, it covers low-, mid-, and high-level
processes
low-level: inputs and outputs are images
mid-level: outputs are attributes extracted from input images
high-level: an ensemble of recognition of individual objects
Pixel
— the elements of a digital image
6
A Simple Image Formation Model
f ( x, y ) i ( x, y )r ( x, y )
f ( x, y ) : intensity at the point (x, y)
i( x, y ) : illumination at the point (x, y)
(the amount of source illumination incident on the scene)
r ( x, y ) : reflectance/transmissivity at the point (x, y)
(the amount of illumination reflected/transmitted by the object)
where 0 < i ( x, y ) < and 0 < r ( x, y) < 1
7
Some Typical Ranges of Reflectance
► Reflectance
0.01 for black velvet
0.65 for stainless steel
0.80 for flat-white wall paint
0.90 for silver-plated metal
0.93 for snow 8
Image Sampling and Quantization
► The sampling rate determines the spatial resolution of the
digitized image, while the quantization level determines the
number of grey levels in the digitized image.
► Hence in order to create an image which is digital, we
need to covert continuous data into digital form. There are
two steps in which it is done:
Sampling
Quantization
9
Image Sampling and
Quantization
Digitizing the
amplitude
values
Digitizing the
coordinate
values
10
Image Sampling and Quantization
11
Representing Digital Images
► Therepresentation of an M×N numerical
array as
f (0, 0) f (0,1) ... f (0, N 1)
f (1, 0) f (1,1) ... f (1, N 1)
f ( x, y )
... ... ... ...
f ( M 1, 0) f ( M 1,1) ... f ( M 1, N 1)
12
Representing Digital Images
► Therepresentation of an M×N numerical
array as
a0,0 a0,1 ... a0, N 1
a a1,1 ... a1, N 1
A 1,0
... ... ... ...
aM 1,0 aM 1,1 ... aM 1, N 1
13
Representing Digital Images
► Therepresentation of an M×N numerical
array in MATLAB
f (1,1) f (1, 2) ... f (1, N )
f (2,1) f (2, 2) ... f (2, N )
f ( x, y )
... ... ... ...
f ( M ,1) f ( M , 2) ... f (M , N )
14
Types of Digital Images
► Intensity image or monochrome image: Each pixel
corresponds to light intensity normally represented in gray
scale.
► Color image or RGB image: Each pixel contains a vector
representing red, green and blue components.
► Binary image or black and white image: Each pixel
contains one bit, 1 represents white and 0 represents
black.
15
Image Resolution
► Resolution refers to the number of pixels in an image. The
amount of resolution required depends on the amount of
details we are interested in. We will now take a look at
Image and Intensity Resolution of a digital image.
► Spatial resolution: It is a measure of the smallest
discernible detail in an image. Vision specialists state it
with dots (pixels) per unit distance, graphic designers state
it with dots per inch (dpi).
► Intensity Level Resolution: It refers to the number of
intensity levels used to represent the image. The more
intensity levels used, the finer the level of detail
discernable in an image. Intensity level resolution is usually
given in terms of the number of bits used to store each
intensity level. 16
17
18
Representing Digital Images
► Discrete intensity interval [0, L-1], L=2k
► The number b of bits required to store a M × N
digitized image
b=M×N×k
19
20
21
22
Key Stages in Digital Image Processing
Image Morphological
Restoration Processing
Image
Segmentation
Enhancement
Image Object
Acquisition Recognition
Representation
Problem Domain
& Description
Colour Image Image
Processing Compression 23
Key Stages in Digital Image Processing:
Image Aquisition
Image Morphological
Restoration Processing
Image
Segmentation
Enhancement
Image Object
Acquisition Recognition
Representation
Problem Domain
& Description
Colour Image Image
Processing Compression 24
25
Key Stages in Digital Image Processing:
Image Enhancement
Images taken from Gonzalez & Woods, Digital Image Processing (2002)
Image Morphological
Restoration Processing
Image
Segmentation
Enhancement
Image Object
Acquisition Recognition
Representation
Problem Domain
& Description
Colour Image Image
Processing Compression 26
27
► Image enhancement is the procedure of
improving the quality and information
content of original data before processing.
► For example, you can remove noise,
sharpen, or brighten an image, making it
easier to identify key features.
28
Here are some useful examples and methods of image
enhancement:
► Filtering with morphological operators
► Histogram equalization
► Noise removal using a Wiener filter
► Linear contrast adjustment
► Median filtering
► Unsharp mask filtering
► Contrast-limited adaptive histogram equalization (CLAHE)
► Decorrelation stretch
29
Correcting nonuniform illumination with morphological
operators.
Enhancing grayscale images with histogram equalization.
30
Key Stages in Digital Image Processing:
Image Restoration
Images taken from Gonzalez & Woods, Digital Image Processing (2002)
Image Morphological
Restoration Processing
Image
Segmentation
Enhancement
Image Object
Acquisition Recognition
Representation
Problem Domain
& Description
Colour Image Image
Processing Compression 31
Image Restoration
► To restore extremely blurred or degraded
image. Images blurred due to many factors
like relative motion between camera and a
moving car (eg. Image of a speeding car).
► Inversefilter, Wiener filter & Lucy-
Richardson filters are used to restore
images.
32
33
Key Stages in Digital Image Processing:
Morphological Processing
Images taken from Gonzalez & Woods, Digital Image Processing (2002)
Image Morphological
Restoration Processing
Image
Segmentation
Enhancement
Image Object
Acquisition Recognition
Representation
Problem Domain
& Description
Colour Image Image
Processing Compression 34
► Morphology is a broad set of image processing operations
that process images based on shapes. Morphological
operations apply a structuring element to an input image,
creating an output image of the same size.
► The most basic morphological operations are dilation and
erosion. Dilation adds pixels to the boundaries of objects
in an image, while erosion removes pixels on object
boundaries.
35
Dilation
Erosion
36
37
Key Stages in Digital Image Processing:
Segmentation
Images taken from Gonzalez & Woods, Digital Image Processing (2002)
Image Morphological
Restoration Processing
Image
Segmentation
Enhancement
Image Object
Acquisition Recognition
Representation
Problem Domain
& Description
Colour Image Image
Processing Compression 38
39
Types of Segmentation
► Thresholding Segmentation.
► Edge-Based Segmentation.
► Region-Based Segmentation.
► Watershed Segmentation.
► Clustering-
Based Segmentation Algorithms.
► Neural Networks for Segmentation.
https://www.mathworks.com/discovery/image
-segmentation.html
40
Key Stages in Digital Image Processing:
Object Recognition
Images taken from Gonzalez & Woods, Digital Image Processing (2002)
Image Morphological
Restoration Processing
Image
Segmentation
Enhancement
Image Object
Acquisition Recognition
Representation
Problem Domain
& Description
Colour Image Image
Processing Compression 41
42
► https://www.mathworks.com/solutions/imag
e-video-processing/object-recognition.html
43
Key Stages in Digital Image Processing:
Representation & Description
Images taken from Gonzalez & Woods, Digital Image Processing (2002)
Image Morphological
Restoration Processing
Image
Segmentation
Enhancement
Image Object
Acquisition Recognition
Representation
Problem Domain
& Description
Colour Image Image
Processing Compression 44
45
46
Key Stages in Digital Image Processing:
Image Compression
Image Morphological
Restoration Processing
Image
Segmentation
Enhancement
Image Object
Acquisition Recognition
Representation
Problem Domain
& Description
Colour Image Image
Processing Compression 47
48
Key Stages in Digital Image Processing:
Colour Image Processing
Image Morphological
Restoration Processing
Image
Segmentation
Enhancement
Image Object
Acquisition Recognition
Representation
Problem Domain
& Description
Colour Image Image
Processing Compression 49
50
51
52
53
54
55
Applications
&
Research Topics
56
Document Handling
57
Signature Verification
58
Biometrics
59
Fingerprint Verification /
Identification
60
Object Recognition
61
Object Recognition Research
reference view 1 reference view 2
novel view recognized
62
Indexing into Databases
► Shape content
63
Indexing into Databases
(cont’d)
► Color, texture
64
Target Recognition
► Department of Defense (Army, Airforce,
Navy)
65
Interpretation of Aerial
Photography
Interpretation of aerial photography is a problem domain in both
computer vision and registration.
66
Autonomous Vehicles
► Land, Underwater, Space
67
Traffic Monitoring
68
Face Detection
69
Face Recognition
70
Facial Expression Recognition
71
Hand Gesture Recognition
► Smart Human-Computer User Interfaces
► Sign Language Recognition
72
Human Activity Recognition
73
Medical Applications
► skin cancer breast cancer
74
Morphing
75
Inserting Artificial Objects into a Scene
76
Companies In this Field In India
► Sarnoff Corporation
► Kritikal Solutions
► National Instruments
► GE Laboratories
► Ittiam, Bangalore
► Interra Systems, Noida
► Yahoo India (Multimedia Searching)
► nVidia Graphics, Pune (have high requirements)
► Microsoft research
► DRDO labs
► ISRO labs
►… 77
78
Neighborhood Operations in Images
79
Basic Relationships Between Pixels
► Neighborhood
► Adjacency
► Connectivity
► Paths
► Regions and boundaries
80
Basic Relationships Between Pixels
► Neighbors of a pixel p at coordinates (x,y)
4-neighbors of p, denoted by N4(p):
(x-1, y), (x+1, y), (x,y-1), and (x, y+1).
4 diagonal neighbors of p, denoted by ND(p):
(x-1, y-1), (x+1, y+1), (x+1,y-1), and (x-1, y+1).
8 neighbors of p, denoted N8(p)
N8(p) = N4(p) U ND(p)
81
Basic Relationships Between Pixels
► Adjacency
Let V be the set of intensity values
4-adjacency: Two pixels p and q with values from V are
4-adjacent if q is in the set N4(p).
8-adjacency: Two pixels p and q with values from V are
8-adjacent if q is in the set N8(p).
82
Basic Relationships Between Pixels
► Adjacency
Let V be the set of intensity values
m-adjacency: Two pixels p and q with values from V are
m-adjacent if
(i) q is in the set N4(p), or
(ii) q is in the set ND(p) and the set N4(p) ∩ N4(p) has no pixels whose
values are from V.
83
Basic Relationships Between Pixels
► Path
A (digital) path (or curve) from pixel p with coordinates (x0, y0) to pixel
q with coordinates (xn, yn) is a sequence of distinct pixels with
coordinates
(x0, y0), (x1, y1), …, (xn, yn)
Where (xi, yi) and (xi-1, yi-1) are adjacent for 1 ≤ i ≤ n.
Here n is the length of the path.
If (x0, y0) = (xn, yn), the path is closed path.
We can define 4-, 8-, and m-paths based on the type of adjacency
used.
84
Examples: Adjacency and Path
V = {1, 2}
0 1 1 0 1 1 0 1 1
0 2 0 0 2 0 0 2 0
0 0 1 0 0 1 0 0 1
85
Examples: Adjacency and Path
V = {1, 2}
0 1 1 0 1 1 0 1 1
0 2 0 0 2 0 0 2 0
0 0 1 0 0 1 0 0 1
8-adjacent
86
Examples: Adjacency and Path
V = {1, 2}
0 1 1 0 1 1 0 1 1
0 2 0 0 2 0 0 2 0
0 0 1 0 0 1 0 0 1
8-adjacent m-adjacent
87
Examples: Adjacency and Path
V = {1, 2}
0 1 1
1,1 1,2 1,3 0 1 1 0 1 1
0 2 0
2,1 2,2 2,3 0 2 0 0 2 0
0 0 1
3,1 3,2 3,3 0 0 1 0 0 1
8-adjacent m-adjacent
The 8-path from (1,3) to (3,3): The m-path from (1,3) to (3,3):
(i) (1,3), (1,2), (2,2), (3,3) (1,3), (1,2), (2,2), (3,3)
(ii) (1,3), (2,2), (3,3)
88
Basic Relationships Between Pixels
► Connected in S
Let S represent a subset of pixels in an image. Two pixels
p with coordinates (x0, y0) and q with coordinates (xn, yn)
are said to be connected in S if there exists a path
(x0, y0), (x1, y1), …, (xn, yn)
Where i, 0 i n, ( xi , yi ) S
89
Basic Relationships Between Pixels
Let S represent a subset of pixels in an image
► For every pixel p in S, the set of pixels in S that are connected to p is
called a connected component of S.
► If S has only one connected component, then S is called Connected
Set.
► We call R a region of the image if R is a connected set
► Two regions, Ri and Rj are said to be adjacent if their union forms a
connected set.
► Regions that are not to be adjacent are said to be disjoint.
90
Basic Relationships Between Pixels
► Boundary (or border)
The boundary of the region R is the set of pixels in the region that
have one or more neighbors that are not in R.
If R happens to be an entire image, then its boundary is defined as the
set of pixels in the first and last rows and columns of the image.
► Foreground and background
An image contains K disjoint regions, Rk, k = 1, 2, …, K. Let Ru denote
the union of all the K regions, and let (Ru)c denote its complement.
All the points in Ru is called foreground;
All the points in (Ru)c is called background.
91
Distance Measures
► Given pixels p, q and z with coordinates (x, y), (s, t),
(u, v) respectively, the distance function D has
following properties:
a. D(p, q) ≥ 0 [D(p, q) = 0, iff p = q]
b. D(p, q) = D(q, p)
c. D(p, z) ≤ D(p, q) + D(q, z)
92
Distance Measures
The following are the different Distance measures:
a. Euclidean Distance :
De(p, q) = [(x-s)2 + (y-t)2]1/2
b. City Block Distance:
D4(p, q) = |x-s| + |y-t|
c. Chess Board Distance:
D8(p, q) = max(|x-s|, |y-t|)
93
Introduction to Mathematical Operations in
DIP
► Array vs. Matrix Operation
a11 a12 b11 b12
A B
a21 a22
Array
product b21 b22
operator
a11b11 a12b12
A .* B Array product
a21b21 a22b22
Matrix
product
operator a11b11 a12b21 a11b12 a12b22 Matrix product
A*B
a b a b a b
21 11 22 21 21 12 22 22 a b
94
Arithmetic Operations
► Arithmetic operations between images are array
operations. The four arithmetic operations are denoted
as
s(x,y) = f(x,y) + g(x,y)
d(x,y) = f(x,y) – g(x,y)
p(x,y) = f(x,y) × g(x,y)
v(x,y) = f(x,y) ÷ g(x,y)
95
Example: Addition of Noisy Images for Noise Reduction
Noiseless image: f(x,y)
Noise: n(x,y) (at every pair of coordinates (x,y), the noise is uncorrelated
and has zero average value)
Corrupted image: g(x,y)
g(x,y) = f(x,y) + n(x,y)
Reducing the noise by adding a set of noisy images, {gi(x,y)}
K
1
g ( x, y )
K
g ( x, y )
i 1
i
96
97
An Example of Image Subtraction: Mask Mode Radiography
Mask h(x,y): an X-ray image of a region of a patient’s body
Live images f(x,y): X-ray images captured at TV rates after injection of
the contrast medium
Enhanced detail g(x,y)
g(x,y) = f(x,y) - h(x,y)
The procedure gives a movie showing how the contrast medium
propagates through the various arteries in the area being observed.
98
99
An Example of Image Multiplication
100
Set and Logical Operations
101
Set and Logical Operations
► Let A be the elements of a gray-scale image
The elements of A are triplets of the form (x, y, z), where
x and y are spatial coordinates and z denotes the intensity
at the point (x, y).
A {( x, y, z ) | z f ( x, y )}
► The complement of A is denoted Ac
Ac {( x, y, K z ) | ( x, y, z ) A}
K 2k 1; k is the number of intensity bits used to represent z
102
Set and Logical Operations
► The union of two gray-scale images (sets) A and B is
defined as the set
A B {max(a, b) | a A, b B}
z
103
Set and Logical Operations
104
Set and Logical Operations
105
Spatial Operations
► Single-pixel operations
Alter the values of an image’s pixels based on the intensity.
s T ( z)
e.g.,
106
Spatial Operations
► Neighborhood operations
The value of this pixel is
determined by a specified
operation involving the pixels in
the input image with coordinates
in Sxy
107
Spatial Operations
► Neighborhood operations
108
Geometric Spatial Transformations
► Geometric transformation (rubber-sheet transformation)
— A spatial transformation of coordinates
( x, y ) T {(v, w)}
— intensity interpolation that assigns intensity values to the spatially
transformed pixels.
► Affine transform
t11 t12 0
x y 1 v w 1 t21 t22 0
t31 t32 1
109
110
Image Registration
► Input and output images are available but the
transformation function is unknown.
Goal: estimate the transformation function and use it to
register the two images.
► One of the principal approaches for image registration is
to use tie points (also called control points)
The corresponding points are known precisely in the
input and output (reference) images.
111
Image Registration
► A simple model based on bilinear approximation:
x c1v c2 w c3vw c4
y c5v c6 w c7 vw c8
Where (v, w) and ( x, y ) are the coordinates of
tie points in the input and reference images.
112
Image Registration
113
Image Transform
► A particularly important class of 2-D linear transforms,
denoted T(u, v)
M 1 N 1
T (u , v) f ( x, y )r ( x, y, u , v)
x 0 y 0
where f ( x, y ) is the input image,
r ( x, y, u , v ) is the forward transformation ker nel ,
variables u and v are the transform variables,
u = 0, 1, 2, ..., M-1 and v = 0, 1, ..., N-1.
114
Image Transform
► Given T(u, v), the original image f(x, y) can be recoverd
using the inverse tranformation of T(u, v).
M 1 N 1
f ( x, y ) T (u , v) s ( x, y, u , v)
u 0 v 0
where s ( x, y, u, v) is the inverse transformation ker nel ,
x = 0, 1, 2, ..., M-1 and y = 0, 1, ..., N-1.
115
Image Transform
116
Example: Image Denoising by Using DCT Transform
117
Forward Transform Kernel
M 1 N 1
T (u , v) f ( x, y )r ( x, y , u , v )
x 0 y 0
The kernel r ( x, y, u, v) is said to be SEPERABLE if
r ( x, y, u , v) r1 ( x, u )r2 ( y, v )
In addition, the kernel is said to be SYMMETRIC if
r1 ( x, u ) is functionally equal to r2 ( y, v ), so that
r ( x, y, u , v) r1 ( x, u )r1 ( y, u )
118
The Kernels for 2-D Fourier Transform
The forward kernel
j 2 ( ux / M vy / N )
r ( x, y , u , v ) e
Where j = 1
The inverse kernel
1 j 2 (ux / M vy / N )
s ( x, y , u , v ) e
MN
119
2-D Fourier Transform
M 1 N 1
T (u , v) f ( x, y )e j 2 ( ux / M vy / N )
x 0 y 0
M 1 N 1
1
f ( x, y )
MN
T (u, v)e
u 0 v 0
j 2 ( ux / M vy / N )
120
Probabilistic Methods
Let zi , i 0, 1, 2, ..., L -1, denote the values of all possible intensities
in an M N digital image. The probability, p( zk ), of intensity level
zk occurring in a given image is estimated as
nk
p ( zk ) ,
MN
where nk is the number of times that intensity zk occurs in the image.
L 1
p( z ) 1
k 0
k
The mean (average) intensity is given by
L 1
m= z
k 0
k p( zk )
121
Probabilistic Methods
The variance of the intensities is given by
L 1
2 = ( z k m) 2 p ( z k )
k 0
The n th moment of the intensity variable z is
L 1
un ( z ) = k
( z
k 0
m) n
p( z k )
122
Example: Comparison of Standard Deviation
Values
14.3 31.6 49.2
123