Sunteți pe pagina 1din 95

CHAPTER 1

INTRODUCTION

1
1.1 MOTIVATION

With the rapid growth of multimedia systems and popularity of Internet, there has
been a vast increase in the use and distribution of digital media data. Digital images
become more and more popular in various applications. People can not only conveniently
obtain and exchange digital images, but also can easily manipulate them [ZST04]. By
using the powerful personal computer and image editing software, even an inexperienced
user is able to edit a picture at will, such as adding, deleting or replacing specific objects.
Some powerful software, like Adobe Photoshop, can even help a common amateur, who
doesnt have any professional skills, to make perfect manipulations without introducing
any noticeable traces [CMB01]. Figure 1-1 shows an example of image manipulation,
which was published by Spiegel Online in April 2005 [SO05]. In the Deutsch Bank
annual report of 2004, an old photo of the board of management from the annual report
of 2003 was reused after some manipulations. As can be seen in Figure 1-1 (b), one
person on the right was removed and another person on the left was moved to the right
side. The tampered image looks visually perfect and genuine. The new photo conveys
to the viewer the information that the management board met again in 2004, but in fact
they did not.

It is very hard, if not impossible, for a human to judge whether an image is authentic
or not by perceptual inspection. As a result, the old proverb Words are but wind, but
seeing is believing. is not true any more in this digital era. Therefore, no visual data can
be considered trustworthy before passing certain integrity authentication. A pressing
security need is emerging to protect the visual data against illegal content tampering and
manipulation [ZS03]. Visual data authentication is to verify whether the visual content
has undergone any tampering since it has been created [CMB01]. It resembles the

2
problem of message authentication that has been well studied in [S95] yet has some
unique features. The traditional cryptographic solution to message authentication is to
make use of digital signatures. A digital signature scheme normally consists of two
algorithms: one for signing which involves the users secret or private key, and the other
for verifying signatures which involves the users public key [G04][MOV96].

However, cryptographic solutions, like digital signatures, are not well suited for
visual data authentication due to their characteristics. First, digital signature provides
only bitwise authentication. The targeted data must be identical to the original copy in
order to be considered as authentic by the digital signature. Even one bit difference will
render the whole content unauthentic. In the visual data applications, the perceptual
content instead of its binary representation should be authenticated because the same
visual content may have different yet equivalent representations. Due to the massive
volume, visual data are usually stored and distributed in compressed ways. Such
compression methods are often not lossless and will render the compressed data slightly
different from the original copy. For example, many digital images on the Web are
commonly stored in JPEG format, which compresses the image in a lossy way. In JPEG
compression, the image data is quantized; some image data, to which the human
eyes are not sensitive, is even discarded. Moreover, the data may also undergo other
incidental distortions in the transmission, such as random bit errors and packet loss.
Obviously, a digital signature can not survive these inevitable common processing of the
data, while all of these distortions are acceptable in visual data applications because they
are usually imperceptible and do not break the datas integrity. In other words, the
conventional digital signature technique cannot distinguish between the incidental
distortions and intentional manipulations, also known as malicious manipulations, of the
visual contents.

In addition, digital signatures can neither provide any localization information of


the manipulations nor have any capability of recovering the original data. For visual
content authentication, the capability of localizing the manipulations is a particularly
desirable feature in most applications [ZS03]. Not only the content integrity needs to be

3
verified, but also the knowledge of the tampered positions is very useful. With the help of
the localization information, other parts of the content can still remain trustworthy and
useful when the original data is not available. Knowing the exact position where the
manipulation occurs can also help to infer an adversarys motives in applications like
forensic evidences. Recovering the original data from the tampered version is also a
desirable feature, which helps to estimate the extent of the modifications and reveals how
the original content looked like, although it is not always possible. Moreover, digital
signatures are stored separately and externally attached to the data to provide the
authentication. The need of additional storage significantly decreases their compatibility
and portability in the practical applications. Furthermore, this property also renders them
easily to be removed either incidentally or intentionally [CMB01]. For example, given a
JPEG image with a digital signature stored in the JPEG file header as metadata, when the
JPEG image is converted to another format that has no space for the signature in its
header, the stored signature will be lost. Therefore, new security solutions are demanded
for visual data authentication which should meet the special requirements of the
corresponding applications. Digital watermarking is such a technique concerning
multimedia security [CMB01]. Compared with cryptography, it is much better suited for
visual data protection. Digital watermarking could be completely compatible with
multimedia systems because it is not only transparent to both the viewer and the system
but also able to survive the common media processing as well. Image content
authentication is one of the application fields of digital watermarking. For image content
authentication, it has many advantages over digital signatures. It can fulfill the above-
mentioned requirements, not only being able to verify the integrity of multimedia content
but also providing much more tampering information. Due to its outstanding advantages
in multimedia data protection, digital watermarking has become a very active research
field and been widely accepted as a very promising technique for multimedia security.

4
1.2 WATERMARK:

The rapid development of computer network and multimedia technology makes it


easier to assess digital media all over the world. Since the problem of illegal reproduction
and modifications has become more serious than before, it is important to protect the
intellectual property of digital media. To tackle the problem, digital watermark has been
proposed as a means to identify the owner of digital media such as text, image, video and
audio. The watermarking technique embeds authors information into digital media and
provides the corresponding authentication mechanism. Satisfactory digital watermarking
must meet the following requirements: Robustness, Imperceptibility, and Security. In
general, the proposed image watermarking techniques are divided into two groups,
namely embedding watermark in spatial domain and in frequency domain, depending on
the processing domain of cover image in which the watermark is embedded.

1.3 CHARACTERISTICS OF DIGITAL WATERMARKING

Digital watermarks have several desirable characteristics. The watermark should


not degrade the image to a degree that interferes with its usefulness. The watermark
should not require additional image formats or storage space. The watermark should be
integrated with the image content so that it cannot be removed easily without severely
degrading the image. The watermark should be fairly tamper-resistant and robust to
common signal distortions, compression, and malicious attempts to remove the
watermark. However, this is not achieved by many watermarks. The watermark can be
made invisible to the human eye, but should be still readable by computer to prove the
ownership.
Digital watermarks may be perceptible (visible to human eye) or imperceptible to
the human senses. If the watermark is to be imperceptible, then the existence of the
watermark should not be advertised. Advertising the presence of watermarks invites
\pirates to attempt to alter or disable the watermarks. Other authors prefer visible
watermarks, or clearly advertise the existence of watermarks as a deterrent against illicit

5
duplication or theft. Both viewpoints have merit; but the determination must be made by
the owner of the images and depends on the intended use of the watermarked work.
Various sorts of information can be stored in a watermark, including license, copyright,
copy control, content authentication, and tracking information. This information can be
used for copy protection, document identification, ownership designation, or as a means
to track works to and from licensed users.

1.4 CLASSIFICATION OF WATERMARKING TECHNIQUES

The current watermarking scheme is divided into two areas: spatial domain
approach and frequency domain approach. Watermarks are embedded into images by
changing some bits in image representation. Some methods operate on least significant
bits, while others embed information into perceptually more significant image
components. It may be grouped under two general classifications: those that fall into the
spatial domain and those that fall into the transform domain. In spatial domain it
represents the LSB (Least Significant Bit) however; in the frequency domain it represents
the high frequency components

1.4.1. SPATIAL DOMAIN WATERMARKING:

The methods of spatial domain approach modify spatial characteristics of an


image to embed a watermark. For example, the brightness of individual pixels has high
frequency watermarking in watermarked image. In general, the advantage of spatial
domain approach is better computing performance. Techniques that provide additive
image information such as masking techniques without applying a function of the image
to determine the watermark location are also categorized as being in the spatial domain,
though they share the survivability properties of transform domain watermarking
techniques.

Two digital watermark techniques are there in spatial domain. The first technique
is based on manipulate the bit plane of the LSB, while the second utilizes linear addition

6
of the watermark to cover image. A watermark technique based on color space
transformation, The color space of cover image is transformed from RGB to HSI space
and then embedded watermark into saturation channel. This method is able to resist some
attacks. Watermark is embedded additively. The novelty of this technique lies in the use
of secret image instead of host image for watermark extraction and use of image
dependent and image independent permutations to de-correlate the watermark logos.
However, Common disadvantage of spatial domain watermarking are lower security and
weaker robustness.

1.4.2. FREQUENCY DOMAIN WATER MARKING:

Frequency domain approach, inserts watermark signal by modifying image with


coefficients of transformation. Transformation can be Fourier transformation, DCT, or
wavelet transformation, etc. It is based on the perceptual significance of the transformed
coefficients. A watermark is cast into transformed coefficients of relatively significant
areas of the cover image. The watermarked image is generated by inverse transformation
with all of the coefficients. Therefore, frequency domain approach is more robust and
provides high security, but the watermark capacity that can be cast is limited and the
computing is more complicated , Some authors proposed a color image watermark
technique based on DCT in frequency domain. This method embedded the watermark
into middle frequency coefficient of transformed blocks; therefore this method is more
robust against the attacks.

A method of embedding the watermark in the DC component of transformed


blocks. The watermarking method based on the qualified significant wavelet tree
(QSWT) is proposed. In this method, the embedding schema takes the relationships of
DWT coefficients and spatial information into consideration. Piva, A., Barni, M.,
Bartolini, F., Cappellini, V., presented an image authentication technique by embedding
digital watermarks into image. In their approach, watermark is embedded with visually
recognizable patterns into the images by selectively modifying the middle-frequency
parts of the image. Frequency domain watermarking and masking techniques are more

7
robust against attacks such as lossy compression, cropping, and other image processing
techniques in which significant bits are changed.

Fourier Mellin transform is similar to applying Fourier Transform to log-polar


coordinate system for an image. This scheme is robust against RST attacks. Magnitude of
DWT coefficients is larger in the lowest bands (LL) at each level of decomposition and is
smaller for other bands (HH, LH, and HL). A method of data hiding scheme based on
DFT, where they modify the magnitude component of the DFT coefficients is proposed in
Robust Data Hiding Scheme for Digital Images Using DFT , in IEEE ICIP, vol 2, pp
211-215, October 99 by Ramkumar, M., Akansu, A.N., Alatan, A.A.
.
Their simulations suggest that the proposed technique survives practical
compression. This can be attributed to the fact that most practical compression schemes
try to maximize the PSNR. Hence using magnitude DFT is a way to exploit the loop-hole
in most practical compression schemes. The proposed technique is shown to be resistant
to JPEG and SPIHT compression. The scheme in which the watermark is inserted by
directly modifying the mid frequency bands of the DFT magnitude component .

Computational complexity of DWT is compared to DCT . Watermark embedding


is based on a chaotic (mixing) system. Original image is not required for watermark
detection. The watermark is embedded in spatial domain by modifying the pixel or
luminance values. A similar approach is presented for the wavelet domain , where a
watermarking algorithm based on chaotic encryption. If the watermark is embedded in
high frequency components, it is robust against contrast and brightness adjustment,
gamma correction, histogram equalization and cropping and vice-versa. Thus, to achieve
overall robustness against a large number of attacks the authors proposed to embed
multiple watermarks in low frequency and high frequency bands of DWT .

Later the authors proposed another technique termed as Fuse Mark , which
includes minimum variance fusion for watermark extraction. DFT embedded the
watermarks in magnitudes is also resistant to cropping because effect of cropping leads to

8
the blurring of spectrum. If the watermarks are embedded in the magnitude, which are
normalized coordinates, there is no need of any synchronization. Rotation of image
results in cyclic shifts of extracted signal and can be detected by exhaustive search . The
Coefficient Selection Criteria is used to embed the watermark. Modification to the low
frequency coefficients can cause visible artifacts in the spatial domain and high frequency
coefficients are not suitable because they are removed during JPEG compression.
Therefore, authors suggested that the best location to embed the watermark is the mid
frequency.

Both spatial domain and transform domain methods may employ patchwork,
pattern block encoding, or spread spectrum concepts which add redundancy to the hidden
information . These approaches help to protect against some types of image processing
such as cropping and rotating. Watermarking techniques could also be classified based on
whether an original (non-watermarked) image is needed for watermark recovery Some
watermarking techniques extract the watermark by comparing the original image and the
watermarked image

In transform domain watermarking techniques that do not require original image


to extract the watermark.

1.5. REQUIREMENTS OF DIGITAL WATERMARKING

There are three main requirements of digital watermarking; transparency, robustness, and
capacity.

1.5.1 TRANSPARENCY OR FIDELITY:

The digital watermark should not affect the quality of the original image after it is
watermarked. In [19], authors define transparency or fidelity as, perceptual similarity
between the original and the watermarked versions of the cover work. Watermarking

9
should not introduce visible distortions because if such distortions are introduced it
reduces the commercial value of the image.

1.5.2 ROBUSTNESS:

In [19, authors define robustness as, the ability to detect the watermark after
common signal processing operations. Watermarks could be removed intentionally or
unintentionally by simple image processing operations like contrast or brightness
enhancement, gamma correction etc. Hence watermarks should be robust against variety
of such attacks. Stirmark2 classifies attacks into four basic categories, attacks that try to
remove watermarks totally, attacks that try to remove the synchronization between the
embedded and the detector, cryptographic attacks and protocol attacks.

1.5.3 CAPACITY OR DATA PAYLOAD:

The capacity or data payload, The number of bits a watermark encodes within a
unit of time or work. This property describes how much data should be embedded as a
watermark to successfully detect during extraction. Watermark should be able to carry
enough information to represent the uniqueness of the image. Different application has
different payload requirements.

1.6. WATERMARKING APPLICATIONS

The main applications of digital watermarking are discussed here.

1.6.1 COPYRIGHT PROTECTION:

Watermarking can be used to protecting redistribution of copyrighted material


over the untrusted network like Internet or peer-to-peer (P2P) networks. Content aware
networks (p2p) could incorporate watermarking technologies to report or filter out
copyrighted material from such networks.

10
1.6.2 CONTENT ARCHIVING:

Watermarking can be used to insert digital object identifier or serial number to


help archive digital contents like images, audio or video. It can also be used for
classifying and organizing digital contents. Normally digital contents are identified by
their file names; however, this is a very fragile technique as file names can be easily
changed. Hence embedding the object identifier within the object itself reduces the
possibility of tampering and hence can be effectively used in archiving systems.

1.6.3 META-DATA INSERTION:

Meta-data refers to the data that describes data. Images can be labeled with its
content and can be used in search engines. Audio files can carry the lyrics or the name of
the singer. Journalists could use photographs of an incident to insert the cover story of the
respective news. Medical X-rays could store patient records.

1.6.4 BROADCAST MONITORING:

Broadcast Monitoring refers to the technique of cross-verifying whether the


content that was supposed to be broadcasted (on TV or Radio) has really been
broadcasted or not. Watermarking can also be used for broadcast monitoring. This has
major application is commercial advertisement broadcasting where the entity who is
advertising wants to monitor whether their advertisement was actually broadcasted at the
right time and for right duration.

1.6.5 TAMPER DETECTION:

Digital content can be detected for tampering by embedding fragile watermarks. If


the fragile watermark is destroyed or degraded, it indicated the presence of tampering and
hence the digital content cannot be trusted. Tamper detection is very important for some
applications that involve highly sensitive data like satellite imagery or medical imagery.

11
Tamper detection is also useful in court of law where digital images could be used as a
forensic tool to prove whether the image is tampered or not.

1.6.6 DIGITAL FINGERPRINTING:

Digital Fingerprinting is a technique used to detect the owner of the digital


content. Fingerprints are unique to the owner of the digital content. Hence a single digital
object can have different fingerprints because they belong to different users

1.7 ORIGINAL IMAGE:

Consider the following scenario: Alice, The copyright holder, inserts hid own
watermark into some object, locks the original away and keeps selling the watermarked
images. Bob can try to insert his own watermark into the already marked object .In case
of dispute, both Alice and bob are able to prove the presence of their watermark and
claim ownership of the document. How can
this situation will be resolved?

The traditional answer is: look at the objects, Alice and Bob claim to be the
original. Alices original should not contain a watermark where as Bobs original must
contain Alices watermark (if we assume Bob can not remove marks). This situation
would indicate the Bob inserted his watermark after Alice and so one may conclude that
Alice is the rightful owner.

Unfortunately sometime the situation is not that simple. It has been shown that, in
particular class of watermarking schemes, Bob can insert his watermark in a way that it
also seems to be in the copy Alice locked away(although he has no access to it). So
Alices original contains Bobs mark and Bob original contains Alices mark. This type
of attack is called Inversion Attack, Or more Deadlock Attack. There is no way to
resolve copyright ownership in this case. This result indicates that watermarking alone

12
,that is with out a carefully designed protocol around it, will not suffice to resolve the
copy right situation.

1.8 TYPES OF DIGITAL WATERMARKS

Digital watermarking is the process that embeds data called a watermark into a
multimedia object in such a way that the watermark can be later on detected or extracted
for object assertion purposes. The multimedia objects, in which the watermark is
embedded, are usually called: the original, cover signal, host signal or simply the work.

A digital watermark is a distinguishing piece of information that is assigned to the


data to be protected. One important requirement by this is that the watermark cannot be
easily extracted or removed from the watermarked object.
Watermarks and watermarking techniques can be classified into several categories taking
into account by this various criteria (see Figure 2.1 in which the types of watermarks are
presented). As it can be noted, one of the criteria is embedding domain in which the
watermarking is implemented. For example, watermarking can be done in the spatial
domain. An alternative possibility is the watermarking in the frequency domain.

In Figure 2.1 different types of watermarks are overviewed presented.

13
Watermarking techniques can be classified into the following four categories according to
the type of the multimedia document to be watermarked:

Image Watermarking
Video Watermarking
Audio Watermarking
Text Watermarking.
According to the human perception, digital watermarks can be classified into three
different categories, as follows:

Visible watermark
Invisible-Robust watermark
Invisible-Fragile watermark
Dual watermark.

The visible watermark appears visible to a casual viewer on a careful inspection. The
invisible-robust watermark is so embedded that alterations made to the pixel cannot be
perceptually noticed. Also the watermark should withstand the standard signaling
operations (so called attacks ) and it can be recovered with appropriate decoding
mechanism only. The invisible-fragile watermark is embedded in such a way that any
manipulation or modification of the image causes the watermark destruction, or
alteration. The dual watermark is a combination of the visible and the invisible
watermarks. In this type of watermarks an invisible watermark is used as a back up for
the visible watermark.

The robust watermarking schemes can be classified in the following categories:


private watermarking scheme, which requires the original image for watermark
detection.
There are two types of private watermarking schemes:

14
Type I systems, which extract the watermark from the tested,
possibly distorted image and use the original image to find the location of the
watermark in distorted image.
Type II systems, which requires an additional copy of the
embedded watermark for watermark detection and they are only able to tell
whether a given watermark is present or not in the tested image.

In both systems knowledge about the private/embedded key is required. Here the
private key is a secret data used to embed the watermark.
Semi-private watermarking, which does not use the original image for detection.
It gives the information if the watermark is present or not.
public watermarking (also referred to as blind watermarking), which requires
neither the secret original image nor the embedded watermark in watermark
extraction procedure.
asymmetric watermarking (also referred to as public-key watermarking), in
which the detection process and particularly the detection key are fully known to
anyone, as opposed to blind watermarking approaches where a secret key is
required for detection of watermark. The knowledge of the public key either does
not help to compute the private key, or does not allow the watermark removal.

15
CHAPTER 2:
STRUCTURE OF A TYPICAL
WATERMARKING SYSTEM

16
STRUCTURE OF A TYPICAL WATERMARKING SYSTEM

Every watermarking system consists of at least two different units:

the watermark embedding unit and


the watermark detection/extraction unit.

Both units can be considered as separate processes, described in the next Subsections.

2.1 EMBEDDING PROCESS:

In Figure 2.2 the embedding process for still images is presented and used for the
explanation purposes. Let us denote an original image by I , a watermark by W, the
watermarked image by W I and K is the embedded key (see Figure 2.2). The embedding
function mb E takes on its input the image I , watermark W and key K and generates a
new watermarked image, denoted with W I . Introduction of the embedded key K is
necessary for enhancing the security aspect of the watermarking system. Before the
embedding process, the original image can be either transformed in the frequency domain
or the embedding can be performed in spatial domain. The domain selection depends on
the selected watermarking technique. If the embedding is performed in frequency
domain, the inverse transform must be applied in order to obtain the watermarked image.
Mathematically expressed, the embedding function for the spatial domain techniques can
be represented as follows:

mb W E (I,W,K) = I (2.1)

for the frequency domain technique, the following expression is valid.

mb W E (f ,W,K) = I (2.2)

where f represents the vector of coefficients of the transformation applied

17
2.2 EXTRACTION/DETECTION PROCESS:

In Figure 2.3 the extraction/detection process for still images is presented and
used for the further explanation purposes. A detector function tc D (see Figure 2.3) takes
an image r I whose ownership is to be determined. The image r I can be a watermarked or
an un-watermarked image. In a general case, it can be also an altered image. The detector
function either recovers a watermark e W from the image, or checks the presence of the
watermark W in a given watermarked image r I . In this procedure the same key K is
used.

In this process the original image I can also be included, what depend on the
selected watermarking scheme.

Mathematically expressed, the extraction procedure for blind extraction


(extraction without using the original image I ) can be expressed as follows:

Dtc (Ir ,K) = W (2.3)

for non-blind extraction (extraction using the original image) the following holds:

Dtc (Ir, I, K) = W (2.4)

18
The blind watermark detection generates at its output a binary value indicating the
presence or absence of the watermark W. By this, the following can be assumed:

(2.5)

A watermark must be extractable or detectable. In the watermarking extracting


schemes the watermark is being extracted in its exact, original form. On the other hand, if
detecting only whether a specific given watermarking signal is present in an image, or
not, the scheme is called the watermark detection scheme. Note that the watermark
extraction can prove the ownership, whereas the watermark detection can only verify it as
in the above figure

2.3 PROPERTIES OF THE WATERMARK

There are a number of papers that have discussed the characteristic of watermark. Some
of the properties discussed are: payload encoding, payload capacity, complexity, visual
quality, detection reliability, robustness, key capacity, security. In practice, it is
impossible to design a watermarking system that excels all of these. Hence, it is
necessary to make tradeoffs between them and those tradeoffs must be chosen with

19
careful analysis of the application. In this Subsection the properties listed above will be
defined and discussed:

Payload encoding. Before starting the watermark embedding procedure a


message intended to be used as a watermark can be encoded into a robust form. Using the
error correction coding, modulation or both can accomplish the encoding. The error
correction coding is a conversion of the original bit sequence into a longer sequence
where the additional bits can be used for error detection and correction. The modulation
is the process of converting each bit into a waveform, which is sent across the channel.
Here the following encoding techniques will be presented:
Spread-Spectrum Since watermarking systems can be modeled as
communication systems, where the watermark represents a message and the image
represents communications channel, a spread spectrum technique can be applied in the
watermarking . Spread spectrum technique is based on spreading the message energy
over a bandwidth much larger than the minimum bandwidth required. This technique has
a few major advantages:

Low power spectral density relates to the fact that the transmitted energy isspread over a
wide band, and consequently the amount of energy for any specific frequency band is
low. The effect is that such a signal will not interfere with other signals sharing the same
frequency band. Assuming that a watermark represents a message, the low power density
means that the watermark will introduce negligible changes to the image and therefore
the embedded watermark should be imperceptible.

Redundancy relates to the fact that the message is present at different frequency bands, so
that if there is an error in one band, the message could still be recovered from other
bands. Redundancy maps to robustness, and means that a watermark will be recoverable
even if it suffered certain level of intentional or unintentional distortion/attack.

One example of a watermarking system based on the Direct-Sequence Spread


Spectrum (DSSS) communications techniques is proposed in [50]. A watermark,

20
representing an individual message bit bj {1,1} , is created in two steps. Firstly, the
bit is spread by a large spreading factor cr, in an analogy to spread spectrum
communications equivalent called the chip-rate. The purpose of spreading is to distribute
one bit of information across many pixels of an image. The spread bit is then modulated
with a pseudo-noise sequence, yielding one watermark. This procedure is repeated for
each information bit of a message, and the created watermarks are added together
yielding a final watermark which represents the whole watermarked message.

The recovery of the multi-bit message is accomplished by correlating the watermarked


image with the same pseudo-noise sequence being used on the message encoding side. If
the peak of the correlation is positive, the current information bit is +1. Contrary, if the
peak of the correlation is negative, the current information bit is 1. After decoding of
one bit, the next cr pixels are processed in the same way to recover the next bit. This
scheme works only if both the message encoder and the message decoder use the same
key (the same pseudo-noise sequence).
Error-correcting codes If a watermarking algorithm is not
sufficiently robust, a small signal distortion could cause that watermark cannot be
correctly retrieved. Using the error correcting codes could solve this problem. The
objective of the error correcting code is to encode the data by adding a certain amount of
redundancy to the message, so that the original message can be recovered if not too many
errors have occurred. The simplest error correcting codes can correct single-bit errors
(single error correction) and detect double-bit errors (double error detection). Other codes
can detect, or correct the multi-bit errors. The following error correction codes are
available for the purpose of improving the watermarking robustness: Hamming, BCH,
Reed-Solomon, Trellis codes, etc.
its good performance, and it is also used to encode watermark messages .
Payload capacity is the bit length of the embedded watermark, without
the potential redundancy introduced by error correcting codes for channel coding.
Visual Quality. As a measure of distortions introduced by the
watermarking process, the visual quality metrics are used. It can be distinguished
between the visual quality of the data due to the embedding of the watermark and the

21
visual quality of the watermarked data due to attacks performed on it. The visual
quality of the watermarked data is required to be as
high as possible meaning that the degradation of the data due to the watermarking
operation is imperceptible. The mostly used visual quality metrics in the existing
watermarking algorithms are as follows:
- Peak Signal to Noise Ratio (PSNR), defined as:

Where N1, N2 are dimensions of original image I and water marked image Iw and
X1=1,2, N1, X2=1,2,.. N2. The SNR is measured in decibels(db)
Mean Square Error(MSE) criteria defined as :

An accepted measure for evaluation of the level of distortion is a Just Noticeable


Difference (JND). It represents a minimum distortion that is generally perceptible. The
watermark perceptibility can be measured by using different experiments developed as a
result of various psychophysics studies. One approach, which develops an automated
technique for quality measure, is proposed in [55]. It tries to estimate the number of JNDs
between images.

Detection reliability: Detection is the process trying to decide the presence or absence of
a watermark in the watermarked data. In order to determine if a test signal t I contains the
watermark embedded by using the key K , the following hypothesis can be used:

H0: The signal contains a watermark


H1: The signal does not contain a watermark
Given a decision D cs = {H0, H1 } its performance can be measured by using:

22
Detection probability ( D P ) the probability Pr of deciding H1 when the signal ti
contains a watermark, calculated as:

PD=Pr {Dcs=H1/H2} (2.9)


False Alarm propability(PFA) The propability of deciding H1 when the signal It
does not contain the watermark.It means that the detection test the positive result is
obtained.The false propability is caliculated as foolows

PFA=Pr {Dcs=H1/H2} (2.10)

2.4 ROBUSTNESS AND WATERMARKING ATTACKS.

Most watermarking algorithms are based on the concept of the spread spectrum
communication by embedding a pseudorandom watermark into the image content and
detect it by using the correlation method. To archive the high reliability of watermark
detection, the watermark detection process has to be robust to the alterations in the host
image caused from both unintentional and intentional distortions (attacks). The aim of
attacks is not always to completely remove or destroy the watermark but usually to
disable its detection. Distortions are limited to those not producing excessive
degradations. Otherwise, the transformed watermarked object would be unusable. These
distortions could also introduce degradation to the performance of the system.

In practice, a watermarked object may be altered either intentionally, or


accidentally.
In both cases the watermarking system should be able to detect and extract the watermark
after attacks. The best-known watermarking attacks, which may be intentional or
unintentional, depending on the application, are:
o Additive Noise. A random signal with a given distribution (e.g. Gaussian,
uniform, Poisson, Bernoulli) is added to the image unintentionally. In certain applications
the additive noise may originate from D/A and A/D converters, or as a consequence of

23
transmission errors. However, an attacker may introduce perceptually shaped noise
(image-dependent mask) with the maximum unnoticeable power. This will typically force
to increase the threshold at which the correlation detector operates.
o Filtering. Filtering attacks are linear filtering: high pass, low pass
filtering, Gaussian and sharpening filtering, etc. Low-pass filtering, for instance does not
introduce considerable degradation in watermarked images, but can dramatically affect
the performance, since spread-spectrum-like watermarks have non negligible high
frequency spectral contents. To design a watermark robust to a known group of filters that
might be applied to the watermarked image, the watermark message should be designed
in such a way to have most of its energy in the frequencies which filters change the least.
o Denoising attacks. Image denoising (filtering) attacks explores the idea
that a watermark is an additive noise (which can be modeled statistically) relative to the
original image. These attacks include: local median, midpoint, trimmed mean filtering,
wiener filtering, as well as hard and soft thresholding.
o Watermark removal and interference attacks. The aim of these attacks is
to predict, or to estimate the watermark and further to use the estimated watermark either
to remove watermark or to impair its unique extraction at the detector side. Some known
efficient removal attacks are: the median watermark prediction followed by subtraction ,
the Wiener prediction and subtraction and perceptual demodulation , which combines
both removal and interference attacks.
o Compressions. This is generally an unintentional attack, which appears
very often in multimedia applications. Practically all the audio, video and images
currently being distributed via Internet have been compressed. If the watermark is
required to resist different levels of compression, it is usually advisable to perform the
watermark embedding in the same domain where the compression takes places. For
instance, the DCT-domain image watermarking is more robust to JPEG compression than
the spatial-domain watermarking. Also the DWT-domain watermarking is robust to
JPEG2000 compression.
o Statistical Averaging. The aim of these attacks is retrieving the host image
and/or watermark by statistical analysis of multiple marked data sets. An attacker may try
to estimate the watermark and then to unwatermark the object by subtracting the

24
estimate. This is dangerous if the watermark does not depend substantially on data. This
is a good reason for using perceptual masks to create a watermark. In this group of
attacks belong the averaging and collusion attacks. Averaging attack consists of
averaging many instances of a given data set (e.g. N) each time marked with a different
watermark. In this way an estimate of the host data is computed and each of the
watermarks is weakened by a factor N. Collusion attack consists of averaging N different
host data containing the same watermark. The resulting signal may serve as a good
estimate of the watermark, which can be used to remove it from the watermarked data.
o Multiple Watermarking. An attacker may watermark an already
watermarked object and later make claims of ownership. The easiest solution in this case
is to timestamp the hidden information by a certification authority.
o Geometrical Attacks. Geometrical attacks do not pretend to remove the
watermark by itself, but to distort it through spatial alterations of the watermarked image.
With such attacks watermarking detector loses the synchronization with the embedded
information. These attacks can be subdivided into attacks applying general affine
transformations and attacks based on projective transformation. Common geometrical
attacks are rotation, scaling, change of aspect ratio, translation and shearing, etc.
o Cropping. This is a very common attack since in many cases the attacker
is interested in a small portion of the watermarked object, such as parts of a certain
picture or frames of video sequence. With this in mind, in order to survive, the watermark
needs to be spread over the dimensions where this attack takes place.
o - Random Geometric Distortions. The Stirmark attack [59, 60] has shown
remarkable success in removing data embedded by commercially available programs.
Stirmark attack introduces first a minor unnoticeable geometric distortion and then the
image is slightly stretched, sheared, shifted, bent and rotated by an unnoticeable random
amount. Further, a slight deviation is applied to each pixel, which is greatest at the centre
of the picture and almost null at the border (see Figure 2.5).

25
Figure 2.5: Random geometric distortion model (a) Original image (b) Geometric
distortion applied without randomization (c) Geometric distortion applied with
randomization.

The aim of this attack is that the detector loses the synchronization with the
embedded watermark. In Figure 2.5 the Stir mark attack is illustrated. Figure 2.5.a
presents the original image. The geometrical distortion is applied on original image and
presented on Figure 2.5.b. In Figure 2.5.c the same geometrical distortion is applied as
well as the slightly randomization which can be observed in the centre of the grid.
o Cryptographic Attacks. There are two categories of cryptographic attacks:
the brute force attack, aiming to find the secret information trough an exhaustive search
and the Oracle attack, being used to create a non-watermarked image when watermark
detector device is available.
o Protocol Attacks. The aim of protocol attack is to attack the concept of
the watermarking application. The copy attack [61] belongs to this group. Its aim is to
predict the watermark from the watermarked image and to copy the predicted watermark
to the target data. To satisfy the imperceptibility requirements, the estimated watermark is
further adapted to the local features of the host data.
o Printing-Scanning. For applications like document authentication and
integrity, it is relevant to test the robustness against document printing and scanning. This
implies a digital-to-analogue conversion when printing, followed by an analogue-to-
digital conversion when the printed document is scanned. This process introduces
geometrical as well as noise-like distortions within these two processes (scaling,
dithering, averaging, etc.).

26
Key capacity is the total number of secret keys that could be potentially used for
embedding a watermark. Watermarking keys can be designed to use secret keys in a
manner similar to that in spared spectrum communications. By this, in spread spectrum
communication a narrow band signal is spread over a much larger bandwidth.
we have to distinguish this key from the encryption key which could be potentially used
to encrypt the message. That means that the message can be firstly encrypted using one
encryption key and then embedded using a different embedded key.
Security According to the Kerckhoffss principle, the security of watermarking algorithm
should not rely on the secrecy of its algorithm but on the knowledge of the key. One way
to break the system is the illegal generation of the key by performing the brute force
attacks. The brute force attacks consist of an exhaustive search of all possible keys. In
order to prevent these attacks it is necessary that the key capacity is sufficiently large, so
that the exhaustive search becomes computationally unfeasible. Another way to break the
system is performing the collusion attacks where different watermarks are embedded to
the
watermarked data using different keys than the original one. The attackers are also able to
estimate the original watermark and to remove it. Non-invertibility of a watermarking
system is also one of the important security issues [62].

Complexity is defined as the number of operations (additions, divisions, multiplications,


etc.) needed to embed and extract the watermark.

27
Chapter 3
ALGORITHMS

28
3.1 ALGORITHM1[ EMBEDDING THE WATERMARK USING ON

LSB TECHNIQUE]

Step-1: read in the cover object you want to use for embedding

Step-2: read the message image you want to hide in the cover
Image

Step-3: if conversions needed to spread the image values,


on a 256 gray scale, perform the proper conversions

Step-4: determine the size of cover image used for embedding

Step-5: determine the size of message object to embed

Step-6: title the message object out to cover object size to


generate watermark

Step-7: set the LSB of cover_object (ii, jj) to the value of the
MSB Of watermark (ii,jj)

Step-8: add noise to watermarked image

Step-9: write to file the two images //Water marked image


//and image containing
//the noisy

Step-10: Display original image //Title the name as


// Original image

29
Step-11:Display watermarked image //Title the name as
//Watermarked and
//noised image

3.2 HOW TO EMBED THE WATERMARK USING LSB TECHNIQUE:

From the above algorithm, we can come to know how to embed the watermark
into the original image. Here e are using an image as a watermark to embed into another
image(original image).

In our thesis, we are applying the watermarking technique on an image with


dimensions 256X256. For that purpose, After reading the gray scale images (two images,
one for using as the original image and the another for using as the watermarked
image),we are performing the conversions if the images are not gray scale images using
the proper conversion methods like rgb2gray(message) and so on.

Later we are going to specify the size of the cover image used for embedding. i.e.,
we are specifying the exact location where watermark is to be embedded.

Later we are selecting the pixels where the watermark pixels are to be replaced.
Here we have two types of techniques to select the pixels in the original image. They are

a) SPATIAL METHOD
b) STATISTICAL APPROACH

