Next Article in Journal
Phonons and Thermal Transport in Si/SiO2 Multishell Nanotubes: Atomistic Study
Next Article in Special Issue
A Watermarking Scheme for Color Image Using Quaternion Discrete Fourier Transform and Tensor Decomposition
Previous Article in Journal
Distributed 3-D Path Planning for Multi-UAVs with Full Area Surveillance Based on Particle Swarm Optimization
Previous Article in Special Issue
Physically Based Soap Bubble Synthesis for VR
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Data Hiding Method for Color AMBTC Compressed Images Using Color Difference

1
Department of Computer Engineering, Sejong University, Seoul 05006, Korea
2
Department of Computer Science and Information Engineering, National Dong Hwa University, Hualien 97401, Taiwan
3
Key Laboratory of Jiangxi Province for Image Processing and Pattern Recognition, Nanchang Hangkong University, Nanchang 330063, China
*
Authors to whom correspondence should be addressed.
Appl. Sci. 2021, 11(8), 3418; https://doi.org/10.3390/app11083418
Submission received: 24 February 2021 / Revised: 26 March 2021 / Accepted: 31 March 2021 / Published: 11 April 2021
(This article belongs to the Special Issue Research on Multimedia Systems)

Abstract

:
Image compression technology and copyright protection are certainly the important technologies for free exchange of multimedia. For compression of an image, we propose a color Absolute Moment Block Trucation Coding (AMBTC) method using a common bit-plane created by k-means. In addition, a data hiding method based on a color AMBTC using Optimal Pixel Adjustment Process (OPAP) was proposed for copyright protection and confidential secret communication. The number of quantization levels of the proposed color AMBTC is nine per block. Therefore, the edge of the compressed color image can be expressed more delicately. As a result of the simulation, it can be seen that the edge of the image of the color AMBTC is close to the original image. Moreover, the data hiding performance of the proposed method also obtained excellent results. For the experiment, we measured the quality of the image using the Color Difference (CD) we proposed, and the measurement result was very satisfactory.

1. Introduction

Recently, many people participated in the production and distribution of various media contents with smartphones. Therefore, interest in digital content ownership is increasing more than ever. On the other hand, advanced image processing tools and experienced designers can make the authenticity of digital images difficult [1]. Therefore, “to see is to believe” has become meaningless. Nevertheless, data hiding (DH) [2] is emerging as a potential solution.
DH is used for intellectual property protection, content authentication, annotation, watermarking technology, etc., and supports confidential communication. The difference between DH and watermarking technology is that watermarking technology reveals that digital contents are applied with watermarking technology, but DH technology protects digital contents by hiding the existence of secret information.
DH uses mostly the spatial domain. Thus, data can be efficiently embedded by flipping the redundant bits of the Least Significant Bit (LSB) [3] of the pixels. The merit of spatial domain-based DH [4] is that it is possible to keep a marked high-quality image and to embed enough data. The weakness is that if the LSBs change due to simple image processing, the hidden data in the LSBs can be destroyed. While, although the merit of frequency domain-based DH [5] is that it is strong against image processing attacks, it has the demerit that the Embedding Capacity (EC) is low and the quality of a marked image is relatively not high. Frequency domain compression methods include Discrete Cosine Transform (DCT) [6,7], Discrete Wavelet Transform (DWT) [8], and Singular Value Decomposition (SVD) [9].
Also, BTC (Block Truncation Coding) [10] is being actively researched as a cover media for DH. BTC is a compression coding with fast compression calculation speed and moderate bit rate. Absolute Moment BTC (AMBTC) [11], proposed by Lema and Mitchell, is the most used BTC method. AMBTC quantizes pixels in blocks. As a result of quantization, two pixels and a bitmap representing each block are obtained. This is denoted by ( a , b , B M ) called trio.
First, the bitmap is directly replaced with the secret bits [12], where a secret bit is a one-to-one relationship with a pixel. This method may be applied if the difference between the two quantization levels of blocks is less than T (threshold value) ( b a T ). Here, DH performance may vary depending on the texture of the cover image. Second, there is a lossless DH [13] using the order of two quantization levels (OTQL). For example, to embed the ‘1’ bit, the order of a and b is reversed as follows: t r i o ( b , a , B M ) . Since this method does not change the coefficients of the two quantization levels, the original cover image can be completely restored. Third, Ou & Sun [14] introduces a method that combines DBR (Directly the Bitmap Replacement) and OTQL. Moreover, they introduced an optimization equation that reduces errors generated when bit-planes are changed. Fourth, Huang et al. [15] introduced a method embedding as much as l o g 2 T bits by using difference expansion of two quantization levels. The merit of this method does not depend on the type of blocks. Fifth, Kim et al. [16] proposed an effective DH method for two quantization levels of each block of AMBTC using Hamming code. In order to solve the image distortion error problem, they introduced a method of optimizing the codeword and reducing pixel distortion by using a lookup table.
Meanwhile, since a color image consists of R, G, and B layers, it is compressed into six quantization levels and three bitmaps per block and can be represented as 96 (= 6 × 8 + 16 × 3 ) bits per block (e.g., the 4 × 4 sized block). On the other hand, our proposed color AMBTC is represented with 9 quantization levels and a common bit-plane per block. Instead of increasing the number of quantization levels per block, one bit per block can be compressed more than the conventional ABMTC by using a common bitmap and 7-bit quantization levels. In other words, the image can be represented with about 95 bits per block. Specifically, to compress three bitmaps into one bitmap, we extract the luminance from RGB and use k-means [17] to classify the pixels in the block into three groups to generate a common bitmap per block. The performance of this method can be confirmed by experimental results.
In this paper, we introduce a method for efficient DH based on our proposed color AMBTC. For efficient DH, we use the Optimal Pixel Adjustment Process (OPAP) method [18]. Through the experiment, we can confirm the superiority of the color AMBTC based on k-means. The contributions we proposed to color ABMTC and DH methods are as follows. First, the color AMBTC method using k-means enables improving the image quality dramatically. Second, the image compression performance was improved by 1 bit per block. Third, we showed how to use OPAP to hide enough secret data while reducing the loss of the cover image.
The rest of this paper is organized as follows: Section 2 reviews the BTC series used to compress gray images and the BTC series related to color image compression. The encoding process of color AMBTC and generation of the common bit-plane are discussed in Section 3. In Section 4, the proposed color AMBTC method and the data hiding method based on it are introduced. Section 5 are the experimental result. Section 6 draws some conclusions.

