A New Robust Digital Image Watermarking Tech- nique ... - IEEE Xplore

6 downloads 428 Views 810KB Size Report
A New Robust Digital Image Watermarking Tech- nique based on the Discrete Cosine Transform and. Neural Network. Ahmad R Naghsh Nilchi1, Ayoub Taheri2.
A New Robust Digital Image Watermarking Technique based on the Discrete Cosine Transform and Neural Network 1

2

Ahmad R Naghsh Nilchi1, Ayoub Taheri2

Professor assistance of the Engineering Department of Isfahan University of Iran Mater of science student of computer architecture of the Engineering Department of Isfahan University of Iran E-mail: [email protected], [email protected].

Abstract – This paper presents a new robust digital image watermarking technique based on Discrete Cosine Transform (DCT) and neural network. The neural network is Full Counter propagation Neural Network (FCNN). FCNN has been used to simulate the perceptual and visual characteristics of the original image. The perceptual features of the original image have been used to determine the highest changeable threshold values of DCT coefficients. The highest changeable threshold values have been used to embed the watermark in DCT coefficients of the original image. The watermark is a binary image. The pixel values of this image are inserted as zero and one values in the DCT coefficients of the image. The implementation results have shown that this watermarking algorithm has an acceptable robustness versus different kinds of watermarking attacks. Index Terms – Digital Image Watermarking, Discrete Cosine Transform, Neural Network, Human Visual System.

the watermark is lost. Typical intentional or unwitting attacks include: ƒ Common digital processing: A watermark should survive after image blurring, compression, dithering, printing and scanning, etc. ƒ

ƒ



Capacity: The watermark capacity includes the discussions and techniques which provide the image with possibility to embed the majority of information [2]. This paper doesn’t emphasis on this watermarking discussion.



Blind Watermarking: Extracting watermark from the watermarked image, without using original image, is considerable for a variety of reasons: in some cases, it is impossible to avail the original image; searching for the original image in digital library is time consuming and costly [1].

I. INTRODUCTION Owing to the popularity of the Internet, the use and transfer of digitized media are increasing. However, this frequent use of the Internet has created the need for security. It is imperative to protect information to prevent intentional or unwitting use of information by someone other than the rightful owner. A commonly used method is to insert watermarks into original information to declare rightful ownership. This is the so-called watermarking technique. A watermark can be a visible or invisible text, binary stream, audio, image, or video. It is embedded in an original source and is expected to tolerate attacks of any kind. A valid watermarking procedure enables one to judge the owner of media contents via a retrieved watermark even if it is attacked and is, thus, fragmentary [1]. A trustworthy and effective watermarking algorithm should consider the following: •



Transparency: The embedded watermark in the image should be perceptually and visually imperceptible. This requirement holds the most challenges for the images having noticeable pixel similarities in different parts of the image. Robustness: A secure watermark should be difficult to remove or destroy, or at least the watermarked image must be severely degraded before

1-4244-2427-6/08/$20.00 ©2008 IEEE

Subterfuge attacks (collusion and forgery) [15]: A watermark should be resistant to combinations of the same image watermarks (collusion). In addition, a watermark should be robust to repeated watermarking (forgery). Geometric distortions: A watermark should be able to survive attacks which use general geometric transformation, such as cropping, rotation, translation, and scaling.

In terms of embedding data in the image the watermarking algorithms are divided into two groups of spatial and frequency domain methods [3]. Spatial domain methods embed the data in brightness or color of image. Spatial domain methods have advantage of being more consistent with HVS model, but its disadvantages are the sensitivity to the image resizing, cropping, and the other performable geometric operations on the image. Frequency domain methods mainly include DCT, DFT (Discrete Fourier Transform), and DWT (Discrete Wavelet Transform). DCT strategies are of low arithmetic complexities and more robustness to JPEG compression attack.

Two important issues should always be regarded with respect to watermarking methods based on DCT: the first one is choosing DCT coefficients; choosing coefficients of high frequency causes the image watermark to be perceptually imperceptible, while doing a filtering operation on the image removes the watermark from the image. The second issue is the amount of performed changes on DCT coeffi-

