(Maugey et al., 2010) where the GOP size if fixed to
2, and the amount of hash information is constant
throughout the sequence (fixed number of hash
words and fixed quantization matrix), the bitrate
associated with hash information is adaptively
varied according to the GOP size and the quality of
the available side information. If high-quality SI is
obtained without the need for hash bits, no hash
information is sent. Otherwise, the system
dynamically determines the need for either running
the genetic-based fusion algorithm, or simply relying
on the received hash words to optimize the SI
quality without running the GA, thus further
reducing the decoding complexity.
The remainder of this paper is organized as
follows. In Section 2, the initially proposed GA-
based frame fusion algorithm is briefly reviewed and
modifications are proposed to take into account
different GOP sizes. In Section 3, an improved
algorithm is proposed taking into account the
quantization of hash information, the additional
complexity incurred at the decoder, and the
increased GOP size. Simulation results are shown
and discussed in Section 4 and finally, conclusions
are drawn in Section 5.
2 REVIEW OF GA-BASED
FRAME FUSION
Based on the principles of evolution and natural
genetics, Genetic Algorithms (GAs) (Goldberg,
1989) are well suited for optimization problems. In
this paper, the use of a GA in a fusion-based
approach aims at improving the quality of the side
information relying on several initial estimations. In
the following, the GA will be briefly reviewed for
clarity.
The GA operates at the block level. Initially, for
a given block in the WZ frame, each of the co-
located blocks in the available SI candidate frames
represents a possible solution (referred to as a
chromosome) which consists of a set of pixels
(genes). A population is a set of chromosomes in the
solution space. The similarity between a given
chromosome and the corresponding block in the WZ
frame represents its fitness, evaluated as the inverse
of the mean-square-error (MSE) between a received
hash word and a local hash word extracted from the
candidate block.
An initial population is first generated by
duplicating each candidate block a number of times
proportional to its fitness, until the desired
population size is reached. The chromosomes are
then randomly shuffled and arranged into pairs.
Each pair (parent chromosomes) undergoes a
vertical crossover followed by a horizontal crossover
(Yaacoub et al., 2009b and 2009c, and Yaacoub,
2009) to yield a couple of child chromosomes
(called offsprings). In order to extend the solution
space and reduce the possibility of falling into local
optima, a mutation is performed on offsprings by
randomly selecting a gene and inverting one of its
bits. The fitness of the resulting chromosomes is
then evaluated and a subset of the fittest
chromosomes is selected, while the others are
deleted to make room for new ones. The surviving
chromosomes are then duplicated a number of times
proportional to their fitness and the whole procedure
is repeated until the maximum allowed number of
iterations is reached. Finally, the fittest chromosome
is selected and its fitness compared to a threshold
T
D
. This allows determining whether the GA
converged enough to yield improved side
information or not. In the former case, the GA
output is considered as the best candidate block to be
used as side information for decoding the co-located
block in the WZ frame. In the latter case, simply
computing the inverse DCT of the received hash
word often yields a better result.
This algorithm was first developed in (Yaacoub
et al., 2009b and 2009c, and Yaacoub, 2009) and
evaluated for GOPs of size 2. In the following, we
consider the same algorithm for larger GOPs. In this
case, the order of WZ-frame decoding within a GOP
is the same as in (Yaacoub et al., 2009a). GA is
initialized with the nearest previously decoded WZ
frame (within the same GOP) if it exists, the key
frames of the current GOP, and the different
interpolated frames obtained by Average
Interpolation (AVI) (Aaron et al., 2002), Motion
Compensated Interpolation (MCI) (Aaron et al.,
2002), and hash-based MCI (HMCI) (Aaron et al.,
2004). It is essential at this point to mention that any
existing interpolation technique can be used for
initializing the GA; having a diversity of candidates
extends the solution space of the algorithm.
Therefore, advanced techniques such as in (Ascenco
et al., 2005) can be used to improve the output
quality. However, in this study, we limit our
initialization phase to the three simple interpolations
mentioned earlier.
As an example, let us consider a GOP of size 4
consisting of a key frame F
0
and WZ frames F
1
, F
2
,
and F
3
. Denote F
4
the key frame of the next GOP.
Starting from WZ frame F
2
, its initial candidates are
F
0
, F
4
, AVI(F
0
,F
4
), MCI(F
0
,F
4
), and HMCI(F
0
,F
4
).
For WZ frame F
1
, the initial candidates are F
0
, F
4
,
the reconstructed version of F
2
(F
'
2
), AVI(F
0
,F
'
2
),
AVI(F
0
,F
4
), MCI(F
0
,F
'
2
), MCI(F
0
,F
4
), HMCI(F
0
,F
'
2
)
SIGMAP 2011 - International Conference on Signal Processing and Multimedia Applications
98