Next Article in Journal
Selection of Robotic Machining Parameters with Pneumatic Feed Force Progression
Next Article in Special Issue
An Improved VLSI Algorithm for an Efficient VLSI Implementation of a Type IV DCT That Allows an Efficient Incorporation of Hardware Security with a Low Overhead
Previous Article in Journal
Novel Highly Flexible PCB Design Based on a Via-Less Meander Ground Structure to Transmit mm-Wave RF Signals in 5G Foldable Mobile Products
Previous Article in Special Issue
An Overview of Systolic Arrays for Forward and Inverse Discrete Sine Transforms and Their Exploitation in View of an Improved Approach
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Dual Reversible Data Hiding Based on AMBTC Using Hamming Code and LSB Replacement

Department of Computer Engineering, Sejong University, Seoul 05006, Korea
Electronics 2022, 11(19), 3210; https://doi.org/10.3390/electronics11193210
Submission received: 22 August 2022 / Revised: 25 September 2022 / Accepted: 3 October 2022 / Published: 6 October 2022
(This article belongs to the Special Issue Efficient Algorithms and Architectures for DSP Applications)

Abstract

:
The existing data hiding schemes conceal the data in the cover image and then communicate secretly on the channel. The weakness of these methods is that the security aspect is somewhat lacking, and there is a limit to hiding enough data. In this paper, we propose a reversible data hiding method based on dual AMBTC images. It improves security, which is a weakness of data hiding. AMBTC has strengths in low-bandwidth channel environments with simple calculations and efficient data performance. HC(7,4) and LSB replacement methods are applied to each block of AMBTC to hide secret data. After the embedding process, the two AMBTC-marked images are obtained, and these images are sent to different recipients. The recipients can extract hidden messages and restore the cover AMBTC image by using the proposed method and two marked images. Our proposed data hiding method guarantees sufficient data hiding, proper cover image quality, and restoration of the original cover image. Experimental results show that our method is efficient in terms of image quality and embedding ratio.

1. Introduction