cient values to embed the watermark into the image [1], [12]. The performed changes on DCT coefficients will influence the watermark invisibility and even they can destroy the image to a large extent. The watermarking algorithms of digital images which are based on the image perceptual model are called adaptive algorithms [1], [3]. The Scheme Design has been stated in section ІІ, which includes watermarking based on HVS model in section A, application of neural network in digital image watermarking in section B, and sinc convolution encryption and decryption in section C. The proposed method has been presented in section ІІІ and implementation results have been brought together in section VІ. II. SCHEME DESIGN Artificial neural network is important embranchment of artificial intelligence field, and it is widely parallel linked by a great deal of simply process units (neural unit), and it can simulate the structure core function of human brain neural system and has strong learning, generalization core nonlinear approximation capability. Neural network has certain advantage on the aspect of simulating biology neural computation [7], [8]. It has self-learning, self-organizing, association of ideas, blur extend abilities, etc. and has great comparability with human visual system. Neural network applied to digital watermark embedded process simulates human visual characteristic to determine the maximum watermark embedded intensity endured by middle frequency coefficients in every one of 8×8 image block DCT coefficients. In this paper, a computing method of the maximum watermark embedded intensity using FCNN is proposed in order to make watermark have good robustness against all kinds of attacks and embed the maximum watermark data under the condition of good invisibility. A. Watermarking based on the HVS model Considering HVS aspects of the image to do watermarking is of high importance [6]. One of the important issues of HVS model is the image component masking. This issue is based on the fact that in a visual signal, a component remains invisible before the other signal. The second signal is called mask. In fact a signal strengthens the visual and perceptual thresholds for its other surrounding signals [1], [6]. The most common image component maskings are as follows: frequency masking; entropy masking; texture masking; brightness masking; contrast masking [1]. The frequency masking describes the human’s eyes sensitivity to the sine wave grating at various frequencies. This masking is also describable by contrast masking. The contrast masking states that the human’s eye is less sensitive to make changes in high image frequencies. It is for the very reasons that in most of the watermarking methods the watermark is inserted in the image edges [3]. Brightness masking proves the effects of detectable noise thresholds on a constant background. Frequency masking is independent of the im-

age and is based on the quantization table in the process of image compression. The other component maskings are dependant on the image. The adaptive watermarking determines the JND threshold values for image by getting help of HVS model and paying attention to one of the image masking which therefore it puts the watermark in the image, so that the performed changes by these thresholds into a certain image component will have no influence on that component and other components of image and so our watermark is invisible in the image and will not be perceptually detectable [4]. JND thresholds in frequency domain determine that to what extent the coefficients of a certain transform (such as DCT or DWT…), which this transform is performed on an image, can be changed to have no influence on the perceptual image components. Using this approach, the watermark can be embedded into the image by changing the transform coefficients. B. Application of Neural Network in Digital Image Watermarking Neural network is used in watermarking algorithm in the processes of embedding and extracting watermark “[5], [7], and [8]”. Principally the watermark image size is less than the original image. The generic algorithm of watermark embedding is that the original images along with its watermark are applied into the neural network as input and target vectors (one dimensional vector) and neural network output is a one dimensional vector which is the watermarked image. In the process of watermark extracting, the watermarked images along with the original watermark are applied into the neural network and the neural network output is the extracted watermark which is one dimensional vector. In this paper, we use the neural network to calculate the image JND threshold values. DCT coefficients are applied into the neural network as input vector and the JND threshold values, are calculated for each coefficient. The mathematic relations of calculating the JND threshold values are presented in [9]-[11]. In order to reach to more efficient watermarking algorithm, it is very important to avail the most suitable JND threshold values which are only possible through research, study, and practical implementation [6]. JND threshold values will be regarded as a target vector for neural network. The output vector of neural network is maximum watermark embedded intensity values. Depending on our chosen coefficients for embed the watermark; corresponding values of output are used to embed the watermark. The process of calculating JND threshold values will be again done in the process of watermark extracting. Then by comparing the DCT coefficients of watermarked image with corresponding DCT coefficients of the original image and having the relevant watermark embedded intensity values, the watermark extracting will be accomplished [12]. Of course embedding and extracting algorithms have a close relation with each other and availing them requires research, study, and practical implementation.

The purpose of this paper is to present a full counter propagation neural network for watermarking. The FCNN is designed to learn bidirectional mappings. Through the process of supervised training, the FCNN adaptively contrast a look up table approximating the mapping between the presented input/output training pair: DCT coefficients of each block Xs and corresponding JND threshold values Y. After being trained, the FCNN can be used to gain watermark embedded intensity values Y*. Fig.1 shows the architecture of proposed FCNN [5]. The s-th one-dimensional DCT coefficient block Xs and JND threshold value can be written in vector form as:

X s = {x1s , x2s , x3s ,..., xis }

(1)

Y = { y1 , y2 , y3 ,..., yi }

(2)

where i is a number of elements of the s-th DCT coefficient block X, and number of elements of corresponding JND threshold values Y. The input vectors X and Y are connected to neuron Zi with weights W and U respectively.

