Você está na página 1de 55

Digital Watermarking

Abrar Ahmed Syed


1000614216 abrar.syed@mavs.uta.edu The University of Texas, Arlington Guided by Dr. K.R.Rao

Digital Watermarking

EE 5359 MULTIMEDIA PROCESSING PROJECT REPORT

DIGITAL WATERMARKING

Under guidance of Dr.K.R.Rao

Submitted By,

Abrar Ahmed Syed 1000614216


abrar.syed@mavs.uta.edu

The University of Texas at Arlington

Abrar Ahmed Syed 1000614216

Digital Watermarking

Table of Contents
Abstract .................................................................................................................................................. 7 1.0 Introduction of Digital Watermarking ................................................................................................ 7 2.0 Watermarking ................................................................................................................................... 8 2.1 Definition of Watermarking ........................................................................................................... 8 2.2 Principle of Watermarking ............................................................................................................. 9 3.0 Requirements .................................................................................................................................. 10 3.1 Transparency: .............................................................................................................................. 10 3.2 Robustness: ................................................................................................................................. 10 3.3 Capacity or Data Load: ................................................................................................................. 10 4.0 Applications ..................................................................................................................................... 10 4.1 Copyright Protection: ................................................................................................................... 10 4.2 Authentication: ............................................................................................................................ 10 4.3 Broadcast Monitoring: ................................................................................................................. 10 4.4 Content Labeling: ......................................................................................................................... 10 4.5 Tamper Detection: ....................................................................................................................... 10 4.6 Digital Fingerprinting: .................................................................................................................. 10 4.7 Content protection: ..................................................................................................................... 11 5.0 Classifications of Watermarking ....................................................................................................... 11 5.1 Visible .......................................................................................................................................... 11 5.2 Invisible ....................................................................................................................................... 11 5.2.1 Robust Watermarks .............................................................................................................. 11 5.2.2 Fragile Watermarks ............................................................................................................... 11 5.2.3 Public and Private Watermark ............................................................................................... 12 5.3 Capacity ....................................................................................................................................... 12 5.4 Perceptibility ............................................................................................................................... 12 5.5 Embedding Techniques: ............................................................................................................... 12 5.5.1 Spread Spectrum ................................................................................................................... 12

Abrar Ahmed Syed 1000614216

Digital Watermarking

5.5.2 Quantization ......................................................................................................................... 12 5.5.3 Amplitude Modification: ....................................................................................................... 12 6.0 Techniques or Schemes of Watermarking ........................................................................................ 13 6.1 Spatial Domain Techniques .......................................................................................................... 13 6.1.1 Least Significant Bit Coding (LSB) ........................................................................................... 13 6.1.2 Predictive Coding Schemes.................................................................................................... 13 6.1.3 Correlation-Based Techniques ............................................................................................... 13 6.1.4 Patchwork Techniques .......................................................................................................... 14 6.2 Frequency Domain techniques ..................................................................................................... 14 6.2.1 Discrete cosine transform (DCT) based technique: ................................................................ 14 6.3 Wavelet Transform based Watermarking ..................................................................................... 18 6.4 Simple Watermarking .................................................................................................................. 19 7.0 Attacks ............................................................................................................................................ 20 7.1 Basic ............................................................................................................................................ 20 7.2 Robustness .................................................................................................................................. 20 7.3 Presentation ................................................................................................................................ 20 7.4 Interpretation .............................................................................................................................. 21 7.5 Implementation ........................................................................................................................... 21 7.6 Removal....................................................................................................................................... 21 7.7 Geometrical ................................................................................................................................. 22 7.8 Cryptographic .............................................................................................................................. 22 7.9 Active & Passive ........................................................................................................................... 22 7.10 Forgery ...................................................................................................................................... 22 7.11 Collusion .................................................................................................................................... 22 7.12 Distortive ................................................................................................................................... 23 8.0 Counter Attacks ............................................................................................................................... 23 8.1 Power Spectrum Condition (PSC) ................................................................................................. 23 8.2 Noise Visibility Function (NVF): .................................................................................................... 24 9.0 Privacy Laws of Watermarking ......................................................................................................... 25 10.0 Project Goal ................................................................................................................................... 25 10.1 Invisible Watermarking (Least significant bit Watermarking) ...................................................... 25 10.1.1 Steps ................................................................................................................................... 25 4 Abrar Ahmed Syed 1000614216

Digital Watermarking

10.1.2 Program .............................................................................................................................. 26 10.1.3 Algorithm Explanation ......................................................................................................... 28 10.1.14 Flow-chart: ........................................................................................................................ 31 10.1.5 Results: ............................................................................................................................... 31 10.2 Visible Watermarking Concatenation ...................................................................................... 33 10.2.1 Steps ................................................................................................................................... 33 10.2.2 Program: ............................................................................................................................. 33 10.2.3 Algorithm Explanation ......................................................................................................... 36 10.2.4 Flow-chart ........................................................................................................................... 38 10.2.5 Result .................................................................................................................................. 39 10.3 Visible Watermarking Noise Addition ...................................................................................... 40 10.3.1 Steps ................................................................................................................................... 40 10.3.2 Program .............................................................................................................................. 41 10.3.3 Algorithm Explanation ......................................................................................................... 41 10.3.4 Flow-chart ........................................................................................................................... 42 10.3.5 Result .................................................................................................................................. 42 10.4 Visible Watermarking JPEG Compression ................................................................................ 43 10.4.1 Steps ................................................................................................................................... 43 10.4.2 Flow-chart ........................................................................................................................... 43 10.4.3 Flow-chart (Jpeg Compression)............................................................................................ 44 10.4.4 Result .................................................................................................................................. 45 10.5 Visible Watermarking Denoising .............................................................................................. 45 10.5.1 Steps ................................................................................................................................... 45 10.5.2 Program .............................................................................................................................. 46 10.5.3 Algorithm Explanation ......................................................................................................... 46 10.5.4 Flow-chart ........................................................................................................................... 47 10.5.5 Result .................................................................................................................................. 47 10.6 Visible Watermarking Separating the Watermark .................................................................... 48 10.6.1 Steps ................................................................................................................................... 48 10.6.2 Program .............................................................................................................................. 48 10.6.3 Algorithm Explanation ......................................................................................................... 50 10.6.4 Flow-chart ........................................................................................................................... 50 5 Abrar Ahmed Syed 1000614216

Digital Watermarking

10.6.5 Results ................................................................................................................................ 50 11.0 Testing: .......................................................................................................................................... 51 12.0 Conclusions: .................................................................................................................................. 53 References: ........................................................................................................................................... 53

Abrar Ahmed Syed 1000614216

Digital Watermarking

DIGITAL WATERMARKING

