# Robust and Reversible Image Watermarking Scheme Using Combined DCT-DWT-SVD Transforms

## Article information

## Abstract

We present a secure and robust image watermarking scheme that uses combined reversible DWT-DCT-SVD transformations to increase integrity, authentication, and confidentiality. The proposed scheme uses two different kinds of watermarking images: a reversible watermark, W_{1}, which is used for verification (ensuring integrity and authentication aspects); and a second one, W_{2}, which is defined by a logo image that provides confidentiality. Our proposed scheme is shown to be robust, while its performances are evaluated with respect to the peak signal-to-noise ratio (PSNR), signal-to-noise ratio (SNR), normalized cross-correlation (NCC), and running time. The robustness of the scheme is also evaluated against different attacks, including a compression attack and Salt & Pepper attack.

## 1. Introduction

In current applications, network technologies have been highly improved so that users can gain easier access to remote facilities and send, receive, or share different types of digital data via the Internet. However, while the Internet is a useful public environment, it is not always secure for personal data transmission and exchange. Thus, important information must be manipulated to be concealed when provided via the Internet so that only the authorized receiver can get full access to it. For such reasons, several security methods have been developed in order to ensure several security aspects of digital data. These methods include encrypting, secretly sharing, and secretly hiding messages in data content to ensure several security properties, including authentication, confidentiality, and integrity.

Digital watermarking, which is the act of hiding a signal (watermark) into an image, is one of these proposed techniques that is used to protect the rights of owners. While the tremendous growth in computer networks, coupled with the exponential increase of computer performance, has facilitated the distribution of multimedia data such as images; publishers, artists, and photographers may be unwilling to distribute pictures over the Internet due to a lack of security since any images can be easily duplicated and distributed without the owner’s consent. Digital watermarks have been proposed as a way to tackle this tough issue. The use of a digital signature could discourage copyright violations and may help determine the authenticity and ownership of an image.

Watermarking techniques can be classified into two main classes according to the domain used for embedding. These classes are as follows: spatial techniques, which are implemented in a spatial domain by directly modifying pixel values; and frequency techniques, which are applied in a frequency domain when the watermark is embedded by modifying the transform domain coefficients that are carried out after a given decomposition, such as discrete cosine transform (DCT) [1,2], discrete wavelet transform (DWT) [2,3], discrete Fourier transform (DFT) [4], or singular value decomposition (SVD) as used in [5,6].

The two main properties that a watermarking technique must provide in order to be effective are imperceptibility and robustness. The former implies that an embedded mark should be perceptually invisible to assure the best image quality after the embedding step, while the latter property is satisfied if the inserted mark is difficult to remove and can be recovered even if the image is modified or altered by a certain type of attack (image modification and manipulation). More precisely, Cox et al. [7] defined robustness as the ability to detect a watermark after any kind of modifying operation is performed. The more I amount of inserted information increases in the image, the more the signature is visible or perceptible and therefore, the robustness decreases. In addition, a watermarking system can be either reversible or irreversible. A reversible watermarking system can extract or restore the original data from the watermarked image by applying an inverse transformation without producing any changes and it avoids all possibly created irreversible distortion of the original image. In contrast, by using irreversible watermarking, there is no way to extract the original image from the watermarked image [8].

In this paper, our aim is to propose a reversible watermarking algorithm using a combination of the three transforms, which are as follows: the DWT transform, the DCT transform, and the SVD transform. Even if each one has already been used individually to build watermarking systems, combining them allows them the best robustness and to benefit from the advantages of several transformations. The proposed scheme is based on the insertion of two different marks, W_{1} and W_{2}, in the three different domains of DWT, DCT, and SVD.

The remaining of the paper is organized as follows: Section 1 presents an introduction to watermarking systems, Section 2 discusses related works, and Section 3 presents the proposed technique. In Section 4, experimental results are presented, in which the performances of the proposed method are evaluated and compared to some of the existing ones according to PSNR, the NCC coefficient of the correlation between the original watermark and extracted watermark, SNR, and elapsed time. We also evaluate the robustness of the watermarking scheme with respect to a salt & pepper noise attack, a Gaussian noise attack, and a JPEG compression attack. Finally, conclusions are presented in Section 5.