W = {w11 , w12 , w13 ,..., win }

(3)

U = {u11 , u12 , u13 ,..., uin }

(4)

where win denotes the weight between i-th neuron and input xn. Similarly, uin denotes the weight between i-th neuron and input yn. Accordingly, the total input of the i-th neuron is Zi, which represents the distance vector between input xs, y pair and the i-th neuron. n

Z i = ∑ ( xks − wik ) 2 + ( yk − uik ) 2

(15)

i =1

The activation function for each neuron is given by Гi =

1

if Zi is the smallest for all i

0

otherwise

(6)

Therefore, the j-th output of Xs* and Y* can be obtained as n

x *j = ∑ Γi v ji

(7)

i =1 n

y *j = ∑ Γi t ji

(8)

i =1

where vji denotes the weight between i-th neuron and output xjs*. Similarly, tji denotes the weight between i-th neuron and output yj*. The synaptic weights can be written in a vector form as

V = {v11 , v12 , v13 ,..., vni }

(9)

T = {t11 , t12 , t13 ,..., t ni }

(10)

where n is the number of elements of DCT coefficients block X and corresponding JND threshold values Y. The output errors of FCNN are calculated by *

Ec j =| x sj − d j |, j = 1...n

(11)

Eni =| yi − d i |, i = 1...n

(12)

where di denotes the i-th element value of desired DCT coefficient block n and dj denotes the j-th element value of desired corresponding watermark embedded intensity value of the same DCT block. If output error is less than a predefined threshold, the network converges. The input weight vectors W and U are updated by

wij (k + 1) = [1 − a (k )]wij (k ) + a (k ) xis

(13)

uij (k + 1) = [1 − a(k )]uij (k ) + a (k ) yi

(14)

where a(k) is the learning rate of input layer. In addition, the learning rate a(k) is suitably decreasing function of learning time k. The learning function a(k) can be specified as follows:

a(k ) = a(0) exp(−

k ) k0

(15)

where a(0) is initial learning rates, k0 is a positive constant. Similarly, the output weight vectors V and T associated with the winning neuron are updated by

vij (k +1) = vij (k ) + b(k ) | xis − vij (k ) | Γi

(16)

tij (k + 1) = tij (k ) + b(k ) | yi − tij (k ) | Γi

(17)

where b(k) is the learning rate of output layer. After the FCNN converged, the corresponding maximum watermark embedded intensity values obtained as

Y * = { y1* , y2* , y3* ,..., yn* }

(18)

C. Sinc Convolution Encryption and Decryption The watermark in this paper is encrypted firstly by sinc convolution in order to guarantee the embedded watermark against clipping, re-sampling and so on and improve watermark’s robustness. Complete Details of sinc convolution encryption and decryption are presented in [14]. III. PROPOSED METHOD If we divide an image into 8×8 blocks and do DCT transform for every block and gain DCT coefficients, there will

be 8×8 matrix of DCT coefficients for each block. This matrix is divided into three areas of high frequency (H), low frequency (L), and medium frequency (M), which has been shown in Fig.2. The Energy content of image is placed in low frequency DCT coefficients. It has been proved that watermark embedding in low frequency, places the watermark perceptibly in the image [12]. On the other hand embedding the watermark in high frequency coefficients causes the watermark to be removed from the image after the image compression, since compression process causes the DCT coefficients to be removed in high frequencies. So the medium frequencies are used to embed the watermark. This is done by Wu and Hsu [13]. In order to decrease the complexities of embedding and extracting watermark algorithms, our watermark is a binary image with definite size. The watermark contains a logo or mark. In other words the processes of embedding and extracting watermark are based on two valued watermark. In this paper a certain FCNN has been used to obtain maximum watermark embedded intensity values [5]. FCNN has two input, target, and corresponding output vectors. DCT coefficients of each block are regarded as the first input vector and the JND threshold values of the same block, which we considered them as primary JND threshold values, are regarded as the second input vector of FCNN. Considering our masking kind which is in this paper the entropy masking has been chosen as the best one, the primary JND threshold has been calculated [9]-[11]. Similarly the same input vectors regarded as FCNN target vectors. The second corresponding output vector will give us the maximum watermark embedded intensity values, which we considered them as the final JND threshold values. A. The process of watermark embedding At first Encrypt the watermark image J(i,j) by sinc convolution with secret key and gain the encrypted watermark image EJ(i,j). Then we divide the original image into 8×8 non overlapping blocks. Total number of blocks is 64. Do DCT transform for each DCT block and gain DCT coefficients of each block which are shown as follows: Then we obtain suitable DCT coefficients with medium frequency. We choose one of the coefficients of medium frequency for embedding watermark. In this algorithm the coefficient placed in the u = 3 and v = 2 has been selected for each DCT coefficients block. This choice should be based on standard jpeg compression, so that the mentioned frequency coefficient is not removed in compression process [12]. We embed each pixel of the watermark image into a block of image DCT coefficients, so that considering the corresponding pixel value of the watermark image as zero or one, we change the chosen DCT coefficient value based on its relevant final JND threshold value. This work is done through adding. It is necessary to mention that in the process of embedding the watermark, the values -1 and 1 are

