DOI QR코드

DOI QR Code

Reversible Data Hiding in Block Truncation Coding Compressed Images Using Quantization Level Swapping and Shifting

  • Hong, Wien (School of Computer and Software Nanjing University of Information Science and Technology) ;
  • Zheng, Shuozhen (Department of Electronic Communication and Software Engineering Nanfang College of Sun Yat-Sen University) ;
  • Chen, Tung-Shou (National Taichung University of Science and Technology Department of Computer Science and Information Engineering) ;
  • Huang, Chien-Che (National Taichung University of Science and Technology Department of Computer Science and Information Engineering)
  • Received : 2016.01.02
  • Accepted : 2016.04.20
  • Published : 2016.06.30

Abstract

The existing reversible data hiding methods for block truncation coding (BTC) compressed images often utilize difference expansion or histogram shifting technique for data embedment. Although these methods effectively embed data into the compressed codes, the embedding operations may swap the numerical order of the higher and lower quantization levels. Since the numerical order of these two quantization levels can be exploited to carry additional data without destroying the quality of decoded image, the existing methods cannot take the advantages of this property to embed data more efficiently. In this paper, we embed data by shifting the higher and lower quantization levels in opposite direction. Because the embedment does not change numerical order of quantization levels, we exploit this property to carry additional data without further reducing the image quality. The proposed method performs no-distortion embedding if the payload is small, and performs reversible data embedding for large payload. The experimental results show that the proposed method offers better embedding performance over prior works in terms of payload and image quality.

Keywords

1. Introduction

The advance of digital information has made our daily lives more convenient. However, it also has brought new challenges in security issues. Due to the rapid development of transmission techniques and the wide spread use of internet, the security issues, including network security [1]-[4] and multimedia security [5]-[6], have been increasingly receiving a great deal of attention from the research community. As a research area of multimedia security, data hiding methods have been extensively investigated for the purpose of authentication, identification, and privacy protection during the past decade. Data hiding is a technique for secret transmission by embedding messages into carriers. Many digital media can be used for carrying data and the digital images are perhaps the most commonly used carriers because they provide rich redundancies for data embedment. Moreover, digital images are often transmitted over internet and thus they are very suitable to serve as carriers. In general, a digital image used for embedding data is called a cover image and an image with data embedded is called a stego image. Since the data embedment is done by modifying the pixel values in the cover image, the distortions occur inevitably. To evade the detection by steganalyzers [7]-[8], either visually or statistically, the distortion should be as small as possible. As a result, many data hiding methods adopt machine learning [9]-[10] or image processing [11]-[12] techniques to reduce the distortion further, or to keep the distortion imperceptible by considering the human visual system. For a data hiding method, a large payload is usually desirable. However, a large payload often causes larger distortion. As a result, to keep a balance between the payload and image quality is a challenging task for a data hiding method.

According to reversibility of the cover image, the data hiding methods can be classified into two categories: non-reversible [13]-[14] and reversible [15]-[18]. Non-reversible data hiding method distorts the cover images permanently and therefore, the produced stego image cannot be restored to its original state. The well-known LSB replacement, LSB matching [13] and adaptive pixel pair matching (APPM) [14] are of this type. On the other hand, reversible data hiding (RDH) method recovers the original image from the distorted, stego image after extracting the embedded data. Therefore, it is suitable for applications where no distortion is allowed such as medical or military images.

Ni et al. [15] proposed a RDH method using histogram shifting. This method vacates a histogram bin that is next to the peak bin, and data bits are embedded by shifting the pixels in the peak bin. Many RDH methods are developed based on Ni et al.’s method. For example, Li et al. [16] proposed a RDH method using pixel value ordering to efficiently embed data by shifting the smallest and largest pixels of a sorted block. Wang et al. [17] extended Li et al.’s work by using a dynamic pixel block partition scheme and provided a better performance than [16]. Hong et al. [18] proposed a RDH method using Delaunay triangulation and selective embedment. In their method, a selection mechanism is used to control the embedding regions in the cover image to evade the detection of steganalyzers.

The aforementioned methods embed data in the spatial domain of cover image. However, due to the limited transmission bandwidth and storage capacity, many digital images are transmitted or stored in a compressed format. As a result, the traditional RDH methods cannot directly be applied to images in compressed format. Some RDH methods have been proposed so far for various compressed domain, such as vector quantization (VQ) [19], JPEG [20], and block truncation coding (BTC) compressed images [21]-[25], to accommodate different requirements for various applications. Since BTC [26] simply represents an image block by two quantization levels (QLs) and a bitmap, it requires insignificant computational cost but also offers acceptable image quality and compression rate. As a result, it is very suitable for applications with limited computational, energy, and storage resources, such as mobile or remote censoring devices.

