4
Improved Reversible Data Hiding Based on Residue Histogram Shifting Wen-Chuan Wu Dept. of Computer Science and Information Engineering, Aletheia University Taipei 25103, Taiwan, R.O.C. E-mail: [email protected] Yu-Chieh Wu Dept. of Computer Science and Information Engineering, Aletheia University Taipei 25103, Taiwan, R.O.C. E-mail: [email protected] Abstract—This paper proposes an improved reversible data hiding method for grayscale images. Specifically, this method integrates the superiority of two existing schemes to improve secret data capacity. The main idea of this method is to classify image blocks into smooth or complex ones and then to implement disparate reversible data hiding schemes on them. In data embedding process, our hybrid method uses difference expansion transform and residue histogram shifting to carry secret data adaptively without any distortions. Experimental results show that the proposed method improves the problem of low capacity for complex image from 0.02 to 0.39 bpp. At the same time, it indeed provides a good image quality of PSNR in comparisons with previous methods. Keywords-reversible hiding; difference expansion transform; histogram shifting; residue number system I. INTRODUCTION Data hiding is an information security technology used to protect and camouflage secret data [4]. Its main concept is to embed secret data into an unimportant cover media, so that the data cannot be perceptible. Take an image as an example. The one embedded with secrets is called stego-image, which is required to possess high quality. As a result, it will not cause the suspicion during transmission of the stego-image so as to achieve the purpose of data protection. Therefore, compared with the conventional encryption, data hiding is more capable of escaping from detection and destruction. Nowadays, there are various literatures and studies related to data hiding [1-3,5-9,11], which consists of two branches, namely, irreversible data hiding and reversible data hiding. Irreversible data hiding can extract secret data only but cannot restore the content of carrier that has been destroyed. Generally, this branch provides very high hiding capacity [2]. On the contrary, reversible data hiding [1,3-11] have the advantages of restoring completely without any distortion and extracting secret data validly. This property is quite useful for some applications, such as in medical, military, law and satellite professional fields. A good hiding technique must meet three features of imperceptibility, capacity and security [2]. Besides these, reversible data hiding techniques should be also provided with reversibility. Most of available reversible data hiding schemes can be developed based on difference expansion [1,8,9] and histogram shifting [3,5-7,11]. The idea of reversible hiding was firstly proposed by Barton in 1997. Due to the limited data capacity, more and more researchers take advantage of image features to develop efficient reversible hiding methods [1,3,5-9,11]. In 2003, Tian put forth a reversible hiding method by using difference expansion [8]. Its principle is to vacate a space to embed a secret bit through expansion transform. Thodi and Rodriguez [9] utilized the prediction error, instead of difference values, for expansion embedding. In addition, Chang and Lu [1] took local correlation of larger neighborhood into account. Usually, these schemes based on difference expansion offer high embedding capacity, but the image quality would be destroyed strongly. Another well-known reversible data hiding technique is histogram shifting of Ni et al. [7]. It produces a histogram of pixel distribution, and then embeds secret data by shifting the histogram. Although this method achieves quite good image quality, data capacity is restricted by the statistics of histogram peak. In order to overcome this issue, Fallahpour and Sedaaghi [3] exploited image blocks to create more histograms. The literatures [5,6] both raised the amount of peak value by using the difference between adjacent pixels. Moreover, Zhao et al. [11] addressed a multilevel histogram modification mechanism to increase the data capacity. Overall speaking, methods based on difference expansion are unsuitable for complex images even although these have high hiding capacity. On the other hand, methods based on histogram shifting could provide good quality but limited capacity. Therefore, we combine the advantages of these two kinds of techniques to propose a hybrid reversible data hiding method. Our method considers about block types so as to conquer the problem of low capacity in the complex image. The rest of this paper is organized as follows. Section 2 introduces the histogram shifting method [7] and the difference expansion method [8]. Section 3 describes the proposed data hiding method in detail how an improvement in the hybrid method can enhance the embedding capacity. Section 4 shows some experimental results and conclusions are finally summarized in Section 5. II. RELATED WORKS A. Histogram Shifting In 2006, Ni et al. proposed the histogram shifting method [7] by adopting a statistical way to achieve the target of reversible hiding. Take the grey-scale image as an example. First is to count the amount of pixel values happened in the cover image and expresses them in a histogram as shown in Fig. 1, where the pixel values range from 0 to 255. The value 2012 Sixth International Conference on Genetic and Evolutionary Computing 978-0-7695-4763-3/12 $26.00 © 2012 IEEE DOI 10.1109/ICGEC.2012.104 23 2012 Sixth International Conference on Genetic and Evolutionary Computing 978-0-7695-4763-3/12 $26.00 © 2012 IEEE DOI 10.1109/ICGEC.2012.104 23 2012 Sixth International Conference on Genetic and Evolutionary Computing 978-0-7695-4763-3/12 $26.00 © 2012 IEEE DOI 10.1109/ICGEC.2012.104 23