used instead of 0 and 1. The algorithm of watermark embedding is as follows:

Fk (u , v),0 ≤ k ≤ 63,0 ≤ u ≤ 7,0 ≤ v ≤ 7

(19)

If the summation of DCT coefficient absolute with a constant positive α is more than its relevant JND threshold value, the DCT coefficient will change as the relation (20), otherwise the DCT coefficient will not change.

Fk' (u , v) = Fk (u , v) + ( JNDk (u , v) + τ ) EJ (i, j )

(20)

In this relation Fk(u,v) is DCT coefficient of block k before the watermark embedding and F’k(u,v) is DCT coefficient after watermark embedding. JNDk(u,v) is the relevant final JND threshold value and EJ(i,j) is the pixel value of encrypted watermark image, which is to be embedded in this special block. The value of constants α and τ are obtained experimentally [7]. Having finished the algorithm of watermark embedding, Inverse DCT is done for each DCT coefficients block and the watermarked image will be obtained by putting the blocks together. This proposed embedding watermark scheme has been shown in Fig.3. B. The process of watermark extracting At first we divide the watermarked image into 8×8 non overlapping blocks. Then do DCT transform for every block and gain DCT coefficients. considered DCT coefficient (u = 3, v = 2) which was already chosen in the process of embedding should be also be obtained. We also do block by block DCT transform for original image and obtain the corresponding DCT coefficients. Compare the selected DCT coefficient of watermarked image with relevant DCT coefficient of original image as the relation (21) and so the watermark is extracted from the watermarked image.

1 | Fk (u , v) − Fk' (u , v) |> γ .JNDk (u , v) EJ ' (i, j ) =

0

otherwise

(21)

EJ’ (i,j) is the extracted encrypted watermark image, γ is an experimental coefficient which is obtained by implementation [7]. By sinc convolution decrypting the extracted watermark, we obtain the extracted watermark image J’. We estimate the similarity percentage of extracted watermark by using the original watermark image J and the relation (22). Of course we should use the values -1 and 1 instead of 0 and 1 in relation (22).

J .J ' sim( J , J ) = 2 × 100 J '

(22)

In relation (22), the operator dot states the summation of corresponding product of the pixel values of two images and operator two square states the summation of two squares of pixel values of an image. The proposed watermark extracting scheme has been shown in Fig 4. IV. IMPLEMENTATION RESULTS The original image is size of 512 × 512 gray image. This image has been shown in Fig.5. Barbara image has been used to implement the watermarking algorithm. Watermark is a binary image and its size is 64 × 64. The watermark image is shown in Fig.6. The watermarked Barbara image is shown in Fig.7. The value of coefficients α, τ, γ has been set sequentially to 5,.2, and .6. By these values, the maximum performance for watermarking algorithm has been obtained. The performed attacks on the watermarked image are as follows: Gaussian noise; median filtering; low pass filtering; cropping and resizing the image; jpeg compression with quality factors of 10, 25, 50, 75, and 90 and finally jpeg 2000 compression. The estimate of similarity between the extracted decrypted watermark image and the original watermark image, along the peak signal to noise ratio (PSNR) of watermarked image will be calculated having performed each one of the mentioned attacks on the watermarked image, and the results have been integrated in table (1). V.

Fig 2: DCT Coefficients Block Watermark Image

Original Image 8 × 8 blocks

Sinc Convolution Encryption

FCNN Middle frequency coefficient

Key

Embedding algorithm IDCT Watermarked Image

CONCLUSION

A robust and efficient watermarking method of digital images based on DCT and FCNN was presented in this paper. The watermarking algorithm used an intelligent neural network to simulate the HVS model of the image. The HVS model of image is in conformity with the image entropy and based on the image DCT coefficients. Our watermarking algorithm embeds the watermark in the image imperceptibly and invisibly, so that this process doesn’t damage the quality, brightness, clearness, and the other image HVS characteristics. This watermarking algorithm has very good robustness to jpeg compression attack. The implementation results show that this watermarking algorithm has also acceptable robustness to the other attacks.