Till now, only a few RDH methods for BTC compressed images (or BTC codes) are proposed. Hong et al. [21] proposed a RDH in BTC codes based on prediction and histogram shifting. This method partitioned higher and lower QLs into blocks, and then a reversible method is applied to these blocks for data embedment. Chen et al. [22] proposed an interesting no-distortion embedding method for BTC codes in that the decoded stego image is identical to the original BTC compressed image. Normally, the higher QLs should be larger than or equal to the corresponding lower QLs. However, decoding the swapped QLs with a flipped bitmap also obtains an identical image block. Chen et al. exploited this interesting property to embed data by swapping QLs and flipping bitmap to produce a no-distortion stego image. Chang et al. [23] also proposed a reversible method for BTC codes using side match. Although this method achieves higher payload than that of [21] and [22], it cannot be decoded by a standard BTC decoder and thus the application is limited. Lo et al. [24] made use of histogram shifting technique to embed secret data into the QLs and the embedded codes still follows the standard BTC format. However, the payload of this method is limited. Tsai et al. [25] proposed an efficient reversible data hiding algorithm for BTC compressed images based on difference expansion and median edge detector. The QLs are predicted, and data are embedded by expanding the prediction errors. If the numerical order of the QLs is swapped when trying to embed data, this method changes the recording positions of these two QLs and flips the corresponding bitmap to signal the decoder for a correct reconstruction. Although Tsai et al.’s method achieves lower bit rate and higher payload than those of [22] and [24], the swapping of QLs can no longer be used for carrying additional data bits using the method proposed in [22] because it has been used for indicating embeddable and un-embedding blocks.

In this paper, we proposed a RDH method by shifting the QLs in opposite direction. The QLs with the most frequently occurring difference are shifted and data bits are embedded into the shifted histogram. Because the shifting operation preserves the numerical order of QLs, the swapping of QLs can still be employed to carry an additional data bit with no-distortion. Besides, a threshold is used to prevent those likely un-embeddable differences from being shifted. Therefore, the proposed method achieves significantly better embedding performance than previous works, especially at low embedding rate.

The rest of this paper is organized as follows. Section 2 briefly describes BTC and Tsai et al.’s methods. Section 3 gives the algorithm of the proposed work. Section 4 shows the experimental results and concluding remarks are given in Section 5.

 

2. Related Work

In this section, we briefly introduce the BTC compression algorithm and Tsai et al.’s RDH method for BTC compressed codes.

2.1 BTC compression technique

The BTC algorithm [26] is made use of averaged pixel values of blocks as the QLs and use a bitmap to record which QLs should be used at the corresponding position. The detailed compressed algorithm is shown as follows. Firstly, BTC partitions the cover image I into N blocks be the pixels in block Bki and be a binary bitmap. To encode Bki, the mean value mi of Bki is calculated. For those pixels in Bki with value smaller than or equal to mi are averaged and rounded to obtain a lower QL qL,i. Similarly, pixels with value larger than mi are averaged and rounded to obtain a higher QL qH,i. Once the QLs are obtained, BTC made use of bitmap to record the QLs for pixels If pt,i ≤ mi, bt,i is set to 0; otherwise, bt,i is set to 1. As a result, the BTC codes for i-th block is a trio (qL,i, qH,i, Bi) and is the BTC codes for image I. Notice that qL,i ≤ qH,i always holds for each block. To decode a BTC compressed code (qL,i, qH,i, Bi), we simply replace bits ‘0’ in Bi with qL,i and replace bit ‘1’ in Bi with qH,i. Each block is performed in the same manner and a BTC compressed image can be reconstructed.

2.2 Tsai et al.’s method

In 2013, Tsai et al. [25] proposed a RDH method for BTC compressed images based on difference expansion and median edge detector (MED). In their method, QLs are predicted, and k-bit data are embedded into the expanded prediction errors. After embedment, the order of QLs of some blocks is possibly changed and this will lead to incorrect data extraction and block reconstruction. Therefore, this method classifies blocks into groups of embeddable and un-embeddable. For those un-embeddable blocks, the lower and higher QLs are inversely recorded, and thus the location map is not required.

Here is a brief description about Tsai et al.’s method. Let the BTC compressed codes be To embed data into block Bki, qL,i is firstly predicted by MED predictor to obtain the predicted value