Recently, many people have used community services such as Social Networking Services (SNS) to exchange information and share digital media with many people. Digital media may include text, images, video, and audio, and these resources are at risk of being forged or altered by the latest digital software at any time [1]. Additionally, the Internet, Internet of Things, and email providers that we use are not as reliable as we may imagine, making it possible for any or all of the content to be hijacked by a knowledgeable network attacker, which would cause problems for innocent victims.
A traditional method of solving this problem in terms of security is to apply encryption to digital media and transmit it, and a method to transmit the encryption key using a separate channel can be used. The disadvantage of encrypted messages is that they are easily targeted by attackers. One of the suggested solutions to this problem is data hiding. Data hiding (DH) [2,3,4,5] is a method for hiding a message in digital media and secretly delivering it to the receiver. The advantage of this method is that it may not attract the attention of the attacker. If a secret message is surreptitiously hidden on the cover medium, part of the cover signal will inevitably be permanently damaged. The reason is that the relationship between the secret message to be hidden and the image quality is inversely proportional. That is, as the amount of data to be hidden increases, the quality of the image decreases.
Reversible DH (RDH) [3] is a solution that can avoid permanent damage to the cover image. That is, RDH can restore the image losslessly after extracting information from the cover image. RDH provides solutions for application scenarios that require non-destructive capabilities, such as privacy protection in medical, judicial, and military scenarios. RDH technology can be broadly classified into three methods: pixel extension (DE) [6,7,8] histogram shift (HS) [9], and prediction error extension (PE) [10]. DE is a method for hiding data by first doubling the difference h between two adjacent pixels, hiding one bit from the LSB (least significant bit) of h, and then adjusting the two pixels using h’ and two pixels. In HS [9], the zeros and peak points of the cover image histogram are used to hide secret metadata. That is, while scanning the image, if the pixel (when the grayscale value is α ) is the peak point ( α ) and the bit to hide is `1’, the pixel value is changed to α + 1 . If the bit is `0’, the pixel value remains α . In the existing position of a+1, the value is moved to an adjacent pixel. the information of the moved pixel is stored separately and is used for image restoration. Therefore, the smaller the pixel value of α + 1 , the better. PE [10] is a method of hiding data by using the difference in prediction error between the original pixel and the prediction pixel.
Recently, RDH has expanded the research area to RDH of the encrypted domain [11,12,13] and dual-image-based RDH [14,15,16,17,18,19,20,21,22,23,24,25]. Dual-image-based RDH is a research field in which RDH and secret sharing [26,27] are partially combined. Secret sharing was introduced for the purpose of improving the vulnerability of secret security compared to data hiding. Encoding uses n shadow images, and decoding is made possible by reconstruction of k ( n ) shadow images. Thus, it is known as ( k , n ) threshold secret sharing.
Dual-image-based RDH can be considered as another form of secret sharing using two identical cover images. In dual-image-based RDH, the owner hides data in two identical original cover images; creates two marked images that maintain the original image quality; and delivers them to the receiver. The receiver restores the original cover image after extracting the data. Therefore, the dual-image RDH method can provide higher embedding capacity and security than the traditional method.
Figure 1 shows a diagram of the dual-image RDH strategy. The dual-image method is a model suitable for data delivery that requires the reliability of security. Additionally, it can be used to distribute military deployment images and various fields based on medical images within medical groups.
Chang et al. [14] generate a 5 × 5 modulus matrix using EMD and modulus functions, and then the message (5-ary value) intersects the two diagonals of the submatrix. A modulus function is applied to this to insert data. Chang et al. [15] improved the embedding capacity by increasing the submatrix size from 5 × 5 to 9 × 9 . Lee et al. [16] constructed a crosshair to indicate the relationship between the original pixel and the displayed pixel, precorrected the pixel pairs according to the positioning strategy, and inserted the pixel values after confirming their recoverability. When hiding a secret bit in one pixel, it is possible to hide about 2 bits of data with only a maximum of plus or minus one operation, so that the high quality of marked images can be maintained.
Lin et al. [18] simultaneously embed two five-base secret numbers in each pixel pair of the cover image according to the EMD matrix to generate two stego pixel pairs. In some cases, moving these pairs of stego pixels into the proper position will produce two meaningful shadows. Lu et al. [19] proposed a novel dual-image RDH method based on a center-folding strategy (CFS). The k-bit binary secret was first converted to decimal and then mapped from the range [ 0 , 2 k 1 ] to the range [ 2 k 1 , 2 k 1 1 ] via center folding. Lu et al. [20] propose an alternative approach. It is based on the least significant bit matching (LSB matching) method for embedding using dual imaging technique. Jana et al. [21] proposed an embedding scheme based on the (7, 4) Hamming code, where the secret message bits are embedded through error generation and the original image is recovered using the Hamming error correction code.
Meanwhile, Block Truncation Coding (BTC) [28] is one of the compression methods, and the configuration of BTC is very simple compared to conventional JPEG. BTC compression operation is simple and the quality of BTC-based images is not significantly lower than that of the original image, so it is suitable for applications that do not require high image quality. Lema and Mitchell proposed a variant of BTC, Absolute Moment BTC (AMBTC) [29]. AMBTC adopts a bi-clustering approach, so it uses two quantization levels in blocks, similar to BTC. Compared to BTC, the calculation time is shorter and the image quality is excellent.
Chuang and Chang [30] proposed a DH method in which each block of the bitmap is divided into a smooth block and a complex block, and then the bitmap of the smooth block is replaced with a secret bit. The image quality is controlled by dividing the block into a smooth block and a complex block, creating a difference value (threshold value: T) between two quantization levels representing the block. That is, when the threshold value T is lowered, the image quality is improved, but the DH capacity is deteriorated. If the size of the threshold is increased, the image quality may decrease and the hidden data capacity may increase. Ou and Sun [31] proposed a method to adjust image distortion by adjusting the two quantization levels, but the original image is required for recomputation. Chen et al. [32] proposed a lossless DH method using two quantization level orders. This method is named the Order of Two Quantization Level (OTQL) method, which can conceal one bit per block. This method does not change the coefficients of both quantization levels, so it does not affect the quality of the image.
The BTC-based RDH proposed by Sun et al. [33] obtains BTC-compressed data with an average table, a low average table, and a bitplane sequence. The secret data are then included without loss into the high-average and low-average tables. This is a lossless method based on the relationship between the current value and the neighboring values in the mean table. Chang et al. [34] introduced RDH based on the AMBTC compression code. Secret information is hidden mainly by using joint neighborhood coding (JNC). Hong et al. [35] proposed a RDH for AMBTC compressed codes. Here, this method transforms the quantization levels into means and differences, which are used to carry data bits. Moreover, the classifications of prediction errors are adaptively assigned, and varied length indicators are utilized to effectively reduce the bitrate.
In this paper, we propose a double reversible data hiding (RDH) method based on AMBTC images. This study is the first case of using AMBTC as a cover image. AMBTC is very efficient for image and video transmission in IoT-based systems due to its simple compression calculation and relatively good compression efficiency. The receiver can extract data using data extraction and restoration methods. The proposed method is focused on how to avoid the attacker’s eyes by hiding data while hiding data in the image with less damage to the image. Moreover, the proposed RDH can be used for copyright protection of images and videos. The proposed dual RDH is performed using Hamming codes [36,37] and LSB replacement for bitmaps constituting each block of AMBTC.
The main contributions of this study are summarized in two points: First, HC(7,3) is a code capable of correcting an error of 1 bit in a 7-bit codeword, and is a very useful method for hiding 3 bits when applied to the bitmap constituting the block. Using this method, errors in the data hiding process can be reduced to a minimum. In addition, sufficient data can be hidden by applying the LSB replacement method to the bitmap. Second, it is possible to adjust the amount of hidden data and the quality of the cover image by adjusting the difference value T of the coefficients of the two quantization levels constituting each block of AMBTC.
The rest of this paper is organized as follows. Section 2 introduces the preliminary knowledge for our work. Section 3 describes the proposed dual-AMBTC RDH method. Section 4 shows the experimental results, and Section 5 concludes this paper.

2. Preliminary Knowledge

2.1. AMBTC

