You are on page 1of 17

Title: Integer Version of YKSK Transform for Integer Wavelet Transforms

Authors:

1. Yumnam Kirani Singh, Senior Research Fellow


Computer Vision and Pattern Recognition Unit,
Indian Statistical Institute,
203, B. T. Road, Kolkata-108,
Phone: +91 033 (2578 1832)/(2575 2858)
Email: kiranisingh@hotmail.com

2. Swapan Kumar Parui


Professor, Computer Vision and Pattern Recognition Unit,
Indian Statistical Institute,
203, B. T. Road, Kolkata-108,
Phone: +91 033 (2578 1832)/(2575 2855); Fax: (91)(33) 2577-3035
Email: swapan@isical.ac.in

3. Shuvransu Banerjee
Project Assistant, Computer Vision and Pattern Recognition Unit,
Indian Statistical Institute,
203, B. T. Road, Kolkata-108,
Phone: +91 033 (2578 1832)/(2575 2857)
Email: shuvransu_banerjee@yahoo.co.in

Abstract:

Integer wavelet transforms have been of interest to researchers in the area of image compression in the
recent years. The main reason for its popularity is that these transforms can be used for lossy as well as
lossless image compression. Also, the size of a decomposed component is exactly the ceiling of half of
the size of the input signal, irrespective of the length of the filters used. But these integer transforms are
not generalized and have been developed under various circumstances by different scientists. We propose
here a generalized form of integer transforms known as integer version of YKSK transform. The existing
integer wavelet transforms are special cases of this generalized transform. The integer version of YKSK
transform is simple and straightforward as regards its decomposition and reconstruction scheme. Such a
generalized integer transform allows us to develop various integer transforms, which can be helpful in
finding efficient integer transforms for specific applications. The generalized form of each of the existing
integer transforms is also provided.

Key words: YKSK transform, Integer wavelet transforms, ISITRA, Lossy and lossless image
compression.

1
1. Introduction

Subband transforms have been of interest in various applications because of a desirable property
that is commonly known as multi-resolution representation. However, the most common subband
transforms such as discrete wavelet transform (DWT) and filter bank (FB) [19, 20] are used for
image data compression. There are two kinds of image compression known as lossy and lossless
image compression. Originally, DWT and FB were mainly used for lossy image compression. In
lossy image compression, one can achieve higher compression ratio by keeping the image
visually indistinguishable from the original image [13]. However, there are certain applications
such as medical image compression, where lossless image compression is desired. In lossless
image compression based on traditional entropy coding we can achieve very low compression
ratios. Efforts have been made to develop transform based lossless image compression to achieve
more compression ratios. But DWT and FB are not suitable for use in lossless image
compression because their transformed coefficients are in floating point formats and exact
coding of floating point numbers is not possible with a finite number of bits. We need subband
transforms which yield integer coefficients if we are to go for lossless coding. In ISITRA
[15,16], we can get integer valued subband components by choosing integer valued filter
coefficients. But using integer values for the filter coefficients results in values with higher
magnitudes in the subband components, which is not a desirable property for lossless image
compression. The main goal of developing integer wavelet transforms is to achieve a higher
compression ratio for lossless image compression. We have to find a way such that decomposed
components do not have values with higher magnitudes. A possible solution is to use floating-
point coefficients and then make the values of decomposed components integers by using some
integer functions such as rounding off, ceiling, flooring etc. Then comes the issue of perfect
reconstruction.

For perfect reconstruction, making the decomposed components have integer values should not
lead to any loss of information. S-transform [9], is the first integer wavelet transform allowing
perfect reconstruction. It is very simple and generally thought of as an integer version of Haar's
wavelet. Several researchers tried to formulate S-transform in a more generalized way. And after
a gap of several years, more integer transforms came up. Amir Said and Pearlman also proposed
S+P transform [12] as an extension to S-transform. Later on, Calderbank et al [5] showed that the
lifting scheme, proposed by Wim Swelden [17,18], could be used to obtain integer wavelet
transforms. Since then lifting scheme has been used as a model for explaining or developing new
integer transforms [2]. Lifting scheme requires factorization of ployphase matrices, as discussed
in [6] which may be helpful in understanding the lifting scheme. With the development of IWT,
several people work for developing lossless image compression scheme [4, 7, 11, 12, 14], most
of which are extendible for lossy compression as well. But the performance of IWT for lossy
compression degrades for higher compression ratios as reported in [1] in which Michael Adam
made performance analysis of various integer transforms, and in [11] in which Julien etal,
studied the truncating effects of integer transforms on image compression. However, since
integer implementation is easier, faster and requiring less memory than floating point
implementation, not only for software implementation of image compression, the IWT has been
of interest for hardware design [3, 8, 10] as well.

2
In these integer transforms, most often, a flooring function is used to make the floating-point
coefficients integers and there is a misconception that there will be reconstruction error because
of flooring function. And hence 0.5 is added to the coefficients before flooring function is
applied. Or 0.5 is subtracted from the transformed coefficients if we use ceiling function to make
the transform coefficients integers [1, 5]. But in reality, there is no information loss in the integer
wavelet transform because of ceiling or flooring function for the perfect reconstruction point of
view. We can use any integer functions to make the transform coefficients have integer values.
This will be evident from the integer version of YKSK transform described in Section 3. This
paper presents a new simplified scheme for developing subband integer transforms without using
lifting scheme and is divided into five Sections. Section 2 describes mainly the decomposition
and reconstruction schemes of YKSK transforms. Section 3 describes how integer wavelet
transforms can be obtained in the case of YKSK transform and why it can be considered a
generalized framework of the existing integer wavelet transforms including the lifting scheme.
Various existing integer wavelet transforms and their corresponding generalized versions are also
provided in Section 4. The main purpose of the paper is to give a simplified and generalized
approach to integer wavelet transforms so that one can develop one's own integer wavelet
transforms. In Section 5, YKSK generalized versions of three existing integer wavelet transforms
are considered, and in each of them an optimal set of YKSK filter coefficients is found using an
optimization technique, namely a genetic algorithm. The results obtained are found to be better
than those obtained by the integer wavelet filters. A brief discussion is provided in Section 6.

2. YKSK Transform

YKSK transform is a generalized form of subband decomposition scheme like discrete wavelet transform,
filter bank or ISITRA [15,16]. But its decomposition and reconstruction scheme is quite different from the
latter because the perfect reconstruction theory here is not based on convolution. Here decomposition and
reconstruction are done using two entities known as the information carrier and the modifier. The
information carrier is used to ensure perfect reconstruction and the modifier, to modify the decomposed
components in certain desired ways. In YKSK transform, only a single term of a decomposition equation
constitutes the information carrier part and the remaining terms constitute the modifier. By changing the
modifiers, we can decompose a signal into various possible ways, such as (i) two approximations or (ii)
two details or (iii) one approximation and one detail. It requires no extra condition for perfect
reconstruction and no separate reconstruction filters. The same decomposition filters are used for
reconstruction process also. The only requirement for perfect reconstruction is the determinability of the
modifiers in both the decomposition and reconstruction processes. The length of each decomposed
component of a 1-D signal is equal to the ceiling of the half of the length of the input signal. Another
interesting feature of this transform is that we can easily make the values of decomposed components
integers even if we use arbitrarily chosen floating point numbers as filters for decomposition. That is, it
can also be used to obtain integer wavelet transforms and most of the existing integer wavelet transforms
are special cases of this. It can easily be extended to higher dimensions and to multi-level and multi-stage
decomposition and reconstruction.

