Outline For Image Processing

scatteredpoppyseedAI and Robotics

Nov 6, 2013 (3 years and 10 months ago)

69 views

Outline For Image Processing


A Digital Image Processing System


Image Representation and Formats


1. Sensing, Sampling, Quantization


2. Gray level and Color Images


3. Raw, RGB, Tiff, BMP, JPG, GIF, (JP2)


Image Transform and Filtering


Histogram, Enhancement and
Restoration


Segmentation, Edge Detection, Thinning


Image Data Compression


Image Pattern Analysis (Recognition and Interpretation)



[1] R.C. Gonzalez, R.E. Woods, S.L. Eddins, Digital Image Processing
Using MATLAB, Pearson Prentice Hall, 2004

[2] R.C. Gonzalez and R.E. Woods, Digital Image Processing, Prentice
-
Hall,
2002+


Examples of Digital Images

Image Processing System

Digital Image Analysis System


A 2D image is nothing but a mapping from a region to a
matrix


A Digital Image Processing System consists of



1. Acquisition


scanners, digital camera, ultrasound,


X
-
ray, MRI, PMT


2. Storage


HD (120GB), CD (700MB), DVD (4.7GB),


Flash memory (
512MB~4GB
),
3.5” floppy diskettes,


i
-
pod, …


3. Processing Unit


PC, Workstation, PC
-
cluster


4. Communication


telephone lines, cable, wireless, …


5. Display


LCD monitor, laser printer, laser
-
jet printer

Gray Level and
C
o
l
o
r

Images

Pixel
s

in a Gray Level Image

A Gray Level Image is a Matrix


f(0,0)

f(0,1) f(0,2) …. ….
f(0,n
-
1)


f(1,0) f(1,1) f(1,2) …. …. f(1,n
-
1)


. . .


. . .


. . .


f(m
-
1,0)

f(m
-
1,1) f(m
-
1,2) … ….
f(m
-
1,n
-
1)


An image of
m

rows,
n

columns, f(i,j) is in [0,255]

Gray and Color Image Data



0, 64, 144, 196,


225, 169, 100, 36

(
R
,
G
,
B
) for a
c
o
l
o
r

pixel

Red


(255, 0, 0)

Green



( 0, 255, 0)

Blue



( 0, 0, 255)

Cyan


( 0,255, 255)

Magenta



(255, 0, 255)

Yellow



(255, 255, 0)

Gray


(128, 128, 128)

Image Representation

(Gray/
C
o
l
o
r
)


A gray level image is usually represented by an
M by N matrix whose elements are all integers in
{0,1, …, 255} corresponding to brightness scales


A color image is usually represented by 3 M x N
matrices whose elements are all integers in
{0,1, …, 255} corresponding to 3 primary
primitives of colors such as
Red
,

Green
,
Blue

Red
,
Green
,
Blue,
C
o
l
o
r

Images

Sensing
,
Sampling
,
Quantization


A 2D digital image is formed by a

sensor
which maps a region to a matrix


Digitization of the spatial coordinates (
x,y
)
in an image function
f(x,y)
is called
Sampling


Digitization of the amplitude of an image
function
f(x,y)
is called
Quantization

Gray Level

and Color Images

Image File Formats (1/2)

The American National Standards Institute (ANSI) sets standards
for voluntary use in US. One of the most popular computer
standards set by ANSI is the
A
merican
S
tandard
C
ode for
I
nformation
I
nterchange (
ASCII
) which guarantees all computers
can exchange text in ASCII format


BMP



Bitmap format from Microsoft uses Raster
-
based 1~24
-
bit
colors (RGB) without compression or allows a run
-
length
compression for 1~8
-
bit color depths


GIF


Graphics Interchange Format from CompuServe Inc. is
Raster
-
based which uses 1~8
-
bit colors with resolutions up to
64,000*64,000 LZW (Lempel
-
Ziv
-
Welch, 1984) lossless
compression with the compression ratio up to 2:1



Some Image File Formats (2/2)


Raw



Raw image format uses a 8
-
bit unsigned character to store a pixel value of
0~255 for a Raster
-
scanned gray image without compression. An R by C raw image
occupies R*C bytes or 8RC bits of storage space



TIFF


