15
A reversible compression code hiding using SOC and SMVQ indices Chin-Chen Chang a , Thai Son Nguyen a,c , Chia-Chen Lin b,a Department of Information Engineering and Computer Science, Feng Chia University, Taichung 40724, Taiwan, ROC b Department of Computer Science and Information Management, Providence University, Taichung 43301, Taiwan, ROC c Department of Information Technology, Tra Vinh University, Tra Vinh Province, Viet Nam article info Article history: Received 13 June 2013 Received in revised form 7 December 2014 Accepted 9 December 2014 Available online 17 December 2014 Keywords: Data hiding Image compression Search order coding (SOC) Steganography Side match vector quantization (SMVQ) abstract Reversible data hiding recovers the original images without distortion after the secret data are extracted, so it has received considerable attention among researchers in recent years. This work presents a novel reversible data hiding scheme based on the search-order coding (SOC) algorithm and side match vector quantization (SMVQ). The compression perfor- mance is improved by encoding the index with either SOC or SMVQ during the data embedding phase. The index of an image block also is encoded by using a few bits, thus improving the compression rate. During the extracting phase, the receiver uses simple steps to extract the secret data and reconstruct the original SMVQ compression code. Our experimental results indicated that, using a size 64 state codebook, the average com- pression rate with our scheme was 0.41 bpp, which is much better than the compression rates of Chang et al.’s, Yang and Lin’s, and Yang et al.’s schemes, i.e., 0.50, 0.54, and 0.56 bpp, respectively. Furthermore, in addition to reducing the time required for the embedding and extracting phases, the proposed scheme yields a higher embedding rate than the schemes of Yang and Lin and Yang et al. Ó 2014 Elsevier Inc. All rights reserved. 1. Introduction Rapid advances in multimedia and computer networks have resulted in the widespread use of digital media. Various data compression technologies have been developed to achieve efficient and robust media transmission over the Internet. Once digital media are transmitted over a popular channel, such as the Internet, they are exposed to malicious attackers. There- fore, protecting transmitted digital media from either illegal modification or eavesdropping has become a priority. Several schemes have been developed to provide the desired protection, and they can be classified into encryption [5,20] and data hiding [1–4,6–9,12–14,17–19,21–25] approaches. Encryption converts the data into ciphertext, a meaningless data format, by using conventional cryptographic algorithms, such as DES [5] and RSA [20]. Then, the ciphertext is sent to a receiver over a public channel, such as the Internet. Once the ciphertext has been received, it is decrypted using a decryption key and a decryption algorithm. However, the meaningless form of the ciphertext may actually attract malicious attackers. In contrast, data hiding embeds secret information into meaningful cover media, such as images, audio, videos, and texts. When an image serves as the cover media, the visual quality of the stego-image is a major concern when evaluating http://dx.doi.org/10.1016/j.ins.2014.12.028 0020-0255/Ó 2014 Elsevier Inc. All rights reserved. Corresponding author at: Department of Computer Science and Information Management, Providence University, No. 200 Chung-chi Rd., Taichung 43301, Taiwan, ROC. Tel.: +886 4 26328001x18108; fax: +886 4 24060438. E-mail addresses: [email protected] (C.-C. Chang), [email protected] (T.S. Nguyen), [email protected] (C.-C. Lin). Information Sciences 300 (2015) 85–99 Contents lists available at ScienceDirect Information Sciences journal homepage: www.elsevier.com/locate/ins

A reversible compression code hiding using SOC and SMVQ ...msn.iecs.fcu.edu.tw/~ccc/profile/publish/ij_paper... · Also in 2013, Qin et al. [19] designed a new joint data-hiding and

  • Upload
    others

  • View
    2

  • Download
    0

Embed Size (px)

Citation preview

Page 1: A reversible compression code hiding using SOC and SMVQ ...msn.iecs.fcu.edu.tw/~ccc/profile/publish/ij_paper... · Also in 2013, Qin et al. [19] designed a new joint data-hiding and

Information Sciences 300 (2015) 85–99

Contents lists available at ScienceDirect

Information Sciences

journal homepage: www.elsevier .com/locate / ins

A reversible compression code hiding using SOC and SMVQindices

http://dx.doi.org/10.1016/j.ins.2014.12.0280020-0255/� 2014 Elsevier Inc. All rights reserved.

⇑ Corresponding author at: Department of Computer Science and Information Management, Providence University, No. 200 Chung-chi Rd.,43301, Taiwan, ROC. Tel.: +886 4 26328001x18108; fax: +886 4 24060438.

E-mail addresses: [email protected] (C.-C. Chang), [email protected] (T.S. Nguyen), [email protected] (C.-C. Lin).

Chin-Chen Chang a, Thai Son Nguyen a,c, Chia-Chen Lin b,⇑a Department of Information Engineering and Computer Science, Feng Chia University, Taichung 40724, Taiwan, ROCb Department of Computer Science and Information Management, Providence University, Taichung 43301, Taiwan, ROCc Department of Information Technology, Tra Vinh University, Tra Vinh Province, Viet Nam

a r t i c l e i n f o

Article history:Received 13 June 2013Received in revised form 7 December 2014Accepted 9 December 2014Available online 17 December 2014

Keywords:Data hidingImage compressionSearch order coding (SOC)SteganographySide match vector quantization (SMVQ)

a b s t r a c t

Reversible data hiding recovers the original images without distortion after the secret dataare extracted, so it has received considerable attention among researchers in recent years.This work presents a novel reversible data hiding scheme based on the search-order coding(SOC) algorithm and side match vector quantization (SMVQ). The compression perfor-mance is improved by encoding the index with either SOC or SMVQ during the dataembedding phase. The index of an image block also is encoded by using a few bits, thusimproving the compression rate. During the extracting phase, the receiver uses simplesteps to extract the secret data and reconstruct the original SMVQ compression code.Our experimental results indicated that, using a size 64 state codebook, the average com-pression rate with our scheme was 0.41 bpp, which is much better than the compressionrates of Chang et al.’s, Yang and Lin’s, and Yang et al.’s schemes, i.e., 0.50, 0.54, and0.56 bpp, respectively. Furthermore, in addition to reducing the time required for theembedding and extracting phases, the proposed scheme yields a higher embedding ratethan the schemes of Yang and Lin and Yang et al.

� 2014 Elsevier Inc. All rights reserved.

1. Introduction

Rapid advances in multimedia and computer networks have resulted in the widespread use of digital media. Various datacompression technologies have been developed to achieve efficient and robust media transmission over the Internet. Oncedigital media are transmitted over a popular channel, such as the Internet, they are exposed to malicious attackers. There-fore, protecting transmitted digital media from either illegal modification or eavesdropping has become a priority. Severalschemes have been developed to provide the desired protection, and they can be classified into encryption [5,20] and datahiding [1–4,6–9,12–14,17–19,21–25] approaches. Encryption converts the data into ciphertext, a meaningless data format,by using conventional cryptographic algorithms, such as DES [5] and RSA [20]. Then, the ciphertext is sent to a receiver over apublic channel, such as the Internet. Once the ciphertext has been received, it is decrypted using a decryption key and adecryption algorithm. However, the meaningless form of the ciphertext may actually attract malicious attackers.

In contrast, data hiding embeds secret information into meaningful cover media, such as images, audio, videos, andtexts. When an image serves as the cover media, the visual quality of the stego-image is a major concern when evaluating

Taichung

Page 2: A reversible compression code hiding using SOC and SMVQ ...msn.iecs.fcu.edu.tw/~ccc/profile/publish/ij_paper... · Also in 2013, Qin et al. [19] designed a new joint data-hiding and

86 C.-C. Chang et al. / Information Sciences 300 (2015) 85–99

the performance of a data hiding scheme. Thus, a stego-image should have as close to the same visual quality as theoriginal cover media as possible. In this way, attackers will not be suspicious of a stego-image that carries a secretmessage.