3.2.1 Spatial Method:

In this method, we can select the all least significant bits of the each byte of the
original image and we can directly substitute the pixel values of the watermark image.
Here all the LSB bits will be selected for the embedding process.

30
3.2.2 Statistical approach:

Specification

Original
image Watermark Watermarked
Embedding Image
Watermark

Fig> Watermark embedding process


In such a way in all the pixels we can substitute the watermark pixels.

3.3 Algorithm [Extracting the watermark using the LSB technique]

Step1: read in watermarked image

Step2: determine size of watermarked image

Step3: use lsb of watermarked image to recover watermark

Step4: scale the recovered watermark

31
Step5: scale and display recovered watermark

3.4 HOW TO EXTRACT THE WATERMARK USING LSB TECHNIQUE

Here we are going to extract the watermark from the watermarked image. The
extraction process will be depicted as follows

Marked
Extracted
Watermark

LSB
Similar?

Original Original
Watermark
Similarity Function
sim(X,X*) = dot(X*,X)/sqrt(X*,X*)
X* = Extracted X = Original
1

Figure extracting the watermark from the watermarked image

32
In order to achieve the capability of localizing the tampered regions, many
existing watermarking schemes embed the watermark in a block-based way [ESA04]
[LC00] [WL98][WKBC02]. As illustrated in Figure 3-1, the image is divided into blocks
and the watermarks are embedded into every block respectively. The authentication of
each block is done by verifying whether the watermark can be successfully extracted
from

the block. Hence, in the common block-based methods the maximal resolution of
tampering detection is bounded to the block size that is used to embed the watermark.
For example, in the algorithms proposed in [LC00] and [WL98], a block size of 88 is
used and then the maximum detection resolution is limited to only 88 pixels. Moreover,
because the block is the minimal unit that can contain at least one watermark bit, the
maximal detection resolution is proportional to the watermark payload. In order to
increase the detection resolution, a smaller block size must be used but this will lead to
higher watermark payload. Subsequently, higher watermark payload will cause more
artifacts and degrade the image quality. For example, in [WKBC02] the detection
accuracy is improved to 22 pixels, but the watermark payload is also increased to 1 bit
per 22 block. The challenge, therefore, is not only a good tradeoff between the two
competitive factors, detection resolution and the watermark payload, but we also need to
find a way to increase the detection resolution while embedding the same or even less
watermark information.

33
Furthermore, in order to protect the whole image by block-based schemes, the
Authentication data, i.e. the watermark, has to be embedded locally all over the whole
image. However, as addressed in [EG01], it is very difficult to embed the data in smooth
regions without causing noticeable artifacts [WL99], because the watermark capacity
there is much lower than in other textured regions. Hence the watermark detection error
rate will be significantly increased in such flat image regions. This problem will get even
worse when embedding the watermarks into smaller blocks. In [WL99], the random
shuffling is used to handle the uneven distribution of the watermark capacity in order to
use the total watermark capacity of the image more efficiently. The goal in [WL99] is to
utilize the available watermark capacity to hide as much as possible information. In this
chapter, we will apply a similar idea not only to handle the uneven watermark capacity
distribution, but more importantly, to enhance the tamper localization resolution with the
same or less watermark payload. In addition, another problem of the block-based
methods is their security vulnerability against all kinds of local attacks. Because the
block-based schemes embed the watermark locally, they show their weakness against
such local attacks as block copy and paste, vector quantization (VQ) attacks and so forth.
The VQ attacks are also known as collage attacks, which swap blocks in the same image
or across different watermarked images [F02][OE05]. Almost all block-based
watermarking methods are somehow vulnerable to such kinds of local attacks,
particularly in case the authentication data and the embedding process are block
independent. Not only block- DCT-based methods but also many DWT-based methods
suffer from the VQ attacks due to the property of spatial-frequency localization of the
wavelet transform. The threat of local attacks becomes even higher when the
watermarking algorithm is known to the adversary. Last but not least, the security of the
embedding strategy itself is also one of our concerns. In the existing watermarking
techniques for image authentication, quantization-based embedding methods are most
often used. When the embedding algorithm is known to an adversary, he/she can modify
the embedded data at will. This security problem can be alleviated in three ways:
combining with cryptographic

34
mechanisms, providing security to feature extraction and improving the embedding
mechanism itself. For example, traditional cryptographic techniques like the hash
functions can be used in the watermarking systems to enhance the system security.

These techniques, however, usually involve multiple pixel samples or coefficients.