2. Related Works

In this section, we survey the evolution of the BTC-based compression methods, the color image compression methods.
A lossy compression technique commonly known as Block Truncation Coding (BTC) [10] was introduced in 1979 by Delp and Mitchell. The BTC first divides the pixels of an original image into sized 4 × 4 non-overlapping blocks, then calculates the mean and standard deviation of each block, and then if the pixels in each block are greater than the mean, ‘1’ is assigned, otherwise, ‘0’ is assigned to generate the bit-plane. Finally, two quantization levels representing each block are generated using the mean and standard deviation. BTC provides a relatively high compression performance while the calculation is simple. Since BTC, the method that provides stable performance is Absolute Moment BTC (AMBTC) [11], which was proposed in 1984 by Lema & Mitchell.
In 1992, Wu and Coll [19] discussed a new block coding for color images, where they introduced a method of constructing a common bit-plane using three rules (majority, luminance, weight). The bit rate was improved using this method. Encoded BTC is further compressed using adaptive DCT coding. Differential coding and residual error feedback techniques have been introduced to reduce the bit rate and improve mean squared error (MSE) [20] performance. The total compression ratio is about 12:1.
Color image compression moment BTC (CICMPBTC) [21] was proposed by Yang to improve the compression ratio of color AMBTC (CAMBTC) using a traditional method. After generating BTC, the spectral identification code is used to record the quantization level information. This method consumes more time in the compression process than CAMBTC and causes a significant loss in image quality during the compression process.
Chang et al. [22] discussed the Two-Layer AMBTC scheme (TLAMBTC) to compress color images. Each quantization level is obtained from each of the CAMBTC-based R, G, and B layers divided into blocks. Then, a common bit-plane is derived by using the correlation. The next step is to code the quantization level by subdividing it into 2 × 2 blocks. Hu et al. [23] proposed a color image compression method combining block predictive coding and AMBTC, where quantization level coding are for use to compress blocks, respectively. The bit-plane is generated by using appropriate weights to the corresponding R, G, and B components. This method gives a contribution to the MSE performance of the compressed image.
The problem is that some color components on one plane may not correlate with other planes. Thus, choosing one of the R, G, or B bitmaps is not appropriate and can cause serious noise. To improve this problem, we extract the luminance from each block (composed of RGB) and apply k-means to the luminance (grayscale) of each block. With this, the common bit plane is extracted and used.

3. Preliminaries

3.1. Color AMBTC

AMBTC [11] is a lossy compression method for grayscale images and preserves moment quantization values based on blocks. After dividing the image by sized m × m blocks, it is compressing by creating two quantization levels and a bitmap for each block.
This is due to the similarity of pixels within the block. However, as much as the difference between the compressed pixels and the original pixels causes the distortion of the compressed image, but the difference is relatively small. If the block size is 4 × 4 , the bit rate is 2 bits per pixel for the block because compression rate (CR) (=size of original image/size of compressed image) is 4. The merits of AMBTC are simple computation and fast image compression.
The AMBTC encoding is performed as follows.
Step 1:
The original image of size n × n is divided into non-overlapping blocks (P) of size m × m (let m = 4) and each block is processed individually. Also let us say m 2 = k .
Step 2:
For each block P i , the mean of the pixels constituting P i is calculated and assigned to x ¯ (Equation (1)), where the variable i denotes { 1 i n × n / ( m × m ) } and j denotes { 1 j m × m } .
x ¯ = j = 1 k x j k
Step 3:
A bit-plane for the block P i is caused by a simple calculation of Equation (2), i.e., if the pixel x j is greater than equal to the mean ( x ¯ ) then it is assigned a ‘1’, otherwise it is assigned a ‘0’. As a result, a bitmap M consisting of 0s and 1s is obtained.
b j = 1 , if x j x ¯ , 0 , if x j < x ¯ .
Step 4:
The bitmap M is divided into two sets, M 0 and M 1 , where M = M 0 M 1 and M 0 M 1 = ϕ . M 0 and M 1 are M 0 = { 0 0 , 0 1 , , 0 t } , M 1 = { 1 0 , 1 1 , , 1 ( k t ) } , respectively. Two values of t and k t are each number of pixels of group ‘0’ and ‘1’. The means of pixels Q 1 and Q 2 in the two groups represent the quantization levels of groups ‘0’ and ‘1’, respectively. The two quantization levels are calculated by Equations (3) and (4).
Q 1 = 1 t x j < x ¯ x j
Q 2 = 1 k t x j x ¯ x j
Step 5:
Two quantization levels Q 1 and Q 2 and a bitmap M are added to a trio, i.e., t r i o t r i o | | { Q 1 , Q 2 , M } .
Step 6:
Steps 2 to 5 are repeated until encoding is completed for all blocks.
The two quantization levels Q 1 and Q 2 can be used in the process of reconstructing the compressed image, and the method by using Equation (5), where g j denotes a pixel of grayscale.
g j = Q 1 , if b j = 0 , Q 2 , if b j = 1 .
To compress a color image using traditional AMBTC (CAMBTC), the RGB, which is the color image as shown in Figure 1, is decomposed into layers R, G, and B, and then the AMBTC method is applied to each layer. A block of CAMBTC format is t r i o _ R G B i = { Q 1 R , Q 2 R , M 1 R , Q 1 G , Q 2 G , M 2 G , Q 1 B , Q 2 B , M 3 B } . The compression code of each RGB color image block consists of 3 planes and 6 quantization levels.

3.2. Optimal Pixel Adjustment Process (OPAP)