BTC is a relatively straightforward and simple lossy image compression method. The BTC method has a low computational cost, making it suitable for non-critical applications where image quality is critical. Later, Lema and Mitchell [29] presented the AMBTC method, which is an improved method of the existing BTC method. The main difference between AMBTC and BTC is that they compute two quantization levels. To compress an image with AMBTC, the image is divided into non-overlapping blocks of × pixels. For each block, x is the pixels that make up the block, and the average pixel value x ¯ is calculated by:
x ¯ = 1 × j = 1 × x j
where x j represents the jth pixel of this block. Each pixel value x j is compared with the average value x ¯ using Equation (2). If x j is greater than or equal to x ¯ , b j is 1, otherwise b j is 0. That is, a bitmap M = [ b j ] consisting of two groups (a set of `1 s’ and a set of `0 s’) is obtained.
b i = 1 , i f ( x j x ¯ ) , 0 , i f ( x j < x ¯ ) .
AMBTC has two quantization values per block: an upper mean and a lower mean. Equation (3) calculates two quantized values in each block, where t represents the number of ones in each bitmap M (condition: x j x ¯ ). · is a function that takes a real number x as input and gives the largest integer less than or equal to x, denoted as floor(x). The two quantization levels Γ 1 and Γ 0 are the upper and lower means, respectively, based on x ¯ .
Γ 1 = 1 x j x ¯ x j and Γ 0 = 1 ( × ) t x j < x ¯ x j .
Finally, the image block is compressed into two quantization levels ( Γ 0 , Γ 1 ) and a bitmap M , i.e., a t r i o ( Γ 0 , Γ 1 , M ) . If = 4 , i.e., process the image as a ( 4 × 4 ) block-wise operation. The 16 pixels that make up a block are 8 + 8 + 16 = 32 bits, so the CR is ( 16 × 8 ) / 32 = 4 . A file size of 2 M bits can be reduced to 0.5 M bits. In the decoding step, when two quantization levels and a bitmap are obtained, the corresponding image block can be easily reconstructed by replacing all ‘1 s’ in bitmap M with Γ 1 and all ‘0 s’ with Γ 0 .

2.2. Hamming Code

The Hamming code [36,37] is a single error correction linear block code with ( n , k ) = ( 2 r 1 , 2 r 1 r ) , where r = n k is the number of check bits and k is the number of message bits in the codeword. A binary linear [ n , k ] code y of length n and dimension k is a k-dimensional linear subspace of F 2 n , where the sum of two vectors and the scalar product of the vectors are defined using ordinary binary operations. Let m be a message of length k and let m F 2 k . For the mapping from any message m to codeword y, we use a generator matrix G. That is, y = m G Hamming code has a parity check matrix H expressed as:
H = 0 0 0 1 1 1 1 0 1 1 0 0 1 1 1 0 1 0 1 0 1
The syndrome decoding algorithm for correcting single errors in Hamming code is given as follows. Given the received codeword y, to estimate e, it first forms the product H y ˜ T = H y T + H e T = H e T . Once we know which bit was corrupted, we can recover the codeword by using the syndrome. The syndrome φ can be obtained as
φ = ( H · y T ) .
If the syndrome φ is equal to zero, there is no error in the codeword y, otherwise the syndrome j = φ is the location of the error. The error can be corrected by inverting the j-th pixel in the codeword y ˜ . That is, y = ( 1 y j ) . Given y, compute H y T . This involves multiplying a Θ ( l o g n ) × n matrix with an n × 1 vector, which can be achieved in time, i.e., Θ ( n l o g n ) .
 Example 1. 
If John sends the codeword y = [ 1 0 0 1 0 1 0 ] to Mary, it is assumed that the codeword y causes an error in the third transmission process. That is, Mary receives the codeword y ˜ = [ 1 0 1 1 0 1 0 ] with an error. Mary computes the syndrome ( φ = H · y T = [ 0 1 1 ] ) and finds the e error. As a result, she obtains the error-corrected codeword y = [ 1 0 0 1 0 1 0 ] .

3. Proposed Scheme

This section introduces a dual-image-based RDH method that applies HC(7,4), LSB direct replacement, and OTQL to each block’s bitmap and two quantization levels. Figure 2 shows the general embedding framework of the proposed method, which consists of two main steps. The first step is to obtain two covered AMBTC images using the AMBTC compression algorithm. The second step is to apply HC(7,4) to the bitmap of each block ( 4 × 4 pixels) of the two cover AMBTC images and covertly hide the message using OTQL for the two quantization levels of the same block. In this process, two marked AMBTCs with hidden data are created, and then these images are transmitted to the receiver. The receiving side can extract data and restore the cover image with the proposed decoding method.

3.1. Data Embedding Procedure

Using AMBTC method (Section 2.1), two cover AMBTC images, I 1 and I 2 , are obtained. In this section, we describe the data embedding procedure (Figure 3) in detail, with two cover images, step by step.
Input: Two cover AMBTC images I 1 and I 2 , secret bits m = ( m 1 , m 2 , , m n ) .
Output: Two marked images I 1 and I 2 .
 Step 1: 
The size of two images is N × N and the variable i denotes 1 i ( N × N ) / ( 4 × 4 ) .
 Step 2: 
Read a sized 4 × 4 block B i 1 and B i 2 of two cover AMBTC I 1 and I 2 , respectively.
 Step 3: 
A codeword is constructed with 7 bits each of blocks B i 1 and B i 2 . That is, y 1 = ( b 1 b 2 b 3 b 4 b 5 b 6 b 7 ) B i 1 and y 2 = ( b 1 b 2 b 3 b 4 b 5 b 6 b 7 ) B i 2 .
 Step 4: 