2.1 Decomposition scheme of YKSK transform

In this decomposition scheme, a signal is decomposed into two components using arbitrarily chosen
decomposition filters. Like in ISITRA, a signal can be decomposed into two approximations or into two
details or into one approximation and one detail and hence we denote the decomposed components simply
as A and B , and the associated decomposition filters as f a and f b . The decomposition filters are some
arbitrarily chosen non-zero and non-empty arrays of numbers. The coefficients of these decomposition

3
filters may be real or imaginary numbers. But we consider here only real numbers. Also, we will consider
mainly the single-level decomposition of 1-dimensional signal. The decomposition scheme for higher-
level or higher dimensional case can easily be obtained from it. All arrays are all unity offset, that is, the
lowest index of an array is 1.

Let b be a 1-dimensional signal of even length m and A and B be its two decomposed components.
Then we can write the decomposition scheme of YKSK transform as
A( n) = f a (1)b( 2n − 1) + M a ( n)
  (1)
B( n) = f b (1)b(2n) + M b ( n) 
where n = 1,2,, m / 2 and M a (n) and M b (n) are modifiers. Modifiers may be constants or functions of
decomposition filters f a and f b or components of the input signal or decomposed components. Modifiers
have great influence on the characteristics of a decomposed component. By choosing the modifiers in
different ways we can decompose a signal into two approximations or into two details or into one
approximation and one detail. The role of the decomposition filters is mainly to obtain suitable modifiers,
which would transform the signal in certain desired ways. Some forms of determinable modifiers are
given below.
M a ( n) = f ( A ( n − 1)) 

M b ( n) = f ( A (n + j ))
where f (x ) denotes a function of x and j is any integer value.
In this case, modifier M a (n) is determinable for all values of n . But the determinability of M b (n)
depends on the way of signal decomposition for different values of j . If j ≤ 0 , then M b (n) is
determinable for every values of n and we can simultaneously get both the decomposed components A
and B . If j > 0 , then we have to first find the first few terms of the decomposed component A before
starting computing B . Otherwise, M b (n) would become undeterminable.

The following two cases are examples of undeterminable modifiers.


(i) M a ( n) = f ( A ( n + j )) or M b ( n) = f (B( n + j )) for j > 0
(ii) M a (n) = f ( A(n + j1 )) and M b (n) = f ( A(n + j 2 ))
In the first case, each modifier is undeterminable. In the second case, both the modifiers are
indeterminable if j1 > 0 , However, if j1 < 0 , both the modifiers become determinable. In most of the
cases, filter values are involved in computing modifiers. But we have not included filters in any of the
modifiers while discussing their determinability, because filters do not have any effect on the
determinability of modifiers. The filters may be of any length, and their coefficients can be chosen quite
arbitrarily. The only restriction on choice of filter coefficients is that the coefficient of each
decomposition filter that is associated with the information carrier should be non-zero in order not to
destroy the information carrier and to avoid division by zero.

2.2 Reconstruction scheme of YKSK transform

The reconstruction scheme is very simple and involves no complex mathematical operations. It is just
finding the even and odd components of the signal from the decomposed components. That is, finding
b(2n − 1) and b(2n) from the decomposition equations, which is always possible if we have a means to
find the respective modifiers. This is how we can get perfect reconstruction from its decomposed
components in YKSK transform. We can get the original signal from its decomposed components from
the following relations.

4
b(2n − 1) = ( A( n) − M a ( n)) / f a (1)
  (2)
b(2n) = (B(n) − M b ( n)) / f b (1) 
Thus, we can easily get the original signal from the decomposed components using equation (2). The only
restriction while choosing the filter coefficients is that f a (1) ≠ 0 and f b (1) ≠ 0 . From both the
decomposition and reconstruction equations, we know that modifiers are involved. It is already mentioned
that the modifiers should be determinable for both the decomposition and reconstruction processes. For
modifiers to be determinable in the reconstruction process, at least one of the modifiers should be free
from information carrier terms, that is, b(2n − 1) or b(2n) .

2.3 Types of YKSK transform

Depending on the number of terms of the signal involved in the computation of a term of the decomposed
components, YKSK transform has three types, namely, fixed length type, semi-infinite length type and
infinite length type. They are described below. Let N a (n) be the number of terms of the signal b
involved in the computation of a decomposed component A (n) and N b (n) be the number of terms of the
signal b involved in the computation of a decomposed component B (n) . For fixed length type,
N a ( n) = C a and N b (n) = C b where C a and C b are some constants independent of n . For semi-infinite
type either N a ( n) = C a and N b (n) → ∞ as n → ∞ or N a (n) → ∞ as n → ∞ and N b (n) = C b . And for
infinite length type, N b (n) → ∞ and N a (n) → ∞ as n → ∞ . We will consider only the fixed length type.

The fixed length type YKSK transform is similar to sliding window transform like ISITRA or filter-bank.
That is, any term of a decomposed component is computed from the elements of the signal covered by a
sliding window, which is here the length of the transform. It differs from ISITRA or filter bank in that the
sliding window here does not go beyond the signal’s end point. It stops as soon as the forwarding end of
the window reaches the end point of the signal. Hence, the length of a decomposed component here is
dependent on the length of the input signal alone and not on the length of the sliding window. The length
of the sliding window here does not mean the length of a filter as in ISITRA or filter bank, but the number
of terms of the signal, which are involved in the computation of a term of a decomposed component. This
length may or may not be equal to the length of the filters used in the decomposition.

The following are examples of modifiers that give rise to fixed length YKSK transform.
La

M a ( n) = ∑ f a (i )b( 2n + c1 ± i ) 
i=2 
Lb   (3)
M b ( n) = ∑ f b (i ) A( n + c 2 ± i ) 
i=2 
where c1 and c2 are some integer constants (zero, positive or negative) for adjusting the indices of the
arrays, La is the number of coefficients in f a and Lb is the number of coefficients in f b . The number
terms of b involved in the computation of A (n) here is La . And since M b (n) is a function of A (n) , the
number of terms of b involved in the computation of B (n) is fixed. Hence a set of decomposition
equations with modifiers of this type is known as fixed length type. Also, since the modifier M b (n) is a
function of the decomposed components, reconstruction starts from the associated information carrier
b(2n) , knowledge of which is required for the reconstruction of the other information carrier b(2n − 1) .
Depending on the values of N a and N b , there are five different fixed length types as defined below.