LSB substitution method is a DH by directly replacing the LSBs of the cover image according to the secret bits. Wang et al. [18] introduced DH, which allows for optimal LSB substitution, where the worst mean square error (WMSE) was found to be 1 / 2 that obtained with the simple LSB substitution method. We assume that a pixel in a grayscale 8-bit is x i { 0 , 1 , , 255 } and S means n-bit secret bits as S = { s k | 0 k < n , s k { 0 , 1 } } . The relationship between the S and embedded bits S is defined as s k = j = 0 δ 1 s k × δ + j × 2 δ 1 j .
For embedding the δ -bit, the pixel x i is changed to be x i = x i ( x i mod 2 δ ) + s k . The hidden δ LSBs of x i are extracted by using s k = x i mod 2 δ . Let x i and x i be the pixels of the cover image and stego image, respectively. The pixel x i denotes the optimized pixel derived from x i by using OPAP method. Let Δ i = x i x i be the embdding error between x i and x i . The pixel x optimizes as x as the following rules:
  • ( 2 δ 1 < Δ < 2 δ ): if x i 2 δ , then x i = x i 2 δ ; else x i = x i ;
  • ( 2 δ 1 Δ 2 δ 1 ): x i = x i ;
  • ( 2 δ < Δ i < 2 δ 1 ): if x i < 256 2 δ , then x i = x i + 2 δ ; else x i = x i .

4. Proposed Method

In this section, we propose a color AMBTC using k-means and introduce a DH and extraction methods based on it. Finally, we explain the proposed methods with examples easy to understand.

4.1. The Proposed Color AMBTC Using k-Means

When a color image is compressed with traditional color AMBTC, three bit-planes are used per block, but the method suggested in this section uses a common bit-plane to improve compression performance. The common bit plane is obtained by the k-mean clustering. The detailed compression process is described in stages.
Input:
Original image, OI ; The image size, N × N
Output:
Color AMBTC compressed image, CI
Step 1:
The original image sized n × n is divided into non-overlapping blocks ( P ) of size m × m (let m = 4) and each block is processed individually. Also let us say m 2 = k . Here, the variable i denotes { 1 i n × n / ( m × m ) } and j denotes { 1 j m × m } .
Step 2:
For each block P i , transform a block of RGB layer into a common block containing the luminance using Equation (6), where p j is a pixel.
p j = 0.299 × p j R + 0.587 × p j G + 0.114 × p j B
Step 3:
Apply the k-means clustering algorithm to the pixels of P i . Here, the number of clusters is k ( = 3 ). After executing the k-means, a common bitmap M composed of {00,01,10} is obtained as in Figure 2.
Step 4:
The common bitmap M is divided into three sets: M 0 , M 1 and M 2 , where M = M 0 M 1 M 2 and M 0 M 1 M 2 = ϕ . Here, M 0 , M 1 , and M 2 are M 0 = { 00 0 , 00 1 , , 00 t 0 } , M 1 = { 01 0 , 01 1 , , 01 t 1 } , and M 2 = { 10 0 , 10 1 , , 10 t 2 } . t o , t 1 , and t 2 represent the numbers of pixels in each group for ‘00’, ‘01’, and ‘10’. Q 1 , Q 2 , and Q 3 denote quantization levels for each group. Using Equations (7)–(9), the quantization levels of R, G, and B are Q R ( Q 1 , Q 2 , Q 3 ) , Q G ( Q 1 , Q 2 , Q 3 ) , and Q B ( Q 1 , Q 2 , Q 3 ) can be obtained. In the following equations, the variables such as R, G, and B refer to the R, G, and B layers of block P i and each layer consists of m × m pixels.
Q i 1 R = 1 t 0 j = 1 t 0 R j , if ( M j = 00 ) , 1 t 1 j = 1 t 1 R j , if ( M j = 01 ) , 1 t 2 j = 1 t 2 R j , if ( M j = 10 ) .
Q i 2 G = 1 t 0 j = 1 t 0 G j , if ( M j = 00 ) , 1 t 1 j = 1 t 1 G j , if ( M j = 01 ) , 1 t 2 j = 1 t 2 G j , if ( M j = 10 ) .
Q i 3 B = 1 t 0 j = 1 t 0 B j , if ( M j = 00 ) , 1 t 1 j = 1 t 1 B j , if ( M j = 01 ) , 1 t 2 j = 1 t 2 B j , if ( M j = 10 ) .
Step 5:
To compress the quantized values for each of R, G, and B once again, the LSB is compressed in a way that does not use the LSBs for Q 1 , Q 2 , and Q 3 . To do this, the LSBs are removed by Equation (10), where · is a truncation function.
Q i = j = 1 9 Q j 2 × 2
The expression range of the quantized pixel value Q is ( b 7 , b 6 , , b 1 ) = ( 128 64 32 16 8 4 2 ) .
Step 6:
The compressed data is added to the CI , i.e., CI CI | | { Q 1 R , Q 2 R , Q 3 R , Q 1 G , Q 2 G , Q 3 G , Q 1 B , Q 2 B , Q 3 B , M , } . Repeat Steps 2 to 6 until all blocks are extruded.
After performing the proposed AMBTC, it is compressed to 95 bits per block, and the compression efficiency is improved by one bit more than that (96 bits per block) compared with CAMBTC, introduced in Section 2. Moreover, three quantization levels were used to consider the quality of the image, and for compression, the expression range of each quantization level was proposed to be seven bits. Therefore, the total compression bits for one block ( 4 × 4 ) in the proposed color AMBTC-based image is 32 × 32 + ( 7 + 7 + 7 ) × 3 = 95 , where 32 denotes the number of bits of a common bitmap.

4.2. DH Embedding Procedure