Tagged Image File Format from Aldus and Microsoft was designed for
importing image into desktop publishing programs and quickly became accepted by a
variety of software developers as a standard. Its built
-
in flexibility is both a blessing
and a curse, because it can be customized in a variety of ways to fit a programmer’s
needs. However, the flexibility of the format resulted in many versions of TIFF, some
of which are so different that they are incompatible with each other



JPEG



Joint Photographic Experts Group format is the most popular lossy method
of compression, and the current standard whose file name ends with “.jpg” which
allows Raster
-
based 8
-
bit grayscale or 24
-
bit color images with the compression ratio
more than 16:1 and preserves the fidelity of the reconstructed image



EPS



Encapsulated PostScript language format from Adulus Systems uses Metafile
of 1~24
-
bit colors with compression



JPEG 2000


Image Transforms and Filtering


Feature Extraction


find all ellipses in an
image


Bandwidth Reduction


eliminate the low
contrast “coefficients”


Data Reduction


eliminate insignificant
coefficients of Discrete Cosine Transform
(DCT), Wavelet Transform (WT)


Smooth filtering can get rid of noisy
signals


Discrete Cosine Transform


Partition an image into nonoverlapping 8 by
8 blocks, and apply a 2d DCT on each
block to get DC and AC coefficients.

Most of the high frequency coefficients
become insignificant, only the DC term
and some low frequency AC coefficients
are significant.

Fundamental for JPEG Image Compression

Discrete Cosine Transform (DCT)


X: a block of 8x8 pixels

A=Q
8
: 8x8 DCT matrix as


shown above

Y=AXA
t

DCT on a 8x8 Block

Quantized DCT Coefficients

Wavelet Transform


Haar, Daubechie’s Four, 9/7, 5/3
transforms


9/7, 5/3 transforms was selected as the
lossy and lossless coding standards for
JPEG2000


A Comparison of JPEG and JPEG2000
shows that the latter is slightly better
than the former, however, to replace the
current image.
jpg

by image.
jp2

needs
time

Daubechies’ 4 Wavelet Transform


X: an image


W: Haar transform shown above with c
i
= 1/
√2


Y=P*W*(X*W
t
*Q), where



P and Q are permutation matrices

A Block and Its Daub4 Transform


Mean

and

Median
Filtering


X1 X2 X3


X4 X0 X5


X6 X7 X8


Replace the X0 by the

mean

of X0~X8 is

called “mean filtering”


X1 X2 X3


X4 X0 X5


X6 X7 X8


Replace the X0 by the

median

of X0~X8 is

called “median filtering”


Example of Median Filtering

Image and Its Histogram

0
50
100
150
200
250
0
2
4
6
8
10
12
Histogram of Image Lenna
Enhancement and Restoration


The goal of
enhancement

is to accentuate
certain features for subsequent analysis or
image display. The enhancement process
is usually done interactively


The
restoration

is a process that attempts
to reconstruct or recover an image that
has been degraded by using some
unknown phenomenon


Segmentation and Edge Detection


Segmentation

is basically a process of
pixel classification: the picture is
segmented into subsets by assigning the
individual pixels into classes



Edge Detection

is to find the pixels whose
gray values or colors being abruptly
changed


Image, Histogram, Thresholding

0
50
100
150
200
250
0
20
40
60
80
100
120
Histograms of NA.raw (Green), TA.raw (Red)
Binarization by Thresholding

Edge Detection

-
1
-
2
-
1


0 0 0


X


1 2 1


-
1 0 1

-
2 0 2


Y

-
1 0 1

Large (|X|+|Y|)


Edge

Thinning and Contour Tracing


Thinning

is to find the skeleton of an image
which is commonly used for Optical Character
Recognition (OCR) and Fingerprint matching



Contour tracing

is usually used to locate the
boundaries of an image which can be used in
feature extraction for shape discrimination


Image

Edge, Skeleton,
Contour

Image Data Compression


The purpose is to save storage space and to
reduce the transmission time of information.
Note that it requires 6 mega bits to store a 24
-
bit
color image of size 512 by 512. It takes 6
seconds to download such an image via an
ADSL (Asymmetric Digital Subscriber Line) with
the rate 1 mega bits per second and more than
12 seconds to upload the same image


Note that 1 byte = 8 bits, 3 bytes = 24 bits

Lenna Image vs. Compressed
Lenna