Abstract
Everyday tons of data is embedded on digital media or distributed over the internet. The data so distributed can easily be replicated without error, putting the rights of their owners at risk. Even when encrypted for distribution, data can easily be decrypted and copied. One way to discourage illegal duplication is to insert information known as watermark, into potentially vulnerable data in such a way that it is impossible to separate the watermark from the data. These challenges motivated researchers to carry out intense research in the field of watermarking. A watermark is a form, image or text that is impressed onto paper, which provides evidence of its authenticity. Digital watermarking is an extension of the same concept. There are two types of watermarks: visible watermark and invisible watermark. In this project we have concentrated on implementing watermark in image. The main consideration for any watermarking scheme is its robustness to various attacks. Watermarking dependency on the original image increases its robustness but at the same time we need to make sure that the watermark is imperceptible. In this project a invisible watermarking technique (least significant bit) and an visible watermarking technique is implemented. An attack is also implemented on the visible watermarked image by adding a random noise to the watermarked image. The watermarked image is then compressed and decompressed using JPEG compression [1]. Finally noise is removed and the images are separated from the recovered watermarked image.

1.0 Introduction of Digital Watermarking


Information hiding can be mainly divided into three processes - cryptography, stenography and watermarks. Cryptography is the process of converting information to an unintelligible form so that only the authorized person with the key can decipher it. As many advances were made in the field of communication it became rather simple to decrypt a cipher text. Hence more sophisticated methods were designed to offer better security than what cryptography could offer. This led to the discovery of stenography and watermarking. Stenography is the process of hiding information over a cover object such that the hidden information cannot be perceived by the user. Thus even the existence of secret information is not known to the attacker. Watermarking is closely related to stenography, but in watermarking the hidden information is usually related to the cover object. Hence it is mainly used for copyright protection and owner authentication.

Abrar Ahmed Syed 1000614216

Digital Watermarking

2.0 Watermarking
The history of watermark dates back to the 13th century. Watermarks were used to indicate the paper brand and the mill that produced it in Italy. By the 18th century watermarks began to be used as anticounterfeiting measures on money and other documents and in 1995 interest in digital watermarking began to mushroom. Intense research has been carried out in this field for the past few years which has led to the discovery of various algorithms [1][2][3][4][5]. Throughout this report some of these techniques are discussed and one such technique is implemented. As many advances are made in the field of communication it became rather simple to decrypt a cipher text. Hence more sophisticated methods are designed to offer better security than what cryptography can offer. This led to the discovery of stenography and watermarking. Stenography is the process of hiding information over a cover object such that the hidden information cannot be perceived by the user. Watermarking is closely related to steganography, but in watermarking the hidden information is usually related to the cover object. Hence it is mainly used for copyright protection and owner authentication. Figure 1 explains how watermarking is derived from steganography.

Fig.1 Types of Steganography [1]

2.1 Definition of Watermarking


Embedding a digital signal (audio, video or image) with information which cannot be removed easily is called digital watermarking

Abrar Ahmed Syed 1000614216

Digital Watermarking

2.2 Principle of Watermarking


A watermarking system is usually divided into three distinct steps, embedding, attack and detection. In embedding, an algorithm accepts the host and the data to be embedded and produces a watermarked signal. The watermarked signal is then transmitted or stored, usually transmitted to another person. If this person makes a modification, this is called an attack. There are many possible attacks. Detection is an algorithm which is applied to the attacked signal to attempt to extract the watermark from it. If the signal was not modified during transmission, then the watermark is still present and it can be extracted. If the signal is copied, then the information is also carried in the copy. The embedding takes place by manipulating the content of the digital data, which means the information is not embedded in the frame around the data, it is carried with the signal itself. Figure 2 shows the basic block diagram of watermarking process.

Fig.2 Watermarking block diagram The original image and the desired watermark are embedded using one of the various schemes that are currently available. The obtained watermarked image is passed through a decoder in which usually a reverse process to that employed during the embedding stage is applied to retrieve the watermark. The different techniques differ in the way in which it embeds the watermark on to the cover object. A secret key is used during the embedding and the extraction process in order to prevent illegal access to the watermark.

Abrar Ahmed Syed 1000614216

Digital Watermarking

3.0 Requirements
The major requirements of digital watermarking are:

3.1 Transparency: The embedded watermark should not degrade the original image. If visible
distortions are introduced in the image, it creates suspicion and makes life ease for the attacker .It also degrades the commercial value of the image.

3.2 Robustness: This is by far the most important requirement of a watermark. There are various
attacks, unintentional (cropping, compression, scaling) and unintentional attacks which are aimed at destroying the watermark. So, the embedded watermark should be such that it is invariant to various such attacks.

3.3 Capacity or Data Load: This quantity describes the maximum amount of data that can be
embedded into the image to ensure proper retrieval of the water during extraction.

4.0 Applications
4.1 Copyright Protection: This is by far the most prominent application of watermarks. With
tons of images being exchanged over insecure networks every day, copyright protection becomes a very important issue. Watermarking an image will prevent redistribution of copyrighted images.

4.2 Authentication: Sometimes the ownership of the contents has to be verified. This can be done
by embedding a watermark and providing the owner with a private key which gives him an access to the message. ID cards, ATM cards, credit cards are all examples of documents which require authentication. [2]

4.3 Broadcast Monitoring: As the name suggests broadcast monitoring is used to verify the
programs broadcasted on TV or radio. It especially helps the advertising companies to see if their advertisements appeared for the right duration or not. [3]

4.4 Content Labeling: Watermarks can be used to give more information about the cover object.
This process is named content labeling.

4.5 Tamper Detection: Fragile watermarks can be used to detect tampering in an image. If the
fragile watermark is degraded in any way then we can say that the image or document in question has been tampered.

4.6 Digital Fingerprinting: This is a process used to detect the owner of the content. Every
fingerprint will be unique to the owner. [3]

10

Abrar Ahmed Syed 1000614216

Digital Watermarking

4.7 Content protection: In this process the content stamped with a visible watermark that is very
difficult to remove so that it can be publicly and freely distributed [2]

5.0 Classifications of Watermarking

5.1 Visible
The watermark is visible which can be a text or a logo used to identify the owner. Any text or logo to verify or hide content Fw= (1-) F+ *W Fw = Watermarked Image =constant; 0<=<=1, IF =0 No watermark, if =1 watermark present F =original image W =watermark [6]

5.2 Invisible
The watermark is embedded into the image in such a way that it cannot be perceived by human eye. It is used to protect the image authentication and prevent it from being copied. Invisible watermark can be further divided into three types, 5.2.1 Robust Watermarks Invisible watermark cannot be manipulated without disturbing the host signal. This is by far the most important requirement of a watermark. There are various attacks, unintentional (cropping, compression, scaling) and unintentional attacks which are aimed at destroying the watermark. So, the embedded watermark should be such that it is invariant to various such attacks. They are designed to resist any manipulations that may be encountered. All applications where security is the main issue use robust watermarks. 5.2.2 Fragile Watermarks They are designed with very low robustness. They are used to check the integrity of objects.

11

Abrar Ahmed Syed 1000614216

Digital Watermarking