In Section 4.1, we introduced a method of compressing the original image with the proposed color AMBTC encoding method. After performing the AMBTC, it was shown that compression bits are 95 per block. In this section, we propose a method to embed secret bits while minimizing distortion using OPAP. The secret bits are embedded in the compressed CI depending on the procedure in Figure 3. The blocks in CI are composed of a common bit-plane and three quantization levels for R, G, and B, respectively. Nine quantization levels and a common bit-plane may embed 18 bits ( 9 × 2 bits) and 16 bits per block, respectively. The detailed DH embedding procedure is described in stages.
Input:
Color AMBTC compressed image, CI ; block size, n × n / ( m × m ) ; secret bits, S
Output:
Color AMBTC marked image, MI
Step 1:
Read a block from CI and assign it to P i , where i { 1 i ( n × n ) / ( m × m ) } .
Step 2:
The quantization levels of block P i is assigned to the variable Q i , where the range of j is { 1 j 9 } and Q j { 0 , 1 , , 255 } . Thereafter, LSB and 2LSB are extracted from Q j using Equation (12). Next, the secret bit S k (1 bit) is concealed in the 2LSB of Q j according to the rule of Equation (13), i.e., P i ( j ) = j = 1 9 f ( P i , S k ) , where f is a function of the embedding logic.
Q j = j = 1 9 P i ( j )
b j 1 LSB Q j mod 2 b j 2 2 LSB Q j / 2 mod 2
Q j = Q j 1 , if ( b j 2 = 0 b j 1 = 0 ) S k = 1 Q j + 1 , if ( b j 2 = 0 b j 1 = 1 ) S k = 1 Q j 1 , if ( b j 2 = 1 b j 1 = 0 ) S k = 0 Q j + 1 , if ( b j 2 = 1 b j 1 = 1 ) S k = 0
After performing Step 2, nine bits are hidden in the 2LSB of nine quantization levels.
Step 3:
Embedding the secret bit S k in XOR (2LSB ⊕ LSB) of Q j depends on the OPAP rule (Equation (14)), where 2LSB ⊕ LSB is ( b j 2 b j 1 ) . Since the pixel value of Q j can be changed by Equation (13), Equations (11) and (12) are recalculated to extract 2LSB and LSB again. The function call for Equation (14) is P i ( j ) = j = 1 9 f ( P i , S k ) , where f is a function of the embedding logic.
P i ( j ) = Q j 1 , if ( b j 2 = 1 b j 1 = 1 ) S k = 1 Q j + 1 , if ( b j 2 = 1 b j 1 = 0 ) S k = 0 Q j 1 , if ( b j 2 = 0 b j 1 = 1 ) S k = 0 Q j + 1 , if ( b j 2 = 0 b j 1 = 0 ) S k = 1 n o c h a n g e , o t h e r w i s e
Step 4:
A critical condition to embed a stream of secret bits into a common bit-plane is allowed when the difference between two quantization levels is less than T. If ( Q 1 G Q 2 G ) T , read a common bit-plane M from the block P i and perform Equation (15) to embed the secret bits into M, i.e., P i ( j ) = j = 1 32 f ( M j , S k ) , where f is a function of the logic.
M j : M j + 1 = d e c ( M j : M j + 1 ) + 1 , if ( M j + 1 S k M j : M j + 1 = 00 | 01 ) , d e c ( M j : M j + 1 ) 1 , if ( M j + 1 S k M j : M j + 1 = 10 ) , i n c ( j + 2 ) , i n c ( k ) .
A threshold value T is a condition for the embedding secret bits in a common bitmap as well as controls the quality of color AMBTC image.
Step 5:
Steps 1 to 5 are repeated until all blocks have been processed.

4.3. DH Extraction Procedure

We assumed that the marked image MI is delivered to the receiving side. The recovering procedure hidden secret bits is performed by reversing order of the embedding procedure (Figure 3), i.e., read a block from MI in order, and extract hidden bits from both of the quantization levels and a common bitmap. The detailed DH extraction procedure is described in stages.
Input:
The marked image, MI ; block size, n × n / ( m × m ) ;.
Output:
Extracted secret bits, S
Step 1:
Read a block from MI and assign it to P i , where i { 1 i ( n × n ) / ( m × m ) } .
Step 2:
To extract hidden bits in nine quantization levels, Equation (16) is executed.
[ S k ] = j = 1 9 2 LSB Q i ( j ) 2 mod 2 ; i n c ( k ) , 2 LSB LSB XOR Q i ( j ) 2 mod 2 , Q i ( j ) mod 2 ; i n c ( k ) .
Step 3:
If P i ( Q 1 G Q 2 G ) T , the common bitmap in block P i is assigned to variable M. Then, 16-bit data is extracted using Equation (17), where j is { 1 j 32 } , i.e., S k = j = 1 32 f ( M j ) , where f is a function of the logic.
[ S k ] = 0 , i f ( M j : M j + 1 ) = ( 00 ) | ( 10 ) , 1 , i f ( M j : M j + 1 ) = ( 01 ) , i n c ( j + 2 ) , i n c ( k ) .
Step 4:
To extract hidden data from all blocks, the process of Steps 1 to 3 is repeated.

4.4. AMBTC Compression and DH Example

