The Journal of Systems and Software 82 (2009) 1966–1973
Contents lists available at ScienceDirect
The Journal of Systems and Software journal homepage: www.elsevier.com/locate/jss
A high capacity reversible data hiding scheme with edge prediction and difference expansion Hsien-Chu Wu a, Chih-Chiang Lee b, Chwei-Shyong Tsai c,*, Yen-Ping Chu d, Hung-Ruei Chen c a
Department of Computer Science and Information Engineering, National Taichung Institute of Technology, 129, Section 3, San Min Road, Taichung City, Taiwan, ROC Department of Computer Science and Engineering, National Chung Hsing University, 250, Kuo Kuang Road, Taichung City, Taiwan, ROC c Department of Management Information Systems, National Chung Hsing University, 250, Kuo Kuang Road, 402 Taichung, Taiwan, ROC d Department of Computer Science and Information Engineering, Tunghai University, 181, Section 3, Taichung Port Road, Situn District, Taichung City, Taiwan, ROC b
a r t i c l e
i n f o
Article history: Received 8 August 2007 Received in revised form 24 April 2009 Accepted 23 June 2009 Available online 15 August 2009 Keywords: Difference expansion Digital watermarking Edge prediction Reversible data hiding Steganography
a b s t r a c t To enhance the embedding capacity of a reversible data hiding system, in this paper, a novel multiplebase lossless scheme based on JPEG-LS pixel value prediction and reversible difference expansion will be presented. The proposed scheme employs a pixel value prediction mechanism to decrease the distortion caused by the hiding of the secret data. In general, the prediction error value tends to be much smaller in smooth areas than in edge areas, and more secret data embedded in smooth areas still meets better stego-image quality. The multiple-base notational system, on the other hand, is applied to increase the payload of the image. With the system, the payload of each pixel, determined by the complexity of its neighboring pixels, can be very different. In addition, the cover image processed by the proposed scheme can be fully recovered without any distortion. Experimental results, as shown in this paper, have demonstrated that the proposed method is capable of hiding more secret data while keeping the stego-image quality degradation imperceptible. Ó 2009 Elsevier Inc. All rights reserved.
1. Introduction With the rapid development of multimedia technologies and the growing popularity of the Internet, information/data hiding methods, which are ways to embed additional messages into host signals by modifying their original contents without introducing perceptual changes, have become more and more widely applied to accomplish such missions as authentication (Celik et al., 2002, 2006), content protection (Hartung and Kutter, 1999; Lagendijk et al., 2000; Swanson et al., 1998), secret communication (Dumitrescu and Wu, 2005; Kamstra and Heijmans, 2005; Marvel et al., 1999; Zhang and Wang, 2005), and many more. In most applications, the host signals get altered when secret messages are embedded, and the modifications cause a little image distortion. However, in certain cases where extremely high resolution level multimedia data such as medical images, military data, and remote sensing are involved that require absolute precision, any slightest permanent distortion is not acceptable, and these are times when so-called lossless/reversible embedding techniques come in. Just like what happens with traditional data hiding methods, lossless embedding does its job hiding secret data into the cover image
* Corresponding author. Fax: +886 4 22857173. E-mail address:
[email protected] (C.-S. Tsai). 0164-1212/$ - see front matter Ó 2009 Elsevier Inc. All rights reserved. doi:10.1016/j.jss.2009.06.056
and at the same time changing some pixel values of the cover image. However, traditional data hiding can make the secret data imperceptible, the distortions are often irreversible. For this reason, lossless data hiding can extract the embedded data to restore the original digital multimedia reversibly that is useful for some special applications such as military map, Magnetic Resonance Imaging (MRI), or artwork preserving. These applications not only ask the protection of owner’s copyright but keep the integrity of the whole image. What makes lossless data hiding techniques different from ordinary methods is that after the lossless secret data extraction process based on some formulas, lossless techniques can have the cover image come back to its old self again without leaving any trace of distortion. The lossless data hiding protect intellectual property rights and copyrights, to authenticate the completeness of a digital data, and to make secret communication. To live up to the name of a good lossless data hiding technique, a scheme should at least meet the following requirements: (1) it should have the ability to fully reconstruct the cover image; (2) it should have a big embedding capacity; and (3) the distortion the embedding of the secret data causes to the stego-image should be as little as possible. In the past decade, many lossless data embedding methods have been developed. The earliest idea of reversible watermarking in the literature was presented by Barton (Barton, 1997), filed in 1997. In Barton’s scheme, the bits to be influenced by the embedding
H.-C. Wu et al. / The Journal of Systems and Software 82 (2009) 1966–1973
operation will be compressed and embedded into the cover image, causing extra trouble and damage but leaving clues for later full recovery. Honsinger et al. (2001) then presented a new method for image authentication that relied on a module-256 addition function to reversibly recover the original image. In their method, however, there exists the salt-and-pepper noise problem. For the purpose of increasing the hiding capacity, reversible data hiding often comes along with compression. Fridrich et al. (2001), for example, proposed a spatial domain lossless data hiding scheme that modifies the least significant bit (LSB). Their algorithm compresses the least significant bit plane of the cover image and then concatenates the result of the compression with the secret message to substitute for the least significant bit plane of the cover image. Later, Celik et al. (2005) proposed a generalized least significant bits embedding (G-LSBs) technique capable of improving Fridrich et al.’s scheme in terms of payload. In G-LSBs algorithm, each pixel is first quantized into L steps, and at the end of the quantization operation the quantization residues of the cover image can be obtained. After that, by using the CALIC lossless compression algorithm, the compressed residues can be collected. The remainder of the compression space is used to hide the secret message. The embedding capacity of Celik’s scheme depends on the value L. In addition, Ni et al. (2006) also offered a high stego-image quality scheme that utilizes the zero or minimum bin of the cover image histogram and shifts the bin’s location to the maximum to embed data. The PSNR of the stego-image they produce can be higher than 48 dB, but the payload is only equal to the number of maximum bins of the histogram. Besides, Tian (2003) also proposed a high capacity, low distortion lossless data hiding scheme based on integer wavelet transformation and pixel pair difference expansion. After that, (Alattar, 2004) even extended the difference expansion by generalized integer transform to make it work for more than two pixels per vector with k 1 bits of secret data hidden into k pixels after the difference expansion of a vector. However, whether it is pixel pair difference expansion or difference expansion for more than two pixels, there is additional information to save that keeps track of the characteristics of a vector. To make a difference, (Chang and Lu, 2006) decided to use the mean value of the surrounding pixels to improve Tian’s difference expansion scheme in terms of capacity. This way, no extra bits – neither vector characteristics nor the mean value – need to be stored. Sunil and co-workers proposed a reversible data hiding scheme based on integer-to-integer wavelet transform (Lee et al., 2007). The messages are embedded into high frequency coefficients by difference expansion method. Besides, some lossless data hiding schemes also provide the ability of resisting the malicious or non-malicious damage. Vleeschouwer et al. (2003) proposed a reversible semi-fragile scheme based on patchwork theory, and solved the problem of the salt-and-pepper artifact by using a circular interpretation of bijective transformation. Ni et al. (2004) presented a robust lossless image data hiding scheme that can tolerate JPEG lossy compression to a certain extent to protect the owner’s rights. In this paper, we shall present a new scheme that, based on edge prediction and difference expansion, is capable of producing a high quality stego-image after embedding large quantities of secret data. We use a pixel value prediction technique to predict the value of each pixel and then to obtain the value of predictive error for each pixel. This error value is usually smaller than the mean value used by many reversible data hiding schemes. In other words, the pixel distortion can be reduced when the error value is expanded. Furthermore, the payload in our scheme can change from pixel to pixel, which means more secret data can be adaptively hidden into a pixel with a small difference value to increase the overall hiding capacity, and less secret data can be embedded into a pixel with a large difference value so that severe stego-image dis-
1967
tortion can be avoided. In addition, a base selection method is employed in the new scheme to determine the embedding capacity of each pixel. This strategy can protect the image quality from serious distortion in heavy payload situations. The rest of this paper is organized as follows. In Section 2, some related schemes will be briefly reviewed. Then, in Section 3, the framework of the proposed scheme will be presented in detail. In Section 4, we shall analyze the new scheme and compare it with some well-celebrated schemes in terms of payload and stego-image quality, respectively. Finally, a brief conclusion will be given in Section 5.
2. Related works In our scheme, to diminish the difference value, we adopt the well-known JPEG-LS prediction scheme, at which we shall have a close look in the subsection right below. Then, in the subsection that follows, we shall introduce the difference expansion scheme that helps with reversible secret data hiding. 2.1. The pixel value prediction technique The JPEG-LS prediction technique (JTC ISOiIEC JTC 29/WG1 FCD 14495 public draft, 1997) can analyze the local texture among three pixels. (Fig. 1) shows a popular predictive pattern, where the pixel x is to be predicted and its three adjacent pixels a, b and c are used to analyze whether x belongs to a horizontal edge or vertical edge or neither. By applying JPEG-LS prediction for x, its predictive value x0 can be computed as follows:
8 > < minða; bÞ; if c P maxða; bÞ X ¼ maxða; bÞ; if c 6 minða; bÞ > : a þ b c; otherwise 0
ð1Þ
As Eq. (1) indicates, if c P max(a, b) and max(a, b) = a, that means a vertical edge exists there; namely, the predictive value x0 equals b. Otherwise, there is a horizontal edge, and the predictive value x0 is equal to a such that c P max(a, b) and max(a, b) = b. Similarly, in case tat the predictive value x0 equals to either a or b when c 6 min(a, b), there is also a vertical or horizontal edge. However, when the pixel value c falls in neither the maximum value interval nor the minimum value interval, chances are there may probably not be any edge there. In other words, in this case, these three pixel values a, b and c are pretty close, meaning the pixel x is located in quite a smooth area, and that is why the predictive value x0 is estimated to be close to its three immediately adjacent pixel values a, b and c. (Fig. 2) shows the edge detection process of JPEG-LS prediction. From the above discussion, we learn that the prediction technique achieves its goal of reducing the loading of memory by only recording the prediction error value without storing the original pixel value. Moreover, the prediction error value will be processed by difference expansion before it conveys the secret message.
Fig. 1. JPEG-LS predictive template.
1968
H.-C. Wu et al. / The Journal of Systems and Software 82 (2009) 1966–1973
(a) c ≥ max(a,b)
(b) c≤ min(a,b)
c
a
c
a
b
x
b
x
c
a
c
a
c
a
c
a
b
b
b
a
b
b
b
a
a>b
b>a
a>b
b>a
Fig. 2. The edge detection process of JPEG-LS prediction.
Without loss of generality, since the prediction error value is usually very small, our new scheme is capable of producing high quality stego-images because the image distortion comes from the prediction error value processed by the difference expansion technique. 2.2. The difference expansion technique In 2003, Tian proposed the first difference expansion method. With Tian’s method, one bit of secret data can be conveyed by a pair of pixels. The major idea in Tian’s method is to expand the difference value of two consecutive pixels and then to insert one secret bit by modifying the expanded difference value. The following is the detailed embedding procedure of Tian’s method. Step 1: Suppose Mxy is an original grayscale image where x and y are the width and height of the image Mxy. The image Mxy is divided into Z non-overlapped blocks, where each block is composed of two consecutive pixels, making Z = (x y)/2. Let Pk,l and Pk,r be the left and right pixel values of the kth block, where k = 1, 2, . . . , Z. Now the difference value dk and the integer average value mk for each block can be computed as below:
mk ¼ bðP0k;l þ P0k;r Þ=2c
0
M k ¼ bðPk;l þ Pk;r Þ=2c:
ð2Þ
Step 2: If the difference value dk is too large, it is unsuitable to be expanded for secret message hiding because that would cause an obvious artifact. Otherwise, we can insert the message into each block when dk is expanded. Suppose s is a 1-bit binary secret message. It can be inserted into the difference of a block by 0
dk ¼ dk 2 þ s:
ð3Þ 0 dk
Step 3: When we have the new difference value the new pair of pixels containing the embedded message can be obtained by 0 equally dividing dk into Pk,l and Pk,r according to the following equation: 0
P 0k;l ¼ mk þ bðdk þ 1Þ=2c; ¼ mk
0
dk ¼ P0k;l P0k;r
ð5Þ
Now the secret data s can be extracted by Eq. (6)
dk ¼ Pk;l Pk;r;
P 0k;r
In Tian‘s scheme, in order to avoid overflow problem, the pixel pairs are divided into two sets, expandable set and changeable set. An expandable pair must satisfy the following conditions: 0 6 P0k;l 6 255 or 0 6 P0k;l 6 255. On the contrary, if the stego-pixel value occur overflow/underflow problem, the pixel pair can not use difference expansion scheme. In changeable set, Eq. (3) must 0 be revised by calculating dk ¼ bdk =2c 2 þ s. Therefore, a location map is generated to indicate the location for expandable set and changeable set. The symbol ‘‘0” indicates that the pixel pair utilizes difference expansion scheme, and the symbol ‘‘1” means that the pixel pair is categorized into changeable set. Then, the location map, collected LSBs and secret message are to be combined to form the embedded data. We now introduce the extraction procedure of Tian’s algorithm, which is about the same as the embedding procedure, only in reverse order. Because the message s is recorded within the difference value of two consecutive stego-pixels P0k;l and P 0k;l , hence the difference and mean value of each stego-block must be calculated again by
0 bdk =2c:
ð4Þ
When the stego-pixels P0k;l and P0k;l are generated, the original pixels Pk,l and Pk,r must be replaced with the stego-pixels P0k;l and P0k;l directly, which completes the embedding procedure.
s ¼ dk mod 2
ð6Þ
Next, let’s take a look at how the original pixel values Pk,l and Pk,r get reconstructed. The key elements are the original difference value dk and the original integer average value mk. The location map determines whether the pixel pair is expandable or not. For the expandable pixel pair, the difference is calculated from 0 0 dk ¼ bdk =2c. While the pixel pair is changeable, dk ¼ bdk =2c 2. We can derive the cover pixels Pk,l and Pk,r by using the following equation:
Pk;l ¼ mk þ bðdk þ 1Þ=2c; P k;r ¼ mk bdk =2c:
ð7Þ
3. The proposed method In this section, we shall present the proposed method, whose embedding and extracting procedures will be illustrated by the block diagrams shown in Figs. 3 and 4, respectively. In our scheme, the embedding procedure consists of three steps, including the pixel value prediction for reducing the distortion, the capacity
H.-C. Wu et al. / The Journal of Systems and Software 82 (2009) 1966–1973
3.2. The capacity estimation phase
Original image
Complexity estimation and base selection
JPEG-LS predictive function
Prediction error
Embedding base
The embedding capacity of a pixel is determined by the variance of its neighbor pixels; in other words, the embedding capacity can be different from pixel to pixel. This is because the local texture of each pixel is different. Pixels in smooth areas will be responsible for the embedding of more secret data because the pixel values can be predicted more accurately with the prediction errors close to zero. Then, the secret message will be transformed into various bases by using a multiple-base notational system. This way, if the base is greater, then a higher capacity pixel is used. Now we define d2ij as the variance of the three adjacent pixels Pi1,j, Pi,j1 and Pi1,j1, and bi,j is the base of Pi,j. The variance d2ij can be obtained by
d2ij ¼ ðP 2i1j þ P2ij1 þ P2i1j1 Þ=3 m2ij ;
Difference expansion embedding scheme
Secret data
ð9Þ
where D is a constant and the threshold value t is used to control the maximum hiding capacity. In order to prevent the embedded symbols more than 8 bits and overflow problem, so to restrict 0 6 t 6 255. If D is smaller, then the whole payload is lower but the stego-image quality is higher, and vice versa.
Stego-image Fig. 3. Diagram of data embedding process.
Original image
3.3. The data embedding phase
JPEG-LS predictive function
Prediction error
Embedding base
ð8Þ
where mi,j = (Pi1,j + Pi,j1 + Pi1,j1)/3, and the base bi,j is defined as
bij ¼ minðdD=d2ij e; tÞ;
Complexity estimation and base selection
1969
Difference expansion embedding scheme
Secret data
Stego-image Fig. 4. Diagram of data extraction process.
estimation to achieve a higher payload, and finally the difference expansion that completes the embedding procedure.
Now that we have both the predictive pixel value P0i;j and its base bi,j, it is time to hide the secret data into the pixel. Suppose S is the whole binary secret message whose size is l. S can be defined as S = s1, s2, . . . , sn, where n is equal to l/8 and each symbol sk, k = 1, 2, . . . , n, contains 8 bits of binary data. The following are the data embedding steps of the proposed scheme: Step 1: As defined in Section 3.1, the top-most row and left-most column are not used for hiding data. Hence, for either i=1 or j=1 or both, the stego-pixel value P 00i;j equals Pi,j. Step 2: Read the secret data sk and convert it into a decimal value sd,k. In order to judge whether the secret data sd,k is empty or not, we use a parameter u whose initial value is 1 to check whether the total hiding capacity is more than 8 bits. Step 3: Compute the difference value di,j between the original pixel value Pi,j and the predictive value P0i;j by di;j ¼ P i;j P0i;j The remainder value ri,j of the secret data in its decimal form sd,k is to be embedded with the base bi,j by
ri;j ¼ sd;k mod bi;j
Step 4: According to the base bi,j, the original difference value di,j can be expanded bi,j times. After that, the secret message is concealed into the expanded value. Therefore, the new difference 0 value di;j can be obtained by 0
di;j ¼ di;j bi;j þ r i;j : 3.1. The pixel value prediction phase In general, the pixels in the top-most row and the left-most column of a cover image are preserved without any secret data hidden in them. Let Pi,j be the first pixel to hold the secret message, whose position is (2, 2) in the cover image. Three immediate neighbor pixels are P1,2, P2,1 and P1,1. As defined in Section 2.1, the edge prediction technique can find a predictive value for a pixel by using its three adjacent pixels. Therefore, assume P0i;j is the predictive value of pixel Pi,j and it can be computed by Eq. (1) where x = Pi,j, a = Pi1,j, b = Pi,j1 and c = Pi1,j1. Then, following raster scan order, predictive pixel values can be obtained for the next pixel and the next until the whole image is done.
ð10Þ
ð11Þ
0 1; di;j
If bi;j ¼ ¼ di;j . Step 5: We can obtain a new stego-image pixel P00i;j by 0
P00i;j ¼ P0i;j þ di;j :
ð12Þ
However, in this step, there might be some overflow or underflow problems; that is, there can be times when the stego-pixel value P00i;j goes beyond 255 or below 0. If so, the next step, namely step 6, has to be skipped, and the pixel will be preserved because it is not eligible to carry any secret data. The position of the pixel will be recorded, which takes some additional memory. There are few these points in an image, but can be sent
1970
H.-C. Wu et al. / The Journal of Systems and Software 82 (2009) 1966–1973
by another channel. The additional recorded data, which called side information, can be included into the file header of cover image or transmitted by public key cryptosystem. Moreover, the side information also can be embedded into the least significant bits (LSBs) of a pre-defined region. For instance, we can embed the side information into the LSBs of last line in cover image. Then, the original LSBs which have been modified will be embedded as secret messages. The embedding process appends original LSBs to the secret message. Hence, the pixels in last line will skip the Steps 1–6. If, on the contrary, no overflow or underflow problems occur, the data embedding algorithm is finished.
sk = 10,000,000(2) as our secret message, and its decimal value is sd,k = 128(10). We get ri,j = 2 by Eq. (10) modulo sd,k with the base being 3 and sd;k ¼ b128=3c ¼ 42. Finally, according to Eqs. (11) 0 and (12), we can obtain di;j ¼ 2 3 þ 2 ¼ 8 and P00i;j ¼ 12 þ 8 ¼ 20. In the secret data extraction and original cover pixel recovery phase, the original values of the three adjacent pixels must be obtained so that the secret message can be accurately extracted. For this reason, supposing we want to extract the message from the stego-pixel P 00i;j ¼ 20, the three original adjacent pixel values Pi1,j = 11, Pi,j1 = 12 and Pi1,j1 = 10 must be obtained for the purpose of finding the right variance and base. Therefore, from the three adjacent pixel values, we derive the variance d2ij ¼ 0:67 as
Step 6: If the data embedding in Step 5 is successful and the value of u is smaller than 255, then the secret message is not empty. Hence, we can hide the quotient of sd,k into the next pixel, and the parameter u must be multiplied by its base bi,j until u > 255.
sd;k ¼ bsd;k =bi;j c; u ¼ u bi;j :
ð13Þ
In Step 6, if u > 255, it means the message sk has been embedded into the pixel. Hence, we read the next message sk+1 and convert it into its decimal value sd,k+1 with u set to be 1. After Step 6, we take the next pixel from the cover image and repeat Steps 3 through 6. The same thing goes on and on until all the pixels have been visited. 3.4. The data extraction and original pixel recovery phase Here are the steps to take to extract the secret data from the stego-image and recover the original pixel values of the cover image. The detailed secret data extraction and original cover pixel recovery procedures are described as follows: Step 1: Since the pixels in the top-most row and left-most column do not carry any secret data, we can readily restore them by Pi;j ¼ P 00i;j for i = 1 or j = 1, respectively. The stego-pixels P00i;j will be processed in raster scan order. Then, the side information will be obtained from the file header or decrypted by public key cryptosystem. These overflow/underflow points can be directly acquired from the recovered pixel values and skip all extracting process. Step 2: For each stego-pixel P00i;j with its three adjacent pixels Pi1,j, Pi,j1 and Pi1,j1 having been restored already, the predictive value P 00i;j of P 00i;j can be obtained by Eq. (1). Then, the variance value d2ij among the three adjacent pixels Pi-1,j, Pi,j-1 and Pi-1,j-1 can be computed by Eq. (8), and the base bi,j of P00i;j can be derived by Eq. (9). 0 0 Step 3: Compute the new difference di;j by di;j ¼ P 00i;j P 0i;j Now we 0 can extract the secret message, namely the remainder r i;j ¼ di;j mod bi,j, and the original difference value di,j also can be derived 0 by computing the quotient bdij =bij c. We can compute the sd,k value by converting ri,j with the base bi,j into its decimal value. Step 4: Finally, the original cover pixel value Pi,j can be recovered by P i;j ¼ P0i;j þ di;j . Here is an example of how the proposed algorithm actually works. Suppose we have a pixel Pi,j = 14 and its three adjacent pixels Pi1,j = 11, Pi,j1 = 12 and Pi1,j1 = 10 respectively. We use Eq. (1) to calculate its predictive value P0i;j ¼ 12 and its predictive error di,j = 14 12 = 2. The variance and its base also can be computed by Eqs. (8) and (9) respectively. In other words, in this case, we have d2ij ¼ 0:67 and bi,j = 3 where D = 2. Now let’s take
Fig. 5. Eight tested images.
1971
H.-C. Wu et al. / The Journal of Systems and Software 82 (2009) 1966–1973 Table 1 Payload and its corresponding PSNR value for test image ‘‘Lenna” under various t values (D = 12). Parameter t
Payload (bpp)
PSNR (dB)
Overflow (pixel)
Underflow (pixel)
Side information (bpp)
Pure payload (bpp)
2 4 6 8 10 12
0.62 1.03 1.17 1.22 1.24 1.24
40.7 33.9 31.7 30.3 29.9 29.8
0 0 0 2 5 9
0 1 15 52 68 74
0 0.00007 0.001 0.003 0.005 0.0057
0.62 1.03 1.17 1.06 1.24 1.24
Table 2 Payload and its corresponding PSNR value for test image ‘‘Lenna” under various D values (t = 8). Delta D
Payload (bpp)
PSNR (dB)
Overflow (pixel)
Underflow (pixel)
Side information (bpp)
Pure payload (bpp)
2 4 6 8 10 12 14
0.14 0.45 0.69 0.91 1.09 1.22 1.34
49.6 40.8 36.8 33.8 31.9 30.3 29.4
0 0 0 0 1 2 4
0 0 1 10 25 51 82
0 0 0.00007 0.0007 0.0018 0.0036 0.0059
0.14 0.45 0.69 0.91 1.09 1.22 1.33
Table 3 Stego-imge quality versus embedding capacity (t = 8, D = 12). Test image (512 512)
PSNR of stego-image (dB)
Embedding capacity (bpp7)
Lenna Airplane Boat Gold Barbara Pepper Tiffany Zelda
30.30 31.35 31.01 32.33 33.29 31.54 30.83 31.68
1.22 1.57 1.17 0.83 0.70 1.23 1.34 1.31
well as the base bi,j = 3 by using the same D = 2. The predictive value P 0i;j ¼ 12 can be computed by Eq. (1), and the difference value is 0 di;j ¼ P00i;j P 0i;j ¼ 20 12 ¼ 8. The hidden data in P00i;j can be derived 0 by ri;j ¼ di;j mod bi,j = 8 mod 3 = 2. The original difference value and the original pixel value can be recovered as di;j ¼ b8=3c ¼ 2 and P i;j ¼ Pi;j þ di;j ¼ 12 þ 2 ¼ 14, respectively. Finally, the sd,k value 128 can be obtained by 128 = 42 3 + 2, where 42 is the extracted data of other pixels. 4. Experimental results To evaluate the performance of our new scheme, in our experiments, we have used eight tested images, which are shown in
Fig. 5. The secret message in our experiments was generated by a pseudo random number generator with identical probabilities for ‘‘bit 1” and for ‘‘bit 0”. There are two parameters, t and D, which controls the capacity and PSNR of the embedded images. In the experiments, the maximum capacity parameter t and D were discussed in Tables 1 and 2. The column ‘‘Payload” means the maximum payload which is obtained by trying to embed as much information as possible in the image under the parameters t and D. When t = 2, there are only two cases: one-bit embedding and non-embedding. Hence, ‘‘Payload” = 0.62 indicates that 62% pixel contains data embedded by difference expansion scheme. On the other hand, 38% pixel does not change their pixel value. Because it locates in less smooth area, the difference expansion scheme causes high distortion in it. In the proposed algorithm, the embedding payload and PSNR value changes in accordance with the value of t and D. Therefore, we have also designed some experiments, where the ‘‘Lenna” test image was used, to investigate how the proposed scheme would perform under different D values. As expected, (Tables 1 and 2) shows that the growth of payload did depend on the t and D value. The 4th and 5th columns of Tables 1 and 2 indicate that the numbers of pixels with overflow and underflow conditions, respectively. The 6th and 7th columns deal with the additional memory needed to record the unchangeable locations and the pure
Fig. 6. (a) Difference image between original image and stego-image scaled 3 times. (b) Image composed of pixels of predictive error values scaled 5 times.
1972
H.-C. Wu et al. / The Journal of Systems and Software 82 (2009) 1966–1973
embedding payload of the image, respectively. Obviously, if the parameter t or D value is larger, the pure payload goes up, and vice
versa. In the experimental results, the overflow/underflow points just have a very small portion of whole image, and we select
50
50 [18] [7] [14] Our scheme
45
PSNR(dB)
PSNR(dB)
45
40
35
30
25 0
[18] [7] [14] Our scheme
40
35
30
0.2
0.4
0.6
0.8
1
1.2
25 0.1
1.4
0.2
0.3
Payload(bpp.)
(a) Lenna
0.6
0.7
0.8
50 [18] [7] [14] Our scheme
50
[18] [7] [14] Our scheme
45
45
PSNR(dB)
PSNR(dB)
0.5
(e) Barbara
55
40 35 30 25 0.2
40
35
30
0.4
0.6
0.8
1
1.2
1.4
1.6
25 0
Payload(bpp.)
0.2
0.4
0.8
1
1.2
1.4
(f) Pepper
50
50 [18] [7] [14] Our scheme
[18] [7] [14] Our scheme
45
PSNR(dB)
45
40
35
30
25
0.6
Payload(bpp.)
(b) Airplane
PSNR(dB)
0.4
Payload(bpp.)
40
35
30
0
0.2
0.4
0.6
0.8
1
1.2
25 0
1.4
0.2
0.4
0.6
0.8
Payload(bpp.)
Payload(bpp.)
(c) Boat
(g) Tiffany
50
1
1.2
1.4
48 [18] [7] [14] Our scheme
45
[18] [7] [14] Our scheme
46 44
PSNR(dB)
PSNR(dB)
42 40
35
40 38 36 34
30
32 30
25 0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
28 0
0.2
0.4
0.6
0.8
Payload(bpp.)
Payload(bpp.)
(d) Gold
(h) Zelda
1
1.2
1.4
Fig. 7. Comparison results of embedding capacity in bpp versus distortion in PSNR with existing reversible schemes with difference expansion for eight test images.
H.-C. Wu et al. / The Journal of Systems and Software 82 (2009) 1966–1973
t = 8 and D = 12 as our testing parameters. The result of test images was listed in Table 3. Fig. 6a shows the difference image whose pixel values have been scaled by 3 times. The pure white pixels indicate that the original pixels were preserved without any secret data hidden inside. On the other hand, the black pixels, which appear in smooth areas in the original image, suggest that there are secret data bits hidden in them. In contrast, Fig. 6b is a clear example of the advantage of using the JPEG-LS pixel prediction technique. As the picture shows, there are smaller differences in the smooth areas, and greater predictive errors are a lot more likely to occur in edge areas. The proposed scheme is smart enough to accurately detect the edge areas and to skip the pixels in edge areas by computing the variance of the three adjacent pixels. With edge pixels carrying no secret data, the proposed scheme hides the secret bits in the pixels where the predictive errors are small. The obvious result is a high quality stego-image with unperceivable distortion and a high embedding capacity. Finally, we have also compared the proposed scheme with other well-accepted schemes in terms of payload and stego-image quality. The eight test images were used, and the comparison results are shown in Fig. 7. Tian’s (2003), Chang and Lu (2006), and Sunil and co-worker’s scheme all belong to difference expansion techniques (Lee et al., 2007). However, both Tian and Chang’s schemes can only hide one bit into each difference value regardless of whether the complexity of a pixel indicates it belongs to an edge area or a smooth area. Unlike these two methods, the proposed scheme can hide one more bit into each predictive error value (i.e. difference value) when the pixel is located in a smoother area. That is, the proposed scheme provides a better mechanism to assign different payloads to different pixels according to the texture complexity. In addition, in order to control the stego-image quality, most of the secret data bits are hidden into the pixels with close-to-zero predictive error values. In summary, the comparison results show that the performance of our work is the best of the three. 5. Conclusions In this paper, we have presented a reversible data hiding scheme that makes use of the JPEG-LS predictive technique and the multiple-base notational system to improve the stego-image quality and hiding capacity of this new difference expansion scheme. As a result, the payload of each pixel can be adjusted, depending on its texture complexity, avoiding damage done to the sensitive areas of the stego-image. By using the JPEG-LS predictive technique, we can pick out pixels with close-to-zero predictive error values as secret data bit carriers; as a result, the distortion of the stego-image can be reduced greatly, especially when the predictive error value is expanded by using the difference expansion method. As our experiments have demonstrated, the performance of the proposed scheme is better than those of some well-accepted schemes in terms of payload and stego-image quality. References ISOiIEC JTC 29/WG1 FCD 14495 public draft, 1997. JPEG-LS: Lossless and Nearlossless Coding of Continuous-Tone Still Images. Alattar, A.M., 2004. Reversible watermarking using the difference expansion of a generalized integer transform. IEEE Transactions on Image Processing 13, 1147– 1156. Barton, J.M., 1997. Method and Apparatus for Embedding Authentication Information Wiin Digial Data, U.S. Patent 5 646 997. Celik, M.U., Sharma, G., Saber, E., Tekalp, A.M., 2002. Hierarchical watermarking for secure image authentication with localization. IEEE Transactions on Image Processing 11, 585–595. Celik, M.U., Sharma, G., Saber, E., Tekalp, A.M., 2006. Lossless watermarking for image authentication: a new framework and an implementation. IEEE Transactions on Image Processing 15, 1042–1049.
1973
Celik, M.U., Sharma, G., Tekalp, A.M., Saber, E., 2005. Lossless generalized-LSB data embedding. IEEE Transactions on Image Processing 14, 253–266. Chang, C.C., Lu, T.C., 2006. A difference expansion oriented data hiding scheme for restoring the original host images. Journal of Systems and Software 79, 1754– 1766. Dumitrescu, S., Wu, X., 2005. A new framework of lsb steganalysis of digital media. IEEE Transactions on Signal Processing 53, 3936–3947. Fridrich, J., Goljan, M., Du, R., 2001. Invertible Authentication. In: Proceedings of SPIE Photonics West, vol. 3971, Security and Watermarking of Multimedia Contents III, San Jose, California, pp. 197–208. Hartung, F., Kutter, M., 1999. Multimedia watermarking techniques. Proceedings of IEEE Special Issue on Protection of Multimedia Content 87, 1079– 1107. Honsinger, C.W., Jones, P.W., Rabbani, M., Stoffel, J.C., 2001. Lossless Recovery of An Original Image Containing Embedded Data, U.S. Patent #6278791. Kamstra, L., Heijmans, H.J.A.M., 2005. Reversible data embedding into images using wavelet techniques and sorting. IEEE Transactions on Image Processing 14, 2082–2090. Lagendijk, R.L., Langelaar, G.C., Setyawan, I., 2000. Watermarking digital image and video data. IEEE Signal Processing Magazine 17, 20–46. Lee, S., Yoo, C.D., Kalker, T., 2007. Reversible image watermarking based on integerto-integer wavelet transform. Transactions on Information Forensics and Security 2, 321–330. Marvel, L.M., Boncelet Jr, C.G., Retter, C.T., 1999. Spread spectrum image steganography. IEEE Transactions on Image Processing 8, 1075–1083. Ni, Z., Shi, Y.Q., Ansari, N., Su, W., 2006. Reversible data hiding. IEEE Transactions on Circuits and Systems for Video Technology 16, 354–361. Ni, Z., Shi, Y.Q., Ansari, N., Su, W., Sun, Q., Lin, X., 2004. Robust lossless image data hiding. Proceedings of IEEE International Conference on Multimedia and Expo 3, 2199–2202. Swanson, M.D., Kobayashi, M., Tewfik, A.H., 1998. Multimedia data embedding and watermarking technologies. Proceedings of the IEEE 86, 1064–1087. Tian, J., 2003. Reversible data embedding using a difference expansion. IEEE Transactions on Circuits and Systems for Video Technology 13, 890–896. Vleeschouwer, C.D., Delaigle, J.F., Macq, B., 2003. Circular interpretation of bijective transformations in lossless watermarking for media asset management. IEEE Transactions on Multimedia 5, 97–105. Zhang, X., Wang, S., 2005. Steganography using multiple-base notational system and human vision sensitivity. IEEE Signal Processing Letters 12, 67–70.
Hsien-Chu Wu received the B.S. and M.S. degrees in Applied Mathematics in 1985 and 1987, respectively, from the National Chung Hsing University, Taichung, Taiwan. She received her Ph.D. in Computer Science and Information Engineering in 2002 from National Chung Cheng University, Chiayi, Taiwan. From August 2005 to July 2007, she was professor of the Department of Information Management at National Taichung Institute Technology, Taichung, Taiwan. Since August 2008, she has worked as a professor of Graduate School of Computer Science and Information Technology at National Taichung Institute Technology, Taichung, Taiwan. Her research interests include image authentication, digital watermarking, information hiding, image processing, and information security. Chih-Chiang Lee was born in Kaohsiung, Taiwan, Republic of China, on July 23, 1981. He received the B.S. degree in Applied Mathematics in 2003 from the National Chung Hsing University, Taichung, Taiwan. He received the Ph.D. degree in Computer Science and Engineering in 2009 from National Chung Hsing University, Taichung, Taiwan. His research fields include lossless steganography, information hiding, visual cryptography and image processing. Chwei-Shyong Tsai was born in Changhua, Taiwan, Republic of China, on September 3, 1962. He received the B.S. degree in Applied Mathematics in 1984 from National Chung Hsing University, Taichung, Taiwan. He received the M.S. degree in Computer Science and Electronic Engineering in 1986 from National Center University, Chungli, Taiwan. He received the Ph.D. degree in Computer Science and Information Engineering in 2002 from National Chung Cheng University, Chiayi, Taiwan. From August 2002 to July 2004, he was an associate professor of the Department of Information Management at National Taichung Institute of Technology, Taichung, Taiwan. From August 2004 to January 2006, he was an associate professor of the Department of Management Information Systems at National Chung Hsing University, Taichung, Taiwan. Since February 2006 he has been a professor of the Department of Management Information System at National Chung Hsing University, Taichung, Taiwan. His research interests include image authentication, information hiding and cryptography. Yen-Ping Chu received his Ph.D. degree in Electrical Engineering in 1986 from the National Cheng Kung University, Tainan, Taiwan. Currently, he is a professor of the Department of Computer Science and Information Engineering at TungHai University, Taichung, Taiwan. His research interests include high-speed networks, operating system, neural network, and computer assistant learning. Hung-Ruei Chen received the B.S. degree in Management Information Systems in 2009 from the National Chung Hsing University, Taichung, Taiwan. His research interests include image processing and data hiding.