5.2.3 Public and Private Watermark They are differentiated in accordance with the secrecy requirements for the key used to embed and retrieve watermarks. If the original image is not known during the detection process then it is called a public or a blind watermark and if the original image is known it is called a non blind watermark or a private watermark.

5.3 Capacity
It is based on length of the embedded signal. Zero-Bit: It denotes 1 or 0 based whether watermark is present or absent. Also called Italic zero bit watermarked signal. N-Bit: It is N-Bit long. (m=m1. .. .. .. mn , with n = | m | ) or M = {0,1}n It is a modulated watermark. Also known as non-zero length watermark.

5.4 Perceptibility
A watermark is called imperceptible if the original cover signal and the marked signal are perceptually indistinguishable. A watermark is called perceptible if its presence in the marked signal is noticeable.

5.5 Embedding Techniques:


5.5.1 Spread Spectrum If obtained by additive modification. It is robust. It has low information capacity due to host interference. 5.5.2 Quantization Marking is done by quantizing. It is less robust but can carry a large data since it has very little interference from the host signal. 5.5.3 Amplitude Modification: If marked signal is embedded by additive modification. Similar to spread spectrum but is particularly done in spatial domain.

12

Abrar Ahmed Syed 1000614216

Digital Watermarking

6.0 Techniques or Schemes of Watermarking

6.1 Spatial Domain Techniques


Spatial domain watermarking slightly modifies the pixels of one or two randomly selected subsets of an image. Modifications might include flipping the low-order bit of each pixel. However, this technique is not reliable when subjected to normal media operations such as filtering or lossy compression [7]

6.1.1 Least Significant Bit Coding (LSB) LSB coding is one of the earliest methods. It can be applied to any form of watermarking. In this method the LSB of the carrier signal is substituted with the watermark. The bits are embedded in a sequence which acts as the key. In order to retrieve it back this sequence should be known. The watermark encoder first selects a subset of pixel values on which the watermark has to be embedded. It then embeds the information on the LSBs of the pixels from this subset. LSB coding is a very simple technique but the robustness of the watermark will be too low. With LSB coding almost always the watermark cannot be retrieved without a noise component.

6.1.2 Predictive Coding Schemes Predictive coding scheme was proposed by Matsui and Tanaka in [8] for gray scale images. In this method the correlation between adjacent pixels are exploited. A set of pixels where the watermark has to be embedded is chosen and alternate pixels are replaced by the difference between the adjacent pixels. This can be further improved by adding a constant to all the differences. A cipher key is created which enables the retrieval of the embedded watermark at the receiver. This is much more robust when compared to LSB coding.

6.1.3 Correlation-Based Techniques In this method a pseudo random noise (PN) with a pattern W(x, y) is added to an image [4] [11], according to the equation

I w ( x, y) I ( x, y) k *W ( x, y) where,
Iw(x,y) = Watermarked image. I(x,y)=Original image k=gain factor

13

Abrar Ahmed Syed 1000614216

Digital Watermarking

Increasing k increases the robustness of the watermark at the expense of the quality of the watermarked image. At the decoder the correlation between the random noise and the image is found out and if the value exceeds a certain threshold value the watermark is detected else it is not.

6.1.4 Patchwork Techniques In patchwork watermarking, the image is divided into two subsets. One feature or an operation is chosen and it is applied to these two subsets in the opposite direction. For instance if one subset is increased by a factor k, the other subset will be decreased by the same amount. If a[i] is the value of the sample at I in subset A which is increased and b*i+ is the value of the sample in the subset B whose value is decreased, then the difference between the two subsets would intuitively result in (a[i]-b[i]) = 2N for watermarked images = 0 otherwise 1<=N<=

6.2 Frequency Domain techniques

6.2.1 Discrete cosine transform (DCT) based technique: Discrete cosine transform (DCT): It is a process which converts a sequence of data points in the spatial domain to a sum of sine and cosine waveforms with different amplitudes in the frequency domain. The DCT is a linear transform, which maps an n-dimensional vector to set of n coefficients. A linear combination of n known basis vectors weighted with the n coefficients will result in the original vector. The known basis vectors of transforms from this class are sinusoidal, which means that they can be represented by sinus shaped waves or, in other words, they are strongly localized in the frequency spectrum. Therefore one speaks about transformation to the frequency domain. The most popular member of this class is the Discrete Fourier Transformation (DFT).The difference between DCT and DFT is that DFT applies to complex numbers, while DCT uses just real numbers. For real input data with even symmetry DCT and DFT are equivalent. There are eight different variants of DCT. There is a very slight modification between these eight variants. [6] [9]

6.2.1.1 DCT I In JPEG compression the input data are two-dimensional, presented in 8x8 blocks. There's a need of using two-dimensional DCT. Since each dimension can be handled separately, the two-dimensional DCT follows straightforward form the one-dimensional DCT. A one-dimensional DCT is performed along the rows and then along the columns, or vice versa.

14

Abrar Ahmed Syed 1000614216

Digital Watermarking

The formula used for one-dimensional DCT:

6.2.1.2 DCT II

The formula used for two-dimensional DCT:

Applying these formulas directly requires much computational resources therefore an implementation in hardware can be very efficient.

15

Abrar Ahmed Syed 1000614216

Digital Watermarking

The figure below, shows example of 8x8 block before DCT.

75 73 69 59 51 43 29 9

76 74 68 55 50 37 21 -4

75 73 71 56 45 32 9

75 74 72 52 41 24 -2

69 63 67 47 33 15

66 64 58 40 22 5

77 68 48 24 7 -6

71 69 41 9 -5 -25

-10 -21 -44 -69

-17 -35 -52 -61 -57 -35

Fig 3(1). 8X8 example block before DCT [10]

After Discrete Cosine Transform the block has following values:

251 118 -13 6 279 -68 -8 -51 -14 34 27 5 -7

-2 -1

6 4 0 4 -2 2 0 -2

-1 -4 -1 -5 1 -1 0 -1

0 -1 0 1 1 2 2 0

-14 5 -7 4 -6 4 0

-10 8 14 -9

-22 -7 -3 7 3 15 -9 7

-18 15 6 -9 -6 3

Fig.3(2) After 2D-DCT of the 8X8 block shown in Fig.3(1) [10]

16

Abrar Ahmed Syed 1000614216

Digital Watermarking

As it can be seen higher values of transform coefficients are concentrated on the top left corner. In the frequency domain it looks like low frequency has advantage over high frequency. It is shown on the figure 4

Fig.4 Frequency map [10]

As you can see only small amount of low frequency elements dominates over the rest of the coefficients. It allows reducing data during next stages of JPEG compression. The main advantage of DCT which makes it attractive for watermarking is its energy compaction property. This property divides the image into distinct frequency bands which makes it easy to embed the watermark in the desired area of the image. Most of the energy in the DCT domain is concentrated in the low frequencies. As is known low frequencies are perceived very well by human eye, hence the chances of the watermark being perceptible is high where as high frequencies are prone to attacks such as compression and scaling. So, a tradeoff has to be made.