Equation (6) is applied to codeword y 1 to calculate the syndrome for data hiding, i.e., φ 1 = H y 1 T . The result of XOR operation on the syndrome and 3-bit m is assigned to φ 1 , i.e., φ 1 = φ 1 m j j + 3 . If the result of converting φ 1 to a decimal number is not zero, it is calculated as in Equation (7). Assign the syndrome φ 1 to ( l 1 , l 2 , l 3 ) of block B i 2 (Figure 3), where b 2 d is a function that converts a binary number to a decimal number.
φ 1 = H · y 1 T and φ 2 = H · y 2 T
y i , j 1 = 1 y i , j 1 , i f j = b 2 d ( φ 1 ) , y i , j 1 , otherwise . and y i , j 2 = 1 y i , j 2 , i f j = b 2 d ( φ 2 ) , y i , j 2 , otherwise .
 Step 5: 
In order to hide data in B i 2 , Equations (6) and (7) are applied to codeword y 2 , and the method proceeds in the same way as in Step 4, i.e., φ 2 = ( H · y 2 T ) m j j + 3 . Assign the syndrome φ 2 to ( l 1 , l 2 , l 3 ) of block B i 1 (Figure 3).
 Step 6: 
For F = ( f 1 , f 2 , , f 5 ) of blocks B i 1 and B i 2 , respectively, data are hidden by directly replacing m j j + 10 bits with the bitmap. That is, f 1 5 B 1 = m j j + 5 and f 1 5 B 2 = m j j + 5 .
 Step 7: 
A bit of m is hidden using the order of the two quantization levels. If 1 bit of m is ‘0’, the order of the two quantization levels ( Γ 0 , Γ 1 ) is not changed. If m = ‘1’, the order of the two quantization levels (Equation (8)) is changed to ( Γ 1 , Γ 0 ) .
s w a p ( Γ 0 , Γ 1 ) , if ( m = 1 ) no change , otherwise .
 Step 8: 
If variable i is less than ( N × N ) / ( 4 × 4 ) , go to Step 2.
If this process is repeatedly applied as much as the size of the image, marked images I 1 and I 2 are obtained, respectively.

3.2. Data Extraction and Recovering Procedure

In this section, we extract hidden data from two marked images I 1 and I 2 and also reconstruct the cover AMBTC image. The detailed process is described in detail (Figure 4) step by step as follows.
Input: Two marked AMBTC I 1 and I 2 .
Output: The reconstructed AMBTC I, secret bit m = ( m 1 , m 2 , , m n ) .
 Step 1: 
The size of two images is N × N and the variable i is the block index, i.e., 1 i ( N × N ) / ( 4 × 4 ) . The variable j is initialized to one.
 Step 2: 
Read a block B i 1 and B i 2 of two marked AMBTC I 1 and I 2 , respectively.
 Step 3: 
A codeword is constructed with 7 bits each of blocks B i 1 and B i 2 . That is, y 1 = ( b 1 b 2 b 3 b 4 b 5 b 6 b 7 ) B i 1 and y 2 = ( b 1 b 2 b 3 b 4 b 5 b 6 b 7 ) B i 2 .
 Step 4: 
In order to extract three hidden bits m in the block B i 1 , the syndrome φ 1 is calculated for the codeword y 1 by Equation (6). Put the extracted bits into m, i.e., m j j + 3 = φ 1 , j = j + 3 .
 Step 5: 
To extract three hidden bits m in the block B i 2 , the syndrome φ 2 is calculated for the codeword y 2 using Equation (6). Put the extracted bits into m, i.e., m j j + 3 = φ 2 , j = j + 3 .
 Step 6: 
Extract hidden bits from directly F = ( f 1 , f 2 , f 5 ) B i 1 and B i 2 , i.e., m j j + 5 = F B i 1 , m j j + 5 = F B i 2 and j = j + 5 , respectively.
 Step 7: 
According to the order of the two quantization levels, 1 bit is extracted by using Equation (9), and then put into m j .
m j = 1 , if ( Γ 0 > Γ 1 ) , 0 , otherwise .
 Step 8: 
( l 1 , l 2 , l 3 ) of B i 2 is a syndrome for y 1 , which is converted to a decimal number, i.e., p o s = b 2 d ( [ l 1 l 2 l 3 ] ) and then the pixel corresponding to y 1 is restored to the original pixel using Equation (10).
y ( p o s ) = 1 y ( p o s ) .
 Step 9: 
( l 1 , l 2 , l 3 ) of B i 1 is a syndrome for y 2 , which is converted to a decimal number, and then the pixel corresponding to y 2 is restored to the original pixel by using Equation (10).
 Step 10: 
The restored bitmap block is completed by copying y 1 of B i 1 and y 2 of B i 2 to the bitmap block B i , and then copied to the corresponding positions of I.
 Step 11: 
If variable index i is less than ( N × N ) / ( 4 × 4 ) , go to Step 2.

4. Experimental Results and Discussions