where are the west, north, and north-west lower QLs of the current lower QL qL,i, respectively. The prediction value of qH,i, denoted by can be obtained in the similar way. Let be the prediction errors. If one of or both dL,i and dH,i are smaller than or equal to a predefined embedding parameter EP, block Bki is classified as embeddable and otherwise, un-embeddable. To embed k-bit data into the lower QL of an embeddable block Bki, is transformed into its decimal representation is then embedded by expand the prediction error:

Similarly, another k-bit can be embedded into the higher QL qH,i and obtain After embedment, the modified compressed code of block Bki is However, the QLs are possibly overflow or underflow, or the order of them is swapped, i.e., In these cases, blocks Bki become un-embeddable. If this happened, the encoder output the codes to signal the decoder it is an un-embeddable block. All the blocks are encoded using the same manner to obtain the stego BTC codes

To extract the embedded data, the embeddable and un-embeddable blocks are classified by inspecting k bits are embedded in respectively. In this case, the predicted value are obtained first, as in the embedding procedures. The embedded can be extracted by

The original quantization level qL,i can be recovered by using the following equation:

The embedded data can be extracted and qH,i can be recovered in the similar way. If no data are embedded and the original trio can be recovered by and the original bitmap is

 

3. Proposed method

As mentioned in the introduction, decoding a BTC trio (qL,i, qH,i, Bi) or gives an identical image block. As a result, utilizing the numerical order of qL,i and qH,i not only embeds one additional bit information but also produces a no-distortion stego block. In Tsai et al.’s method [25], the numerical order of QLs is used alternatively to classify blocks into embeddable and un-embeddable. That is, if the block is un-embeddable, the method swaps the values of higher and lower QLs. Although this operation successfully signal the decoder for a correct data extraction, the numerical order can no longer be used to hold one secret bit in a no-distortion way. To see how the swapped QLs are distributed, we use Fig. 1 to show a map for the Lena image after applying Tsai et al.’s method at EP = 8 with k = 1 and k = 2, respectively. In this figure, gray dots represent k-bit data are successfully embedded (i.e., embeddable). White dots and black dots represent un-embeddable blocks, where white dots are those blocks with prediction errors larger than EP and black dots are those QLs with numerical order are changed after data embedment

Fig. 1.Distribution of swapped QLs for the Lena image after applying Tsai et. al.’s method.

Tsai et al.’s method use k = 2 to acquire more embedding capacity. However, as shown in Figs. 1(a) and (b), setting k = 2 also induces more black dots and thus the payload is penalized because more blocks become un-embeddable.

In this section, we proposed a RDH method for BTC compressed images by iteratively shifting the higher and lower QLs with the most frequently occurring difference between them. Since the higher QLs are shifted toward 255 and lower QLs are shifted toward 0, the numerical order of QLs is preserved. Therefore, the order can be employed to carry an additional data bit with no-distortion. A threshold mechanism is also adopted to exclude those likely un-embeddable QLs from being shifted. The detailed embedding techniques of the proposed work are given in the following sub-section.

3.1 Preprocessing of the quantization levels

Since the shifting of QLs may result in overflow and underflow, we need to preprocess them to ensure no QL after embedment is out of the range [0,255]. Since the proposed method can perform multi-level embedment, we denote ℓ the desirable embedding levels. Let trios be the original BTC codes. are then preprocessed using the following manner: If set Each block is processed in the same manner and the preprocessed BTC codes are obtained. Since the decoder requires the location of the pre-processing QLs, a binary location map LM is used to record the pre-shifting locations. LM is then compressed using JBIG 2 codec to obtain a compressed location map cLM.

3.2 QL-shifting embedding

QL-shifting embeds data by shifting the QLs with difference equal to the most frequently occurring differences between the higher and lower QLs. It is known that most natural images possess a property that the smooth regions are more than complex regions. As a result, the QL difference histogram of a BTC compressed natural image tends to densely distributed at small difference and sparsely distributed at larger difference. Let be the difference histogram representing the number of elements valued α in the difference set Figs. 2(a) and (b) show the difference histogram of the Lena and Baboon images, respectively. Both figures reveal that the histogram peak ρ, defined by

tends to located at small difference.

Fig. 2.Difference histogram of Lena and Baboon image

Our method is to choose the most frequently occurring difference ρ as the referential difference for data embedment. Let ρL be the referential difference ρL obtained from Eq. (5). The lower QL qL,i is then modified for carrying a massage bit s, or shifted by one unit using the following equation

All the lower QLs are processed in the same way and message bits can be embedded. Let be the processed codes. Once the lower QLs are processed, the higher QLs are processed to embed data in a similar way. That is, the referential difference ρH is obtained from the difference set and the higher QLs are then visited and use the equation