[IEEE 2012 Sixth International Conference on Genetic and Evolutionary Computing (ICGEC) - Kitakyushu, Japan (2012.08.25-2012.08.28)] 2012 Sixth International Conference on Genetic

Embed Size (px)

Citation preview

Page 1: [IEEE 2012 Sixth International Conference on Genetic and Evolutionary Computing (ICGEC) - Kitakyushu, Japan (2012.08.25-2012.08.28)] 2012 Sixth International Conference on Genetic

Improved Reversible Data Hiding Based on Residue Histogram Shifting

Wen-Chuan Wu Dept. of Computer Science and Information

Engineering, Aletheia University Taipei 25103, Taiwan, R.O.C.

E-mail: [email protected]

Yu-Chieh Wu Dept. of Computer Science and Information

Engineering, Aletheia University Taipei 25103, Taiwan, R.O.C.

E-mail: [email protected]

Abstract—This paper proposes an improved reversible data hiding method for grayscale images. Specifically, this method integrates the superiority of two existing schemes to improve secret data capacity. The main idea of this method is to classify image blocks into smooth or complex ones and then to implement disparate reversible data hiding schemes on them. In data embedding process, our hybrid method uses difference expansion transform and residue histogram shifting to carry secret data adaptively without any distortions. Experimental results show that the proposed method improves the problem of low capacity for complex image from 0.02 to 0.39 bpp. At the same time, it indeed provides a good image quality of PSNR in comparisons with previous methods.

Keywords-reversible hiding; difference expansion transform; histogram shifting; residue number system

I. INTRODUCTION Data hiding is an information security technology used to

protect and camouflage secret data [4]. Its main concept is to embed secret data into an unimportant cover media, so that the data cannot be perceptible. Take an image as an example. The one embedded with secrets is called stego-image, which is required to possess high quality. As a result, it will not cause the suspicion during transmission of the stego-image so as to achieve the purpose of data protection. Therefore, compared with the conventional encryption, data hiding is more capable of escaping from detection and destruction. Nowadays, there are various literatures and studies related to data hiding [1-3,5-9,11], which consists of two branches, namely, irreversible data hiding and reversible data hiding.

Irreversible data hiding can extract secret data only but cannot restore the content of carrier that has been destroyed. Generally, this branch provides very high hiding capacity [2]. On the contrary, reversible data hiding [1,3-11] have the advantages of restoring completely without any distortion and extracting secret data validly. This property is quite useful for some applications, such as in medical, military, law and satellite professional fields. A good hiding technique must meet three features of imperceptibility, capacity and security [2]. Besides these, reversible data hiding techniques should be also provided with reversibility.

Most of available reversible data hiding schemes can be developed based on difference expansion [1,8,9] and histogram shifting [3,5-7,11]. The idea of reversible hiding was firstly proposed by Barton in 1997. Due to the limited data capacity, more and more researchers take advantage of

image features to develop efficient reversible hiding methods [1,3,5-9,11]. In 2003, Tian put forth a reversible hiding method by using difference expansion [8]. Its principle is to vacate a space to embed a secret bit through expansion transform. Thodi and Rodriguez [9] utilized the prediction error, instead of difference values, for expansion embedding. In addition, Chang and Lu [1] took local correlation of larger neighborhood into account. Usually, these schemes based on difference expansion offer high embedding capacity, but the image quality would be destroyed strongly.

