Comparison of Digital Image Watermarking...

Post on 10-Jul-2020

5 views 0 download

transcript

Comparison of Digital Image Watermarking Algorithms

Xu Zhou

Colorado School of Mines

December 1, 2014

Outlier

• Introduction

• Background on digital image watermarking

• Comparison of several algorithms

• Experimental Results

• Conclusion

Introduction

• Can be considered as a kind of a signature that reals the owner of the multimedia object.

• Used for copyright protection, content authentication, tamper detection.

• Three different types: visible watermark, invisible-robust watermark and invisible-fragile watermark

• Three main requirements: transparency (or fidelity), robustness and capacity.

Evaluation Criteria

• Peak Signal to Noise Ratio (PSNR)

• Normalized Cross-Correlation (NC)

Classical Methods for Digital Image Watermarking

Spatial Domain: • Least Significant Bit (LSB) Substitution

Frequency Domain: • Discrete Cosine Transform (DCT) based watermarking

• Discrete Wavelet Transform (DWT) based watermarking

• Discrete Fourier Transform (DFT) based watermarking

• Discrete Hartley Transform (DHT) based watermarking

• etc.

LSB based watermarking

Watermark Embedding Algorithm For each pixel in base, watermark and watermarked image

1. set n least significant bits to zero for base image

2. shift right by 8-n bits for watermark

3. add values from base and watermark for the watermarked image.

LSB based watermarking

Watermark Extraction Algorithm For each pixel in watermarked image and extracted image

1. shift left by 8-n bits for watermarked image

2. set to the shifted value of watermarked image for extracted image

DCT based watermarking

The DCT transform and its inverse manner can be expressed as

where 𝐶 𝑤 = 1 2 , when w=0; 𝐶 𝑤 = 1, when w = 1, 2, 3, …, n-1

An image is usually divided into non-overlapped m*m block.

In general, a block always consists of 8*8 components.

The zigzag scanning implies

(1) low frequency to high frequency

(2) high energy distribution to low energy distribution

DCT based watermarking

Watermark Embedding Algorithm 1. Sequentially extract out every 8-bit data from watermark-bit-stream. 2. Obtain a random number, generated by pseudo random system, which points to one of n blocks of host image. 3. Embed extracted the 8-bit watermarking data into the 8 lower-band coefficients in the block pointed by previous step. 4. Repeat step 1 to step 3, until the watermark bit stream is run out. 5. The proposed employee replace bit to embedded watermark bit stream, and it was hidden at position bit 3 in the selected 8-bit coefficient. If the watermark bit is ‘1’, then bit 3 to ‘1’ otherwise ‘0’.

DCT based watermarking

Watermark Extraction Algorithm

1. Transform the watermarked image to frequency domain by DCT.

2. Use the same set of random numbers, which is applied in the embedding process.

3. Apply the random number to find the exact location of the DCT block in the watermarked image.

4. Extract 8-bit watermark data from each DCT block by means of the inverse embedded. The watermark bit is ‘1’ when bit 3 is ‘1’ of selected DCT-block coefficient otherwise the watermark bit is ‘0’.

5. Repeat the 8-bit data into watermark image.

DWT based watermarking

• A signal can be split into two parts, usually high frequency and low frequency.

• Edge components are largely confined to the high frequency part.

• Low frequency can be split again into two parts of high and low frequencies.

DWT based watermarking

Low pass filter: 𝐻 𝜔 = ℎ𝑘𝑒−𝑗𝑘𝜔

𝑘

High pass filter: 𝐺 𝜔 = 𝑔𝑘𝑒−𝑗𝑘𝜔

𝑘 A signal can be decomposed recursively as

𝑐𝑗−1,𝑘 = ℎ𝑛−2𝑘𝑐𝑗,𝑛𝑛

𝑑𝑗−1,𝑘 = 𝑔𝑛−2𝑘𝑐𝑗,𝑛𝑛

A signal can be reconstructed from its DWT coefficients recursively

𝑐𝑗,𝑛 = ℎ𝑛−2𝑘𝑐𝑗−1,𝑘

𝑘

+ 𝑔𝑛−2𝑘𝑑𝑗−1,𝑘

𝑘

We often use Haar wavelet filters: 𝐻 𝜔 =

1

2+

1

2𝑒−𝑗𝑤, and 𝐺 𝜔 =

1

2−

1

2𝑒−𝑗𝑤

DWT based watermarking

Watermark Embedding algorithm

1. Decompose the original image into several bands with a pyramid structure. 2. Add a pseudo-random sequence (Gaussian noise) to the largest coefficients. Specifically, let y[m,n] denote the DWT coefficients, N[m,n] is a Gaussian noise sequence with mean 0 and variance 1.

𝑦 𝑚, 𝑛 = 𝑦 𝑚, 𝑛 + 𝛼𝑦2 𝑚, 𝑛 𝑁[𝑚, 𝑛] where 𝛼 is a parameter to control the level of the watermark, the square indicates the amplification of the largest DWT coefficients. 3. Take the two dimensional IDWT of the modified DWT coefficients 𝑦 and the unchanged DWT coefficients at the lowest resolution.

DWT based watermarking

Watermark Extraction Algorithm 1. Decompose the watermarked image into four bands. 2. Compare the watermark added in the HH1 band and the difference of the DWT coefficients in HH1 bands of the watermarked and the original images by calculating their cross correlations. If there is a peak, watermark is detected. 3. If 2 is not satisfied, do that in HH1 and LH1 bands, respectively. 4. If watermark is still not detected, compose the signals in the LL1 band into four additional subbands LL2, LH2, HL2, and HH2 and repeat 2-3. 5. Several times later, we assume watermark cannot be detected.

DFT based watermarking

Watermark Embedding Algorithm

1. Take the Fourier transform of the original image and move the low frequency to magnitude coefficients to the center.

2. Use the pseudo-random (PRND) number generator to obatin the row vector v with l binary elements.

3. Determine the watermark:

𝑊 𝑥𝑖 , 𝑦𝑖 = 𝑣 𝑗1

9 𝑀 𝑥𝑖 + 𝑠, 𝑦𝑖 + 𝑡

𝑙

𝑡=−1

𝑙

𝑠=−1

𝑥𝑖 =𝑚

2+ 1 + 𝑓𝑙𝑜𝑜𝑟(𝑟0cos(

𝑗𝜋

𝑙))

𝑦𝑖 =𝑛

2+ 1 + 𝑓𝑙𝑜𝑜𝑟(𝑟0sin(

𝑗𝜋

𝑙))

4. Calculate the magnitude coefficients 𝑀𝑤 𝑥, 𝑦 = 𝑀 𝑥, 𝑦 + 𝛼 ∗ 𝑊(𝑥, 𝑦)

5. Take the inverse Fourier Transform.

DFT based watermarking

Watermark Extracting Algorithm 1. Take the Fourier transform of the watermarked image. 2. Extract the row vectors form radius rmin to rmax and resize and normalize for the adjustment. 3. Calculate the cross covariance between the extracted vector and the generated vector. If the maximum value of cross covariance exceeds a threshold, we say the watermark is detected.

Experimental Results

Take DCT for example. PSNR = 35.6360; NC =1;

Experimental Results

Take DCT for example. PSNR = 21.8958; NC = 0.9687;

Experimental Results

Take DCT for example. PSNR = 29.4418; NC = 1;

Experimental Results

Take DCT for example. PSNR = 42.9229; NC =1;

Experimental Results

Take DCT for example. PSNR = 42.9559; NC = 0.8591;

Experimental Results

Take DCT for example. PSNR = 42.9267; NC =0.4810;

Experimental Results

Image Processing Operations Geometric Attacks

Noise Low Pass

Filtering Blurring Rotation Scaling Cropping

LSB N N N N N N

DCT Y Y Y N N N

DWT Y N N Y Y Y

DFT N N N Y Y Y

Conclusion

• Digital image watermarking is an important tool for copyright protection, content authentication and tamper detection.

• Can implement watermarking in both spatial domain and frequency domain.

• Different algorithms are focusing on different effects, but in general the result of frequency domain is better.

• Can combine different algorithms to obtain better results.

Reference

• V. Potdar, S. Han, E. Chang, “A Survey of Digital Image Watermarking Techniques”, IEEE International conference on Industrial Informatics (INDIN), pp. 709-716, 10-12 Aug., 2005

• J. Huang, Y. Q. Shi, Y. Shi, “Embedding Image Watermarks in DC Components”, IEEE Transactions on Circuits and System for Video Technology, vol. 10, no. 6, pp. 974-979, Sept. 2000

• X. Kang, J. Huang, Y. Q. Shi, Y. Lin, “A DWT-DFT Composite Watermarking Scheme Robust to Both Affine Transform and JPEG Compression”, IEEE Transactions on Circuits and Systems for Video Technology, vol. 13, no. 8, pp. 776-786, Aug. 2003

• C.K. Chan, L.M. Cheng, “Hiding data in images by simple LSB substitution”, Pattern Recognition, vol. 37, pp. 469-474, Mar. 2004

• X.G. Xia, C.G. Boncelet, G.R. Arce, “Wavelet transform based watermark for digital images”, Optics Express, vol. 3, no. 12, pp. 497-511, Dec. 1998

• V. Solachidis, I. Pitas, “Circularly symmetric watermark embedding in 2-D DFT”, IEEE Transactions on Image Processing, vol. 10, no. 11, pp. 1741-1753, Nov. 2001