Digital Image Processing: Unitary Transforms - Duong Anh Duc present about Unitary Transforms; Energy conservation with unitary transforms; Karhunen-Loeve transform; Optimum energy concentration by KL transform; Basis images and eigenimages; Sirovich and Kirby method; Gender recognition using eigenfaces.
Trang 1Digital Image Processing
Unitary Transforms
Trang 2Unitary Transforms
Sort samples f(x,y) in an MxN image (or a rectangular block in the image) into colunm vector of length MN
Compute transform coefficients
where A is a matrix of size MNxMN
The transform A is unitary, iff
If A is real-valued, i.e., A 1 =A*, transform is
„orthonormal“
f A
*
1 A T AH
A
Trang 3Energy conservation with unitary
transforms
a rotation of the coordinate system.
f A
2 2
f f
A A
f c
c
Trang 4Energy distribution for unitary
transforms
unevenly distributed among coefficients.
the coefficients ci are on the diagonal of Rcc
H ff
H H
H
i i
H ff
i i cc
c
Trang 5Eigenmatrix of the autocorrelation
is a diagonal matrix of eigenvalues.
R ff is symmetric nonnegative definite, hence i 0 for all i
1
1 0
Trang 6 Energy concentration property:
No other unitary transform packs as much energy into the first J coefficients, where J is arbitrary
Mean squared approximation error by choosing only first J
coefficients is minimized.
Trang 7Optimum energy concentration by KL
transform
coefficient vector
c I
of row
th
k the is where
1 0
*
A a
a R a I
A AR I Tr I
R I Tr R
Tr E
T k
J k
k ff
T k J
H ff J J
cc J bb
1 0
* 1
0
* 1
J k
k ff
T k J
k
k
T k
E L
J
j a
a
Trang 8Basis images and eigenimages
For any unitary transform, the inverse transform
can be interpreted in terms of the superposition of
„basis images“ (columns of A H) of size MN.
If the transform is a KL transform, the basis images, which are the eigenvectors of the autocorrelation
matrix R ff , are called „eigenimages.“
If energy concentration works well, only a limited
number of eigenimages is needed to approximate a set of images with small error These eigenimages form an optimal linear subspace of dimensionality J
c A
Trang 9Computing eigenimages from a
training set
How to measure MNxMN autocorrelation matrix?
and calculate
If L < MN, autocorrelation matrix R ff is rank - deficient
Can we find a small set of the most important eigenimages from a small training set L << MN
l
H l
L L
1
Trang 10Sirovich and Kirby method
Instead of eigenvectors of SS H, consider the
eigenvectors of S H S, i.e.,
Premultiply both sides by S:
By inspection, we find that are eigenvectors of SS H
For this gives rise to great computational savings, by
Computing the LxL matrix S H S
Computing L eigenvectors of S H S
Computing eigenimages corresponding to the L 0 L largest eigenvalues according as
i i i
i i i
Trang 11Example: eigenfaces
The first 8 eigenfaces obtained from a training set of
500 frontal views of human faces
Can be used for face recognition by nearest neighbor search in 8-d „face space.“
Can be used to generate faces by adjusting 8
coefficients
Trang 12Gender recognition using eigenfaces
female training images
Trang 13Gender recognition using eigenfaces
(cont.)
Trang 14Block-wise image processing
Subdivide image into
small blocks
Process each block
independently from the
others
Typical blocksizes: 8x8,
16x16
Trang 15Separable blockwise transforms
c = AT.f.A
separable in x and y, i.e.,
Trang 16Haar transform
Haar transform matrix for sizes N=2,4,8
Can be computed by taking sums and differences
Fast algorithms by recursively applying Hr 2
1 1
1
1 2
1
2
Hr
2 0
0 0
2 0
1 1
2 0
0 0
2 0
1 1
0 2 0
0 2
0 1
1
0 2
0 0
2 0
1 1
0 0
2 0
0 2
1 1
0 0
2 0
0 2
1 1
0 0
0 2 0
2 1
1
0 0
0 2
0 2
1 1
1 1
2 0
1 1
0 2
1 1
0 2
1 1 4
1
4
Hr
Trang 17Haar transform example
Original Cameraman
256x256
256x256 Haar transform
of Cameraman
Trang 18Haar transform example
Original Einstein
256x256
256x256 Haar transform
of Einstein
Trang 19Haar transform example
Original Lena
512x512
512x512 Haar transform
of Lena
Trang 20Hadamard transform
Transform matrices can be recursively generated
2 2
2 2
4 8
2 2
Hd Hd
Hd Hd
Hd Hd
Hd Hd
Hd
Hr Hd
1 1 1
1 1
1 1 1
1 1
1 1
1 1
1 1
1 1 1
1 1
1 1
1
1 1
1 1
1 1
1 1
1 1
1 1
1 1
1 1
1 1
1 1
1 1
1 1
Trang 21Discrete Fourier transform
For DFT of order N, define
Transform matrix
Definition for general N, fast algorithms for N=2 m
DFT coefficients are complex (even if input image is real)
1 ( )
1 ( 2 1
0
) 1 ( 2 2
0
1 2
1 0
0 0
0 0
1 DTF
N N N
N N
N N N
N N N
N
N N N
N N
N N
N N
N
W W
W W
W W
W
W W
W W
W W
W W
Trang 22Discrete cosine transform
Transform matrix
Can be interpreted as DFT
of a mirror-extended image block
(shown here for 2-d DCT)
Transform is used in many
coding standards (JPEG, MPEG)
1 1
1
0 2
1 2 cos
2
0 1
0 1
, ,
N k N
n N
k
n N
k N
n N
a a DCT N k n k n
Trang 23Basis images of an 8x8 DCT
Trang 25Comparison of block transforms
Comparison of 1-D basis functions for block size N=8
Trang 26Comparison of block transforms (cont.)
Trang 27Transform Coding
Trang 28Transform Coding (cont.)
Trang 29quantizer stepsize for AC coefficients: 200