<<

1

Quantization Index Modulation using the E8 Qian Zhang and Nigel Boston Dept of Electrical and Computer Engineering University of Wisconsin Madison 1415 Engineering Drive, Madison, WI 53706 Email: [email protected], [email protected]

Abstract— Quantization Index Modulation (QIM) is a watermarking is not robust at all; even trivial changes method for digital watermarking. The host signal is quan- can cause errors. Patchwork was proposed in 1995 by tized to the nearest point in the codebook indexed by the Bender et al [3]. In this algorithm the cryptographic key message. The performance depends greatly on the lattice selects n pixel pairs in the host image pseudorandomly. quantization codebook construction. This paper applies E8 Assume the luminance values (a , b ) of the n pairs of Lattice Quantization to the QIM algorithm and compares P i i S = (a − b ) = 0 (a , b ) it with the Chen-Wornell quantization scheme. It is proved the pixel satisfies i i . The i i are modified by adding 1 to every a and substracting that the E8 lattice works better than the Chen-Wornell i quatization scheme in both theory and simulation. 1 from every bi. The decodingP process uses the same key, and computes Sˆ = (ˆai − ˆbi). If a watermark is embedded in the image, Sˆ should be around 2n; I.INTRODUCTION otherwise, it is close to 0. The Patchwork watermarking As the Internet, MP3, DVD etc have greater and has good invisibility, but the data capacity is very low. greater impact on our lives, more and more digital It is robust to intensity correction (gamma, tone, ...), information security issues are brought up such as (1) while vulnerable to affine transforms (rotation, scaling, copyright protection, (2) unobtrusive communications ...). Spread Spectrum Technique is derived from CDMA systems for military and intelligence agencies, (3) communication systems. It spreads the watermark over content authentication and tamper-detection, and (4) a large number of frequency ranges and is thus robust. fingerprinting etc. [1]. Their solution lies in digital The energy inserted into the cover message in any given watermarking, which is hereby becoming a hot research frequency range is unnoticeable. topic. In the second category, the host signals are partitioned Digital watermarking is the embedding of the into subsets, and mapped to another set according to information in a host signal such as image, video or the watermarks. Quantization Index Modulation is in audio in an imperceptible way, with the recovery of this category. Chen-Wornell proposed the Quantization the information at the receiver side. Encryption tries to Index Modulation(QIM) method in [4] in 2001. In the conceal the meaning, but watermarking even tries to QIM embedding process, the mapping is based on a conceal the very existence of the message. quantization codebook.

A good watermarking scheme must be invisible and In this paper we import a technique called Lattice robust. This means that the existence of information must Quantization into the QIM method. The paper is orga- be concealed, and its resistance to attack must be strong. nized as follows. Section II introduces some definitions of the lattice, and demonstrates that the E8 lattice has a Many digital watermarking schemes were proposed. much better packing property than D2 lattice. Section III [2] classifies them into two categories. In the first gives an overview of watermarking systems and propose category the watermark is added to the host signal after distortion denoted as D and correctability denoted as some processes such as encoding, modulation, etc.. Least C as measures for watermarking scheme. An important significant bit (LSB) watermarking, patchwork technique inequality C ≤ D/2 is given. The quantization index and spread spectrum technique are representatives of this modulation method [4] is also introduced. category. The LSB process chooses a subset of the cover The QIM method depends much on the lattice image, and then exchanges the LSB of each element in quantization. This motivates us to apply QIM to some the subset to be watermarks m (0 or 1). However, LSB other lattices with better properties. 2

Section IV applies the lattice quantization techniques The minimal squared distance between distinct lattice to the QIM method. In terms of C/D, we see that E8 vectors, or more simply the minimal of lattice Λ, QIM performance is better than Chen-Wornell QIM in is theory. The encoding and decoding method for the E8 lattice is also given in this section. Simulation results min {N(x − y): x, y ∈ Λ, x 6= y} are in section V and the conclusion is confirmed in = min {N(x): x ∈ Λ, x 6= 0} section VI. [6] summarizes the records for optimal packings, coverings and quantizers for lattices in each dimension as shown in Table I (Bold stands for optimal among II.LATTICES AND SPHERE PACKING lattices). In this section we introduce lattices.

Formally, a lattice is a discrete subgroup of Euclidean TABLE I space, assumed to contain the origin. That is, a lattice RECORDS FOR PACKINGS, COVERINGSANDQUANTIZERS is closed under addition and inverses, and every point has a neighborhood in which it is the only lattice point. DIMENSION 1 2 3 4 5 6 7 8 n Densest ZA2 A3 D4 D5 E6 E7 E8 Usually, a lattice in R is denoted as Λ and defined as Packing the subgroup ∗ ∗ ∗ ∗ ∗ ∗ Thinnest ZA2 A3 A4 A5 A6 A7 A8 Covering {a1v1 + ... + anvn} ∗ ∗ ∗ ∗ Best Quan- ZA2 A3 D4 D5 E6 E7 E8 where a1, . . . , an are arbitrary . And tizer v1, v2, ..., vn are linearly independent vectors in n-dimensional real Euclidean space Rn. The vectors v1, v2, ..., vn are then called a basis for the lattice. Let The density ∆ of a lattice packing is defined as: the coordinates of the basis vectors be ∆ = proportion of space that is occupied v1 = v11e1 + v12e2 + ... + v1nen, by the spheres volume of unit sphere v2 = v21e1 + v22e2 + ... + v2nen, = volume of fundamental region volume of unit sphere ... = detM v = v e + v e + ... + v e , n n1 1 n2 2 nn n The densest possible lattice packings are known in n where e1, e2,..., en are the standard basis of R . dimensions n ≤ 8 and are unique in each dimension as The matrix shown in the first row of the entries in Table I.   v v . . . v 11 12 1n Consider any discrete collection of points P =  v v . . . v  M =  21 22 2n  {P , P ,...} in Rn. The least upper bound for the  ......  1 2 distance from any point of Rn to the closest point P is v v . . . v i n1 n2 nn called the covering radius of P, usually denoted by R. is called the generator matrix for the lattice, and the Thus, lattice vectors consist of all the vectors R = sup inf dist(x, P) x∈Rn P∈P εM If the upper bound does not exist we set R = ∞.

where ε = (ε1, . . . , εn) is an arbitrary vector with components εi. The points of the Voronoi cells whose distance from P is a local maximum are called holes in P. The points

The norm of the lattice vector x = (x1, x2, . . . , xn) ∈ whose distance from P is an absolute maximum are Λ is defined by called deep holes in P. Their distance from P is the X covering radius R. 2 N(x) = x · x = (x, x) = xi 3

Suppose an arrangement of spheres of radius R covers and denotes the recovery of the watermark from the Rn. If the centers form a lattice Λ then the thickness is marked image. gf(x, m) = m means that in the absence defined by of any attack the correct mark is recovered. Θ = average number of spheres that contain a point of the space noise Watermarked volume of one sphere Host signal x Signal y m' = Message m Encoding Channel r Decoding detM f(x,m) g(r) V Rn = n detM Key where πn/2 V = n (n/2)! As shown in Table I the thinnest lattice covering, i.e. for covering with minimal thickness are known in dimension 1 through 5, and in each case the optimal Fig. 1. A general Watermarking System ∗ lattice is An ( the dual of A). The covering associated with A∗ is in fact the thinnest covering known in all n In order to give a first measure of how good the dimensions n < 23. scheme is, we might define the following related quantities. The third row of Table I indicates the best lattices for quantization. If given input x, the output is rounded off Definition 3.1: The distortion of the scheme is to the closest lattice point. If the input x is uniformly the infimum of the real numbers D for which distributed, the lattices in Table I perform best in each d(x, f(x, m)) ≤ D for all x ∈ X,m ∈ M holds true. dimension, i.e. they have the minimum average mean squared error per dimension. Definition 3.2: The correctability of the scheme is the supremum of the real numbers C for which Overall from the comparison above E demonstrate 8 d(x0, f(x, m)) ≤ C implies g(x0) = m holds true. much better packing properties than the D2 lattice. Note that so long as #M > 1, C ≤ D. This follows since if D < C, then combining the above inequalities III.WATERMARKING SYSTEMAND QUANTIZATION we get g(x) = m for all x ∈ X, m ∈ M. For the most INDEX MODULATION common examples of metric space X, e.g. subspaces A general watermarking scheme is described in Fig. 1. of some Euclidean space or finite vector spaces with It consists of a metric space X and a finite set M together the Hamming metric, the stronger inequality C ≤ D/2 with maps holds. This is not universally true, however, since there f : X × M → X exist metric spaces in which the ultrametric inequality and d(x1, x3) ≤ max(d(x1, x2), d(x2, x3)) holds and for g : X → M these any points in an open disk is its center. One consequence is that if x1, x2 ∈ X and d(x1, x2) = r > 0, such that then any open disks around x1, x2 of radius r do not gf(x, m) = m for all x ∈ X, m ∈ M intersect. In practice, however, how close C/D is to 1/2 will be a good first measure of the scheme’s viability. X is the space of objects to be watermarked - its elements will be called host signals. M is the set of watermarks Quantization Index Modulation(QIM) is a host- - its elements will be called marks. f(x, m) is the en- interference rejecting watermarking method proposed by coding function and denotes the result of watermarking Chen-Wornell in [4] . The basic idea of the QIM method image x with mark m; Usually can be described as f(x, m) ≈ x y = f(x, m) = Q (x) (1) The modification of x is only allowed in human visual m perception tolerance ranges. g is the decoding function where M is a finite set of watermarks, and m is an 4

element of M. Qm(x) is the quantization function, and B. E8 Lattice the host signal x is quantized to the nearest code in In the even coordinate system E8 consists of the points codebook Cm. The codebooks Cm satisfy {(x , . . . , x ): all x ∈ Z + 1/2 or all x ∈ Z, 1 8 i X i Ci ∩ Cj = ø, i, j ∈ M and i 6= j xi ≡ 0 (mod 2)} The generator matrix is Lattice Vector Quantizers are of particular interest   because of their highly regular structure. A lattice vector 2 0 0 ... 0 0   quantizer is a vector quantizer whose codebook is either  −1 1 0 ... 0 0    a lattice or a coset of a lattice or a truncated version of  0 −1 1 ... 0 0  M =   lattice or its coset so that the codebook size is finite. The  ......  choice of lattice for the codebook has a great influence  0 0 ... −1 1 0  1 1 1 1 1 on the QIM performance. [4] applies the D2 lattice to the 2 2 ... 2 2 2 codebook construction. But as we know, the D2 lattice In other word it is the union of D8 and the coset is not the lattice with the best sphere packing properties. 1 1 1 1 1 1 1 1 E = D ∪ (D + ( , , , , , , , )) There exists other higher dimensional lattices with better 8 8 8 2 2 2 2 2 2 2 2 sphere packing properties.

One important property of the E8 lattice is that we may IV. LATTICE QUANTIZATION AND QIM introduce a set of four independent points at distance 1 from the origin. We may call them P0,P1,P2,P3. A. D2 lattice and D2 × D2 × D2 × D2 QIM Scheme 8 The D2 lattice is defined as Given the host signal x = (x1,x2, . . . , x8) ∈ R , and watermark set M = {0000, 0001,..., 1111}, if 2 D2 = {(x1, x2) ∈ Z : x1 + x2 is even } expressed in binary code.

The generator matrix is We define the codebook Cα as the following: · ¸ X3 1 1 8 M = Cα = {X ∈ R ,X = X0 + αiPi} 1 −1 i=0 If the host signals X = R2 in Fig. 1, the watermarks where set M = {0, 1}, [4] constructs the codebook in 2 α = {(α3, α2, α1, α0): αi ∈ {0, 1} and X0 ∈ E8} dimensions according as (y1, y2) ∈ Ci if and only if One choice of P0,P1,P2,P3 is y1 + y2 ≡ i mod 2. P0 = (0, 0, 0, −1/2, −1/2, −1/2, 1/2, 0) Take 4 copies of this. For a fair comparison with the P1 = (1/4, 1/4, −3/4, −1/4, 1/4, −1/4, −1/4, −1/4) E8 lattice, we use the D2 ×D2 ×D2 ×D2 lattice. Let the 8 P2 = (0, 1/2, 0, −1/2, 0, 0, −1/2, −1/2) host signal in Fig. 1 X = R , i.e. x = (x1,x2, . . . , x8) , and watermark set M = {0000, 0001,..., 1111}, if P3 = (0, 0, 1/2, 1/2, 0, 1/2, 0, −1/2) expressed in binary code. We can regard Cα as a new lattice with generator Codebook Cα is defined as matrix   C = {(x , x , . . . , x ) ∈ R8, 3 1 −1 1 1 −1 1 −1 α 1 2 8    2 0 −2 2 0 0 −2 0  (x1 + x2) mod 2 = α3, (x3 + x4) mod 2 = α2,    1 1 −3 −1 1 −1 −1 −1  (x5 + x6) mod 2 = α1, (x7 + x8) mod 2 = α0} 1  1 −3 1 1 −1 1 1 −1  M =   Cα   4  0 2 −2 −2 −2 0 0 0  where    0 2 0 −2 0 0 −2 −2   0 0 2 2 0 2 0 −2  α = (α , α , α , α ): α ∈ {0, 1} 3 2 1 0 i 0 0 2 0 −2 0 2 −2 √ For√ this case, C = 1/2 and D = 2, thus C/D = In this case C is equal to one half of the minimal

1/2 2, which is smaller than 1/2. norm of lattice MCα i.e. C = 1/2, however, D is equal 5 to the covering radius of the E8 lattice, i.e. D =√ 1, thus where n is the channel noise. Define C/D = 1/2. It is much better than C/D = 1/2 2 from z(α) = r − (α0ε0 + α1ε1 + α2ε2 + α3ε3) D2 × D2 × D2 × D2. Let z0(α) be the nearest point in E8 to z(α). C. E8 Encoding and Decoding α = argminα||z(α) − z0(α)|| The encoding and decoding for the D2 ×D2 ×D2 ×D2 lattice is pretty straightforward, but the E lattice is more 8 V. SIMULATION RESULTS complexed. [6] gives a fast quantizing algorithm for the 8 The watermarking scheme can be implemented in the E8 lattice. Given x = (x1, . . . , x8) ∈ R , the algorithm spatial domain, frequency domain or wavelet domain. in [6] for finding the nearest point of E8 lattice is briefly described in the following steps. The simulation in this paper is done in the spatial domain 1. To find the nearest point of the n-dimensional AWGN channel and aims to compare the D2 × D2 × integer lattice Zn For a real number x, let D2 × D2 and E8 lattice quantization properties. The watermarking information is added to the pixel data in f(x) = closest integer to x the cover image, and it is uncoded. Let Im,n represent a pixel at coordinate (m,n) in In the case of a tie, choose the integer with the smallest ¯ absolute value. the original cover image, and Im,n represent a pixel at n coordinate (m,n) in the watermarked image. First we For x = (x1, x2, . . . , xn) ∈ R , let define Peak Signal to Noise Ratio(PSNR) as f(x) = (f(x1), . . . , f(xn)) 2 MN maxm,n I PSNR = P m,n Let ¯ 2 m,n(Im,n − Im,n) x = f(x) + δ(x) In a channel with additive Gaussian noise of zero so that |δ(x)| ≤ 1/2 is the distance from x to the nearest mean and variance σ2 channel, we may simply use integer. 1 2 Define w(x) to be: PSNR = 10 log10 = −10 log10 σ  σ2  f(x) + 1 for δ(x) > 0;  Tests are done with the test image cat.png and f(x) + 1 for δ(x) = 0 and f(x) ≥ 0; w(x) = lena.tif. The watermarking is embedded in the blue  f(x) − 1 for δ(x) = 0 and f(x) < 0;  color component. Fig. 2 and Fig. 3 show that E8 lattice f(x) − 1 for δ(x) < 0 performs much better than the D2 × D2 × D2 × D2 n Given x = (x1, . . . , xn) ∈ R , let k(1 ≤ k ≤ n) be such lattice in QIM method for the AWGN channel. that |δ(xk)| ≤ |δ(xi)| ⇒ k ≤ i Bit error rate v.s. PSNR 0.7 Chen−Wornell Then g(x) is defined by E8 Lattice

0.6 g(x) = (f(x1), f(x2), . . . , w(xk), . . . , f(xn))

2. To find the closest point of the 8-dimensional 0.5 8 lattice E8 Given x = (x1, . . . , x8) ∈ R , compute f(x) and g(x), and select whichever has an even sum 0.4 of components; call it y0. Compute f(x − 1/2) and g(x − 1/2), where bit error rate 0.3 1 1 1 1 1 1 1 1 1 = ( , , , , , , , ) 2 2 2 2 2 2 2 2 2 0.2 and select whichever has an even sum of components; 0.1 add 1/2 and call the result y1. Compare y0 and y1 with x and choose the nearest. 0 50 52 54 56 58 60 62 64 66 68 70 In the E8 lattice QIM, the receiver side signal PSNR(dB) X3 Fig. 2. Bit Error Rate v.s. PSNR for cat.png r = X0 + αiPi + n i=0 6

lena.tif Bit error rate v.s. PSNR 0.7 Chen−Wornell E8 Lattice

0.6

0.5

0.4

bit error rate 0.3

0.2

0.1

0 50 52 54 56 58 60 62 64 66 68 70 PSNR(dB)

Fig. 3. Bit Error Rate v.s. PSNR for lena.tif

VI.CONCLUSION The Chen-Wornell QIM watermarking technique em- ploys the D2 lattice. In this paper we have shown how the E8 lattice, which has better packing properties than D2, leads both theoretically and in simulation to an improved QIM watermarking scheme, which we call E8 lattice quatization.

ACKNOWLEDGMENT The authors would like to thank Dr. Chen for his explaining about QIM algorithm.

REFERENCES [1] Petitcolas, F.A.P.; Anderson, R.J.; Kuhn, M.G.,“Information hiding-a survey” Proceedings of the IEEE , Volume: 87 Issue: 7 , Jul 1999 Page(s): 1062 -1078 [2] M. Wu: “Multimedia Data Hiding”, Ph.D. Thesis, Princeton University, 2001 [3] Bender,W., D. Gruhl, and N.Morimoto, “Techniques for Data Hiding,” in Proceedings of the SPIE 2420, Storage and Retrieval for Image and Video Database III, 1995, Page(s): 164-173 [4] B. Chen and G.W. Wornell, “Quantization index modulation: a class of provably good methods for digital watermarking and information embedding,” IEEE Trans. Information Theory, Vol. 47, pp. 1423 -1443, May 2001 [5] J.H. Conway and N.J.A. Sloan, “Sphere Packings, Lattices and Groups,” Springer-Verlag, 1988 [6] J.H. Conway and N.J.A Sloane, “Fast Quantizing and Decoding Algorithms for Lattice Quantizers and Codes”, Information The- ory, IEEE Transactions on, Volume: 28 Issue: 2 , March 1982 Page(s): 227 -232