Hence, the cryptography-based watermarking algorithms can not always allow the
localization of tampered regions to fine scale. Feature-based schemes have a similar
problem since a feature is usually defined as a certain property of a set of image samples.
With regard to this problem, an improvement using look-up table (LUT) embedding
method was proposed in [W03], in which the maximal allowable run of 0 and 1 may
be customized. For example, a maximal run of 0 and 1 can be increased to 2
comparing to the simple odd-even embedding (which is equivalent to the LUT
embedding with the run of 0 and 1 always being 1). The LUT method, however, will
degrade the image quality more, because more distortions are introduced when
embedding the watermark with a larger run. To solve the above-mentioned problems, in
this chapter we propose a novel semi fragile watermarking scheme for image
authentication which allows to detect and localize tampered regions. We apply a random
permutation process in the wavelet domain to build up a random map among the image
locations. The randomly grouped wavelet coefficients refer mutually to each other. When
any member of a group is manipulated, the whole group will be deemed as unverified.
The final tamper detection and localization is based on the density of the unverified
coefficient distribution. With a larger group size, we can reduce the necessary watermark
payload while still keeping a high tamper localization resolution all over the whole
image. The watermark can either be embedded into only the most suitable coefficients in
each group or be proportionally distributed into all the coefficients. The coefficients
whose modification causes less perceptual artifacts will take on a larger modification
portion. In this way, we avoid embedding watermarks into the flat image regions but still
have these region protected. Furthermore, the random permutation procedure enhances
the security of the whole system against local attacks and it also improves the security of
the embedding mechanism itself. Without the knowledge of the random permutation,
even if the algorithm is publicly known, an adversary can not modify the embedded data.

35
3.5 PROPOSED WATERMARKING SCHEME

The chapter is organized as follows. Firstly, in Section 3.2 we introduce the


proposed watermarking scheme, including the watermark embedding and retrieval
processes. Then, the image authentication process is presented in Section 3.3. Afterwards,
we analyze the performance of the proposed scheme in Section 3.4 and discuss the
extension of multi-resolution authentication in Section 3.5. The experimental results are
given in Section 3.6. Finally, we conclude the chapter in Section 3.7.

Figure 3-2 Block diagrams of the proposed watermarking scheme: (a) watermark
embedding (b) watermark retrieval and image authentication

The algorithm for proposed system:

1. Read Cover Image


2. Divide the Image into 2X2 non overlapped Regions 1,1 1,2
3. Calculate average intensity of each 2X2 Region in the image. 2,1 2,2

36
2 2
xe k Ai , j
i 1 j 1

Where i,j are local coordinates of a pixel in each 2X2 Region.


k is index of each 2X2 Region in original image;
xe k - is sum of pixel values in k th Region.

SizeOfOriginal Im age
And k ranges from [1,2, N ]; where N
2X 2
xe k
Average intensity of each 2X2 Region, Blkavg( k )=
2X 2
4. Calculate the difference values of average intensities of each Region with its
previous ones.
Blkavg(1 ), if i 1
dif i
| Blkavg(i - 1 ) - Blkavg(i ) |, for i 2 to N

where dif(i) - the difference value of average intensities of ith Region with its
previous one.i.e.(i-1)th .
5. Find the Threshold or Peak-point from Region average intensity differences using
the following :
N

Th=
dif i
i 2 where N is number of 2X2 Regions , Th Threshold
N 1

6. Embedding Process:
Step1: Scan the whole image Region-wise .
If the block average intensity blkavg i Th then modify blkavg i according to
message bit.
Where Y(i) is watermarked value
6) If the block average intensity blkavg i < Th then

where yi is the watermarked value.


7) Replace any one pixel of each block in cover image with yi
7.
8. d

37
The block diagram of the proposed authentication scheme is shown in Figure 3.2 It
consists of two parts: the watermark embedding process, the watermark retrieval and
image authentication process. We will introduce the watermark embedding and retrieval
processes in this section. The image authentication part will be presented in the next
section.

3.5.1 Watermark Embedding

The embedding process consists of three steps. The first step is to choose the
Decomposition level where the watermark will be embedded and to permute the
Coefficients. The second step groups the permuted coefficients and modifies the
Coefficients in every group if necessary. The last step inversely permutes the
coefficients and performs the inverse wavelet transform to construct the watermarked
image.

The proposed watermarking scheme can be applied to both gray level images and
true color images. For simplicity, in the following sections, we introduce the proposed
technique by embedding the watermark information in the luminance channel only. For

38
true color images with red, green and blue channels, the luminance value of a pixel can
be calculated by the formula I=0.299R+0.587G+0.114B, defined in the ITU-R BT.601
(formerly CCIR 601) standard, where R, G and B denote the red, green and blue values.

When required, however, the embedding process can also be applied to R, G and B
channels respectively.

3.5.1.1 Wavelet Coefficients Random Permutation

The proposed scheme performs watermark embedding in the Discrete Wavelet


Transform (DWT) domain. The first level of wavelet decomposition produces four
Sub bands, termed LL, LH, HL and HH. LL is a low resolution version of the original
image and LH, HL and HH are the detail sub-images in horizontal, vertical and diagonal
directions. The LL band is iteratively decomposed to obtain R-level wavelet transform as
shown in Figure 3-3. More introduction on the wavelet transform can be found in [C96]
[D92]. The wavelet coefficients of different subbands are denoted f"level","subband "
.Depending on the application requirement, the subbands LH, HL and HH of one or more
decomposition levels are used to embed the watermark. Embedding watermark in the
high resolution level gives a higher capability of localizing the tampered regions but
lowers the robustness to common image processing. On the contrary, embedding in the
low resolution level will improve the watermark robustness while decreasing the
accuracy of tempering localization. The performance of embedding in different levels
will be discussed in the following sections. In the following part of this section, we
suppose that the rth level is selected to embed the watermark and the resolution level
variable r will be omitted from the text and equations because the embedding method is
the same for other levels.

Before permuting the wavelet coefficients, all coefficients of the three subbands LH, HL
and HH are firstly concatenated into a single sequence S. Three coefficients with the
same coordinate of the three subbands, which correspond to the same spatial location, are
continuously adjacent in the new sequence. Let f HL (m, n) , f LH (m,n) , f HH (m, n)

39
denote respectively the coefficients of the different subbands, where (m,n) represents the
position of the coefficient in the corresponding subband. The coefficients are rearranged
in the following way:
{ fHL (0,0) , (0,0) fLH , fHH (0,0) , fHL (0,1) , fLH (0,1) , fHH (0,1) , ...... , f (M-1,N-1)
HL ,
f LH (M 1, N-1) , f HH (M -1,N-1) }, where M and N are the horizontal and vertical size
of the subband, respectively. Figure 3-4 gives a visual illustration of the concatenation
procedure when the first level decomposition is selected to embed the watermark. Then
the concatenated coefficients, i.e. the sequence S, are randomly permuted, as shown in
Figure 3-4, controlled by a secret key k. In the permutation process, a minimal distance d
between any adjacent members in S is required in the new permutated sequence in order
to ensure adjacent coefficients in S are separately distributed after permutation. In this
way, the coefficients corresponding to the same spatial location will be separated with a
minimal distance d since they are continuously concatenated in S. The new sequence
containing the randomly permuted coefficients is denoted as S. Table 3-1 depicts a
random permutation algorithm.

Table 3-1 Depiction of a random permutation algorithm

1. Initialization the variables.Set l the length of the coefficient sequence S.

Set index[l] the index of random permutation.


Set i the index of index[] and initialize i to 1.
Set d the required minimal distance.
2. Generate a random number i r between 1 and l.

3. If i r already exists in index[l], then go back to Step 2 to regenerate ri .

4. If |index[i-1] ri| <d, then go back to Step 2 to regenerate ri .

5. index[i]= i r and i=i+1, if i l , then stop; otherwise, go back to Step 2.

40
After the random permutation, the sequence S1is divided into groups with a fixed
group size g, as shown in Figure 3-4. In every group, one watermark bit will be

Figure 3-4 Wavelet coefficients concatenation and random permutation embedded.

The embedded bit will monitor all the members of this group. The members of
each group correspond to various spatial locations, thanks to the random permutation
process. The random permutation process also distributes the coefficients suitable for
watermark embedding evenly over all the groups [WL99]. This property ensures that the
embedding process makes no modifications in smooth image regions and therefore
improves the fidelity of the watermark image. The group size g determines the watermark
payload and the number of the mutual referred coefficients. Thereby it will affect the
watermarked images quality and the maximal localizable tampered area. With a larger g,
fewer watermark bits will be embedded, so a higher fidelity of the watermarked image
will be achieved. But this will not decrease the detection resolution, although it will

41
reduce the size of the maximal localizable tampered area. We will discuss this aspect
more in Section 3.3.

3.5.1.2 Wavelet Coefficient Modification

The watermark w consists of a binary random sequence, generated by the secret


key, w{0,1} . The random sequence serves as an authentication code. This code is
compared with the retrieved watermark in the authentication process. More details are
given in Section 3.3.

The embedding process is performed by quantizing the weighted mean of the


wavelet coefficients. In every group of the random sequence S , the weighted mean of all
the wavelet coefficients is defined as

where f j (i) is the ith coefficient in the jth group and g is the group size. p is a bipolar
random sequence with uniform distribution, pi {-1,1}.
To embed the watermark, we then quantize j s by a quantization step Q as shown
in the following equations:

Where is the floor function and j is the quantization residue. The watermark bit w(
j) is embedded by modifying the weighted mean j s so that Quan s is equal to w( j) . As
shown in Figure 3-5, the weighted mean j s is modified to the nearest 0 bin (the dashed
line) or 1 bin (the solid line) according to w( j) .

42
Figure 3-5 Illustration of the quantization process

bins of 1 and 0 are located in the middle of the quantization interval. Specifically, the
modification of j s is performed as

Where S*j is the expected weighted mean value of the jth group

The advantage of using weighted mean is that it preserves small variation when
incidental distortions are encountered, because usually common image processing, e.g.
JPEG compression, is applied to the entire image and causes similar distortions over the
whole image area. For instance, if the magnitudes of all the f (i) j in the jth group are
changed by due to some distortions, then

Since p is uniformly distributed, the second part of the above equation is


approximately equal to zero. Then the weighted mean becomes