6.2.2 Basic Steps:

1. 2. 3. 4. 5. 6.

The image is segmented into non-overlapping blocks of 8x8. Forward DCT is applied to each of the block. Selection criteria are then applied. This is followed by applying coefficient selection criteria. Embed watermark by modifying the selected coefficients. Inverse DCT is applied to obtain the final watermarked image.

17

Abrar Ahmed Syed 1000614216

Digital Watermarking

6.2.3 Block Diagram:

Image broken into 8X8 blocks

Forward 2D DCT

Selection criteria applied

Watermark obtained

Inv. 2D DCT applied

Modifying selected coefficients

Coefficient selection criteria

Fig.5 Block diagram of watermarking steps using DCT

6.3 Wavelet Transform based Watermarking


The Fourier transform is an analysis of global frequency content in the signal. There are applications in digital image processing wherein we need the localized frequency components. This can be done by using the Short Time Fourier Transform [12]. This is similar to the concept of using windowing functions. The windowed transform is given as

Where denotes the frequency and denotes the position of the window.[12] This equation transforms the signal f(x) in a small window around .The STFT is then performed on the signal and local information is extracted. The wavelet transform based watermarking technique [8] divides the image into four sidebands a low resolution approximation of the tile component and the components horizontal, vertical and diagonal frequency characteristics. The process can then be repeated iteratively to produce N scale transform.

Fig.6 Wavelet based transforms [8] 18 Abrar Ahmed Syed 1000614216

Digital Watermarking

One of the many advantages over the wavelet transform is that that it is believed to more accurately model aspects of the human visual system (HVS) as compared to the DCT. This allows us to use higher energy watermarks in regions that the HVS is known to be less sensitive to, such as the high resolution detail bands {LH, HL, HH). Embedding watermarks in these regions allow us to increase the robustness of our watermark, at little to no additional impact on image quality [13]. One of the most straightforward techniques is to use embedding technique similar to that used in the DCT,

W Wi xi , u, v HL, LH I W u ,v i Wi u, v LL, HH
In the Wavelet Domain where Wi denotes the coefficient of the transformed image, xi the bit of the watermark to be embedded, and a scaling factor. To detect the watermark the same process as that used in DCT is implemented. Furthermore, as the embedding uses the values of the transformed value in embedded, the embedding process should be rather adaptive; storing the majority of the watermark in the larger coefficients. The author [14] claims that the technique should prove resistant to JPEG compression, cropping, and other types of attacks

6.4 Simple Watermarking


A very simple yet widely used technique for watermarking images is to add a pattern on top of an existing image. Usually this pattern is an image itself - a logo or something similar, which distorts the underlying image [15]. The figure below shows a simple watermark applied to image, lena, using Bytescout software [35].

Fig.7 Simple watermaked image of lena

19

Abrar Ahmed Syed 1000614216

Digital Watermarking

7.0 Attacks
Digital watermarking is not as secure as date encryption. Therefore, digital watermarking is not immune to hacker attacks *16] Watermarking attacks are broadly divided into the following categories:

Watermarking Attack

Removal Attacks

Geometrical Attacks

Cryptographic Attack

Protocol Attacks

Fig.8 Types of watermarking attacks

7.1 Basic
In basic attack, the attacker takes advantage of the limitations in design of the embedding technique. As the name suggests the attack is very basic and can be easily resolved.

7.2 Robustness
This may include removal attacks where the attacker aims at removal of the watermark from the cover data. Also the attacker may try to diminish the data.

7.3 Presentation

These attacks modify the content of the file in order to prevent the detection of the watermark. The mosaic attack takes advantage of size requirements for embedding a watermark. By splitting the marked file into small sections, the mark detection can be confused. Many web browsers will draw images together with no visible split enabling the full image to be effectively restored while hiding the mark. If the minimum size for embedding the mark is small enough the mosaic attack is not practical. This attack can defeat web crawlers which download pictures from the Internet and check them for the presence of a watermark.

20

Abrar Ahmed Syed 1000614216

Digital Watermarking

Fig.9 The mosaic attack [1] In the example shown in Fig.9, an image had a simple watermark embedded in it. The image was then separated into 16 tiles, each of which was then checked for the presence of the watermark. Tiles are shown separated here for clarity and those surrounded by the red border no longer contain the watermark. However this does show how small the tiles need to be in order to lose all watermark information as 6 tiles still contain the watermark at this size. If the tiles are made small enough, the watermark could be lost.

7.4 Interpretation
These attacks find a situation where ownership certification is prevented. They rely on misinterpretating the data to comply with ownership certification

7.5 Implementation
Attacks the detection software. A marking system can provide more opportunities for attack than the marking technique itself. If the mark detection software is vulnerable it may be possible for attackers to deceive it.

7.6 Removal
This aims at removal of a watermark from the cover data. This category includes denoising, lossy compression, quantization, demodulation, collusion and averaging attacks. Removes watermark from cover signal.

21

Abrar Ahmed Syed 1000614216

Digital Watermarking

7.7 Geometrical
Instead of removing the watermark, the watermark is distorted using spatial or temporal alteration of stego data.

7.8 Cryptographic
If the image is watermarked such that it needs a key to decipher, brute force attacks are used for exhaustive search to find the key to decipher. These are called cryptographic attacks.

7.9 Active & Passive


Attacker removes or spoils the watermark. Attacker just identifies the watermark and does not damage it.

7.10 Forgery
Attacker forges new watermark and replaces the old one with the new one. Fig.10 shows the original watermarked image, which is replaced by the attacker with Fig.11 which may look like the original image but is not the original data. Thereby misleading the end receiver.

Fig.10 Original watermarked image

Fig.11 Forged watermarked image

7.11 Collusion
Attacker decodes different copies with different watermarks and joins them to make one single watermark.

22

Abrar Ahmed Syed 1000614216

Digital Watermarking

7.12 Distortive
Attacker applies distortive transformation to make the watermark undetectable by any other person. Fig.12 shows a typical contrast distortion done by the attacker to distort the contrast ratio of the original watermarked image (lena.bmp 256X256 in this case) making it unreadable by the end receiver.

Fig.12 Contrast distortion to make watermark unreadable

8.0 Counter Attacks


8.1 Power Spectrum Condition (PSC)
The mean-squared error E between the original watermark and the estimated watermark provides a convenient way to measure how well a watermark resists estimation.

It can be shown that E is maximized if and only if the watermark power spectrum is directly proportional to the power spectrum of the original signal. This requirement is called the powerspectrum condition (PSC). [17]

[17] For any dimensionality M, the maximum MSE is

23

Abrar Ahmed Syed 1000614216

Digital Watermarking

[17] where [17] The original signal (also called host data or cover data) is represented by the process has variance , autocorrelation function , and power spectrum and power spectrum , which

