12

Click here to load reader

 · Web viewEmbedding a digital signal (audio, video or image) with information which cannot be removed easily is called digital watermarking. Digital watermarking is based on the

  • Upload
    ngominh

  • View
    214

  • Download
    0

Embed Size (px)

Citation preview

Page 1:  · Web viewEmbedding a digital signal (audio, video or image) with information which cannot be removed easily is called digital watermarking. Digital watermarking is based on the

DIGITAL WATERMARKING

- Interim Report ( EE 5359: Multimedia Processing )

Under the guidance of, Dr. K. R. Rao

Submitted By,

Ehsan Syed1000671971

[email protected]

The University of Texas at Arlington – Spring 2011

Page 2:  · Web viewEmbedding a digital signal (audio, video or image) with information which cannot be removed easily is called digital watermarking. Digital watermarking is based on the

DIGITAL WATERMARKING

Introduction

Watermarking is defined as the practice of altering a work to embed a message about that work [1]. Embedding a digital signal (audio, video or image) with information which cannot be removed easily is called digital watermarking.

Digital watermarking is based on the science of steganography [2] or data hiding. Steganography comes from the Greek meaning ‘covered writing’. Steganography is defined as the practice of undetectably altering a work to embed a secret message. It is an area of research of communicating in a hidden manner.

Steganography and watermarking rely on imperfections of human senses. The eyes and ears are not perfect detectors and cannot detect minor change therefore can be tricked into thinking two images or sounds are identical but actually differ, for example in luminance or frequency shift. The human eye has a limited dynamic range so low quality images can be hidden within other high quality images [3].

Basic Principle

There are three main stages in the watermarking process [4]:

generation and embedding

attacks

retrieval/detection

Generation of watermarks is an important stage of the process. Watermarks contain information that must be unique otherwise the owner cannot be uniquely identified. In embedding, an algorithm accepts the host and the data to be embedded and produces a watermarked signal. Various algorithms have been developed so far [5-14].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 is 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 contents 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 1 shows the basic block diagram of watermarking process.

Page 3:  · Web viewEmbedding a digital signal (audio, video or image) with information which cannot be removed easily is called digital watermarking. Digital watermarking is based on the

Figure 1: Basic block diagram of watermarking

Types of Watermarking:

There are mainly three types of watermarking [15]:

• Visible Watermarking

• Invisible Watermarking

• Dual watermarking

Techniques of Watermarking:

There are mainly two major techniques of watermarking [16]:

• Spatial domain: slightly modifies the pixels of one or two randomly selected subsets of an image

Embedding

Watermark Image

Host Image

Watermarked Image

Extraction

Private Key

Private Key

Extracted watermark signal

Page 4:  · Web viewEmbedding a digital signal (audio, video or image) with information which cannot be removed easily is called digital watermarking. Digital watermarking is based on the

• Frequency domain: this technique is also called transform domain. Values of certain frequencies are altered from their original.

Spatial Domain:

In this type of watermarking, the pixels of one or two randomly selected subsets of an image are modified. These modifications can even include the flipping of the low-order bit of each pixel. But this technique is not considered reliable for normal media operations like lossy compression or filtering [9].

- LSB Coding: The least significant bits of the host signals are modified by the watermark signal.

- Correlation Based: Pseudo random noise (PN) with a pattern W(x, y) is added to an image according to

I w ( x , y )=I ( x , y )+K∗W (x , y)

At the decoder the correlation between the random noise and the image is found. If the value exceedsa threshold, watermark is detected.

Patchwork

This algorithm has been proposed as an image watermarking scheme at the outset. This inserts the information into the time-domain signal. Original patchwork algorithm [20] is refreshingly novel among many watermarking methods. Moreover, the population of each subset was very large: It was not adaptive to the signal: it added or subtracted constant d independently of the signal strength. Nonetheless, it has provided a solid base as an excellent tool for information hiding.

Frequency Domain

Discrete Cosine Transform (DCT): The sequence of data points in the spatial domain are

converted to the sum of sine and cosine waveforms with different amplitudes in the frequency domain.

Unlike Discrete Fourier Transform, this transform has only real numbers when a cosine function is used.

There are eight different variants of DCT with slight modifications between them [17][18][19].

