2992 IEEE TRANSACTIONS ON IMAGE PROCESSING, VOL. 21, NO. 6, JUNE 2012 Fig. 1. Diagram for the framework of RDH at the sender side. Fig. 2. Side information used at the receiver side in three frameworks.step. Therefore, the peak bin’s neighboring bin, which is now embedding algorithm and a perfect compressing method toemptied out, and the peak bin can be used to represent “1” approach the rate–distortion bound. In fact, we noted that theand “0,” respectively. It is easy to see that a steeper histogram receiver could extract messages from the marked cover withimplies larger capacity, and, usually, the histogram of residuals the help of the reconstructed cover because of reversibility. Inis quite steep. Thus, most state-of-the-art methods apply HS to Fig. 2, the side information exploited at the receiver side inresiduals of the image , . the proposed framework is compared with those used in two Both DE- and HS-based schemes use integer features and previous frameworks.special methods to compress the features. As for DE, the fea- However, there are still limitations in three aspects in .tures (differences) are compressed by expansion operation, and First, we construct embedding codes by improving the decom-as for HS, the features (histogram) are compressed by shifting pression algorithm of run-length coding, by which the recursiveoperation. There is a common character in both these schemes, code construction is close to but cannot reach the rate–distortionthat is, the distortion to the original cover is mainly introduced bound. Second, the codes in  are restricted to some discreteby the special compressing manners. By contrast, Fridrich embedding rates and cannot approach the maximum embedding http://ieeexploreprojects.blogspot.comand Goljan’s schemes  use a binary feature sequence and rate at the least admissible distortion. Third, the codes are re-a generic compression algorithm, e.g., the arithmetic coder, stricted to improve Type-I RDH for spatial images, and how toand no distortion must be introduced by the compression. improve Type-II RDH by binary codes is still a problem.According to such differences, we divide RDH into two types In this paper, we generalize the code construction in  byas follows. using a general decompression algorithm as the embedding code • Type I. The features can be formulated as a binary se- and extend the applications to Type-II RDH. Compared with our quence and can be compressed by using a generic com- preliminary paper , the new contributions of this paper are pression algorithm. The methods in – belong to Type as follows. I. • We prove that the recursive code construction can reach • Type II. The features are nonbinary and compressed the rate–distortion bound when the decompression/com- in some speciﬁc manners. Both DE-based – and pression algorithms used in the code are optimal, which HS-based methods – belong to Type II. establishes equivalence between source coding and RDH For Type-I RDH, the problem is formulated as how to re- for binary covers.versibly embed data into a compressible binary sequence with • With the decompression of the adaptive arithmetic codergood performance. The performance is measured by embedding (AAC) as the embedding code, the proposed codes realizerate versus distortion, which is a special rate–distortion coding continuous embedding rates and reach the maximum em-problem. A formal model for this problem has been established bedding rate at the least admissible distortion.by Kalker and Willems . In , the authors obtained the • A method is presented to improve integer-operation-basedrate–distortion function, i.e., the upper bound of the embed- RDH (Type II) by the proposed binary codes, which areding rate under a given distortion constraint, and, by dividing also applied to Type-I RDH for JPEG and binary images.the cover into disjoint blocks, they proposed a recursive code The rest of this paper is organized as follows. The codingconstruction, which consists of a nonreversible data embedding model, rate–distortion function, and recursive code construc-code and a conditional compression code. In fact, Kalker and tion are brieﬂy introduced in Section II. The proposed codesWillems noted that the receiver can reconstruct the cover with with proof of optimality are elaborated in Section III. Some im-the help of the marked cover, and thus, the sender can compress plementation issues and performance comparison are discussedthe cover under the condition of the marked cover. That is why in Section IV. In Section V, we improve Type-I schemes,the recursive construction is efﬁcient. including schemes for spatial, JPEG, and, binary images. In our previous paper , we improved the recursive con- Section VI addresses how to improve Type-II schemes withstruction by using not only conditional compression but also the proposed binary codes. This paper is concluded with aconditional embedding, which enables us to design an efﬁcient discussion in Section VII.
ZHANG et al.: IMPROVING VARIOUS RDH SCHEMES VIA OPTIMAL CODES FOR BINARY COVERS 2993 II. CODING MODEL AND RECURSIVE CONSTRUCTION Theorem 1: The reversible embedding capacity for a memoryless binary source with is, for , given by A. Coding Model Throughout this paper, we denote matrices and vectors by (2)boldface fonts and use the same notation for the random variableand its realization, for simplicity. We denote entropy by Note that the above bound can be increased for nonmemory-and conditional entropy by . Particularly, the binary less sequences, but we assume the binary cover is memorylessentropy function is denoted by for , and throughout this paper, and this assumption, in fact, is suitablethe ternary entropy function is denoted by for for most schemes. and . To do RDH, a compressible feature sequence should be ﬁrst B. Recursive Constructionextracted from the original cover. For Type-I schemes, the fea- To approach the rate–distortion curve, Kalker and Willemstures can be usually represented by a binary sequence. There-  proposed a recursive embedding method, which consists offore, we directly take the binary feature sequence as the cover a nonreversible embedding code and a conditional compressionto discuss the coding method and follow the notation established algorithm. First, select a nonreversible embedding code within . distortion and embedding rate . Assume the binary cover Assume that there is a memoryless source producing binary sequence is sufﬁciently long. The se-compressible cover sequence such that quence is segmented into disjoint blocks of length , such that with the probability and . Without loss of generality, we assume . The assumption of being compressible that is a sufﬁciently large integer. With the embeddingimplies that the ratios of “0’s” and “1’s” are biased. Without code , bits of message can be embedded into the ﬁrstloss of generality, we assume that . We use Hamming host block , resulting in the ﬁrst marked block . The recip-distance to measure the embedding distortion on the cover . ient can reconstruct under the condition of known- afterBecause the message is usually compressed and encrypted she receives . Therefore, the amount of information neededbefore being embedded, we assume that the message is a binary to reconstruct is equal to , which means we canrandom sequence. If we can reversibly embed an -bit message compress into a sequence of length on average. into to get http://ieeexploreprojects.blogspot.com the marked cover This compressed sequence is embedded into the second block with modiﬁcations on average, we deﬁne the , averagely leaving room for bits of auxil-embedding rate as and the distortion as . iary message. Similarly, the information for reconstructingFor any given distortion constraint, we desire the embedding is embedded into . This process is recursively continued untilrate as high as possible. . For the last block , the simple method described A direct construction for RDH was proposed by Fridrich and in Section II-A is used to complete a full RDH method. WhenGoljan  as follows. First, compress the cover into a string and are large enough, the distortion of this method isComp with a lossless compression algorithm Comp . The equal to the distortion of code , and the embedding rate is equallength of Comp is approximately equal to . There- to .fore, we can averagely append bits of message This recursive construction performs better than the simple after Comp to obtain Comp . The recipient method because of two key points: 1) The data is embeddedcan extract the message from and reconstruct by de- by an efﬁcient nonreversible embedding code, and 2) the covercompressing Comp . As the bits of Comp are uncorrelated block is compressed under the condition of the marked block.with those of , and the message is random, the expectation However, the above recursive construction cannot approach theof distortion between and is 0.5. The embedding rate is equal upper bound (2).to , which, in fact, is the maximum achievable em-bedding rate. If we only need to embed a shorter message withlength equal to for some , we can exe- III. IMPROVED RECURSIVE CONSTRUCTIONcute the aforementioned method on a fraction of the symbols A. Motivations and Overall Frameworkin . In this case, the embedding rate andthe distortion . Therefore, for the distortion constraint In this section, we will improve the recursive construction , this simple method can achieve a rate–distortion curve, i.e., to approach the rate–distortion bound for any given distortion constraint. To do that, we ﬁrst observe the rate–distortion func- tion (2), which shows that the maximum capacity is equal to (1) , and it can be achieved when distortion . In Fig. 3, we draw the rate–distortion curves forVirtually, the simple method above is not optimal. and , which show that the capacity increases with distortion The maximum achievable embedding rate within the dis- for but keeps equal to fortortion constraint is called the capacity under the distortion . Therefore, we only need to consider how . The following theorem proved by Kalker and Willems  to construct codes for . On the other hand, ingives the expression of capacity. [15, Corollary 1], Kalker and Willems proved that the optimal
2994 IEEE TRANSACTIONS ON IMAGE PROCESSING, VOL. 21, NO. 6, JUNE 2012 Therefore, if the compression algorithm is optimal, i.e., the compression rate , we just achieve the embed- ding capacity. To improve the recursive construction in  and , we use the decompression algorithm of as the embedding code and design a corresponding conditional compression algorithm for the cover based on . Assume that the binary cover sequence is generated from a memoryless source satisfying and . To embed messages into reversibly Fig. 3. Maximum capacity for and . with distortion constraint , we ﬁrst divide into dis- joint blocks of length , such that . In each block, we only embed messages into zero symbols via theembedding manner for is that only the most decompression algorithm of . Note that, when the distortionprobable symbol, i.e., “0,” is allowed to be modiﬁed. on the sequence is , the distortion on zero symbols is Inspired by the above observation, we improve the recursive because only “0’s” will be modiﬁed. Therefore, we useconstruction as follows. We only embed messages into “0’s” of as the parameter of the decompression algorithm of and, onthe cover block to obtain the marked block average, decompress the ﬁrst , and thus, only “0’s” in will be modiﬁedfor the th block such that . Therefore, for (3)the position such that , the corresponding mustbe also equal to 0. This property can be used to compress bits of messages into a -bit sequence, which is denotedunder the condition of known- . In fact, we can ﬁrst delete the by . The sequence will includesymbol in at position such that and obtain a “1’s,” on average. By replacing the “0’s” insubsequence of , which is denoted by , and then compress with , we just obtain the ﬁrst marked block by a lossless compression algorithm Comp . This method , which introduces changes, onwill greatly improve the compression rate because most sym- average.bols in have been compressed by deletion. The compressed Therefore, at the position , such that http://ieeexploreprojects.blogspot.com and , which is denoted by Comp , cascaded with an auxiliary , the corresponding must be also equal to “0” becausemessage, is embedded into the next block to get the next no “1” in has been ﬂipped to “0.” We use this property tomarked block . To extract the message and reconstruct the compress under the condition of known- by deleting allcover, the extraction process must be performed in a backward symbols in at position ’s, such that , resulting inmanner. To extract message from , we ﬁrst extract message a subsequence of . Denote this subsequence by , and thus,from and obtain by decompression. Combining and . Note that the proportion , we can reconstruct and ﬁnd the positions of “0’s” in . of “0’s” in is equal to the ratio of nonmodiﬁed “0’s” in ,According to the positions of “0’s” in , we can extract mes- that is, , and thus, the ratio of “1’s” in is equalsage from . to . Therefore, the average The detailed process and an example for embedding and ex- length of is equal to . In other words, undertraction will be described in Section III-B. the condition of known- , the block is compressed to with compression rate , and we can reconstructB. Improved Recursive Construction by replacing “1’s” in by the symbols of . We ﬁrst need an embedding algorithm for embedding data Furthermore, we compress with the lossless compressiononly into zero symbols, which, in fact, is a special case of the algorithm . Denote the proportion of “0’s” and “1’s” incoding model in Section II with taking . By (2), the by and , respectively, which can be easily computed ascapacity for is equal to , which implies that the follows:optimal method for embedding data into only “0’s” is equivalentto decompression. (4) For example, assume is a lossless compression algorithmthat has compression rate for a memoryless binary source Therefore, can be compressed with the rate . Denotewith , and then, we can use the decompression algorithm the compressed information by Comp . In summary, whenof to embed data into zero symbols. In fact, into an -bit zero is known, the amount of information needed to reconstructcover, we can embed bits of random messages, on av- , i.e., the length of Comp , is, on average, equal toerage, by decompressing the message into an -bit sequence bysetting as the parameter of decompression. To extract (5)the message, we only need to compress the -bit sequence backto the bits of messages. Obviously, the embedding rate By using the decompression algorithm of , we embedis equal to , and the distortion is equal to because, on av- Comp into the “0’s” of the next block , leaving roomerage, “0’s” are changed to “1’s” in the embedding process. for embedding bits of
ZHANG et al.: IMPROVING VARIOUS RDH SCHEMES VIA OPTIMAL CODES FOR BINARY COVERS 2995 Fig. 4. Example on the improved recursive construction.auxiliary messages, on average, and resulting in the second marked block and decompress the extracted messages succes-marked block . The information for reconstructing , which sively until we get a 3-bit decompressed sequence, which is justis denoted by Comp , is embedded into the third block . . Thus, we can reconstruct by replacing the “1’s” inThis process is recursively continued until the one but the last by . After that, we ﬁnd the index set of “0’s” in , such thatblock . For the last block , we directly compress Ind , according to which we extractthe block and make room for bits, on average, bits from and get the sequence . Finally, we can extractinto which we embed Comp for reconstructing the the seven message bits by compressing .second last block . In addition, we also embed theoverhead information, such as parameters , , and , into C. Optimalitythe last block. The next theorem shows that the proposed code construction To extract the message and reconstruct the cover, the extrac- is optimal as long as the compression algorithm is optimal.tion process must be performed in a backward manner. To ex- Theorem 2: The proposed codes reach the embedding ca- http://ieeexploreprojects.blogspot.comtract messages from the th block , for , pacity [see eq. (2)] when the compression rate of is equalwe must ﬁrst extract messages from and obtain by de- to entropy, i.e., for .compression. Combining and , we can reconstruct and Proof: As mentioned in Section III-A, the maximum ca-ﬁnd the positions of “0’s” in , according to which we extract a pacity appears at , and thus,subsequence from and compress this subsequence by with we only need to consider the distortion range . When as the parameter to obtain the message hidden in . , (2) can be rewritten as When and are large enough, the distortion of themethod above is just , and by (3) and (5), the corresponding (7)embedding rate can be calculated by On the other hand, when the compression rate of is equal (6) to entropy, the embedding rate [see eq. (6)] of the proposed codes can be rewritten as Now, we use an example with only two blocks to illustratethe embedding and extraction process of the method describedabove. (8) Example 1: As shown in Fig. 4, the ﬁrst cover block con- By the grouping property of entropy , on one hand, wesists of nine “0’s” and one “1,” and thus, . Set the havedistortion constraint , and therefore, the distortion onzero symbols is equal to . With 2/9 as the pa-rameter of the decompression algorithm, assume that the ﬁrst 7bits of the message are decompressed into a 9-bit sequence . (9)By replacing “0’s” in with , we generate the ﬁrst markedblock . Denote the index set of “1’s” in by Ind , and thus,Ind , according to which we extract bits from and, on the other hand, we haveand get . The sequence is com-pressed to Comp and then embedded into the second block. To reconstruct the cover block and extract messages from themarked block , we ﬁrst count the number of “1’s” in , that (10)is, equal to 3. Second, we extract messages from the second
2996 IEEE TRANSACTIONS ON IMAGE PROCESSING, VOL. 21, NO. 6, JUNE 2012 Subtracting (8) from (7), we have Fig. 5. Structure of the last marked block. the value of . First, take the last bits from the -bit cover and calculate the ratio of “0’s” in these bits, which is de- noted by . Second, by using , we modify the lower bound of the length of the last block as (16) (11) and modify the number of -bit blocks asand thus, we obtain the theorem. Herein, the third equality fol-lows from (9) and (10). (17) IV. IMPLEMENTATION ISSUES AND PERFORMANCE Thus, the length of the last block is given by COMPARISON (18)A. Overhead in the Last Block In this paper, we propose the AAC  as the compression To extract messages exactly, the recipient should know thealgorithm and the decompression algorithm of AAC as the em- length of previous blocks and the parameters , , andbedding code, which can approximately reach the entropy. needed by the compression/decompression algorithm. Block In practice, we should set a proper length for the last block. length can be ﬁxed in advance by the sender and the recip-Denote the estimated length of the last block by . After ient. Thus, the overhead consists of , , and . In practice, http://ieeexploreprojects.blogspot.com decimal for each parameter, and thus,compression, the left room in the last block is about it is enough to take three bits, in which we will embed not only the informa- 30 bits are enough for the overhead, i.e., . We embedtion for reconstructing the second last block but also some over- the overhead into the end of the last block. The structure of thehead information. On one hand, to reconstruct the second last last block is shown in Fig. 5.block, we need, at most, bits because the number of “1’s” When extracting messages from the -bit marked sequence,in is not more than . On the other hand, the over- the recipient ﬁrst reads the parameters , , and from thehead consists of some parameters necessary to the recipient, the last 30 bits of the sequence and then computes by (4). Further-length of which is denoted by . Thus, the estimated length more, the recipient obtains by (13) (14) (15) (16) (17) (18)of the last block is enough, if and determines the start point of the last block and then reads bits successively and decompresses them with as the param- (12) eter. When the length of the decompressed sequence is equal to , stop the process of decompression because the last cover block has been obtained. Continue reading bits from thewhich implies that the lower bound of the length of the last block last marked block and decompress them with as the param-is eter until the length of the decompressed sequence is equal to the number of “1’s” in the second last marked block . (13) This decompressed sequence is just , which will be used to reconstruct the second last cover block . Next, withTherefore, for a cover sequence of length , the estimated as the parameter, the extraction process, as described innumber of -bit blocks, i.e., , is equal to Section III-B, will be continued until the ﬁrst marked block. (14) B. Determining the Parameter In practice, when we need to embed an -bit message intoThus, we get the estimated length of the last block as follows: an -bit cover, we should determine the minimal distortion as the parameter for realizing the embedding rate . (15) We ﬁrst calculate the length of the last block by (13) (14) (15) (16) (17) (18) and get the modiﬁed embedding rate Note that the estimated length may be not enough in . Theorem 2 implies that the rate–distor-practice when the ratio of “0’s” in the last block is far from , tion bound (2) can be used to estimate the embedding rate of thethat is, the overall ratio of “0’s.” Therefore, we should modify proposed codes when the last block is neglected. Therefore, we
ZHANG et al.: IMPROVING VARIOUS RDH SCHEMES VIA OPTIMAL CODES FOR BINARY COVERS 2997 Fig. 6. Comparison of embedding rate versus distortion between the proposed codes and codes in –. (a) . (b) .use the reverse function of (2) to estimate the needed parameter the codes proposed in  are close to the maximum capacity , that is for , they need larger distortion than . V. APPLICATIONS IN TYPE-I SCHEMES (19) The coding method above can be directly applied to data hiding schemes that belong to Type I, such as those in –.which will be embedded into the tail of the cover, as shown in Next, we use the proposed codes to improve RDH schemes forFig. 5. Note that the obtained by (19) is not distortion on the spatial, JPEG, and binary images, respectively.original -bit cover but on its ﬁrst bits. A. Improving the RS Scheme for Spatial Images http://ieeexploreprojects.blogspot.comC. Performance Comparison The RS method  is proposed for spatial images by con- structing compressible features based on texture complexity. In this paper, we propose the decompression algorithm of the Assume the covers are 8-bit gray scale images. The image is ﬁrstAAC  as the embedding algorithm, whereas in our previous divided into small groups, e.g., pixels per group. A permuta-paper , we used the improved reverse zero-run length (RZL) tion is used to ﬂip the gray values, the amplitude of which iscoding  as the embedding algorithm. In fact, the improved controlled by a positive integer . For instance, when ,RZL can be viewed as a modiﬁed version of the decompression the ﬂipping function is as follows:algorithm of run-length coding. When we compare these twomethods, the AAC is used as the compression algorithm in both (20)cases. We also compare these two methods with the codes proposed For a pixel group , the permutation on is de-in  and . In the original recursive construction , ﬁned as . A distinguishing func-Kalker and Willems used Hamming matrix embedding  tion is used to detect the changing direction of the variationas the nonreversible data embedding code, by which they can of the group. Thusembed bits of message into cover bits with, at most,one modiﬁcation. The Hamming codes modify “0’s” and “1’s” (21)with equal probability. Maas et al.  improved the originalrecursive construction by adjusting Hamming code to changemore “0’s” than “1’s” for the case . By using the functions and , the pixel group can be deﬁned The simulation results of these coding methods are compared as regular , singular , or unusable , such thatfor and . The simulation results are obtained byembedding random messages into a -bit cover. In the ex-periments, we set the length of cover blocks for theproposed method and the RZL-based method in . As shown (22)in Fig. 6, the RZL-based method is only somewhat better thanthe proposed method at small embedding rates for , For typical pictures, adding some noise will lead to an in-but it generates codes with only sparse embedding rates and crease in the variation; hence, we expect a bias between thecannot reach the maximum capacity for . The proposed number of regular groups and the number of singular groups. Bymethod generates codes with continuous embedding rates and assigning a “0” to a regular group and a “1” to a singular group,reaches the maximum capacity at distortion . Although we can generate a binary cover sequence satisfying .
2998 IEEE TRANSACTIONS ON IMAGE PROCESSING, VOL. 21, NO. 6, JUNE 2012 Fig. 7. Test images sized 512 512. (a) Lenna.pgm. (b) Baboom.pgm. (c) Boat.pgm. (d) Barbara.pgm. (e) Goldrill.pgm. (f) Peppers.pgm. TABLE I PATTERNS EXTRACTED FROM TEST IMAGESFlipping between “0” and “1” can be realized by applying to TABLE IIthe corresponding pixel group. NUMBER OF MODIFICATIONS FOR DIFFERENT LENGTHS OF MESSAGES EMBEDDED BY THE PS METHOD AND THE IMPROVED PS METHOD Usually, larger amplitude implies larger capacity, but it alsoimplies larger embedding distortion. In our experiments, we set from 1 to 4, and the group size . For each value of ,we embed messages with the original RS method and the pro-posed codes into six 8-bit gray scale images sized 512 512 (see Fig. 7). We observe that the ratio of “0’s” in the RSsequence varied from 0.54 to 0.87. In our coding method, weembed messages with the maximum embedding rate, i.e., taking as the parameter. As shown in Fig. 8, the pro-posed codes increase the peak signal-to-noise ratios (PSNRs)for various kinds of test images. Herein, the embedding rate is http://ieeexploreprojects.blogspot.comdeﬁned as bits carried by per pixel (bpp).B. Improving the Scheme for JPEG Images In this subsection, we apply the codes to the reversible em-bedding scheme for JPEG images proposed by Firdrich and In the image differencing , the symbol “1’s” indicate theGoljan . In the method in , quantized DCT coefﬁcients that edges of the original image , around which modiﬁcations areare equal to 0 and 1 at middle or high frequency are selected to usually insensible. Scan the image from left to right and fromform a compressible binary sequence. In our experiments, the top to bottom, and divide it into disjoint blocks containing fourtest images are generated by compressing test images in Fig. 7 pixels. Search all these 4-bit patterns to ﬁnd a pair of patterns,into a JPEG format with quality factor 80. We construct the bi- such that there is a large gap between their occurrence frequen-nary cover by extract 0–1 coefﬁcients from 11 positions, such cies. Denote the pattern with large numbers by PM and the pat-as (3, 3), (2, 4), (4, 2), (1, 5), (5, 1), (3, 4), (4, 3), (2, 5), (5, 2), tern with small numbers by PF. By assigning “0” to PM and(1, 6), and (6, 1), from every 8 8 block of quantized DCT “1” to PF, we just get a compressible binary cover. To keep vi-coefﬁcients. Random messages are embedded into the binary sual quality, neither PM nor PF can be all-zero vectors, and thecover by using Fridrich and Goljan’s method  and the pro- number of modiﬁcations for PS should be as small as possible.posed codes with several kinds of embedding rates. As shown In the PS method, a location map is used to record the positionsin Fig. 9, the proposed codes can improve the method in  by of PFs, and then, the message bits combining with the locationincreasing PSNRs from 1 to 4 dB. map are embedded into the PM–PF (0–1) sequence. Modiﬁca-C. Improving PS Scheme for Binary Images tions are realized by substitution between patterns PM and PF. Denote the number of PFs by , and the location map will As another example of applications, we use the proposed cost bits of capacity. Therefore, the number of PFscodes to improve the pattern substitution (PS) method for RDH must be very small.in binary images . Denote an binary image by , such We improve the PS method by applying the proposed codesthat . When using as to embed messages into the PM–PF sequence with ﬁve kindsthe cover image, the PS method ﬁrst computes the image differ- of message lengths, which does not need a location map. Be-encing by EXCLUSIVE-OR operation between neighbor pixels cause the cover sequence is short, we take the length of the coverof , such that blocks in the experiments. For each 256 256 test if and images in Fig. 10, the selected pattern pairs with frequencies are if and (23) listed in Table I. Note that, in one PS, we need to ﬂip one pixel otherwise. in “Butterﬂy” and two pixels in other images according to the
ZHANG et al.: IMPROVING VARIOUS RDH SCHEMES VIA OPTIMAL CODES FOR BINARY COVERS 2999 http://ieeexploreprojects.blogspot.com Fig. 8. Experimental results on improving the RS method. (a) Lenna. (b) Baboom. (c) Boat. (d) Barbara. (e) Goldrill. (f) Peppers.selected patterns. Table II shows the proposed codes can signif- residuals of the image. We take Luo et al.’s scheme , whichicantly reduce the number of modiﬁcations for each test image is one of the leading schemes, as an example to show how theat various message lengths, where the symbol “ ” means the Type-II schemes can be improved by the proposed codes. Luocapacity that cannot be reached by the PS method. et al.’s method reversibly embeds data by shifting the histogram of interpolation errors of the cover image. Note that DE can be VI. IMPROVING TYPE-II SCHEMES viewed as a special case of HS because DE, in fact, shifts the The RS scheme for spatial images  discussed above histogram by varying step lengths. Therefore, the DE-basedbelongs to Type I, which can be only used for the cases of scheme can be improved by a similar method as follows.small embedding rates. To increase embedding rates, almost Now, we brieﬂy introduce Luo et al.’s scheme. Assume theall state-of-the-art schemes for spatial images use mechanisms original cover is a image , such that .belonging to Type II, which usually apply DE or HS to the First extract a low-resolution image by down sampling from
3000 IEEE TRANSACTIONS ON IMAGE PROCESSING, VOL. 21, NO. 6, JUNE 2012 http://ieeexploreprojects.blogspot.com Fig. 9. Experimental results on improving the scheme for JPEG images. (a) Lenna. (b) Baboom. (c) Boat. (d) Barbara. (e) Goldrill. (f) Peppers. pixels of surrounding it. Second, the missing pixels and can be interpolated with the help of the already recovered pixels . For each pixel , denote the corresponding interpolation value by , and then, the interpo- lation error is obtained via . Therefore, in the ﬁrst step, we get interpolation errors of a quarter of pixels in ; in the second interpolation step, we get interpolation errors of otherFig. 10. Test binary images sized 256 256. (a) English text. (b) Pig. (c) Boy.(d) Butterﬂy. half of pixels. Messages are embedded into these interpolation error , such that . By interpolation in sequences. After that, we can furthermore calculate the in- , we can get an estimated version of , which needs two steps. terpolation errors of the rest quarter of pixels, i.e., all pixelsFirst, the missing pixel is interpolated by using the four of the low-resolution image , in which the interpolations
ZHANG et al.: IMPROVING VARIOUS RDH SCHEMES VIA OPTIMAL CODES FOR BINARY COVERS 3001 Fig. 11. Illustration of HS. (a) Luo et al.’s method. (b) The ﬁrst proposed method. (c) The second proposed method.are estimated by some pixels that may have been modiﬁed. As illustrated in the example [see Fig. 11(b)], ﬁrst, bins fromIn summary, to utilize all pixels, three interpolation error se- 2 to 5 are shifted toward right, and some message bits are em-quences are constructed for embedding messages, and message bedded into positions of “1’s.” After that, about half of “1’s”extraction and cover reconstruction are executed in a reverse are changed to “2’s.” Second, more message bits are embedded http://ieeexploreprojects.blogspot.comorder. into the binary sequence composed of “0’s” and “1’s.” At the On each interpolation error sequence, some messages can be receiver side, ﬁrst, extract messages from the 0–1 sequence andembedded by HS. To do that, divide the histogram of interpo- reconstruct the 0–1 sequence. Second, extract messages fromlation errors into two parts, i.e., the left part and the right part, the sequence composed of “1’s” and “2’s,” and then, change alland search for the highest point in each part, denoted by “2’s” to “1’s.” Finally, subtract 1 from all error values equal toand , respectively. For typical images, and 3, 4, 5, and 6 and obtain the original cover. . Furthermore, search for the zero point in each part, In the second method, we shift the histogram by step lengthdenoted by and . To embed messages into positions 2. First, shift all bins between and towardwith an interpolation error that is equal to , shift all error right with two steps, that is, the values , such thatvalues between and with one step toward right, , are modiﬁed to , and thus, the binsand then, we can represent the bit “0” with and the bit “1” and are emptied. Therefore, we can embed messageswith . A simple example is shown in Fig. 11(a), in which by assigning “0” to and and assigning “1” and . By shifting bins between 1 and 5 toward to and . The message bits are embedded inright, bin 1 is emptied. After embedding encrypted messages at the positions of and . After that, about halfpositions of “0’s,” on average, half of “0’s” are changed to “1’s.” of ’s are changed to ’s, and about half ofThe HS is realized by adding 1 to all corresponding pixel values. ’s are changed to ’s. Second, by assigningThe embedding process in the left part is similar, except that the “0” to and and assigning “1” to andshifting direction is left, and the shift is realized by subtracting , we get a binary cover, into which more messages are1 from the corresponding pixel values. embedded by using the proposed codes. When “0” needs to be To improve Luo et al.’s scheme by binary codes, we propose modiﬁed, we change to or change totwo novel methods for HS and, also, use merely the right part .of the histogram as examples to describe these methods. Both The example of the second method is shown in Fig. 11(c).methods consist of two embedding steps. In the ﬁrst method, we First, bins 4 and 5 are shifted toward right by two steps, andﬁrst shift all bins between and toward right with then, messages are embedded into positions of 2 and 3, whichone step, and then, the bin is emptied. Therefore, we can shifts about half of “2’s” to “4’s” and about half of “3’s” toembed messages by assigning “0” to and “1” to . “5’s.” Second, embed messages into a binary sequence with theAfter that, about half of are changed to . Second, proposed codes, where the binary sequence is constructed byby assigning “0” to and “1” to , we get a binary using the pair (0, 2) and the pair (1, 3).cover, into which more messages can be embedded using the In Luo et al.’s scheme, an overhead is also needed to com-proposed codes. municate the message length and the parameters, such as ,
3002 IEEE TRANSACTIONS ON IMAGE PROCESSING, VOL. 21, NO. 6, JUNE 2012 http://ieeexploreprojects.blogspot.com Fig. 12. Experimental results on improving Luo et al.’s scheme. (a) Lenna. (b) Baboom. (c) Boat. (d) Barbara. (e) Goldrill. (f) Peppers. , , and , and to solve the problem of overﬂow (un- and other embedding rates are obtained by iteratively using thederﬂow) caused by modiﬁcations. We refer readers for more de- second HS method, and, in both methods, the proposed codestails to the literature . are executed by setting parameter . The six test To get larger embedding rates, Luo et al. repeated their images in Fig. 7 are used for comparisons. As shown in Fig. 12,scheme in an iterative manner, that is, ﬁrst, embed some mes- PSNRs are increased by the proposed scheme, and, in general,sages into the cover image to get a marked image, and then, the the improvement is more signiﬁcant for smooth images at largermarked image is used as a new cover to embed more messages. embedding rates.Because the embedding process is reversible in every turn, theoriginal cover can be restored in a reverse order. VII. CONCLUSION In our experiments, we expand embedding rates of Luo et Most state-of-the-art RDH schemes use a strategy with sep-al.’s scheme in an iterative manner. For the proposed scheme, arate processes of feature compression and message embed-the smallest embedding rate is obtained by the ﬁrst HS method, ding. Kalker and Willems  noted that a higher embedding
ZHANG et al.: IMPROVING VARIOUS RDH SCHEMES VIA OPTIMAL CODES FOR BINARY COVERS 3003rate under a given distortion constraint may be achieved by  P. Tsai, Y. C. Hu, and H. L. Yeh, “Reversible image hiding schemeusing joint encoding of feature compression and message em- using predictive coding and histogram shifting,” Signal Process., vol. 89, no. 6, pp. 1129–1143, Jun. 2009.bedding and, thus, proposed the recursive code construction. In  L. X. Luo, Z. Y. Chen, M. Chen, X. Zeng, and Z. Xiong, “Reversiblethis paper, we improve the recursive construction by using not image watermarking using interpolation technique,” IEEE Trans. Inf.only the joint encoding above but also a joint decoding of fea- Forensics Security, vol. 5, no. 1, pp. 187–193, Mar. 2010.  T. Kalker and F. M. Willems, “Capacity bounds and code constructionsture decompression and message extraction. The proposed code for reversible data-hiding,” in Proc. 14th Int. Conf. DSP, 2002, pp.construction signiﬁcantly outperforms previous codes ,  71–76.and is proved to be optimal when the compression algorithm  D. Maas, T. Kalker, and F. M. Willems, “A code construction for recur- sive reversible data-hiding,” in Proc. Multimedia Security Workshopreaches entropy. ACM Multimedia, Juan-les-Pins, France, Dec. 6, 2002. The current codes are designed for binary covers and, thus,  W. Zhang, B. Chen, and N. Yu, “Capacity-approaching codes for re-can signiﬁcantly improve Type-I schemes based on binary fea- versible data hiding,” in Proc 13th IH, 2011, vol. 6958, LNCS, pp. 255–269, Springer-Verlag.ture sequences. By slightly modifying the HS manner, we found  T. M. Cover and J. A. Thomas, Elements of Information Theory. Newthat the proposed binary codes can be also partly applied to York: Wiley, 1991.Type-II schemes and improve their performance, but the im-  K. Sayood, Introduction to Data Compression. San Francisco, CA: Morgan Kaufmann, 1996, pp. 87–94.provement is not so signiﬁcant as that for Type-I schemes. Note  R. Crandall, Some Notes on Steganography 1998 [Online]. Available:that we only use two simple methods to modify HS, and there- http://os.inf.tu-dresden.de/westfeld/crandall.pdf, Posted on steganog-fore, one interesting problem is whether there exists other more raphy mailing list  Miscellaneous gray level images [Online]. Available: http://decsai.effective modifying methods or not. Another problem is how to ugr.es/cvg/dbimagenes/g512.phpdesign recursive codes for gray scale covers. We will pay ourattention to these problems in further works. Weiming Zhang received the M.S. and Ph.D. de- grees from the Zhengzhou Information Science and REFERENCES Technology Institute, Zhengzhou, China, in 2002 and 2005, respectively.  J. Fridrich and M. Goljan, “Lossless data embedding for all image for- Currently, he is an Associate Professor with the mats,” in Proc. EI SPIE, Security Watermarking Multimedia Contents School of Information Science and Technology, Uni- IV, San Jose, CA, 2002, vol. 4675, pp. 572–583. versity of Science and Technology of China, Hefei,  M. U. Celik, G. Sharma, A. M. Tekalp, and E. Saber, “Lossless gen- China. His research interests include information eralized-LSB data embedding,” IEEE Trans. Image Process., vol. 14, hiding and cryptography. no. 2, pp. 253–266, Feb. 2005.  S. Li and A. C. Kot, “Privacy protection of ﬁngerprint database using lossless data hiding,” in Proc. IEEE Int. Conf. Multimedia Expo., 2010, pp. 1293–1298. http://ieeexploreprojects.blogspot.com  Y.-A. Ho, Y.-K. Chan, H.-C. Wu, and Y.-P. Chu, “High-capacity reversible data hiding in binary images using pattern substitution,” Biao Chen received the Bachelor’s degree from Comput. Standards Interfaces, vol. 31, no. 4, pp. 787–794, Jun. 2009. Hefei University of Technology, Hefei, China, in  R. Du and J. Fridrich, “Lossless authentication of MPEG-2 video,” in 2010. He is currently working toward the Master’s Proc. IEEE Int. Conf. Image Process., 2002, vol. 2, pp. II-893–II-896. degree with the Department of Electrical Engi-  K. Wong, K. Tanaka, K. Takagi, and Y. Nakajima, “Complete video neering and Information Science, University of quality-preserving data hiding,” IEEE Trans. Circuits Syst. Video Science and Technology of China, Hefei. Technol., vol. 19, no. 10, pp. 1499–1512, Oct. 2009. His research interests include data hiding and  J. Tian, “Reversible data embedding using a difference expansion,” image analysis. IEEE Trans. Circuits Syst. Video Technol., vol. 13, no. 8, pp. 890–896, Aug. 2003.  A. M. Alattar, “Reversible watermark using difference expansion of a generalized integer transform,” IEEE Trans. Image Process., vol. 13, no. 8, pp. 1147–1156, Aug. 2004.  H.-J. Kim, V. Sachnev, Y. Q. Shi, J. Nam, and H.-G. Choo, “A novel difference expansion transform for reversible data embedding,” IEEE Nenghai Yu received the B.S. degree from Nanjing Trans. Inf. Forensic Security, vol. 3, no. 3, pp. 456–465, Sep. 2008. University of Posts and Telecommunications, Nan-  D. M. Thodi and J. J. Rodriguez, “Expansion embedding techniques jing, China, in 1987; the M.E. degree from Tsinghua for reversible watermarking,” IEEE Trans. Image Process, vol. 16, no. University, Beijing, China, in 1992; and the Ph.D. de- 3, pp. 721–730, Mar. 2007. gree from the University of Science and Technology  Y. Hu, H.-K. Lee, and J. Li, “DE-based reversible data hiding with of China, Hefei, China, in 2004. improved overﬂow location map,” IEEE Trans. Circuits Syst. Video He is currently a Professor with the University of Technol., vol. 19, no. 2, pp. 250–260, Feb. 2009. Science and Technology of China. His research inter-  Z. Ni, Y. Q. Shi, N. Ansari, and S. Wei, “Reversible data hiding,” IEEE ests include multimedia security, multimedia infor- Trans. Circuits Syst. Video Technol., vol. 16, no. 3, pp. 354–362, Mar. mation retrieval, video processing, and information 2006. hiding.