## 2. Related Works

The transform domain obtained when applying a DCT to the host image is similar to the DFT that allows an image to be divided into the following different frequency bands: high, middle, and low frequency bands. The technique, which is based on DCT, has the important advantage of providing robust compression operations with reduced computation overhead. In their proposed scheme, Cox et al. [9] applied the DCT to the host image at a low frequency and then modified the n coefficients belonging to the highest amplitude of the transform to insert the watermarking data. In this work, the original image is required to extract the watermark. In [10], the authors describe the same principle for the embedding process but the extraction of the watermark is performed using a correlation approach without the need for an original image. Recently, others have proposed many other watermarking DCT-based schemes, which are as follows: in [11] using columns transforms, in [12] using selected pixel regions, and in [13] using visual cryptography.

The DWT transform is a modern mathematical tool that has been widely studied in signal processing in general and, in particular, in image compression. This transform is based on separating the original image into the following four non-overlapping multi-resolution subbands: lower resolution approximation image (LL), horizontal high frequency band (HL), vertical high frequency band (LH), and diagonal high frequency band (HH). In general, most of the image energy is situated at the lower frequency subbands (LL) and therefore, hiding watermarks in the lower frequency subbands (LL) may degrade the quality of the host image even if it could significantly increase the robustness. Tao and Eskicioglu [14] proposed a watermarking technique that is based on the insertion of the watermark as a binary logo in the four subbands. The quality of the extract watermark is determined by the similarity rate. Recent works using the DWT for watermarking include the scheme in [15] that used chirp z-transform and [16], which uses self-adaptive differential evolution.

The SVD transformation is another mathematical tool used in digital image processing. Recently, this transform has been used for watermarking because of its algebraic proprieties. It is generally used to compute two orthogonal matrices, U and V, and the diagonal matrix of S [17]. In [18], the author computed the SVD of both the original image and the watermark image (logo) and then added singular values of the watermark images to those of the host image where the watermark W is added to the matrix S. Then, a new SVD process is performed on the new matrix: D = S + k*W, to get U_{w}, S_{w}, and V_{w}, where, k is a scale factor that controls the strength of the watermark embedded into the original image. The watermarked image I_{w} is then obtained by multiplying the matrices U, S_{W}, and V. Many recent works that use the SVD transform to build watermarking systems can be found in [19–21].

## 3. The Proposed Watermarking Scheme

Watermarking schemes that use the frequency domain as a workspace are advantageous for compression operations since the same domain is used to encode the image, and hence, provides a faster processing time. In the proposed scheme, a combination of the three frequency transforms DCT, DWT, and SVD is used to achieve optimal robustness. The DWT transformation is first used to decompose the image into the four subbands, namely LL, LH, HL, and HH, which are described above. The watermark images are then embedded on the HL detail of the host image and the DCT is applied on LL and HH to produces D and D_{3} that will undergo each one the SVD transforms to give them the following three matrices, respectively: diagonal S and S_{3} and the two orthogonal ones U, V for D and U_{3},V_{3} for D_{3}.

The first step of embedding consists in generating both the watermarks W_{1} and W_{2}. A transformed DWT is applied to the two watermarks producing four levels (LL_{1}, HL_{1}, LH_{1}, HH_{1}) and (LL_{2}, HL_{2}, LH_{2}, HH_{2}) for W_{1} and W_{2}, respectively. We then perform the DCT transform on LH_{1} and LH_{2} to give D_{2} and D_{1}, and the SVD transform is applied to D_{2} and D_{1} to give (U_{2}, S_{2}, V_{2}) and (U_{1}, S_{1}, V_{1}), respectively. The embedding of the watermark W_{1} is performed by adding the two diagonals matrices S and S_{2} that were previously multiplied by a factor α to obtain S_{33}. Embedding the watermark W_{2} is performed by adding the two diagonals matrices S and S_{2} that were multiplied by the same factor α to obtain S_{32}. The SVD is performed on S_{32} to obtain W_{img}, in order to reconstruct the watermarked image I_{W} and the inverse IDCT is applied to W_{img}.

In the following sections, we present the detailed steps for the embedding and extraction process of the proposed watermarking approach, which uses the DCT, DWT and the SVD transformations in a unique scheme. The performances of the proposed approach are evaluated in the next section.