Equal and even fixed length type: Here N a and N b are even and equal.

5
Unequal and even fixed length type: Here N a and N b are even but unequal.
Equal and odd fixed length type: Here N a and N b are odd and equal.
Unequal and odd fixed length type: Here N a and N b are odd but unequal.
Mixed fixed length type: Here one of N a and N b is even and the other odd.

2.4 Multi-Stage Decomposition of YKSK transform


The decomposition equations can also be subdivided into several intermediate stages as long as the
information carriers are retraceable from the decomposed components for reconstruction purpose. Multi-
stage decomposition scheme will allow us to do the decomposition of a signal with long filters in a single
stage in several stages with shorter filters as in [8]. Let us first consider 2-stage decomposition where
there are two successive stages to find the decomposed components.

Stage-1: Let the decomposed components in stage-1 are denoted by A1 and B1 , and the corresponding
modifiers be M a1 ( n) and M b1 ( n) . Then we can write the intermediate stage decomposition equation as
A 1 ( n ) = f a (1)b( 2n − 1) + M a1 ( n )
  ( 4)
B1 (n) = f b (1)b( 2n) + M b1 ( n) 
Suppose M a1 ( n) = f a ( 2)b( 2n) + f a (3)b( 2n + 1) , M b1 (n) = f b ( 2) A 1 ( n − 1) + f b (3) A 1 ( n) are the modifiers in
stage-1.

Stage-2: The actual decomposed components are obtained in this stage from the stage-1 decomposed
components as
A 2 ( n) = f a ( 4) A 1 (n) + M a2 ( n )
  (5)
B 2 (n) = f b ( 4)B1 ( n) + M b2 (n) 
Suppose the modifiers in this stage are M a2 ( n) = f a (5)B1 (n − 1) + f a (6)B1 (n) , and
M b2 ( n) 1 1
= f b (5) A (n − 1) + f b (6) A (n) . These are valid determinable modifiers since we know the values
of A1 and B1 from stage-1.

The final decomposed components are given by A 2 and B 2 . We can get back the original signal from
these two decomposed components by reversing the equations (4) and (5) backwards. So the
reconstruction also involves two stages.
Stage-1: Reconstruction of A1 and B1 from A 2 and B 2 as
A 1 ( n) = ( A 2 ( n) − M a2 (n )) / f a ( 4) 
  (6)
B1 (n) = (B 2 ( n) − M b2 ( n)) / f b ( 4) 
Stage-2: Reconstruction of b( 2n − 1) and b(2n) from A1 and B1 as
b ( 2n − 1) = ( A 1 ( n) − M a1 (n )) / f a (1)
 (7)
= 1
− 1
b(2n) (B (n) M b (n)) / f b (1) 

Thus, we can easily reconstruct the original signal in a 2-stage decomposition scheme.

There is no restriction on the number of intermediate stages in the decomposition scheme. Also, the
number of decomposition stages may not be equal for the two decomposed components. In other words,
we are free to choose or modify our decomposed components in various ways. In general, we can find
one decomposed component, say A , through ( j + 1 ) stages and the other component B through ( k + 1 )

6
stages. Suppose the number of the filter coefficients required in Stage-1 is l1 , that in Stage-2 is l 2 , that in
Stage-3 is l3 and so on. And the last stage gives the decomposed components. We can write the ( j + 1 )st
stage decomposed component A j +1 using the decomposition filter f a as
A1 ( n) = f a (1)b(2n − 1) + M a1 (n ) 
2 1 2

A (n) = fa (1 + l1 ) A ( n ) + M a (n) 
3 2 3 
A (n) = f a (1 + l1 + l2 ) A ( n) + M a (n)  (8)
       

A j +1 (n) = f a (1 + l1 + l2 +  + l j ) A j ( n ) + M aj +1 (n)

In equation (8), we assume that the modifier in each stage is determinable. Once the modifiers are known,
we can recover the information carrier b( 2n − 1) from the decomposed component A j +1 very easily just
by reversing the decomposition equation in bottom up fashion as
A j (n) = ( A j +1 ( n ) − M aj +1 (n)) / f a (1 + l1 + l 2 +  + l j ) 

       
2 3 3 
A ( n) = ( A ( n) − M a ( n)) / f a (1 + l1 + l 2 )   (9)
1 2 2 
A ( n ) = ( A (n) − M a (n)) / f a (1 + l1 ) 
b(2n − 1) = ( A 1 ( n ) − M a1 (n )) / f a (1) 

Similarly, we can find the other decomposed component B k +1 through (k + 1) stages using the
decomposition filter f b as
B 1 ( n ) = f b (1)b( 2n) + M b1 ( n ) 

B 2 ( n) = f b (1 + l1 )B 1 ( n ) + M b2 ( n) 
3 2 3

B ( n) = f b (1 + l1 + l 2 )B ( n) + M b (n)   (10)
       

B k +1 (n) = f b (1 + l1 + l 2 +  + l k )B k ( n ) + M bk +1 ( n)

B k (n) = (B k +1 ( n ) − M bk +1 (n)) / f b (1 + l1 + l 2 +  + l k ) 

       

B 2 ( n ) = (B 3 (n) − M b3 ( n)) / f b (1 + l1 + l 2 )   (11)

B 1 ( n ) = (B 2 ( n) − M b2 ( n)) / f b (1 + l1 ) 
1 1
b(2n) = (B ( n) − M b ( n)) / f b (1) 

Thus, we see that even if the decomposed components are obtained through different stages, it is always
possible to reconstruct the original signal provided the modifiers are determinable. Also note that there is
no restriction on the choice of the filter coefficients for perfect reconstruction except that the filter
coefficients corresponding to the first terms of the decomposition equation in each stage should be non-
zero.

3. Integer Version of YKSK Transform

7
From the decomposition equations, we know that a signal can be decomposed into two components using
arbitrarily chosen filters. We can get the original signal back from its decomposed components using
reconstruction equation (2), if we can determine the values of the modifiers required in the reconstruction
process. We have also discussed various types of modifiers in the previous section. Let us now see how
simple the decomposition and reconstruction schemes are, when the filter coefficients associated with the
information carriers are unity.

So, when f a (1) = 1 , f b (1) = 1 , the decomposition equation (1) becomes


A( n) = b( 2n − 1) + M a ( n)
  (12)
B ( n ) = b ( 2 n) + M b ( n ) 
Similarly, the reconstruction equation (2) becomes
b ( 2 n ) = B ( n) − M b ( n ) 
  (13)
b(2n − 1) = A (n) − M a ( n)
Suppose our input signal is an integer array and we are interested in obtaining the decomposed
components having integer values. We can easily do it by making the modifiers’ values integer either by
ceiling or flooring or rounding off to the nearest integer. In most of the cases flooring is used for making
the decomposed components have integer values. Thus, the integer form of YKSK transform
corresponding to the decomposition equation (12) and the reconstruction equation (13) are given below.
A( n) = b( 2n − 1) +  M a (n)  
  (14)