Discrete Wavelet Transform (DWT): In this transform the signal is decomposed into a set of basic wavelets followed by the altering of lower frequencies at various resolutions [17][18][19].

For this project, a form of spatial domain watermarking technique will be used.

Page 5:  · Web viewEmbedding a digital signal (audio, video or image) with information which cannot be removed easily is called digital watermarking. Digital watermarking is based on the

Project Goal

This project aims at embedding a watermark into an image using a form of spatial domain technique, which is least significant bit technique, and then performing JPEG compression and decompression and followed by the removal of watermark from the watermarked image.

The following are the subdivisions of the project:

Embedding the Watermark image into the Host image: Host image, A, is selected A watermark image, B, is selected The least significant bits (LSBs) of the host image A will be replaced by the most significant bits

(MSBs) of the watermark image B A watermarked image, C, is obtained which contains the image A with its LSBs replaced by the

MSBs of B

Compression of the watermarked image: Watermarked image C is read Discrete Cosine Transform is applied [21] [22] Block is compressed through quantization or Huffman coding

Decompression of the watermarked image: The compressed image will now be decompressed

Removing the watermark from the watermarked image: The watermark from the watermarked image C is removed It gives host image A and the watermark image B

The tools used in this project’s implementation are MATLAB, Visual Studio.

Page 6:  · Web viewEmbedding a digital signal (audio, video or image) with information which cannot be removed easily is called digital watermarking. Digital watermarking is based on the

My program:

host_image = input('Enter the host image file name with extension : ', 's');wmrk_image = input('Enter watermark image file name with extension: ', 's');host = imread(host_image);wmrk = imread(wmrk_image);figure(1)imshow(host,[])title('Host Image')figure(2)imshow(wmrk,[])title('Watermark Image')host=double(host);wmrk=double(wmrk);bits=3;wmrk_shifted=bitshift(wmrk,-(8-bits));for i=1:bitshost=bitset(host,i,0);endwatermarked_image = uint8(host+wmrk_shifted);figure(3)imshow(watermarked_image,[])title('Watermarked Image')

Algorithm:

The aforementioned program is written in MATLAB and is executed. The following points explain the program code:

It asks the user to input the Host image and the Watermark image It reads the images input by the user and displays them It then doubles the images for the subsequent operations It then assigns the number of bits of host image to be replaced by the

watermark image Each pixel is an 8-bit byte, hence the watermark image is shifted to 8-

(number of bits assigned) places to the right2w

7 2w6 2w

5 2w4 2w

3 2w2 2w

1 2w0

Table 1: Watermark pixel before bit-shift

The above (table 1) is the representation of the pixel of the watermark image before the bit-shift. The following (table 2) is the representation of the pixel after the bit-shift

sakub_celeron, 04/19/11,
Asking the user to give a host image which is to be watermarked
sakub_celeron, 04/19/11,
Displaying the Watermarked image
sakub_celeron, 04/19/11,
Adding host image and watermark image
sakub_celeron, 04/19/11,
LSB’s of the host image are made zero
sakub_celeron, 04/19/11,
Shifting the watermark 8-bits onto the right
sakub_celeron, 04/19/11,
Assigning the no. of bits of the watermark image to be replaced in the base image
sakub_celeron, 04/19/11,
Doubling the images so they will be able to store the results of the addition operations done on them
sakub_celeron, 04/19/11,
Displaying the images
sakub_celeron, 04/19/11,
Reading the images
sakub_celeron, 04/19/11,
Asking the user to enter the image to be used as a watermark
Page 7:  · Web viewEmbedding a digital signal (audio, video or image) with information which cannot be removed easily is called digital watermarking. Digital watermarking is based on the

2w7 2w

6 2w5

Table 2: Watermark pixel after bit-shift

The host image assigns its LSBs to zeroes as many as the number of bits assigned

2H7 2H

6 2H5 2H

4 2H3 2H

2 2H1 2H

0

Table 3: Host image before the LSBs are made zero

The above (table 3) is the representation of the pixel of the host image before the least significant bits are made zero. The following (table 4) is the representation of the pixel after the LSBs are made zero

2H7 2H

6 2H5 2H

4 2H3 0 0 0

Table 4: Host image after the LSBs are made zero

The host image and the watermark images area added to give the watermarked image (shown in table 5)

2w7 2w

6 2w5

+

2H7 2H

