A Reversible Data Hiding Scheme for BTC-Compressed Images

This paper proposes a reversible data hiding scheme for BTC-compressed images. A block in the BTCcompressed image consists of a larger block-mean pixel and a smaller block-mean pixel. Two message bits are embedded into a pair of neighboring blocks. One is embedded by expanding the difference between the two larger block-mean pixels and the other is embedded by expanding the one between the two smaller block-mean pixels. Experimental results show that the embedding strategy may decrease the modification of images. The proposed scheme may obtain a stego-image with high visual quality and a payload capacity of one bit per block, approximately. Keywords—Block Truncation Coding; Reversible Data Hiding; Difference Expansion

Reversible data hiding schemes embed data in redundant space of an image [10][11][12][13].Most of the schemes belong to the two families: shifting histogram and difference expansion.The former shifts histogram of pixels or differences to get redundant space located in the peak point of histogram for embedding a message.The latter expands the difference between a pair of pixels, i.e. doubles the difference.As a result, the expanded difference would be an even number and the least significant bit of each expanded difference value is equal to 0 which is the available embedding space.Table I is an example illustrating the embedding process of difference expansion, where ( 1 ,  2 ) are pixel values, ∆y and ∆Y are original and expanded differences, respectively.After embedding a bit of 0 or 1 into the pair of pixels, their stegopixel values and difference would become ( 1 ′ ,  2 ′ ) and ∆Y ′ , respectively, as shown in the table.If ∆y , expanding a difference may be implemented by either increasing the larger pixel or decreasing the smaller by one.If ∆y , increasing the larger one and decreasing the smaller one at the same time is a better option, since it may result in less modification of pixel values and get a benefit of smaller perception of image distortion by human vision.
In the decoding process, a bit of or is extracted if ∆Y ′ is equal to an even or odd number, respectively, and the original difference may be obtained by calculating ∆y ⌊∆Y ′ ⌋ .Then  1  , these blocks would not be candidates for embedding a message.These exceptions are recorded in the overhead information for identifying if a block embeds a message.This paper proposes a reversible data hiding scheme for BTC-compressed images.Embedding space is gotten from expanding a difference between mean pixel values.A block in the BTC-compressed image consists of a larger block-mean pixel and a smaller block-mean pixel.Two message bits are embedded into a pair of neighboring blocks.One is embedded by expanding the difference between the two larger blockmean pixels and the other is embedded by expanding the one between the two smaller block-mean pixels.Experimental results show that the embedding strategy may decrease the modification of images.The proposed scheme may obtain a stego-image with high visual quality and a payload capacity of one bit per block, approximately.
The rest of this paper is organized as follows.The BTC algorithm is briefly reviewed in Section II.Section III introduces the proposed scheme including embedding and extraction processes.To help readers understand the proposed scheme, an embedding example is also given in this section.Section IV demonstrates our experimental results in terms of image visual quality and payload capacity.Finally, conclusions are given in Section V.

II. BLOCK TRUNCATION CODING
In the following, the BTC encoding algorithm is briefly reviewed.Notations are defined as follows:  is a block of image, with pixels in the block,


( , ) is the pixel value of block where and are indexes of pixels and , , ̅ , in block , and The BTC encoding algorithm is introduced as follows: 1) Select an image and divide it into non-overlapping blocks each of them contains pixels.2) For each block , calculate ̅ , and then , ̅ , ̅ . 3

III. PROPOSED SCHEME
The proposed scheme is designated to embed a message into a BTC-compressed image and extract the message from the stego-image.Therefore, the BTC encoding procedure in Section II must be applied to a grayscale cover image if it is not compressed by the BTC algorithm.We will introduce the proposed scheme, including the embedding and extraction procedures in the following sections.Note that the stego-image would be completely recovered in the proposed scheme.

A. Embedding procedure
The embedding procedure is used to embed a binary bit string into a BTC-compressed image T. Required embedding space is obtained from expanding the difference between block-mean values in blocks.Details are listed as follows: 1) Convert a message into a binary bit string , where * , +.For example, a message (23) 16 is converted into (00100011) 2 and 1 , 2 , 3 , etc. 2) Sequentially scan the BTC-compressed image T in an order which was negotiated with the decoder.For each pair of blocks ̂2 1 ( ̅ 2 1 , ̅ 2 1 , 2 1 ) and ̂2 ( ̅ 2 , ̅ 2 , 2 ) , , , , in the image T, calculate ) , ( ̅ 2 , ̅ 2 , 2 ) , and record the pair of blocks index as an overhead information.In other words, this pair of blocks embeds nothing, and 2 1 and 2 are embedded into the next pair of blocks.
, the pair of blocks are also unchanged and they embed two bits of 0. This means an unchanged pair of blocks is not equivalent to embedding nothing.
The proposed scheme embeds two bits in a pair of blocks, instead of embedding one bit in a block.Our embedding strategy is to decrease the modification of an image.According to our experiments, for most blocks, ∆ or ∆ is usually less than Namely, expanding a smaller difference can make slighter image modification than expanding a larger one.

