Title: Integer-to-Integer Transform
1Integer-to-Integer Transform
? ? ? ?
Speaker ? ? ?
??????????????
2Integer-to-Integer Transform
Speaker ? ??
Outline
(1) Introduction (2) Several popular integer
transforms (3) Method 1 Prototype Matrix (4)
Method 2 Lifting Scheme (5) Method 3 Triangular
Matrix Scheme (6) Method 4 Improvement
Triangular Matrix Scheme (7) Examples (8)
Conclusion and Future Work
3? Definition of the Integer Transform
???? input, output ???????
?????? input, output ?? summations of powers of 2
??
?? integer transform
4? The integer transform in the matrix form
, ak 0 or 1 or ,
C is an integer.
5Example
is an integer transform
is an integer transform
4-point Walsh (Hadamard) transform
is not an integer transform
6? Advantages of the Integer Transform
We can use the fixed-point processor to implement
it exactly. --- less computation time, ---
less cost for implementation.
However, many popular operations are non-integer
transforms.
7Discrete Fourier transform
Discrete cosine transform
RGB to YCbCr Transform
Karhunen-Loeve transform
Wavelet transform
8How do we convert a non-integer transform into an
integer transform?
9?????? truncation
(? RGB-to-YCbCr transform ??)
However, after truncation, the reversibility
property is always lost.
10? In JPEG 2000 standard, the RGB-to-YCbCr
transform is approximated as follows
is satisfied
11? Walsh (Hadamard) transform ?? integer transform
????????? (Harmuth, 1970)
Walsh transform
12? In Ohtas work in 1980
(KLA transform, one of the color transform)
? In MPEG-4
(4-point DCT)
13Question
How to convert other non-integer transforms into
the integer transforms that satisfy the following
requirements
(1) Integerization
(2) Reversibility
(3) Accuracy
B ? A, B ? A-1 (or B ? ?A, B ? ?-1A-1)
A, A-1 original non-integer transform pair,
B, B integer transform pair
(4) Bit Constraint The denominator (??)2k
should not be too large.
(5) Less Complexity
14? Development of Integer Transforms
(A) Prototype Matrix Method (suitable for 2, 4,
8 and 16-point DCT, DST, DFT) (B) Lifting
Scheme (suitable for 2k-point DCT, DST,
DFT) (C) Triangular Matrix
Scheme (suitable for any matrices, satisfies
Goals 1 and 2) (D) Improved Triangular
Matrix Scheme (suitable for any matrices,
satisfies Goals 1 5)
15Method 1 Prototype Matrix (????)
??????? transform ?????,integer transform
???????????
? W. K. Cham, Development of integer cosine
transform by the principles of dynamic
symmetry, Proc. Inst. Elect. Eng., pt. 1, vol.
136, no. 4, pp. 276-282, Aug. 1989.
? S. C. Pei and J. J. Ding, The integer
Transforms analogous to discrete
trigonometric transforms, IEEE Trans. Signal
Processing, vol. 48, no. 12, pp. 3345-3364,
Dec. 2000.
168-Point DCT
0.9808 ? a1, 0.8315 ? a2, 0.5556 ? a3, 0.1951
? a4, 0.9239 ? b1, 0.3827 ? b1.
6 parameters
17 Constraints for the 6 parameters
,
(1) ,
(?????????)
(2) B?BT D, D is a diagonal matrix
(orthogonality)
?????????,?????56 ? constraints
??? DCT ? prototype matrix ??????? ???????????
constraint
18? Example
a1 5, a2 3, a3 2, a4 1, b1 3,
b2 1
19Other possible choices for the 6 parameters
? a1 8, a2 5, a3 3, a4 2,
b1 5, b2 2 ? a1 10, a2 9, a3
6, a4 2, b1 17, b2 7 ? a1
45, a2 39, a3 26, a4 9, b1 46,
b2 19
20--- Disadvantage of the Prototype Matrix
Method ? Only suitable for the case of sinusoid
type transforms (e.g., the discrete
Fourier, cosine, sine, and Hartley Transforms).
? Only suitable for the case of N 4, 6, 8, and
16. In other cases, the prototype becomes
very complicated (too many unknowns and too
many orthogonality constraints)
21Method 2 Lifting Scheme
Important Milestone
? Lifting scheme Decomposing a 2?2 original
matrix into 3
lifting matrices.
? W. Sweldens, The lifting scheme a
construction of second generation wavelets,
Applied Comput. Harmon. Anal., vol. 3, no. 2, pp.
186-200, 1996.
? T. D. Tran, The binDCT fast multiplierless
approximation of the DCT, IEEE Signal Proc.
Lett., vol. 7, no. 6, pp. 141-144, June 2000.
22? Decomposing a 2 ? 2 matrix
or
Constraint det(B) ad ? bc 1.
a
b
(a-1)/c
(d-1)/c
c
c
d
23????????
????? 1 ?????,??? quantization ??,???? reversible
24approximation
where
25? Extension to the 2k-point case
Many 2k-point discrete operations can be
decomposed into (N/2)?log2N butterflies Example
8-point discrete Fourier transform (DFT)
x0 x4 x2 x6 x1 x5 x3 x7
X0 X1 X2 X3 X4 X5 X6 X7
-1
1 w2
-1
-1
-1
1 w w2 w3
-1
-1
-1
1 w2
-1
-1
-1
-1
-1
26In fact, each butterfly is a 2?2 transform.
a
x1
y1
b
c
x2
y2
d
We can apply the lifting-scheme to integerize it.
27? Advantages --- Easy for design
(avoiding solving the N(N ?1) orthogonality
constraint) --- Flexibility ?1/2k1,
?2/2k2, ?3/2k3, are free to choose --- The
fast algorithm of the original non-integer
transform can be preserved. ? The
2k-point integer discrete Fourier, cosine, sine,
Hartley, and Wavelet transforms can hence be
derived (k can be any integer).
S. Oraintara, Y. J. Chen, and T. Q. Nguyen,
Integer fast Fourier transform, IEEE Trans.
Signal Processing, vol. 50, no. 3, pp. 607-618,
March 2002.
28Method 3 Triangular Matrix Scheme
? Lifting scheme 2 ? 2 matrix ? Triangular
matrix scheme Generalizing the lifting scheme
for N ? N matrices, where N can be any
integer.
P. Hao and Q. Shi., Matrix factorizations for
reversible integer mapping, IEEE Trans. Signal
Processing, vol. 49, no. 10, pp. 2314-2324, Oct.
2001.
S. C. Pei and J. J. Ding, Improved reversible
integer transform, ISCAS, pp. 1091-1094, May
2006.
29Important discovery All the reversible
non-integer transforms (det(A)) ? 0) can be
converted into the reversible integer transforms
by the triangular matrix scheme.
30? Any matrix whose determinant is a power of 2
can be decomposed as follows
A DLUS
D diagonal matrix L lower
triangular matrix, U upper triangular matrix,
S One row lower triangular matrix
31A DLUS
? lifting scheme
??
(1) ?
???????
(2) ?
???????
(3) ?? diagonal matrix D ?? det(A) ????? 1
32? Advantages of Triangular Matrix Decomposition
-- The inverse of a triangular matrix is easy
to compute. -- The inverse of an integer
triangular matrix is also an integer
triangular matrix.
33A D L U S
original transform
quantization
B D L1U1S1
integer transform
inverse integer transform
B-1 S1-1U1-1L1-1D-1
34If det(A) ? 2k
A ?A
The performance of a discrete transform remains
unchanged after multiplied by a constant.
35Method 4 Further Improvements of the
Triangular Matrix Scheme
(1) Accuracy Problem
A D L U S
quantization
B D L1U1S1
??
Entries of triangular matrices ????,????
36Decompose PAQ instead of A
row permutationmatrix
column permutationmatrix
PAQ D L U S
PBQ D L1U1S1
B PTD L1U1S1QT
Try to find P and Q to minimize the entries of L,
U, and S
37There are (N! )2 ways to find P and Q
A systematical way to determine P and Q was
proposed in
S. C. Pei and J. J. Ding, Improved reversible
integer transform, ISCAS, pp. 1091-1094, May
2006.
38(2) Complexity Problem
????,???? triangular matrices ?????????,????
Upper triangular matrix ? lower triangular matrix
???? implemented.
39(3) Further Generalization
?????????? 1
Why?
??????????????????
forward
inverse
40x ? y ?????????
x 1 2 3 4 5 6 7 8 9 10
y 1 2 3 5 6 7 8 10 11 12
????, y ax, a ?
1 ???????????
41PAQ D L U S
dn ? 1, un ? 1,
42?????,??? scaled lifting scheme
? scaled triangular matrix scheme
S. C. Pei and J. J. Ding, Scaled lifting scheme
and generalized reversible integer transform,
ISCAS, pp. 3203-3206, May 2007.
43Examples
? Integer Color Transform
RGB to YCbCr Transform
x11 4B, x12 R, x13 ?2G,
Y ?y13/2, Cr y12, Cb
y11/4.
44NRMSE (normalized root mean square error) of the
RGB-to-YCbCr transform in JPEG 2000
20.83
NRMSE of the proposed RGB-to-YCbCr transform
0.1687
S. C. Pei and J. J. Ding, Reversible integer
color transform, IEEE Trans. Image Processing,
vol. 16, no. 6, pp. 1686-1690, June 2007.
S. C. Pei and J. J. Ding, Improved reversible
integer-to-integer color transforms, IEEE
International Conference on Image Processing,
Nov. 2009.
45? 210-Point Integer Fourier Transform
46Conclusion and Future Work
? The integer transform can apparently improve
the efficiency of digital signal processing
and is important in VLSI design. ? Future works
(1) Faster design algorithm to find the optimal
integer transform. (2) Applied to the
multi-channel filter system (Since it can be
expressed by a matrix) (3)
Pseudo-reversible integer transform (the case of
det(A)0)
http//djj.ee.ntu.edu.tw/Integer.ppt