B ( n ) = b ( 2 n) +  M b ( n )  
b(2n − 1) = A (n) −  M a (n)  
  (15)
b ( 2 n ) = B ( n) −  M b ( n )  

Thus, we can get integer decomposed components even if we have floating point modifier values. It is a
general notion [1], [2] that there will be information loss due to the flooring operations and hence 0.5 is
added to the modifier terms before flooring off to the nearest integer as
A( n) = b( 2n − 1) +  M a (n) + 0.5 
  (16)
B( n) = b( 2n) +  M b (n) + 0.5 

But in fact there is no loss or gain of information due to flooring or ceiling or rounding off to an integer in
the decomposition or reconstruction process because any modifier value added during decomposition is
subtracted during reconstruction. So, we can add or subtract any value to or from our modifier terms
before making them integers and still we will be able to reconstruct the original signal perfectly. That is,
we can even write the decomposition equation (14) and the reconstruction equation (15) as given in (17)
and (18) below.
A( n) = b( 2n − 1) +  M a ( n) ± r1  
  (17)
B( n) = b( 2n) +  M b (n) ± r2  
b(2n − 1) = A (n) −  M a (n) ± r2  
  (18)
b(2n) = B( n) −  M b (n) ± r1  
r , r
where 1 2 are any two real constants (positive or negative or zero).
Thus, addition or subtraction of any real number to or from a modifier before making it an integer, does
not affect perfect reconstruction.

8
Also, it is not necessary to use the same flooring or ceiling function for the two modifiers to make them
integers. We can use different types of operators to make different modifiers integers. For example, we
can use flooring operator for one modifier and ceiling operator for the other modifier as
A( n) = b( 2n − 1) +  M a ( n) ± r1  
  (19)
B( n) = b( 2n) +  M b (n) ± r2  
b(2n − 1) = A (n) −  M a (n) ± r2  
  (20)
b(2n) = B( n) −  M b (n) ± r1  
One can also use rounding off operation in combination with ceiling or flooring operations for making
modifiers integers.

The multi-stage decomposition described earlier can also be made integer transforms. The only
requirement is that the filter coefficient associated with the information carrier at each stage should be
unity and the modifier term should be made an integer by flooring or ceiling or rounding off to the nearest
integer. For example, in 2-stage case, the decomposition equations become
A 1 (n) = b( 2n − 1) +  M a1 (n ) 
  (21)
B1 (n) = b(2n) +  M b1 (n)  
A 2 ( n) = A 1 ( n) +  M a2 (n ) 
  ( 22)
B 2 (n) = B 1 (n) +  M b2 ( n)  

The reconstruction equations can easily be obtained from equations (21) and (22) in the usual manner. In
this way, we can get integer transform for multi-stage decomposition also. Thus, we can get integer value
decomposed components for an integer value signal in spite of the floating-point values of the
decomposition filter coefficients used in the modifiers.

4. Generalization of Some Well-known Integer Transforms Through YKSK Transform

In this section, we reproduce some of the integer-to-integer transforms commonly used for image
compression. But these transforms were produced in several occasions without any proper generalization.
Some scientists tried to explain them in terms of wavelets, others tried to explain in terms of polyphase
filter bank (PFB). For example, S-transform is considered to be the integer version of Haar’s wavelet [9].
Wim Sweldens’ lifting scheme, which was explained on the basis of polynomial factorization, does not
strictly lead to integer transform. One can by brute force obtain integer transform from it by rejecting the
scaling factor in the last step of polynomial factorization. The theory of perfect reconstruction lifting
scheme based on 2-channel PFB in [6] is not in fact necessary which is very much evident from the
perfect reconstruction theory discussed in YKSK transform as well as from [5]. And strictly, lifting
scheme cannot be taken as a generalization of discrete wavelet transform. The results obtained by using
wavelet filters cannot in any way be obtained by using lifting scheme. YKSK transform can be considered
as a generalized form of the lifting scheme and some of the existing integer wavelet transforms. We can
obtain the same result of the lifting scheme or any of the integer transforms in our case. Some of the
existing integer transforms are generalized here. Note here that in the generalization process, we have
removed the factor (1/2) which is not necessary for perfect reconstruction. We find that most of the
existing integer wavelet transforms are special cases of fixed length YKSK transform.

1. S-transform:

9
S-transform is usually considered as the integer version of Haar’s transform. This is a special case of
equal and even fixed length type of YKSK transform. The number of terms of the signal b involved in the
computation of each decomposed component is fixed at 2.
The generalized decomposition equations of S-transform become
A( n) = f a (1)b( 2n − 1) + f a ( 2)b( 2n) 
  (23)
B( n) = f b (1)b(2n) + f b ( 2) A (n) 
where n = 1 , 2,  , m / 2
In the above decomposition equations, modifiers are functions of n , hence we write them as
M a ( n) = f a (2)b( 2n) , M b (n) = f b (2) A( n) .
Reconstruction of the signal can be obtained from equation (23) as
b(2n) = (B(n) − M b ( n)) / f b (1) 
  (24)
b(2n − 1) = ( A( n) − M a ( n)) / f a (1)
We can obtain the integer version of equations (23) and (24) by putting f a = [1, f a ( 2)] , and f b = [1, f b ( 2)]
as given below.
A( n) = b( 2n − 1) +  f a (2)b( 2n)  
  (25)
B( n) = b( 2n) +  f b (2) A( n)  
b(2n) = B( n) −  f b ( 2) A( n)  
  ( 26)
b(2n − 1) = A (n) −  f a ( 2)b(2n)  
When f a = [1, − 1] and f b = [1, 0.5] , equation (25) and (26) of YKSK transform becomes S-transform [9].
We can choose any real values for the second elements of the decomposition filters and hence the
resulting integer transform becomes more general than S-transform. As we are interested in integer
transforms, we will provide only the generalized integer decomposition equations in the rest of this
section. Also, we will not provide reconstruction equations, as they are quite straightforward.

2. TS-transform:
It is a modification of S-transform by adding a modification stage in one of the decomposed components.
The generalized integer decomposition equations of TS-transform can be written as.
A 1 ( n) = b(2n) +  f a (2)b( 2n − 1)  

B( n) = b( 2n − 1) + f b (2) A (n) 
1
  ( 27)

A( n) = A (n) +  f a (4)B(n − 2) + f a (5)B(n)  
1

