Keywords

1 Introduction

Image watermarking is an important method to solve lots of security problems such as the authenticity of digital data, copyright protection, and legal ownership. At present, the watermarking schemes of a large number of papers take binary or grayscale images as watermarks.

In recent years, the design of watermarking schemes for embedding color watermarks into color host images has been a difficult problem. The color image watermarking scheme in the literatures [1, 2] uses grayscale images or binary images as the watermarks. Sharma et al. [3] put forward an novel color image watermarking scheme based on RDWT-SVD and ABC, in addition, the watermark images are color images. In order to improve the performance of image processing schemes, nature-inspired optimization algorithms have become an important tool. Particle swarm optimization (PSO) [4], differential evolution (DE) [5], and artificial bee colony [3] are widely used in digital image schemes. DTQWT not only provides a wealth of phase information and solves the common shortcomings of the wavelet transform, but also can consider the local characteristics of the image at different scales [6].

This paper proposes a new color image watermarking scheme based on dual-tree quaternion wavelet transform, ABC algorithm and singular value decomposition. Apply the single level dual-tree quaternion wavelet decomposition on the host image, apply the singular value decomposition on the obtained low-frequency amplitude sub-band, and ABC algorithm is used to obtain the embedding watermark strength factor. Experimental results show that the scheme has better performance in terms of imperceptibility and robustness.

2 DTQWT and ABC

2.1 Dual-Tree Quaternion Wavelet Transform (DTQWT)

Chan et al. [6] used quaternion algebra and the two-dimensional (2D) Hilbert transform to extend the real wavelet transform and complex wavelet transform and then proposed DTQWT. In addition, the DTQWT can achieve multiresolution analyses. In digital image watermarking, the DTQWT transformation of the host image can extract the characteristics image in different frequency domains. Because the DTQWT coefficients of the host image are also quaternions, we can get the amplitude, phase, and frequency information of corresponding scales. The watermark is embedded in the stable component that has little effect on the host image, and the inverse DTQWT is applied to obtain the watermark in the host image. DTQWT not only provides rich phase information but also overcomes the common shortcomings of the wavelet transform. Taking into account the local characteristics of the image on different scales, DTQWT shows a better performance than RDWT [3], QWT [7]. We realize the DTQWT and inverse DTQWT by using the dual-tree filter bank [8] framework.

2.2 ABC Optimization

Karaboga presented an optimization algorithm about population size and called it artificial bee colony (ABC) in the year 2005 [9]. It is derived from the intelligent search for nectar source behavior of the bee colony. The ABC optimization algorithm determines the optimal value of a variable by minimizing or maximizing a given objective function in a given search space.

There are three types of bees in the ABC algorithm:employed bees, onlooker bees, and scout bees. Employed bees indicate the number of solutions. The number of initial solutions of the ABC algorithm is N, in which each solution is D-dimensional vector. An initialization solution can be expressed as \(X_{i} = \{ x_{i,1} ,x_{i,2} , \cdots ,x_{i,D} \}\); where i = 1,2, N. The ABC algorithm optimization process includes the following steps [3]:

  1. 1)

    During initialization, population N is randomly selected, in which each solution \(X_{i} = \{ x_{i,1} ,x_{i,2} , \cdots ,x_{i,D} \}\) (i = 1,2,\(\cdots\),N) is a D-dimensional vector. The ith food source described as in Eq. (1).

    $$ x_{i,j} = x_{\min ,j} + rand(0,^{{}} 1)(x_{\max ,j} - x_{\min ,j} )_{{}}^{{}} (j = 1,2, \cdots ,D) $$
    (1)
  2. 2)

    Each employed bee useslocal information available to generate a new solution on based and then compares the fitness value of generated solution with the initial solution. Choose the better solution of the two solutions for the next iteration. Generate a new solution \(Y_{i}\) through Eq. (2).

    $$ y_{i,j}^{{}} = x_{i,j} + \Phi_{i,j} (x_{i,j} - x_{k,j} ) $$
    (2)

    In which \(k \in \{ 1,2, \cdots ,N\}\) and \(j \in \{ 1,2, \cdots ,D\}\), k is different from i. \(\Phi_{i,j}\) is a random number between -1 and 1.

  3. 3)

    Update the fitness value. Now the onlooker bees generate a new solution by Eq. (3).

    $$ P_{i} = \frac{{fit{\text{ness}}_{i} }}{{\sum\nolimits_{i = 1}^{N} {} fitness_{i} }} $$
    (3)
    $$ fit{\text{ness}}_{i} = \left\{ {\begin{array}{*{20}l} {\frac{1}{{F(X_{i} ) + 1}}\begin{array}{*{20}c} , & {f(x_{i} ) > 0} \\ \end{array} } \hfill \\ {1 + \left| {F(X_{i} )} \right|\begin{array}{*{20}c} {\begin{array}{*{20}c} , & {otherwise} \\ \end{array} } & {} \\ \end{array} } \hfill \\ \end{array} } \right. $$
    (4)

    Where \(F(X_{i} )\) represents the fitness value at \(X_{i}\). The fitness function used in this paper is defined by Eq. (17).

  4. 4)

    each onlooker bee generates a random solution and the value is between zero and one; if the value of \(P_{i}\) is bigger than the random solution in the step 2.

  5. 5)

    ABC has three main control parameters: N(number of solutions), number of onlooker or employed bees, the value of limit, and the maximal iteration number. The ABC optimization algorithm circularly executes the above steps until the best solution is received.