. Similarly, .We assume that , and N is the number of

denotes the watermark, which has variance

and are independent. The support of a realization is denoted by samples in . [17]

The watermark embedding is simply,

[17] x[n] is host or cover data and w[n]is the watermark data. The watermarked image obtained is y[n].

A watermark whose power spectrum satisfies the PSC is the most resistant against estimation. If distortion is measured by the mean-squared difference between the attacked data and the unwatermarked, original data, then the PSC has another important consequence: For any output of the matched filter, a watermark that fulfills the PSC causes the above attack to incur the greatest distortion. To drive the correlation to zero, the attack must make the distortion as large as the power of the original data, so the attacked data is unlikely to be useful. [17]

8.2 Noise Visibility Function (NVF):


The PSC is attractive because it can be proven rigorously and has a convenient mathematical form. For image watermarking, image de-noising provides a natural way to develop estimation-based attacks optimized for the statistics of images, although optimality might be difficult to prove. The watermarked image is treated as a noisy version of the original image, and the watermark represents noise that should be eliminated. Thus, the estimated watermark is the same as the estimated noise.

24

Abrar Ahmed Syed 1000614216

Digital Watermarking

9.0 Privacy Laws of Watermarking


The following are few privacy laws defined for watermarking according to the center for democracy technology [18] 1. 2. 3. 4. 5. 6. 7. Privacy by design Avoid embedding independently useful identifying information directly in watermark Provide notice to end users Control access to reading capability Respond appropriately when algorithms are compromised Provide security and access controls for back-end databases Limit uses for secondary purposes 8. Provide reasonable access and correction procedures for personally identifiable information

10.0 Project Goal


The goal of this project can be broadly classified into five steps. The first step is to implement two forms of watermarking techniques. One being invisible and the other being visible. The second step of the project is to add a noise to the images as a form of attack. The third step is to implement another attack which is in the form of compressing and decompressing the combined watermarked image. The fourth and the final steps are to remove the noise and extract both the base and watermark images from the watermarked image. The final step is to compare the extracted base and watermark images to the original images in order to see the difference in their PSNR, SSIM and SSIM maps.

10.1 Invisible Watermarking (Least significant bit Watermarking)

10.1.1 Steps

1. A raw bitmap image A will be selected from the set of standard test images. Let this be the base image on which the watermark will be added. 2. A raw bitmap image B will be selected from the set of standard test images. This will be the watermark image which will be added to the base image. 3. The most significant bit henceforth will be mentioned as MSB, of watermark image B will be read and these will be written on the least significant bit, henceforth will be mentioned as LSB, of base image A. 4. Thus, A will be watermarked with B resulting in a combined image C. 5. C therefore will now contain an image A which has its LSBs replaced wit h the MSBs of B. 6. The technique used will be LSB technique which is a form of spatial domain technique. 7. This technique is used to add an invisible and visible watermark in the image.

25

Abrar Ahmed Syed 1000614216

Digital Watermarking

For block diagram please refer to Fig. 13

10.1.2 Program % EE 5359 Project % Abrar Ahmed Syed. UTA ID# 1000614216

% Watermark is added into another image by substituting the least % significant bits of the image with the most significant bit of the % watermark. The watermarked image is then added with a random matrix, % which serves as noise. This watermarked image with noise is compressed % using jpeg noise compression

% First step: ask the user to select an image to be used as a base image or % cover image. base_image = input('Enter base image file name with extension : ', 's');

% Second step: ask the user for an image to be used as a watermark watermark_image = input('Enter watermark image file name with extension: ', 's');

% Reading the images and displaying them base = imread(base_image); watermark = imread(watermark_image);

% Displaying the cover image on screen as figure 1 figure(1)

26

Abrar Ahmed Syed 1000614216

Digital Watermarking

imshow(base,[]) title('Original Image (Cover Image/Base Image)')

% Displaying the watermark image on screen as figure 2 figure(2) imshow(watermark,[]) title('Watermark Image (Image which will hide in cover image)')

% Changing both the images to double, so that they will be able to store % the results of the addition operations which will be performed on them base=double(base); watermark=double(watermark);

% Now, assigning the no. of bits of the watermark image which will be % replaced in the base image bits=1;

% Now, we shift the watermark image over 8(-)bits to the right watermark_shifted=bitshift(watermark,-(8-bits));

%Now those least significant bits of the base signal will be made zero %where the most significant bits of the watermark are expected to come. for i=1:bits base=bitset(base,i,0); end

% Now add message image and cover image 27 Abrar Ahmed Syed 1000614216

Digital Watermarking

watermarked_image = uint8(base+watermark_shifted);

% Displaying the watermarked image figure(3) imshow(watermarked_image,[]) title('Watermarked Image (Final watermarked image)') imwrite(watermarked_image,'invsible watermarked image.bmp'); % Save modified image

By changing the value of the variable bits from 1 to 6, we can change the watermarking from invisible to visible.

10.1.3 Algorithm Explanation The tool used for the execution of this algorithm was Matlab. The aim of the program is to replace the LSB of the base image with the MSB of the watermark. First, the program asks the user for the images to be read. The user will then enter the name of the images, both the base and the watermark, with their extension. Both these images will be read and stored by the tool, which is Matlab in our case. The tool will also display these images to the user with their respective titles. The program will then change the image size to double. This is done so as inform the tool to provide double data-type space for the images. The reason for doing so, is to provide decimal storage for the subsequent additional operations which will be performed on the base and watermark image The next step is to assign the number of most significant bits of the watermark which will be used to overwrite on the least significant bit spaces of the base signal. Once the user provides this, the watermark signal bits are shifted to the right by the specified bits.

28

Abrar Ahmed Syed 1000614216

Digital Watermarking

Its an 8 bit image; every pixel is represented by one 8-bit byte. Considering bits=3 in our Algorithm. If 3 bits are selected, then 8-3=5, therefore the whole frame is moved by 5 places to the right, thereby pushing the MSBs to the LSBs.

An exact number of these bits will be made zero in the LSB of the base image. The reason for making them zero, is to provide space for the MSB of watermark to be stored.

The bits of both the images, i.e. watermark image which now has its MSB shifted to its LSB, and the base image, which has its LSBs are set zero, are added. The added image gives us the watermarked signal.

29

Abrar Ahmed Syed 1000614216

Digital Watermarking

The final image obtained.

30

Abrar Ahmed Syed 1000614216

Digital Watermarking

10.1.14 Flow-chart:

Fig.13 Block diagram of adding invisible watermark 10.1.5 Results:

Fig.14 Base Image A

Fig.15 Watermark Image B 31 Abrar Ahmed Syed 1000614216

Digital Watermarking

Fig.16 Watermarked Image , using bits=1. Since it is an invisible watermarking scheme, only the base image is visible.

Fig.17 Watermarked Image C, using bits=5. This is a visible watermarking scheme, both base and watermark images are seen in the watermarked image.

32

Abrar Ahmed Syed 1000614216