In equation (18), A and B are the decomposed components. This is a case of unequal and even fixed
length type where the number of terms of the signal b involved in the computation of B (n) is fixed at
even number 2 and the same for A(n) is fixed at 4. For making integer transform, there is some
restriction on choosing the coefficients of the decomposition filters. The restriction here is that the first
elements of the decomposition filters should be 1, i.e., f a (1) = 1, f b (1) = 1 which are the coefficients of
b(2n) and b(2n − 1) in equation (27). The third element of the decomposition filter f a is also 1, i.e.,
f a (3) = 1 , the coefficient associated with A 1 ( n) . But the rest of the elements, which will be the parts of
the modifiers, can be chosen arbitrarily. Equation (27) becomes the TS transform [5] when
f a = [1, − 1, 1, 0.25, − 0.25] and f b = [1, 0.5] .

3. S+P transform:
It is also a modification of S-transform. The first two equations in (27) are kept intact and a different
modification is made in the third equation as follows.

10
A1 (n) = b(2n) +  f a (2)b(2n − 1) 

  
B(n) = b(2n − 1) + f b (2) A1 (n)   (28)

A ( n) = A 1 ( n ) +  M a ( n)  
M a ( n) = f a ( 4)B( n − 2) + f a (5)B(n − 1) + f a (6)B( n) + f a (7)B( n + 1) + f a (8) A1 ( n + 1)

This is also a case of unequal and even fixed length type. Computation of B (n) requires 2 terms of b
and the computation of A(n) requires 8 terms. When f a = [1, − 1, 1, 0, 0.25, 0, − 0.25, 0] , equation (28)
becomes TS transform. When f a = [1, − 1, 1, 0, 0.25, 0.125, − 0.375, 0.25] equation (28) becomes SPB
transform [1]. And it becomes SPC integer transform [1] when
f a = [1, − 1, 1, − 1 / 16, 5 / 16, 1 / 4, − 1 / 2, 3 / 8] . Note here that in the case of SPB, computation of A(n)
requires 6 terms of b . Said and Pearlman [12] suggested SPB for natural image compression.

4. (2,2) interpolating transform or (5,3) biorthogonal filter transform:


This is a case of unequal odd fixed length type where the computation of B (n) requires 5 terms of b and
computation of A (n) requires 3 terms.
The generalized decomposition equations in its integer version is given by
A( n) = b( 2n) +  f a ( 2)b( 2n − 1) + f a (3)b(2n + 1)  
  ( 29)
B( n) = b( 2n − 1) +  f b ( 2) A (n − 1) + f b (3) A( n)  
When f a = [1, − 1 / 2, − 1 / 2] and f b = [1, 1 / 4, 1 / 4] , equation (29) becomes the (2,2) interpolating
transform [5].

5. (4,2) interpolating transform:


It is a modification of (2,2) interpolating transform. The modification is made only on the first
decomposition equation. But this modification also affects the number of terms of b involved in the
computation of B (n) . The generalized decomposition equations in its integer version is given by
A(n) = b(2n) −  f a (2)b(2n − 1) + f a (3)b(2n + 1) + f a (4)b(2n + 2) + f a (5)b(2n + 3) 
  (30)
B(n) = b(2n − 1) +  f b (2) A (n − 1) + f b (3) A(n) 
This is a case of unequal and even fixed length case where the computation of B(n) requires 7 terms of
b and computation of A(n) requires 4 terms.
When f a = [1, 1 / 16, − 9 / 16, − 9 / 16, 1 / 16] and f b = [1, 1 / 4, 1 / 4] , equation (30) becomes the (4,2)
interpolating transform [5] which is also referred to as 9/7M [1].

6. (2,4) interpolating transform:


It is also a modification of the (2,2) interpolating transform. In this case modification is made on the
second decomposition equation. This modification results in the unequal and odd fixed length type where
the computation of B (n) requires 9 terms of b and the computation of A(n) requires 3 terms.

The integer version of the generalized decomposition equations is given by


A(n) = b(2n) −  f a (2)b(2n − 1) + f a (3)b(2n + 1)  
  (31)
B(n) = b(2n − 1) +  f b (2) A (n − 2) + f b (3) A (n − 1) + f b (4) A (n) + f b (5) A (n + 1) 

11
When f a = [1, − 1 / 2, − 1 / 2] and f b = [1, − 3 / 64, 19 / 64, 19 / 64, − 3 / 64] , it becomes the (2,4) interpolating
transform [5].
7. (2/6) integer transform:
It is a case of unequal and even fixed length type where the computation of B (n) requires 2 terms of b
and computation of A (n) requires 6 terms. The generalized integer version of the transform is given by
A 1 ( n) = b(2n) +  f a (2)b( 2n − 1)  

B( n) = b( 2n − 1) + f b (2) A (n) 
1
  (32)

A( n) = A (n) +  f a (4)B(n − 1) + f a (5)B( n + 1)  
1

When f a = [1, − 1, 1, 1 / 4, − 1 / 4] and f b = [1, 1 / 2] , it becomes the (2/6) integer transform [1].

8. (2/10) integer transform:


It is a modification of (2/6) case where the modification is made only in the last stage of decomposition
equation of A (n) . This case is also of unequal and even fixed length type where the computation of B (n)
requires 2 terms of b and computation of A (n) requires 10 terms. The generalized integer version of the
transform is given by
A 1 ( n) = b(2n) +  f a (2)b( 2n − 1)  

B( n) = b( 2n − 1) + f b (2) A (n) 
1
 (33)

A( n) = A (n) +  f a (4)B(n − 2) + f a (5)B(n − 1) + f a (6)B(n + 1) + f a (7)B( n + 2)  
1

When f a = [1, − 1, 1, − 3 / 64, 22 / 64,− 22 / 64, 3 / 64] and f b = [1, 1 / 2] , it becomes the (2/10) integer
transform [1].
9. (6,2) interpolating transform:
It is also a modification of (2,2) interpolating transform. The modification is made only in the first
decomposition equation. It is a case of unequal and odd fixed length type where the computation of a term
of A (n) requires 7 terms of b and the computation of a term of B (n) requires 9 terms. The integer
version of the generalized decomposition equations is given by
A ( n ) = b ( 2 n ) +  M a ( n)  
  (34)
B(n) = b(2n − 1) +  f b (2) A (n − 1) + f b (3) A(n) 
M a ( n) = f a ( 2)b( 2n − 5) + f a (3)b( 2n − 3) + f a ( 4)b( 2n − 1) + f a (5)b(2n + 1) +
f a (6)b( 2n + 3) + f a (7)b( 2n + 5)
When f a = [1, − 3 / 256, 25 / 256, − 75 / 128, − 75 / 128, 25 / 256, − 3 / 256] and f b = [1, 1 / 4, 1 / 4] , equation
(34) becomes (6,2) interpolating transform [5].
10. (4,4) interpolating transform:
It is a modification of (4,2), interpolating transform where the modification is made in the second
decomposition equation. The modification leads to the unequal and odd fixed length type where the
computation of B (n) requires 13 terms of b and computation of A(n) requires 7 terms. The integer
version of the generalized decomposition equations is given by
A ( n ) = b ( 2 n ) +  M a ( n)  
  (35)
