Histogram Modification and Wavelet Transform for High Performance Watermarking

This paper proposes a reversible watermarking technique for natural images. According to the similarity of neighbor coefficients’ values in wavelet domain, most differences between two adjacent pixels are close to zero. The histogram is built based on these difference statistics. As more peak points can be used for secret data hiding, the hiding capacity is improved compared with those conventional methods. Moreover, as the differences concentricity around zero is improved, the transparency of the host image can be increased. Experimental results and comparison show that the proposed method has both advantages in hiding capacity and transparency.


Introduction
Digital watermarking is a technique to embed imperceptible, important data called watermark into the host image for the purpose of copyright protection, integrity check, and/or access control 1-9 .However, it might cause the distortion problem regarding the recovery of the original host image.In order to protect the host image from being distorted, a reversible watermarking technique has been reported in the literature.The reversible watermarking technique does not only hide the secret data but also the host image that can be exactly reconstructed in a decoder.Therefore, it can be used in those applications where the host images, such as medical images, military maps, and remote sensing images, must be completely recovered 10-14 .

Histogram Modification for Reversible Watermarking
Zhao et al. proposed a reversible data hiding based on histogram modification in 19 .In this scheme, the inverse "S" order is adopted to scan the image pixels for difference generation.The integer parameter called embedding level EL EL ≥ 0 controls the hiding capacity and transparency of the marked image.A higher EL indicates that more watermark can be embedded but leads more distortion to a watermarked image.
The data embedding process of EL 0 is as follows, and the histogram modification strategy is shown in Figure 1.First, the image is inverse "S" scanned and the difference histogram is constructed.Next, the histogram shifting is performed.The secret bit "1" can be hidden by changing the difference of the pixel value from 0 to 1, and the "0" is hidden by keeping the difference of the pixel value not changed.Each marked pixel can be produced by its left neighbor subtracting the modified difference.Finally, rearrange these marked pixels to produce the watermarked image.
The process of data extraction and image recovery is as follows.The watermarked image is also inverse "S" scanned into a sequence first.As the first pixel value is not changed during embedding, we have the first pixel value.Second, the difference of the first pixel value and second pixel value can be obtained.If the difference is 0, one bit watermark "0" is extracted.If the difference is 1, one bit watermark "1" is extracted and the original difference is 0. Thus the original pixel associated with the difference can be obtained.If the difference is larger than 1, subtract 1 from the difference and recover the original pixel.Repeat these operations for the remained watermarked sequence and all the host pixels are recovered.Finally, rearrange these recovered pixels to produce the original host image.
The embedding capacity is determined by two factors, the embedding level and the number of histogram bins around 0. As mentioned before, a higher EL indicates that more watermark can be embedded, but leads more distortion to a watermarked image.However, with a better pixel scan path can provide a higher capacity with the embedding level not changing.Thus, we proposed an appropriate method to reach a higher capacity with embedding level EL 0.

The Proposed Method
In this section, we proposed a novel reversible data hiding based on histogram modification and discrete wavelet transform.According to the similarity of neighbor coefficients' values in wavelet domain, most differences between two adjacent pixels are close to zero.The histogram is built based on these difference statistics.As more peak points can be used for secret data hiding, the hiding capacity is improved compared with those conventional methods.

Discrete Wavelet Transform
Discrete wavelet transform DWT provides an efficient multiresolution analysis for signals, specifically, any finite energy signal f x can be written by where denotes the resolution index with larger values meaning coarser resolutions, n is the translation index, ψ x is a mother wavelet, φ x is the corresponding scaling function, is the scaling coefficient representing the approximation information of f x at the coarsest resolution 2 J , and D n is the wavelet coefficient representing the detail information of f x at resolution 2 .Coefficients S n and D n can be obtained from the scaling coefficient S −1 n at the next finer resolution 2 −1 by using 1-level DWT, which is given by and •, • denote the inner product.It is noted that h n and g n are the corresponding low-pass filter and high-pass filter, respectively.Moreover, S −1 n can be reconstructed from S n and D n by using the inverse DWT, which is given by where h n h −n and g n g −n .For image applications, 2D DWT can be obtained by using the tensor product of 1D DWT.Among wavelets, Haar's wavelet is the simplest one, which has been widely used for many applications.The low-pass filter and high-pass filter of Haar's wavelet are as follows h 0 0.5; h 1 0.5, g 0 0.5; g 1 −0.5.

3.4
Figures 2 and 3 show the row decomposition and the column decomposition using Haar's wavelet, respectively.Notice that the column decomposition may follow the row decomposition, or vice versa, in 2D DWT.As a result, 2D DWT with Haar's wavelet is as follows:

3.5
where A, B, C, and D are pixels values, and LL, LH, HL, and HH denote the approximation, detail information in the horizontal, and vertical and diagonal orientations, respectively, of the input image.Figure 4 shows 1-level, 2D DWT using Haar's wavelet.Column decomposition The LL subband of an image can be further decomposed into four subbands: LLLL, LLLH, LLHL, and LLHH at the next coarser resolution, which together with LH, HL, and HH forms the 2-level DWT of the input image.Thus, higher level DWT can be obtained by decomposing the approximation subband in the recursive manner.