6 2H5 2H

4 2H3 0 0 0

=

2H7 2H

6 2H5 2H

4 2H3 2w

2 2w1 2w

0

Table 5: Watermarked image pixel with MSBs of host image and LSBs of watermark

Results:

The visible watermarked images are shown in the fig. 2

The invisible watermarked images are shown in the fig. 3

Page 8:  · Web viewEmbedding a digital signal (audio, video or image) with information which cannot be removed easily is called digital watermarking. Digital watermarking is based on the

Visible Watermarking

Figure 2: Host image and the watermark image are added to give a visible watermarked image

Invisible Watermarking

Figure 3: Host image and watermark image are added to give an invisible watermarked image

Page 9:  · Web viewEmbedding a digital signal (audio, video or image) with information which cannot be removed easily is called digital watermarking. Digital watermarking is based on the

Conclusions:

A program was written using MATLAB, which read the watermark image and host image. It replaced the LSBs of host image with MSBs of watermark image and obtained a new watermarked image.

References:

1. I. Cox et al, "Digital Watermarking", Journal of Electronic Imaging, Vol. 11, No.3, July 20022. L.M. Marnel et al, “Spread spectrum image steganography”, IEEE Transactions on Image

Processing, pp 1075-1083, Aug 19993. J.J.K O-Ruanaidh et al, “Watermarking digital images for copyright protection, IEE Proceedings

in Vision”, Image and Signal Processing, pp250-256, Aug 19964. I. J. Cox and M. L. Miller, “A review of watermarking and the importance of perceptual

modeling”, Proceedings of Electronic Imaging, February 19975. H.J. Wang et al, “Wavelet based digital image watermarking “, Optics Express, PP 491-496, Dec

19986. P.-T.Yu et al, “ Digital watermarking based on neural networks for color images”, Signal

Processing, PP 663-671, Mar 20017. J. O-Ruanaidh et al, “Cryptographic copyright protection for digital images based on

watermarking techniques”, Theoretical Computer Science, pp 117-142, Sep 19998. C. Fornaro and A.Sanna, “Public key watermarking for authentication of CSG models”,

Computer-Aided design, pp 727-735, Oct 20009. M. Barni et al, “Copyright protection of digital images by embedded unperceivable marks”,

Image and Vision Computing, pp897-906, Aug 199810. J.R. Hernandez et al, “Improving the performance of spatial watermarking of images using

channel coding”, Signal Processing, pp 1261-1279, July 200011. S. Pereira et al, “Optimal transform domain watermark embedding via linear programming”,

Signal Processing, pp 1251-1260, July 200112. F. Perez-Gonzalez et al, “Approaching the capacity limit in image watermarking: a perspective on

coding techniques for data hiding applications”, Signal Processing, pp 1215-1238, July 200113. R. Baitello et al, “From watermark detection to watermark decoding: a PPM approach”, Signal

Processing, pp 1261-1271 , July 200114. M. Barni et al, “A DCT-domain system for robust image watermarking”, Signal Processing, pp

357-372, May 199815. S. P. Mohanty, et al, “A Dual Watermarking Technique for images”,  Proceedings of the seventh

ACM international conference on Multimedia, pp 49-51, 1999 16. F. Hartung and M. Kutter, “Multimedia watermarking techniques”, Proceedings of the IEEE,

Vol. 87, No. 7, pp 1079 – 1107, July 199917. N. Ahmed, et al, "Discrete cosine transform", IEEE Trans. Computers, Vol. 23(1), pp. 90-93, Jan.

1974

Page 10:  · Web viewEmbedding a digital signal (audio, video or image) with information which cannot be removed easily is called digital watermarking. Digital watermarking is based on the

18. V. Britanak, et al, “Discrete Cosine Transform: Properties, Algorithms, Advantages, Applications”, Academic Press Publications, ISBN 978-0-12-373624-6, Boston, 1990.

19. J. Cummins, et al, “Steganography 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

20. W. Bender et al, “Techniques for data hiding,” IBM Systems Journal, Vol. 35, Nos. 3&4, 199621. 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/digital-watermarking/popa/popa.pdf, 1998

22. T. Natarajan, and K. R. Rao, "Discrete cosine transform", IEEE Trans. Computers, Vol. 23(1), pp. 90-93, Jan. 1974