Digital Watermarking

10.2 Visible Watermarking Concatenation

10.2.1 Steps 1. A raw bitmap image A will be selected from the set of standard test images. Let this be the base image on which the watermark will be added. 2. A raw bitmap image B will be selected from the set of standard test images. This will be the watermark image which will be added to the base image. 3. Now both images A and B will be concatenated to get a watermarked image D 4. D therefore will now contain the base image A and the watermark image B. 5. This technique is used to add visible watermark in the image.

For block diagram please refer to Fig.22

10.2.2 Program:

% EE 5359 Project % Abrar Ahmed Syed. UTA ID# 1000614216

% Watermark is added into another image by substituting the least % significant bits of the image with the most significant bit of the % watermark. The watermarked image is then added with a random matrix, % which serves as noise. This watermarked image with noise is compressed % using jpeg noise compression

% First step: ask the user to select an image to be used as a base image or % cover image. base_image = input('Enter base image file name with extension : ', 's');

33

Abrar Ahmed Syed 1000614216

Digital Watermarking

% Second step: ask the user for an image to be used as a watermark watermark_image = input('Enter watermark image file name with extension: ', 's');

% Reading the images and displaying them base = imread(base_image); watermark = imread(watermark_image);

% Displaying the cover image on screen as figure 1 figure(1) imshow(base,[]) title('Original Image (Cover Image/Base Image)')

% Displaying the watermark image on screen as figure 2 figure(2) imshow(watermark,[]) title('Watermark Image (Image which will hide in cover image)')

% Changing both the images to double, so that they will be able to store % the results of the addition operations which will be performed on them base=double(base); watermark=double(watermark);

realdata = zeros([512 512]);

indexi=1; indexj=1;

34

Abrar Ahmed Syed 1000614216

Digital Watermarking

realIndexi = 1; realIndexj = 1;

for i=1:256 for j=1:256 realdata(realIndexi,realIndexj)=base(indexi,indexj); indexj=indexj+1; realIndexj=realIndexj+2; end indexi= indexi+1; indexj = 1; realIndexi=realIndexi+2; realIndexj=1; end

indexi=1; indexj=1;

realIndexi = 2; realIndexj = 2; for i=1:256 for j=1:256 realdata(realIndexi,realIndexj)=watermark(indexi,indexj); indexj=indexj+1; realIndexj=realIndexj+2; end

35

Abrar Ahmed Syed 1000614216

Digital Watermarking

indexi= indexi+1; indexj = 1; realIndexi=realIndexi+2; realIndexj=1; end

%preparing to write realdata =uint8(realdata);

% Displaying the watermarked image figure(3) imshow(realdata,[]) title('Watermarked Image (Final watermarked image)') imwrite(realdata,'Visible Watermarked.bmp'); % Save modified image

10.2.3 Algorithm Explanation

The tool used for the execution of this algorithm is Matlab. In this part of the program, the cover or base image is read and the watermark image is read. A zero matrix of 512x512 is defined. The base image is written in the zero matrixes by placing the indexes of the base image in alternate indexes of the zero matrixes. Similarly the watermark is also placed in the remaining spaces. We defined the zero matrixes as 512x512 for the same reason, since the base and watermark images are 256x256 each. The concatenated image is then displayed and stored as Visible Watermarked Image in bitmap format. The original base and watermark images are also in bitmap form. To better understand the concatenation process, depicting the original base image as a block Fig.18 and original watermark image as a block Fig.19. The original blocks, or images in our case are 256X256. The base image will have X elements and the watermark image have Y elements.

36

Abrar Ahmed Syed 1000614216

Digital Watermarking

X X X

X X X

X X X

Fig.18 Base Image block

Y Y Y

Y Y Y

Y Y Y

Fig.19 Watermark block

Now a zero matrix, Fig,20, of 512x512 size is initialized. This is the double of our base and watermark image 256x256. 0 0 0 0 0 0 0 0 0

Fig.20 Zero block Now in the program 10.2.2, the base image is concatenated with the watermark image to form the watermarked image. This is done by reading the first element of the base matrix and writing it in the first element of the zero matrix. It then reads the second element of base matrix and instead of writing it in the second element of the zero matrix, it writes the base element into the third element of the zero matrix, thus skipping one space in between. This step is repeated till all the elements of the base matrix are written in the zero matrix (i.e. by skipping the alternate rows and alternate columns). Similarly the watermark is added in the next row in alternate columns. The remaining elements are kept zero. That is the reason why the watermark has a black colored mesh like structure on it. Thus a concatenated matrix of both base and watermark images is obtained at the end of execution of the whole program.

37

Abrar Ahmed Syed 1000614216

Digital Watermarking

X 0 X 0 X

0 Y 0 Y 0

X 0 X 0 X

0 Y 0 Y 0

X 0 X 0 X

Fig.21 Watermarked block 10.2.4 Flow-chart

Fig. 22 Block diagram of creating a concatenated visible watermark

38

Abrar Ahmed Syed 1000614216

Digital Watermarking

10.2.5 Result

Fig.23 Base Image A.

Fig.24 Watermark Image B

39

Abrar Ahmed Syed 1000614216

Digital Watermarking

Fig.25 Watermarked Image D with Base Image A concatenated with Watermark Image B. The size of the concatenated watermarked image is 512x512, since it has 256x256 elements of the base image and 256x256 elements of the watermark image.

10.3 Visible Watermarking Noise Addition


10.3.1 Steps

1. Now, noise is added to concatenate watermarked image D. 2. The noise is a random matrix of order [512x512]. 3. The resulting image after the addition of noise is displayed and stored as Noisy Image, E.
For block diagram please refer to Fig.26

40

Abrar Ahmed Syed 1000614216

Digital Watermarking

10.3.2 Program

% Add noise to watermarked image

%imdata is the variable assigned to watermarked image imdata = imread('Visible Watermarked.bmp');

%initialize noise as a random matrix noisy = rand([512 512]);

%Adding noise to the existing watermarked image %The reason to double both the images is to make them of same size imdata1= double(imdata) + double(noisy); imdata1 = uint8(imdata1);

% Display the watermarked image with noise added to it figure(4) imshow(imdata1,[]) title('Watermarked image with noise added to it') imwrite(imdata1,'Noisy.bmp')% Save the newly modified image

% Now, the saved watermarked image with the noise added to it is compressed % using JPEG compressing technique.

10.3.3 Algorithm Explanation

41

Abrar Ahmed Syed 1000614216

Digital Watermarking

The tool used for the execution of this algorithm is Matlab. In this part of the program, a random matrix Noisy of [512x512] dimension is defined with random elements. This matrix will be used as noise in upcoming steps. The watermarked image, defined with variable imdata1 is added to Noisy, thus resulting in a watermarked image with noise in it. This is also displayed and saved as Noisy.bmp.

10.3.4 Flow-chart

Fig.26 Block diagram for adding noise to the watermark 10.3.5 Result