Data hiding has received considerable interest in the last few years due to this feature. Many related schemes [2,3,13,22]have been developed to embed secret data into cover images without attracting the attention of malicious attackers. How-ever, most data hiding schemes damage the cover image when the secret data are embedded. Recovery of the original coverimage after the secret information has been extracted is the most important issue in some specialized areas, such as the mil-itary and medical fields. Therefore, reversible data hiding [1,6,7,9,14,17,21,24,25] has attracted much attention over the pastfive years from scholars attempting to find ways to recover cover images losslessly. Barton developed the first reversible datahiding scheme in 1997 [1]. That scheme first compresses the bitstring of a cover image and then embeds both the com-pressed information and the payload, i.e., a secret message, into the cover image. During the extracting phase, the bitstringis decrypted and used to extract the hidden information and reconstruct the original bit blocks of the cover image. In 2002,Xuan et al. [24] developed a high-capacity, distortion-free data hiding scheme based on the integer wavelet domain. Xuanet al.’s scheme uses histogram modification to embed secret data in the middle frequency of the wavelet domain of a coverimage. Also in 2002, Jo and Kim developed a digital image watermarking scheme [13] based on vector quantization (VQ) toenrich the cover media. In Jo and Kim’s scheme, the codebook is divided into three groups, i.e., G0, G1, and G�1, to embed onebit for each block. The rule for the grouping partition in their scheme is that each pair of the most similar codewords isselected from the main codebook and classified into groups G0 and G1, respectively. The pair of codewords is consideredto be the most similar when the Euclidian distance of the two codewords is smaller than a threshold that is selected inadvance. Then, the remaining unmatched codewords are assigned into group G�1. Based on Jo and Kim’s hiding strategy,the codeword in group G0 is used when secret bit 0 is hidden, and the codeword in group G1 is used when secret bit 1 ishidden. The codewords in Group G�1 do not carry secret data because they cannot make pairs. The embedding and extractingprocesses of Jo and Kim’s scheme are quite straightforward and easy to perform. However, the embedding capacity of theirscheme is low, and it is not reversible. In 2004, Chang et al. [2] proposed reversible data hiding based on VQ and SOC com-pression. Their scheme achieves a better compression rate than VQ, and it provides a stego-image that has visual quality sim-ilar to that of VQ; in addition, its compression and embedding rates are superior to those of Jo and Kim’s scheme. In 2005,Chang and Wu [3] also developed a steganography scheme based on combining SMVQ and VQ compression. In their scheme,a 1-bit indicator is required to denote the block that is encoded by SMVQ or by VQ. Also in 2005, Yang et al. developed areversible watermarking scheme that uses modified VQ [25]. During the encoding phase, neighboring blocks are used toencode the current block. Their scheme still requires indicator bits, and the traditional VQ is modified to achieve the revers-ible property. The scheme does have a good compression rate. However, the visual quality of the stego-image and the aver-age embedding capacity provided by Yang et al.’s scheme [25] and by Chang and Wu’s scheme [3] cannot compete with thoseof Chang et al.’s scheme [2]. In 2009, Yang and Lin [26] proposed a new VQ-based reversible data hiding scheme. In thisscheme, the VQ codebook is sorted and divided into 2B clusters, where B is the number of secret bits embedded into eachVQ index. Half of these clusters are used to embed secret data. However, the average compression rate and average embed-ding rate of their scheme are still approximately 0.54 bpp and 0.88 bpi, respectively. In 2010, a new reversible watermarkingscheme was proposed by Hwang et al. [12]. The scheme used optimal histogram pair shifting based on prediction and sort-ing, and it can achieve high embedding capacity while maintaining low distortion. However, the scheme also requires a loca-tion map. In 2011, Yang et al. [27] introduced a novel reversible data hiding method in the VQ-compressed image thatapplies the concepts of side match and hit pattern to achieve reversibility. However, the performance of their scheme issomewhat lower than that of Yang and Lin’s scheme when the average compression rate and embedding rate are approxi-mately 0.56 bpp and 0.69 bpi, respectively. In 2013, Pan et al. [18] proposed a low bit-rate information hiding method basedon SOC techniques. In this scheme, a significant bit rate is achieved and reduced to achieve better compression-rate perfor-mance (0.46 bpp). However, the average embedding rate of Pan et al.’s scheme is lower than that of Yang and Lin’s scheme.Also in 2013, Qin et al. [19] designed a new joint data-hiding and compression scheme that combined SMVQ and imageinpainting to obtain both low compression rate and good embedding capacity. Most compression rates provided by Qinet al.’s scheme are less than 0.5 bpp, and the embedding rate is approximately 0.5 bpi. It is possible to further improvethe embedding rate and the compression rate so that the size of the transmitted compression codes can be reduced andthe transmission speed can be improved within the Internet’s limited bandwidth. In this paper, we propose a reversibledata-hiding scheme based on SMVQ and SOC. In our proposed scheme, the secret data are embedded into the SMVQ com-pressed codes by combining SMVQ and SOC to increase the compression rate while maintaining a competitive hiding capac-ity. Our proposed scheme retains the reversibility property, and the original SMVQ compression codes can be restoredwithout distortion after the secret information is extracted. Therefore, the original SMVQ compression codes can be usedrepeatedly to transmit other secret messages. The compression rate of our scheme is better than that of many other schemes[2,3,19,26,27], and it also offers a better embedding rate than other schemes [3,19,26,27]. Although Chang et al.’s scheme hasa slightly higher embedding rate [2], our scheme requires less embedding and extracting time than their scheme.

The rest of the paper is organized as follows. Section 2 contains a review of related work. Section 3 introduces the pro-posed reversible data hiding scheme, including the embedding and extracting phases. Section 4 summarizes the experimen-tal results and demonstrates the superiority of the proposed scheme. Our conclusions and recommendations for futureresearch are presented in Section 5.

Page 3: A reversible compression code hiding using SOC and SMVQ ...msn.iecs.fcu.edu.tw/~ccc/profile/publish/ij_paper... · Also in 2013, Qin et al. [19] designed a new joint data-hiding and

C.-C. Chang et al. / Information Sciences 300 (2015) 85–99 87

2. Related work

In this section, we describe the side match vector quantization (SMVQ) and search order coding (SOC) algorithms inSections 2.1 and 2.2, respectively. Section 2.3 introduces Chang et al.’s scheme because it achieves a high embedding capacityand images with high visual quality while maintaining the compression rate of an image at less than 0.5 bpp.

2.1. SMVQ

Due to the limited bandwidth of networks, Gray [10] developed VQ in 1984 to compress an image that was to be trans-mitted. Because VQ is a simple and efficient lossy compression scheme, many successful applications have been achievedusing VQ techniques [8,17]. VQ can be regarded as a mapping function from the k-dimensional space Rk into its finite subsetY = {yi; i = 1, 2, . . . ,N}, where yi is called a codeword, and the set Y is called a codebook that has been generated by the LBGalgorithm [16]. During the VQ encoding phase, an image is first divided into non-overlapped blocks with the sizes of k. Next,the nearest codeword that has the smallest Euclidian distance from the input block is identified in the codebook. Then, thecorresponding index of the nearest codeword is used to replace the original block, and the compression codes of an imagecan be generated. Euclidian distance is defined in Eq. (1).

dðx; yiÞ ¼Xk

j¼1

ðxj � yijÞ2 ð1Þ

where xj is the jth component of the input block x, and yij is the jth component of the codeword yi. During the decoding phase,the receiver must use the same codebook as the sender. The decoder determines the corresponding codewords from code-book Y based on the transmitted indices to reconstruct the blocks of the original image.

In 1992, Kim proposed the use of the side-match vector quantization algorithm, also called SMVQ [15], which is a vari-ation of VQ, to improve the visual quality of a reconstructed image, I0. In SMVQ, first, an image I is divided into non-overlap-ping blocks of n � n pixels. The image block in the first row of image I and the first column of image I, called the seed blocks,must be encoded by using VQ with the main codebook Y = {yi; i = 1, 2, . . . ,N}, where N is the number of codewords in thecodebook. The other blocks are called residual blocks, and they are predicted by using SMVQ with support from the upperand left adjacent blocks. Assume that the upper block U and the left block L are used to predict the current block X. In block X,the pixel value x1 can be forecasted by solving the equation x1 ¼ ðu13 þ l4Þ=2. Other pixels are predicted byx2 ¼ u14; x3 ¼ u15; x4 ¼ u16; x5 ¼ l8; x9 ¼ l12; x13 ¼ l16. Then, a state codebook is generated according to the predicted block X.The state codebook consists of the M codewords that have been selected from the main codebook and that have the leastside-match distortion when compared with the gray areas shown in Fig. 1. Note that M, which is the size of the state code-book, is much smaller than N, the size of the main codebook. Each codeword is chosen from the main codebook Y with theleast side-match distortion when compared with predicted block X. Finally, the current block X is encoded by using VQ withthe state codebook. This process is repeated until all the residual blocks have been encoded. Because only codewords in thestate codebook, not in the main codebook, are searched when encoding the residual blocks, SMVQ offers a better compres-sion rate than VQ because fewer bits are required to encode the residual blocks. Fig. 1 shows an example that provides a clearexplanation. We assume that block X is a current processing block, for which the border vector (BV) is denoted as BV (x1, x2,

Fig. 1. Upper, U, and left, L, blocks used to generate the state codebook.

Page 4: A reversible compression code hiding using SOC and SMVQ ...msn.iecs.fcu.edu.tw/~ccc/profile/publish/ij_paper... · Also in 2013, Qin et al. [19] designed a new joint data-hiding and

88 C.-C. Chang et al. / Information Sciences 300 (2015) 85–99

x3, x4, x5, x9, x13), and the side vector (SV), which is predicted from blocks U and L, as above mentioned, is denoted as SV (s1, s2,s3, s4, s5, s6, s7) = ((u13 + l4)/2, u14, u15, u16, l8, l12, l16), respectively. Then, the squared Euclidean distance shown in Eq. (1) isredefined as Eq. (2) to compute the side-match distortion (SMD) between the predicted pixels of the side vector SV andthe corresponding values of each codeword cw in the main codebook. Notably, the corresponding values of the codewordcw (V1, V2, V3, V4, V5, V9, V13) are indicated as (v1, v2, v3, v4, v5, v6, v7) in Eq. (2).

SMDðX; cwÞ ¼ DðSV ;BVðcwÞÞ ¼X7

i¼1

ðsi � v iÞ ð2Þ

Obviously, SMVQ is superior to VQ in terms of compression performance. Moreover, the visual quality of the recon-structed image is better with SMVQ than with VQ because the visible boundaries are reduced [3]. During SMVQ encoding,it is critical that the first row and first column blocks be encoded accurately, because these blocks are used to predict thefuture blocks as set below. If an error occurs in the above phase, it can propagate throughout the whole image and damagethe quality of the image. A viable solution is to set a threshold to control the image quality of the encoded image duringSMVQ encoding. In the threshold-based SMVQ, an indicator expresses whether the residual block is encoded by VQ or bySMVQ.

2.2. Search-order coding

In 1996, Hsieh and Tsai [11] observed that many neighboring blocks may have the same value in a VQ-generated indextable. Therefore, they proposed the search order coding (SOC) algorithm to further compress the VQ indices of an image [11].The main idea behind SOC is to determine the same index value from the neighboring areas of the currently processed indexaccording to a defined search path. The search path is defined as the sequence of previously-processed indices; these are vis-ited clockwise and outward, as shown in Figs. 2 and 3. In the VQ index table, all indices are processed sequentially in theraster scan order. When implementing SOC coding, the current processing index is considered as the search center. Fromthe search center, the defined search path is used to determine the processed indices that have similar values of the searchcenter. Figs. 2 and 3 show examples of SOC coding and a defined search path, respectively, using two and three bits of searchcode. Fig. 2(b) lists all of the indices in the defined search path of the current search center. Then, the repeated indices areremoved to generate the list of selected indices, as shown in Fig. 2(c). After a selected index is found that matches the cur-rently processed index, the current processed index can be SOC encoded by the corresponding search code, instead of havingto rely on its original VQ index value.

In SOC, all indices to be processed are in the defined search path, and the indices, which are called search points (SPs), aremarked as blocks that already have been processed, as shown in Fig. 2. Otherwise, the indices that have yet to be processedare called non-search points, and these areas are marked as area not in the search, as shown in Fig. 2. In SOC, SPs and thesearch center are compared, and an SOC of the search center is created after a matching SP is found. Otherwise, the searchcenter is encoded by the original index value (OIV). To distinguish an SOC code from an OIV code, a 1-bit indicator is added tothe compression codes so that, for example, ‘‘0’’ indicates an SOC code and ‘‘1’’ indicates a VQ code.

Consider an example of the SOC algorithm with two bits of search code, as shown in Fig. 2. The coordinates of the searchcenter index are (4,4) with a value of 29. The arrows show the defined search path. During the search process, the SPs arecompared sequentially with the search center to determine whether they are the same. Assume that a 2-bit search code wasused in Fig. 2. The search path can only cover four distinct index values, and each distinct index value can be represented asone of (002, . . . ,112). Fig. 2(c) shows that four distinct indices (31, 27, 29, and 30) can be found in the defined search path,

Fig. 2. Example of SOC algorithm with two bits of search code.

Page 5: A reversible compression code hiding using SOC and SMVQ ...msn.iecs.fcu.edu.tw/~ccc/profile/publish/ij_paper... · Also in 2013, Qin et al. [19] designed a new joint data-hiding and

Fig. 3. Example of SOC algorithm with three bits of search code.

C.-C. Chang et al. / Information Sciences 300 (2015) 85–99 89

with the third index having the same value as the search center. Because the search order of the third index is 10 and theindicator for SOC is ‘‘0,’’ the current processing index is encoded as 010. The index (4,4) shown in Fig. 2 is encoded by threebits, i.e., 010, instead of being encoded by the 8 bits of index value 29. The major difference between Figs. 2 and 3 is that thelatter uses a 3-bit search code while performing SOC. Because more bits are used to conduct the search code, the constructedsearch path shown in Fig. 3 is longer than that in Fig. 2.

2.3. Scheme of Chang et al.

In Chang et al.’s scheme [2], the cover image is a grayscale image I sized W � H pixels; the codebook is defined asY ¼ ðy0; y1; . . . ; yn�1Þ, and the secret message is denoted as B ¼ ðb0; b1; . . . ; brÞ; where bj ¼ f0;1g and 0 6 j 6 r. After theembedding process, each index in the index table is encoded by either its SOC value or its original index value (OIV). Ifthe SOC code is used, a secret bit ‘‘0’’ is embedded. Otherwise, a secret bit ‘‘1’’ is embedded. Details of Chang et al.’s algorithmare as follows:

Input: Each block of an image I in raster scan order and secret message B.Output: Compression code C of image I consisting of secret data B.Step 1: Encode cover image I by using a VQ encoder to obtain index table IT.Step 2: Read the VQ index y in index table IT.Step 3: Find the SOC code of y that has a value ranging from 0 to 2n � 2, where n is the number of bits in the SOC search

code.Step 4: If the SOC code is found, read the secret bit bj.Step 4.1: If bj = 1, then y is encoded by indicator ‘‘1’’ and an 8-bit binary representation of OIV (i.e., 1||10111000). Finally,

the compression code of y is concatenated into C.Step 4.2: If bj = 0, then y is encoded by indicator ‘‘0’’ followed by n bits of the SOC code of y (i.e., 0||01). Finally, the

compression code of y is concatenated into C.Step 5: If the SOC code is not found, then read the secret bit bj.Step 5.1: If bj = 1, y is encoded by indicator ‘‘1’’ and concatenated with an 8-bit binary representation of OIV, i.e.,

1||10111000, then the compression code of y is concatenated into C.Step 5.2: If bj = 0, y is encoded by indicator ‘‘0’’, it is followed with the n-bit binary information of 2n � 1 and

concatenated with an 8-bit binary representation of OIV, i.e., 0||11||10111000). Finally, the compression code of y isconcatenated into C.

Step 6: Repeat Steps 2 through 5 until all indices in index table IT have been processed.

Page 6: A reversible compression code hiding using SOC and SMVQ ...msn.iecs.fcu.edu.tw/~ccc/profile/publish/ij_paper... · Also in 2013, Qin et al. [19] designed a new joint data-hiding and

1 2 3

1 18

(OIV) 21

(OIV) 31

(OIV)

2 30

(OIV) 30

(SOC) 31

(SOC)

3 29

(OIV) 30

(SOC) 32

(OIV)

Fig. 4. Index table (3 � 3) showing the original coding results of the SOC algorithm.

90 C.-C. Chang et al. / Information Sciences 300 (2015) 85–99

After processing with the embedding algorithm, the compression code C of image I is generated and sent to the decoder.Fig. 4 provides an example to better explain Chang et al.’s embedding phase. The index table (3 � 3) is encoded with a 256-sized codebook. Assume that a 2-bit SOC code is used in the SOC algorithm. This figure also shows the SOC coding resultsbefore data hiding, where secret message B is ‘‘111110100.’’ Fig. 5 shows the corresponding hiding positions of each bitof secret message B. The embedded bit of each index in Fig. 4 has the same position as in Fig. 5.

In the hiding algorithm, the first index (1,1) is encoded by 1||00010010 because this index is equivalent to its OIV value,and the secret bit is 1. Similarly, if the index value (2,2) is SOC, then the hidden secret bit is 1. According to Step 4.1 of Changet al.’s embedding algorithm, this index is encoded by 1||00011110 rather than SOC compression code 0||00. As for index(3,3), which is an OIV, the hidden secret bit is 0. In this case, Step 5.2 of Chang et al.’s embedding algorithm is used. Thecompression code of this index is 0||11||00100000 instead of 1||00100000.

After receiving compression code C from the sender, the receiver can extract the secret bits according to the correspond-ing indicators. If an indicator is ‘‘0,’’ secret bit ‘‘0’’ will be extracted; otherwise, the extracted secret bit will be ‘‘1.’’ Finally, theoriginal index table can be recovered by reversing the steps outlined in this section.

3. Proposed scheme

In 1996, Hsieh and Tsai proposed the search-order coding (SOC) for the VQ index table. This technique points to the indi-ces that are in the neighboring areas of the current processing index. With the SOC coding length, n, it means that there are2n different indices that can be determined by SOC method to encode the current processing index by n bits. It is obvious thatthe shorter coding by the SOC technique (i.e., two bits) results in the reduction of the bit rate compared to directly using theindex itself (i.e., eight bits, if the size of the codebook is 256 codewords). Hsieh and Tsai illustrated that the SOC algorithmachieved 40% compression rate on average, which is a large reduction for the amount of code stream. SMVQ is a special caseof VQ, and it designed to optimize the gray level transition across boundaries of adjacent image blocks. In addition, SMVQalso exploits the high correlation between neighboring blocks to select the state codebook from the main codebook. Notethat the size L of the state codebook is much smaller than the size K of the main codebook. In other words, a lower compres-sion rate is obtained by using SMVQ. However, after performing SMVQ, we discovered that there is a high correlation amongneighboring indices in the SMVQ index table. This means that each index in the SMVQ index table can be encoded by usingits neighboring indices to obtain a better compression rate. To give a clear picture regarding our statement above, Fig. 6shows an example of the 12 � 12-sized SMVQ index table, which was cut from the ‘‘Lena’’ test image and for which the sizeof the state codebook is 32. As Fig. 6 shows, an index in the SMVQ index table is similar to its neighboring indices. With thischaracteristic of the SMVQ index table, we concluded that SOC coding is a promising algorithm for achieving a low compres-sion rate for the image. By using SOC coding instead of encoding the index by log2[L] bits, where L is the size of the state

1 2 3

1 1 1 1

2 1 1 0

3 1 0 0

Fig. 5. Hiding position of each bit of the secret bit string ‘‘111110100’’.

Page 7: A reversible compression code hiding using SOC and SMVQ ...msn.iecs.fcu.edu.tw/~ccc/profile/publish/ij_paper... · Also in 2013, Qin et al. [19] designed a new joint data-hiding and

Fig. 6. Example of the 12 � 12-sized SMVQ index table with the state codebook.

C.-C. Chang et al. / Information Sciences 300 (2015) 85–99 91

codebook, the index can be encoded by n bits of SOC code, and n also is much smaller than log2[L] bits. For example, n is twobits and log2[L] is five bits when the size L of the state codebook is 32. Fig. 7 presents the distribution of indices using SOCcoding for four different types of test images. From Fig. 7, it is apparent that more than 35% of the indices in the index tablecan be encoded by the SOC code when utilizing SOC coding with a length of two bits. Thus, we incorporated the advantagesof SOC coding and the SMVQ algorithm in the proposed scheme to further improve the compression efficiency of the datahiding method based on SMVQ while maintaining the high embedding rate and good image quality of the reconstructedimage. The proposed scheme includes both data embedding and extracting phases. Sections 3.1 and 3.2 discuss details ofthese two phases, respectively.

3.1. Embedding phase

In Chang et al.’s scheme [2], each index in the index table is encoded with either SOC coding or VQ coding. In their scheme,the SOC coding length is two bits, which we also used. However, instead of hiding data into the VQ indices, in this study, wepropose a reversible data hiding scheme that is based on SMVQ coding for embedding secret bits into the SOC value or SMVQvalue to improve compression rate and to maintain the same embedding rate as Chang et al.’s scheme [2]. Certainly, theindex is either the SOC or the SMVQ value, and, also, fewer bits are used for encoding in the propose scheme, and one secretbit is embedded.

To explain the proposed embedding algorithm in more detail, some symbols used in this section are defined here.Codebook Y ¼ ðy0; y1; . . . ; yn�1Þ and state codebook D ¼ ðd0; d1; . . . ; drÞ, so the size of state codebook D can be 32 or 64, andd is encoded by five or six bits, respectively. Image I is the cover image, and the secret message is denoted as

Fig. 7. Distribution of indices using SOC coding with a length of two bits.

Page 8: A reversible compression code hiding using SOC and SMVQ ...msn.iecs.fcu.edu.tw/~ccc/profile/publish/ij_paper... · Also in 2013, Qin et al. [19] designed a new joint data-hiding and

92 C.-C. Chang et al. / Information Sciences 300 (2015) 85–99

B ¼ ðb0; b1; . . . ; brÞ, where bj ¼ f0;1g and 0 6 j 6 r. SOC-code is the two-bit search order coding value, which is from 0 to22 � 2. Fig. 8 shows the main idea of the proposed embedding algorithm.

Details of the proposed embedding algorithm are as follows:

Input: Each block of cover image I in raster scan order and secret message B.Output: Compression code C of image I, including secret message B.Step 1: Encode image I by using SMVQ to obtain index table IT.Step 2: Read index d in the residual area of index table IT.Step 3: Determine the SOC code for index d, and read secret bit b from secret message B.Step 4: If the SOC code is determined, the SOC code 6 22 � 2. Perform one of the following steps.Step 4.1: If b = 1, index d is denoted by indicator ‘‘1’’ and is followed by the binary information in the original index d,

i.e., 1||10101. When a state codebook with the size of 32 is used, five bits are used to show the binary informationfrom index d. Finally, the compression code of index d is concatenated into compression code C.

Step 4.2: If b = 0, index d is denoted by indicator ‘‘0’’ and is followed by the two-bit SOC code of index d, i.e., 0||01. Thecompression code of index d is then concatenated into compression code C.

Step 5: If the SOC code is not determined for index d, perform one of the following steps.Step 5.1: If b = 1, index d is denoted by indicator ‘‘1’’ and is concatenated with the binary representation of index d, i.e.,

1||10110. When a state codebook with the size of 32 is used, five bits are used to show the binary information fromindex d. The compression code of d is then concatenated into compression code C.

Step 5.2: If b = 0, index d is denoted by indicator ‘‘0,’’ followed by the two-bit binary information of (22 � 1) and isconcatenated with the binary representation of SMVQ index d, i.e., index d, can be encoded by 0||11||10100). When astate codebook with the size of 32 is used, five bits are used to show the binary information of index d. Thecompression code of index d is then concatenated into compression code C.

Step 6: Repeat Steps 2 through 5 until all indices in the residual area of index table IT have been processed.

When the embedding phase is completed, compression code C, which carries the secret message, can be generated. Nota-bly, compression code C is sent to the receiver without an additional message. Certainly, modern cryptographic algorithms,such as DES [5] or RSA [20], also are applicable to the secret data in advance of our data-embedding phase to enhance thesecurity of the hidden secret data. To more thoroughly explain our embedding phase, the example in Fig. 9 is discussedbelow.

Assume that an SMVQ index table with the size of 3 � 3 is encoded with a state codebook sized 32 codewords, and a two-bit SOC code is used in the SOC algorithm. The SOC coding results before the secret message is hidden are shown in Fig. 9. In

Fig. 8. Diagram of the embedding phase of the proposed scheme.

1 2 3

1 5

(OIV) 25

(OIV) 29

(OIV)

2 5

(SOC) 5

(SOC) 17

(OIV)

3 16

(OIV) 18

(OIV) 17

(SOC)

Fig. 9. SMVQ index table (3 � 3) showing the original coding results of SOC algorithm.

Page 9: A reversible compression code hiding using SOC and SMVQ ...msn.iecs.fcu.edu.tw/~ccc/profile/publish/ij_paper... · Also in 2013, Qin et al. [19] designed a new joint data-hiding and

1 2 3

1 1 1 0

2 1 0 0

3 1 0 0

Fig. 10. Hiding position of each bit of the secret message ‘‘110100100’’.

C.-C. Chang et al. / Information Sciences 300 (2015) 85–99 93

our example, secret message B is set as ‘‘110100100.’’ Fig. 10 shows the corresponding hiding positions of each bit of secretmessage B. Notably, the embedded bit of each index in Fig. 10 has the same position as that in Fig. 9.

In the embedding phase, the first index located at coordinate (1,1) is encoded by 1||00101 because this index is its OIVvalue (Fig. 9); in addition, the corresponding secret bit is 1. The index value located at coordinate (2,1) is its SOC value, andthe corresponding secret bit is 1. According to Step 4.1 of the proposed embedding algorithm, this index is encoded by1||00101 instead of the SOC compression code 0||00. The index value located at coordinate (3,3) belongs to SOC code 10, withsecret bit 0 embedded in it. In this case, Step 4.2 of the proposed embedding algorithm is applied, explaining why 0||10instead of 1||10001 is used to encode the index. The data-embedding rule in Step 4.1 generates more compression codes,while the data-embedding rule in Step 4.2 generates fewer compression codes. Consider the test image ‘‘Lena’’ (Fig. 11(a))as an example. When the SOC codes of ‘‘Lena’’ are determined, 56.32% of the compression codes are generated with Step4.2; in addition, only 43.68% of the compression codes are generated with Step 4.1. These findings clearly demonstrate thatthe proposed data embedding strategy provides better compression performance than previous schemes.

3.2. Extracting phase

After the receiver has compression code C, in the reverse order of the embedding phase, the receiver can extract secretmessage B from it without referring to the original cover image I. The extraction of data from compression code C is describedin detail here.

(a) Lena (b) Peppers (c) Baboon

(d) Boat (e) F16 (f) Sailboat

Fig. 11. Six 512 � 512 grayscale images used as cover images.

Page 10: A reversible compression code hiding using SOC and SMVQ ...msn.iecs.fcu.edu.tw/~ccc/profile/publish/ij_paper... · Also in 2013, Qin et al. [19] designed a new joint data-hiding and

94 C.-C. Chang et al. / Information Sciences 300 (2015) 85–99

Input: Compression code C of cover image I.Output: Secret message B and reconstructed index table IT.Step 1: Set secret message B and index table IT to be empty.Step 2: Read 1-bit indicator r from compression code C.Step 3: If r = 0, the hidden secret bit b = 0, and a ‘‘0’’ is concatenated into secret message B. The encoder then reads two

consecutive bits from compression code C and converts them into a decimal value as reconstructed index p.Step 3.1: If p 6 22 � 2, determine the reconstructed SMVQ value d at order p in the defined SOC coding search path.

Finally, concatenate index d and secret bit b into index table IT and secret message B, respectively.Step 3.2: If p = 22 � 1, read the following n bits when a 2n-sized state codebook is used. The n bits are converted into a

decimal value as index d, which is the recovered SMVQ value. Finally, index d is sent to IT, and secret bit b is sent to B.Step 4: If r = 1, extract secret bit b = 1. Then, read n consecutive bits when a 2n-sized state codebook is used. The n read

bits are converted into a decimal value as index d, which is the reconstructed SMVQ value. Next, concatenate secretbit b into secret message B, and concatenate index d into index table IT.

Step 5: Repeat Steps 2 through 4 until all bits in compression code C have been processed.

Following the completion of all five steps of the extracting algorithm, secret message B is extracted, and index table IT alsois reconstructed correctly. Then, the index table is decoded by the SMVQ decoder to obtain the reconstructed image of coverimage I, which is used repeatedly for the next secret data transmission.

Table 1 provides an example to explain the extraction phase in detail. Obviously, the original index value in Table 1 can berecovered exactly the same as in Fig. 9, and extracted secret message B is ‘‘110100100,’’ which is the same as the secret mes-sage used during the embedding phase. In the first row of Table 1, indicator r equals 1; therefore, secret bit b = 1 is extracted.The five consecutive bits are 00101, which are converted into a decimal value of 5 according to Step 4. The first reconstructedSMVQ index 5 provided as output. In the third row of Table 1, indicator r equals 0; therefore, secret bit b = 0 is extracted. Thenext two bits are read and converted into a decimal value of p equal to 3. According to Step 3.2, when p = 3 = 22 � 1, the nextfive bits are 11101, which are converted into a decimal value of 29. The recovered SMVQ index 29 is then provided as output.In the ninth row of Table 1, the corresponding indicator r is 0; therefore, the secret bit is extracted as 0. The next two bits, 10,are converted into a decimal value equal to 2. According to Step 3.1, when p = 2 6 22 � 2, the SOC coding method is used todetermine the recovered SMVQ in the predefined SOC coding search path. The matching index is 17, which is then providedas output.

4. Experimental results

This section discusses our experimental results to demonstrate the effectiveness and feasibility of the proposed scheme.In our experiments, we used the six 512 � 512 grayscale images in Fig. 11, i.e., ‘‘Lena,’’ ‘‘Peppers,’’ ‘‘Baboon,’’ ‘‘Boat,’’ ‘‘F16,’’and ‘‘Sailboat’’ as the cover images. The codebooks with 256 codewords applied during this simulation were generated withan LBG algorithm [10], in which four images, i.e., ‘‘Zelda,’’ ‘‘Toys,’’ ‘‘Tiffany,’’ and ‘‘GoldHill’’ were used as training images; thedimension of each codeword was 4 � 4. Two sizes of state codebooks were used in our experiment, i.e., 32 and 64. Secretmessage B was created using a pseudo-random number generator. All computing was performed on a PC with a 2.1-GHzIntel� Core™2 CPU and 1-GB RAM. The operating system was Windows 7 Professional, and the proposed algorithm was pro-grammed with Microsoft Visual Studio 2005 C#.

The performance of the proposed scheme was compared with three existing schemes by using three criteria, i.e., embed-ding rate, compression rate, and the quality of the reconstructed images measured by the peak signal-to-noise ratio (PSNR).The criteria are defined in Eqs. (3)–(5), respectively.

The compression performance was evaluated by comparing the output compression code size with that of the originalcover image in the compression domain. Compression rate (CR) was defined as shown in Eq. (3):

Table 1Exampl

Indic

110100100

e of the data extracting phase.

ator r Extracted secret bit SOC-code Binary information is read Extracted SMVQ index Applied steps

1 – 00101 5 Step 41 – 11001 25 Step 40 11 11101 29 Step 3.21 – 00101 5 Step 40 00 – 5 Step 3.10 11 10001 17 Step 3.21 – 10000 16 Step 40 11 10010 18 Step 3.20 10 – 17 Step 3.1

Page 11: A reversible compression code hiding using SOC and SMVQ ...msn.iecs.fcu.edu.tw/~ccc/profile/publish/ij_paper... · Also in 2013, Qin et al. [19] designed a new joint data-hiding and

C.-C. Chang et al. / Information Sciences 300 (2015) 85–99 95

CR ¼ kI0kH �W

ð3Þ

where ||I0|| is the size of the output code stream, and H and W are the height and width of the cover image, respectively. Theunits of the parameter CR are bits per pixel (bpp). According to CR as shown in Eq. (3), the scheme that provides the bestcompression rate can be estimated. A smaller value of compression rate implies a better compression performance.

The second measurement criterion is the embedding rate, ER, which is defined in Eq. (4), denotes how many secret bitsare embedded into the compression codes of the cover image and is used to evaluate the hiding capacity of the proposedscheme and that of the other three schemes.

ER ¼ kSkNIDX

ð4Þ

where ||S|| is the number of secret bits embedded into the compression codes of the cover image, and NIDX is the number ofindices of the index table in the VQ compression domain. Additionally, bit-per-index (bpi) refers to the embedding rate unit,i.e., how many secret bits are embedded into one index of the VQ compression domain. A larger embedding rate implies ahigher hiding capacity.

The third measurement criterion is peak signal-to-noise ratio (PSNR), which can evaluate the quality of the reconstructedcover image, as defined in Eq. (5):

PSNR ¼ 10log102552

MSE

!ð5Þ

The mean square error (MSE) for a W � H grayscale image is defined in Eq. (6):

MSE ¼ 1H �W

XH

i¼1

XWj¼1

Iij � I0ij� �2

ð6Þ

where Iij and I0ij denote the pixel values of the cover image and stego-image, respectively.Table 2 compares the performances of our proposed scheme, i.e., the scheme presented in Section 3 that is identified as

‘‘proposed scheme without seed area hiding,’’ our proposed scheme with seed area hiding, and Chang et al.’s scheme [2] withrespect to indices located in the first row and column of the index table and five existing schemes, i.e., Chang et al.’s [2],Chang and Wu’s [3], Yang and Lin’s [26], Yang et al.’s [27], and Qin et al.’s [19] schemes in terms of embedding rate (ER)and compression rate (CR). Table 2 shows that both of our proposed schemes obtained better compression rates than theall of the other schemes. This difference was due to the fact that the SMVQ algorithm rather than the VQ algorithm was usedin the proposed schemes. Notably, the size of the state codebook in SMVQ was significantly smaller than that of the maincodebook in VQ. In addition, the SOC algorithm also was utilized to compress the indices. Therefore, fewer bits are requiredto encode the indices of SMVQ than are required by VQ.

Table 2 also shows an average embedding rate of 1.0 bpi for Chang et al.’s scheme, which is higher than that of the pro-posed scheme without seed-area hiding (0.98 bpi), as well as those for the schemes of Yang and Lin (0.88 bpi), Chang and Wu(0.83 bpi), and Yang et al. (0.69 bpi). Qin et al.’s scheme (0.54 bpi) has the worst embedding rate among the six schemes. Thisis because their scheme used a single threshold to evaluate the SMVQ quality, as well as to control whether the indices areused for embedding a secret bit. This means that the index is larger than the threshold, which is not used to embed a secretbit. This difference is because the embedding strategy of the proposed scheme without seed-area hiding limits the embed-dable area to the residual area of the index instead of the entire index table. In contrast, Chang et al.’s scheme hides onesecret bit in an index of the index table. Therefore, the proposed scheme without seed-area hiding offers a lower embeddingcapacity than that of Chang et al.’s scheme. However, the embedding capacity of the proposed scheme can still be improvedby using Chang et al.’s hiding strategy, which is especially designed for blocks in the seed area. By doing so, all of the blocksare embeddable, irrespective regardless of whether the indices belong to the seed area or the residual area. Such a modifi-cation allows the embedding capacity of the proposed scheme plus the seed area to reach 1.0 bpi, which is larger than that ofthe proposed scheme without a seed area, as shown in Table 2.

In Table 3, when the state codebook has a size of 64, in terms of the embedding rate, our proposed scheme plus the seed-area hiding (1.0 bpi) is the same as Chang et al.’s scheme, which is superior to our proposed scheme without seed-area hiding(0.98 bpi), as well as Yang and Lin’s scheme (0.88 bpi), Chang and Wu’s scheme (0.83 bpi), Yang et al.’s scheme (0.69 bpi), andQin et al.’s scheme (0.54 bpi). With respect to the compression rate, the proposed scheme without seed-area hiding is supe-rior to the other schemes, when the average compression rate of the proposed scheme without seed-area hiding is approx-imately 0.41 bpp, followed by the proposed scheme plus the seed-area hiding (0.42 bpi), and Qin et al. (0.43 bpi), Chang andWu (0.49 bpi), Chang et al. (0.5 bpp), and Yang and Lin (0.54 bpp). The average compression rate of Yang et al.’s scheme is0.56 bpp, which is much poorer performance than the other three schemes. Tables 2 and 3 show that, the performance of theproposed scheme which works with a seed-area hiding strategy decreases compression rate slightly; however, it increasesthe embedding capacity. The following experimental results demonstrate the superior performance of the proposed schemewithout a seed-area-hiding strategy in terms of the visual quality and execution time.

Page 12: A reversible compression code hiding using SOC and SMVQ ...msn.iecs.fcu.edu.tw/~ccc/profile/publish/ij_paper... · Also in 2013, Qin et al. [19] designed a new joint data-hiding and

Table 2Comparison of compression rates of the different methods using a 256-sized codebook and a 32-sized state codebook.

Images Schemes

Chang et al.’sscheme [2]

Chang andWu’s scheme[3]

Yang and Lin’sscheme [26]

Yang et al.’sscheme [27] withTH = 130

Qin et al.’sscheme [19] withT = 36

Proposed schemewithout seed areahiding

Proposed schemeplus seed areahiding

CR ER CR ER CR ER CR ER CR ER CR ER CR ER

Lena 0.49 1.00 0.47 0.92 0.54 0.94 0.56 0.77 0.41 0.63 0.36 0.98 0.37 1.00Peppers 0.49 1.00 0.45 0.88 0.53 0.96 0.56 0.74 0.40 0.69 0.36 0.98 0.37 1.00Baboon 0.57 1.00 0.61 0.58 0.57 0.72 0.56 0.38 0.48 0.23 0.40 0.98 0.41 1.00Boat 0.47 1.00 0.46 0.85 0.52 0.93 0.56 0.76 0.42 0.57 0.35 0.98 0.36 1.00F16 0.47 1.00 0.45 0.88 0.52 0.94 0.56 0.78 0.40 0.68 0.34 0.98 0.35 1.00Sailboat 0.50 1.00 0.47 0.84 0.56 0.78 0.56 0.71 0.45 0.44 0.36 0.98 0.37 1.00Average 0.50 1.00 0.49 0.83 0.54 0.88 0.56 0.69 0.43 0.54 0.36 0.98 0.37 1.00

Table 3Comparison of compression rates for the different methods using a 256-sized codebook and a 64-sized state codebook.

Images Schemes

Chang et al.’sscheme [2]

Chang andWu’s scheme[3]

Yang and Lin’sscheme [26]

Yang et al.’sscheme [27] withTH = 130

Qin et al.’sscheme [19] withT = 36

Proposed schemewithout seed areahiding

Proposed schemeplus seed areahiding

CR ER CR ER CR ER CR ER CR ER CR ER CR ER

Lena 0.49 1.00 0.47 0.92 0.54 0.94 0.56 0.77 0.41 0.63 0.41 0.98 0.42 1.00Peppers 0.49 1.00 0.45 0.88 0.53 0.96 0.56 0.74 0.40 0.69 0.41 0.98 0.42 1.00Baboon 0.57 1.00 0.61 0.58 0.57 0.72 0.56 0.38 0.48 0.23 0.46 0.98 0.47 1.00Boat 0.47 1.00 0.46 0.85 0.52 0.93 0.56 0.76 0.42 0.57 0.39 0.98 0.40 1.00F16 0.47 1.00 0.45 0.88 0.52 0.94 0.56 0.78 0.40 0.68 0.39 0.98 0.40 1.00Sailboat 0.50 1.00 0.47 0.84 0.56 0.78 0.56 0.71 0.45 0.44 0.41 0.98 0.41 1.00Average 0.50 1.00 0.49 0.83 0.54 0.88 0.56 0.69 0.43 0.54 0.41 0.98 0.42 1.00

96 C.-C. Chang et al. / Information Sciences 300 (2015) 85–99

Table 4 summarizes the image quality of a reconstructed grayscale image with the proposed scheme when the state code-book has a size of 32. The performance of the proposed scheme also is compared with Chang et al.’s scheme [2], Chang andWu’s scheme [3], Yang and Lin’s scheme [26], Yang et al.’s scheme [27], and Qin et al.’s scheme [19]. Table 4 also divides theproposed scheme into two cases. The first case involves the proposed scheme with the threshold THSMVQ = 30 to control theimage quality, and it is marked as ‘‘proposed scheme with threshold’’ in Table 4. It implies that even an image block isencoded initially by SMVQ; VQ is used rather than SMVQ to encode this block if the Euclidean distance between the encodedcodeword and the current block exceeds the given threshold, THSMVQ. The other case involves the proposed scheme withoutusing the threshold THSMVQ, and it is marked as ‘‘proposed scheme without threshold.’’ Note that the proposed scheme with-out the threshold was introduced in Section 3.

Obviously, both the proposed scheme with a threshold and Chang et al.’s scheme are similar to the two other schemes,i.e., Yang and Lin’s and Yang et al.’s schemes. The average PSNR value of the proposed scheme with a threshold, Yang and Lin’sscheme, Yang et al.’s scheme, and Chang et al.’s scheme are around 28.95 dB, which is better than Qin et al.’s scheme, Changand Wu’s scheme, and the proposed scheme without the threshold. The proposed scheme with a threshold produces a higherquality reconstructed image than Qin et al.’s scheme, Chang and Wu’s scheme, and the proposed scheme without a

Table 4Results of the visual quality provided by the proposed scheme and three other schemes with a 32-sized state codebook.

Images Schemes

Chang et al.’sscheme [2]

Chang and Wu’sscheme [3]

Yang and Lin’sscheme [26]

Yang et al.’sscheme [27]

Qin et al.’sscheme [19]

Proposed schemewithout threshold

Proposed schemewith threshold

PSNR (dB) PSNR (dB) PSNR (dB) PSNR (dB) PSNR (dB) PSNR (dB) PSNR (dB)

Lena 31.06 29.25 31.06 31.06 30.57 28.29 31.05Peppers 30.67 29.07 30.67 30.67 31.16 28.47 30.66Baboon 24.31 22.43 24.31 24.31 21.49 22.75 24.31Boat 28.96 28.12 28.96 28.96 28.94 26.89 28.95F16 30.11 29.15 30.11 30.11 29.95 28.01 30.10Sailboat 28.61 27.58 28.61 28.61 27.19 26.76 28.61

Page 13: A reversible compression code hiding using SOC and SMVQ ...msn.iecs.fcu.edu.tw/~ccc/profile/publish/ij_paper... · Also in 2013, Qin et al. [19] designed a new joint data-hiding and

Table 5Results of the visual quality of the proposed scheme and the three other schemes with a 64-sized state codebook.

Images Schemes

Chang et al.’sscheme [2]

Chang and Wu’sscheme [3]

Yang and Lin’sscheme [26]

Yang et al.’sscheme [27]

Qin et al.’sscheme [19]

Proposed schemewithout threshold

Proposed schemewith threshold

PSNR (dB) PSNR (dB) PSNR (dB) PSNR (dB) PSNR (dB) PSNR (dB) PSNR (dB)

Lena 31.06 29.25 31.06 31.06 30.57 29.83 31.05Peppers 30.67 29.07 30.67 30.67 31.16 29.78 30.66Baboon 24.31 22.43 24.31 24.31 21.49 23.49 24.31Boat 28.96 28.12 28.96 28.96 28.94 27.89 28.95F16 30.11 29.15 30.11 30.11 29.95 29.07 30.10Sailboat 28.61 27.58 28.61 28.61 27.19 27.69 28.61

Fig. 12. Reconstructed ‘‘Lena’’ image with the proposed scheme (PSNR: 28.10 dB).

C.-C. Chang et al. / Information Sciences 300 (2015) 85–99 97

threshold. This is because, with the threshold THSMVQ = 30, the image blocks are only encoded by SMVQ when the Euclideandistance between the encoded codeword and the current block is smaller than the threshold. Otherwise, VQ coding is used.Therefore, the quality of the reconstructed image is guaranteed. This finding implies that fewer candidates can be offered bythe 32-sized state codebook than the main 256-sized codebook. Conversely, Chang et al.’s scheme uses the VQ algorithm. Themain codebook, which contains 256 codewords, is used to encode all of the blocks, and this explains why the quality of thereconstructed image of Chang et al.’s scheme is better than that of the proposed scheme without a threshold. However, whenthe proposed scheme works with the threshold THSMVQ = 30, the visual quality of an image is improved significantly. Such animprovement occurs because our scheme changes codewords generated by SMVQ, which causes a distortion that is largerthan the threshold THSMVQ = 30 into codewords generated by VQ.

Table 5 lists the PSNRs of the proposed schemes and three other schemes for a 64-sized state codebook. Clearly the PSNRsof the proposed scheme with threshold THSMVQ = 30 are similar to those of Chang et al.’s scheme, which outperforms those of

Fig. 13. Reconstructed ‘‘Lena’’ image with the scheme of Chang et al. (PSNR: 30.06 dB).

Page 14: A reversible compression code hiding using SOC and SMVQ ...msn.iecs.fcu.edu.tw/~ccc/profile/publish/ij_paper... · Also in 2013, Qin et al. [19] designed a new joint data-hiding and

Table 6Comparison of the four data hiding methods with respect to average execution time (in seconds, and codebook size: 256; state codebook: 32).

Phase Chang et al.’sscheme [2]

Chang and Wu’sscheme[3]

Yang and Lin’sscheme [26]

Yang et al.’sscheme [27]

Qin et al.’sscheme [19]

Proposedscheme

Data embedding phase 4.232 5.658 3.833 5.232 5.821 3.583Data extracting phase 0.675 0.671 1.096 1.542 2.106 0.663

98 C.-C. Chang et al. / Information Sciences 300 (2015) 85–99

the other schemes. Although Tables 4 and 5 show that the image quality of the reconstructed image is improved, the averagecompression rate of the proposed scheme with a threshold becomes 0.46 and 0.5 bpp when the state codebook has a size of32 and 64, respectively. The average compression rate of the proposed scheme with a threshold is worse than the averagecompression rate of the proposed scheme without a threshold, i.e., 0.36 and 0.41 bpp when the state codebook is 32 and 64,respectively. The experimental results indicated that there was a tradeoff between image quality and compression rate.However, without using a threshold, the proposed scheme can still offer an acceptable image quality [2] while maintaininga compression rate and an embedding rate better than those of Chang et al.’s scheme. Additionally, in the human visual sys-tem, the proposed scheme still offers better visual quality of a reconstructed image than that of Chang et al.’s schemebecause the proposed scheme inherits the features of SMVQ. The visible boundaries of the reconstructed grayscale imageswith the proposed scheme are more blurred than those with Chang et al.’s scheme, as shown in Figs. 12 and 13.

Table 6 lists the average execution times required by the proposed scheme and the three existing schemes. According tothis table, Qin et al.’s scheme requires the highest computation time to determine the corresponding group in the dataembedding phase, followed by Yang et al.’s scheme, Chang and Wu’s scheme, Chang et al.’s scheme, Yang and Lin’s scheme,and the proposed scheme. Therefore, the proposed scheme performs the best in terms of saving processing time.

5. Conclusions

This paper proposes a novel, reversible data-hiding scheme based on SOC in terms of SMVQ compressed images. Theexperimental results confirmed that the proposed scheme achieved better compression rates than those of the three existingschemes, while offering the shortest execution times during the data-embedding phase. The average compression rate forthe proposed scheme with seed-area hiding was 0.37 bpp, in which the performance is superior to Yang and Lin’s, Changet al.’s, and Yang et al.’s schemes. Additionally, the proposed scheme with seed-area hiding also achieved the same embed-ding rate as Chang et al.’s scheme, which was superior to Yang and Lin’s and Yang et al.’s schemes. In terms of the imagequality of the recovered images, when the codebook size was 32, the proposed scheme also achieved the same quality asthat of Chang et al.’s, Yang and Lin’s, and Yang et al.’s schemes when the threshold THSMVQ = 30 was used to maintain theimage quality. Moreover, the embedding time was 3.583 s, and the extracting time was 0.663 s with the proposed scheme,which are much faster than the embedding time (4.232 s) and the extracting time (0.675 s) of Chang et al.’s scheme when thesize of the state codebook was 32. Therefore, the proposed scheme is highly promising for real-world data-hidingapplications.

References

[1] J.M. Barton, Method and Apparatus for Embedding Authentication Information within Digital Data, U.S. Patent, vol. 5, July 8, 1997, pp. 646–997.[2] C.C. Chang, G.M. Chen, M.H. Lin, Information hiding based on search-order coding for VQ indices, Pattern Recogn. Lett. 25 (2004) 1253–1261.[3] C.C. Chang, W.C. Wu, A steganographic method for hiding secret data using side match vector quantization, IECIE Trans. Inf. Syst. E88-D (9) (2005)

2159–2167.[4] S.F. Chiou, Y.C. Lu, I.E. Liao, M.S. Hwang, An efficient reversible data hiding scheme based on SMVQ, Imag. Sci. J. 61 (6) (2013) 467–474.[5] R.M. Davis, The data encryption standard in perspective, IEEE Commun. Mag. 16 (6) (1978) 5–9.[6] J. Fridrich, M. Goljan, R. Du, Invertible authentication watermark for JPEG images, in: Proc. ITCC, Las Vegas, NV, April 2001.[7] J. Fridrich, M. Goljan, R. Du, Lossless data embedding-new paradigm in digital watermarking, J. Appl. Signal Process. 2002 (2) (2002) 185–196.[8] A. Gersho, R.M. Gray, Vector Quantization and Signal Compression, Kluwer, Norwell, MA, 1992.[9] M. Goljan, J. Fridrich, R. Du, Distortion-free data embedding for images, in: Proc. 4th Int. Workshop Inf. Hiding, vol. 2137, 2001, pp. 27–41.

[10] R.M. Gray, Vector quantization, IEEE Acoust. Speech Signal Process. 1 (1984) 4–29.[11] M.S. Hsieh, J.C. Tsai, Lossless compression of VQ index with search-order coding, IEEE Trans. Image Process. 5 (11) (1996) 1570–1582.[12] H.J. Hwang, V. Sachnev, S.H. Joo, Reversible watermarking method using optimal histogram pair shifting based on prediction and sorting, KSII Trans.

Internet Inform. Syst. 4 (4) (2010) 655–670.[13] M. Jo, H.D. Kim, A digital image watermarking scheme based on vector quantization, IECIE Trans. Inf. Syst. E85-D (6) (2002) 1054–1056.[14] L. Kamstra, H.J.A.M. Heijmans, Reversible data embedding into images using wavelet techniques and sorting, IEEE Trans. Image Process. 14 (12) (2005)

2082–2090.[15] T. Kim, Side match and overlap match vector quantizers for images, IEEE Trans. Image Process. 1 (4) (1992) 170–185.[16] Y. Linde, A. Buzo, R.M. Gray, An algorithm for vector quantizer design, IEEE Trans. Commun. 28 (1) (1980) 84–95.[17] N.M. Nasrabadi, R. King, Image coding using vector quantization: a review, IEEE Trans. Commun. 36 (8) (1988) 957–971.[18] Z.B. Pan, X.X. Ma, X.M. Deng, S. Hu, Low bit-rate information hiding based on search-order-coding technique, J. Syst. Softw. 86 (11) (2013) 2863–2869.[19] C. Qin, C.C. Chang, Y.P. Chiu, A novel joint data-hiding and compression scheme based on SMVQ and image inpainting, IEEE Trans. Image Process. PP

(99) (2013).[20] R. Rivest, A. Shamir, L. Adlenan, A method for obtaining digital signature and public key cryptosystems, Commun. ACM 21 (2) (1978) 120–126.[21] J. Tian, Reversible data embedding using different expansion, IEEE Trans. Circuit Syst. Video Technol. 13 (8) (2003) 890–896.[22] P.Y. Tsai, M.H. Lin, C.C. Chang, An adaptive steganographic scheme for color images, Fund. Inf. 62 (3–4) (2004) 275–289.[23] Y.S. Tsai, P. Tsai, Adaptive data hiding for vector quantization image based in overlapping codeword clustering, Inform. Sci. 181 (15) (2011) 3188–3198.

Page 15: A reversible compression code hiding using SOC and SMVQ ...msn.iecs.fcu.edu.tw/~ccc/profile/publish/ij_paper... · Also in 2013, Qin et al. [19] designed a new joint data-hiding and

C.-C. Chang et al. / Information Sciences 300 (2015) 85–99 99

[24] G. Xuan, J. Zhu, J. Chen, Y.Q. Shi, Z. Ni, W. Su, Distortionless data hiding based on integer wavelet transform, Electron. Lett. 38 (25) (2002) 1646–1648.[25] B. Yang, Z.M. Lu, S.H. Sun, Reversible watermarking in the VQ-compressed domain, in: Proc. 5th VIIP, Benidorm, Spain, September 2005, pp. 298–303.[26] C.H. Yang, Y.C. Lin, Reversible data hiding of a VQ index table based on referred counts, J. Vis. Commun. Image Represent. 20 (6) (2009) 399–407.[27] C.H. Yang, W.J. Wang, C.T. Huang, S.J. Wang, Reversible steganography based on side match and hit pattern for VQ-compressed images, Inform. Sci. 181

(2011) 2218–2230.