to embed a massage bit s or to shift the higher QLs by one unit. After embedment, the stego BTC codes of blocks can be obtained, where Note that always hold. As a result, the numerical order of the QLs is preserved. Besides, the embedment using Eqs. (6) and (7) will not cause any overflow or underflow in that the modification is performed on the pre-processed image. As a result, the embedment of QLs does not require the information of the location map.

3.3 Threshold mechanism

Since the value of reference difference ρL (or ρH) for most images tends to be small, which imply that smaller di = qH,i - qL,i has better chance to equal reference difference for carrying a data bit when QL-shifting embedding is applied. Therefore, the proposed method uses a threshold to select those likely embeddable QLs for data embedment, and those likely un-embeddable QLs are skipped from the QL-shifting operation to prevent degrading the stego image quality. For a BTC compressed image, neighboring differences di tend to have similar values. We thus use the visited differences to estimate whether the current difference di is possible for carrying a data bit or not. Let be the standard deviation of neighboring differences, where σ (·) is the standard deviation operator and are the differences to the west, north and north-west of the current difference di, respectively. If where T is a pre-defined threshold, di has better chance to equal ρL (or ρH), and thus we can use the QL-shifting embedding technique to perform data embedment, as described in the previous section. On the other hand, if the corresponding difference di is likely unequal to ρL (or ρH). As a result, we just skip the current visited QL qL,i (or qH,i) and do not perform QL-shifting operation.

3.4 QL-swapping embedding

Since the QL-shifting embedding preserves the numerical order of QLs, the swapping of QLs can be employed to carry additional data bit in a no-distortion manner. We term this technique QL-swapping. QL-swapping can be applied before or after QL-shifting, but applied after QL-shifting will be easier for implementation. Let be the stego BTC codes after applying QL-shifting embedding. To embed a message bit s using QL-swapping, if s = 02, block Bki is coded by On the other hand, if s = 12, block Bki is coded by We use the trios to represent the coded results. Because QL-swapping utilizes the numerical order of to embed one bit, must have distinct values. As a result, if there are Neq blocks with identical QLs the proposed method just skip these blocks and does not perform data embedment. Fortunately, a block with identical QLs occurs rarely for most natural images. Therefore, the skipping operation affects the payload insignificantly. Note that QL-swapping operation not only embeds N - Neq bits but also provides a BTC decoded image with no-distortion.

3.5 Embedding and extraction procedures

In this section, we describe the embedding, extraction and image recovery procedures in detail. Let be the BTC compressed codes of a cover image I, and S be the secret data. Given a threshold T and an embedding level ℓ, secret data S can be embedded using the following procedures. Firstly, the QLs are pre-processed to obtain a compressed location map cLM, as described in Section 3.1. The pre-processed code is denoted by Concatenate cLM and S to form a message bit-stream M. Once the QLs are preprocessed, we firstly embed the first |M| - (N - Neq) bits by applying the QL-Shifting technique iteratively, starting from embedding level one to embedding level ℓ under the guidance of threshold T, as described in Sections 3.2 and 3.3.

For j-th embedding level, the referential differences are calculated first, and the stego codes can be obtained after the message bits are embedded. The referential differences are then converted to binary representations, and are prepended to the un-embedded messages bits. The prepended message bits are then embedded into stego codes in the next embedding level to obtain a new stego codes These processes are repeated until all |M| - (N - Neq) bits are embedded, and the final stego code is where ℓ is the last embedding level. The remaining N - Neq bits in M are then embedded using the QL-swapping technique, as described in section 3.4. The final stego codes can then be obtained. The embedding procedures of each step are depicted in Fig. 3.

Fig. 3.Embedding procedures of the proposed method.

Note that it is also possible to embed data into BTC codes by firstly applying the QL-swapping technique instead of QL-shifting. However, embedment performed in this way requires additional computation cost because the original QLs should be recovered in advanced so that QL-shifting can be correctly performed. As a result, the proposed method embeds data using the QL-shifting before QL-swapping.

The referential differences of the last embedding level are outputted as one of the keys for data extraction and image recovery. The keys, including referential differences threshold T, the size of the compressed location map |cLM|, and the size of secret data |S| are transmitted to the receiver side via a secret channel. For a cover image of size 512×512 with block size 4×4, we use 8 bits each to record and T, and use 16 bits each to record |cLM| and |S|. Therefore, the key size of the proposed method is 8×3+16×2 = 56 bits. It is interesting to note that if the payload is smaller than N - Neq, only QL-swapping embedding is needed to be applied. In this case, the decoded BTC image is identical to the original BTC image.