In this section, we simulate the performance of the proposed AMBTC-based dual data hiding and describe the possibilities and strengths of the proposed method. The platform used in the experiment has a Core i5-8250U processor, 1.60 GHz speed, 8 GB RAM, and the software for the simulation is MATLAB R2019b. Our proposed experimental model selects several images from the standard USC-SIPI image database [38] and uses them for the experiment. The image used is a 512 × 512 grayscale image. Figure 5 is the original grayscale image for simulation (e.g., Lena, Pepper, Airplane, Boat, Goldhill, Couple, Baboon, Zelda, Barbara, Tiffany).
In order to evaluate the performance of the proposed method, ER, PSNR, and SSIM are introduced. ER is commonly used to estimate the performance of the embedding capacity and is calculated by
E R = t o t ( N × N × 2 )
where tot refers to the total number of hidden bits, N is the height and the width of the cover image, and 2 denotes the number of marked images.
PSNR [39] provides an objective criterion for evaluating image quality. As for PSNR, the larger the calculated value, the higher the image quality recognized, and if it is 30 dB or more, the human visual system recognizes it as sufficiently similar to the original image. PSNR is calculated using Equations (12) and (13).
P S N R = 10 × l o g 10 255 2 M S E .
Mean-Squared Error (MSE) is a formula for the difference in mean intensity between a marked image and the original image. That is, the smaller the difference between the two images, the lower the MSE and the higher the PSNR. The notations y and y denote the pixels of the cover image and the marked image, respectively. The formula for MSE is:
M S E = 1 N × N i = 1 N × N ( y i y i ) 2 .
In other word, the MSE is the mean ( 1 N × N i = 1 N × N ) of the squares of the errors ( y i y i ) . 255 2 means maximum pixel intensity.
In addition, another measurement introduced for performance evaluation is SSIM [39], which is a formula (Equation (14)) that measures the similarity between the original image and the marked image.
S S I M ( p , p ) = ( 2 μ p μ p + c 1 ) ( 2 σ p p + c 2 ) ( μ p 2 + μ p 2 + c 1 ) ( σ p 2 + σ p 2 + c 2 )
where μ p and μ p are the mean values of p and p , respectively, and c 1 is the stabilization constant and σ p 2 , σ p 2 , and σ p p are the variances and covariances of the cover image and the stego image. c 1 and c 2 are constant values used to avoid division by zero problems.
Table 1 compares the PSNR of the cover AMBTC image and the two marked AMBTCs with the original image. A message is hidden in a bitmap that satisfies the condition T 5 , the difference between the two quantization levels representing each block. Table 1 shows the size of the actual hidden bit under this condition. PSNR ( O I ) is a measure of the PSNR of the cover image with respect to the original image. SSIM ( O I ) measures the SSIM of the cover image with respect to the original image. Except for the high-frequency Baboon image, it can be seen that the measurement is very similar to the original image. PSNR ( I I ) #1 is measured PSNR of marked image#1 including cover image and data, and it was measured with high PSNR of 45dB or more. PSNR ( I I ) #2 is the PSNR evaluation for the second marked image. The PSNR measurement comparing the marked image with the original image is the PSNR ( O I ) . It can be seen that most of the measurement results are very close to PSNR ( O I ) . Therefore, it can be confirmed that the damage to the cover image is not significant.
Table 2 shows EC and PSNR measurements while increasing the difference T between two quantization levels representing a block to 5, 10, 15, and 20. For the Lena image, the EC is measured to be 148705 for T = 5 and the EC is measured to be 247,313 for T = 20 . In this case, the mean PSNR is 33.3678 and 32.2417, respectively. In Table 2, the reason for the measurement based on the difference between the two quantization levels is that EC and PSNR can be adjusted according to the difference.That is, as the two differences decrease, the EC also decreases. Meanwhile, PSNR increases. EC and PSNR are inversely proportional.
Table 3 compares the maximum EC for the existing method and our proposed method. However, since there has been no previous study on the AMBTC-based dual RDH method, it is compared with the studies of the AMBTC-based RDH (Sun et al. (2013) [33], Chang et al. (2018) [34], and W. Hong (2018) [35]) among related studies. In this experiment, the EC of our proposed method shows the highest performance compared to the existing methods. The PSNR is relatively low, because it can be seen that the PSNR decreased inversely because the EC was increased to the maximum.
Table 4 compares the ER of the proposed method and the existing method (Lee et al. (2013) [15], Liu et al. (2018) [23], Lin et al. (2019) [18]). The ER of the existing method is measured from the uncompressed image, and the ER of the proposed method is obtained from the compressed image. The file size of our proposed AMBTC-compressed image is four times smaller, with an ER of 0.56. Therefore, it can be seen that the performance of our proposed method is not bad.
Compared to data hiding for a single image, data throughput may be slightly longer when using two images. However, encoding does not require real-time processing. Additionally, in this paper, two identical cover-image-based data hiding methods use some of the advantages of the existing secret sharing method, and secret sharing improves security by itself. This is an advantage of dual image-based data hiding. The fact that the amount of data hiding can be increased can also be an advantage.

5. Conclusions

In this paper, we proposed AMBTC-based dual-image RDH using HC (7,3) and LSB replacement. This method introduces AMBTC for the first time and provides high ER = 0.56 and PSNR. Because dual-RDH is used, it has security advantages over traditional data hiding methods. Since our proposed method is RDH, the receiver can restore the original cover image by using two marked images and a data restoration method. By using the AMBTC compressed image as a cover image, fast transmission in a low-traffic network may be possible. In addition, the proposed method has the advantage that the quality of the two marked images is almost the same because the payload is properly distributed. In the future, we would like to develop a new technology that can improve the performance of ER and PSNR by further developing research on dual data hiding based on AMBTC.

Funding

This research received no external funding.

Conflicts of Interest

The authors declare no conflict of interest.

Abbreviations

The following abbreviations are used in this manuscript:
AMBTCAbsolute Moment Block Truncation Coding.
BTCBlock Truncation Coding.
DHData Hiding.
RDHReversible Data Hiding.
Dual RDHDual Reversible Data Hiding.
HCHamming Code.
I 1 Cover Image 1.
I 2 Cover Image 2.
I 1 Marked Image 1.
I 2 Marked Image 2.
mSecret bits.
B A 4 × 4 block of the cover image.
yA codeword.
b 2 d A function that converts a binary number to decimal number.
φ Syndrome.
xA pixel.
x ¯ Average pixel value.
Γ 0 and Γ 1 Two quantization levels.
H A parity check matrix.