Example 1.
Traditional color AMBTC method.
It denotes OI R , OI G , and OI B as layers of R, G, and B of the original color image OI . We describe the traditional color AMBTC encoding procedure with an example of Figure 4, where a block size is 4 × 4 .
Traditional color AMBTC is compressed into two quantization levels and one bitmap for each layer of R, G, and B as shown in Figure 4. The mean (144) and bitmap (Figure 4b) based on the 4 × 4 of OI R can be obtained by using Equations (1) and (2). For OI G and OI B , the mean and a bitmap can be obtained in the same way, respectively. As for the quantization level, ( Q 1 R , Q 2 R ) = ( 38 , 144 ) can be obtained as shown in Figure 4b as performing Equations (3) and (4).
Example 2.
The proposed color AMBTC method.
With the RGB blocks in Figure 4a in Example 1, the obtaining procedure of a common bit-plane is explained. First, a block (Figure 5a) of luminance is obtained using Equation (6) and Figure 5b shows this clarification of pixels by using k-means algorithm. Here, The number of clustering is 3. If three quantization levels are calculated based on the bitmap by the procedure of Equations (7)–(9), the quantization level as shown in Figure 5 can be obtained. After further quantization is performed using Equation (10), the following results are obtained.
Q R = ( 136 , 162 , 174 ) ; Q G = ( 128 , 64 , 178 ) ; Q B = ( 82 , 98 , 110 ) ;
M = ( 00000000000000000000010100000110 )
Unlike the quantization levels obtained in Example 1, there are three quantization levels for each color, thus it is possible to represent the medium value for the block as well as it has excellent compression performance.
Example 3.
DH procedure using an example.
To explain the embedding procedure, we use the quantization levels and a bitmap obtained in Example 1. Assuming that secret bit S = (111000) and threshold T = 60. Moreover, only Q R is considered for avoiding repeated embedding process for describing this example. First, in order to hide 2-bit data in Q 1 R = 136 , which is the first pixel of Q R = ( 136 , 162 , 174 ) and then, transform to Q 1 R = 136 / 2 = 68 . Next, extract 2LSB and LSB, i.e., (2LSB LSB) = (0 0) and S 1 = 1. According to Equation (13), Q 1 R = Q 1 R ( 68 ) 1 = 67 is obtained. Since (2LSB LSB) = (1 1) and S 2 = 1, we obtain Q 1 R ( 67 ) 1 = 66 by using Equation (14). Q 1 R ( 66 ) is recovered by the calculation, Q 1 R × 2 = 132 . Next, for Q 2 R , the way of embedding S 3 , 4 in Q 2 R is the same procedure of Q 1 R . After embedding S 3 , 4 in Q 2 R , it is Q 2 R =166. In case of Q 3 R , when S 5 , 6 = (00) is embedded in Q R 3 , it become Q R 3 = 176 .
The condition for embedding secret bits in the common bitmap is that the difference between the two quantization levels ( | Q 1 G Q 2 G | T ) must be less than or equal to the threshold value T. Here, it is less than T = 60 , thus the criterion is enough. Therefore, it can conceal a given 16-bit secret bit. Assuming S = ( 0010100101001101 ) , the 16 bits are hidden in bitmap M using Equation (15). S 7 , 8 is (00), which is the same as M, so there is no need to change M. For the following S 9 , 10 = ( 10 ) , + 1 is performed according to the rule of Equation (15). For embedding the remaining secret bits, if the bitmap M is applied successively by using Equation (15), it becomes M = ( 00000100010000010001101001011001 ) .

5. Experimental Results

In this section, we experiment and evaluate the proposed DH method based on color AMBTC with five test images such as Lena, Pepper, Airplane, Lake, and Baboon (Figure 6). The size of the images used in the experiment is 512 × 512 and the size of a block is 4 × 4 . For evaluation, we use a Color Difference (CD) to compare the performance and use PSNR and SSIM as a reference.
The quality of the image was measured by the PSNR defined as
P S N R = 10 l o g 10 255 2 ( M S E R + M S E G + M S E B ) / 3
PSNR is calculated as 10 l o g (signal power/noise power), and signal power and noise power are calculated using peak power. The M S E R , M S E G , and M S E B used for PSNR calculation is the difference in mean intensity between the marked image and the reference image, and a low MSE value can be evaluated as good image quality. In other words, the MSE is the mean of the squares of the errors ( p i p i ) 2 , where p and p are reference and distorted images, respectively. The MSE is calculated as follows:
M S E R , G , B ( p , p ) = 1 n × n i = 1 n × n ( p i p i ) 2 .
Here, the allowable pixel intensity is 255 2 .
SSIM [24] is a multiplicative model for three similarity components i.e., luminance, contrast and structure similarity components, and it is formulated as
ϕ ( p , p ) = l ( p , p ) θ 1 · c ( p , p ) θ 2 · s ( p , p ) θ 3
where l ( · ) , c ( · ) and s ( · ) indicate luminance, contrast and structure similarity components, respectively, and exponents θ 1 , θ 2 and θ 3 are set to 1 in [25].
l ( · ) in Equation (20) measures similarity of mean pixel intensity between p and p , which is expressed as
l ( p , p ) = 2 μ p μ p + C 1 μ p 2 + μ p 2 + C 1
where μ p and μ p are mean pixel intensity for p and p , respectively, and C 1 is a parameter to avoid unstable results when the denominator in Equation (21) is close to zero. The overall measured quality value of the SSIM for the whole distorted image P compared to the original image P is calculated as
F ( P , P ) = 1 n × n j = 1 n × n ϕ ( p j , p j )
where n × n is the number of local image regions of an whole image and j is an index of local image regions, p j and p j .
The quality measurement of the color image we proposed is by the Color Difference (CD) defined as
C D ( p , p ) = i = 1 n × n D ( p i ) D ( p i ) .
CD measures similarity by color difference. In case of the measurement of CD, it is the use of weighted R, G, and B values to better fit human perception. A color difference in each pixel is calculated by
D ( x ) = 2 × 0.3 x R 2 + 4 × 0.59 x G 2 + 3 × 0.11 x B 2 .
where the R, G, and B components are weighted by 30%, 59%, and 11%, respectively. Unlike the other measurement methods, the CD can differentiate and compare feelings of the images’ surface and textures that humans can perceive by the visual system.
Table 1 shows the comparison of compression performance and image quality of traditional AMBTC and our proposed AMBTC methods by using CD, SSIM, and PSNR. From an image compression point of view, when compressing with traditional AMBTC, it compresses at 96 bits per block. On the contrary, our proposed method can compress at about 95 bits per block. Here, 2Q/B means that two quantization levels are used per block, and 3Q/B means that three quantization levels are used per block. Our proposed method compresses to 7 bits for each of three quantization levels.
In terms of image quality, it is shown that the proposed AMBTC is superior to the traditional CAMBTC in the case of PSNR, SSIM, and CD. It is shown that the proposed color AMBTC represents the original image more faithfully than the existing method. In other words, it may know that using three quantization levels is good in the aspect of image quality rather than that of using two quantization levels. Meanwhile, it shows that the CD reflects most of the SSIM and PSNR measurements. However, some results of CD show that the SSIM and PSNR values do not have a proportionally full relationship. For example, CDs of Baboon images are 29.7421 and 26.1272, which have a large gap, but in terms of SSIM and PSNR, the gap is not large. It is reflecting another aspect of the human visual system that the existing PSNR and SSIM cannot measure.
Figure 7 visually compares the Lena image generated from the traditional CAMBTC and the color AMBTC method we proposed. When the images (b) and (c) are enlarged, it can be seen that the (c) image has a clearer hat brim than the (b) image. In terms of image quality, it is natural that the lower the compression ratio, the better the image quality. However, our proposed method improved such limitations.
In Table 2, EC denotes embedding capacity (bits) for the threshold T. Naturally, as the value of T increases, the number of bits increases, and the CD increases. Here, O denotes an original image, and S denotes a stego(marked) image contained data. The difference between PROPOSE #1 and #2 is whether 16 bits are hidden or 32 bits are hidden in the common bitmap M, i.e., the first case is a method of concealing 1 bit in each pixel of the bitmap M, and the second case is a method of directly concealing 2 bits in each pixel of the common bitmap M. In the given three methods, it can be known that when T increases, EC and CD increase simultaneously. PROPOSE#1 has the lowest CD until T is 10. On the other hand, T increases, it is PROPOSE#2 that provides the highest EC. CAMBTC shows weak performance in terms of EC or CD. The performance of the methods is derived from the difference between the quality of the initial cover image and the EC of the marked image. Table 2 shows the differences. The quality of the initial cover image must be good enough to keep the quality when using the appropriate DH method afterward.
Figure 8 shows the relationship between CD and hidden bits measured using the three DH methods for four images. For Lena (a), PROPOSE#1 is better than the other two methods until bits are 425,000. Also, PROPOSE #1 and #2 show superior performance in terms of CD than CAMABC in the entire x-axis. In Pepper (b), there is a little difference in CD in three methods up to the initial 125,000 bits, and then CD is increased in the range, x-axis: 125,000∼300,000. The CD is decreased in the range, x-axis: 300,000∼425,000. Also in (b), the CD of PROPOSE # 2 appears to outperform CAMBTC in the entire x-axis range.
In Airplane (c), the difference in performance between the CAMABC method and the proposed methods is very large, and both the proposed methods show higher performance than CAMBTC in all ranges. However, PROPOSE#1 is limited embedding ability to 425,000 bits. The Lake (d) also shows a performance graph like that of (c). PROPOSE#1 has a lower EC than that of PROPOSE#2, so after a certain range, its performance degrades sharply. On the other hand, PROPOSE#2 hides 32 bits per block, so initially, the image quality is lower than that of PROPOSE#1, but the moment it exceeds a certain EC, it exceeds the performance limit of PROPOSE#1.
Figure 9 evaluates the quality of Lena marked image created the traditional CAMBTC, PROPOSE#1, and PROPOSE#2 by using the human visual system. The marked images of (a), (b), and (c) embed the same 50,000 bits. The CDs obtained from (a), (b), and (c) are 11.58, 10.7388 and 10.8034, respectively, and in the case of (a), the shoulder line and the right edge of the hat are not smooth.
The marked images of (d), (e), and (f) are embedded 250,000 bits and their CDs are measured to be 12.5147, 10.821, and 10.995, respectively. The CD of CAMBTC has about 1.7 difference compared to that of PROPOSED#1. It seems the reason may be related to the quality of the initial compressed image. In the image (d), the texture of the upper right border of the hat is rougher than before. In the case of (f), although the texture of the left boundary is partially roughened, the overall image quality shows similar performance to that of (e).
The images of (g), (h), and (i) have the same EC (=375000 bits), and their CDs are 13.7187, 12.2084, and 12.3063, respectively. In other words, the CD of the image (h) is the best and image(g) is the worst. According to the observation of the human visual system, it was confirmed that a stepwise occurred in the left frame of Lena in (g). On the other hand, (h) and (i) do not seem to have such a problem. There is also noise in the left corner (i). However, other parts of the image are spotless.

6. Conclusions

In this paper, we presented a color AMBTC compression method using a common bitmap and k-means, and introduced a method of embedding a secret data into the AMBTC using OPAP. Meanwhile, since the traditional CAMBTC method was derived from compressing a grayscale image, the image is divided into blocks, the RGB layer is separated, and then the AMBTC is applied. Finally, we may obtain compressed two quantization levels and a bitmap per block for each R, G, and B layers. In addition,, the compression ratio of traditional color AMBTC is 96 bits per block. On the other hand, we compressed each block into a common bit-plane and 9 quantization levels, and then further compressed the nine quantization levels to seven bits each. In other words, our proposed color AMBTC requires only 95 bits per block to compress an image. For DH, we proved the fact that the quality of the proposed CAMBTC is superior to the traditional CAMBTC through the simulations. As for the image quality, our suggested method, PROPOSE#1, was evaluated as good, and PROPOSE#2 was evaluated as having the best DH performance. We would like to propose ways to improve the compression performance and quality of AMBTC for color images in the future.

Author Contributions

Conceptualization, C.Y. and C.K.; methodology, C.Y. and C.K.; software, D.S.; validation, C.K., L.L. and D.S.; formal analysis, C.Y.; investigation, L.L.; resources, D.S.; data curation, D.S.; writing—original draft preparation, C.K.; writing—review and editing, C.K.; visualization, D.S.; supervision, C.Y.; project administration, C.K.; funding acquisition, L.L. All authors have read and agreed to the published version of the manuscript.

Funding

This work was partially supported by the Ministry of Science and Technology (MOST),under Grant 108-2221-E-259-009-MY2 and 109-2221-E-259-010 and by the Basic Science Research Program through the National Research Foundation of Korea (NRF) funded by 2018R1D1A1B07047395 and was supported under the framework of the international cooperation program managed by NRF (2016K2A9A2A05005255) the faculty research fund of Sejong University in 2020. This work was supported by the National Natural Science Foundation of China under Grant 61866028.

Institutional Review Board Statement

Not applicable.

Informed Consent Statement

Not applicable.

Data Availability Statement

Not applicable.

Acknowledgments

Thank you to the reviewers who reviewed this paper and the MDPI editor who edited it professionally.

Conflicts of Interest

The authors declare no conflict of interest.

Abbreviations

The following abbreviations are used in this manuscript:
OI Original Image
MI AMBTC Marked Image
P A Block of an AMBTC
MA block of common bitmap
Q A Quantization Level
LSBLeast Significant Bit
DCTDiscrete Cosine Transform
BTCBlock Truncation Coding
AMBTCAbsolute Moment BTC
DHData Hiding
OPAPOptimal Pixel Adjustment Process

References

  1. Yang, H.; Kot, A.C. Binary image authentication with tampering localization by embedding cryptographic signature and block identifier. IEEE Signal Process. Lett. 2006, 13, 741–744. [Google Scholar] [CrossRef]
  2. Kim, C.; Yang, C.N. Self-embedding fragile watermarking scheme to detect image tampering ssing AMBTC and OPAP approaches. Appl. Sci. 2021, 11, 1146. [Google Scholar] [CrossRef]
  3. Jayapandiyan, J.R.; Kavitha, C.; Sakthivel, K. Enhanced least significant bit replacement algorithm in spatial domain of steganography using character sequence optimization. IEEE Access 2020, 8, 136537–136545. [Google Scholar] [CrossRef]
  4. Yang, C.; Weng, C.; Wang, S.; Sun, H. Adaptive Data Hiding in Edge Areas of Images With Spatial LSB Domain Systems. IEEE Trans. Inf. Forensics Secur. 2008, 3, 488–497. [Google Scholar] [CrossRef]
  5. Lin, S.D.; Chen, C.F. A robust DCT-based watermarking for copyright protection. IEEE Trans. Consum. Electron. 2000, 46, 415–421. [Google Scholar] [CrossRef]
  6. Leng, L.; Zhang, J.; Khan, M.K.; Chen, X.; Alghathbar, K. Dynamic weighted discrimination power analysis: A novel approach for face and palmprint recognition in DCT domain. Int. J. Phys. Sci. 2010, 5, 2543–2554. [Google Scholar]
  7. Leng, L.; Li, M.; Kim, C.; Bi, X. Dual-source discrimination power analysis for multi-instance contactless palmprint recognition. Multimed. Tools Appl. 2017, 76, 333–354. [Google Scholar] [CrossRef]
  8. Wang, S.; Zheng, D.; Zhao, J.; Tam, W.J.; Speranza, F. Adaptive Watermarking and Tree Structure Based Image Quality Estimation. IEEE Trans. Multimed. 2014, 16, 311–325. [Google Scholar] [CrossRef]
  9. Zhang, X.P.; Li, K. Comments on “An SVD-based watermarking scheme for protecting rightful Ownership”. IEEE Trans. Multimed. 2005, 7, 593–594. [Google Scholar] [CrossRef] [Green Version]
  10. Delp, E.; Mitchell, O. Image compression using block truncation coding. IEEE Trans. Commun. 1979, 27, 1335–1342. [Google Scholar] [CrossRef]
  11. 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]
  12. 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]
  13. 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]
  14. 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]
  15. Huang, Y.H.; Chang, C.C.; Chen, Y.H. Hybrid secret hiding schemes based on absolute moment block truncation coding. Multimed. Tools Appl. 2017, 76, 6159–6174. [Google Scholar] [CrossRef]
  16. 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]
  17. Sinaga, K.P.; Yang, M. Unsupervised K-Means clustering algorithm. IEEE Access 2020, 8, 80716–80727. [Google Scholar] [CrossRef]
  18. Wang, R.Z.; Lin, C.F.; Lin, J.C. Hiding data in images by optimal moderately significant-bit replacement. IEE Electron. Lett. 2000, 36, 2069–2070. [Google Scholar] [CrossRef] [Green Version]
  19. Wu, Y.; Coll, D.C. Single Bit-map Block Truncation Coding of Color Images. IEEE J. Sel. Areas Commun. 1992, 10, 952–959. [Google Scholar] [CrossRef]
  20. Ma, X.; Lin, J. Imperceptibility Evaluation for Color Stego Image. In Proceedings of the 2009 Fifth International Conference on Intelligent Information Hiding and Multimedia Signal Processing, Kyoto, Japan, 12–14 September 2009; pp. 783–786. [Google Scholar]
  21. Yang, C.K.; Lin, J.C.; Tsai, W.H. Color image compression by moment-preserving and block truncation coding techniques. IEEE Trans. Commun. 1997, 45, 1513–1516. [Google Scholar] [CrossRef]
  22. Chang, C.C.; Chen, T.S.; Chung, J.C. A colour image compression scheme based on two layer absolute moment block truncation coding. Imaging Sci. J. 2000, 48, 53–62. [Google Scholar] [CrossRef]
  23. Hu, Y.C.; Su, B.H.; Tsai, P.Y. Color image coding scheme using absolute moment block truncation coding and block prediction technique. Imaging Sci. J. 2008, 56, 254–270. [Google Scholar] [CrossRef]
  24. Bae, S.; Kim, M. A novel SSIM index for image quality assessment using a new luminance adaptation effect model in pixel intensity domain. In Proceedings of the 2015 Visual Communications and Image Processing (VCIP), Singapore, 13–16 December 2015; pp. 1–4. [Google Scholar]
  25. Wang, Z.; Bovik, A.C.; Sheikh, H.R.; Simoncelli, E.P. Image quality assessment: From error visibility to structural similarity. IEEE Trans. Image Process. 2004, 13, 600–612. [Google Scholar] [CrossRef] [PubMed] [Green Version]
Figure 1. RGB image consisting of three layers.
Figure 1. RGB image consisting of three layers.
Applsci 11 03418 g001
Figure 2. The proposed color AMBTC generation process.
Figure 2. The proposed color AMBTC generation process.
Applsci 11 03418 g002
Figure 3. Schematic diagram of DH structure.
Figure 3. Schematic diagram of DH structure.
Applsci 11 03418 g003
Figure 4. An example of the procedure of a block of traditional color AMBTC; (a) RGB blocks sized 4 × 4 of original image O I , (b) the three bitmaps of color AMBTC C T T .
Figure 4. An example of the procedure of a block of traditional color AMBTC; (a) RGB blocks sized 4 × 4 of original image O I , (b) the three bitmaps of color AMBTC C T T .
Applsci 11 03418 g004
Figure 5. The proposed compress procedure of a block of color AMBTC; (a) obtained grayscaled image G I , (b) bitmap of the proposed AMBTC M I P .
Figure 5. The proposed compress procedure of a block of color AMBTC; (a) obtained grayscaled image G I , (b) bitmap of the proposed AMBTC M I P .
Applsci 11 03418 g005
Figure 6. Original image used in the experiment; (a) Lena, (b) Pepper, (c) Airplane, (d) Lake, and (e) Baboon.
Figure 6. Original image used in the experiment; (a) Lena, (b) Pepper, (c) Airplane, (d) Lake, and (e) Baboon.
Applsci 11 03418 g006
Figure 7. Comparison of original Lena, traditional CAMBTC, and the proposed CAMBTC’s images.
Figure 7. Comparison of original Lena, traditional CAMBTC, and the proposed CAMBTC’s images.
Applsci 11 03418 g007
Figure 8. CD comparison according to EC.
Figure 8. CD comparison according to EC.
Applsci 11 03418 g008
Figure 9. Comparisons of Lena image by three methods; (a) CAMBTC, EC = 50,000, (b) PROPOSE#1, EC = 50,000, (c) PROPOSED#2, EC = 50,000, (d) CAMBTC, EC = 250,000, (e) PROPOSE#1, EC = 250,000, (f) PROPOSE#2, EC = 250,000, (g) CAMBTC, EC = 375,000, (h) PROPOSE#1, EC = 375,000, and (i) PROPOSE#2, EC = 375,000.
Figure 9. Comparisons of Lena image by three methods; (a) CAMBTC, EC = 50,000, (b) PROPOSE#1, EC = 50,000, (c) PROPOSED#2, EC = 50,000, (d) CAMBTC, EC = 250,000, (e) PROPOSE#1, EC = 250,000, (f) PROPOSE#2, EC = 250,000, (g) CAMBTC, EC = 375,000, (h) PROPOSE#1, EC = 375,000, and (i) PROPOSE#2, EC = 375,000.
Applsci 11 03418 g009
Table 1. Comparison of the quality between the tradition color AMBTC and the proposed AMBTC.
Table 1. Comparison of the quality between the tradition color AMBTC and the proposed AMBTC.
CAMBTC (96 Bits) 2Q/BPROPOSED (95 Bits) 3Q/B
CD t ( O M ) SSIMPSNR CD p ( O M ) SSIMPSNR
Lena11.54190.988737.891210.69770.991439.6064
Pepper12.43740.988237.479512.29760.989138.476
Airplane10.33980.934637.19158.56370.931240.4584
Lake18.48970.961834.049917.04560.962335.316
Baboon29.74210.925331.147226.12720.932232.2806
Table 2. Comparison of CD between the original image and marked image according to the threshold T.
Table 2. Comparison of CD between the original image and marked image according to the threshold T.
CAMBTC CD t ( O M ) T = 5T = 10T = 15T = 20
EC CD t ( O S ) EC CD t ( O S ) EC CD t ( O S ) EC CD t ( O S )
Lena11.5419239,63312.2081438,22514.7086504,08116.0868536,27317.0192
Pepper12.4374170,19312.9032384,68915.4278500,12917.6682539,31318.7706
Airplane10.3398365,10511.6417460,44912.7021503,82513.5473529,66514.278
Lake18.4897180,11318.9001308,35320.3873421,12122.4377475,05723.7682
Baboon29.7421129,52129.8709162,59330.194214,67331.1826276,04932.8615
PROPOSED#1 CD p ( O M ) T = 5T = 10T = 15T = 20
EC CD p ( O S ) EC CD p ( O S ) EC CD p ( O S ) EC CD p ( O S )
Lena10.6977347,48911.3919441,76113.8218472,46515.1749497,64916.8222
Pepper12.2976355,66513.679446,32116.3835478,12917.8738500,88119.3211
Airplane8.5637406,4979.6877462,92911.2327478,48112.0022493,02513.0615
Lake17.0456329,72917.5542389,84119.1579419,10520.4192449,42522.1857
Baboon26.1272302,06526.3071331,31327.4723351,07328.6118377,00930.574
PROPOSED#2 CD p ( O M ) T = 5T = 10T = 15T = 20
EC CD p ( O S ) EC CD p ( O S ) EC CD p ( O S ) EC CD p ( O S )
Lena10.6977399,58512.2793589,02517.0417649,88919.5795698,78522.3666
Pepper12.2976416,19314.9094600,25719.9398659,20122.1908704,80124.7835
Airplane8.5637517,92110.608631,16913.157661,92114.4979691,58516.2101
Lake17.0456365,50518.0093484,57720.953542,14523.1115602,46525.9195
Baboon26.1272308,25726.5225365,05728.6964404,35330.6984457,15334.1375
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.; Shin, D.; Yang, C.; Leng, L. Data Hiding Method for Color AMBTC Compressed Images Using Color Difference. Appl. Sci. 2021, 11, 3418. https://doi.org/10.3390/app11083418

AMA Style

Kim C, Shin D, Yang C, Leng L. Data Hiding Method for Color AMBTC Compressed Images Using Color Difference. Applied Sciences. 2021; 11(8):3418. https://doi.org/10.3390/app11083418

Chicago/Turabian Style

Kim, Cheonshik, Dongkyoo Shin, Chingnung Yang, and Lu Leng. 2021. "Data Hiding Method for Color AMBTC Compressed Images Using Color Difference" Applied Sciences 11, no. 8: 3418. https://doi.org/10.3390/app11083418

APA Style

Kim, C., Shin, D., Yang, C., & Leng, L. (2021). Data Hiding Method for Color AMBTC Compressed Images Using Color Difference. Applied Sciences, 11(8), 3418. https://doi.org/10.3390/app11083418

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