Another well-known reversible data hiding technique is histogram shifting of Ni et al. [7]. It produces a histogram of pixel distribution, and then embeds secret data by shifting the histogram. Although this method achieves quite good image quality, data capacity is restricted by the statistics of histogram peak. In order to overcome this issue, Fallahpour and Sedaaghi [3] exploited image blocks to create more histograms. The literatures [5,6] both raised the amount of peak value by using the difference between adjacent pixels. Moreover, Zhao et al. [11] addressed a multilevel histogram modification mechanism to increase the data capacity.

Overall speaking, methods based on difference expansion are unsuitable for complex images even although these have high hiding capacity. On the other hand, methods based on histogram shifting could provide good quality but limited capacity. Therefore, we combine the advantages of these two kinds of techniques to propose a hybrid reversible data hiding method. Our method considers about block types so as to conquer the problem of low capacity in the complex image. The rest of this paper is organized as follows. Section 2 introduces the histogram shifting method [7] and the difference expansion method [8]. Section 3 describes the proposed data hiding method in detail how an improvement in the hybrid method can enhance the embedding capacity. Section 4 shows some experimental results and conclusions are finally summarized in Section 5.

II. RELATED WORKS

A. Histogram Shifting In 2006, Ni et al. proposed the histogram shifting method

[7] by adopting a statistical way to achieve the target of reversible hiding. Take the grey-scale image as an example. First is to count the amount of pixel values happened in the cover image and expresses them in a histogram as shown in Fig. 1, where the pixel values range from 0 to 255. The value

2012 Sixth International Conference on Genetic and Evolutionary Computing

978-0-7695-4763-3/12 $26.00 © 2012 IEEE

DOI 10.1109/ICGEC.2012.104

23

2012 Sixth International Conference on Genetic and Evolutionary Computing

978-0-7695-4763-3/12 $26.00 © 2012 IEEE

DOI 10.1109/ICGEC.2012.104

23

2012 Sixth International Conference on Genetic and Evolutionary Computing

978-0-7695-4763-3/12 $26.00 © 2012 IEEE

DOI 10.1109/ICGEC.2012.104

23

Page 2: [IEEE 2012 Sixth International Conference on Genetic and Evolutionary Computing (ICGEC) - Kitakyushu, Japan (2012.08.25-2012.08.28)] 2012 Sixth International Conference on Genetic

with the maximum statistics is called peak point P while the value with the minimum statistics is called zero point Z. Next, it vacates a space aside P by shifting the bins between P and Z. When P Z, pixels of [P 1, Z 1] will be shifted left and the position of P 1 will be vacated. Otherwise, pixels of [P 1, Z 1] will be shifted right and the position of P1 will be reserved when P Z. These spaces left after shifting are used to hide secret data. According to the hiding bit 0 or 1, the pixel value of P will be modified as P 1 or P

1 as shown in Fig. 1. The pixels are modified so slightly, hence the stego-image hidden data still looks almost like the cover image. But, the capacity of this method is restricted by the amount of the peak point in the histogram.

Figure 1. Principle of histogram shifting technique.

B. Difference Expansion The reversible hiding technique [8] proposed by Tian is

called difference expansion, which treats two neighboring pixels as a pair and all pairs are non-overlapping. By using the difference of pixel pairs, it hides the secret data into the expanded difference. Assume that (X, Y) is a pixel pair and s�{0,1} is the binary secret data. First is to calculate the difference d and the mean value m between X and Y by using the equation (1). After that, compute the new difference d' by using equation (2). Finally, apply d' and m to get two new pixel values X' and Y'. Fig. 2 displays the illustration of the difference expansion. Since the expansion of equation (2) is reversible, the receiver can still obtain the original difference d after extracting the least significant bit s of d'. Further, the original pixel values of X and Y can be restored by using the invariant mean value m and the original difference d, as shown in equation (4) and (5). It can be observed from Fig. 2 that when the difference between two pixels is too large, the expansion operation will possibly cause the problems of degraded image quality, value overflow or value underflow.