### 3.1 Watermark Embedding Process

In order to ensure the main aspects of security, which are authenticity, integrity, and confidentiality, we propose the use of a new hybrid reversible watermarking approach that performs the embedding of two different kinds of watermarks:

- A reversible watermark W

_{1}, which is used to verify data authentication and the integrity of the image. It is defined by the RSA enciphering of a data block composed of a combination of the SHA-512 hash of the most significant bits (MSB) with the RLE compression of the least significant bits (LSB);- A second watermark W

_{2}is created by enciphering the inputted logo using a secret key that allows the image’s user to check its confidentiality and integrity. It also transforms the result using DWT and SVD transforms.

The proposed watermarking process takes the cover image I as input and the two generated watermarks, W_{1} and W_{2}, to give the watermarked image I_{w} as output. Details of different embedding and watermark extraction steps are presented in the following sections, while a complete diagram of the approach is illustrated in Figs. 1 and 2.

The matrix S_{1} representing the watermark W_{1} is generated according to the following steps:

Extracting the MSB from the cover image and calculating the corresponding message authentication code (MAC) using the SHA-512 algorithm;

Concatenating the obtained MAC with the patient information and encrypting the resulting string(as shown in Fig. 3);

Selecting the LSBs of all pixels and compressing the resulting string using RLE;

Concatenating the compressed string and the encrypted one;

Converting the characters of a string to a binary matrix A;

Applying the DWT on the resulting matrix A to obtain: LL

_{1}, HL_{1}, LH_{1}, and HH_{1};Applying the DCT transform on LH

_{1}to obtain a new matrix D_{1};Performing the SVD on D

_{1}to obtain the SVs decomposition of: U_{1}.S_{1}.V_{1}′.

The obtained matrix S_{1} represents the watermark W_{1} that is to be inserted as the watermarking information in the host image I. The watermark W_{1} is computed from the host image and will serve for integrity verification and authentication (as illustrated in Fig. 3).

The matrix S_{2}, which represents the watermark W_{2}, is then generated according to the following steps:

Reading the watermark message and reshaping it into a vector;

A pseudorandom sequence is then generated from the secret key using a stream ciphering algorithm (RC4 in our implementation) and combined using XOR with a watermark message;

Applying the DWT transform on the resulting ciphertext after reshaping it as a matrix to obtain: L

_{L2}, H_{L2}, L_{H2}and H_{H2};Applying the DCT to the sub-band LH

_{2}to obtain the new matrix D_{2};Decompose D

_{2}in singular values to obtain the SVs: SVD (D_{2})=U_{2}.S_{2}.V_{2}^{t}.

The obtained matrix S_{2} represents the watermark W_{2} that is to be inserted as the watermarking information in the host image I. The watermark W_{2} is computed from the host image and will serve for confidentiality guaranteeing (as illustrated in Fig. 4).

After generating the two watermarks W_{1} and W_{2}, the embedding phase can now be performed. The embedding process for the watermark W_{1} is first performed as follows:

Applying the DWT transform to decompose the cover image into four sub-bands;

Perform the SVD on the subband LL to obtain the SVs: SVD(LL) = U.S.V′;

Insert the singular values of the watermark S

_{1}in the matrix S of LL to obtain: S_{33}= S + α* S_{1};Perform the SVD on S

_{33}to obtain the SVs: SVD(S_{33}) = U_{6}.S_{6}.V_{6}^{t};Finally, calculate the watermarked matrix using U, V, and S

_{6}: W_{img2}= U . S_{6}. V^{t}.

After that, the watermark W_{2} is embedded into the watermarked image using the following steps:

Apply the DCT to subband HH of the cover image to get the new matrix D

_{3};Perform the SVD on D

_{3}: SVD (D_{3})=U_{3}.S_{3}.V_{3}^{t};Add the content of S

_{2}of the watermark W_{2}to the matrix diagonal S_{3}: S_{32}= S_{3}+ α . S_{2};Perform the SVD on S

_{32}to obtain U_{5}, V_{5}^{t}, S_{5}and reconstruct the W_{img}matrix using S_{5}, U_{3}and V_{3}: W_{img}= U_{3}. S_{5}.V_{3}^{t}.Apply the inverse DCT to reconstruct B