Fig.27 Concatenated watermarking with Noise added to it E.

42

Abrar Ahmed Syed 1000614216

Digital Watermarking

10.4 Visible Watermarking JPEG Compression

10.4.1 Steps 1. Once the noise is added, the program halts and waits for the JPEG compression to be done 2. Once the compression is done, the program is informed by pressing enter key that the compression is done and it can proceed by removing the noise. 3. JPEG Compression is done by running the .exe file available at [19] 4. The watermarked image added with noise E which is in bitmap format is compressed into JPEG format F. 5. The size of the original image is 257KB. 6. The JPEG compressed image is 92.2KB. 10.4.2 Flow-chart

Fig. 28 Block diagram to show program response

43

Abrar Ahmed Syed 1000614216

Digital Watermarking

10.4.3 Flow-chart (Jpeg Compression)

[19]

Fig. 29 Block diagram to show JPEG compression

44

Abrar Ahmed Syed 1000614216

Digital Watermarking

10.4.4 Result

Fig.30 JPEG compressed watermarked image with noise F. Size 92.2KB

10.5 Visible Watermarking Denoising


10.5.1 Steps 1. 2. 3. 4. The JPEG compressed image, is now denoised. The program which was on hold is triggered by pressing the Enter Key. The program runs by reading the JPEG compressed noised and watermarked image. The noise is now removed from the JPEG compressed image. The resulting image will be G.

For block diagram please refer to Fig.31

45

Abrar Ahmed Syed 1000614216

Digital Watermarking

10.5.2 Program

% After the watermark has been compressed by JPEG % compression software, we now remove the noise from the compressed image.

question = input('If you have completed the JPEG compression of image press enter: ', 's');

imdata2=imread('Noise.jpg'); % Noise Removal imdata2 = imdata2(:,:,1); imdata3 = double(imdata2) - double(noisy); imdata3 = uint8(imdata3);

%Displaying and storing the recovered image figure(5) imshow(imdata3,[]); title('Recovered image from noise') imwrite(imdata3,'Watermarked Image Recovered.bmp')

10.5.3 Algorithm Explanation The tool used for the execution of this algorithm is Matlab. After adding noise to the watermarked image, the program halts and waits for the user to trigger it to continue executing the remaining part. Once the compression is done, the user presses Enter key to inform the program to continue execution. The program now reads the JPEG image which was obtained from the JPEG decompression. Thus the image Noise.jpg is read. The noise is now removed from Noise.jpg. This is done by subtracting the noise matrix which is defined in the previous stage from the Noise.jpg image. The recovered image is stored as Watermarked Image Recovered.bmp.

46

Abrar Ahmed Syed 1000614216

Digital Watermarking

10.5.4 Flow-chart

Fig.31 Block diagram showing watermark recovery 10.5.5 Result

Fig.32 Watermarked Image, after compression and noise removal. G

47

Abrar Ahmed Syed 1000614216

Digital Watermarking

10.6 Visible Watermarking Separating the Watermark

10.6.1 Steps

1. Finally the base image A and the watermark image B are separated from the concatenated recovered watermarked image G 2. The images are in JPEG format, when compared to the original images, which were in Bitmap formats. Therefore their sizes are less.
For block diagram please refer to Fig.33

10.6.2 Program

imdata3=double(imdata3);

realIndexi = 1; realIndexj = 1;

for i=1:256 for j=1:256 base(i,j)=realdata(realIndexi,realIndexj); realIndexj=realIndexj+2; end realIndexj=1; realIndexi=realIndexi+2; end

48

Abrar Ahmed Syed 1000614216

Digital Watermarking

realIndexi = 2; realIndexj = 2;

for i=1:256 for j=1:256 watermark(i,j)=realdata(realIndexi,realIndexj); realIndexj=realIndexj+2; end realIndexj=1; realIndexi=realIndexi+2; end %preparing to write base=uint8(base); watermark=uint8(watermark);

% Displaying the watermarked image figure(6) imshow(base,[]) title('Recovered Base Image at the End') imwrite(base,'RBI.jpg'); % Save modified image % Displaying the watermarked image figure(7) imshow(watermark,[]) title('Recovered Watermark Image at the End') imwrite(watermark,'RWI.jpg'); % Save modified image

49

Abrar Ahmed Syed 1000614216

Digital Watermarking

10.6.3 Algorithm Explanation The tool used for the execution of this algorithm is Matlab. Finally, the images are separated from the concatenated recovered watermarked image. Thus, the original base and watermark images are recovered. They are saved as Recovered Base Image.jpg and Recovered Watermark Image.jpg.

10.6.4 Flow-chart

Fig.33 Block diagram showing recovery of base and watermark from watermarked image 10.6.5 Results

Fig.34 Recovered Base Image. Size 19KB

50

Abrar Ahmed Syed 1000614216

Digital Watermarking

Fig.35 Recovered Watermark Image. Size 20.2KB.

11.0 Testing:
The recovered base image and the original base image are compared to find their SSIM, SSIM maps and PSNR. SSIM is a recently proposed approach for image quality assessment (earlier traditional metrics like MSE and PSNR were used to assess images qualities). The structural similarity index (SSIM) is a method for measuring the similarity between two images. Value lies between [0,1].

Fig.36 Structural similarity (SSIM) measurement system [20]

51

Abrar Ahmed Syed 1000614216

Digital Watermarking

The program used to benchmark these details is available on [21]. It is a single scale version of the SSIM indexing measure, which is most effective if used at the appropriate scale. The precisely right scale depends on both the image resolution and the viewing distance and is usually difficult to be obtained. The SSIM index map provides a measurement of local image quality over space. Note that severe JPEG compression produces annoying pseudo-contouring effects (In Lenas background) and blocking artifacts (along the boundaries of the Lenas hat), which are successfully captured by the SSIM index map. The following tables show the results obtained. FORMAT Initial Lena 65KB Bitmap PSNR 34.9805 SSIM 0.9483 SSIM MAPS

Recovered Lena 19KB

JPEG

FORMAT Original Baboon 65KB Bitmap

PSNR 29.3579

SSIM 0.9196

SSIM MAPS

JPEG Recovered Baboon 20.2KB

52

Abrar Ahmed Syed 1000614216

Digital Watermarking

12.0 Conclusions:
Thus, using Matlab, two forms of watermarking techniques are implemented. One being invisible and the other being visible. Noise is added to the images as a form of attack. The images are compressed and decompressed as another form of attack. The noise is later removed and the base and watermark images are separated from the watermarked image. Finally, a benchmarking of original and recovered image is done based on PSNR, SSIM and SSIM map.