3.6
Then shift the histogram bins which are larger than 1 rightward one level as Examine d i 0 2 ≤ i ≤ M × N/16 one by one.Each difference less than 1 can be used to hide one secret bit pixels with green color in Figure 5 f of the difference sequence d i .If the corresponding watermark bit w 0, it is not changed pixels with blue color in Figure 5 f of the difference sequence d i .And if w 1, add the difference by 1 pixels with red color in Figure 5 f of the difference sequence d i .The operation is as

3.8
and generate watermarked pixel sequence p i by this operation:

3.9
Rearrange p i and the first 2-level watermarked subband is obtained.Repeat these operations for the remained subbands.
Pick the 2-level watermarked subbands LLLL , LLLH , LLHL , and LLHH and perform the 2D inverse DWT to get the 1-level watermarked subband LL .Repeat this operation for the remained 2-level watermarked subbands to get the 1-level watermarked subbands LH , HL , and HH .Finally, perform the 2D inverse DWT to get the watermarked image I .
The data extraction and image recovery is the inverse process of data embedding, and the process is as follows.
The proposed data embedding principle: a the original host image b decomposes into sixteen subbands, c generates the random sequence of the subbands, d selects the random starting location and direction of each subbands e An example of embedding watermark into pixel sequence; f rearranged watermarked subbands; g the watermarked image.
HHHL , and HHHH .Second, get the subband sequence of the watermark, starting location, and scanning direction of each watermarked subbands.Third, scan the first watermarked subband into watermarked pixel sequence p 1 , p 2 , . . ., p M×N/16 .Then recover the original pixel sequence based on the following:

3.10
Figure 6 shows an example of secret data extracting and original pixel sequence recovering.
Rearrange the original pixel sequence and the original 2-level subband can be recovered.Repeat those operations until all 2-level subbands are recovered and perform 2D inverse DWT to get the 1-level subbands.Finally, perform 2D inverse DWT again and the original host image can be obtained.
The secret data is extracted as Rearrange these extracted bits and the original watermark can be obtained.

Experimental Results
Figure 7 shows our test images, six 256 × 256 with 256 gray levels are selected as test images; they are Lena, Baboon, Barbara, Boat, Board, and Peppers.13.Note that all of the bits of the watermarks embedded inside are "1" which leads to a maximum distortion.All these results demonstrate not only the capacities but also the PSNRs in our method which are improved.
In other words, even though more secret data embedded in our scheme and leads more distortion, the marked images quality is still better.Figures 8,9,10,11,12,and 13.Note that all of the bits of the watermarks embedded inside are "1" which leads to a maximum distortion.All these results demonstrate that not only the capacities but also the PSNRs in our method are improved.In other words, even though more secret data embedded in our scheme and leads more distortion, the marked images quality is still better.

Conclusion
In this paper, a reversible watermarking based on the histogram modification has been proposed.The transparency of the watermarked image can be increased by taking advantage of the proposed watermarking.As the host image can be exactly reconstructed, it is suitable especially for medical images, military maps, and remote sensing images.The proposed reversible watermarking based on multilevel histogram modification and discrete wavelet transform is preferable and provides a higher capacity and higher transparency compared with other histogram modification based methods.

Figure 1 :
Figure 1: The histogram modification strategy: a the original histogram and b the histogram shifting: shift bins larger than 0 rightward orange bins .c Secret data embedding: embed secret data "0" by keeping the difference of the pixel value not changed blue bin and embed secret data "1" by changing the difference of the pixel value from 0 to 1 red bin .d The modified histogram.

Figure 2 :
Figure 2: The row decomposition using Haar's wavelet A, B, C, and D are pixels values .

Figure 3 :
Figure 3: The column decomposition using Haar's wavelet E, F, G, and Hare pixel values .

Figure 5
Figure 5 shows the proposed embedding process; the details are described below.First, decompose the host M × N image I via 2D DWT into four 1-level subbands: LL, LH, HL, and HH.Then decompose these 1-level subbands again into sixteen 2-level subbands: LLLL, LLLH, LLHL, LLHH, LHLL, LHLH, LHHL, LHHH, HLLL, HLLH, HLHL, HLHH, HHLL, HHLH, HHHL, and HHHH, as shown in Figures 5 a and 5 b .Second, generate a random sequence for these subbands.Third, select a random starting location in the first subbands.Fourth, pick a random scanning direction and scan the first subband into pixel sequence p 1 , p 2 , . . ., p M×N/16 .Next, compute the difference d i 1 ≤ i ≤ M × N/16 according to 3.6 and construct a histogram based on d i 2 ≤ i ≤ M × N/16

B + C + D 4 A − B + C − D 4 A + B − C − D 4 A − B − C + D 4 Figure 4 :
Figure 4: 1-level 2D DWT using Haar's wavelet A, B, C, and D are pixel values .

Figure 6 :Figure 7 :
Figure 6: An example of secret data extracting and original pixel sequence recovering.
Table 1 lists the average capacity

Table 1 :
Performance comparison of Zhao et al.'s method and the proposed method.per pixel and PSNR db values of the proposed scheme.The peak signal to noise ratio PSNR is used to evaluate the image quality 27 , which is defined as where MSE denotes the mean square error.The six watermarked images obtained by our scheme and Zhao et al.'s method are shown in bit