3 Watermarking Scheme

3.1 Watermark Embedding Process

The watermark embedding scheme proposed in this paper is shown in Fig. 1. The specific steps are as follows:

Fig. 1.
figure 1

The block diagram of the watermark embedding scheme

  1. 1)

    Firstly convert the color host image I to a YCbCr color space, which obtains components \(I_{Y} ,I_{Cb} ,I_{Cr}\). Apply Arnold chaotic map to \(I_{Y}\) to get \(\tilde{I}_{Y}\).

  2. 2)

    Convert the color watermark image W to a YCbCr color space, which obtains components \(W_{Y} ,W_{Cb} ,W_{Cr}\). Apply Arnold chaotic map to \(W_{Y}\) to get \(\tilde{W}_{Y}^{{}}\).

  3. 3)

    Perform the single level dual-tree quaternion wavelet transform on \(\tilde{I}_{Y}\) and decompose it into sixteen sub-bands, select the low-frequency amplitude sub-band \(LL_{Y}^{I}\) as the area to embed the watermark.

  4. 4)

    Apply singular value decomposition on \(LL_{Y}^{I}\) to get the \(U_{LL} ,S_{LL}\) and \(V_{LL}^{T}\) matrices.

    $$ LL_{Y}^{I} = U_{LL} S_{LL} V_{LL}^{T} $$
    (5)
  5. 5)

    Use the \(\tilde{I}_{Y}\) and \(\tilde{W}_{Y}\) obtained in the first and second steps, and then generate an adaptive embedding watermark strength factor \(\alpha\) according to the Sect. 3.3

  6. 6)

    Using the \(U_{LL}\) and \(S_{LL}\) obtained in the fourth step, calculate the principal component \(I_{PC}\) of the host image.

    $$ I_{PC} = U_{LL} \times S_{LL} $$
    (6)
  7. 7)

    Embed the watermark to modify the principal component.

    $$ I_{PC}^{^{\prime}} = I_{PC} + \alpha_{{}} \tilde{W}_{Y} $$
    (7)
  8. 8)

    Perform singular value decomposition on \(I_{PC}^{^{\prime}}\).Save \(U_{LL}^{^{\prime}} ,V_{LL}^{^{\prime}T}\) matrices, for watermark extraction scheme.

    $$ I_{PC}^{^{\prime}} = U_{LL}^{^{\prime}} \times S_{LL}^{^{\prime}} \times V_{LL}^{^{\prime}} $$
    (8)
  9. 9)

    Perform inverse SVD (ISVD) to obtain modified \(LL_{W}^{I}\). Perform the single level inverse dual-tree quaternion wavelet transform on \(LL_{W}^{I}\) sub-band with other fifteen sub-bands to obtain \(I_{Y}^{^{\prime}}\).

    $$ LL_{W}^{I} = U_{LL} \times S_{LL}^{^{\prime}} \times V_{LL}^{T} $$
    (9)
  10. 10)

    Perform the inverse Arnold chaotic transform on \(I_{Y}^{^{\prime}}\) component to get \(I_{Y}^{N}\).

  11. 11)

    Merge \(I_{Y}^{N}\)(luminance) with \(I_{Cb}\) and \(I_{Cr}\), get the image with the watermark embedded in the YCbCr color space. Convert it to RGB color space and obtain the color watermarked image M.