For simplicity, the weighting coefficient pi can be replaced by (-1)` and Equation
(3-6) still holds. When the group size g is an even number, it becomes

43
On the contrary, malicious manipulations commonly occur in local image regions
and will only distort the wavelet coefficients corresponding to the tampered regions.
Because the random permutation process spreads all those local coefficients in different
groups, in every affected group only one or few individual coefficients are distorted.
Therefore, these distortions will change the weighted mean and cause a larger variation.
Consequently, the quantization result may shift.In order to modify the weighted mean j s ,
we propose two methods to update the coefficients in every group as described
respectively in the following.

Method 1:

One way is to modify the coefficient with the maximal magnitude in the group,
because the modification of such coefficients with large magnitude causes less noticeable
artifacts than other coefficients with small magnitude. Here we define the coefficients
whose absolute magnitudes are large as large coefficients independent of its sign.. As
mentioned in Section 3.2.1.1, the random permutation process distributes the large
coefficients evenly across all groups, which ensures that the probability of every group
having at least one large coefficient is quite high. Let denote the difference between the
expected weighted mean value and the original one:

3.5.2 Watermark Retrieval

The secret key k, the selected level r of wavelet decomposition and the group size
g are conveyed to the watermark detector as side information. The watermarked image is
firstly decomposed by r-level wavelet transform. Then the coefficients in the three
subbands HL, LH and HH of the rth level are concatenated in the same way as in the
embedding process. Controlled by the secret key k, the same random permutation is

44
performed to reconstruct the sequence S The sequence S is then divided into groups
with the group size g. The weighted mean of all the coefficients in every group is
recalculated and the watermark bit is extracted by quantizing the weighted mean
Wj=Quan(sj)
3.6 Image Authentication Process

Every extracted watermark bit Wjis compared with the embedded one that is
generated by the secret key k. If all the extracted watermark bits match the original ones,
the image is claimed authentic, otherwise it may be tampered. The following steps are
taken to localize the tampered areas. A visual illustration of the authentication process is
given in Figure 3-6.

Figure 3-6 Illustration of the authentication process

Step 1:

45
For every group, if the extracted watermark bit does not match the embedded one,
the whole group is considered as an unverified group. All the coefficients in the group are
potentially tampered. Since we do not know exactly in this stage which coefficient is
manipulated, all the members of the group are marked as unverified coefficients whether
they are tampered or not. The actually tampered coefficients will be identified in Step 4.

Step 2:

All the coefficients in the sequence S are mapped back to their original positions
in the wavelet subbands by the inverse permutation. Since the coefficients in every
unverified group come from various locations, all those unverified coefficients will
randomly scatter over the three subbands as shown in Figure 3-6. At the location
corresponding to the tampered region in every subband, the density of the unverified
coefficients is distinctly much higher than in other portions, which is shown in Figure 3-6
as the gray areas. This is because all the unverified groups in S contain either one or
more coefficients coming from the tampered region. After mapped back to the wavelet
subbands, those unverified coefficients are clustered together again. The other isolated
unverified coefficients come from those groups that the tampered coefficients belong to.
Thanks to the random permutation, they are distributed over the subbands sparsely like
random noises.

Step 3:
We construct a matrix V of the same size of the subband at level-r wavelet
decomposition, i.e. 1/ 4r of the image size, in which every position corresponds to a 2r
2r pixel block of the image. For example, if r=1, namely, the watermark is
embedded in the 1st level of the wavelet decomposition, the size of the matrix V is (W /
2)(H / 2) , where W and H denote the width and height of the image,
respectively. We consider a position V (m,n) in the matrix V as unverified when there is
an unverified coefficient at the same position in any subband of HL, LH, and HH. V (m,n)
is set to 1 if it is an unverified position, otherwise it is set to 0:

46
As shown in Figure 3-6, the isolated unverified coefficients in the subbands are
still randomly distributed over the matrix V like random noises, while in the tampered
region the density of the unverified coefficients becomes even higher than in every
individual subband.

Step 4:
Based on the fact that the tampering commonly occurs in a continuous area of the
image in the practical applications, only the region with the high density of the
unverified coefficients corresponds to the actual manipulation. In Sept 1 we consider all
the coefficients in an unverified group as unverified. Most coefficients, however, in an
unverified group are in fact not manipulated. The isolated unverified coefficients in the
subbands correspond to those unchanged coefficients in the unverified groups. We define
those isolated unverified coefficients as noise dots. Other unverified coefficients, which
are mapped back to adjacent positions, are identified as the actually tampered ones.

In order to refine the authentication result and give an accurate tampering localization, a
noise filter is applied to the matrix V to remove the noise dots, i.e. the noise-like
unverified positions, so that the tampered region can be easily picked out. The filtering
process is performed as

where d is the filter size, T is a preset threshold and F is (when the filter size d is set to 5)

47
Chapter 4
LOSSLESS GENERALIZED LSB
DATA EMBEDDING

48
LOSSLESS GENERALIZED LSB DATA EMBEDDING

Having developed an effective lossless compression algorithm for the least


significant image levels (bit-planes), we now illustrate how it may be incorporated in a
lossless data embedding method. The lossless data embedding method described here,
inserts information bits by modifying the host signal, thus induces an embedding
distortion like its lossy counterparts. Nevertheless, the method enables the removal of
such distortions and the exact (lossless) restoration of the original host image after
extraction of embedded information.

In the next chapter, we will utilize this lossless data embedding method for digital
image authentication. A general block diagram representing lossless data embedding
schemes is seen in Fig. 4.1. The lossless embedding step takes the host signal and the
message data and produces a watermarked signal in which the message data is embedded.
The data extraction and recovery process uses the watermarked signal to extract the
embedded data and to recover the original host signal exactly. Note that though the
recovery process allows reconstruction of the original host signal with no distortion, it is
still desirable to keep the embedding distortion, i.e. the difference between the host and
watermarked signal, to a minimum so that applications that do not have access to the
extraction and recovery process do not incur a heavy penalty in image quality.

Lossless data embedding techniques may be classified into one of the following
two categories: Type-I algorithms [52, 53] employ additive spread spectrum techniques,
where a spread spectrum signal corresponding to the information payload is
superimposed on the host in the embedding phase. At the decoder, detection of the
embedded information is followed by a restoration step where the watermark signal is
removed, i.e. subtracted, to

49
Figure 4.1: Lossless data embedding, extraction, and recovery.

restore the original host signal. Potential reversibility problems associated with the
limited range of values in the digital representation of the host signal, e.g. overflows and
underflows during addition and subtraction, are prevented by adopting modulo arithmetic
[52]or a circular interpretation of the bijective transform [53]. Due to their spread-
spectrum nature, Type-I algorithms are robust with regard to the data embedding and
allow for extraction of message data even if the host signal is perturbed (within
reasonable limits) prior to detection. The original host signal, however, cannot be
accurately recovered once the watermarked signal is perturbed. While the robustness is
often desirable, modulo arithmetic typically produces disturbing salt-and-pepper artifacts
in the watermarked signal compromising the desired goal of minimizing embedding
distortion.

In Type-II algorithms [54, 55, 56, 57], information bits are embedded by
modifying, e.g. overwriting, selected features (portions) of the host signal|for instance
least significant bits, high frequency wavelet coeffcients. In this class of algorithms, the
embedding function is irreversible. Recovery of the original host is achieved by
compressing the original features and transmitting the compressed bit-stream as a part of
the embedded payload. At the decoder, the embedded payload| including the compressed

50
bit-stream is extracted, and the original host signal is restored by replacing the modified
features with the decompressed original features. A general block diagram representing
Type-II algorithms is seen in Fig. 4.2. In general, Type-II algorithms do not cause salt-
and-pepper artifacts in the watermarked signal and can facilitate higher embedding
capacities, albeit at the loss of the robustness of the first group.

In this chapter, we present a high-capacity, low-distortion, Type-II lossless data


embedding algorithm. First, in Sec. 4.1, we introduce a generalization of the well-known
LSB (least significant bit) modification method as the underlying data embedding
technique.

Figure 4.2: Type-II lossless data embedding.

This technique, modifies the lowest levels| instead of bit planes of the host signal
to accommodate the payload information. This generalization has a finer capacity-
distortion granularity. In the second part, Sec. 4.2, a lossless data embedding algorithm
for continuous tone images is built based on the generalized LSB modification method.
This spatial domain algorithm modifies the lowest levels of the raw pixel values as signal
features. As in all Type-II algorithms, recovery of the original image is enabled by
compressing, transmitting, and recovering these features. However, unlike in existing
Type-II algorithms, the novel feature compression step utilizes the rest of the host signal
as side-information. This property of the proposed method provides excellent
compression of the image features. Earlier algorithms in the literature [54, 55] tend to
select more complex features to improve the compression performance thus the lossless
embedding capacity. In Sec. 4.2.2, the embedding capacity distortion performance of the

51
algorithm is further improved by modifying only a selected subset of signal samples.
Finally, a simple capacity-distortion control mechanism, which minimizes the embedding
distortion for a given target capacity, is developed.

4.1 GENERALIZED-LSB EMBEDDING

One of the earliest data embedding methods is the LSB (least significant bit)
modification. In this well-known method, the LSB of each signal sample is replaced
(over-written) by a payload data bit embedding one bit of data per input sample. If
additional capacity is required, two or more LSB's may be over-written allowing for a
corresponding bits per sample. During extraction, these bits are read in the same scanning
order, and payload data is reconstructed. LSB modification is a simple, non-robust
embedding technique with a high embedding capacity and small bounded embedding
distortion (1). A generalization of the LSB embedding method, namely Generalized-
LSB Embedding, is employed here. If the host signal is represented by a vector s, the
Generalized-LSB embedding and extraction processes can be represented as

Sw=QL(S)+W

processes can be represented as

where sw represents the signal containing the embedded information, w represents the
embedded payload vector of L-ary symbols.

s an L-level scalar quantization function, and b c represents the operation of truncation to


the integer part. In the embedding phase, the lowest L-levels of the signal samples are

52
replaced (over written) by the watermark payload using a quantization step followed by
an addition. During extraction, the watermark payload is extracted by obtaining the
quantization error/or simply reading lowest L-levels|of the watermarked signal. The
classical LSB modification, which embeds a binary symbol (bit) by overwriting the least
significant bit of a signal sample, is a special case where L = 2. Generalized-LSB
embedding enables embedding of non-integer number of bits in each signal sample and
thus, introduces new operating points along the rate (capacity)-distortion curve. 4.1.1
Binary to L-ary (L-ary to Binary) Conversion In the preceding section, we assumed that
the watermark payload is presented as a string of L-ary symbols wi. In typical practical
applications payload data is input and output as binary strings. Therefore, binary to L-ary
(and L-ary to binary) pre(post) conversion is required. Moreover, in practice signal values
are generally represented by finite number of bits, which can afford only a limited range
of sample values. In certain cases, the embedding procedure outlined above may generate
out-of-range sample values. For instance, in a 8 bpp representation (range is [0; 255]) the
embedding algorithm with operating parameters L = 6, QL(s) = 252 and w = 5 will output
sw = 257, which cannot be represented by an 8 bit value. In general, for a given signal
value, watermark symbols can only take N values (w is an N-ary symbol) where N L.
The out-of-range sample values can be avoided by skipping samples where N < L, at the
expense of the embedding capacity at those samples. Alternatively, the binary to L-ary
conversion algorithm presented below achieves the same objective without sacrificing the
embedding capacity. The algorithm is motivated by arithmetic coding [51] for equi-
probable input symbols. We start by interpreting the binary input string h as the binary
representation of a number H in the interval [0; 1).

4.2 LOSSLESS GENERALIZED-LSB DATA EMBEDDING

The G-LSB (Generalized-LSB) embedding algorithm outlined in the preceding


section can be directly used for data embedding with low distortion. However, the
method is irreversible, i.e. the host signal is permanently distorted when its lowest levels
containing the residual signal are replaced with the watermark signal. This shortcoming
can be remedied by including information for reconstruction of the residual signal along

53
with the embedded data in the payload. This technique had been proposed in [56] and
later used in [54, 55, 57]
successfully. Fig. 4.5 shows a block diagram of the proposed algorithm.

In the embedding phase, the host signal s is quantized and the residual r is obtained (Eqn.
4.7). The residual is then compressed in order to create capacity for the payload data h.
The compressed residual and the payload data are concatenated

LSB modification. In particular, the resulting bit-stream is converted to L-ary symbols w


and added to the quantized host to form the watermarked signal sw (Eqn. 4.1). Note that
the compression block uses the rest of the host signal, QL(s), as side-information, in
order to facilitate better compression and higher capacity.

Figure 4.4: Achievable capacity-distortion operating points for LSB and Generalized-
LSB embedding schemes.

54
In the extraction phase, the watermarked signal sw is quantized and the
watermark payload (the compressed residual and the payload data h) is extracted (Eqn.
4.2). A desirable property of the proposed algorithm is that the payload data extraction is
relatively simple, and it is independent of the recovery step. If desired, the algorithm
proceeds with the reconstruction of the original host s. In particular, the residual, r, is
decompressed using QL(sw) = QL(s) as side-information. Original host, s, is
reconstructed by replacing the lowest levels of the watermarked signal with the residual
(Eqn. 4.8).

r = s - QL(s); (4.7)
s = QL(s) + r = QL(sw) + r: (4.8)
Note that the lossless embedding system has significantly smaller capacity than
the raw G-LSB scheme, since the compressed residual typically consumes a large part of
the available capacity. The lossless embedding capacity of the system is given by,

C Lossless = CGLSB - CResidual; (4.9)

where CGLSB is the raw capacity of G-LSB embedding (Eqn. 4.4) and CResidual is the
capacity consumed by the compressed residual. This observation emphasizes the
importance of the residual compression algorithm; the better the compression, the higher
the lossless embedding capacity.

Figure 4.5: Embedding (top) and extraction (bottom) phases of the proposed lossless data
embedding algorithm.

55
4.2.1 Compression of the Residual

Efficient compression of the residual is the key to obtaining high lossless embedding
capacity. Since the residual signal represents the lowest levels of a continuous-tone image
(Eqn. 4.7), the compression is a challenging task. For small values of L, the residual
typically has no structure, and its samples are virtually uniformly distributed and
uncorrelated from sample to sample. Direct compression of the residual therefore results
in a rather small lossless em- bedding capacity. However, if the rest of the image
information is used as side-information, significant coding gains can be achieved in the
compression of the residual, by exploiting the spatial correlation among pixel values and
the correlation between high and low levels (bit-planes) of the image. In this context, we
utilize the compression algorithm presented in Section. 3.2.1 (Compression of the
Enhancement Layer).

4.2.2 Selective Embedding and Compression

In order to maximize lossless data embedding capacity for a given embedding


level, the embedding algorithm proposed above utilizes every pixel in a given image, i.e.
the residual for each pixel is replaced and incorporated in the embedded data in
compressed form and the lowest L signal levels of the pixel are used for embedding data.
When a pixel is used for data embedding, it increases the expected embedding distortion
by a fixed amount (Eqn. 4.5). The additional lossless embedding capacity created by the
pixel depends on the compressibility of the residual for the pixel, which in turn is may be
approximated by the average codeword length for the corresponding context. The average
codeword length varies significantly between different coding contexts. In our
experiments, we have observed that residual compression is more effective in the
\smooth" regions of an image, due to more accurate prediction of pixel values. This
observation is supported by the steeper conditional residual probability mass functions
(small variance) in contexts corresponding to small values of d, which roughly
corresponds to the smooth regions of the image. As a

56
result, using pixels in these contexts (regions) yields a higher embedding capacity for a
fixed embedding distortion. Conversely, pixels corresponding to contexts with large
values of d contribute small or negative amounts of capacity while still contributing
similar amounts of distortion. If these pixels were left unaltered and not included in the
embedding process, one would obtain significant reduction in distortion without an
appreciable capacity penalty. An algorithm which utilizes a subset of all pixels (a subset
mask) is called a selective embedding algorithm. In general, the mask that maximizes the
capacity at a given embedding distortion may be found through an exhaustive search. Not
only does this approach significantly increase the computational complexity, but also it
requires a side channel for the transmission of the resulting mask. (The mask determines
which pixels carry the embedded payload, therefore it should be available during
extraction of the embedded payload.) The algorithm we adopt here calculates a sub-
optimal mask for a given embedding distortion and level from either the original or
watermarked host signal. The proposed algorithm utilizes the structured distortion
property of the G-LSB embedding algorithm. It uses the quantized images QL(s) =
QL(sw) as a common basis for mask calculation, and thus avoids any reference to the
residual. The ranking of conditional codeword lengths of each residual is estimated using
the smoothness of the quantized signal at that position. In particular, for each pixel, s, the
local variance in its 4-connected quantized neighborhood is calculated.

Where =k{W,N,W,N,N,E} QL(Sk) is the mean of same four pixels. In our experiments, this
smoothness measure is observed to be well correlated with the average codeword length:
Code words are shorter in the average when the variance is low. Later, starting
from the pixel with the lowest local variance, specified number of pixels are assigned to
the mask. This assignment process can be simplified by collecting a histogram of
variance values and determining a threshold where given number of pixels have a lower
variance. Then, each pixel is assigned to the mask if its variance is less than the threshold.
In practice, a discrete histogram of variance values is collected. Discrete valued

57
histogram bins may lead to a threshold value which assigns more pixels to the mask than
the number specified by the distortion. In this case, the assignment procedure is carried
out in two passes. In the first pass, all pixels below the threshold except the ones which
belong to the histogram bin immediately before the threshold are assigned to the mask. In
the second pass, excluded pixels are traversed in a particular scan order and assigned to
the mask until total number of pixels in the mask matches the specified number. Since
this process uses the quantized images which are not modified by the data embedding,
i.e., QL(s) = QL(sw), for a given embedding distortion the results of the mask selection
are identical for the embedding and extraction processes ensuring that synchronism is
maintained. This extension improves the capacity-distortion performance of the original
algorithm, at the expense of increased computational burden of calculating the mask.
4.2.3 Capacity Control Thus far, we have concentrated on maximizing the lossless
embedding capacity given an embedding level and a target distortion. In most practical
applications, however, the complementary problem is of interest, where the goal is to
determine the embedding level and mask which result in the least possible distortion,
while providing the given target capacity. As the capacity consumed by the compressed
residuals thus the lossless embedding capacity varies with the underlying image statistics,
it is not possible to accurately estimate the embedding level and distortion from the target
capacity. A more suitable approach that is utilized here, is to vary the embedding level L
and the target distortion in the method of Sec. 4.2.2 so as to achieve the desired capacity.
In order to allow extraction and recovery, the embedding level L and the final
target distortion must be communicated to the receiver. This is achieved by modifying
LSB's of a small number of pixels at fixed positions, say first n pixels, which are
excluded during the lossless embedding phase. In order to ensure recovery, the original
LSB's of these pixels are transmitted as a part of the payload. In order to limit the
required through-put from this additional channel, only a limited set of level-distortion
pairs are used. After obtaining the level and distortion parameters through the additional
fixed channel, the extraction algorithm calculates the embedding mask which maximizes
the embedding capacity as outlined in Sec. 4.2.2. As a result, the capacity-control
problem, i.e. minimizing the distortion given a target capacity at the embedding phase, is
reduced to finding the embedding level-distortion pair (from a limited set of such pairs)

58
which has the minimum distortion and satisfies the capacity requirement. The achievable
capacity of a given level-distortion pair is obtained by compressing the residual and
calculating the G-LSB embedding capacity with the given parameters. An iterative
algorithm, which searches through level-distortion pairs in the given limited set, finds the
best operating point among all possible points. In a simple instance of such an iterative
technique, the level-distortion pairs (possible operating points) are ordered starting from
the lowest distortion. The algorithm sequentially computes the capacities for each
element in this list, until the target capacity is met. If the initial target cannot be achieved
under desired distortion constraints, some applications may alternatively allow for
reduced target rates. For instance, the image authentication method in [58] can
lower the required embedding rate at the expense of reduced tamper-localization
accuracy.

59
Chapter 5
IMPLEMENTATION AND
EXPERIMENTAL RESULTS

IMPLEMENTATION AND EXPERIMENTAL RESULTS

60
The lossless G-LSB embedding algorithm and its selective embedding extension
have been implemented and tested on a number of images. The images used in the
evaluation are shown in Fig. 4.6. The images range from fairly smooth images, e.g. F-16,
to highly textured images, e.g. Mandrill. We first present an overview of the
implementation issues. Thereafter, the performance of the core algorithm and its
extension are presented and compared to the existing schemes.

5.1 IMPLEMENTATION ISSUES

The adaptive binary to L-ary conversion algorithm, outlined in Sec. 4.1.1, is a


variant of the arithmetic (de)coding process with equal symbol probabilities. Therefore,
an integer implementation of arithmetic coding from [51] is employed. Over the images
listed, this implementation achieves a practical capacity within 4 bits of the theoretically
estimated embedding capacity in Eqn. 4.4. The same algorithm is also used as the
adaptive arithmetic coder for residual compression.
In capacity-controlled selective embedding (Sec. 4.2.3), level-distortion pairs are
coded by the level and pixel-percentage pairs. In order to accelerate the optimization
search and reduce the signaling overhead, possible embedding levels are limited to L =
[2; 16] and percentage of modified pixels is quantized to one of f25%; 50%; 75%;
100%g. These level percentage pairs are further coded and represented by a single
overhead byte. The values mentioned here are selected for illustrative purposes and can
be customized based on the individual requirements of specific applications.

In order to guarantee flawless operation, we define a simple protocol and an


associated syntax for the embedded payload. First, the overhead byte representing the
embedding parameters is embedded in the LSB's of first 8 pixels of the raster scan order.
The original values of these pixel LSBs are buffered and these positions are excluded in
any subsequentembedding mask. Payload to be embedded using the G-LSB algorithm
consists of four parts: i) length of message data in bytes, ii) message data, iii) buffered
LSB's, iv) compressed residual description. The length of the message data is represented

61
by two bytes allowing for a maximum length of 64K bytes (a variable size length
descriptor can be utilized if message data is expected to be larger). The length of the
compressed description is not specified since the total number of coded symbols
(residuals) is defined by the pixel-percentage parameter. The payload data constructed
according to this syntax is embedded into the image using G-LSB embedding algorithm.
A total of three bytes, two byte length plus the overhead byte, is the overall overhead. In
applications where a fixed length message is embedded, the overhead can be reduced
accordingly.

5.2 EXPERIMENTAL RESULTS

The lossless-embedding capacity-distortion performance of the proposed


algorithm has been evaluated for the 512512 gray-scale images seen in Fig. 4.6. The
lossless capacity obtained by embedding at various levels for each of these six images is
plotted against the embedding level L in Fig. 4.8. A subset of these results is tabulated in
Table. 5.1, where the average embedding distortion induced when the full capacity is
utilized is also included. These average distortion values obtained from the watermarked
images agree quite well with the
theoretical results from Eqn. 4.5. From Fig. 5.8 and Table. 5.1, we can see that the
capacity of the proposed method is heavily dependent on the characteristics of the host
image.

Images with large smooth regions, e.g. F-16, accommodate higher capacities than
images with irregular textures, e.g. Mandrill. In smooth regions, the predictor is more
accurate, and therefore conditional residual distributions are steeper with smaller
variances. These distributions result in shorter code-lengths, and thus higher embedding
capacities. For each individual image, the capacity of the scheme increases roughly
linearly with number of levels (or exponentially with number of bit-planes). This is due
to stronger correlation among more significant levels (bit-planes) of the image and the
algorithm's ability to exploit this correlation. The rate of the increase, however, is not
entirely constant either among images or throughout the levels.

62
Figure 5.6: 512 512 gray-scale images used for testing

Table 5.1: Available capacity (bytes) versus embedding level and average PSNR (dB) for
each test image

The visual impact of the data embedding can be seen in Fig. 4.7, where the
original \Gold" image is compared to the watermarked version in which a random
message of over 3400 Bytes (27200 bits) is embedded using an embedding level of L = 6.

63
The visual distortion introduced by the embedding is quite small, though, upon close
inspection, a small amplitude white noise may be observed in the watermarked version.
Common applications of lossless embedding such as meta-data tagging and
authentication have fairly small to modest capacity requirements, which can be met with
relatively small visual distortion in the watermarked image.

The images in the test set above were all of a fixed size of 512 512 pixels. In
order to test the effects of image size on the embedding capacity, the Gold image was
divided into four quadrants and the sub-images corresponding to each quadrant was
independently used for lossless embedding. At level L = 2, the capacity degrades by 13%
as result of sub-dividing the image. Starting from top-left and in clockwise direction
embedding capacities are 83, 94, 61, and 30 bytes with a total of 268 bytes instead of 309
bytes. This reduction is induced by the modeling cost associated with multiple contexts:
the adaptive coding scheme employed here requires a learning stage when the algorithm
adapts to the particular image's statistics| during which the compression efficiency is low.
For smaller images, the relative overhead of the learning stage is larger because it is
amortized over fewer pixels. Similarly, the signaling overhead has a bigger impact in
smaller images.

Fig. 5.9 shows the capacity degradation as a percentage of the initial capacity on
Gold image for embedding levels L = 2; 3; :::16. In all cases, the subdivision into smaller
images reduces the capacity but the percentage reduction in capacity shows a
predominantly decreasing trend with increasing embedding level L. At a first glance, this
observation contradicts the modeling cost explanation: The number of coding contexts (d;
) increases with increasing embedding level. One would therefore expect a
correspondingly greater loss in the smaller sub-divided images due to the increase in
adaptation overhead of the context adaptive coder to these individual contexts. This
explanation, however, implicitly assumes that the residual statistics at each embedding
level are similar, and therefore the adaption overhead is directly related to the number of
contexts. In practice, the residual statistics differ significantly for different embedding
levels. At higher embedding levels, the stronger correlation between image levels results

64
in a distribution of the residuals with a smaller variance in comparison to the energy of
the residual. As a result, reasonable approximations to residual statistics at these levels
can be obtained more quickly, i.e. the adapting requires a smaller number of samples.
Consequently, the relative impact of the adaptation overhead with smaller sub-divided
images is reduced as the adaptation level L increases, even though the number of coding
contexts increases. The contribution of the fixed signaling overhead is also de-
emphasized at higher levels, due to the net increase in overall capacity.

The three images, Mandrill, Barbara, F-16, corresponding respectively to low,


medium and high embedding capacities were selected as representatives for the
evaluation of the se- lective embedding extension to the lossless embedding algorithm
described in Sec. 4.2.2. The lossless embedding capacity and distortion values obtained
for embedding levels L = 2; 4; 8 by utilizing one to four fourths, i.e. 25; 50; 75; 100%, of
all pixels in data embedding for each of these cases is listed in Table. 4.2. The specific
pixels corresponding to these indi- vidual percentages are appropriately chosen so as to
minimize distortion using the process described in Sec. 4.2.2. Note that these percentage
points are chosen for illustrative purposes. A different or a larger set of percentage values
may be used, if desired. Likewise, other embedding levels can also be utilized. In Table
4.2, we observe that the minimum achievable distortion is reduced (down to 57.1 dB at L
= 2 with 25% pixels selected for embedding) by the extension. This property is useful in
applications which require small capacities and ultra-low embedding distortions. The
selective embedding extension also offers additional operating points with different
distortion values which further improves the capacity distortion scalability provided by
the different embedding levels of the G-LSB algorithm. Since the selective embedding
process chooses pixels that are likely to provide the largest embedding capacity and
therefore its capacity does not drop in proportion to the percentage of pixels used in
embedding but at a much smaller rate. This is apparent in Table 4.2 where we see that the
embedding distortion may be reduced by at least 1 dB with a negligible (less than 2%)
reduction in the embedding capacity. The selective modification extension therefore leads
to improved capacity-distortion performance. For instance, the embedding capacity for
Mandrill at approximately 47 dB is 241 Bytes in the original method (Table. 4.1). On the

65
other hand, the extension yields a capacity of 424 Bytes |a 76% increase| at a slightly
lower distortion (47.2 dB vs. 46.9 dB in the original algorithm) when 50% of all pixels
are used. Similar trends are seen at various points for other images as well.

The capacity-distortion performance of the baseline lossless GLSB algorithm


(100%) and the selective embedding extension at the chosen embedding percentages of
75, 50 and 25 is compared for the Barbara image in Fig. 4.10, where the lossless
embedding capacity is plotted against the PSNR for different values of the embedding
level L for each of these embedding percentages. As expected, a reduction in embedding
percentage reduces the lowest achievable distortion (corresponding to L = 2) pushing the
lower ends of the corresponding curves further to the right. In most cases, little or no
capacity penalty is incurred in the process for this lowest point. As a result, at the low-end
of the distortion scale, reducing the embedding percentage causes the capacity-distortion
curve to move to the right, adding lower distortion points or improving capacity
distortion performance in this region. Reducing the embedding percentage does not,
however, guarantee a universally superior capacity distortion performance. This is seen in
Fig. 4.10 for the Barbara image, where the performance of 25% selective embedding
extension drops below the original (100%) scheme as one moves to the higher distortion
regions (higher values of L). The deterioration in capacity-distortion performance can be
attributed to the reduced effectiveness of the selection process at higher embedding
levels. As indicated in Sec. 4.2.2, to ensure the synchronization between the embedder
and the detector, the selection of embedding regions is based on the smoothness of the
quantized images QL(s), and is therefore progressively impaired as the embedding level
increases and correspondingly the quantization noise. Thus the simple selection criterion
based on Eqn. 4.10 can cause in exclusion of pixels whose inclusion in the embedding
would be beneficial from a capacity-distortion perspective. In addition, the reduced
number of pixels in the selective embedding also increases
the impact of the modeling cost. The combined effect of these factors can result in poorer
capacity-distortion performance for the selective embedding at higher distortions
.

66
Table 5.2: Selective Embedding Extension: Available capacity (bytes) and average PSNR
(dB)

5.3 PERFORMANCE COMPARISON WITH PRIOR ART

We compare the performance of the proposed method against other Type-II


lossless data embedding algorithms. Type-I algorithms are excluded from this comparison
due to their inferior distortion-capacity performances. Independent bit-plane compression
methods Early work [56, 57] on Type-II lossless embedding proposed compressing one of
the LSB planes of the image by either using a bi-level lossless image compression
algorithm, e.g. JBIG, or by using a dictionary based general purpose compression
scheme, e.g. LZW (gzip). We replicated these methods by extracting the different LSB-
planes of the images and compressing them by JBIG and gzip compression utilities. The
capacity estimates obtained through this process are tabulated in Table. 4.3. (In these
experiments file sizes are compared, it may be possible to slightly increase these capacity
values by eliminating parts of the file headers, e.g. image size.) Note that the bit-planes
are numbered starting from the least significant, #1, proceeding with more significant
ones. (LSB #4 corresponds to the fourth least significant bit-plane.) From the table, it is
apparent that direct compression approaches which attempt to compress the residual

67
signal or LSB planes alone without utilizing the rest of the image perform significantly
worse than the proposed scheme. In many cases, the compression algorithms actually
expand the data. The conditional entropy coding scheme adopted here, however,
successfully exploits the intra pixel correlation among the different levels of the same
pixel and the inter-pixel correlations among neighbors, thus provides improved
embedding capacities even at low distortions. Table 4.3: Available capacity (bytes) and
average PSNR (dB) when one of the LSB-planes is compressed with LZW or JBIG
algorithms. Zero capacity indicates no or negative capacity.

RS-Embedding method

Recently, Goljan et al. [54] reported an elegant Type-II lossless data embedding
method called RS-Embedding which offers significantly better results. In this method,
first a flipping function, FA(), is defined. The flipping function FA() is a permutation
on the set of possible pixel values, which swaps pairs of pixel values, separated by a
defined amplitude A. F1() with amplitude of one corresponds to LSB flipping. Small
groups of pixels from the image, G's, are classified into regular (R), singular (S), or
unusable (U) classes based on the flipping function and a suitably chosen discriminant
function, f(). In particular, a group G is regular if f(FA(G)) > f(G), singular if f(FA(G)) <
f(G) and unusable otherwise, where the flipping function is applied to one or more the
pixels constituting the group. The discriminant function is intended to measure the
smoothness of the group of pixels and for suitably chosen pixel groups and discriminant

68
function, a majority of pixel groups appear regular in typical natural images [54]. From
the definition of R, S and U groups it is apparent that the flipping function transforms an
R group of pixels in to an S group, and S group into an R group, and a U group in to a
(different) U group. In addition, application of the flipping function twice to any group
restores it to its original pixel values. These properties are the basis for information
embedding and recovery in the RS-Embedding method. A binary payload is embedded in
an image as a string of R, S features where, for instance R represent the binary value 1
and S represent 0. U groups are skipped in the embedding and extraction process. The
image pixel groups are scanned in a pre-defined order. For each, R or S group if the R/S
classification matches the payload bit to be embedded, it is left unaltered, if not, the
flipping function is applied to the group to ensure that the R/S classification matches the
payload bit. To enable recovery of the original host at the receiver, the bit stream of RS
features corresponding to the original image is compressed and included in the embedded
payload. Thus, in the embedding, first the pixel groups in the original host image are
scanned in a pre-defined order and the status of R and S groups is computed as a bit-
stream (R = 1, S = 0), with the U groups simply skipped in the process. The RS bit-
stream is then compressed to obtain a smaller bit-stream C. In the specific
implementation used here, a binary adaptive arithmetic coder is used to compress the
original string of R,S features. The message data is concatenated with the compressed bit-
stream C to form the payload which is finally embedded in the image as outlined above.
Suitable header information is included while concatenation to allow it to be undone. In
the data extraction and recovery process, the R, S bit-stream (R = 1, S = 0) of the
watermarked image is computed by scanning the image groups in the same order as the
embedding process (once again ignoring U groups). The bit-stream is partitioned in to the
extracted message data and the compressed bit-stream C representing the R, S values for
the original host image by reversing the concatenation step. Decompression of C yields
the R, S values for original host. Finally, the original host is recovered by again scanning
the image pixel groups and restoring the original R/S status of the groups by applying the
flipping function to the R/S groups whose classification differs from the original. As in
all Type-II lossless embedding schemes, the capacity available for lossless embed- ding
depends on the compressibility of the string representing the original R, S features. The

69
compression scheme exploits the imbalance between the number of R and S groups. The
zeroth order entropy of the R, S bit-stream corresponding to the original host image,
therefore, provides an accurate estimate of the fraction of the capacity that is consumed
by the compressed recovery information, and equivalently the lossless embedding
capacity. The capacity of the RS-Embedding scheme depends on the specific choices for
the pixel scan-order, the pixel groups G, the discriminate function f(), and the amplitude
A of the flipping function. Increasing amplitude A typically causes a monotonic increase
in the lossless embedding capacity and in the embedding distortion. For a given flipping
amplitude A, the imbalance between the number of R and S groups is strongly dependent
on the choice of the discriminate function and pixel groups. For our evaluation, we
consider the two-pass \checkerboard" scheme that offers the highest capacity among the
options evaluated in [54].

In this scheme, the image is divided into \Black" and \White" pixels in the same
way as a chess board (the pixel at (i; j) is black if i+j is odd, and white otherwise). In the
first pass, the black pixels are traversed in raster scan order (left to right and top to
bottom) and the white pixels are scanned in the second pass similarly. The pixel group for
computing the discriminant function is defined as the nearest 4-connected neighbors of
the current pixel being traversed, with the origin O representing the current pixel and the
4 neighbors W;N;E; S as defined in Fig. 4.11. The discriminant function for a grouping
centered at origin O defined as

and the application of flipping function to a group consists of flipping the value for the
pixel at the origin using the defined amplitude flipping function leaving other pixels
unaltered. Note that the pixel groups in this scheme are overlapping, however, the
restriction of the flipping function to the pixel at the origin and use of the checkerboard
pattern ensures proper embedding and recovery, since each pixel is traversed and
potentially flipped only once. The version of RS-Embedding outlined above was tested

70
on the images, Mandrill, Barbara, and F-16. The amplitude for the flipping function A
was varied from 1 to 6 in order to explore the capacity-distortion performance of the
scheme. Table. 4.4 lists the capacity obtained (in bytes) and average embedding
distortions for each of these embedding amplitudes. (These results are not adjusted for the
signaling overhead (up to 3 bytes).) In Fig. 5.12, capacity-distortion performance of the
RS-Embedding scheme is compared with the lossless G-LSB algorithm (at 100%
embedding). From a capacity distortion perspective, the lossless GLSB (LGLSB)
algorithm outperforms RS-Embedding at most points with the exception of the lowest
distortion points corresponding to L = 2 and A = 1. In this range, RS-Embedding achieves
an embedding capacity comparable to LGLSB with a significantly lower distortion.

Though RS-Embedding with A = 1 and LGLSB with L = 2, both modify the


LSB's of the pixel values similarly, the RS-Embedding has a distortion advantage since it
modifies only pixels corresponding to R and S groups, while skipping U groups. As a
result, pixels belonging to U groups do not incur any embedding distortion, and a lower
overall distortion is attained. The selective embedding extension allows LGLSB to
similarly extend its domain of operation to lower distortions. In order to illustrate this, the
selective embedding LGLSB at 75% is compared with RS-Embedding in Fig. 5.13,
where the capacity is plotted along the ordinate with the embedding distortion along the
abscissa for the two schemes. At L = 2 the LGLSB induces a distortion value similar to
that of the RS-Embedding at A = 1, with slightly higher capacity. For each of the three
images, the LGLSB extension at 75% embedding capacity distortion curves lie above the
corresponding curves for RS-Embedding, indicating the improved performance.
The LGLSB algorithm and its selective embedding extension has an advantage over the
RS-Embedding scheme [54] in three respects:

i) Lossless G-LSB allow greater flexibility and finer capacity-distortion granularity. In


particular, selective embedding scheme can modify an arbitrary percentage of pixels at a
given level. Thus, it can operate at a specified distortion value. This property surpasses
the granularity offered by different amplitudes in RS-Embedding, unless the embedding

71
amplitude is varied from pixel to pixel at the expense of additional complexity and
signaling overhead.

ii) The proposed method can achieve a significantly higher embedding capacity for a
comparable distortion. This demonstrates the effectiveness of the selected compression
technique. The capacity differential increases as the allowable embedding distortion is
increased and higher levels or amplitudes are used. Besides the effectiveness of the
compression, the higher capacity difference at higher embedding levels is related to the
different pixel modification methods employed by each algorithm. In RS-Embedding
each pixel is modified by a single amplitude, A, to represent (encode) a binary symbol.
This process has an irreversible embedding capacity of 1 bpp and induces an average
MSE distortion of A2 2 . On the other hand, in G-LSB embedding each pixel is modified
by a multitude of possible values, and it represents (encodes) an L-ary symbol. This
induces an average MSE distortion of L21 with an irreversible capacity of log2(L) bpp.
Note that, the lossless embedding capacity does not scale accordingly, because L-ary
symbols have longer associated codeword lengths during compression. Nevertheless, the
compression scheme utilizes the redundancy among different image levels|and L-ary
symbol values| and as a result the lossless embedding capacity is further improved.

iii) The lossless G-LSB embedding can achieve capacities exceeding 1 bpp, while RS-
Embedding's capacity performance is bounded from above by 1 bpp, regardless of the
allowable distortion. When images with large very smooth regions are used, e.g.
document images, the original image features can be compressed very effectively and the
lossless embedding capacity approaches the irreversible embedding capacity values
mentioned above.

In these cases, G-LSB scheme may achieve capacities well above 1 bpp by
increasing the embedding distortion. Despite the above disadvantages, the RS-
Embedding algorithm has significant complexity advantages over the LGLSB method. It
has a relatively simpler implementation, lower memory requirements, and lower
computational costs. Difference Expansion method.

72
A type-II embedding algorithm based on reversible integer transforms and
difference expansion is proposed in [55]. The algorithm particularly emphasizes high
payloads. For the Lena image the comparisons included in [55] demonstrate that for the
higher capacity (and correspondingly higher distortion PSNR < 45dB) the technique
provides better embedding capacities. Low-distortion regions are not included in the
comparisons.

Table 5.4: Available capacity (bytes) and average PSNR (dB) corresponding to selected
amplitudes for RS-Vector algorithm.

5.4 CONCLUSION AND DISCUSSIONS

A novel lossless (reversible) data embedding (hiding) technique is presented. The


technique provides high embedding capacities, allows complete recovery of the original
host signal, and introduces only a small distortion between the host and image bearing the
embedded data. The capacity of the scheme depends on the statistics of the host image.
For typical images, the scheme offers adequate capacity to address most applications. In
applications requiring high capacities, the scheme can be modified to adjust the
embedding parameters to meet the capacity requirements, thus trading off intermediate
distortion for increased capacity. In such scenarios, the proposed Generalized-LSB
embedding is significantly advantaged over conventional LSB embedding techniques
because it offers finer grain scalability along the capacity distortion curve. The
performance of the algorithm and its extensions is rigorously tested with representative
images and compared with the earlier methods. The proposed algorithm is shown to out-

73
perform bit-plane compression and RS-embedding methods, especially at moderate to
high distortion regions.

74
Figure 5.7: Original (top) and Watermarked (bottom) LENA image. (PSNR = 40.5 dB,
3441 Bytes embedded, Embedding level L = 6)

Embedding level (L)


Figure 5.8: Lossless embedding capacity CLossless versus embedding level L for all
images

75
Figure 5.9: Percent capacity degradation due to independent processing of quadrants of
Lena image as a function of embedding level L.

Figure 5.10: Capacity-distortion performance of selective embedding extension on


Barbara image.

76
Chapter 6
CONCLUSION

77
CONCLUSION:

A Methodology was presented for the segmentation and content based embedding of
indexing information in digital images. The segmentation algorithm combines the pixel
position, intensity and texture information in order to segment the image in to a number
of regions. Two types of watermarks are subsequently embedded in each region: a
segmentation watermark and indexing watermark. The proposed system is appropriate for
building flexible databases in which no side information is needed to be kept for each
image. More over, the semantic regions comprising the each image can be easily extract
using the segmentation watermark detection procedure

78
Chapter 7
Future work

79
Future work

The research discussed in this thesis indicates many direction to pursue further
research in this domain. Here we have summarized some of them as follows:

Modeling transmission channel related error and its effect on watermarking robustness
for scalable coded media. Combining such a research with research outcomes in this
thesis, can provide a complete solution to digital right management in live streaming or
multimedia content sharing.

Further improvement to WEBCAM framework to propose optimized parameter set and


embedding algorithm, based on the input image or applications. This can be done by
comparing the parameter sets for the given input image in order to offer best embedding
performance or most robustness.

Mathematical modeling similar to Chapter 5 between various embedding performance


metrics, such as, JND, SSIMor wPSNR, and watermarking input parameters in order to
obtain best parameter set which can offer improved visual quality and better robustness.

Robust watermarking techniques for Region Of Interest (ROI) based image and video
coding can provide the right balance between imperceptibility and robustness. A visual
attention model based watermarking technique can be a possible way to achieve the
same.

Developing watermarking based authentication applications in JPEG 2000 streaming,


e.g., controlled distribution of copyrighted images to mobile, portable devices, computer
etc.

Research on compression domain watermarking techniques for H.264/SVC. Using a


similar approach presented in this thesis, a robustness model can be proposed in order to
enhance the robustness against H.264/SVC based content adaptation.

80
Developing real time watermarking based authentication scheme using bit stream
domain watermarking for H.264/SVC etc. Such schemes are useful in multimedia content
distribution including user authentication for pay-TV.

Developing joint compression domain scalable watermarking based image and video
coding schemes that offers scalability in media distribution while resolving digital right
management (DRM) issues. Such an application development is possible using the
scalable watermarking scheme suggested in this thesis

81
Chapter 8
CODE

82
8.1 CODE FOR WATERMARK INSERTION USING LSB TECHNIQUE

clear all;

% read in the cover object you want to use for embedding


file_name='lena.bmp';
cover_object=imread(file_name);

% read the message image you want to hide in the cover image
file_name='mandrill.bmp';
message=imread(file_name);

% conversions needed to spread the image values on a 256 gray-scale


message=double(message);
message=round(message./256);
message=uint8(message);

% determine the size of cover image used for embedding


Mc=size(cover_object,1); %Height
Nc=size(cover_object,2); %Width

% determine the size of message object to embed


Mm=size(message,1); %Height
Nm=size(message,2); %Width

gr=rgb2gray(message);

[y,map] = gray2bin(gr,'qam',16);
%y = uint8(wgn(Mm,Nm,1));
subplot(2,2,2);
imshow(y);title('Watermark Logo');

83
% title the message object out to cover object size to generate watermark
for ii = 1:Mc
for jj = 1:Nc
watermark(ii,jj)=message(mod(ii,Mm)+1,mod(jj,Nm)+1);
end
end

% set the LSB of cover_object(ii,jj) to the value of the MSB of watermark(ii,jj)


watermarked_image=cover_object;
for ii = 1:Mc
for jj = 1:Nc
watermarked_image(ii,jj)=bitset(watermarked_image(ii,jj),1,watermark(ii,jj));
end
end

% add noise to watermarked image


noisy = imnoise(watermarked_image,'gaussian');

% write to file the two images


imwrite(watermarked_image,'lsb_watermarked.bmp','bmp');
imwrite(noisy,'lsb_watermarked_noise.bmp','bmp');
subplot(2,2,1)
imshow('lena.bmp'), title('Original Image');
% display watermarked image
subplot(2,2,3)
imshow(watermarked_image,[])
title('Watermarked Image')
% display watermarked and noised image
subplot(2,2,4)
imshow(noisy,[])
title('Watermarked and noised Image')

84
8.2CODE FOR WATERMARK EXTRACTION USING LSB TECHNIQUE

clear all;

% read in watermarked image


file_name='lsb_watermarked.bmp';
watermarked_image=imread(file_name);

% determine size of watermarked image


Mw=size(watermarked_image,1); %Height
Nw=size(watermarked_image,2); %Width

% use lsb of watermarked image to recover watermark


for ii = 1:Mw
for jj = 1:Nw
watermark(ii,jj)=bitget(watermarked_image(ii,jj),1);
end
end

% scale the recovered watermark


watermark=256*double(watermark);

% scale and display recovered watermark


figure(1)
imshow(watermark,[])
title('Recovered Watermark')

***Code for Watermark Insertion/extraction using LSB Technique ***


clc;

85
clear all;
%READ AN IMAGE
a=rgb2gray(imread('lena.jpg'));
a=double(a);
[m n]=size(a);

%DIVIDE THE IMAGE INTO 2X2 BLOCKS


k=1;
for i=1:2:m-1
for j=1:2:n-1
xe(k)=a(i,j)+a(i,j+1)+a(i+1,j)+a(i+1,j+1);
blkavg(k)=floor(xe(k)/4);
k=k+1;
end
end

%CALCULATE THE DIFFERENCE OF BLOCKS Xi-Xi-1

dif(1)=blkavg(1);
dif(2:length(blkavg))= abs(blkavg(1:length(blkavg)-1)-blkavg(2:length(blkavg)));
x1=length(dif);

% CALCULATE THE SUM TO FIND THRESHOLD

ss=0;
for i=2:x1
ss= ss+dif(i);
end
th=ceil(ss/(x1-1));

86
cnt=0;
for i=1:x1
if dif(i)==th
cnt=cnt+1;
end
end

% MESSAGE
b=[1 1 1 1 0 0 0 0 1 0 1 0 1 1 0 0];
bsize=length(b);
l=1;
t=1;
[m n]=size(blkavg);

%extra
y(1)=blkavg(1);
for i=2:n
if dif(i)>=th
y(i)=blkavg(i);
else
if dif(i)<=th && blkavg(i)>=blkavg(i-1)
y(i)=blkavg(i)+th;
else
if dif(i)<=th && blkavg(i)<blkavg(i-1)
y(i)=blkavg(i)-th;
else
if dif(i)>th && blkavg(i)>=blkavg(i-1)
if bsize>=l
y(i)=blkavg(i)+dif(i)+b(l);

87
else
y(i)=blkavg(i)+ dif(i);
end
else
if dif(i)>th && blkavg(i)<blkavg(i-1)
if bsize>=l
y(i)=blkavg(i)-dif(i)-b(l);
l=l+1;
else
y(i)=blkavg(i)-dif(i);
end
else
y(i)=blkavg(i);
end
end
end
end
end
end

[m n]=size(a);
k1=1;
%EMBEDDING

for u= 1:2:m
for v= 1:2:n
wm(u,v)=a(u,v) ;
wm(u,v+1)=a(u,v+1);
wm(u+1,v)=y(k1);
wm(u+1,v+1)=a(u+1,v+1);

88
k1=k1+1;
end
end

%extraction

[m n]=size(wm);
l=1;
xe(1)=wm(1);
for i=2:n
v=wm(i)-xe(i-1);
if v<0
v=-v;
end
if v<th+1 && wm(i)<xe(i-1)
xe(i)=wm(i)+ceil(v/2);
else
if v<th+1 && wm(i)>xe(i-1)
xe(i)=wm(i)-ceil(v/2);
else
if v>=th+1 && wm(i)<xe(i-1)
xe(i)=wm(i)+th;
else
if v>=th+1 && wm(i)>xe(i-1)
xe(i)=wm(i)-th;
else
xe(i)=wm(i);
end
end
end
end

89
end
de(1)=xe(1) ;
for i=2:n
de(i)=abs(xe(i)-xe(i-1));
end
for i=2:n
if d(i)<th && x(i)>=x(i-1)
be(l)=(wm(i)-a(i)-d(i));
l=l+1;
end
if d(i)<th && x(i)<x(i-1)
be(l)=(x(i)-d(i)-y(i));
l=l+1;
end

end

90
REFERENCES

91
References:

A03] M. Awrangjeb, An Overview of Reversible Data Hiding, in 6th International


Conference on Computer and Information Technology (ICCIT 2003), pp. 75-79,
Bangladesh, 19-21 Dec, 2003.

[AK03] M. Awrangjeb, M. S. Kankanhalli, Lossless watermarking considering the


human visual system, Int. Workshop on Digital Watermarking 2003, Lecture Notes in
Computer Science 2939, pp. 581-592, 2003.

[AM99] T. Amamo, D. Misaki, Feature calibration method for watermarking of


document images, in Proc. 5th Int. Conf. Document Analysis and Recognition, pp. 91
94, Bangalore, India, 1999.

[AS72] M. Abramowitz, I. A. Stegun, eds., Handbook of Mathematical Functions with


Formulas, Graphs, and Mathematical Tables. New York: Dover Publications, 1972
.
[BG96] J. Brassil, L. OGorman, Watermarking document images with bounding box
expansion, Proc. 1st Int. Workshop on Information Hiding, Newton Institute,
Cambridge, UK, pp. 227-235, May 1996.

[C96] K. R. Castleman, Digital Image Processing. Prentice Hall, ISBN: 0132114674,


1996

[C98] N. Chotikakamthorn, Electronic document data hiding technique using


intercharacter space, in Proc. IEEE Asia-Pacific Conf. on Circuits and Systems,
IEEEAPCCNS 1998, pp. 419422, November 1998.

[C99] N. Chotikakamthorn, Document image data hiding techniques using character


spacing width sequence coding, Proc. IEEE Intl. Conf. Image Processing, Japan, 1999.

92
[CGM02] Y. Chauhan, P. Gupta, K. L. Majumder, Digital Watermarking of Satellite
Images, Indian Conference on Computer Vision, Graphics and Image Processing,
ICVGIP2002, December, 2002.

[CKLS97] I. J. Cox, J. Kilian, T. Leighton, T. Shamoon, Secure spread spectrum


watermarking for multimedia, IEEE Trans. on Image Processing, vol. 6, no. 12, pp.
1673-1687, 1997.

[CMB01] I. J. Cox, M. L. Miller, J. A. Bloom, Digital watermarking. San Mateo, CA:


Morgan Kaufmann, ISBN: 1-55860-714-5, 2001.

[CMTWY99] D. Coppersmith, F. Mintzer, C. Tresser, C. Wu, C. Yeung, Fragile


imperceptible digital watermark with privacy control, in Proceedings of SPIE,
Security and Watermarking of Multimedia Contents, pp. 79-84, San Jose, USA,
January, 1999.

[CS07] N. Cvejic , T. Seppnen, Digital Audio Watermarking Techniques and


Technologies: Application and Benchmarks. Idea Group Inc (IGI), ISBN: 159904515X,
2007.

[CSST01] M. U. Celik, G. Sharma, E. Saber, A. M. Tekalp, A hierarchical image


authentication watermark with improved localization and security, Proceedings of IEEE
International Conference on Image Processing (ICIP2001), vol. 2, pp. 502-506, October
2001.

[CSTS02] M. U. Celik, G. Sharma, A. M. Tekalp, E. Saber, Reversible Data Hiding,


IEEE Int. Conf. on Image Processing, vol. 2, pp. 157-160, 2002.

[CTL05] C. C. Chang, C. S. Tseng, C. C. Lin, Hiding data in binary images, ISPEC


2005, Lecture Notes in Computer Science 3439, pp. 338-349, 2005.

93
[CW01] B. Chen, G. W. Wornell, Quantization Index Modulation: a Class of Provably
good Methods for Digital Watermarking and Information Embedding, IEEE Trans
.Information Theory, vol. 47, no. 4, pp. 1423-1443, May 2001.

[CWC05] S. Cheng, Q. Wu, K. R. Castleman, Non-ubiquitous Digital Watermarking for


Record Indexing and Integrity Protection of Medical Images, In Proc. of IEEE
International Conference on Image Processing (ICIP2005), vol. 2, pp. 1602-1605, 2005.

[CWMA01] M. Chen, E. K.Wong, N. Memon, S. Adams, Recent development in


document image watermarking and data hiding, Proc. SPIE, vol. 4518, pp. 166176,
Aug. 2001.

[D92] I. Daubechies, Ten Lectures on Wavelets. Philadelphia: SIAM, ISBN:


0898712742, 1992.

[EG01] J. J. Eggers, B. Girod, Blind watermarking applied to image authentication,


International Conference on Acoustics, Speech and Signal Processing, ICASSP2001,
vol. 3, pp. 1977-1980, Salt Lake City, USA, May 2001.

[ESA04] . Ekici, B. Sankur and M. Akay, Comparative evaluation of semifragile


watermarking algorithms, Journal of Electronic Imaging, 13(1), 209-216, January 2004.

[ESG00] J. J. Eggers, J. K. Su, B. Girod, A blind watermarking scheme based on


structured codebooks, in Secure Image and Image Authentication, Proc. IEE
Colloquium, pp. 4/1-4/6, London, UK, April 2000.
[F02] J. Fridrich, Security of Fragile Authentication Watermarks with Localization,
Proc. of SPIE Security and Watermarking of Multimedia Contents IV, vol. 4675, pp. 691-
700, San Jose, California, January, 2002.

[F98a] J. Fridrich, Image watermarking for tamper detection, Proc. of International


Conference of Image Processing, ICIP98, Chicago, Oct 1998.

94
[F98b] J. Fridrich, Methods for detecting changes in digital images, Proc. of the 6 th
IEEE International Workshop on Intelligent Signal Processing and Communication
Systems, ISPACS99, pp. 173-177, Melbourne, November, 1998.

[F99] J. Fridrich, A hybrid watermark for tamper detection in digital images, Proc. Of
the Fifth International Symposium on Signal Processing and Its Applications (ISSPA'99),
vol. 1, pp. 301304, Brisbane, Australia, August 22-25, 1999.

[FA00a] M. S. Fu, O. C. Au, Data hiding for halftone images, Proc of SPIE Conf. On
Security and Watermarking of Multimedia Contents II, vol. 3971, pp. 228-236, Jan. 2000.

[FA00b] M. S. Fu, O. C. Au, Data hiding by smart pair toggling for halftone images,
Proc. of IEEE Int. Conf. Acoustics, Speech, and Signal Processing, vol. 4, pp. 2318-2321,
June 2000.

[FA01] M. S. Fu, O. C. Au, Improved halftone image data hiding with intensity
selection, Proc. IEEE International Symposium on Circuits and Systems, vol. 5, pp. 243-
246, 2001.

[FGB00] J. Fridrich, M. Goljan, A.C. Baldoza, New Fragile Authentication


Watermark for Images, ICIP'2000, Vancouver, Canada, September, 2000.

[FGD01] J. Fridrich, M. Goljan, R. Du., Invertible Authentication, In Proc. SPIE,


Security and Watermarking of Multimedia Contents III, vol. 3971, pp. 197-208, San Jose,
USA, 2001.

[FGM00] J. Fridrich, M. Goljan, N. Memon, Further Attacks on Yeung-Mintzer


Fragile Watermarking Scheme, Electronic Imaging 2000, Security and Watermarking of
Multimedia Contents II, Proc. of SPIE, vol. 3971, pp.428437, San Jose, California,
sJanuary, 2000

95

S-ar putea să vă placă și