References

  1. Suryawanshi, P.; Padiya, P.; Mane, V. Detection of Contrast Enhancement Forgery in Previously and Post Compressed JPEG Images. In Proceedings of the 2019 IEEE 5th International Conference for Convergence in Technology (I2CT), Bombay, India, 29–31 March 2019; pp. 1–4. [Google Scholar] [CrossRef]
  2. Bender, W.; Gruhl, D.; Morimote, N.; Lu, A. Techniques for data hiding. IBM Syst. J. 1996, 35, 313–336. [Google Scholar] [CrossRef]
  3. Shi, Y.Q.; Li, X.; Zhang, X.; Wu, H.-T.; Ma, B. Reversible data hiding: Advances in the past two decades. IEEE Access 2016, 4, 3210–3237. [Google Scholar] [CrossRef]
  4. Kim, C.; Shin, D.-K.; Yang, C.-N.; Leng, L. Hybrid data hiding based on AMBTC using enhanced Hamming code. Appl. Sci. 2020, 10, 5336. [Google Scholar] [CrossRef]
  5. Yang, C.N.; Wu, S.Y.; Chou, Y.S.; Kim, C. Enhanced stego-image quality and embedding capacity for the partial reversible data hiding scheme. Multimed. Tools Appl. 2019, 78, 18595–18616. [Google Scholar] [CrossRef]
  6. Tian, J. Reversible data embedding using a difference expansion. IEEE Trans. Circuits Syst. Video Technol. 2003, 13, 890–896. [Google Scholar] [CrossRef] [Green Version]
  7. Wu, D.C.; Tsai, W.H. A steganographic method for images by pixel-value differencing. Pattern Recognit. Lett. 2013, 24, 1613–1626. [Google Scholar] [CrossRef]
  8. Alattar, A.M. Reversible watermark using the difference expansion of a generalized integer transform. IEEE Trans. Image Process. 2004, 13, 1147–1156. [Google Scholar] [CrossRef]
  9. Ni, Z.; Shi, Y.Q.; Ansari, N.; Su, W. Reversible data hiding. IEEE Trans. Circuits Syst. Video Technol. 2006, 16, 354–362. [Google Scholar]
  10. Tsai, P.Y.; Hu, Y.C.; Yeh, H.L. Reversible image hiding scheme using predictive coding and histogram shifting. Signal Process. 2009, 89, 1129–1143. [Google Scholar] [CrossRef]
  11. Zhang, W.; Wang, H.; Hou, D.; Yu, N. Reversible Data Hiding in Encrypted Images by Reversible Image Transformation. IEEE Trans. Multimed. 2016, 18, 1469–1479. [Google Scholar] [CrossRef]
  12. Cao, X.; Du, L.; Wei, X.; Meng, D.; Guo, X. High Capacity Reversible Data Hiding in Encrypted Images by Patch-Level Sparse Representation. IEEE Trans. Cybern. 2016, 46, 1132–1143. [Google Scholar] [CrossRef]
  13. Ke, Y.; Zhang, M.; Zhang, X.; Liu, J.; Su, T.; Yang, X. A Reversible Data Hiding Scheme in Encrypted Domain for Secret Image Sharing Based on Chinese Remainder Theorem. IEEE Trans. Circuits Syst. Video Technol. 2021, 32, 2469–2481. [Google Scholar] [CrossRef]
  14. Chang, C.C.; Kieu, T.D.; Chou, Y.C. Reversible data hiding scheme using two steganographic images. In Proceedings of the IEEE Region 10 International Conference (TENCON), Taipei, Taiwan, 30 October–2 November 2007; pp. 1–4. [Google Scholar]
  15. Chang, C.C.; Chou, Y.C.; Kieu, T.D. Information hiding in dual images with reversibility. In Proceedings of the 3rd International Conference on Multimedia and Ubiquitous Engineering, Qingdao, China, 4–6 June 2009; pp. 145–152. [Google Scholar]
  16. Lee, C.F.; Huang, Y.L. Reversible data hiding scheme based on dual stegano-images using orientation combinations. Telecommun. Syst. 2013, 52, 2237–2247. [Google Scholar] [CrossRef]
  17. Chang, C.C.; Lu, T.C.; Horng, G.; Huang, Y.H.; Hsu, Y.M. A high payload data embedding scheme using dual stego-images with reversibility. In Proceedings of the 3rd International Conference on Information, Communications and Signal Processing, Islamabad, Pakistan, 16–18 December 2013; pp. 1–5. [Google Scholar]
  18. Lin, J.Y.; Chen, Y.; Chang, C.C.; Hu, Y.C. Dual-image with integrity verification using exploiting modification direction. Multimed. Tools Appl. 2019, 78, 25855–25872. [Google Scholar] [CrossRef]
  19. Lu, T.C.; Wu, J.H.; Huang, C.C. Dual-image-based reversible data hiding method using center folding strategy. Signal Process. 2015, 115, 195–213. [Google Scholar] [CrossRef]
  20. Lu, T.C.; Tseng, C.Y.; Wu, J.H. Dual imaging-based reversible hiding technique using LSB matching. Signal Process. 2015, 108, 77–89. [Google Scholar] [CrossRef]
  21. Jana, B.; Giri, D.; Mondal, S.K. Dual image based reversible data hiding scheme using (7,4) hamming code. Multimed. Tools Appl. 2018, 77, 763–785. [Google Scholar] [CrossRef]
  22. Yao, H.; Qin, C.; Tang, Z.; Tian, Y. Improved dual-image reversible data hiding method using the selection strategy of shiftable pixels’ coordinates with minimum distortion. Signal Process. 2017, 135, 26–35. [Google Scholar] [CrossRef]
  23. Liu, Y.; Chang, C.C. A turtle shell-based visual secret sharing scheme with reversibility and authentication. Multimed. Tools Appl. 2018, 77, 25295–25310. [Google Scholar] [CrossRef]
  24. Chen, X.; Hong, C. An efficient dual-image reversible data hiding scheme based on exploiting modification direction. J. Inf. Secur. Appl. 2021, 58, 102702. [Google Scholar] [CrossRef]
  25. Sun, Y.X.; Li, Q.; Yan, B.; Pan, J.S.; Yang, H.M. Reversible data hiding in dual encrypted halftone image using matrix embedding, Multimed. Tools Appl. 2020, 79, 27659–27682. [Google Scholar] [CrossRef]
  26. Shamir, A. How to share a secret. Commun. Assoc. Comput. Mach. 1979, 22, 612–613. [Google Scholar] [CrossRef]
  27. Naor, M.; Shamir, A. Visual cryptography. In Advances in Cryptology—EUROCRYPT’94, Perugia, Italy, 9–12 May 1994; De Santis, A., Ed.; Lecture Notes in Computer Science; Springer: Berlin/Heidelberg, Germany, 1995; Volume 950. [Google Scholar]
  28. Delp, E.; Mitchell, O. Image compression using block truncation coding. IEEE Trans. Commun. 1979, 27, 1335–1342. [Google Scholar] [CrossRef]
  29. Lema, M.D.; Mitchell, O.R. Absolute moment block truncation coding and its application to color images. IEEE Trans. Commun. 1984, 32, 1148–1157. [Google Scholar] [CrossRef]
  30. Chuang, J.C.; Chang, C.C. Using a simple and fast image compression algorithm to hide secret information. Int. J. Comput. Appl. 2006, 28, 329–333. [Google Scholar]
  31. Ou, D.; Sun, W. High payload image steganography with minimum distortion based on absolute moment block truncation coding. Multimed. Tools Appl. 2015, 74, 9117–9139. [Google Scholar] [CrossRef]
  32. Chen, J.; Hong, W.; Chen, T.S.; Shiu, C.W. Steganography for BTC compressed images using no distortion technique. Imaging Sci. J. 2013, 58, 177–185. [Google Scholar] [CrossRef]
  33. Sun, W.; Lu, Z.M.; Wen, Y.C.; Yu, F.X.; Shen, R.J. High Performance Reversible Data Hiding for Block Truncation Coding Compressed Images. Signal Image Video Process. 2013, 7, 297–306. [Google Scholar] [CrossRef]
  34. Chang, C.C.; Chen, T.S.; Wang, Y.K.; Liu, Y.J. A reversible data hiding scheme based on absolute moment block truncation coding compression using exclusive OR operator. Multimed. Tools Appl. 2018, 77, 9039–9053. [Google Scholar] [CrossRef]
  35. Hong, W.; Zhou, X.Y.; Weng, S.W. Joint adaptive coding and reversible data hiding for AMBTC compressed images. Symmetry 2018, 10, 254. [Google Scholar] [CrossRef] [Green Version]
  36. Rurik, W.; Mazumdar, A. Hamming codes as error-reducing codes. In Proceedings of the 2016 IEEE Information Theory Workshop (ITW), Cambridge, UK, 11–14 September 2016; pp. 404–408. [Google Scholar]
  37. Moon, T.K. Error Correction Coding—Mathematical Methods and Algorithms; John Wiley & Sons: Hoboken, NJ, USA, 2005; pp. 2001–2006. [Google Scholar]
  38. Image Databases. Available online: https://www.imageprocessingplace.com/root_files_V3/image_databases.htm (accessed on 5 May 2022).
  39. Horé, A.; Ziou, D. Image Quality Metrics: PSNR vs. SSIM. In Proceedings of the 20th International Conference on Pattern Recognition, Istanbul, Turkey, 23–26 August 2010; pp. 2366–2369. [Google Scholar] [CrossRef]