B(n) = b(2n − 1) +  M b (n) 
where M a ( n) = f a ( 2)b( 2n − 3) + f a (3)b(2n − 1) + f a (4)b( 2n + 1) + f a (5)b( 2n + 3)
M b ( n) = f b (2) A( n − 2) + f b (3) A( n − 1) + f b ( 4) A ( n) + f b (5) A (n + 1) .

12
When f a = [1, 1 / 16, − 9 / 16, − 9 / 16, 1 / 16] and f b = [1, − 1 / 32, 9 / 32, 9 / 32, − 1 / 32] , then equation (35)
becomes (4,4) interpolating transform [5], which is also referred to as (13/7-T) [1]. And when
f b = [1, − 1 / 16, 5 / 16, 5 / 16, − 1 / 16] , it is known as (13/7-C) integer transform [1].

11. (2+2,2) interpolating transform:


It is also a modification of (2,2) interpolating transform where the modification is made for the first
decomposed component through two successive modifications. This is also a case of unequal fixed length
type where the computation of a term of B(n) requires 5 terms and computation of A (n) requires 11
terms of the signal b . The integer version of the generalized decomposition equations is given by
A 1 ( n) = b(2n) +  f a (2)b( 2n − 1) + f a (3)b( 2n + 1)  

B( n) = b( 2n − 1) + f b (2) A 1 (n − 1) + f b (3) A 1 (n)    (36)

A( n) = A 1 (n) +  M a ( n)  
where M a ( n) = f a (5)B( n − 1) + f a (6)B(n) + f a (7)B(n + 1) + f a (8)B( n + 2) + f a (9) A1 ( n + 1) . The filter set
here is given by f a = [1, − 1 / 2, − 1 / 2, 1, 1 / 8, 3 / 8, − 3 / 8, − 1 / 8, 1] and f b = [1, 1 / 4, 1 / 4] [2].

If the last element of the decomposition filter f a is zero, i.e., f a (9) = 0 , then it becomes the
decomposition equation of 5/11 integer transform [1].
When f a = [1, − 1 / 2, − 1 / 2, 1, 1 / 16, − 1 / 16, − 1 / 16, 1 / 16, 0] , it is referred to as 5/11-C. And when
f a = [1, − 1 / 2, − 1 / 2, 1, 1 / 32, − 1 / 32, − 1 / 32, 1 / 32, 0] , it is referred to as 5/11-B.

12. DB2 integer transform:


This integer transform corresponds to discrete wavelet transform using Daubechies orthogonal wavelet
filters of length-4, but is not the same. This is a case of equal and even fixed length type where the
computation of a term of each decomposed component requires 4 terms of the signal b . The integer
version of the decomposition equations corresponding to DB2 in a generalized form is given by

A 1 ( n) = b(2n) −  f a (2)b(2n − 1)  

B( n) = b( 2n − 1) + f b (2) A 1 (n − 1) + f b (3) A 1 (n)    (37)

A( n) = A 1 (n) +  f a (4)B(n + 1)  
When f a = [1, − 3 , 1, 1] and f b = [1, − ( 3 − 2) / 4, 3 / 4] , it becomes the integer version of the DB2
transform through lifting scheme [6].
13. (9,7) integer transform:
The integer version of the transform through lifting scheme is generalized here. But this is in no way
similar to the decomposition scheme of (9,7) bi-orthogonal wavelet filters. This is a case of unequal and
odd fixed length type where the computation of A(n) requires 7 terms of b and computation of B (n)
requires 9 terms of b . The generalized decomposition equation is
A1 (n) = b(2n) +  f a (2)b(2n − 1) + f a (3)b(2n + 1) 

 
B1 (n) = b(2n − 1) + f b (2) A1 (n − 1) + f b (3) A1 (n) 
  (38)
 
A(n) = A 1 (n) + f a (5)B1 (n) + f a (6)B1 (n + 1) 

B(n) = B1 (n) +  f b (5) A(n − 1) + f b (6) A(n) 
When f a = [1, − 1.58613434, − 1.58613434, 1, 0.88291107, 0.88291107] and
f b = [1, − 0.05298011, − 0.05298011, 1, 0.44350885, 0.44350885] , equation (38) becomes the integer version of

13
the (9,7) biorthogonal symmetric transform through lifting scheme [5]. This decomposition scheme is one
of the most popular schemes for subband image compression and is referred to as (9/7-F) in [1].

14. 6/14 integer transform:


This is a case of unequal and even fixed length type where the computation of B (n) requires 6 terms of
b and computation of A(n) requires 14 terms. The generalized integer version of the transform is
A 1 ( n) = b(2n) +  f a (2)b( 2n − 1)  

B( n) = b( 2n − 1) + f b (2) A 1 (n − 1) + f b (3) A 1 (n) + f b ( 4) A 1 ( n + 1)    (39)

A( n) = A 1 (n) +  f a (4)B(n − 2) + f a (5)B(n − 1) + f a (6)B( n + 1) + f a (7)B( n + 2)  
When f a = [1, − 1, 1, − 1 / 16, 3 / 8, − 3 / 8, 1 / 16] and f b = [1, 1 / 16, 1 / 2, − 1 / 16] , it becomes (6/14) integer
transform [1].
15. Cubic B-splines integer transform:
This transform is most commonly used in computer graphics. This is also a case of unequal and odd fixed
length case where the computation of B(n) requires 5 terms of b and computation of A (n) requires 7
terms. The generalized integer version decomposition equations as obtained from lifting scheme are given
by
A 1 ( n) = b( 2n − 1) +  f a ( 2)b( 2n) + f a (3)b( 2n + 1)  

B( n) = b( 2n) + f b ( 2) A 1 ( n − 1) + f b (3) A 1 ( n)    ( 40)

A (n) = A (n) +  f a (5)B(n) + f a (6)B(n + 1) 
1

When f a = [1, 1 / 4, 1 / 4, 1, − 3 / 16, − 3 / 16] and f b = [1, 1, 1] , equation (40) becomes the integer version of
cubic B-splines obtained through lifting scheme [6].

5. Experimental Results

Three of the integer wavelet transforms described in Section 4 are considered here. These are (i) (4,4)
interpolating transform, (ii) (2+2,2) interpolating transform and (iii) (9,7) integer transform. For each of
them, the corresponding YKSK generalized version is considered and a search technique is employed to
find the optimal YKSK filter giving the smallest value of the Mean Square Error (MSE). The MSE is
calculated between the original image and the image reconstructed from only the approximation
component after decomposition. The search is based on a genetic algorithm. The images used for the
experiment are lena128, lena256, barbara128, barbara256, boat128 and boat256 where “128” and “256”
indicate a size of 128x128 and 256x256 respectively. Zero padding is used in the decomposition scheme.

5.1 (4,4) interpolating transform