The original BTC codes can be recovered and embedded secret data can be successfully extracted if the receiver has the stego codes and the keys T, |cLM| and |S|. We firstly extract N - Neq bits by decoding using QL-swapping operation, and the stego codes are obtained. We then use the keys and T to extract the messages embedded in the last embedding level ℓ that was embedded by using QL-shifting and to recover the stego codes The referential differences can be obtained from the extracted messages, and the messages embedded in level ℓ - 1 can be extracted. Repeat this process ℓ times and the stego codes can be recovered. Concatenate the extracted message, the compressed location map cLM and the embedded messages S can be obtained with the aid of |cLM| and |S|. Decompress cLM to obtain the location map LM, the pre-shifted quantization levels can be restored and thus, the original BTC codes are obtained.

3.6 A simple example

In this section, we use a simple example to illustrate the proposed method. For simplicity, the pre-processing procedures and the embedment of location map is not considered. Besides, this example only illustrates a single layer embedding and the threshold mechanism is not used. In this example, we use a subscript to refer to an element’s position in row-major order. For example, the position of an element located at r-th row and c-th column in a R×C matrix is indexed by R×(r-1)+c.

To begin with, let be the pre-processed BTC codes and be the secret data. are shown in Figs. 4 (a) and (b), respectively. Since Neq = 0, S = M and |S| = 12, we embed the first 3 bits by QL-shifting, and embed the last 9 bits using QL-swapping. To embeds using QL shifting, the differences are calculated. The referential difference ρL = 3 is then obtained and two bits can be embedded in since there are two elements in valued 3. The first difference is qH,1 - qL,1 = 1 < ρL, according to Eq. (6), we simply set The second difference is qH,2 - qL,2 = 12 - 9 = 3 = ρL, therefore, a bit can be embedded. Extract s1 = 12 from S, and set Similarly, since the third difference qH,3 - qL,3 = 9 - 5 = 4 > ρL, we set

Fig. 4.Simple example of the proposed method.

The fourth difference is qH,4 - qL,4 = 15 - 12 = ρL, therefore, we extract s2 = 12 from S and set The remaining lower QLs can be processed in the similar way and thus can be obtained (see Fig. 4(c)). To embed the last bit s3 = 02 using QL-shifting, we calculate and thus obtain ρH = 4. Since the first difference is 1, we set The second difference is 4, we thus embed s3 = 02 by setting Now all are embedded and thus the modification of the remaining QLs is not required. Therefore, we set The resultant QLs are shown in Fig. 4(d). Therefore, the stego BTC codes after QL-shifting is

After processed QL-shifting embedding, we perform the QL-swapping embedding for the last 9 bits. Because s4 = 12, we swap the values of and flip the bitmap Therefore, Similarly, because s5 = 02, we set The other 7 bits are embedded in the similar way. The final stego codes are therefore obtained. We show in Figs. 4 (e) and (f), respectively, and the swapped QLs are marked by gray.

To extract the embedded bits and recover the BTC codes, we firstly extract bits embedded by using QL-swapping, and recover the codes from The bits s3 = 02 can be extracted from can be recovered with the aid of ρH = 4. Similarly, can be extracted from can be recovered with the aid of ρL = 3. The original BTC codes can finally be recovered.

 

4. Experimental Results

In this section, we performed several experiments to demonstrate the applicability of the proposed method and compare the performance with other methods. Eight 512×512 grayscale images shown in Fig. 5, including Lena, Jet, Peppers, Boat, Tiffany, Tank, Truck, and Baboon were used as the test images. These images can be obtained from USC-SIPI image database [27] Secret data were generated by using a pseudo random number generator (PRNG). We use the peak signal-to-noise ratio (PSNR) to measure the stego image quality, which is defined by

where Ii and are the images decoded from the original BTC codes and the stego BTC codes, respectively. In general, a higher PSNR indicates that two images are more similar. In all the experiments, a block size of 4×4 is used.

Fig. 5.Eight test images.

4.1 Analyses of image quality and payload

Table 1 shows the PSNR, payload Pℓ, and the size of the compressed location map |cLM| of the proposed method for each test images at embedding level ℓ = 1, 5 and 10, respectively. Here the payload is referred to the pure payload, i.e., the actual amount of embedded secret data. To see how embedding level affects the PSNR and payload, we set threshold T = 255 to force every QLs to join the embedding processes. That is, the threshold mechanism describe in Section 3.3 is not used in Table 1.

Table 1.Comparison of PNSR and pure payload

