an optimal svd-based watermarking framework through ... - CiteSeerX

0 downloads 0 Views 600KB Size Report
introduce an optimal SVD-based embedding framework, based on the well-known ... compression, noise addition, low pass filtering, rotation, rescaling and ...
AN OPTIMAL SVD-BASED WATERMARKING FRAMEWORK THROUGH LINEAR PROGRAMMING Mohammad Sayad Haghighi and Shahrokh Ghaemmaghami Department of Electrical Engineering Sharif University of Technology, Tehran, Iran [email protected] [email protected] ABSTRACT Transparent, robust watermarking schemes tend to insert invisible watermarks with the highest possible energy. Singular values, in singular value decomposition (SVD), are shown to be robust to intentional and unintentional attacks. However, none of the algorithms proposed in the literature considered the visual imperceptibility constraint imposed by the human visual models. In this paper, we introduce an optimal SVD-based embedding framework, based on the well-known linear programming concept. Given a binary sequence of the mark, we show how to insert the message with the highest possible magnitude, without outlawing the just noticeable thresholds driven by the human visual system models in both spatial and linear domains. KEY WORDS Image Watermarking, Singular Value Decomposition (SVD), Linear Programming, Human Visual System (HVS), Just Noticeable Difference (JND)

1. Introduction Digital watermarking is a process of embedding additional information, known as watermark, into digital signals. In most applications, such as copyright protection and digital broadcast monitoring, the embedded watermark has to be both perceptually transparent and reliably detectable. One of the major features of watermarking algorithms in copyright protection is robustness to intentional and unintentional attacks, while providing a minimum capacity of about 60 bits for identity verification. Several approaches have been introduced to achieve this goal. While a field of study focuses on finding domains with high degree of invariance to the common attacks, others try to model the watermarking process as a communication problem and use coding, synchronization, and compensation techniques to produce a robust communication channel. The SVD for square matrices was first introduced independently by Beltrami and Jordan in 1870s and then was extended to rectangular matrices by Eckart and Young in 1936 [1]. Later, this mathematical tool demonstrated its usefulness in a variety of applications

including image processing and watermarking. It can be easily shown that for an arbitrary matrix Am×n with rank r, there exist matrices U , S ,V such that A can be decomposed into the form:

A = U .S .V T (1) Where S is a diagonal m × n matrix with real positive entries, usually sorted in descending order, as:

σ 1 ≥ σ 2 ≥ ... ≥ σ r ≥ 0 , r = min(m, n) U & V are orthogonal matrices, such that U is an m × m matrix and V is an n × n matrix. The diagonal entries of S are called the singular values of the matrix A . The columns of matrix U are called the left singular vectors and the column space of the matrix V (or the row T space of V ) are called the right singular vectors of matrix A . The singular values are in fact eigen values of T matrix A A and can also be interpreted as squares of the eigen values of matrix A . In the case where A represents an image gray level values, each singular value specifies the luminance of an image layer, while the corresponding pair of singular vectors specify the geometry of the image. Singular values are known to be invariant to common attacks in image watermarking. Specifically, singular values of an image are not altered much, facing JPEG compression, noise addition, low pass filtering, rotation, rescaling and cropping [2,3,4,5]. Liu and Tan [2] suggested changing the singular values of the cover image, based on SVD of a matrix made by addition of the main image matrix of singular values, and an attenuated version of watermark matrix. The singular values matrix of the cover image is then replaced by the resultant singular values matrix of this decomposition. They also proved that their algorithm is non-invertible. Gorodetski et. al. [3] proposed two methods of SVD-based watermarking of color images, based on quantization. The idea is to replace singular values of each block with a quantized version. Chandra [4] tested a series of SVD-based embedding methods, including block based and global singular value insertion schemes. He also introduced block-based offset embedding scheme, in which a constant offset is added to or subtracted from all singular values of a block to embed

one bit of data. Ganic et.al.[5] proposed a two layer SVDbased embedding scheme. In the first layer, each watermark matrix singular value is scaled with a factor proportional to the ratio of the largest singular value of the block to the embedding singular value, and then added to the largest singular value of that n × n block. In the second layer, the singular values of the watermark matrix are scaled by a fixed factor, and then added to the singular values of the cover image. Although the authors have not proved the optimality of their scheme, they claim that the scheme is optimal in the senses of high capacity in layer 1 and robustness in layer 2. In SVD-based watermarking algorithms, the common point is that watermark is inserted by altering singular values, either by increasing or decreasing the singular values with respect to the watermark sequence. However, the maximum amount of the alteration (indeed distortion) of these coefficients for a given sequence of watermark, without violating watermark imperceptibility, has yet remained unknown. Most algorithms have adopted the idea of making the distorted part adaptive with the corresponding singular values of the cover image, with no evidence of optimality. In the following section, by considering the visual just noticeable thresholds, we show how SVD-based watermarking can be shrunk down to a linear programming problem.

⎡ 0⎤ G G G G G G T Am×n = [ u1 u2 ... um ]m×m ⎢ v1 v2 ... vn ]n×n (3) [ ⎥ ⎣ 0 0⎦m×n G where ui is a column vector of U and  represents a diagonal square matrix of dimensions min(m, n) . The middle matrix is padded with zeros if m ≠ n . In the case that the image matrix A is not of full row or column rank, some of the ending diagonal entries of  could be zero. We rewrite the equation (3) in the form:

G G G G G G Am×n = [ s1u1 s2 u2 " sk uk | 0]m×.n ⎡⎣v1t v2t ... vnt ⎤⎦ (4) n× n t

where k stands for min(m, n) , vi represents a column vector of the transposed right singular matrix, and the zero column appears only if m < n . From the above equation it can be shown that any pixel aij of the image can be written as a linear combination of the singular values of image matrix A , as: r

aij = ∑ sk uik vkjt i = 1,..., m j = 1,..., n

(5)

k =1

2. The Proposed Optimal Framework Dealing with singular values for the purpose of image watermarking, leads to the problem of watermarking noise localization. This arises from the fact that the number of singular values are usually much less than the degree of freedom needed for perfect localization. For example, in 2 the SVD of a n × n image, the n degrees of freedom is divided into three parts. Left and right singular vectors matrices U & V , both take n( n − 1) / 2 degrees of freedom leaving the remaining n degrees to the singular values matrix. Since robust watermarking is performed using just n singular values, there are insufficient degrees of freedom to achieve 1-pixel spatial domain resolution. We propose a scheme, in which, with a given binary sequence of the embedding message, the highest possible deviation from original singular values is achieved without outlawing the thresholds defined by the HVS model. We first introduce a well-known polynomial-time solved problem called “linear programming”. A standard linear programming problem is described as a series of linear inequalities that can be summarized in matrix form, as:

max c T x x

s.t. Ax ≤ b x≥0

where c , x and b are all column vectors and A is the matrix of coefficients. There are several methods to solve this problem where, among them, simplex method and its revised version are a few to mention. To begin, we write the SVD in the detailed form:

(2)

where r is rank of matrix A (more generally, assuming some of the SVs possibly be zero, r = min( m, n) ), sk th t represents the k singular value of the image and vkj is T th (k,j) entry of the transposed right singular matrix V . We can rewrite equation (5) in matrix form, as:

⎡ u11v11 " u1r vr1 ⎤ ⎡ s1 ⎤ ⎡ a11 ⎤ ⎢ # ⎥ ⎢ ⎥ ⎢ ⎥ % ⎢ ⎥ ⎢#⎥ =⎢ # ⎥ ⎢⎣um1v1n umr vrn ⎥⎦ m*n×r ⎢⎣ sr ⎥⎦ r×1 ⎢⎣ amn ⎥⎦ m*n×1 H.s = a

(6)

In the first step, we assume that a masking model like those based on the noise visibility function (NVF) is defined in the spatial domain. We want the distortion made by changing the vector s to be in acceptable range defined by the masking function, so we adopt the method proposed by Pereira et.al.[6,7] to formulate the problem. To do this, we first change the problem into the standard form. Given a binary sequence of watermark w , we convert it to antipodal format, i.e., we replace ones with +1 and zeros with -1, corresponding to increase and decrease of singular values, respectively. From equation (6) and the fact that distortion in s should not exceed spatial domain thresholds, we can write:

H .Δs ≤ Δa

(7)

In SVD watermarking, H remains intact since it is a combination of matrices which are not robust to attacks. Δa is derived from spatial domain masking function which defines the thresholds, but since each pixel value is bounded between 0 and 255, we will use Δa+ and Δato take unbalanced swings around a pixel value into account. Note that although a singular value is positive itself, but its difference may become negative. There are extensions to linear programming problem which make bounded negative solutions feasible, however to avoid this and without loss of generality, we can bias our variables with their respective singular values, if a similar biasing is done on the pixel value differences. It can be mathematically proved that maximization of the new problem is equivalent to the maximization of the original problem. Now the problem can be summarized in the standard linear programming form:

max w T s' ' s

Gs ' ≤ b s' ≥ 0

⎡ +H ⎤ ⎢ ⎥ ; G = −−− , ⎢ ⎥ ⎢⎣ − H ⎥⎦

⎡ +a+ ⎤ b = ⎢⎢ − − − ⎥⎥ ⎢⎣ −a− ⎥⎦

(8)

(9)

We can generalize the idea, where the masking function is defined in a linear transform domain like DCT or DWT domain. The function relating the spatial domain pixel values to linear domain coefficients can be described, as:

⎡ f1 ⎤ ⎡ a1 ⎤ ⎢# ⎥ =⎢ # ⎥ ⎢ ⎥ ⎢ ⎥ ⎢⎣ f k ⎥⎦ k ×1 ⎢⎣ amn ⎥⎦ m*n×1

C. f = a

(11)

H ' .s = f Equation (11) is now in the standard form. The masking function defines just noticeable differences in the linear domain so, just like the spatial domain, we have f + and f − for f . Note that Δf + and Δf − might be equal in magnitude in some cases such as in Waston’s DCT ' domain threshold definition [8]. G ' and b are respectively constructed similar to G and b and the problem can be described in the form of linear programming:

G' s ' ≤ b'

(12)

s' ≥ 0

The solution to this biased problem will be the new singular value vector of the image. The problem can be easily solved using linear program solving techniques, such as simplex or interior point methods. The singular value vector of the image can be fed to the iterative solving methods, which need a starting point.

⎡ c11 " c1k ⎤ ⎢ ⎥ ⎢ # % ⎥ mn ⎥ ⎢ c1mn ck ⎦ ⎣ m*n×k

C −1.H .s = f

s

'

a− = a − Δa−

H .s = C . f

max w T s' '

where s is the vector of the singular values and a+ and a− are column vectors representing the upper and lower bounds of each pixel value derived from the masking function, namely:

a+ = a + Δa+

the bases are orthogonal and span the whole space. This would lead to the direct deduction that k in the above equation is equal to m * n and C is a square matrix. Replacing a in equation (6) with the above, we have:

(10)

where a is the vector of pixel values in the spatial domain, f is the coefficients vector in the linear domain, and C is the domain-converting matrix. We assume here that the linear domain has minimum number of bases, i.e.,

Since dimensions of matrix C rapidly grow up with an increase in image size, it is computationally hard to obtain the inverse matrix for big images. However, C is constant and its inverse should be computed once for a set of images with the same dimensions. This linear domain method, together with visual models like Watson’s DCT domain masking model, may be useful in SVD blockbased schemes like Ganic’s [5] two layer watermarking algorithm.

3. Simulation Results We set up experiments based on the proposed embedding framework to check how the singular values are affected by applying the method. The results were quite interesting since, unlike the previous adaptive methods in which the watermark additive component was scaled to be a rather small fraction of the original image singular value, the optimal framework showed that the ending singular values (descending order) can tolerate distortions even higher than their magnitudes. The MATLAB LIPSOL (Linear Interior Point Solver) [9] package was used for solving the linear programming problem obtained from image analysis. The images were 8-bit gray-scale of size 128x128. For global SVD-based watermarking, we used the spatial domain JND thresholds driven from noise visibility function (NVF), based on the non-stationary Gaussian model of the image [10]. Figure 1 shows Lena image and its noise visibility function. For a comparison, we performed embedding on a series of images with LiuTan method and with our simplest form of framework at equal watermark energy (PSNR=40dB). Figure 2 shows the watermarked images of these two methods. As observed in figure 2, the optimum method spread out the

mark all over the image with some emphasis on high capacity areas, while Liu-Tan method exceeded the thresholds and centralized the mark on edges, leaving the other parts of the image intact. The overall contrast of the image has also been changed by Liu and Tan method.

programming concept. We have shown that this method maximizes the overall amplitude of additive watermark, considering spatial or linear domain HVS masking model. This framework can be easily incorporated in all SVDbased watermarking schemes, while preserving their other properties. Simulation results show that given a sequence of mark, at equal watermark energy, our model spreads the mark all over the image within the capacity of thresholds, while previous methods exceed the allowable thresholds in some areas.

5. Acknowledgement (a)

(b)

Figure 1. (a) Lena’s Picture (b) Noise visibility function (derived from non-stationary Gaussian model).

The authors would like to thank ESFRD (Electronic Support Fund for Research & Development) and ITRC (Iran Telecom Research Center) organizations for supporting this project and also Masoud S. Haghighi for his useful reviews and participation in subjective experiments.

References

(a)

(b)

Figure 2. Watermarked Images of (a) Liu-Tan method and (b) the optimal method.

(a)

(b)

Figure 3. Amplified difference Images for (a) Liu-Tan method and (b) the optimal method. Based on the approach user selects to use the proposed framework, watermark recovery process can either be a simple blind or non-blind (a correlating detector) scheme. The optimum framework took about 5 minutes on an Athlon-XP 2600+ to find the best solution solving the linear programming problem for Lena image, which makes it rather suitable for offline watermarking. Further research on efficient implementations and usage of parallel solving algorithms may improve the speed of process.

4. Conclusion In this article, we have introduced an optimal framework for embedding a sequence of watermark into singular values of an image, based on the well-known linear

[1] R. M. Johnson, On a theorem stated by Eckart and Young, Psychometrika, 28(3), September 1963, 259-263 [2] R. Liu and T. Tan, A SVD-based watermarking scheme for protecting rightful ownership, IEEE Transactions on Multimedia, 4(1), March 2002, 121-128. [3] V.I. Gorodetski, L.J. Popyack, V. Samoilov and V.A. Skormin, SVD-based approach to transparent embedding data into digital images, Int. Workshop on Mathematical Methods, Models and Architectures for Computer Network Security (MMM-ACNS), May 2001. [4] D.V.S. Chandra, Digital image watermarking using singular value decomposition, Proc. of 45th IEEE Symposium on Circuits and Systems, 2002, 264-267. [5] E. Ganic, N. Zubair and A. M. Eskicioghlu, An optimal watermarking scheme based on singular value decomposition, Proc. IASTED Conference on Communication, Network and Information Security (CNIS), December 2003. [6] S. Pereira and T. Pun, A framework for optimal adaptive DCT watermarks, Proc. 10th European Signal Processing Conference (EUSIPCO), Finland, Sep. 2000. [7] S. Pereira, S. Voloshynovskiy and T. Pun, Optimized wavelet domain watermark embedding strategy using linear programming, Wavelet Applications VII (part of SPIE AeroSense 2000), USA, April 2000. [8] A.B. Watson, DCT quantization matrices visually optimized for individual images, Proc. SPIE Human Vision, Visual Processing and Digital Display IV, 1993. [9] Zhang, Y., Solving large-scale linear programs by interior-point methods under MATLAB environment, Technical Report TR96-01, Department of Mathematics and Statistics, University of Maryland, 1995. [10] S. Voloshynovskiy, A. Herrigel, N. Baumgaertner, and T. Pun, A stochastic approach to content adaptive digital image watermarking, Proc. of 3rd International Workshop on Information Hiding, Springer, Sept./Oct. 1999, 211-236.

Suggest Documents