
Citation: Li Li, Min He, Shanqing Zhang, Ting Luo, Chin-Chen Chang. AMBTC based high payload data hiding with modulo-2 operation and Hamming code[J]. Mathematical Biosciences and Engineering, 2019, 16(6): 7934-7949. doi: 10.3934/mbe.2019399
[1] | Cheonshik Kim, Dongkyoo Shin, Ching-Nung Yang . High capacity data hiding with absolute moment block truncation coding image based on interpolation. Mathematical Biosciences and Engineering, 2020, 17(1): 160-178. doi: 10.3934/mbe.2020009 |
[2] | Yan-Xiao Liu , Ching-Nung Yang, Qin-Dong Sun . Enhance embedding capacity for switch map based multi-group EMD data hiding. Mathematical Biosciences and Engineering, 2019, 16(5): 3382-3392. doi: 10.3934/mbe.2019169 |
[3] | Guodong Ye, Huishan Wu, Kaixin Jiao, Duan Mei . Asymmetric image encryption scheme based on the Quantum logistic map and cyclic modulo diffusion. Mathematical Biosciences and Engineering, 2021, 18(5): 5427-5448. doi: 10.3934/mbe.2021275 |
[4] | Dingwei Tan, Yuliang Lu, Xuehu Yan, Lintao Liu, Longlong Li . High capacity reversible data hiding in MP3 based on Huffman table transformation. Mathematical Biosciences and Engineering, 2019, 16(4): 3183-3194. doi: 10.3934/mbe.2019158 |
[5] | Li-na Zhang, Jia-qi Sun, Xiao-yu Zhang, Qing-peng Chen, Jing Zhang . Two-level QR code scheme based on region matrix image secret sharing algorithm. Mathematical Biosciences and Engineering, 2023, 20(9): 16678-16704. doi: 10.3934/mbe.2023743 |
[6] | Shudong Wang, Yuliang Lu, Xuehu Yan, Longlong Li, Yongqiang Yu . AMBTC-based visual secret sharing with different meaningful shadows. Mathematical Biosciences and Engineering, 2021, 18(5): 5236-5251. doi: 10.3934/mbe.2021266 |
[7] | Kaimeng Chen, Chin-Chen Chang . High-capacity reversible data hiding in encrypted images based on two-phase histogram shifting. Mathematical Biosciences and Engineering, 2019, 16(5): 3947-3964. doi: 10.3934/mbe.2019195 |
[8] | Jimmy Ming-Tai Wu, Jerry Chun-Wei Lin, Philippe Fournier-Viger, Youcef Djenouri, Chun-Hao Chen, Zhongcui Li . The density-based clustering method for privacy-preserving data mining. Mathematical Biosciences and Engineering, 2019, 16(3): 1718-1728. doi: 10.3934/mbe.2019082 |
[9] | Guozheng Yang, Lintao Liu, Xuehu Yan . A compressed secret image sharing method with shadow image verification capability. Mathematical Biosciences and Engineering, 2020, 17(4): 4295-4316. doi: 10.3934/mbe.2020237 |
[10] | Rong Li, Xiangyang Li, Yan Xiong, An Jiang, David Lee . An IPVO-based reversible data hiding scheme using floating predictors. Mathematical Biosciences and Engineering, 2019, 16(5): 5324-5345. doi: 10.3934/mbe.2019266 |
With the rapid development of network and multimedia technologies, illegal attackers can easily grab, tamper or copy secret data during transmission. Data hiding technologies embed secret data into the digital media without attracting attacker's attention for disguise, which is an efficient way to protect data [1,2,3,4,5,6]. There are spatial domain based [7,8,9,10,11,12], frequency domain based [13,14] and compressed domain based [15,16,17] data hiding methods. Least significant bit (LSB) replacement is a classical spatial domain based data hiding method with little visual distortion [18]. However, in reality, compressed image format is often used for image transmission due to the limitation of storage space and bandwidth. If data are embedded in spatial domain, and the stego image is compressed, it will cause the loss of the secret data. As for the frequency domain method, the original images are transformed into frequency format for data embedding, such as Discrete Fourier Transformation (DFT) [19], Discrete Cosine Transformation (DCT) [20]. This kind of method is more robust against compression compared with the spatial domain based data hiding methods. The compressed domain baseddata hiding method embeds secret data by modifying the compressed code. Most of data hiding methods use redundancy in the image to embed data, and however, the compressed image greatly decreases redundancy. Thus, the compressed domain baseddata hiding method has a smaller payload compared with the spatial domain based data hiding method. However, since the image was usually stored or transmitted with the compressed format so that the compressed domain based data hiding method attracted researchers. Some compressed domain baseddata hiding methods embedded data into vector quantization (VQ) format [21], joint photographic experts group (JPEG) format [22], and absolute moment block truncation coding (AMBTC) format [23,24,25,26,27,28] images. Compared to VQ and JPEG, AMBTC requires less computing cost but achieves acceptable image quality. Therefore, it is more suitable for real-time and low-power applications such as portable digital devices. Due to the increasing demand for low-cost image compression, several data hiding methods for AMBTC codes were proposed.
In 2006, Chuang et al. [23] proposed a high payload data hiding method based on BTC images. Specifically, each block is classified as a smooth type or a complex type, and secret data are embedded into the bitmap of the selected smooth blocks. In 2015, Ou and Sun [24] presented a data hiding method based on AMBTC, and the bitmaps of smooth blocks were used to embed the data. Moreover, two quantization levels in the smooth block were recalculated to reduce the image distortion. However, recalculation needs the original image block, which decreases the scope of data hiding application. In 2016, Bai and Chang [25] used a two-phase strategy to embed the data into AMBTC compressed images by using matrix encoding. The Hamming code (7, 4) was performed on the quantization levels and the bitmap to embed the data in the first and second phases, respectively. However, modification of the bitmaps in complex blocks will cause visual distortion, especially in edge blocks. In 2018, Kim and Shin [26] proposed an efficient reversible data hiding algorithm based on the histogram modification of AMBTC-compressed images. However, they could not decode properly after embedding data. In 2019, Kumar et al.'s [27] used two thresholds to classify three categories of AMBTC compressed images. This method increased embedding capacity without much improvement on image quality. At the same time, Kumar et al.'s [28] used adaptive quantization and dynamic bit plane to embed data into AMBTC compressed images by using bit-replacement strategy. Although this method improved the embedding capacity, the lengths of segments in the compression code were variable after embedding different secret data, which could not maintain 2 bits per pixel the same as the original AMBTC had.
Considering embedding capacity and visual quality, we propose a data hiding method by modifying the quantization level and the bitmap of AMBTC compressed codes to minimize the distortion between the original AMBTC image and the stego image. Firstly, an image is divided into non-overlapping blocks, and these blocks are classified into smooth blocks and complex blocks. The smooth blocks are combined with two quantization levels, and secret data are embedded by using modulo-2 operation. Hamming code (3, 2) is used to embed extra two bits of the secret data into the three least significant bits of two quantization levels. For the complex blocks, lossless embedding is used to embed one bit of secret data by swapping the orders of two quantization levels. Experimental results demonstrate that the proposed method achieves higher payload and better image quality compared with the existing data hiding methods.
The rest of this paper is organized as follows. Section 2 gives the introduction of related works. The proposed method is described in detail in Section 3. The experimental results are analyzed in Section 4. Section 5 gives the conclusion.
The AMBTC compression technique, Hamming code (3, 2) and modulo-2 operation are briefly introduced in this section.
AMBTC is a lossy compression algorithm for grayscale or color images. AMBTC, which was proposed by Lema and Michell [29] in 1984, is a modified version of Block Truncation Coding (BTC) [30]. It requires less computing time than BTC and can further improve the performance of traditional BTC technology. Take the gray image as an example, firstly, the image is divided into non-overlapping blocks with a size of n×n. The average value of pixels in each block is calculated as:
ˉx=1W×HN∑i=1xi | (1) |
where xi represents the ith pixel value, N is the total number of pixels, and W and H represent the width and height of each block, respectively. The bitmap B of AMBTC is constructed as:
Bi={1if xi≥¯x0if xi<¯x | (2) |
Equations (3) and (4) are used to calculate the higher quantization level a and lower quantization level b of each block.
a=⌊1t∑xi≥ˉxxi⌋ | (3) |
b=⌊1(W×H)−t∑xi<ˉxxi⌋ | (4) |
where t is the number of pixels whose values are greater than x. When decoding, each "1" in the bitmap B is replaced by a, and each "0" is replaced by b, as shown in Eq (5).
gi={aif(Bi=1)bif(Bi=0) | (5) |
where gi represents the pixel of the reconstructed grayscale image.
Figure 1 shows an example of the encoding and decoding processes of AMBTC. Let xi = {150,151,148,150; 146,147,147,148; 146,147,144,143; 144,143,141,143}. The average value x of xi is 146.13. Therefore, we have a = 148, b = 143, and Bi = {1111; 1111; 1100; 0000}. To construct xi', 0 and 1 in Bi are replaced by 148 and 143, respectively. Therefore, the reconstructed image block xi' = {148,148,148,148; 148,148,148,148; 148,148,143,143; 143,143,143,143}.
Hamming code (3, 2) [31] is used in the proposed method. Its parity-check matrix H is shown in Eq (6).
H=[011101] | (6) |
The check value EP of 3-bit code P = (p1, p2, p3) can be obtained from Eq (7).
E(P)=(H×PT)Tmod 2 | (7) |
For example, if the received codeword is P = (1, 0, 1) and the check value E(P) = (1, 0) is obtained according to Eq (7), which denotes that the second bit is wrong during transmission. The receiver only needs to flip the second bit to get the correct codeword P' = (1, 1, 1).
Modulo-2 operations [32] include modulo-2 addition, modulo-2 subtraction, modulo-2 multiplication and modulo-2 division. Modulo-2 multiplication and modulo-2 division are used in the proposed method. The modulo-2 multiplication is used to deal with the intermediate results by using modulo-2 addition. The modulo-2 division is actually an XOR operation. The relationship between modular division and multiplication is shown in Eqs (8) and (9).
S÷K=q⋯⋯r | (8) |
K×q+r=S | (9) |
where S represents the dividend, K represents the divisor, q represents the quotient, and r represents the remainder. In addition, the divisor K has the highest bit of 1, and the length of the remainder r is one bit less than the divisor K. Figure 2 shows an example of modulo-2 multiplication and modulo-2 division.
In this paper, an AMBTC based high payload data hiding with modulo-2 operation is proposed. The blocks of the AMBTC compressed codes are classified as smooth blocks and complex blocks. In the smooth block, firstly, the secret data and the four most significant bits of two quantization levels are computed using modulo-2 division, and the obtained quotient and remainder replace the bitmap. Then, the three least significant bits of the two quantization levels are used to embed the two additional secret bits with Hamming code (3, 2), respectively. If the modified quantization level is still within the range of the smooth block, the original quantization level will be replaced by the modified quantization level. In the complex block, a secret bit is embedded by swapping the order of two quantization levels and flipping the bitmap. The embedding strategy of the complex blocks can further improve the capacity of the proposed method without causing any distortion.
In this section, secret data are embedded using modulo-2 division and Hamming code (3, 2) to modify the bitmap and quantization levels of AMBTC compressed codes. The flowchart of the embedding process is described in Figure 3.
Input: Original grayscale image GI with a size of W×H, threshold Thr and secret data S = (s1, s2, …, sn).
Output: Stego AMBTC compressed codes SI, and matrix Y with a size of W×H.
Step 1. GI is divided into n×n non-overlapping image blocks, and n is usually set to 4.
Step 2. The compressed trio (a, b, B) of the AMBTC compressed codes is obtained according to Eqs (1) and (2), where a and b are the higher quantization level and the lower quantization level, respectively, and B is the bitmap.
Step 3. Compute the absolute difference value of two quantization levels a and b.
Step 4. If |a-b|≤Thr, it is a smooth block. For the smooth block, modulo 2 division and Hamming code (3, 2) are used to embed secret data. There are two main embedding phases, as shown below.
Embedding phase 1:
Step 4.1. For the smooth block SB, the binary representations of the higher quantization level a and the lower quantization level b are set as a=(a7a6a5a4a3a2a1a0)2 and b=(b7b6b5b4b3b2b1b0)2, respecively. The four most significant bits of a and b are obtained according to Eqs (10) and (11), respectively. Then, the vector K is obtained by combing aLSB and bLSB as K=(aLSB‖bLSB)=(a7a6a5a4b7b6b5b4). If a7 = 0, then a7 = 1.
aLSB=(a7a6a5a4) | (10) |
bLSB=(b7b6b5b4) | (11) |
Step 4.2. Sixteen secret bits S0 = (s1, s2, …, s16) and row vector K are encoded by Eq (8) to obtain the 9 bits of quotient q = (q1, q2, …, q9) and 7 bits of remainder r = (r1, r2, …, r7). The quotient q and the remainder r are combined into a new 16 bits bitmap from B' = (qr). The bitmap B of the original block is directly replaced by the new bitmap B'.
Embedding phase 2:
Step 4.3. The three least significant bits of a and b in the smooth block are obtained according to Eqs (12) and (13), respectively. Let secret data bits embed into a and b be S1 = (s1, s2) and S2 = (s3, s4), respectively.
L1=(a2a1a0) | (12) |
L2=(b2b1b0) | (13) |
Step 4.4. Calculate the check value ni=(H×LiT)Tmod2 according to Eq (7), where i = 1, 2. Then yi = ni⨁Si. Next yi is converted to decimal number to get di. The three least significant bits Li' are obtained by inverting the di in Li.
Step 4.5. The new two quantization levels a' and b' are obtained by combining Li' with left bits of a and b. If |a'-b'|≤Thr, the modified block still belongs to the smooth block, and the new bitmap (a', b', B') is obtained, and Y(SB) = 1. Otherwise, the bitmap (a, b, B') is obtained, and Y(SB) = 0.
Step 5. If |a-b| > Thr, it is a complex block. For complex blocks, a lossless embedding algorithm is proposed. One secret bit S3 = (s1). If s1 = 1, the order of the two quantization levels is swapped to get (b, a), and B'' = 1-B. If s1 = 0, the order of two quantization levels (a, b) is unchanged.
Step 6. Repeat Steps 3–5 until all image blocks are processed. Then, the stego AMBTC compressed codes SI is constructed. The compressed codes SI consist of (W×H)/(4 × 4) trios, which contains two quantization levels and one bitmap.
Figure 4 shows an example of constructing a stego AMBTC compressed codes.
The processes of secret data extraction are organized as in Figure 5.
Input: Stego AMBTC compressed codes SI, matrix Y of size W×H, and threshold Thr.
Output: Secret data S = (s1, s2, …, sn).
Step 1. For each trio (a, b, B) in SI, compute the absolute difference between value of a and b.
Step 2. If |a-b|≤Thr, it is a smooth block SB, and two extraction phases are used.
Extraction phase 1:
Step 2.1. The first 9 bits of bitmap B are retrieved to get quotient q' = (B1, B2, …, B9) and the last 7 bits are extracted to get the remainder r' = (B10, B11, …, B16).
Step 2.2. The four most significant bits of a and b are obtained using Eqs (10) and (11), respectively. Then K = (aLSB||bLSB) = (a7a6a5a4b7b6b5b4). If a7 = 0, then set a7 = 1.
Step 2.3. The quotient q', the remainder r' and the row vector K are calculated using Eq (8) to obtain the embedded secret data S0' = K×q'+r' = (s1, s2, …, s16).
Extraction phase 2:
Step 2.4. If Y(SB) = 1, L1' and L2' are obtained by the three least significant bits a and b by using Eqs (12) and (13), respectively.
Step 2.5. The embedded secret data is calculated by using Si′=(H×Li′T)Tmod2, where i = 1, 2.
Step 3. If |a-b| > Thr, it is a complex block. If a-b < 0, the order of two quantization levels is swapped, and secret data S3' = 1; otherwise S3' = 0.
Step 4. Repeat Steps 2–3 until all the trios are completely processed, and the extracted bit sequence constitutes the secret data S.
In order to prove the effectiveness of the proposed method, Ou and Sun's [24], Bai and Chang's [25], Kumar et al.'s [28] and Chuang et al.'s [23] methods are used for comparison. As shown in Figure 6, six 512×512 images are used in the experiment. In addition, the block size of AMBTC compression is set to 4×4, and secret data are generated by the same pseudo-random generator.
Peak Signal to Noise Ratio (PSNR) [33] is the most widely used objective image evaluation index. The higher the PSNR value, the better the quality performance of the hidden image. The PSNR value is defined as
PSNR=10log102552MSE | (14) |
where MSE is defined as
MSE=1W×HW∑i=1H∑j=1(xij−x′ij)2 | (15) |
where W×H is the size of the image, and xij and xij' indicates the pixel values of the original image and stego image at the same position (i, j), respectively.
In addition to the PSNR, Mean Structural Similarly Index Measure (MSSIM) [34] is also used to measure the similarity between the original image and the stego image. The MSSIM is between 0 and 1. In general, the MSSIM is close to 1, indicating that the stego image is structurally more similar to the original image.
The bit rate BR is the number of bits required to measure a pixel and is calculated by
BR=LW×H(bpp) | (18) |
where L represents the length of AMBTC compressed codes.
Table 1 shows PSNR and MSSIM of different images with different Thr. As Thr increases, so does the embedding capacity, and the PSNRs gradually decrease but still maintains good visual quality as the SSIMs are stable. With different thresholds, such as Thr = 5 and Thr = 10, the embedding capacity of Lena is 132,422 bits and 215,463 bits, respectively.
Method | Thr | Performances | Lena | Baboon | Peppers | Plane | Clown | Boats |
AMBTC | N/A | PSNR (dB) | 33.24 | 26.98 | 33.42 | 31.97 | 32.51 | 31.54 |
MSSIM | 0.9413 | 0.8869 | 0.9349 | 0.9505 | 0.9413 | 0.9360 | ||
Proposed | 5 | PSNR (dB) | 32.79 | 26.97 | 33.05 | 31.61 | 32.27 | 30.73 |
MSSIM | 0.9037 | 0.8851 | 0.9055 | 0.9093 | 0.9201 | 0.9102 | ||
Capacity(bits) | 132,422 | 21,280 | 94,902 | 169,726 | 102,044 | 138,369 | ||
10 | PSNR (dB) | 31.78 | 26.82 | 31.60 | 31.09 | 31.73 | 30.71 | |
MSSIM | 0.8373 | 0.8527 | 0.8052 | 0.8664 | 0.8867 | 0.8798 | ||
Capacity(bits) | 215,463 | 62,142 | 219,291 | 220,139 | 147,199 | 184,780 | ||
15 | PSNR (dB) | 30.88 | 26.47 | 30.61 | 30.54 | 30.94 | 29.81 | |
MSSIM | 0.7948 | 0.8044 | 0.7546 | 0.8393 | 0.8526 | 0.8464 | ||
Capacity(bits) | 251,063 | 102,758 | 260,514 | 244,390 | 177,777 | 207,205 | ||
20 | PSNR (dB) | 30.13 | 26.07 | 29.98 | 29.95 | 29.82 | 29.02 | |
MSSIM | 0.7689 | 0.7637 | 0.7338 | 0.8198 | 0.8128 | 0.8082 | ||
Capacity(bits) | 270,236 | 131,196 | 278018 | 260,268 | 206,115 | 232,767 | ||
25 | PSNR (dB) | 29.44 | 25.57 | 29.44 | 29.44 | 28.40 | 28.29 | |
MSSIM | 0.7492 | 0.7279 | 0.7186 | 0.8062 | 0.7556 | 0.7759 | ||
Capacity(bits) | 282,952 | 154,624 | 288044 | 270,109 | 236,692 | 250,673 |
The embedding capacity has noticeably improved, and PSNRs of the stego images decreases slightly when Thr is increased, which denotes that the proposed method can obtain high payload without image distortion. Moreover, the MSSIM is very close to 1, which denotes good visual quality as well. The average PSNRs, MSSIMs and embedding capacities of all six images are computed for different Thr as illustrated in Figure 7. It is clearly observed that as Thr increases, PSNR and MSSIM decrease slightly, but the embedding capacity increases more. For example, when Thr is increased from 0 to 20, the average values of PSNRs and MSSIMs are only reduced by around 1.45 dB and 0.1473, respectively, but the average value of embedding capacity is increased by around 213382 bits.
A comparison of four existing data hiding methods are listed in Table 2. From Table 2, we can see that the embedding capacity ofthe proposed method is higher than that of Chuang et al.'s [23]. It is mainly because the proposed method can replace the bit plane with some secret data bits while Chuang and Chang's method cannot do so in the smooth blocks. Compared with Ou and Sun's [24] method, extra two bits are embedded in the two quantization levels in the proposed method, which leads to a higher embedding capacity. However, the PSNR of the proposed method are 0.645 dB lower than that of Ou and Sun's method on average. The gain of embedding capacity considered, the proposed method is superior to Ou and Sun's. From Table 2, the PSNRs and embedding capacity of the proposed method are all higher than those of Bai and Chang's [25] method. For instance, when Thr for Lena, our PSNR and embedding capacity are 31.78 dB and 215463 bits, respectively. Thus, PSNR gain and embedding capacity gain are 2.86 dB and 46213 bits compared with those of Bai and Chang's method. Kumar et al.'s method [28] embeds secret data into the bit plane of each block using a bit replacement strategy. This method improves the quality of the image, but our method has a slightly higher embedding capacity. Kumar and Kim's [27] method is divided into three states by setting two different thresholds. Although the embedding capacity is improved, the image quality is not significantly improved. Based on the above analysis, the proposed method outperforms these four methods.
Method | Performances | Lena | Baboon | Peppers | Plane | Clown | Boats |
AMBTC | PSNR (dB) | 33.24 | 26.98 | 33.42 | 31.97 | 32.51 | 31.54 |
BR (bpp) | 2.000 | 2.000 | 2.000 | 2.000 | 2.000 | 2.000 | |
Proposed | PSNR (dB) | 31.78 | 26.82 | 31.60 | 31.09 | 31.73 | 30.81 |
Capacity (bits) | 215,463 | 62,142 | 219,291 | 220,139 | 147,199 | 184,780 | |
BR (bpp) | 2.000 | 2.000 | 2.000 | 2.000 | 2.000 | 2.000 | |
Ou and Sun's [24] | PSNR (dB) | 32.67 | 26.92 | 33.36 | 31.91 | 31.52 | 31.32 |
Capacity (bits) | 172,579 | 50,374 | 183,529 | 178,099 | 136,774 | 148,609 | |
BR (bpp) | 2.000 | 2.000 | 2.000 | 2.000 | 2.000 | 2.000 | |
Bai and Chang's [25] | PSNR (dB) | 28.92 | 24.17 | 28.95 | 28.11 | 32.25 | 27.56 |
Capacity (bits) | 169,250 | 176,178 | 169,644 | 168,388 | 168,480 | 170,103 | |
BR (bpp) | 2.000 | 2.000 | 2.000 | 2.000 | 2.000 | 2.000 | |
Kumar et al.'s [28] | PSNR (dB) | 36.11 | 29.1 | 36.74 | 36.96 | 35.75 | 35.96 |
Capacity (bits) | 115,060 | 125,900 | 112,859 | 139,125 | 118,452 | 121,569 | |
BR (bpp) | 1.988 | 2.06 | 1.930 | 1.785 | 2.014 | 2.054 | |
Chuang et al.'s [23] | PSNR (dB) | 32.03 | 26.85 | 32.37 | 31.54 | 31.03 | 31.04 |
Capacity (bits) | 166,608 | 36,256 | 178,288 | 172,496 | 141,040 | 128,416 | |
BR (bpp) | 2.000 | 2.000 | 2.000 | 2.000 | 2.000 | 2.000 |
In the following experiments, the best thresholds are set for the compared and proposed methods to ensure that the best image quality can be achieved for a given embedding capacity. The Capacity-PSNR curves are shown in Figure 8. Although Figure 8 only shows testing results for Lena, Plane, Boats, and Baboon images, experiments on other images also suggest the similar trends. Bai and Chang's [25] method has the lowest image quality because this method embeds secret data into the bitmap and quantization levels by using Hamming code (7, 4). Ou and Sun's [24] method gives an optimal modification to the quantization levels to minimize distortion. However, this method does not utilize quantization levels to embed the secret data, and therefore the embedding capacity is limited. Chuang et al. [23] performs better than Bai and Chang's method because it embeds secret data only into smooth blocks. Nevertheless, the proposed method provides the best results for various embedding capacities, especially at high embedding capacities. It is mainly because the proposed method selectively embeds the data into quantization level using a Hamming code (3, 2).
Compared to other compression formats, AMBTC has a lower compression ratio than JPEG, but it is more suitable for real-time applications. It has become the subject of real-time image transmission. Since JPEG has lower redundancy than AMBTC, the embedding capacity of the proposed method is thirty times compared with JPEG based data hiding method [22]. Therefore, the embedding capacity of the proposed method is much higher than those of JPEG compression based data hiding methods.
An efficient data hiding method based on modulo-2 operation and Hamming (3, 2) of AMBTC compressed images is proposed. A block in a grayscale image is compressed to a bitmap and a pair of quantization levels. The blocks of the AMBTC compressed codes are classified as smooth blocks and complex blocks. In the smooth block, the secret data and the four most significant bits of two quantization levels are computed using modulo-2 division, and the result replaces the bitmap. The three least significant bits of the two quantization levels are used to embed the two additional secret bits with Hamming code (3, 2), respectively. In the complex block, a secret bit is embedded by swapping the order of two quantization levels and flipping the bitmap. The experimental results show that the proposed method inherits the low complexity and easy implementation of AMBTC. Compared with other existing AMBTC-based algorithms, the proposed method achieves higher capacity and maintains good visual quality. Since BTC has many variations, we will study data hiding methods for some more advanced BTC-variant in the future.
This work was mainly supported by Public Welfare Technology, Industry Project of Zhejiang Provincial Science Technology Department and Natural Science Foundation of China under Grant. (No. LGG18F020013, No. LGG19F020016, No. 61971247).
All authors declare no conflicts of interest in this paper.
[1] | F. A. P. Petitcolas, R. J. Anderson and M. G. Kuhn, Information hiding-a survey, Proc. IEEE, 87 (1999), 1062–1078. |
[2] | D. Xiao, J. Liang, Q. Ma, et al., High capacity data hiding in encrypted image based on compressive sensing for nonequivalent resources, CMC Comput. Mater. Continua, 58 (2019), 1–13. |
[3] | Y. Du, Z. Yin and X. Zhang, Improved lossless data hiding for JPEG images based on histogram modification, CMC Comput. Mater. Continua, 55 (2018), 495–507. |
[4] | Y. Chen, B. Yin, H. He, et al., Reversible data hiding in classification-scrambling encrypted-image based on iterative recovery, CMC Comput. Mater. Continua, 56 (2018), 299–312. |
[5] | J. W. Wang, T. Li, X. Y. Luo, et al., Identifying computer generated images based on quaternion central moments in color quaternion wavelet domain, IEEE Trans. Circuits Syst. Video Technol., (2018). |
[6] | T. Qiao, R. Shi, X. Luo, et al., Statistical model-based detector via texture weight map: Application in re-sampling authentication, IEEE Trans. Multimedia, 21 (2018), 1077–1092. |
[7] | J. Fridrich, M. Goljan and R. Du, Detecting LSB steganography in color and gray-scale images, IEEE Multimedia, 8 (2001), 22–28. |
[8] | M. Omoomi, S. Samavi and S. Dumitrescu, An efficient high payload ±1 data embedding scheme, Multimedia Tools Appl., 54 (2011), 201–218. |
[9] | Y. Zhang, C. Qin, W. Zhang, et al., On the fault-tolerant performance for a class of robust image steganography, Signal Process., 146 (2018), 99–111. |
[10] | Y. Ma, X. Luo, X. Li, et al., Selection of rich model steganalysis features based on decision rough set α-positive region reduction, IEEE Trans. Circuits Syst. Video Technol., 29 (2018), 336–350. |
[11] | W. Luo, F. Huang and J. Huang, Edge adaptive image steganography based on LSB matching revisited, IEEE Trans. Inf. Forensics Secur., 5 (2010), 201–214. |
[12] | W. Hong, Adaptive image data hiding in edges using patched reference table and pair-wise embedding technique, Inf. Sci., 221 (2013), 473–489. |
[13] | V. Kumar and D. Kumar, A modified DWT-based image steganography technique, Multimedia Tools Appl., 77 (2018), 13279–13308. |
[14] | C. C. Lin, C. C. Chang and Y. H. Chen, A novel SVD-based watermarking scheme for protecting rightful ownership of digital images, IEEE Trans. Multimedia, 5 (2014), 124–143. |
[15] | C. C. Chang, T. D. Kieu and W. C. Wu, A lossless data embedding technique by joint neighboring coding, Pattern Recognit., 42 (2009), 1597–1603. |
[16] | C. C. Chang, Y. H. Chen and C. C. Lin, A data embedding scheme for color images based on genetic algorithm and absolute moment block truncation coding, Soft Comput., 13 (2009), 321–331. |
[17] | A. J. Zargar and A. K. Singh, Robust and imperceptible image watermarking in DWT-BTC domain, Int. J. Electron. Secur. Digital Forensics, 8 (2016), 53–62. |
[18] | C. K. Chan and L. M. Cheng, Hiding data in images by simple LSB substitution, Pattern Recognit., 37 (2004), 469–474. |
[19] | J. A. Fessler and B. P. Sutton, Nonuniform fast Fourier transforms using min-max interpolation, IEEE Trans. Signal Process., 51 (2003), 560–574. |
[20] | B. Chen, S. Latifi and J. Kanai, Edge enhancement of remote image data in the DCT domain, Image Vision Comput., 17 (1999), 913–921. |
[21] | C. Qin and Y. C. Hu, Reversible data hiding in VQ index table with lossless coding and adaptive switching mechanism, Signal Process., 129 (2016), 48–55. |
[22] | Y. Qiu, H. He, Z. Qian, et al., Lossless data hiding in JPEG bitstream using alternative embedding, J. Visual Commun. Image Representation, 52 (2018), 86–91. |
[23] | J. C. Chuang and C. C. Chang, Using a simple and fast image compression algorithm to hide secret information, Int. J. Comput. Appl., 28 (2006), 329–333. |
[24] | D. Ou and W. Sun, High payload image steganography with minimum distortion based on absolute moment block truncation coding, Multimedia Tools Appl., 74 (2015), 9117–9139. |
[25] | J. Bai and C. C. Chang, High payload steganographic scheme for compressed images with Hamming code, Int. J. Network Secur., 18 (2016), 1122–1129. |
[26] | C. Kim, D. Shin, L. Leng, et al., Lossless data hiding for absolute moment block truncation coding using histogram modification, J. Real-Time Image Process., 14 (2018), 101–114. |
[27] | R. Kumar, D. S. Kim and K. H. Jung, Enhanced AMBTC based data hiding method using hamming distance and pixel value differencing, J. Inf. Secur. Appl., 47 (2019), 94–103. |
[28] | R. Kumar, N. Kumar and K. H. Jung, A new data hiding method using adaptive quantization & dynamic bit plane based AMBTC, 2019 6th International Conference on Signal Processing and Integrated Networks (SPIN), 2019, 854–858. Available from: https://ieeexplore.ieee.org/abstract/document/8711774. |
[29] | M. Lema and O. Mitchell, Absolute moment block truncation coding and its application to color images, IEEE Trans. Commun., 32 (1984), 1148–1157. |
[30] | P. Fränti, O. Nevalainen and T. Kaukoranta, Compression of digital images by block truncation coding: A survey, Comput. J., 37 (1994), 308–332. |
[31] | C. Kim, D. Shin, B. G. Kim, et, al.,Secure medical images based on data hiding using a hybrid scheme with the Hamming code, LSB, and OPAP, J. Real-Time Image Process., 14 (2018), 115–126. |
[32] | E. Tsimbalo, X. Fafoutis and R. Piechocki, CRC error correction in IoT applications, IEEE Trans. Ind. Inf., 13 (2017), 361–369. |
[33] | C. Kim, Data hiding by an improved exploiting modification direction, Multimedia Tools Appl., 69 (2014), 569–584. |
[34] | Z. Wang, A. C. Bovik, H. R. Sheikh, et al., Image quality assessment: From error visibility to structural similarity, IEEE Trans. Image Process., 13 (2004), 600–612. |
1. | Yung-Yao Chen, Yu-Chen Hu, Ting-Kai Yang, You-An Wang, Data Hiding in AMBTC Images Using Selective XOR Hiding Scheme, 2022, 71, 1546-2226, 5167, 10.32604/cmc.2022.023993 | |
2. | Kankana Datta, Biswapati Jana, Mamata Dalui Chakraborty, Two-layers robust data hiding scheme for highly compressed image exploiting AMBTC with difference expansion, 2022, 34, 13191578, 5240, 10.1016/j.jksuci.2022.05.013 | |
3. | Ratan Kumar Basak, Ritam Chatterjee, Paramartha Dutta, Kousik Dasgupta, Steganography in Color Animated Image Sequence for Secret Data Sharing Using Secure Hash Algorithm, 2022, 122, 0929-6212, 1891, 10.1007/s11277-021-08973-4 | |
4. | Ji-Hwei Horng, Chin-Chen Chang, Guan-Long Li, Steganography Using Quotient Value Differencing and LSB Substitution for AMBTC Compressed Images, 2020, 8, 2169-3536, 129347, 10.1109/ACCESS.2020.3009232 | |
5. | Ratan Kumar Basak, Ritam Chatterjee, Kousik Dasgupta, Paramartha Dutta, A Non-Sequential Steganography Method Using Perfect Square Quotient Differencing (NSPSQD), 2025, 6, 2661-8907, 10.1007/s42979-025-03951-0 |
Method | Thr | Performances | Lena | Baboon | Peppers | Plane | Clown | Boats |
AMBTC | N/A | PSNR (dB) | 33.24 | 26.98 | 33.42 | 31.97 | 32.51 | 31.54 |
MSSIM | 0.9413 | 0.8869 | 0.9349 | 0.9505 | 0.9413 | 0.9360 | ||
Proposed | 5 | PSNR (dB) | 32.79 | 26.97 | 33.05 | 31.61 | 32.27 | 30.73 |
MSSIM | 0.9037 | 0.8851 | 0.9055 | 0.9093 | 0.9201 | 0.9102 | ||
Capacity(bits) | 132,422 | 21,280 | 94,902 | 169,726 | 102,044 | 138,369 | ||
10 | PSNR (dB) | 31.78 | 26.82 | 31.60 | 31.09 | 31.73 | 30.71 | |
MSSIM | 0.8373 | 0.8527 | 0.8052 | 0.8664 | 0.8867 | 0.8798 | ||
Capacity(bits) | 215,463 | 62,142 | 219,291 | 220,139 | 147,199 | 184,780 | ||
15 | PSNR (dB) | 30.88 | 26.47 | 30.61 | 30.54 | 30.94 | 29.81 | |
MSSIM | 0.7948 | 0.8044 | 0.7546 | 0.8393 | 0.8526 | 0.8464 | ||
Capacity(bits) | 251,063 | 102,758 | 260,514 | 244,390 | 177,777 | 207,205 | ||
20 | PSNR (dB) | 30.13 | 26.07 | 29.98 | 29.95 | 29.82 | 29.02 | |
MSSIM | 0.7689 | 0.7637 | 0.7338 | 0.8198 | 0.8128 | 0.8082 | ||
Capacity(bits) | 270,236 | 131,196 | 278018 | 260,268 | 206,115 | 232,767 | ||
25 | PSNR (dB) | 29.44 | 25.57 | 29.44 | 29.44 | 28.40 | 28.29 | |
MSSIM | 0.7492 | 0.7279 | 0.7186 | 0.8062 | 0.7556 | 0.7759 | ||
Capacity(bits) | 282,952 | 154,624 | 288044 | 270,109 | 236,692 | 250,673 |
Method | Performances | Lena | Baboon | Peppers | Plane | Clown | Boats |
AMBTC | PSNR (dB) | 33.24 | 26.98 | 33.42 | 31.97 | 32.51 | 31.54 |
BR (bpp) | 2.000 | 2.000 | 2.000 | 2.000 | 2.000 | 2.000 | |
Proposed | PSNR (dB) | 31.78 | 26.82 | 31.60 | 31.09 | 31.73 | 30.81 |
Capacity (bits) | 215,463 | 62,142 | 219,291 | 220,139 | 147,199 | 184,780 | |
BR (bpp) | 2.000 | 2.000 | 2.000 | 2.000 | 2.000 | 2.000 | |
Ou and Sun's [24] | PSNR (dB) | 32.67 | 26.92 | 33.36 | 31.91 | 31.52 | 31.32 |
Capacity (bits) | 172,579 | 50,374 | 183,529 | 178,099 | 136,774 | 148,609 | |
BR (bpp) | 2.000 | 2.000 | 2.000 | 2.000 | 2.000 | 2.000 | |
Bai and Chang's [25] | PSNR (dB) | 28.92 | 24.17 | 28.95 | 28.11 | 32.25 | 27.56 |
Capacity (bits) | 169,250 | 176,178 | 169,644 | 168,388 | 168,480 | 170,103 | |
BR (bpp) | 2.000 | 2.000 | 2.000 | 2.000 | 2.000 | 2.000 | |
Kumar et al.'s [28] | PSNR (dB) | 36.11 | 29.1 | 36.74 | 36.96 | 35.75 | 35.96 |
Capacity (bits) | 115,060 | 125,900 | 112,859 | 139,125 | 118,452 | 121,569 | |
BR (bpp) | 1.988 | 2.06 | 1.930 | 1.785 | 2.014 | 2.054 | |
Chuang et al.'s [23] | PSNR (dB) | 32.03 | 26.85 | 32.37 | 31.54 | 31.03 | 31.04 |
Capacity (bits) | 166,608 | 36,256 | 178,288 | 172,496 | 141,040 | 128,416 | |
BR (bpp) | 2.000 | 2.000 | 2.000 | 2.000 | 2.000 | 2.000 |
Method | Thr | Performances | Lena | Baboon | Peppers | Plane | Clown | Boats |
AMBTC | N/A | PSNR (dB) | 33.24 | 26.98 | 33.42 | 31.97 | 32.51 | 31.54 |
MSSIM | 0.9413 | 0.8869 | 0.9349 | 0.9505 | 0.9413 | 0.9360 | ||
Proposed | 5 | PSNR (dB) | 32.79 | 26.97 | 33.05 | 31.61 | 32.27 | 30.73 |
MSSIM | 0.9037 | 0.8851 | 0.9055 | 0.9093 | 0.9201 | 0.9102 | ||
Capacity(bits) | 132,422 | 21,280 | 94,902 | 169,726 | 102,044 | 138,369 | ||
10 | PSNR (dB) | 31.78 | 26.82 | 31.60 | 31.09 | 31.73 | 30.71 | |
MSSIM | 0.8373 | 0.8527 | 0.8052 | 0.8664 | 0.8867 | 0.8798 | ||
Capacity(bits) | 215,463 | 62,142 | 219,291 | 220,139 | 147,199 | 184,780 | ||
15 | PSNR (dB) | 30.88 | 26.47 | 30.61 | 30.54 | 30.94 | 29.81 | |
MSSIM | 0.7948 | 0.8044 | 0.7546 | 0.8393 | 0.8526 | 0.8464 | ||
Capacity(bits) | 251,063 | 102,758 | 260,514 | 244,390 | 177,777 | 207,205 | ||
20 | PSNR (dB) | 30.13 | 26.07 | 29.98 | 29.95 | 29.82 | 29.02 | |
MSSIM | 0.7689 | 0.7637 | 0.7338 | 0.8198 | 0.8128 | 0.8082 | ||
Capacity(bits) | 270,236 | 131,196 | 278018 | 260,268 | 206,115 | 232,767 | ||
25 | PSNR (dB) | 29.44 | 25.57 | 29.44 | 29.44 | 28.40 | 28.29 | |
MSSIM | 0.7492 | 0.7279 | 0.7186 | 0.8062 | 0.7556 | 0.7759 | ||
Capacity(bits) | 282,952 | 154,624 | 288044 | 270,109 | 236,692 | 250,673 |
Method | Performances | Lena | Baboon | Peppers | Plane | Clown | Boats |
AMBTC | PSNR (dB) | 33.24 | 26.98 | 33.42 | 31.97 | 32.51 | 31.54 |
BR (bpp) | 2.000 | 2.000 | 2.000 | 2.000 | 2.000 | 2.000 | |
Proposed | PSNR (dB) | 31.78 | 26.82 | 31.60 | 31.09 | 31.73 | 30.81 |
Capacity (bits) | 215,463 | 62,142 | 219,291 | 220,139 | 147,199 | 184,780 | |
BR (bpp) | 2.000 | 2.000 | 2.000 | 2.000 | 2.000 | 2.000 | |
Ou and Sun's [24] | PSNR (dB) | 32.67 | 26.92 | 33.36 | 31.91 | 31.52 | 31.32 |
Capacity (bits) | 172,579 | 50,374 | 183,529 | 178,099 | 136,774 | 148,609 | |
BR (bpp) | 2.000 | 2.000 | 2.000 | 2.000 | 2.000 | 2.000 | |
Bai and Chang's [25] | PSNR (dB) | 28.92 | 24.17 | 28.95 | 28.11 | 32.25 | 27.56 |
Capacity (bits) | 169,250 | 176,178 | 169,644 | 168,388 | 168,480 | 170,103 | |
BR (bpp) | 2.000 | 2.000 | 2.000 | 2.000 | 2.000 | 2.000 | |
Kumar et al.'s [28] | PSNR (dB) | 36.11 | 29.1 | 36.74 | 36.96 | 35.75 | 35.96 |
Capacity (bits) | 115,060 | 125,900 | 112,859 | 139,125 | 118,452 | 121,569 | |
BR (bpp) | 1.988 | 2.06 | 1.930 | 1.785 | 2.014 | 2.054 | |
Chuang et al.'s [23] | PSNR (dB) | 32.03 | 26.85 | 32.37 | 31.54 | 31.03 | 31.04 |
Capacity (bits) | 166,608 | 36,256 | 178,288 | 172,496 | 141,040 | 128,416 | |
BR (bpp) | 2.000 | 2.000 | 2.000 | 2.000 | 2.000 | 2.000 |