Table 1 shows that when embedding level ℓ = 1, the PSNR of the proposed methods always higher than 48.13 dB. This is because for the first embedding level, the higher and lower QLs are modified only by one unit at most. Therefore, the MSE between the images decoded from the original and stego BTC codes is one at most, and thus the lower bound PSNR is 10log10 (2552/1) ≈ 48.13dB. Table 1 also reveals that the size of the compressed location map |cLM| is increased as the embedding level ℓ increased. This is because more pixels are included in the location map. Moreover, the Tiffany image possesses a larger location map because it contains richer saturated pixels (pixel values near 0 and 255) than other test images.

Figs. 6(a) and (b) show the payload-PSNR curves of the Lena and Baboon images under various thresholds, respectively. As can be seen from the figures, smaller threshold provides a higher image quality but offers a lower payload. A smaller threshold strictly selects only those most likely embeddable differences in the embedding process and thus it produces a higher stego image quality with the sacrifice of the payload. On the contrary, a large threshold selects more differences in the embedding process and thus it provides a higher payload with lower image quality.

Fig. 6.PSNR versus payload for various thresholds.

Since the selection of threshold affect the payload and image quality, the threshold can be properly selected such that a best image quality is achieved for given a payload and a pre-determined embedding level ℓ. Such a threshold can be determined by using the bisection method with a few iterations. To perform the bisection method, since the payload Pℓ is a function of the threshold T, we have Pℓ = f (T). Because the smallest payload Pℓ,0 and the largest payload Pℓ,255 occur at T = 0 and T = 255, respectively, we have the initial conditions Pℓ,0 = f (0) and Pℓ,255 = f (255). Finally, the desirable threshold T for given a payload Pℓ can then be determined by applying the bisection method with the initial conditions Pℓ,0 = f (0) and Pℓ,255 = f (255).

Fig. 7 shows a plot of payload-PSNR curves for the eight test images with the threshold mechanism is applied. The results show that the Jet image offers the best embedding performance and the Baboon image performs the worst. This is because the proposed method shifts the QLs with the most frequently occurring QL differences and they are richer in smooth images and thus the payload is higher. On the contrary, the QL differences of complex images such as Baboon tend to distribute in a wider range, and thus the number of the most frequently occurring difference is decreased. Therefore, the Baboon image has lower payload compared to other smoother test images.

Fig. 7.Performance comparison for eight test images.

4.2 Comparison with Tsai et al.’s method

In this section, we compare the performance of the proposed method with Tsai et al.’s method [25] for four test images Lena, Jet, Peppers, and Baboon. The comparison results are shown in Figs. 8 (a)-(d), respectively. As can be seen from the figures, the proposed method offers significantly better image quality than that of Tsai et al.’s method, especially at low payload. This is because the proposed QL-shifting technique does not change the numerical order of QLs and therefore, QL-swapping technique can be applied before applying QL-shifting technique to obtain a no-distortion version of stego image. However, when the payload is larger than N - Neq, QL-shifting has to be applied to acquire more room for data embedment and thus the distortion inevitably occurs. Nevertheless, the proposed method also offers better image quality than that of Tsai et al.’s method.

Fig. 8.Performance comparison of the proposed method and Tsai et al.’s method.

The proposed method performs the best when the threshold mechanism is also applied. Although Figs. 8 (a)-(d) only shows the comparison results for four test images, other test images including Boat, Tiffany, Tank, and Truck also show the similar results, indicating that the proposed method has better embedding performance than that of Tsai et al.’s method.

4.3 Comparison with other related method

In this section, we compared the proposed method with other related methods, including Chen et al.’s [22], Lo et al.’s [24] and Tsai et al.’s [25] methods under various payloads. In Chen et al.'s method, additional 16 bits are embedded when the higher and lower QLs are equal to achieve the best payload. In Lo et al.’s method, the data set of Choice 2 is used and two pairs of peaks and zeros are employed because it achieves the best embedding performance. In Tsai et al.’s method, the best parameters n and EP are selected such that the best embedding performance can be obtained. The results are shown in Table 2. As seen from the table, the proposed method achieves a no-distortion result (PSNR=∞) when the payload is small (4000 and 10000 bits). On the contrary, only Chen et al.’s method achieves no-distortion results but others give distorted versions. Note that although Lo et al.’s method offers high image quality at low payload, the hiding capacity is limited and none of the images can embed secret data more than 10,000 bits. When the payload is raised to 20,000 and 30,000 bits, no image in Chen et al.’s and Lo et al.’s methods can embed the secret data at this size, and the proposed method offers a significantly better image quality than Tsai et al.'s method. The experimental results indicate that the proposed method offers no-distortion embedding at low payload while achieving a better image quality than other methods at high payload.

Table 2.PSNR comparison of related methods for various payload

 

5. Conclusions