B. Extraction procedure
Whenever a decoder would like to extract the embedded message from a stego-image and recover it to its original BTCcompressed image T, the extraction procedure would be applied.Details of the procedure are listed as follows: 1) Block by block scan the stego-image ′ as the order in the embedding procedure.


and recover the pair of blocks to Obtain the original BTC-compressed image T.
C. An example illustrating the proposed scheme This section gives an example to illustrate the proposed scheme.Figure 1(a) is a BTC-compressed cover image with 8 blocks.Since 2 1 and 2 are binary arrays and they remain unchanged during the embedding procedure, their contents would not be shown in the example for simplicity.Let the message to be embedded be a character "A" and it's ASCII code is ( ) 16 ( ) 2 .
The encoder calculates , we have stegoblocks ̈1 ( , , 1 ) and ̈2 ( , , 2 ) as shown in Figure 1(b).Blocks 3 and 4 embed a bit of 1 and 0 in the larger and smaller block-mean pixels, respectively.Their embedding results would be ̈3 ( , , 3 ) and ̈4 ( , , 4 ) .The embedding results of remaining four blocks are shown in Figure 1(b).To extract the embedded message from the stego-image in Figure 1(b), the decoder scans the image as the order in the embedding procedure and calculates Then calculate Finally, the pair of blocks are recovered to ̂1 ( , , 1 ) and ̂2 ( , , 2 ) .A bit of 1 is extracted from 3 ∆ ̈3 ̿ 3 ̿ 4 .Similarly, a bit of 0 is extracted from 4 . The process continues until the remaining messages are extracted and stego-blocks are recovered.Note that, in the example, none of block index is recorded in the overhead information.

IV. EXPERIMENTAL RESULTS
To show the feasibility and performance of the proposed scheme, we implemented the proposed scheme on a personal computer with Java.The implementation included compressing a grayscale image into a BTC-format image as that in Section II.Test images are shown in Figure 2 and their dimension is .The block size of BTC-format image is pixels.First, a randomly generated message, a binary bit string, was generated and embedded into a test cover image, i.e. the BTC-compressed image.Then we extracted the embedded message from the stego-image and recovered the stego-image to its cover image.The experimental results show that the extracted message is exactly the same as the embedded message and the cover image can be completely recovered.This means our proposed scheme can reversibly embed a message into a BTC-compressed image.
The peak signal noise ratio (PSNR) was used to evaluate the performance of the proposed scheme.It was defined as follows, 1 255 dB where MSE is the mean square error.For an image with N pixels, MSE is computed as where and ′ are cover and stego-pixels, respectively.
A larger PSNR implies that a stego-image is more similar to its cover image than a smaller one.It also implies that the visual quality of a stego-image with a higher PSNR is better than that with a smaller one.Researchers usually would like to get an embedding scheme which can obtain a higher PSNR.
Table II shows the visual quality, in terms of PSNR, of a stego-image applying the proposed scheme.When a message is embedded into an image, the image may be distorted by the modification of pixels.The more the messages are embedded, the more the image will be distorted.A good embedding scheme may provide enough embedding space and keep image quality as high as possible.Table II shows that payload capacity is approximately equal to the number of blocks, which means most blocks may embed a message.In addition, the image quality, i.e.PSNR, is more than 28 dB.This shows that a stego-image is similar to its cover image and they may not be distinguishable by human vision.www.ijacsa.thesai.orgV. CONCLUSIONS A reversible data hiding scheme for BTC-compressed image has been proposed.In the proposed scheme, an image is divided into non-overlapping blocks and the BTC algorithm is applied to compress the image.Then a message with two bits is embedded into two blocks by expanding the difference between larger block-mean pair and the one between the smaller block-mean pair.The original BTC-format image may be completely reconstructed after the embedded message is extracted.Experimental results show that the proposed scheme may obtain a stego-image with high visual quality and a payload capacity of one bit per block, approximately.The proposed scheme is a good encoder for applications which need a reversible embedding scheme for BTC-compressed images without complicated computations.

TABLE II .
EMBEDDING PERFORMANCE OF THE PROPOSED SCHEME