_{1}using W_{img};Obtain the watermarked image I

_{W}by performing the inverse DWT using B_{2}and three sets of DWT coefficients: HL_{2,}B_{1}and HH_{2}.

The detailed process of watermark embedding is illustrated in Fig. 1.

### 3.2 Watermark Extraction Process

The extraction phase includes extraction of watermark W_{1} and watermark W_{2}. The first step consists of applying the decomposition DWT to decompose the watermarked image I_{W}, which produce four detailed components: LL_{w}*, HL_{w}*, LH_{w}*, and HH_{w}* (these are possibly corrupted). The detail LL_{w}* is used for extracting watermark W_{1}, while the HH_{w}* is used for extracting watermark W_{2}.

The SVD transform is applied to LL_{w}* to give the three matrixes U_{w}*, S_{w}*, and V_{w}*. After that, the matrix S_{r} is computed using the diagonal matrix S (obtained during the SVD transformation applied on the original detail LL of the original image) and the matrixes S_{W}. A new matrix D* is then computed using the matrixes U_{1} and V_{1} that were obtained during the embedding process, and the inverse DCT transform is applied to the new matrix D* to produce a matrix G. Finally, in order to extract the watermark W_{1}, the inverse DWT transform of the original image’s details LL_{1}, LH_{1}, HL_{1}, and G are computed.

In order to extract the second watermark W_{2}, the DCT transform is applied to HH_{w}* producing T_{W}. The SVD transform is then applied to T_{W} produce three matrixes: U_{ww}, V_{ww}, and S_{ww}. These are used with the original matrix S_{3} to compute the matrix S_{r1}. A new matrix D_{22}* is then computed using the matrix S_{r1} matrixes with the matrixes U_{2}, V_{2} of the original watermark W_{2}. Finally, applying the inverse DCT on the new matrix D_{22}* gives the new matrix B, and the inverse DWT of the original detail LL_{2}, HL_{2}, LH_{2}, and B is computed and deciphered using the same secret key used during the watermark generation to deduce the watermark W_{2}. The different steps for extracting watermark W_{1} are explicitly explained as follows:

The watermarked image I

_{w}* (possibly attacked) is decomposed into four DWT transform coefficients: LL_{w}*, HL_{w}*, LH_{w}*, and HH_{w}*;The SVD transform is performed on LL

_{w}* to obtain: SVD(LL_{w}*) = U_{w}*.S_{w}*.V_{w}*^{t};The corrupted watermark is obtained by: S

_{r}= (S−S_{w}*)/4;The matrix containing the watermark is computed by: D* = U

_{1}.S_{r}.V_{1}^{t};The extracted watermark W

_{1}* is obtained by performing the inverse DWT using the original watermark’s coefficient sets: LL_{1,}HL_{1}, LH_{1}, and D*.

The different steps for extracting watermark W_{2} are explicitly explained as follows:

The DCT transform is applied to HH

_{w}*to obtain T_{w};The SVD transform is applied to T

_{w}to obtain: SVD(T_{w}) = U_{ww}. S_{ww}.V_{ww}^{t};The corrupted watermark is obtained by: S

_{r1}= (S_{3}−S_{ww})/4;The matrix containing the watermark is computed by: D

_{22}* = U_{2}. S_{r1}. V_{2}^{t};The inverse DCT transform is applied to D

_{22}*;The extracted watermark W

_{2}* is obtained by performing the inverse DWT using the original watermark’s W_{2}coefficient set: LL_{2}, HL_{2}, LH_{2}, and D_{22}*.

The detailed process of watermark extraction is illustrated in Fig. 2.

## 3. Experiments and Obtained Results

The performances of the proposed method were analyzed using the metric normalized cross-correlation (NCC), which expressed the quality of the extracted watermark be measuring the similarity between the original watermarks W and the extracted watermarks W*. According to [22], the NCC is defined by Eq. (1), where W (i, j) is the pixel values at the position (i, j) of the original image, and W*(i, j) is the pixel values at the position (i, j) of the watermarked image.