Figure 1. Schematic diagram of the dual-image RDH application scenario.
Figure 1. Schematic diagram of the dual-image RDH application scenario.
Electronics 11 03210 g001
Figure 2. Schematic diagram for the proposed model.
Figure 2. Schematic diagram for the proposed model.
Electronics 11 03210 g002
Figure 3. Diagram of embedding procedure.
Figure 3. Diagram of embedding procedure.
Electronics 11 03210 g003
Figure 4. Diagram of extraction and recovering procedure.
Figure 4. Diagram of extraction and recovering procedure.
Electronics 11 03210 g004
Figure 5. Test images: (a) Lena, (b) Peppers, (c) Airplane, (d) Boat, (e) Goldhill, (f) Couple, (g) Baboon, (h) Zelda, (i) Barbara, (j) Tiffany ( 512 × 512 ) .
Figure 5. Test images: (a) Lena, (b) Peppers, (c) Airplane, (d) Boat, (e) Goldhill, (f) Couple, (g) Baboon, (h) Zelda, (i) Barbara, (j) Tiffany ( 512 × 512 ) .
Electronics 11 03210 g005
Table 1. Comparison of PSNR for all dual RDH AMBTC images (when threshold T = 5 ).
Table 1. Comparison of PSNR for all dual RDH AMBTC images (when threshold T = 5 ).
Images PSNR ( O I ) SSIM ( O I ) EC PSNR ( I I )
#1
PSNR ( I I )
#2
PSNR ( O I )
#1
PSNR ( O I )
#2
Lena33.65560.946814870545.255745.287533.365433.3702
Pepper34.09680.939511459345.749245.701733.805533.8068
Airplane32.03720.950416819345.719745.75631.856231.8587
Boat31.57000.938814286546.60346.604631.436531.4365
Goldhill32.8360.92086753750.168550.158032.754532.7551
Couple31.25670.92417019348.835448.854231.180631.1809
Baboon26.97650.88723444957.756557.49426.972626.9726
Zelda36.65370.947612320145.182445.147836.080536.075
Barbara27.07560.92488955348.921848.983227.047827.0477
Tiffany35.65760.947314752145.169545.169535.195735.206
Average31.82350.931110658848.243648.220831.611131.6115
Table 2. PSNR of dual stego images with embedding capacity.
Table 2. PSNR of dual stego images with embedding capacity.
Original Image IThreshold TECPSNR 1 PSNR 2 Avg. PSNR
Lena5148,70533.365433.370233.3678
1020686532.820832.833532.8271
1523254532.229232.254232.2417
2024731331.659431.69931.6792
Boat514286531.436531.436531.4365
1017452931.224131.217231.2206
1519924930.822930.809130.816
2021942530.241630.250530.246
Pepper511459333.805533.806833.8061
1021398532.854532.863732.8591
1524168132.233632.252132.2428
2025459331.715631.764131.7398
Goldhill56753732.754532.755132.7548
1014107332.092232.099132.0956
1519577731.098231.111631.1049
2022585730.225330.242330.2338
Zelda512320136.080536.07536.0777
1022636934.537534.561534.5495
1525342533.680533.686533.6835
2026745732.933832.966832.9503
Barbara58955327.047827.047727.0477
1013596926.934526.932926.9337
1515849726.796226.797326.7967
2026745726.655726.654526.6551
Airplane516819331.856231.858731.8574
1020854531.584431.58431.5842
1522787331.23231.236331.2341
2024062530.825730.835530.8306
Couple57019331.180631.180931.1807
1014300930.738530.742230.7403
1518072130.198330.190630.1944
2020521729.608829.604629.6067
Tiffany514752135.195735.20635.2008
1021182534.311134.319734.3154
1524043333.433433.431133.4322
2025598532.642532.675532.659
Baboon53444926.972626.972626.9726
107048126.876826.878126.8774
1510459326.66426.666526.6652
2012822526.405626.405626.4056
Table 3. Comparing the maximum EC and PSNR of the existing method and our proposed method.
Table 3. Comparing the maximum EC and PSNR of the existing method and our proposed method.
ImagesSun et al. [33]Chang et al. [34]W. Hong et al. [35]The Proposed
ECPSNRECPSNRECPSNRECPSNR 1 PSNR 2 Avg. PSNR
Baboon64,00826.9815143926.346451626.9812822526.405626.405626.4056
Boats--16678631.166451631.1221942530.241630.250530.2460
Goldhill--16818533.726451632.8322585730.225330.242330.2338
Airplane64,00831.9717781433.296451631.9724062530.825730.835530.8306
Lena64,00833.2417514533.726451633.2424731331.659431.699031.6792
Peppers64,00833.4217422234.106451633.4225459331.715631.764131.7398
Tiffany64,00835.77--6451635.7725598532.642532.675532.6590
Average64,00832.2816893232.066451632.1922457530.530830.550030.5400
Table 4. Comparison of maximum embedding ratio with different schemes.
Table 4. Comparison of maximum embedding ratio with different schemes.
ImagesFile SizeLee et al. [15]Liu et al. [23]Lin et al. [18]The Propose
ERERERFile SizeER
Baboon258 KB1.0911.0764 KB0.56
Barbara258 KB1.0911.0764 KB0.56
Lena258 KB1.0911.0764 KB0.56
Pepper258 KB1.0911.0764 KB0.56
Goldhill258 KB1.0911.0764 KB0.56
Airplane258 KB1.0911.0764 KB0.56
Boat258 KB1.0911.0764 KB0.56
Couple258 KB1.0911.0764 KB0.56
Zela258 KB1.090.991.0764 KB0.56
Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Share and Cite

MDPI and ACS Style

Kim, C. Dual Reversible Data Hiding Based on AMBTC Using Hamming Code and LSB Replacement. Electronics 2022, 11, 3210. https://doi.org/10.3390/electronics11193210

AMA Style

Kim C. Dual Reversible Data Hiding Based on AMBTC Using Hamming Code and LSB Replacement. Electronics. 2022; 11(19):3210. https://doi.org/10.3390/electronics11193210

Chicago/Turabian Style

Kim, Cheonshik. 2022. "Dual Reversible Data Hiding Based on AMBTC Using Hamming Code and LSB Replacement" Electronics 11, no. 19: 3210. https://doi.org/10.3390/electronics11193210

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop