In Section 2, coefficient magnitude and position his-
tograms are defined. Data hiding method based on
the position histogram is presented. Section 3 sum-
marizes experimental results. Section 4 concludes the
paper.
2 OUR APPROACH
As the proposed method works with a combination of
two different approaches, this method has to be dis-
cussed one by one: each method to hide data into ei-
ther non-sensitive or sensitive JPEG blocks. The sen-
sitive and non-sensitive blocks are separated on the
basis of the number of nonzero AC coefficients. To
select the sensitive and non-sensitive blocks, a thresh-
old value is used. Before further discussion, it is
necessary to define sensitive and non-sensitive JPEG
blocks.
2.1 Sensitive and Non-sensitive JPEG
Blocks
An image can be divided into 8×8 non-overlapping
blocks and processed in the frequency domain block
by block, where the leftmost and topmost value is a
DC coefficient value, and the other 63 coefficients
are AC coefficient values. The DC coefficient plays
an important role: it maintains an average luminance
value of the block. Hence, the DC coefficient is not
used for embedding data due to serious possibility
of blocking effects between neighboring blocks. The
sensitive and non-sensitive blocks are determined by
the number of nonzero AC coefficients. The leftmost
and topmost AC coefficients close to the DC coeffi-
cient are considered to be more important than the
rightmost and bottommost AC coefficients far from
the DC coefficient. Importance of the coefficients
can be measured by the magnitudes of the associated
quantization coefficients. In addition, in general, it
is believed that low-frequency components are more
important than high-frequency components. The pro-
posed method uses a threshold value to determine sen-
sitive and non-sensitive JPEG blocks. If a JPEG block
has less or equal to T
v
number of nonzero AC coeffi-
cients, then that block is treated as a sensitive block.
Similarly, if the numbers of nonzero AC coefficients
are more than threshold value T
v
, then that block is a
non-sensitive JPEG block.
Let the DC coefficient be denoted as DC
i
(where,
i = 0), the AC coefficients as AC
i
, (where, i =
1, 2, · · · , n − 2, n − 1, n), and the threshold value T
v
. If
a JPEG block has AC coefficients (i.e., both nonzero
and zero) as follows [16 1 0 0 0 -2 1 0 0 -1 2 EOB],
Figure 1: Block diagram of the encoding phase.
we denote them as DC
0
= 16, AC
1
= 1, AC
2
= 0, AC
3
=
0, AC
4
= 0, AC
5
= -2, AC
6
= 1, AC
7
= 0, AC
8
= 0, AC
9
= -1, AC
1
0 = 2, and the end-of-block (EOB) marker
follows. The nonzero AC coefficients are easily iden-
tified, where there are 5: AC
1
= 1, AC
5
= -2, AC
6
= 1,
AC
9
= -1, and AC
10
= 2. If the value T
v
is 3, then the
number of nonzero AC coefficients in this example is
more than T
v
, which means that this JPEG block is a
non-sensitive block (see Figure 2). Again, in another
example with zigzag-scanned JPEG coefficients [32 5
0 0 0 2 EOB], we can denote them as DC
0
= 32, AC
1
= 5, AC
2
= 0, AC
3
= 0, AC
4
= 0, AC
5
=2, and EOB. The
number of nonzero AC coefficients is 2: AC
1
= 5 and
AC
5
= 2. Note that this block is sensitive when T
v
is 3
(see Figure 3) by the definition of sensitive and non-
sensitive blocks. The zero coefficients can be shifted
in the non-sensitive blocks to hide data. In addition,
magnitude of the nonzero coefficients of the sensitive
blocks can be modified. For the modification of coef-
ficients, another threshold value T
c
is used. Threshold
values T
v
and T
c
are set according to the embedding
capacity and image quality required.
2.2 Shifting Nonzero AC Coefficients
On basis of the T
v
value, the proposed method shifts
T
c
number of nonzero AC coefficients to make either
even or odd number of zeros in between two nonzero
coefficients in order to hide data into the non-sensitive
JPEG block. This shifting operation results in the
number of zero AC coefficients while nonzero coef-
ficients are unchanged. If the number of AC coeffi-
cients in between nonzero AC coefficients is odd and
the message to hide is ”1”, this method does not need
to make any change. But if the number of zero co-
efficients is odd but the message to hide is ”0”, this
method has to make the number of zero coefficients
even by either removing or inserting one zero so that
the next nonzero AC coefficient shifts from its orig-
inal position either to the left or right, respectively.
There are two more cases to make four possible cases.
The other two cases are similar to the previous two
cases in nature.
The overall four cases are summarized in Subsec-
tion 2.3. For the decoder, odd or even number of ze-
ros indicated the hidden message information. The
following block [16 1 0 0 0 -2 1 0 0 -1 2 EOB] is
SIGMAP 2008 - International Conference on Signal Processing and Multimedia Applications
146