Académique Documents
Professionnel Documents
Culture Documents
2, FEBRUARY 2016
713
Terms SPIHT,
general
tree,
virtual
subband,
I. I NTRODUCTION
ET PARTITION coding (SPC) algorithms based on
hierarchical subband transformation (for example, wavelet
transformation) consist of a series of important image coding
algorithms, including EZW [1], SPIHT [2], SPECK [3],
WQT [4], et al. A comprehensive tutorial on SPC and its
usage in wavelet coding systems can be found in [5] and [6].
SPC algorithms can be classified into tree-set partition
coding (T-SPC) algorithms and block-set partition
coding (B-SPC) algorithms.
T-SPC algorithms include EZW, SPIHT, et al. EZW and
SPIHT were constructed via tree sets in transformed image
matrix (TM) of original image, which exploit the energy
concentration (interband correlation) of TM. SPIHT is usually
considered as an improved version of EZW. In [7], the authors
proposed degree-k zerotree and degree-k zerotree coder based
1057-7149 2015 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission.
See http://www.ieee.org/publications_standards/publications/rights/index.html for more information.
714
Fig. 1.
Fig. 2. GT example using binary tree, with solid circle belongs to the GT
and empty circle does not.
715
into 3 square sets and a new set H , which is shown in Fig. 3(c).
This operation is called octave band partitioning in [3].
In SPIHT, insignificant points and insignificant sets are put
in LIP and LIS, respectively; but, in SPECK, they put in LIS
together. Significant points are put in the list of significant
points (LSP), in SPIHT and SPECK.
The operations executed on GT in SPIHT and SPECK can
be classified into set coding operations and set partition
operations.
A. Set Coding Operations
In SPC algorithms, the purposes of the significance map
(set coding operation) are coding GT and deciding the further
treatments to the GT. If the output of set coding operation is 1,
then the GT will be partitioned using a set partition operation,
otherwise the GT is prepared for the next set coding operation.
The codewords 0 and 1 output from set coding operations
constitute the mainbody of bit stream output from the SPC
algorithms, which can be classified into 3 parts. The codewords
coding multiple sets (the sets contain more than 3 nodes)
are called location bits, because these codewords express the
relative position of the significant coefficients in C under the
current threshold. The codewords coding significant points are
called amplitude bits, which refine the amplitude of the coefficients. The codewords (which are all 0s) coding insignificant
points are called unnecessary bits, because these codewords
are not needed if the coefficients are coded individually using
their binary expressions. The location bits in this paper have
function to express the partial ordering of the transformed
image elements by magnitude in [2].
In received bit stream, it is reasonable that one hopes there
are more amplitude bits, but less location bits and unnecessary
bits.
B. Set Partition Operations
Set partition operation is executed when a GT is significant,
which refines the relative position of significant coefficient
at the current threshold. If set partition operations are conformable to the distribution of the insignificant coefficients
in C, then location bits and unnecessary bits will be reduced.
However, it has to use regular sets in process of the algorithms,
otherwise the algorithm needs more overhead to express set
partition operations.
Set partition operations were classified into Divide
and Extract in [17]. Operation Divide partitions
Fig. 4. Illustrations for set partition operations used in SPIHT and SPECK
with binary tree. (a) Divide. (b) Extract.
716
B. SPACS
In this subsection, we will construct Set PAtition Coding
System (SPACS) based on the coding mechanism of k-SPIHT.
1) Virtual Subband: The initial trees used in SPIHT are
shown in Fig. 1. For each 2 2 block in L L, the upper
left point has no descendant tree. Other points in the block
are roots of trees branching along the corresponding spatial
orientations.
In initialization of SPIHT, the all high frequency subbands are partitioned into 3 22(qnd 1) sets of type A
(degree-1 trees) which are put into LIS. Because a degree-1
tree is GT that does not contain its root node, any modification
of the root node of this tree does not influence the later process
or the results of SPIHT. It means that one can obtain coding
results same exactly with that of SPIHT if the structure of the
initial trees are modified as that shown in Fig. 5(a).
In Fig. 5(a), L L is partitioned into 4 square sets with same
size. Every point in the upper left set does not have descendant
tree, and every point in the rest sets is root node of a quadtree.
The partition for L L shown in Fig. 5(a) can be considered
as a new subband decomposition. Two new subbands are
obtained, which are denoted as Bnd +2 , Bnd +1 afresh. Bnd +2
is the upper left set in L L and Bnd +1 consists of the rest.
717
Fig. 5. (a) Revise version for structure of initial trees used in SPIHT, where
q = 5, n d = 2; (b) Coordinate split and virtual subbands.
718
Fig. 6. The 8 8 matrix C and its 4 subbands. The numbers outside the
boxes are vertical and horizontal coordinates.
Fig. 7. (a) Initial trees in SPACS with p = 1. (b) GTs in the initialized LIS.
Fig. 8.
719
Fig. 9.
B. p = 2
If p = 2 = q + 1 n d , there is only 1 initial tree used in
SPACS, i.e., T r ee(0, 0) = GT (0, 0; 4, 4, 1). This tree covers
the whole matrix C. GT (0, 0; 4, 2, 1) is the part of T r ee(0, 0)
that contained in B2 B1 , which is the only GT put into LIS
in the initialization of SPACS and is shown in Fig. 9(a).
At begin of sorting pass of LIS, output the significance 1
of the GT in LIS.
1) SPACS(2,2): Because k = 2, the significant degree-2
tree, GT (0, 0; 4, 2, 1), is partitioned by Divide into 3 child
GTs (line 4 5 in Process),
1; 1, 1, +, 0, 0, 0, 0, 0, 1
0, 1, 0; 0, 1, 0, 1, +, 0, 0, 0, 0
One can find the bits output from SPECK and encoding
the same bitplane in [5]. SPECK needs one more bit 1 to
divide the L L into 4 single points. The remainder bits are
identical to that from SPACS(3,2). However, it is coincident.
In the two coders, the set orders in LIS are different, so the
bits are coding different sets or points. For example, the last
bit 0 is coding GT (3, 1; 2, 1, 1) in SPACS(3,2), but coding
GT (1, 1; 3, 1, 1) (S 2 (4, 4) in [5]) in SPECK.
720
TABLE I
PSNR G ET BY SPACS(2,1) AND O PTIMAL PSNR G ET BY SPACS
AT S OME S PECIAL B ITRATES FOR L ENA AND B ARBARA
721
Fig. 10.
722
Fig. 11.
For the 256 images, Fig. 14 shows the amounts of bits saved
by SPACS(5, p) (1 p 5) against SPACS(2,1) to encode
the first 3 bitplanes of C. On average, the 5 coders save 5 bits,
344 bits, 404 bits, 415 bits, 416 bits, respectively, to code the
3 bitplanes for every image.
723
TABLE II
C OMPARISON OF A MPLITUDE B ITS , L OCATION B ITS AND U NNECESSARY B ITS U SED IN SPACS(2,1) AND SPACS(3,1) FOR L ENA
TABLE III
C OMPARISON OF A MPLITUDE B ITS , L OCATION B ITS AND U NNECESSARY B ITS U SED IN SPACS(2,1) AND SPACS(3,1) FOR BARBARA
Fig. 12.
Fig. 13.
724
Fig. 15.
Qiufu
Li
received
the
B.Sc.
degree
in mathematics and information science and
the M.Sc. degree in wavelet analysis and signal
processing from the Beifang University of
Nationalities, in 2010 and 2013, respectively.
He is currently pursuing the Ph.D. degree with
the Beijing Institute of Technology. His research
interests are in the areas of wavelet analysis and
digital image processing.
725
University.
She has been a Faculty Member with the Department of Mechanical and
Electrical Engineering, BIT, since 2004, where she is currently a Professor.
Her research interests are in the areas of vision measurement and data
compression.
Wei Jiang received the B.Eng. degree in electronics
and information engineering and the M.Eng. degree
in teletracking and controlling from the Beijing Institute of Technology, in 2007 and 2009, respectively.
He has been an Engineer and worked with the
Beijing Institute of Astronautical Systems Engineering for six years. His research interests are in the
areas of electrical system and signal processing.