3.2 Extraction Process

The watermark extracting scheme proposed in this paper is shown in Fig. 2. The specific steps are as follows:

Fig. 2.
figure 2

The block diagram of the watermark extracting scheme.

  1. 1)

    Firstly convert the color watermarked image M to the YCbCr color space, which obtains components \(M_{Y} ,M_{Cb} ,M_{Cr}\).

  2. 2)

    Take \(M_{Y}\) as the area for watermark luminance information extracting. Apply Arnold chaotic map on it and obtain \(\tilde{M}_{Y}^{{}}\).

  3. 3)

    Perform the single level dual-tree quaternion wavelet transform on the \(\tilde{M}_{Y}\) and decompose it into sixteen sub-bands, select the low-frequency amplitude sub-band \(LL_{Y}^{M}\).

  4. 4)

    Apply singular value decomposition on \(LL_{Y}^{M}\).

    $$ LL_{Y}^{M} = U_{LLY}^{M} \times S_{LLY}^{M} \times V_{LLY}^{M\;\;T} $$
    (10)
  5. 5)

    Compute the extracted principal component \(E_{PC}\) using \(S_{LLY}^{M}\) generated in the forth step and \(U_{LL}^{^{\prime}} ,V_{LL}^{^{\prime}T}\).

    $$ E_{PC} = U_{LL}^{^{\prime}} \times S_{LLY}^{M} \times V_{LL}^{^{\prime}T} $$
    (11)
  6. 6)

    Compute the extracted watermark luminance component \(E_{Y}^{^{\prime}}\) using the strength factor \(\alpha\). Use the strength factor \(\alpha\) to obtain the luminance component \(E_{Y}^{^{\prime}}\) of the extracted watermark.

    $$ E_{Y}^{^{\prime}} = (E_{PC} - I_{PC} )/{\kern 1pt} {\kern 1pt} \alpha $$
    (12)
  7. 7)

    Perform the inverse Arnold chaotic transform on \(E_{Y}^{^{\prime}}\) and obtain the unscrambled watermark luminance component \(E_{Y}\).

  8. 8)

    Merge the watermarked \(E_{Y}\)(luminance) component with components \(W_{Cb}\) and \(W_{Cr}\), and convert it RGB color space, finally we get the color extracted watermark image E.

3.3 Generation of Adaptive Embedding Strength Factor

It is very important to generate the watermark embedding strength factor, because it affects the imperceptibility and robustness of the watermarking scheme. The smaller the value of the embedded watermark strength factor is, the better the invisibility of the watermark scheme and the poorer robustness. On the contrary, the bigger the value of the embedding watermark strength factor, the less visibility of the watermark scheme and the better robustness. Therefore, it is necessary to find an optimal strength factor value to achieve a balance between imperceptibility and robustness. They are defined as follows [10]:

$$ Imperceptiblity = correlation_{{}}^{{}} (H,H_{W} ) $$
(13)
$$ Robustness = correlation_{{}}^{{}} (W,W^{ * } ) $$
(14)
$$ correlation_{{}}^{{}} (X,X^{ * } ) = \frac{{\sum\limits_{i = 1}^{n} {} \sum\limits_{j = 1}^{n} {} \overline{{X_{i,j} XOR\quad X_{i,j}^{ * } }} }}{n \times n} $$
(15)

Here H denotes the luminance component \(I_{Y}\) of the host image,\(H_{W}\) denotes the luminance component \(M_{Y}\) of watermarked image, W denotes the luminance component \(W_{Y}\) of the watermark image,\(W^{ * }\) denotes the luminance component \(E_{Y}\) of the extracted watermark image, n × n is the size of the image X and XOR denotes the exclusive-OR(XOR)operation. Suppose add N type of attacks on the watermarked image M, average robustness is defined as follow:

$$ Robustness_{average} = \frac{{\sum\limits_{i = 1}^{N} {} correlation_{{}}^{{}} (W,W_{i}^{ * } )}}{N} $$
(16)
$$ Minimizef = \frac{1}{{Robustness_{average} }} - {\text{Im}} perceptibility $$
(17)

The better the robustness indicates that the extracted watermark is very similar to the original watermark. In addition, the fitness function is defined as Eq. (17). Figure 3 shows the specific process of embedding strength factors optimization. Table 1 shows the control parameters optimized by ABC.

Table 1. The value of ABC optimization.
Fig. 3.
figure 3

Block diagram of optimization process.

4 Experimental Results and Discussion

Simulation experiments are carried out on MATLAB 2016A. To verb the performance of the proposed scheme, four RGB space color host images Lena, Plane, Pepper, and Mandrill with a size of 512 \(\times\) 512 are selected from the database [55], as shown in Fig. 4. The color Shaanxi Normal University badge with a size of 256 \(\times\) 256 in the RGB space is selected as the watermark image, as shown in Fig. 4. The embedding strength factor of the watermark is generated in Sect. 4. Figure 5 shows the convergence of the fitness values of different host images. The quality metrics used here include peak signal-to-noise ratio (PSNR), mean square error (MSE), normalized correlation coefficient (NCC), and structural similarity (SSIM) index.

Fig. 4.
figure 4

Host images: (a) Lena (b) Plane (c) Pepper (d) Mandrill and watermark image: (e) Shaanxi Normal University badge.

Fig. 5.
figure 5

Fitness value vs. iterations.

4.1 Imperceptibility Results

Figure 6 shows the watermarked and extracted watermark images applying the proposed scheme. We calculated the value of PSNR, SSIM and NCC using different host images, as shown in Table 2. The Human Visual System (HVS) shows that if the PSNR value is greater than 30 dB and the SSIM value is greater than 0.9, the imperceptibility of the watermark is better. Otherwise, the average PSNR calculated between the original color host image and the color watermarked image is 47.6349 db, which is higher than 30 db, and the average SSIM value is 0.9974, which is higher than 0.9. The high PSNR and SSIM results show that the proposed method obtains a good imperceptibility.

Table 2. Imperceptibility results without attack.
Fig. 6.
figure 6

Obtained watermarked images: (a) Lena (b) Plane (c) Pepper (d) Mandrill and extracted watermark images: (e) (f) (g) (h)

4.2 Robustness Results

The visual result of the robustness of the image with Lena as the host, Fig. 7 shows the image obtained after adding an attack to an image embedded with a watermark. The image attacks are additive noise, filtering, rotation, cropping, blurring, and histogram equalization. Figure 7 shows the corresponding watermark images extracted from the attacked images. Table 3 shows the calculated NCC values under different image attacks. This watermarking scheme has achieved remarkable robustness results under many common signal processing attacks, especially geometric distortion.

Table 3. The NCC value of extracted watermark using Lena as the host image
Fig. 7.
figure 7

The attacked watermarked image (Lena) and extracted watermark under attacks (a) Gaussian noise (b) Median filter (c) Sharpening (d) Rotation (e) Cut (f) Histogram Equalization

4.3 Comparative Analysis

Sharma et al. [3] put forward a new color image watermarking scheme based on RDWT-SVD and ABC algorithm. S. Han et al. [7] proposed a color image watermarking algorithm based on QWT-DCT, and the embedded watermark strength factor is a fixed constant. The proposed watermarking scheme is compared with the above two schemes, and the NCC values of each scheme under different image attacks are calculated. The results are shown in Table 4. Compared with the optimized and unoptimized color watermarking schemes, the robustness in this paper is significantly better.

Table 4. The comparative analysis

5 Conclusion

In this paper, we propose a novel color image watermarking scheme based on DTQWT-SVD and ABC optimization. The color host image is converted to YCbCr space, use the ABC optimization to generate the embedding watermark strength factor, and then modify the principal component of the host image to insert the watermark. Experimental results show that the proposed scheme has strong robustness under common attacks and geometric attacks. Compared with the adaptive watermarking scheme based on RDWT [3] and the color image watermarking scheme based on QWT [7], the scheme in this paper has better robustness.