In the (4,4) interpolating transform, there are 8 free filter coefficients, namely, f a (2), f a (3), f a (4) f a (5)
and f b (2), f b (3), f b (4), f b (5). For each filter coefficient, an interval is considered to define the search
space where a genetic algorithm can be applied. Let these intervals be I1 , I 2 ,….. I 8 . Each such interval is
centred around the corresponding coefficient of the 13/7-T filter set. For any filter set ( f a (2),… f a (5), f b
(2),….. f b (5)) belonging to I = I 1 × I 2 ×  × I 8 the MSE value can be computed after decomposing an
image into four components and reconstructing the image from the approximation component only. Thus
the MSE value can be thought of as a function g ( f a (2),… f a (5), f b (2),….. f b (5)). The genetic

14
algorithm developed here finds the optimal filter coefficients in the search space I which produces the
smallest value of the function g . In this process, we get six optimizing YKSK filter sets corresponding to
six images. The filter set based on the average of these six filter sets is considered as a consensus YKSK
filter set which is in a sense the best YKSK filter set based on the six images. The six optimizing YKSK
filter sets, the best YKSK filter set and the two standard integer wavelet filter sets (13/7-T and 13/7-C) in
(4,4) interpolating transform are given in Table 1 where the MSE values produced by all these filter sets
for each of the six images are also provided. It is seen that the proposed YKSK filter sets perform better
than the standard wavelet filter sets in terms of the MSE values.

5.2 (2+2,2) interpolating transform and (9,7) integer transform

In the (2+2,2) interpolating transform, there are 9 free filter coefficients, namely, f a (2), f a (3), f a (5), …,
f a (9), f b (2) and f b (3). Here the search space I is 9-dimensional and the interval in each dimension is
determined in a similar fashion using the 5/11-C filter set. The search of the optimal filter sets using a
genetic algorithm is performed in the same way as in the case of (4,4) interpolating transform. The six
optimizing YKSK filter sets, the average or the best YKSK filter set and the two standard wavelet filter
sets (5/11-B and 5/11-C) in (2+2,2) interpolating transform are given in Table 2 where the MSE values
produced by all these filter sets for each of the six images are also provided. It is seen that the proposed
YKSK filter sets perform better than the wavelet filter sets in terms of the MSE values. It is to be noted
here that the standard (2+2, 2) filter set does not produce satisfactory results.

In the (9,7) integer transform, there are 8 free filter coefficients, namely, f a (2), f a (3), f a (5), f a (6) and f b
(2), f b (3), f b (5), f b (6). The results obtained in a similar fashion are given in Table 3. Here also that the
proposed YKSK filter sets perform better than the (9,7) integer wavelet filter set.

Table 1.

Results of YKSK generalized (4,4) interpolating transform where M1, M2, M3 and M4 are the MSE
values produced respectively by the six corresponding optimizing YKSK filter sets, the best YKSK filter
set, 13/7-T filter set and 13/7-C filter set.

Images fa(2) fa(3) fa(4) fa(5) fb(2) fb(3) fb(4) fb(5) M1 M2 M3 M4


lena128 0.1690 -0.8384 -0.3631 0.0369 -0.0071 0.2008 0.4588 -0.1196 118.46 118.38 142.10 140.62
lena256 0.1274 -0.7616 -0.4243 0.0601 -0.0494 0.1820 0.4227 -0.0992 68.34 68.56 78.19 77.35
barb128 0.1624 -0.8337 -0.3631 0.0416 -0.0259 0.1482 0.4447 -0.0992 117.78 117.97 135.71 134.38
barb256 0.1243 -0.8149 -0.3192 0.0118 -0.0086 0.1380 0.4635 -0.1071 100.43 100.44 109.92 109.18
boat128 0.1906 -0.9647 -0.2341 0.0118 -0.0039 0.0929 0.4772 -0.0992 171.02 174.91 215.81 213.68
boat256 0.1435 -0.8235 -0.3153 -0.0008 0.0024 0.1282 0.4490 -0.0992 121.95 120.95 134.90 133.52
Best YKSK 0.1529 -0.8395 -0.3365 0.0269 -0.0154 0.1484 0.4527 -0.1039
13/7-T 0.0625 -0.5625 -0.5625 0.0625 -0.0312 0.2812 0.2812 -0.0312
13/7-C 0.0625 -0.5625 -0.5625 0.0625 -0.0625 0.3125 0.3125 -0.0625

Table 2.

Results of YKSK generalized (2+2,2) interpolating transform where M1, M2, M3 and M4 are the MSE
values produced respectively by the six corresponding optimizing YKSK filter sets, the best YKSK filter
set, 5/11-C filter set and 5/11-B filter set.

15
Images fa(2) fa(3) fa(5) fa(6) fa(7) fa(8) fa(9) fb(2) fb(3) M1 M2 M3 M4
lena128 -0.6749 -0.3251 0.1372 -0.1561 -0.0133 0.0400 -0.1984 0.1647 0.4980 118.35 122.14 145.00 147.52
lena256 -0.6592 -0.4082 0.1608 -0.1608 0.0369 0.0306 -0.1843 0.1647 0.4863 68.65 70.51 79.51 81.21
barb128 -0.4961 -0.4443 0.0871 -0.1922 0.0071 0.0588 -0.1592 0.2216 0.4078 122.81 120.89 138.34 140.08
barb256 -0.6969 -0.4718 0.0735 -0.0561 0.0943 0.0977 0.0794 0.1545 0.3820 104.19 103.66 111.67 111.26
boat128 -0.6843 -0.3031 0.1169 -0.1671 0.0243 0.0212 -0.1874 0.1078 0.4980 175.05 183.01 220.86 219.82
boat256 -0.5980 -0.3251 0.1090 -0.1984 -0.0243 0.0588 -0.1969 0.1745 0.5000 122.34 125.28 138.02 138.96
Best YKSK -0.6349 -0.3796 0.1141 -0.1551 0.0208 0.0512 -0.1411 0.1646 0.4620
5/11-C -0.5000 -0.5000 0.0625 -0.0625 -0.0625 0.0625 0.0000 0.2500 0.2500
5/11-B -0.5000 -0.5000 0.0312 -0.0312 -0.0312 0.0312 0.0000 0.2500 0.2500

Table 3.

Results of YKSK generalized (9,7) integer transform where M1, M2 and M3 are the MSE values
produced respectively by the six corresponding optimizing YKSK filter sets, the best YKSK filter set and
(9,7) integer filter set.

Images fa(2) fa(3) fa(5) fa(6) fb(2) fb(3) fb(5) fb(6) M1 M2 M3


lena128 -1.4968 -1.0000 0.5313 0.3903 -0.1774 -0.2419 0.6452 0.9968 117.75 117.11 135.24
lena256 -1.4452 -0.9985 0.5313 0.3726 -0.1774 -0.2419 0.7258 0.9968 66.84 67.03 75.75
barb128 -1.4452 -1.0020 0.5313 0.3726 -0.1774 -0.2419 0.7258 0.9968 118.01 117.77 130.93
barb256 -1.4452 -1.0000 0.5313 0.3726 -0.1774 -0.2419 0.7258 0.9968 100.60 100.55 108.31
boat128 -1.4452 -0.9355 0.4722 0.4081 -0.2097 -0.2097 0.6452 0.9516 173.29 176.93 204.89
boat256 -1.4452 -0.9995 0.5313 0.3726 -0.1774 -0.2419 0.7258 0.9968 119.88 119.74 131.48
Best YKSK -1.4538 -0.9892 0.5214 0.3814 -0.1828 -0.2366 0.6989 0.9892
(9,7) -1.5861 -1.5861 0.8829 0.8829 -0.0530 -0.0530 0.4435 0.4435

In the above experiment, the intervals in the search space I are not large. This is because the goal here
has been only to establish the fact that there are YKSK filters that perform better than the existing filters.
However, if the search is performed in a larger space, better YKSK filters may emerge. Another point to
note here is that the criterion for optimal filters has been taken as the MSE value in a certain context.
However, any other criterion may be used for optimization with the basic algorithm remaining the same.

6. Discussion

YKSK transform is a very simple transform. There is no complex mathematics involved in it. It is much
simpler and more generalized as compared to the theories of integer wavelet transforms or Sweldens’
lifting scheme. This will enable one to find any integer transform of one’s own or develop any of the
existing integer wavelet transforms. The study of polyphase matrices is not required for perfect
reconstruction, as evident from the generalization of various integer transforms in YKSK. In the strict
sense of the terms, the lifting scheme of Wim Sweldens is not an integer transform. To make it an integer
transform some lifting steps (basically the last scaling steps) have to be discarded. For example, the last
lifting steps in DB2 and (9,7) bi-orthogonal transform where the last lifting step requires multiplication of
some floating-point numbers. As compared to the lifting scheme for integer transforms, the integer
version of YKSK transform is much simpler and straightforward. Here, one can choose any filter of one’s
choice without worrying about perfect reconstruction. The decomposition and the reconstruction filters
are the same. Hence there is no need for finding reconstruction filters separately. Another interesting
feature is that the lengths of the decomposed components are always the ceiling of half of the length of
the signal as in the lifting scheme. In other words, the length of the decomposed components is
independent of the length of the filter used.

16
An approach to finding optimal YKSK filters has been proposed based on a genetic algorithm. The
criterion for optimization has been taken as certain MSE value. However, any other criterion can be used
depending on the problem at hand. The optimal YKSK filters obtained here are found to produce less
MSE values for a set of images than some existing wavelet integer filters. There are several other wavelet
integer filters which have not been considered for comparison. However, corresponding optimal YKSK
filters can be computed in a similar fashion.

References

[1] M. D. Adams and F. Kossentini, “Reversible integer-to-integer wavelet transforms for image compression:
Performance evaluation and analysis”, IEEE Trans. Image Processing., 9(2000), pp.1010-1024.
[2] Micahel D. Adams, Rabab K. Ward, “ Symmetric-Extension-Compatible Reversible Integer-To-Integer Wavelet
Transforms”, IEEE Trans. Signal Processing, vol. 51, No-10, pp. 2624-2636, 2003
[3] Kishore Andra, Chaitali Chakraborty, Tinku Acharya, “A VLSI Architecture for lifting based Forward and
inverse transform”, IEEE Transaction signal processing, Vol. 50, No. 50, pp. 966- 977, April 2002.
[4] A. Bilgin, P.J. Sementilli, F. Sheng and M. W. Marcellin, “ Scalable Image coding using reversible integer
wavelet transforms”, IEEE Trans. Image Processing, Vol. 9, No. 11, pp. 1972-1977, Nov, 2000.
[5] R. Caulderbank, I. Daubechies. W. Sweldens and B.L. Yeo, “Wavelet transforms that maps integer to integers”,
Appl.Comput. Harmon.Anal., 5(1998), 332-369.
[6] I. Daubechies and W. Sweldens, “Factoring wavelet transforms into lifting steps”, J. Fourier Anal. Appl,
4(1998), 145-267.
[7] O. Egger, M. Kunt, “Embedded zero tree based lossless image coding”, Proc. International Conf. Image
Processing, vol. 3, Wahington DC, pp. 616-619, Sept. 1995.
[8] Marco Gangretto, Enrico Magli, Maurizio Martina and Gabriella Olrno, “Optimization and implementation of
the integer wavelet transform for image coding”, IEEE Transaction on Image processing, vol. 11, No. 6, pp. 596
– 606, june 2002.
[9] V. K. Heer and H. E. Reinfelder, “A comparison reversible methods for data compression”, in Medical Imaging
IV, Proc. SPIE 1233, SPIE, Bellingham, WA, 1990, pp.354-365.
[10] M. Martina, G. Masera, G. Piccinini, and M. Zamboni, “ A VLSI architecture for IWT( integer wavelet
transform)”, in Proc. 43rd Midwest Symp. Circuits Systems, Lansing, MI, Aug, 2000.
[11] Julien Reichel, Gloria Menegaz, Marcus J. Nadenau, and Murat Kunt, “Integer Wavelet Transform for
embedded lossy to Lossless Image Compression”, IEEE trans. Image Processing, vol.10, No. 3, March 2001.
[12] A Said and W.A. Perlman, “An image multiresolution representation for lossless and lossy compression”, IEEE
trans. Image Processing, 5(1996), 1303-1310.
[13] J.M. Shapiro, “Embedded Image coding using zerotrees of wavelet coefficients”, IEEE Trans. Signal
Processing, Vol. 41, pp. 3445 – 3462, dec 1993.
[14] F. Sheng, A. Bilgin, P.J. Sementilli, and M. W. Marcelling, “Lossy and Lossless image compression using
reversible integer wavelet transforms”, Proc. Internation Conference on Image Processing, Los Alamitos, CA:
IEEE Press, vol-3, pp. 876 – 880., 1998.
[15] Y. Kirani Singh, "On Some Generalized Transforms for signal Decomposition and Reconstruction", A Thesis,
submitted to, Indian Statistical Institute, Kolkata, Feb-2004.
[16] Y. Kirani Singh and S. K. Parui, "ISITRA: A new generalized way of signal decomposition and reconstruction",
accepted for publication in Digital Signal Processing.
[17] W. Sweldens “The lifting Scheme: A custom-design construction of bi-orthogonal wavelets”, Appl. Comput.
Harmon.Anal., 3(1996), 186-200.
[18] W.Sweldens. “The Lifting Scheme: A construction of second generation wavelets”, SIAM J. Math. Anal.,
29(1997),511-546.
[19] Gilbert Strang, Turong Nguyen, “Wavelet and Filter bank”, Wellesley-Cambridge Press (1996).

[20] M. vitterli and J. Kovacebic, Wavelet and Subband Coding, Englewood Cliffs, NJ: Prentice Hall, 1995.

17

You might also like