d X Y, m � �2/)( YX + (1) d' 2 d s (2) X' m � �2/)1( +′d , Y' m � �2/d ′ (3) d � �2/d ′ (4) X m � �2/)1( +d , Y m � �2/d (5)

Figure 2. Conception of difference expansion technique.

III. THE PROPOSED SCHEME Residue Number System (RNS) applied to develop a

reversible hiding technique is the earliest in [10]. It mainly uses the character of restriction and concentration in the residue. This way will increase the statistical value of the bin in peak point, and further enlarge the data capacity. Let two integers be a and b. We can get integers q and r to satisfy the equation of a b q r. In Mathematics, a is called dividend, b is called divisor, q is called quotient and r is called remainder. Clearly, r is within the range of 0 r b. Hence, the residue histogram is provided with concentration and restriction. This way not only improves the capacity of Ni et al.’s scheme [7] but keeps good image quality.

Recently, available reversible data hiding schemes almost hide secrets by using a single embedding way or multilevel mechanism. The uniqueness of ecah image block is not taken into account. In this paper, we propose a hybrid reversible hiding method, which combines the advantages of histogram shifting and difference expansion. It can adaptively adopt distinct embedding means in accordance with block contents. First of all, our proposed method uses the standard deviation of statistics to determine whether an image block is smooth or not. If smooth, we will apply the difference expansion operation to this block. Due to the expansion, this hiding way is thus applicable to the smooth blocks. If complex, we will apply the residue histogram shifting to this block. The higher the peak value is, the more data it can embed. The detailed and complete embedding steps are listed as below: Secret Data Embedding Algorithm Step 1: Partition a H×W cover image into N non-overlapping blocks Bk, where each block is composed of n × n pixels. Step 2: Calculate mean value and standard deviation of each block Bk by using equations (6) and (7).

nnWHkjiB

nB

n

jikk

××≤≤= �

==

1,),(11;1

2 (6)

( )nnWHkBjiB

n

n

jikkBk ×

×≤≤−= �==

1,),(1 2

1;12σ (7)

Step 3: Determine the type of each block by a predefined threshold TH. When the standard deviation is larger than TH, it indicates that the block belongs to a complex type and goes through steps 4 to 6. Otherwise, it belongs to a smooth type and goes through steps 7 to 9. Step 4: (complex type) Divide pixel values by a divisor bk to get the residues, as shown in equation (8), where divisors of N blocks are generated randomly. Next, count these residues and output the corresponding histogram. Let peak point and zero point of the histogram be P and Z, respectively.

Rk(i, j) Bk(i, j) Mod bk (8) Step 5: Shift the residue histogram according to the relation of P and Z so as to embed secrets as instructed in [12]: (1) When P Z, histogram bins between [P 1, Z 1] will

be shifted left one unit, that is to say the values within this range will be subtracted by 1. If a secret bit is 1, the original residue P will be changed to P 1. Otherwise, the residue P will still remain unchanged if a secret bit is 0.

242424

Page 3: [IEEE 2012 Sixth International Conference on Genetic and Evolutionary Computing (ICGEC) - Kitakyushu, Japan (2012.08.25-2012.08.28)] 2012 Sixth International Conference on Genetic

(2) When P Z, histogram bins between [P 1, Z 1] will be shifted right one unit, that is to say the values within this range will be added by 1. If a secret bit is 1, the original residue P will be changed to P 1. Otherwise, the residue P will still remain unchanged if a secret bit is 0.

Step 6: Calculate new values by using the modified residues, such as B'k(i, j) Q(i, j) ×bk R'k(i, j) to get the stego-block. Step 7: (smooth type) Each two neighboring values in the block will be treated as a pixel pair. And, calculate difference d and mean value m of a pixel pair, as shown in equation (9).

d | Bk(i, j) Bk(i 1, j)|, m � �2/),1(),( jiBjiB kk +− (9)

Step 8: Expand the difference by two times and embed a bit in the last significant bit as present in the equation (2) above. Step 9: Calculate the new pixel values of the stego-block by using the original mean value m and the difference d'.

B'k(i, j) m � �2/)1( +′d , B'k(i 1, j) m � �2/d ′ (10)

After the secret data embedding steps as illustrated above, our method will output a new stego-image, which looks like the cover image without any noticeable distortion. Thus, it meets the requirements of security and imperceptibility. When the receiver acquires this stego-image, he needs to extract the secrets by using the information of block type. For this reason, these must be compressed in advance and sent to the receiver securely together with the random key. The following is the algorithm of data extraction and image restoration. After all these steps are conducted, the receiver will get secret data and restore the original image completely. Data Extraction and Restoration Algorithm Step 1: Partition stego-image into N non-overlapping blocks B'k, each of which is composed of n × n pixels. Step 2: Determine whether an image block is smooth or not based on the type information. If smooth, it will go through steps 3 to 5. Else, it will go through steps 6 to 8. Step 3: (smooth type) Partition each two neighboring pixels into a pair and compute difference and mean value by using equation (11).

d' | B'k(i, j) B'k(i 1, j)|, m � �2/),1(),( jiBjiB kk +′−′ (11)

Step 4: Extract 1-LSB of d', where the bit is just the secret. Step 5: Compute original difference d and pixels as follow.

d � �2/d ′ , Bk(i, j) m � �2/)1( +d , Bk(i 1, j) m � �2/d (12)

Step 6: (complex type) Compute residue R'k(i, j) by using the prior divisor, and then output the corresponding residue histogram. Step 7: Extract the secrets and restore the original pixels by using peak point P and zero point Z in the image block. (1) P Z: if the value of R'k(i, j) is P 1, it indicates that the

secret bit is 1 and the value needs to be modified as P. Otherwise, it indicates the secret bit is 0 and the value will remain unchanged.

(2) P Z: if the value of R'k(i, j) is P 1, it indicates that the secret bit is 1 and the value needs to be modified as P. Otherwise, it indicates the secret bit is 0 and the value will remain unchanged.

Step 8: After extracting, shift histogram bins within [P 2, Z] right one unit if P Z. Otherwise, shift bins within [P 2, Z] left one unit.

IV. EXPERIMENTAL RESULTS This section will describe some experimental results to

demonstrate the performance of our proposed data hiding method with reversibility. Here, we use five 512 512 standard gray-level images. To begin with, we generate a pseudo random stream of bits as secret data and adopt the PSNR standard to evaluate the quality of stego-images. Fig. 3 shows average results of proposed method in terms of data capacity and image quality under different thresholds TH. Obviously, data capacity will be improved with the increase of threshold, but image quality will become degraded. The reason is that the larger the threshold was, the less the number of complex blocks but the more the number of smooth blocks will be. In other words, there are more blocks adopted the difference expansion. Even though the distortion is produced, the PSNR value is totally over 30 dB which is generally imperceptible to human eye.

Table I reveals a comparison between the results of the proposed method and other histogram-based works. In which, the block size is 6 6 in our scheme. It can be seen that our method is apparently better than the traditional histogram shifting method [7] and the method [10] in terms of data capacity. Furthermore, its payload is slightly superior to the method [5] when threshold value is set over 7. In addition, the proposed method improves the problem of low capacity for complex image ‘Baboon’ substantially from 0.02 to 0.39 bpp. More discussions on stego-image quality are displayed in Figs. 4 and 5. Here, we take images ‘Lena’ and ‘Baboon’ as the example of smooth and complex ones, respectively. From the local result of two figures, we also observed that the complex image is suitable to use a larger threshold value than the smooth image. When we uses the value of TH = 15 in the proposed method, an obvious distortion is appeared in Figure 5(d). In brief, the proposed method can adjust the threshold adaptively according to the input image.

Figure 3. Results of proposed method under different thresholds TH.

252525

Page 4: [IEEE 2012 Sixth International Conference on Genetic and Evolutionary Computing (ICGEC) - Kitakyushu, Japan (2012.08.25-2012.08.28)] 2012 Sixth International Conference on Genetic

V. CONCLUSIONS In this paper, an improved reversible data hiding method

based on residue number system of integer is proposed. First, it is to classify image blocks into smooth or complex ones. Next, a hybrid way combining histogram shifting with difference expansion is employed for data embedding. The residue histogram shifting is used for complex blocks while the difference expansion is used for smooth blocks. On the one hand, our method provides an acceptable quality for a stego-image. One the other hand, a higher data capacity, especially for complex images, is provided compared with previous histogram-based works.

ACKNOWLEDGMENT This work was supported by National Science Council,

Taiwan, Republic of China, under the Grant NSC 100-2221-E-156-005 and NSC 99-2632-H-156-001-MY3.

REFERENCES [1] C.C. Chang and T.C. Lu, “A difference expansion oriented data

hiding scheme for restoring the original host images,” Journal of Systems and Software, Vol. 79, No. 12, pp. 1754-1766, 2006.

[2] C.C. Chang, W.C. Wu, and Y.H. Chen, “Joint coding and embedding techniques for multimedia images,” Information Sciences, Vol. 178, No. 18, pp. 3543-3556, 2008.

[3] M. Fallahpour and M.H. Sedaaghi, “High capacity lossless data hiding based on histogram modification,” IEICE Electronics Express, Vol. 4, No. 7, pp. 205-210, 2007.

[4] C.F. Lee and Y.L. Huang, “An efficient image interpolation increasing payload in reversible data hiding,” Expert Systems with Application, Vol. 39, No. 8, pp. 6712-6719, 2012.

[5] C.C. Lin, W.L. Tai, and C.C. Chang, “Multilevel reversible data hiding based on histogram modification of difference images,” Pattern Recognition, Vol. 41, No. 12, pp. 3582-3591, 2008.

[6] Y.C. Li, C.M. Yeh, and C.C. Chang, “Data hiding based on the similarity between neighboring pixels with reversibility,” Digital Signal Processing, Vol. 20, No. 4, pp. 1116-1128, 2010.

[7] Z. Ni, Y.Q. Shi, N. Ansari, and W. Su, “Reversible data hiding,” IEEE Transactions on Circuits and Systems for Video Technology, Vol. 16, No. 3, pp. 354-362, 2006

[8] J. Tian, “Reversible data embedding using a difference expansion,” IEEE Transactions on Circuits and Systems for Video Technology, Vol. 13, No. 8, pp. 890-896, 2003.

[9] D.M. Thodi and J.J. Rodrigues, “Reversible watermarking by prediction-error expansion,” Proceedings of the 6th IEEE Southwest Symposium Image Analysis and Interpretation, Nevada USA, Vol. 3, pp. 21-25, 2004.

[10] W.C. Wu and Y.C. Wu, “Histogram-based reversible data hiding using RNS of integer,” Communications of the Chinese Cryptology and Information Security Association, Vol. 18, No. 1, pp. 59-68, 2012.

[11] Z. Zhao, H. Luo, Z.M. Lu, and J.S. Pan, “Reversible data hiding based on multilevel histogram modification and sequential recovery,” International Journal of Electronics and Communications, Vol. 65, No. 10, pp. 814-826, 2011.

TABLE I. COMPARISONS OF CAPACITY AND AVERAGE PSNR AMONG DIFFERENT METHODS

Images Capacity Proposed Method (n 6) Method

[10] Method [5] (Level: 2)

Method [7] TH 3 TH 7 TH 11 TH 15

Lena bits 99,580 112,540 117,807 121,065 85,277 115,932 5,460 bpp 0.38 0.43 0.45 0.46 0.33 0.44 0.02

Baboon bits 84,673 91,192 97,789 102,657 84,125 70,730 5,421 bpp 0.32 0.35 0.37 0.39 0.32 0.27 0.02

Boat bits 102,064 107,542 112,417 116,946 104,253 101,896 7,301 bpp 0.39 0.41 0.43 0.45 0.40 0.39 0.03

Jet bits 106,265 113,844 117,749 120,462 91,559 123,660 59,979 bpp 0.41 0.43 0.45 0.46 0.35 0.47 0.23

Pepper bits 98,736 114,000 120,277 122,116 91,643 110,929 5,172 bpp 0.38 0.44 0.46 0.47 0.35 0.42 0.02

Average Cap. 0.38 0.41 0.43 0.45 0.35 0.40 0.06 Average PSNR(dB) 46.71 39.46 35.37 33.82 52.77 43.2 48.33

(a) Original image (b) PSNR=47.14 dB, Capacity=0.33 bpp when TH = 5 (a) Original image (b) PSNR=40.89 dB,

Capacity=0.41 bpp when TH = 5

(c) PSNR=37.67 dB, Capacity=0.37 bpp when TH = 10

(d) PSNR=33.41 dB, Capacity=0.39 bpp when TH = 15 (c) PSNR=36.48 dB,

Capacity=0.45 bpp when TH =10 (d) PSNR=34.07 dB,

Capacity=0.46 bpp when TH = 15 Figure 4. Local results in ‘Baboon’ image. Figure 5. Local results in ‘Lena’ image.

262626