Primary JND thresholds

DCT

Fig 3: Embedding Process

Watermarked Image

Original Image

8 × 8 blocks

8 × 8 blocks

DCT

DCT

Primary JND thresholds

FCNN Middle frequency coefficient

Extracting algorithm Sinc Convolution Decryption

Key

Original watermark

Detected Watermark

Watermark Similarity Fig 4: Extracting Process Fig 1: FCNN Architecture

TABLE 1: IMPLEMENTATION RESULTS FOR BARBARA IMAGE

kind of Attack Gaussian Noise Median Filter Low Pass Filter Image Resizing Jpeg 10 % Jpeg 25 % Jpeg 50 % Jpeg 75 % Jpeg 90 % Jpeg 2000

Fig 5: Original Barbara Image

Fig 6: Watermark Image

Fig 7: Watermarked Barbara Image

PSNR(dB) 20.93 27.20 6.62 12.49 28.50 32.32 37.76 44.06 46.14 20.26

FCNN Watermark similarity 51.56 90.50 54.41 50.19 99.83 99.75 99.80 99.92 99.87 91.02

REFERENCES [1] Image and Video Compression for Multimedia Engineering, CRC Press, Boca Raton London New York Washington, D.C, Yun Q. Shi and Huiyang Sun, 2001 [2] W. Bender, D. Gruel, N. Morimoto, and A. Lu, “Techniques for Data Hiding,” IBM Systems Journal, vol. 25, pp. 313-335, 1999. [3] Researches on Uniform Meaningful Watermark, Liu Quan, Jiang Xuemei, Proceedings of the 2002 6t International Conference on Signal Processing, 2002. [4] Shichun Mei etc, “An Adaptive Digital Watermarking Algorithm Based on Neural Network,” Communication Journal, Vol.23, pp. 47-53, 2002. [5] Chuan-Yu Chang Sheng-Jyun Su,”Apply the counter propagation neural network to digital image copyright authentication,” Cellular Neural Networks and Their Applications, 2005 9th International Workshop, Publication, on pp. 110-113, May 2005. [6] I.J. Cox, J. Kilian, F.T. Leighton, and T. Shamoon, “Secure Spread Spectrum Water-Marking for Multimedia,” IEEE Trans Image Processing, vol. 6, pp. 1673–1687, 1999. [7] DavisK, NajarianK. , “Maximizing strength of digital watermarks using neural networks,” Proc IJCNN, volume 4, pp. 2893-2898, 2001. [8] PODILCHUK C I, ZENG W J. , “Image adaptive watermarking using visual models,” IEEE Journal on Selected Areas in Communications, pp. 525-539, 1998. [9] Trichili, H. Bouhlel, M.-S. Solaiman, B. Kamoun L, “Exploitation of the HVS features for the enhancement of image watermarking techniques,” Image and Signal Processing and Analysis, 2003. ISPA 2003, Proceedings of the 3rd International Symposium, volume 2, pp. 1076-1081, Sept. 2003. [10] B. Jun Zhang Nengchao Wang Feng Xiong,” Hiding a logo watermark into the multiwavelet domain using

neural networks,” Tools with Artificial Intelligence, 2002. (ICTAI2002) Proceedings, 14th IEEE International Conference, pp. 477-482, 2002. [11] Beatriz Corona-Ramirez,Mariko Nakano-Miyatake, and Hector Perez-Meana, ”Adaptive Watermarking Algorithm for Binary Image Watermarks,” SpringerVerlag Berlin Heidelberg, pp. 207-216, 2004. [12] Quan Liu; Xuemei Jiang,”Design and Realization of a Meaningful Digital Watermarking Algorithm Based on RBF neural Network,” Neural Networks and Brain, 2005, ICNN & Bapos; 05. International Conference on Volume 1, Issue, 13-15, pp.214 – 218, Oct, 2005 [13] C.T. Hsu, and J.L. Wu, “Hidden Digital Watermarks in Images,” IEEE Trans. Image Processing, Volume 8, pp: 58–68, 2004. [14] Ahmad R. Naghsh-Nilchi, and Latifeh Pourmohammadbagher, “A New Approach to steganography using Sinc-Convolution Method,” Proceeding of world academy of science engineering and technology on volume 14, pp. 324-329, August 2006. [15] R. Allan, “Coming: The era of telemedicine,” IEEE Spectrum, vol. 7, pp. 30-35, December 1976.