In this paper, we proposed a reversible data hiding method for BTC compressed images. Three embedding techniques are utilized to enhance the stego image quality. The QL-swapping technique produces a no-distortion version of stego codes by swapping the QLs. QL-shifting technique shifts the differences between the two QLs for data embedment, and the threshold mechanism can also be applied to further enhance the image quality. The experimental results revealed that the proposed method not only provides a larger payload and better image quality than prior works, but also offers a no-distortion version of stego codes at low payload.

References

  1. Z. Fu, X. Sun, Q. Liu, L. Zhou, and J. Shu, “Achieving Efficient Cloud Search Services: Multi-keyword Ranked Search over Encrypted Cloud Data Supporting Parallel Computing,” IEICE Transactions on Communications, vol. E98-B, no. 1, pp.190-200, 2015. Article (CrossRef Link) https://doi.org/10.1587/transcom.E98.B.190
  2. Z. Xia, X. Wang, X. Sun, and Q. Wang, “A Secure and Dynamic Multi-keyword Ranked Search Scheme over Encrypted Cloud Data,” IEEE Transactions on Parallel and Distributed Systems, vol. 27, no. 2, pp. 340-352, 2016. Article (CrossRef Link) https://doi.org/10.1109/TPDS.2015.2401003
  3. Y. Ren, J. Shen, J. Wang, J. Han, and S. Lee, “Mutual Verifiable Provable Data Auditing in Public Cloud Storage,” Journal of Internet Technology, vol. 16, no. 2, pp. 317-323, 2015. Article (CrossRef Link) https://doi.org/10.6138/JIT.2015.16.2.20140918
  4. P. Guo, J. Wang, B. Li, and S. Lee, “A Variable Threshold-value Authentication Architecture for Wireless Mesh Networks,” Journal of Internet Technology, vol. 15, no. 6, pp. 929-936, 2014. Article (CrossRef Link)
  5. J. Li, X. Li, B. Yang and X. Sun, “Segmentation-based Image Copy-move Forgery Detection Scheme,” IEEE Transactions on Information Forensics and Security, vol. 10, no. 3, pp. 507-518, 2015. Article (CrossRef Link) https://doi.org/10.1109/TIFS.2014.2381872
  6. B. Chen, H. Shu, G. Coatrieux, G. Chen, X. Sun, and J.L. Coatrieux, “Color Image Analysis by Quaternion-Type Moments,” Journal of Mathematical Imaging and Vision, vol. 51, no. 1, pp. 124-144, 2015. Article (CrossRef Link) https://doi.org/10.1007/s10851-014-0511-6
  7. Z. Xia, X. Wang, X. Sun, Q. Liu, and N. Xiong, “Steganalysis of LSB Matching Using Differences Between Nonadjacent Pixels,” Multimedia Tools and Applications, vol. 75, no. 4, pp. 1947-1962, 2016. Article (CrossRef Link) https://doi.org/10.1007/s11042-014-2381-8
  8. Z. Xia, X. Wang, X. Sun, and B. Wang, “Steganalysis of Least Significant Bit Matching Using Multi-Order Differences,” Security and Communication Networks, vol. 7, no. 8, pp. 1283-1291, 2014. Article (CrossRef Link) https://doi.org/10.1002/sec.864
  9. B.Gu, V.S. Sheng, K.Y. Tay, W. Romano, and S. Li, “Incremental Support Vector Learning for Ordinal Regression,” IEEE Transactions on Neural Networks and Learning Systems, vol. 26, no. 7, pp. 1403-1416, 2015. Article (CrossRef Link) https://doi.org/10.1109/TNNLS.2014.2342533
  10. B. Gu, V. S. Sheng, Z. Wang, D. Ho, S. Osman, and S. Li, "Incremental Learning for ν-Support Vector Regression," Neural Networks, vol. 67, pp. 140-150, 2015. Article (CrossRef Link) https://doi.org/10.1016/j.neunet.2015.03.013
  11. X. Wen, L. Shao, Y. Xue, and W. Fang, “A Rapid Learning Algorithm for Vehicle Classification,” Information Sciences, vol. 295, no. 1, pp. 395-406, 2015. Article (CrossRef Link) https://doi.org/10.1016/j.ins.2014.10.040
  12. Z. Yuhui, J. Byeungwoo, X. Danhua, W.Q.M. Jonathan and Z. Hui, “Image Segmentation by Generalized Hierarchical Fuzzy C-means Algorithm,” Journal of Intelligent and Fuzzy Systems, vol. 28, no. 2, pp. 961-973, 2015. Article (CrossRef Link)
  13. J. Mielikainen, “LSB Matching Revisited,” IEEE Signal Processing Letters, vol. 13, no. 5, pp. 285-287, 2006. Article (CrossRef Link) https://doi.org/10.1109/LSP.2006.870357
  14. W. Hong and T.S. Chen, “A Novel Data Embedding Method Using Adaptive Pixel Pair Matching,” IEEE Transactions on Information Forensics and Security, vol. 7, no. 1, pp. 176-184, 2012. Article (CrossRef Link) https://doi.org/10.1109/TIFS.2011.2155062
  15. Z. Ni, Y.Q. Shi, N. Ansari, and W. Su, “Reversible Data Hiding,” IEEE Transactions on Circuits and Systems for Video Technology, vol. 16, no. 3, pp. 354-362, 2006. Article (CrossRef Link) https://doi.org/10.1109/TCSVT.2006.869964
  16. X.L. Li, J. Li, B. Li, and B. Yang, “High-Fidelity Reversible Data Hiding Scheme Based on Pixel-Value-Ordering and Prediction-Error Expansion,” Signal Processing, vol.93, no. 1, pp. 198-205, 2013. Article (CrossRef Link) https://doi.org/10.1016/j.sigpro.2012.07.025
  17. X. Wang, J. Ding, and Q.Q. Pei, “A Novel Reversible Image Data Hiding Scheme Based on Pixel Value Ordering and Dynamic Pixel Block Partition,” Information Science, vol. 310, pp. 16-35, 2015. Article (CrossRef Link) https://doi.org/10.1016/j.ins.2015.03.022
  18. W. Hong, T.S. Chen, and J. Chen, “Reversible Data Hiding Using Delaunay Triangulation and Selective Embedment,” Information Sciences, vol. 308, pp. 140-154, 2015. Article (CrossRef Link) https://doi.org/10.1016/j.ins.2014.03.030
  19. W.J. Wang, C.T. Huang, C.M. Liu, P.C. Su, and S.J. Wang, “Data Embedding for Vector Quantization Image Processing on the Basis of Adjoining State-Codebook Mapping,” Information Sciences, vol. 246, pp. 69-82, 2013. Article (CrossRef Link) https://doi.org/10.1016/j.ins.2013.05.007
  20. X. Zhang, S. Wang, Z. Qian, and G. Feng, “Reversible Fragile Watermarking for Locating Tampered Blocks in JPEG Images,” Signal Processing, vol. 90, no. 12, pp. 3026-3036, 2010. Article (CrossRef Link) https://doi.org/10.1016/j.sigpro.2010.04.027
  21. W. Hong, T.S. Chen, C.W. Shiu, and M.C. Wu, “Lossless Data Embedding in BTC Codes Based on Prediction and Histogram Shifting,” Applied Mechanics and Materials, vol. 65, pp. 182-185, 2011. Article (CrossRef Link) https://doi.org/10.4028/www.scientific.net/AMM.65.182
  22. J. Chen, W. Hong, T.S. Chen and C.W. Shiu, “Steganography for BTC Compressed Images Using No Distortion Technique,” Image Science Journal, vol. 58, no. 4, pp. 177-185. 2010. Article (CrossRef Link) https://doi.org/10.1179/136821910X12651933390629
  23. C.C. Chang, C.Y. Lin, and Y.H. Fan, “Reversible Steganography for BTC-Compressed Images,” Fundamenta Informaticae, vol. 109, no. 2, pp. 121-134, 2011. Article (CrossRef Link)
  24. C.C. Lo, Y.C. Hu, W.L. Chen, and C.M. Wu, “Reversible Data Hiding Scheme for BTC-Compressed Images Based on Histogram Shifting,” International Journal of Security and Its Applications, vol. 8, no. 2, pp. 301-314, 2014. Article (CrossRef Link) https://doi.org/10.14257/ijsia.2014.8.2.31
  25. Y.Y. Tsai, C.S. Chan, C.L. Liu, and B.R Su, “A Reversible Steganographic Algorithm for BTC-Compressed Images Based on Difference Expansion and Median Edge Detector,” Imaging Science Journal, vol. 62, no. 1, pp. 48-55, 2014. Article (CrossRef Link) https://doi.org/10.1179/1743131X12Y.0000000032
  26. M.D. Lema and O.R. Mitchell, “Absolute Moment Block Truncation Coding and Its Application to Color Images,” IEEE Transactions on Communication, vol. 32, no. 10, pp. 1148-1157, 1984. Article (CrossRef Link) https://doi.org/10.1109/TCOM.1984.1095973
  27. The USC-SIPI Image Database [Online]. Available: http://sipi.usc.edu/database/