The peak signal-to-noise ratio (PSNR) and signal-to-noise ratio (SNR) [23] between the original image and watermarked image are defined as shown below:

where, M and N are the height and width of the image. I is the original image and I_{W} is the watermarked image. Images having high PSNR and SNR values are preferable.

In order to evaluate the proposed scheme, we used three 256×256 gray scale medical images: IRM_31, IRM_32, and IRM_33 (illustrated in Fig. 5(a), (b), and (c)). The watermark image W_{1} has a size of 1×206 and the watermark image W_{2} has a size of 106×143 binary pixels. Both of which are illustrated in Fig. 6. Fig. 7 shows the results of when the watermarking process is applied to the original image.

To investigate the robustness of the scheme with respect to common watermarking attacks, we attacked the watermarked image by applying a JPEG compression (with a quality factor equal to 10%), a salt & pepper noise attack (with a quality factor 0.006), and a rotations of 90°, 180°, and 270° respectively. Fig. 8 illustrates the different attacked watermarked images that correspond to the original IRM_31 one. Table 1 illustrates the obtained performances results measured in terms of NCC metrics. The measure was applied between the originally inserted watermark and the one extracted from the watermarked images after applying a given attack. The result shows that even with a significant attack that destroys some of the content of the image, the watermark can still be recovered with a very satisfactory quality. For further illustration, Fig. 9 shows the watermark W_{1} that was extracted from several attacked images. It is clear that the perceptual quality of the watermark is highly preserved even with hard attacks, such as compression and cropping.

Further experiments have been conducted in order to show the robustness of the proposed scheme with respect to several attacks. For attacked watermarked images, we calculated a detection score value that indicated if the watermark is really present or not in the images. We implemented an experiment inspired from [25] using a traditional NCC between the original watermark and the decoded watermark. The score is computed as follows:

where, *p** _{i}* and

*M*is the size of the watermark.

If the score S is higher than a certain threshold *T** _{s}*, we can say that the watermark is present in the image. According to [25], the threshold value can be computed using the following formula:

Hence, since the size of the watermark W_{1} is 106×143 binary pixels, we concluded that the threshold *T** _{s}* is equal to 0.14. In Fig. 10, we show the variation between different detection score that were obtained for the extracted watermark from several attacked images by varying the angle of rotation. We can easily see that the detection score is always higher than the threshold

*T*

*. This means that the watermark was always detected.*

_{s}An Addition computation of the detection score was performed with respect to the JPEG compression attack. Fig. 11 illustrates the evolution of the watermark’s detection score with respect to several values of compression ratios. We see that even with high compression rates (raising very degraded image quality and information loss), the watermark can still be detected since the detection score is above the threshold *T** _{s}*. The results of Figs. 10 and 11 approve the NCC results given in Table 2, and they ensure that the proposed scheme is very robust against several types of watermarking attacks.

## 5. Conclusions

In this paper, we present a novel watermarking scheme using a combination of reversible DWT/DCT/SVD transformations in order to insert two different types of watermarks into a digital image. The aim of the scheme is to increase the security of a data hiding mechanism, which can be applied in both copyright protection and content authentication domains. The three transformations that we used operated in the transformed frequency domain of the image.

Even though we obtained satisfying results, the reversible DWT-DCT-SVD based method offers better capacity and imperceptibility properties than the classical DWT-DCT-SVD approach proposed in [24], while the obtained results show that our proposed scheme can resist several types of image watermarking attacks, including geometric transformation attacks, noises attacks, and JPEG compression attacks. In our future work, we intend to extend the scheme for color image watermarking by inserting the two different watermark images into the RGB color plans.

## References

## Biography

**Souad Bekkouche**

She was born in 1981. She is teaching computer science at the computer science department of Mascara’s university-Algeria. She prepare actually his Ph.D. thesis about images watermarking and security. Research Interests are image watermarking and encryption techniques.

**Kamel Mohamed Faraoun**

He received his master’s degree in computer science at the computer science department of Djillali Liabes University, Sidi-Bel-Abbès, Algeria in 2002, his Ph.D. degree in computer science in 2006, and his HDR degree in computer science and intelligent systems in 2009 from UDL-University. His research areas include computer security, cryptography, cellular automata, evolutionary programming and information theory.