Professional Documents
Culture Documents
2
(2)
Then, the index of the best matching codeword assigned to the input vector x is
transmitted over the channel to the decoder. The decoder has the same codebook as the
encoder. In the decoding phase, for each index , the decoder merely performs a simple table
lookup operation to obtain c
i
and then uses c
i
to reconstruct the input vector . Compression is
achieved by transmitting or storing the index of a codeword rather than the codeword itself.
The compression ratio is determined by the codebook size and the dimension of the input
vectors, and the overall distortion is dependent on the codebook size and the selection of
codewords.
In 1980 Linde, Buzo and Gray proposed an improvement of the Lloyds technique.
They extended Lloyds results from mono- to k-dimensional cases. For this reason their
algorithm is known as the Generalized Lloyd Algorithm (GLA) or LBG [23] from the initials
of its authors.
This algorithm is similar to the k-means algorithm.
4.2 THE ALGORITHM:
1. Determine the number of codewords, N, or the size of the codebook.
--------------------------------------------------------------------------------------
------------------------------------------
15
Seminar Report on
Multipurpose Image Watermarking
------------------------------------------------------------------------------------------
--------------------------------------------
2. Select N codewords at random, and let that be the initial codebook. The initial
codewords can be randomly chosen from the set of input vectors.
3. Using the Euclidean distance measure clusterize the vectors around each codeword.
This is done by taking each input vector and finding the Euclidean distance between it
and each codeword. The input vector belongs to the cluster of the codeword that
yields the minimum distance.
4. Compute the new set of codewords. This is done by obtaining the average of each
cluster. Add the component of each vector and divide by the number of vectors in the
cluster.
m
j
ij i x
m
y
1
1
where i is the component of each vector (x, y, z, ... directions), m is the number of
vectors in the cluster.
1. Repeat steps 2 and 3 until the either the codewords don't change or the change in the
codewords is small.
This algorithm is by far the most popular, and that is due to its simplicity. Although it is
locally optimal, yet it is very slow. The reason it is slow is because for each iteration,
determining each cluster requires that each input vector be compared with all the
codewords in the codebook.
4.3 WORKING OF THE SEARCH ENGINE
Although VQ offers more compression for the same distortion rate as scalar
quantization, yet is not as widely implemented. This is due to two things. The first is the
time it takes to generate the codebook, and second is the speed of the search. Many
algorithms have been proposed to increase the speed of the search. Some of them reduce the
--------------------------------------------------------------------------------------
------------------------------------------
16
Seminar Report on
Multipurpose Image Watermarking
------------------------------------------------------------------------------------------
--------------------------------------------
math used to determine the codeword that offers the minimum distortion; other algorithms
preprocess the codewords and exploit underlying structure.
The simplest search method, which is also the slowest, is full search. In full search an
input vector is compared with every codeword in the codebook. If there were M input
vectors, N codewords, and each vector is in k dimensions, then the number of multiplies
becomes kMN, the number of additions and subtractions become MN((k - 1) + k) = MN(2k-1),
and the number of comparisons becomes MN(k - 1). This makes full search an expensive
method.
4.4 MEASURE OF PERFORMANCE VQ
How does one rate the performance of a compressed image or sound using VQ?
There is no good way to measure the performance of VQ. This is because the distortion that
VQ incurs, will be evaluated by us humans and that is a subjective measure. It can always be
resorted to good old Mean Squared Error (MSE) and Peak Signal to Noise Ratio (PSNR).
MSE is defined as follows:
( )
1
1
M
i i
i
MSE x x
M
where M is the number of elements in the signal, or image. For example, if we wanted to find
the MSE between the reconstructed and the original image, then we would take the difference
between the two images pixel-by-pixel, square the results, and average the results.
The PSNR is defined as follows:
( )
,
`
.
|
MSE
n
PSNR
2
1 2
10 log 10
where n is the number of bits per symbol. As an example, if we want to find the PSNR
between two 256 gray level images, then we set n to 8 bits.
In the decoding phase, not the original but the watermarked codeword is used to
represent the input image block. Therefore, the VQ-based digital image watermarking will
introduce some extra distortion. Whether the original image is required or not during the
--------------------------------------------------------------------------------------
------------------------------------------
17
Seminar Report on
Multipurpose Image Watermarking
------------------------------------------------------------------------------------------
--------------------------------------------
watermark extraction is dependent on the embedding method. In these algorithms, the
codebook is open for users but the partition is the secret key. Experimental results show that
these algorithms are robust to VQ compression with high-performance codebooks, JPEG
compression and some spatial image processing operations. However, these algorithms are
fragile to rotation operations and VQ compression with low-performance codebooks.
4.5 WATERMARKING ALGORITHMS BASED ON INDEX PROPERTIES
To enhance the robustness to rotation operations and VQ compression operations,
some image watermarking algorithms [21], [22] based on the properties of neighboring
indices have been proposed. In [21], the original watermark W with size A
w
* B
w
is first
permuted by a predetermined key,key
1
, to generate the permuted watermark W
p
for
embedding. The original image X with size A * B is then divided into vectors x(m,n) with
size (A/A
w
) * (B/B
w
), where x(m,n) denotes the image block at the position of (m,n). After
that, each vector x(m,n) finds its best codeword C
i
in the codebook C and the index is
assigned to x(m,n), we can then obtain the indices matrix Y with elements y(m,n), which can
be represented by
U U
1 ) / (
0
1 ) / (
0
)) , ( ( ) (
Aw A
m
Bw B
n
n m x VQ X VQ Y
=
U U
1 ) / (
0
1 ) / (
0
) , (
Aw A
m
Bw B
n
n m y (3)
For natural images, the VQ indices among neighboring blocks tend to be very similar, so we
can make use of this property to generate the polarities . After calculating the variances of
y(m,n) and the indices of its surrounding blocks with
,
`
.
|
+
+
1
1
1
1
2 2
) , (
9
1
) , (
m
m i
n
n j
j i y n m
2
1
1
1
1
) , (
9
1
,
`
.
|
+
+
m
m i
n
n j
j i y (4)
We can obtain the polarities as follows:
--------------------------------------------------------------------------------------
------------------------------------------
18
Seminar Report on
Multipurpose Image Watermarking
------------------------------------------------------------------------------------------
--------------------------------------------
U U
1 ) / (
0
1 ) / (
0
) , (
Aw A
m
Bw B
n
n m p P (5)
where
'
otherwise
T n m
n m p
, 0
) , ( , 1
) , (
2
(6)
For convenience, the threshold T is set to be half of the codebook size, N/2.Then the final
embedded watermark or the secret key, key2 , can be generated with the exclusive-or
operation as follows:
key
2
= W
p
P (7)
After the inverse-VQ operation, both the reconstructed image X and the secret key key
2
work
together to protect the ownership of the original image. In the extraction process, we first
calculate the estimated polarities P from X and then obtain an estimate of the permuted
watermark, as follows:
W
p
=key
2
P (8)
Finally, the inverse permutation operation with key
1
can be performed to obtain the extracted
watermark W. In order to embed multiple watermarks, [22] also uses the mean of indices to
generate another polarities P
1
for embedding. Experimental results show that these algorithms
are robust to many kinds of attacks, including JPEG, VQ, filtering, blurring, and rotation.
However, these algorithms have the following problem.
1) The codebook should be used as a key, because if the user possesses the same codebook,
he can also embed his own watermark in the watermarked image without any modification.
In fact, unlike traditional watermarking methods, these kinds of watermarking
algorithms do not modify the VQ compressed cover work at all. The term fingerprint or
secure fingerprint may be more appropriate, and sometimes we can call this kind of
watermark zero-watermark. In view of unification, we use the term robust watermark
instead of secure fingerprint.
--------------------------------------------------------------------------------------
------------------------------------------
19
Seminar Report on
Multipurpose Image Watermarking
------------------------------------------------------------------------------------------
--------------------------------------------
Chapter - 5
MULTISTAGE VECTOR QUANTIZATION
The basic idea of multistage VQ is to divide the encoding task into successive stages,
where the first stage performs a relatively crude quantization of the input vector using a small
codebook. Then, a second-stage quantizer operates on the error vector between the original
and quantized first-stage output. The quantized error vector then provides a second
--------------------------------------------------------------------------------------
------------------------------------------
20
Seminar Report on
Multipurpose Image Watermarking
------------------------------------------------------------------------------------------
--------------------------------------------
approximation to the original input vector thereby leading to a refined or more accurate
representation of the input. A third-stage quantizer may then be used to quantize the second-
stage error to provide a further refinement and so on.
In this paper, we adopt a two-stage vector quantizer as illustrated in Fig. 1.
FIG 1. Two-stage VQ
It is the simplest case and can be used to generate the general multistage vector quantizer.
The input vector x is quantized by the initial or first-stage vector quantizer denoted by VQ
1
whose codebook is C
1
={c
10
,c
11
,,c
1(N1-1)
} with size N
1
. The quantized approximation 1 x is
then subtracted from x producing the error vector e
2
. This error vector is then applied to a
second vector quantizer VQ
2
whose codebook is C
2
={c
20
,c
21
,,c
2(N2-1)
} with size N
2
yielding
the quantized output 2 e .The overall approximation x to the input x is formed by summing
the first and second approximations, 1 x and 2 e . The encoder for this VQ simply transmits a
pair of indices specifying the selected codewords for each stage and the task of the decoder is
to perform two table lookups to generate and then sum the two codewords. In fact, the overall
codeword or index is the concatenation of codewords or indices chosen from each of two
codebooks. That is to say, this is a product code where the composition function of the
decoder is simply a summation of the reproductions from the different two VQ decoders.
Thus, the equivalent product codebook C can be generated from the Cartesian product C
1
*
C
2
. Compared to the full-search VQ with the product codebook C, the two-stage VQ can
reduce the complexity from N=N
1
* N
2
to N
1
+ N
2
.
5.1. EMBEDDING PROCESS
--------------------------------------------------------------------------------------
------------------------------------------
21
VQ
1
VQ
2
+
2 e
2 e
+
_
1 x
1 x
1 x
+
x
x
Seminar Report on
Multipurpose Image Watermarking
------------------------------------------------------------------------------------------
--------------------------------------------
Before describing the proposed algorithm, we make some assumptions. Let X be the
original image with size A * B, let W
R
and W
F
be the binary robust and semi-fragile
watermarks with size A
w
* B
w
respectively. Here, a small visually meaningful binary image V
with size a * b is replicated periodically to obtain the binary semi-fragile watermark W
F
with
size A
w
* B
w
that is large enough for embedding.
In each stage of the proposed algorithm, only one bit is embedded in each input image
block (or vector), so the dimension of each input vector or codeword is k=(A/A
w
) * (B/B
w
).
Assume that the first-stage codebook is C
1
={c
10
,c
11
,,c
1(N1-1)
} with size N
1
= 2
n1
and the
second-stage codebook is C
2
={c
20
,c
21
,,c
2(N2-1)
} with size N
2
=2
n2
where n
1
and n
2
are natural
numbers. Thus, a binary number with n
1
+ n
2
bits, in which the first n
1
bits stand for the index
of Stage 1 and the last n
2
bits denote the index of Stage 2, can represent the overall index. The
overall codeword can be selected from the equivalent product codebook C={c
0
,c
1
,c
(N-1)
}
with size N = N
1
* N
2
. In other words, if the index in codebook C
1
is i and the index in
codebook C
2
is j, then the equivalent overall index in the product codebook C is i + j * N
2
.
In our algorithm, the robust watermark W
R
and the semi-fragile watermark W
F
are
embedded in two stages, respectively. We embed the robust watermark in the first stage and
the semi-fragile one in the second stage to enhance the robustness and transparency of the
proposed algorithm. In what follows, we describe the two-stage embedding process
separately.
5.1.1. Robust Watermark Embedding Process
In the proposed algorithm, we adopt the method [20] based on index properties to
embed the robust watermark in the first stage as shown in Fig. 2.
--------------------------------------------------------------------------------------
------------------------------------------
22
Seminar Report on
Multipurpose Image Watermarking
------------------------------------------------------------------------------------------
--------------------------------------------
FIG. 2 Robust Watermark embedding process in the first stage
The original watermark W
R
is first permuted by a predetermined key, key
1
, to generate
the permuted watermark W
RP
for embedding. The polarities P is then calculated. Finally, we
generate the final embedded watermark or the secret key, key
2
, with the exclusive-or
operation. After the first-stage embedding, we can obtain the reconstructed image X and the
error image X
1
as follows:
X=VQ
1
-1
[VQ
1
[X]]
X
1
= X X
This method has two problems and can be automatically solved, which will be discussed later
in the extraction process.
--------------------------------------------------------------------------------------
------------------------------------------
23
Division
Composition
Permutation
Embedding
Index Polarities
Computation
Normal VQ
Decoder
Nearest Neighbor
VQ Encoder
Input
Vectors
Codebook C
1
Output
Vectors
+
_
Encoded Indices
P
W
RP
X
X
1
X
key
2
key
1
W
R
Seminar Report on
Multipurpose Image Watermarking
------------------------------------------------------------------------------------------
--------------------------------------------
5.1.1.2. The Embedding Algorithm
Let the input image be X with size M x N. The robust watermark with VQ is to be
embedded into X and a watermarked reconstruction and the secret keys associated with the
embedded watermark is to be output. These secret keys are registered to the third party to
certify the ownership of original multimedia source.
The two binary-valued watermarks to be embedded are W
R
and W
F
. First the VQ
operation is performed and codewords with the nearest search algorithm are obtained.
Afterwards the watermarks can be embedded with the characteristics of the indices in the VQ
domain. In order to survive the picture cropping attacks, a pseudo-random number traversing
method is applied to permute the watermark to disperse its spatial-domain relationships. With
a predetermined key, key
1
, in the pseudo-random number generating system, then
W
RP
=permute(W
R
,key
1
)
Then the permuted version W
RP,
is used for embedding into VQ indices.
In the VQ encoding procedure, X is divided into vectors x, then each x finds its
nearest codeword c
k
in the codebook C, and the index k is assigned to x for transmission.
During the transmission of the VQ indices, some errors might be induced by the channels,
thus the received indices would not be identical to the transmitted ones. While decoding with
the VQ indices, the decoder merely performs a table look-up process on the received index
k to obtain c
i
and the get the reconstructed image X.
The VQ is performed with the codebook size L. The codebook, C, and the codewords
therein, c
k
, k
C.
To embed the binary watermark into the original source, some relationships to alter
the VQ indices into binary format for further embedding need to be introduced. The
polarities, P, of the VQ indices to embed the watermarks. For natural images, the VQ indices
--------------------------------------------------------------------------------------
------------------------------------------
24
Seminar Report on
Multipurpose Image Watermarking
------------------------------------------------------------------------------------------
--------------------------------------------
among the neighboring blocks tend to be very similar, this characteristic can be used to
generate P.
Calculating the mean of y(m,n) and the indices of its surrounding blocks with
( , ) m n
=
1 1
1 1
1
( , )
9
m n
i m j n
y i j
+ +
Similarly obtaining the variance of y(m,n) and the indices of its neighboring block
with
2
(m,n) =
1 1
1 1
1
( , )
9
m n
i m j n
y i j
+ +
-
2
(m,n)
The polarities based on the means , variances and both the means and the variances , can be
decided with the pre-determined threshold value.
The threshold taken = for convenience and L= codebook size. Then the watermark
W
RP
can be embedded with P by the exclusive-or operation-
key
1
=W
RP
P.
5.1.2. Semi-Fragile Watermark Embedding Process
To embed one bit in each index in the second stage, we can adopt an index
constrained vector quantization (ICVQ) encoding scheme as shown in Fig. 3.
--------------------------------------------------------------------------------------
------------------------------------------
25
Seminar Report on
Multipurpose Image Watermarking
------------------------------------------------------------------------------------------
--------------------------------------------
FIG. 3. Semi-fragile watermark embedding process in the second stage
Because each index has n
2
bits, we can select an embedding position from n
2
candidate positions. Assume that we select Position key
3
, which is considered as a key, to
embed the watermark bit, where 0 key
3
n
2
-1 . Unlike the normal VQ encoder, the
embedding process for each watermark bit can be performed by searching the best match
codeword c
2p
for each input error vector x
1
under the constraints that the key
3
th bit of index is
equal to the watermark bit to be embedded. After the normal VQ decoder, we can obtain the
reconstructed error image X
1
, as follows:
X
1
= VQ
2
-1
[ICVQ
2
[X
1
]]
Then, we can obtain the final watermarked image , as follows:
X
W
= X
+ X
1
5.2 . EXTRACTION PROCESS
--------------------------------------------------------------------------------------
------------------------------------------
26
Division
Composition
Normal VQ
Decoder
Index Constrained
VQ Encoder
Codebook C
2
Output
Vectors
Input
Vectors
+
+
X
1
X
1
X
W
Encoded Indices
Watermarking
Position key
3
W
F
Seminar Report on
Multipurpose Image Watermarking
------------------------------------------------------------------------------------------
--------------------------------------------
To enhance the security of the embedding process, the equivalent product codebook C is used
in the extraction process as shown in Fig. 4, that is to say, the two-stage codebooks are used
as secret keys while the product codebook is open for users.
FIG. 4. Watermark Extraction Process
In addition, because the users do not know the codebook sizes used in two-stage VQ
either, how to segment the overall index into two stage indices is also a secret key, key
5
, to
--------------------------------------------------------------------------------------
------------------------------------------
27
Composition
Inverse
Permutation
XOR
Bit judgment
Index Polarities
Computation
Index
Segmentation
Normal VQ
Encoder
Division
Inverse
Permutation
Codebook C
u
X
w
key
4
Segmentation Position key
5
Codebook C
Input
Vectors
Encoded
Indices
Indices of Stage1
Indices of Stage2
Watermarking Position key
3
Extracted Bits
Extracted Semi-Fragile
Extracted Robust Watermark W
ER
Watermark W
EF
key
2
key
1
Seminar Report on
Multipurpose Image Watermarking
------------------------------------------------------------------------------------------
--------------------------------------------
users. In order to make the embedding algorithm more secretly, we can also permute the
product codebook and then publicize the permuted codebook C
u
for users.
The extraction process can be performed without the original image and can be
described as follows. First, perform the inverse permutation operation with key
4
on Codebook
C
u
to obtain the product codebook C. Second, the watermarked image X
w
is divided into
blocks or vectors. Third, the normal VQ encoder performs the nearest neighbor codeword
search on all input vectors to obtain the encoded overall indices. Fourth, according to the two
stage codebook sizes, each overall index is segmented into two indices. One is for robust
watermark extraction; the other is for semi-fragile watermark extraction. Finally, the robust
and semi-fragile watermarks are extracted independently. For the robust watermark
extraction, the polarities P are computed from the indices of Stage 1, and then XOR operation
is performed between P and key
2
to obtain the extracted permuted robust watermark W
EPR
,
and finally perform inverse permutation operation with key
1
to obtain the extracted robust
watermark W
ER
. For the semi-fragile watermark extraction, the key
3
th
bit of each index of
Stage 2 can be checked to obtain the extracted watermark bit, where key
3
is just the
watermarking position, and then piece all extracted bits together to form the extracted semi-
fragile watermark W
EF
. From the above, it can be seen that the advantages of using ICVQ in
the semi-fragile watermarking are as follows:
1) Both the embedding and the extraction processes are very simple.
2) The extraction is blind.
3) The embedded position can be controlled by a key for more security.
In Section C above, the problem of the robust embedding technique [21] are pointed
out. However, in this algorithm, this problem can be automatically solved. Using not the two-
stage codebooks but the equivalent product codebook to extract the watermarks can solve this
problem. From Fig. 4, it can be seen that the extraction time is determined by the codebook
size of C. If N is very large, then the full search VQ encoding is rather a time-consuming
process, so fast codeword search algorithm [24] is used in the proposed algorithm. A new
fast codeword search algorithm for image vector quantization (VQ) is introduced. This
algorithm performs a fast codeword search in the Hadamard Transform (HT) domain using
the partial distance search (PDS) technique. Experimental results show that the algorithm
needs only 2-3% or the distortion calculations of the exhaustive search method
--------------------------------------------------------------------------------------
------------------------------------------
28
Seminar Report on
Multipurpose Image Watermarking
------------------------------------------------------------------------------------------
--------------------------------------------
Chapter 6
DESIGN
FIG 6.1. The LBG procedure
--------------------------------------------------------------------------------------
------------------------------------------
29
Seminar Report on
Multipurpose Image Watermarking
------------------------------------------------------------------------------------------
--------------------------------------------
--------------------------------------------------------------------------------------
------------------------------------------
30
Start
Initial codebook (Y0)
M=0;
D
-1
=+
New partition calculation
S
m
=P(Y
m
)
Distortion (D
m
) calculation
(D
m-1
-D
m
) / D
m
<
New codebook calculation
Y
m+1
=X(S
m
)
ELGB Block
m=m+1
Final codebook (Y
m
);
End
Seminar Report on
Multipurpose Image Watermarking
------------------------------------------------------------------------------------------
--------------------------------------------
FIG. 6.2. ELBG codebook optimization
Fig. 6.3. High-level flow-chart of the ELBG block
--------------------------------------------------------------------------------------
------------------------------------------
31
Seminar Report on
Multipurpose Image Watermarking
------------------------------------------------------------------------------------------
--------------------------------------------
FIG. 6.4. Detailed description of the ELBG block
--------------------------------------------------------------------------------------
------------------------------------------
32
Seminar Report on
Multipurpose Image Watermarking
------------------------------------------------------------------------------------------
--------------------------------------------
Chapter 7
TERMINOLOGY
7.1. Asymmetric Watermarking :
In this case, the detection process (and in particular the detection key) is fully known
to anyone as opposed to blind watermarking where a secret key is required. So here, only a
'public key' is needed for verification and a 'private key' (secret) is used for the embedding
though. Knowledge of the public key does not help to compute the private key (at least in a
reasonable time), it does not either allow removal of the mark nor it allows an attacker to
forge a mark.
7.2. Capacity :
It describes how many information bits can be embedded into the cover data. It also
addresses the possibility of embedding multiple watermarks in one document in parallel.
7.3. Codebook :
In Vector Quatization, k-dimensional Euclidean space R
k
, is mapped into a finite
subset C={C
i
/ i=0,1,,N-1}. The subset C is generally called a codebook, where C
i
is a
codeword and N is the codebook size.
7.4. Complexity :
It describes the effort and time we need to embed and retrieve a watermark. This
parameter is essential for real-time applications.
7.5. Copy Protection :
Copy protection attempts to find ways, which limits the access to copyrighted
material and/or inhibit the copy process itself. A recent example is the copy protection
mechanism on DVDs.
7.6. Copyright Protection :
--------------------------------------------------------------------------------------
------------------------------------------
33
Seminar Report on
Multipurpose Image Watermarking
------------------------------------------------------------------------------------------
--------------------------------------------
Copyright protection inserts copyright information into the digital object
without the loss of quality. Whenever the copyright of a digital object is in question, this
information is extracted to identify the rightful owner. It is also possible to encode the
identity of the original buyer along with the identity of the copyright holder, which allows
tracing of any unauthorized copies.
7.7. Cryptography :
It is about protecting the content of messages (their meaning).
7.8. Digital Image :
A digital image a[m,n] described in a 2D discrete space is derived from an analog
image a(x,y) in a 2D continuous space through a sampling process that is frequently referred
to as digitization. The effect of digitization is shown in Figure 10. The 2D continuous image
a(x,y) is divided into N rows and M columns. The intersection of a row and a column is
termed a pixel. The value assigned to the integer coordinates [m, n] with {m=0,1,2,...,M-1}
and {n=0,1,2,...,N-1} is a[m,n]. In fact, in most cases a(x,y) is actually a function of many
variables including depth (z), color ( ), and time (t).
FIG. : Digitization of a continuous image.
7.9. Embedding-key :
It is a secret used to embed the mark in the original image.
7.10. Encryption :
--------------------------------------------------------------------------------------
------------------------------------------
34
Seminar Report on
Multipurpose Image Watermarking
------------------------------------------------------------------------------------------
--------------------------------------------
Encryption protects the images during their transmission. With encryption, an
eavesdropper does not have access to the on-line image when it is transferred. But when the
user has deciphered the image, then this image does not have any copyright protection
anymore.
7.11. Extraction-key :
It is a key used to detect or extract a watermark.
Symmetric watermarking algorithms require use the same secret key for embedding
and extraction. Asymmetric algorithms use a secret key for embedding and a public key for
extraction. Keys are built in such a way that the private key cannot be computed from the
public one.
7.12. Fingerprinting :
Fingerprints are characteristics of an object that tend to distinguish it from other
similar objects. They enable the owner to trace authorized users distributing them illegally. In
the case of encrypted satellite television broadcasting, for instance, users could be issued a set
of keys to decrypt the video streams and the television station could insert fingerprint bits
into each packet of the traffic to detect unauthorized uses.
7.13. Image Authentication :
It is the task of the watermark detector to indicate only those regions that have been
modified to change the content or meaning of the image (tamper detection); the bright pixels
in the images on the right highlight tampered areas in the image.
7.21. Robust Watermarks :
A robust watermark should be stuck to the document it has been embedded in, in such
a way that any signal transform of reasonable strength cannot remove the watermark. Hence a
pirate willing to remove the watermark will not succeed unless they debase the document too
much to be of commercial interest.
7.22. Segmentation :
--------------------------------------------------------------------------------------
------------------------------------------
35
Seminar Report on
Multipurpose Image Watermarking
------------------------------------------------------------------------------------------
--------------------------------------------
In the analysis of the objects in images, it can be distinguished between the objects of
interest and "the rest." This latter group is also referred to as the background. The techniques
that are used to find the objects of interest are usually referred to as segmentation techniques -
segmenting the foreground from background.
7.23. Semi-blind Watermarking :
In some cases you may need extra information to help your detector (in particular to
synchronize its random sequence on the possibly distorted test signal). In particular some
watermarking schemes require access to the 'published' watermarked signal, that is the
original signal just after adding the watermark.
7.24. (Semi-) fragile Watermarks:
A (semi-)fragile watermark is a mark which is (highly) sensitive to a modification of
the stegno-medium. A fragile watermarking scheme should be able to detect any change in
the signal and identify where it has taken place and possibly what the signal was before
modification.
7.25. Signature :
The owner of the image may electronically sign the image (with a hash function and a
signature algorithm), but since the signature is added as a suffix to the image, it can easily be
removed by anyone who gets the image.
7.26. Spatial Watermarks :
Spatial domain, additive watermarking is the same as additive watermarking in any
domain that is a linear transformation of the spatial domain, e.g. Fourier, block DCT,
wavelet, etc. It usually means that someone has created a watermark pattern that has the same
dimensions as the original image and has added the watermark pattern to the image.
7.27. Steganography :
As the purpose of steganography is having a covert communication between two
parties whose existence is unknown to a possible attacker, a successful attack consists in
--------------------------------------------------------------------------------------
------------------------------------------
36
Seminar Report on
Multipurpose Image Watermarking
------------------------------------------------------------------------------------------
--------------------------------------------
detecting the existence of this communication (e.g., using statistical analysis of images with
and without hidden information).
Steganography is a very generic concept that consists in hiding messages in a way that
eavesdroppers or any monitors do not even know that there is a communication and a
message is being sent. Many data hiding techniques were invented for this purpose. Those
techniques inspired the development of watermarking algorithms for copyright protection.
7.28. Transparency :
It relates to the properties of the human sensory system. A transparent watermark
causes no perceptible artifacts or quality loss.
7.29. Vector Quantization :
The objective of VQ is the representation of a set of feature vectors
k
R X x by a
set, Y = {y1 , ..., y
NC
}, of N
C
reference vectors in
k
R
. Y is called codebook and its elements
codewords. The vectors of X are called also input patterns or input vectors. So, a VQ can be
represented as a function:
Y X q :
.
7.30. Verification :
It procedure distinguishes between private verification similar to symmetric
cryptography and public verification like in asymmetric cryptography. Furthermore, during
verification, we differ between invertible and noninvertible techniques, where the first one
allows the reproduction of the original and the last one provides no possibility to extract the
watermark without alterations of the original.
7.31. Visible and Invisible Watermarking :
Visibility is a term associated with the perception of the human eye. A watermarked
image in which the watermark is imperceptible, or the watermarked image is visually
identical to its original constitutes a invisible watermarking. Examples include images
distributed over internet with watermarks embedded in them for copyright protection. Those
which fail can be classified as visible watermarks. Examples include logos used in papers in
currencies.
--------------------------------------------------------------------------------------
------------------------------------------
37
Seminar Report on
Multipurpose Image Watermarking
------------------------------------------------------------------------------------------
--------------------------------------------
7.32. Watermarking :
The process of embedding information into another object/signal can be termed as
watermarking.
Watermarking is the robust embedding of a copyright information (e.g. time and date,
copyright identifiers or simply a correlation pattern) into a content. This content may be a text
or audio content but most of the time watermarking is applied to still or moving images.
Chapter 8
EXAMPLES
8.1. Original Lena Image
8.2 Original Robust Watermark
--------------------------------------------------------------------------------------
------------------------------------------
38
Seminar Report on
Multipurpose Image Watermarking
------------------------------------------------------------------------------------------
--------------------------------------------
8.3. Original Semi-fragile Watermark
--------------------------------------------------------------------------------------
------------------------------------------
39
Seminar Report on
Multipurpose Image Watermarking
------------------------------------------------------------------------------------------
--------------------------------------------
8.4. Extracted watermarks under no attacks :
The watermarked images along with extracted watermarks under no
attacks and NHS values are depicted in Fig. 10.
Watermarked Image Under No
attack
NHS = 1 NHS = 1
8.6. Spatial-Domain Image Processing Attacks :
Several spatial-domain image processing techniques, including
image cropping, median filtering, blurring, high-pass filtering, contrast
enhancement, and brightness enhancement are performed on the
watermarked image. The attacked images along with extracted
watermarks are depicted in Fig. 12. Except for the case of high-pass
filtering, the robust watermark can successfully survive with NHS > 0.7.
Although the NHS value of the extracted robust watermark in the high-
pass filtering case is somewhat smaller in this algorithm, the information
conveyed therein is still recognizable. For the case of image cropping in
the upper-left corner, the extracted semi-fragile watermark can locate the
cropping position. For each case, the semi-fragile watermark can be used
to verify the authenticity of the watermarked image.
--------------------------------------------------------------------------------------
------------------------------------------
40
Seminar Report on
Multipurpose Image Watermarking
------------------------------------------------------------------------------------------
--------------------------------------------
Image cropping NHS = 0.9109 NHS = 0.8654
Median filtering NHS = 0.9454 NHS = 0.8381
Image Blurring NHS = 0.7732 NHS = 0.5430
--------------------------------------------------------------------------------------
------------------------------------------
41
Seminar Report on
Multipurpose Image Watermarking
------------------------------------------------------------------------------------------
--------------------------------------------
Image High Pass filtering NHS = 0.5847 NHS = 0.4790
Contrast Enhancement NHS = 0.8603 NHS = 0.4880
Brightness Enhancement NHS = 0.8115 NHS = 0.3896
--------------------------------------------------------------------------------------
------------------------------------------
42
Seminar Report on
Multipurpose Image Watermarking
------------------------------------------------------------------------------------------
--------------------------------------------
Chapter 9
APPLICATIONS
First applications, which came to mind, were related to copyright protection of digital
media. For everyone it is extremely easy to duplicate digital data and this even without any
loss of quality. Similar to the process in which artist artistically signed their paintings with a
brush to claim their copyrights, artists of today can watermark their work and hide for
example their name in the image. Hence, the embedded watermark will allow identifying the
owner of the work.
It is clear that this concept is also applicable to other media such as digital video and
audio. Especially the distribution of digital audio over the Internet in the MP3 format is
currently a big problem. In this scenario digital watermarking may be useful to set up a
--------------------------------------------------------------------------------------
------------------------------------------
43
Seminar Report on
Multipurpose Image Watermarking
------------------------------------------------------------------------------------------
--------------------------------------------
controlled audio distribution and provide efficient means for copyright protection, usually in
collaboration with international registration bodies such as the IDDN-Inter Deposit Digital
Number.
In the field of data security, watermarks may be used for certification, authentication, and
conditional access. Certification is an important issue for official documents, such as identity
cards or passports.
Example of a protected identification card. The identification number "123456789" is
written in clear text on the card and hidden as a watermark in the identity photo.
Digital watermarking allows to mutually link information on the documents. That
means that some information is written twice on the document: for instance, the name of a
passport owner is normally printed in clear text and is also hidden as an invisible watermark
in the photo of the owner. If anyone would intend to counterfeit the passport by replacing the
photo, it would be possible to detect the change by scanning the passport and verifying the
name hidden in the photo does not match any more the name printed on the passport. The
picture below shows a printing machine from Intercard for various types of plastic cards.
--------------------------------------------------------------------------------------
------------------------------------------
44
Seminar Report on
Multipurpose Image Watermarking
------------------------------------------------------------------------------------------
--------------------------------------------
Printing machine for identification cards.
Another application is the authentication of image content. The goal of this
application is to detect alterations and modifications in an image. The three pictures below
illustrate an example of this application. The picture on the left shows an original photo of a
car that has been protected with a watermarking technology. In the center, the same picture is
shown but with a small modification: the numbers on the license plate have been changed.
The picture on the right shows the photo after running the watermark detection program on
the tampered photo. The tampered areas are indicated in white and it can clearly be seen that
the detected areas correspond to the modifications applied to the original photo.
Using digital watermarks for integrity verification.
--------------------------------------------------------------------------------------
------------------------------------------
45
Seminar Report on
Multipurpose Image Watermarking
------------------------------------------------------------------------------------------
--------------------------------------------
Other applications related to conditional access and copy-control are also possible.
For example conditional access to confidential data on CD-ROMs may be provided using
digital watermarking technology. The concept consists of inserting a watermark into the CD
label. In order to read and decrypt the data stored on the CD, the watermark has to be read
since it contains information needed for decryption. If someone copies the CD, he will not be
able to read the data in clear-text since he does not have the required watermark. The picture
below shows an example of a protected CD. To read the data on the CD, the user starts a
program on the CD. This program asks the user to put the CD on the scanner and then reads
the watermark. If the watermark is valid the program decrypts the data on the CD and gives
the user access the clear-text data.
Conditional access to confidential data stored on CD-ROMs.
Chapter 10
CONCLUSION
An efficient multipurpose watermarking algorithm based on multistage VQ has been
presented. In the this algorithm, the robust watermark is embedded in the first stage using the
robust watermarking method based on index properties [21] and the semi-fragile watermark
is embedded in the second stage using a simple index constrained method. Although the
encoded indices of the attacked watermarked image may be very different from the original
ones, the variance of neighboring indices does not vary too much. The first-stage
watermarking method is, therefore, robust. On the other hand, the second-stage watermarking
method is based on an index constrained codeword search procedure, in which the index is
--------------------------------------------------------------------------------------
------------------------------------------
46
Seminar Report on
Multipurpose Image Watermarking
------------------------------------------------------------------------------------------
--------------------------------------------
modified according to the bit to be embedded. Any change in the encoded indices may
introduce the change in the extracted watermark bit. In other words, the second-stage
watermarking method can tolerate few modifications, so it is fragile to most intentional
attacks. Experimental results demonstrate that this method can be used for copyright
protection by extracting the first-stage watermark, and it can also be used for image
authentication by extracting the second stage watermark.
Compared with existing multipurpose watermarking algorithms, the
advantages of the proposed algorithm are as follows.
1) The proposed algorithm can tolerate rotation attacks with relatively
larger angles.
2) The semi-fragile and robust watermarks are extracted
independently and blindly.
3) Different codebooks are used in the embedding (the two-stage
codebooks) and the extraction (the product codebook) processes.
The final product codebook can be public for users, so the extraction
process sometimes can be performed publicly for special
applications.
4) Because the embedded position in the VQ index for the semi-fragile
watermark is secret, the two stage codebooks used in the
embedding process are secret, and the product codebook for
extraction is encrypted (not the same as that for users), it is hard for
the attacker to forge the valid semi-fragile watermark in the
tampered watermarked image.
5) The developed algorithm can be extended to meet three purposes,
e.g., digital fingerprint, copyright protection and image
authentication, by embedding three watermarks in a three-stage
VQ.
6) The VQ-based watermarking algorithm can reduce the amount of
the data transmitted.
Chapter 11
FUTURE WORK AND LIMITATIONS
--------------------------------------------------------------------------------------
------------------------------------------
47
Seminar Report on
Multipurpose Image Watermarking
------------------------------------------------------------------------------------------
--------------------------------------------
1) The quality of the watermarked image obtained by existing VQ-
based watermarking algorithms is not high enough for copyright
protection. We may use other kinds of vector quantizers or
combine it with DWT or DCT to improve the image quality.
2) The semi-fragile watermark used in the proposed algorithm cannot
tell what kind of attack the watermarked image suffers from.
3) The human visual characteristics are not adopted in the VQ-based
watermarking systems.
4) The extraction is based on the product codebook, so this process is
time consuming if we use the full-search encoding algorithm.
5) From the experimental results, we can see that in the proposed
algorithm, the robust watermark should be embedded in the first
stage for obtaining high quality. How to analyze the embedding
order in general sense is a problem to solve.
--------------------------------------------------------------------------------------
------------------------------------------
48
Seminar Report on
Multipurpose Image Watermarking
------------------------------------------------------------------------------------------
--------------------------------------------
Chapter 12
REFERENCES
[1] Zhe-Ming Lu, Dian-Guo Xu, and Sheng-He Sun, Multipurpose Image Watermarking
Algorithm Based on Multistage Vector Quantization, IEEE Transactions on Image
Processing, vol. 14, no. 6, June 2005
[2] J. J. K. ORuanaidh, W. J. Dowling, and F. M. Boland, Watermarking digital images for
copyright protection, Proc. Inst. Elect. Eng., vol. 143, no. 4, pp. 250256, Aug. 1996.
[3] I. J. Cox, J. Kilian, F. T. Leighton, and T. Shamoon, Secure spread spectrum
watermarking for multimedia, IEEE Trans. Image Process., vol. 6, no. 12, pp. 16731687,
Dec. 1997.
[4] M. D. Swanson, Z. Bin, and A. H. Tewfik, Multiresolution scene-based video
watermarking using perceptual models, IEEE J. Sel. Areas Commun., vol. 16, no. 5, pp.
540550, May 1998.
[5] G. Voyatzis and I. Pitas, The use of watermarks in the protection of digital multimedia
products, Proc. IEEE, vol. 87, no. 7, pp. 11971207, Jul. 1999.
[6] S. Pereira and T. Pun, An iterative template matching algorithm using the chirp-Z
transform for digital image watermarking, Pattern Recognit., vol. 33, no. 1, pp. 173175,
2000.
[7] Y. Wang, J. F. Doherty, and R. E. Van Dyck, A wavelet-based watermarking algorithm
for ownership verification of digital images, IEEE Trans. Image Process., vol. 11, no. 2, pp.
7788, Feb. 2002.
[8] P. S. L. M. Barreto, H.Y. Kim, andV. Rijmen, Toward secure public-key blockwise
fragile authentication watermarking, Proc. Inst. Elect. Eng., vol. 149, no. 2, pp. 5762, Apr.
2002.
[9] M. U. Celik, G. Sharma, E. Saber, and A. M. Tekalp, Hierarchical watermarking for
secure image authentication with localization, IEEE Trans. Image Process., vol. 11, no. 6,
pp. 585595, Jun. 2002.
[10] L. Jaejin and S. W. Chee, A watermarking sequence using parities of error control
coding for image authentication and correction, IEEE Trans. Consum. Electron., vol. 46, no.
2, pp. 313317, May 2000.
--------------------------------------------------------------------------------------
------------------------------------------
49
Seminar Report on
Multipurpose Image Watermarking
------------------------------------------------------------------------------------------
--------------------------------------------
[11] D. Kundur and D. Hatzinakos, Digital watermarking for telltale tamper proofing and
authentication, Proc. IEEE, vol. 87, no. 7, pp. 11671180, Jul. 1999.
[12] C. S. Lu and H. Y. M. Liao, Multipurpose watermarking for image authentication and
protection, IEEE Trans. Image Process., vol. 10, pp. 15791592, Oct. 2001.
[13] Brad Cox. Superdistribution: objects as property on the electronic frontier. Addison-
Wesley, 1996.
[14] Fabien A. P. Petitcolas, Ross J. Anderson, and Markus G. Kuhn. Attacks on Copyright
Marking Systems. In Second International Workshop on Information Hiding, April 1998.
[15] C. Busch and S. D. Wolthusen, Tracing data diffusion in industrial research with robust
watermarking, in Proc. 4th IEEE Workshop on Multimedia Signal Processing, 2001, pp.
207212.
[16] Z. M. Lu and S. H. Sun, Digital image watermarking technique based on vector
quantization, Electron. Lett., vol. 36, no. 4, pp. 303305, Feb. 2000.
[17] Z. M. Lu, J. S. Pan, and S. H. Sun, VQ-based digital image watermarking method,
Electron. Lett., vol. 36, no. 14, pp. 12011202, Jul. 2000.
[18] Z. M. Lu, C. H. Liu, and S. H. Sun, Digital image watermarking technique based on
block truncation coding with vector quantization, Chin. J. Electron., vol. 11, no. 2, pp. 152
157, Apr. 2002.
[19] J. Minho and K. HyoungDo, A digital image watermarking scheme based on vector
quantization, IEICE Trans. Inf. Syst., vol. E85-D, no. 6, pp. 10541056, Jun. 2002.
[20] A. Makur and S. S. Selvi, Variable dimension vector quantization based image
watermarking, Signal Process., vol. 81, no. 4, pp. 889893, Apr. 2001.
[21] H. C. Huang, F. H. Wang, and J. S. Pan, A VQ-based robust multiwatermarking
algorithm, IEICE Trans. Fund., vol. E85-A, no. 7, pp. 17191726, Jul. 2002.
[22] , Efficient and robust watermarking algorithm with vector quantization, Electron.
Lett., vol. 37, no. 13, pp. 826828, Jun. 2001.
[23] Y. Linde, A. Buzo, and R. M. Gray, An algorithm for vector quantizers design, IEEE
Trans. Commun., vol. 28, no. 1, pp. 8495, Jan. 1980.
[24] Z. M. Lu, J. S. Pan, and S. H. Sun, Efficient codeword search algorithm based on
Hadamard transform, Electron. Lett., vol. 36, no. 16, pp. 13641365, Aug. 2000.
[25] Intertrust. Website. http://www.intertrust.com, 1997.
--------------------------------------------------------------------------------------
------------------------------------------
50
Seminar Report on
Multipurpose Image Watermarking
------------------------------------------------------------------------------------------
--------------------------------------------
[26] Alma Whitten. Making Security Usable. PhD proposal at Carnegie Mellon University,
January 1998. Work in progress.
[27] Robert A. Cinque. Making Cyberspace Safe for Copyright: The Protection of Electronic
Works in a Protocol to the Berne Convention. 18 FORDHAM INT'L L.J., 1995. citing Berne
Convention art 7(6).
[28] Ross J. Anderson and Fabien A.P. Petitcolas. On The Limits of Steganography. In
IEEE Journal on Selected Areas in Comunications - Special Issue on Copyright & Privacy
Protection, 1998. http://www.cl.cam.ac.uk/users/fapp2/ papers/ On The Limits Of
Steganography/.
[29] J. J. K. Ruanaidh and Thierry Pun. Rotation, Scale and Translation Invariant Digital
Image Watermarking. Submitted to Signal Processing, February 1997.
[30] I. Cox, J. Killian, T. Leighton, and T. Shamoon. Secure spread spectrum watermarking
for images, audio and video. In Proceedings of the IEEE Int. Conf. on Image Processing
ICIP-96, pages 243{246, Lausanne, Switzerland, September 16-19 1996.
[31] J. J. K. Ruanaidh, W. J. Dowling, and F. M. Boland. Phase watermarking of digital
images. In Proceedings of the IEEE Int. Conf. on Image Processing ICIP-96, pages 239-242,
Lausanne, Switzerland, September 16-19 1996.
[32] Robert A. Cinque. Making Cyberspace Safe for Copyright: The Protection of Electronic
Works in a Protocol to the Berne Convention. 18 FORDHAM INT'L L.J., 1995. citing Berne
Convention art 7(6).
[33] I.J. Cox, J. Kilian, T. Leighton, and T. Shamoon. A secure, robust watermark for
multimedia. In ed. R. Anderson, editor, Information Hiding: First Int. Workshop Proc.,
volume 1174 of Lecture Notes in Computer Science, pages 185{206. Springer-Verlag, 1996.
[34] I.J. Cox, J. Kilian, T. Leighton, and T. Shamoon. Secure spread spectrum watermarking
for images audio and video. In IEEE Int. Conf. on Image Processing, volume 3, pages
243{246, Lausanne,Switzerland, September 1996.
[35] I.J. Cox, J. Kilian, T. Leighton, and T. Shamoon. Secure spread spectrum watermarking
for multimedia. IEEE Trans. on Image Processing, 6(12):1673-1687, 1997.
[36] I.J. Cox and L. Miller Matt. A review of watermarking and the importance of
perceptual modeling. In Proc. of Electronic Imageing'97, February 1997.
[37] Ingemar J. Cox and Jean-Paul M.G. Linnartz. Public watermarks and resistance to
tampering. In Proceedings of the IEEE International Conference on Image Processing, 1997.
--------------------------------------------------------------------------------------
------------------------------------------
51
Seminar Report on
Multipurpose Image Watermarking
------------------------------------------------------------------------------------------
--------------------------------------------
[38] Mauro Barni, Franco Bartolini, Ingemar J. Cox, Juan Hernandez, Fernando Perez
Gonzalez, Digital watermarking for copyright protection: A Communication perspective,
IEEE Communications Magazine, August 2001.
WEB SITES
http://www.ieeexplore.ieee.org
http://www.altern.com/watermark
http://www.cl.cam.ac.uk/~mgk25/stirmark.html
http://www.chez.com/pdufour/ zip/digimarc.zip
http://www.watermarkingworld.org/
http://www.cosy.acat/~pmeerw/watermarking
--------------------------------------------------------------------------------------
------------------------------------------
52