References:
*1+ G. K. Wallace, The JPEG still picture compression standard, IEEE Trans. on Consumer Electronics, Vol. 38, pp.18-34, Feb. 1992. [2+ R. Popa, An analysis of steganographic techniques, The Politehnica University of Timisoara, Faculty of Automatics and Computers, Department of Computer Science and Software Engineering, Website: http://ad.informatik.uni-freiburg.de/mitarbeiter/will/dlib_bookmarks/digitalwatermarking/popa/popa.pdf, 1998. [3] P. Vidyasagar, S. Han and E. Chang. "A survey of digital image watermarking techniques, 3rd IEEE International Conference on Industrial Informatics (INDIN 2005), edited by T. Dillon, X. Yu. and E. Chang, pp. 495-502, Perth, Western Australia, 2005. [4] J. Dugelay and S. Roche, A Survey of Current Watermarking Techniques in Information Techniques for Steganography and Digital Watermarking, S.C. Katzenbeisser et al, Eds. Northwood, MA: Artec House, pp. 121-145, Dec. 1999. [5] I. J. Cox, et al, "Digital watermarking and steganography" (Second Edition), Morgan Kaufmann, 2008. [6] K. R. Rao and P. Yip, Discrete Cosine Transform: Properties, Algorithms, Advantages, Applications, Academic Press, Massachusetts, 1990. [7+ A. Khan and A.M. Mirza, Genetic perceptual shaping: utilizing cover image and conceivable attack information during watermark embedding. Inf. Fusion, Vol. 8, pp. 354-365, Oct. 2007. [8+ T. C. Lin and C. M. Lin, Wavelet based copyright protection scheme for digital images based on local features, Information Sciences: an International Journal, Vol. 179, Sept. 2009. [9] N. Ahmed, T. Natarajan, and K. R. Rao, "Discrete cosine transform", IEEE Trans. Computers, Vol. 23, pp. 90-93, Jan. 1974. [10] Prime Core Solutions, website: http://www.pcs-ip.eu/index.php/main/edu/5 [11] I.J. Cox, M.L. Miller, J.M.G. Linnartz and T. Kalker, A Review of Watermarking Principles and Practices in Digital Signal Processing for Multimedia Systems, K.K. Parhi and T. Nishitani, New York, Marcel Dekker, New York, pp. 461-482, 1999.

53

Abrar Ahmed Syed 1000614216

Digital Watermarking

[12+ S. F. Marseken L. M. Surhone and M. T. Timpledon, Short-time Fourier transform: Window Function, Complex Analysis, Modified Discrete Cosine Transform, Wavelet Series, Betascript Publishers, 2009. [13] G. Langelaar, I. Setyawan and R.L. Lagendijk, Watermarking Digital Image and Video Data, IEEE Signal Processing Magazine, Vol. 17, pp. 20-43, Sept. 2000. [14] H. Inoue, A. Miyazaki and T. Katsura, An Image Watermarking Method Based on the Wavelet Transform, IEEE Conf. on Image Processing, Vol. 1, pp. 296-300, 1999. [15] J. Cummins, P. Diskin, S. Lau and R. Parlett, Stegnography and digital watermarking, School of Computer Science, The University of Birmingham, 2004. Website: http://www.cs.bham.ac.uk/~mdr/teaching/modules03/security/students/SS5/Steganography.pdf [16+ M. Yeung, B. Yeo and M. Holliman, Digital watermarks: shedding light on the invisible, IEEE Micro, Vol. 18, pp. 32-41. Nov. 1998. [17] K. S. Jonathan and B. Girod,Power-Spectrum Condition for Energy-Efficient Watermarking, IEEE Trans. on Multimedia, Vol. 4, pp. 551, Dec. 2002. *18+ Privacy principles for digital watermarking, Ver. 1.0, May 2008. Website: http://www.cdt.org [19] http://www-ee.uta.edu/dip/Courses/EE5355/jpeg.html [20] X. Shang, Structural similarity based image quality assessment: pooling strategies and applications to image compression and digit recognition, M.S. Thesis, EE Department, The University of Texas at Arlington, Aug. 2006. [21] Z. Wang, A. C. Bovik, H. R. Sheikh and E. P. Simoncelli, "Image quality assessment: From error visibility to structural similarity", IEEE Trans. on Image Processing, Vol. 13, no. 4, pp. 600-612, Apr. 2004. [22] Z. Wang, A. C. Bovik, H. R. Sheikh and E. P. Simoncelli, "Image quality assessment Matlab Program Website: http://www.ece.uwaterloo.ca/~z70wang/research/ssim [23+ N. Memon and P. W. Wong, Protecting digital media content, Communications of the ACM, Vol. 41, pp. 35-43, Feb. 1998. [24+ J. S. Pan, H. C. Huang and L. C. Jain, Intelligent watermarking techniques - series on innovative intelligence, Vol. 7, World Scientific Publication, 2004. [25] S. Voloshynovskiy, S. Pereira and T. Pun, Attacks on digital watermarks: classification, estimationbased attacks and benchmarks, IEEE Comm. Mag., Vol. 39, pp. 210, Aug. 2001. [26] X. Jian-hui, W. Li-na and Z. Huan-guo, Wavelet based denoising attack on image watermarking, Wuhan University Journal of Natural Sciences, Vol.10, pp. 279-83, Oct. 2005. [27+ M. Arnold, M. Schmucker and S. D. Wolthusen. Techniques & Application of Digital Waterm arking and Content Protection, Artech House Publications, Boston, London, 2003 [28+ F. Jin, P. Fieguth, L. Winger, and E. Jernigan, Adaptive Wiener filtering of noisy images and image sequences, Proc. IEEE Int. Conf. on Image Process, pp. 349352, Sept. 2003. in

54

Abrar Ahmed Syed 1000614216

Digital Watermarking

[29+ F. Mintzer and G. W. Braudaway, If one watermark is good or more better? , IEEE, Int. Conf. on Acoustics, Speech and Signal Processing- ICASSP, pp. 20672070, 1999. [30] Electrical and Computer Engineering, University of Victoria, British Columbia. Website: http://www.ece.uvic.ca/~aupward/w/watermarking.html [31] R.C. Gonzalez and R.E. Woods, Digital Image Processing, Prentice Hall Inc., Upper Saddle River, New Jersey, 2002. [32] J.R. Hernandez, M.Amado, and F. Perez-Gonzalez, DCT-Domain Watermarking Techniques for Still Images: Detector Performance Analysis and a New Structure, in IEEE Trans. Image Processing, Vol. 9, pp. 55-68, Jan. 2000. [33+ S.C. Katzenbeisser, Principles of Steganography in Information Techniques for Steganography and Digital Watermarking, S.C. Katzenbeisser et al, Eds. Northwood, MA, pp. 2-40, Dec. 1999. [34] M. Kutter and F. Hartung, Introduction to Watermarking Techniques in Information Techniques for Steganography and Digital Watermarking, S.C. Katzenbeisser et al, Eds. Norwood, MA, pp. 97-119, Dec. 1999. [35] Bytescout watermarking software. Website: http://bytescout.com/?q=/products/enduser/watermarking/watermarking.html

55

Abrar Ahmed Syed 1000614216

Você também pode gostar