A Robust Image Steganography on Resisting JPEG Compression with No Side Information

ABSTRACT Robust JPEG steganographic algorithms are proposed to transmit covert message against JPEG compression. The existing robust JPEG steganographic algorithms are working with the side information about JPEG compression quality factor of a lossy channel. However, massive recent experimental results reveal that the performance of the present robust JPEG steganographic algorithms is poor if the side information is unknown. Thus, this paper proposes a new robust JPEG steganographic algorithm to satisfy the requirement. First, the error diffusion of steganographic embedding encoder is analyzed. Then, a new robust JPEG steganographic algorithm is proposed based on the analysis result. A series of experiments are conducted on 10,000 images from BOSSbase 1.01 image library. The results show that the proposed method can resist JPEG compression efficiently with acceptable resistance to steganalysis statistical detection.


INTRODUCTION
Steganography is an art of covert communication [1][2][3][4][5]. It can transmit secret message through public communication channels without causing attention of watcher, especially in a controlled communicating situation (such as prisoner-communication in the prison under the monitoring of guard). In recent years, with the development of mobile communication technology, many social medias such as FaceBook, WeChat, and Instagram transmit enormous images through intelligent mobile terminal [6]. JPEG compression is always applied on the images of social medias after considering the bandwidth, tariff, traffic and other restrictions of intelligent mobile terminal. This kind of lossy operation often destroys the message hidden by traditional steganographies [7]. Therefore, robust steganography on resisting JPEG compression is proposed to protect the message against the lossy compression with acceptable resistance to steganalysis statistical detection, and then it is the focus of this manuscript.
When it comes to the words "robust steganography", it is natural to think of "robust watermark". The robust watermarking technology has been researched for more than two decades, and some kinds of robust watermarking methods (such as spread spectrum modulation [8], feature-based algorithm [9], and scale invariant feature transformation [10]) are proposed to reduce the effect of various lossy operations on cover image object. In general speaking, the priority purpose of robust watermarking is to guarantee the existence of embedded information against the various attacks (such as JPEG compression, rotation, cropping, down-sampling, and so on), and the completeness of the embedded information is on the second stage [11]. Meanwhile, the designs of most robust watermarking ignore the ability of resisting steganalysis detection for there is no related requirement [12]. Thus, the robust watermarking algorithm cannot be simply used as a steganography to transfer secret message on security consideration.
In recent years, the adaptive steganography becomes a hotpot in the research of information hiding [1,2]. A design is widely used by the recent adaptive steganographies -"embedding cost function + steganographic embedding code" [13]. The cooperation between the function and embedding code (STCs, Syndrome Trellis Codes [14]) can concentrate embedding modifications to the proper areas (hard to detect the change on them) [1,13,15,16]. Because the embedding cost function mainly influence the distribution of modifications on cover image, many embedding cost functions are proposed in the recent proposed adaptive JPEG steganographies, such as New Perturbed Quantization [17] algorithm, Uniform Embedding Distortion [18] (UED) algorithm, Efficient Block-entropy Steganographic scheme [19] algorithm and JPEG UNIversal WAvelet Relative Distortion [20] (J-UNIWARD) algorithm. These adaptive steganographic algorithms work in the lossless communication channel and receive high performance on resisting steganalysis statistical detection methods [21][22][23][24].
Nevertheless, the above adaptive steganographic algorithms suffer setbacks in the lossy channel, and robust steganographic algorithm is proposed to protect the embedded message. In the previous work, Zhang et al. proposed robust steganographic algorithms DCT Coefficient Relationship-based Adaptive Steganography (DCRAS [7]) and Feature Region-based Adaptive Steganography (FRAS [25]), and they can resist JPEG compression efficiently with acceptable detection resistance. However, these robust algorithms need to know the quality factor of the JPEG compression used in the lossy channel (side information), and they can hardly protect the embedded message if the lossy channel compresses the stego object in a different quality factor.
To solve the problem above, a new robust JPEG steganography with no side information is proposed in this manuscript. A series of experiments are conducted on 10,000 images from BOSSbase 1.01 image library, and the results reflect that the proposed robust JPEG steganographic algorithm can resist JPEG compression in a quality factor range (65,85) with acceptable resistance to steganalysis statistical detection. The main works of this manuscript are as follows: (1) The error diffusion of steganographic embedding code STCs is analyzed. The relationship between the parameters of STC and the error probability of extracted message in the lossy channel is pointed out: the height and width of sub-matrix of STCs have a positive correlation with the error probability of extracted message. (2) A new robust JPEG steganographic algorithm with no side information is proposed. It is based on the error diffusion analysis result and the relationship between DCT coefficients. The method of reduction error diffusion in the lossy channel can apply to another robust JPEG steganography.
The rest of this manuscript is organized as follows. Section 2 introduces the related researches of adaptive JPEG steganography and robust JPEG steganography. Then, the analysis of error diffusion of STCs in the lossy channel and the proposed robust JPEG steganographic algorithm are described in Sections 3 and 4, respectively. In Section 5, the results of comparative experiments on resisting JPEG compression and steganalysis detection are presented. Section 6 summarizes the full manuscript.

Adaptive JPEG Steganography
A JPEG image is obtained from an original spatial image through several processes, such as color space conversion, down-sampling, 8 × 8 blocking, applying block DCT transformation independently, quantizing the resulting DCT coefficients by quality factor (QF) to integer numbers, and encoding the coefficients for the storage operation. The embedding modification of JPEG adaptive steganography algorithm is usually applied on the rounded DCT coefficients after quantizing.
Many adaptive JPEG steganographic algorithms are composed of embedding cost function and steganographic embedding code. This framework [13] is originated from the minimal distortion model proposed by Fridrich et al. [26]. It achieves good performance on resisting detection for the embedding modifications are hidden in the DCT coefficients with higher resistance to detection. On the research of how to define proper embedding cost function, Holub et al. proposed an adaptive steganographic algorithm J-UNIWARD on JPEG image in the article [20]. Wavelet decomposition coefficients are used to describe the suitability of an element on resisting statistical detection. The embedding cost function DF(X, Y) on cover and stego DCT coefficient sequences X and Y is defined as follows: where J −1 (·) is the inverse function that transforms the DCT coefficients to spatial domain, W (r) uv denotes the uvth coefficient of rth (r = 1,2,3) wavelet decomposition, and ε > 0 is used to prevent the molecule from zero (in current, ε = 10 −5 ).

Robust JPEG Steganography
In [7], we proposed a framework for designing a robust steganographic algorithm. The framework combines the robust measure of robust watermarking with the design of adaptive steganographic algorithm, in order to resist both JPEG compression and steganalysis detection.
In the framework, for the sender, the embedding domain is determined first; then, design the message embedding modification method with strong robustness to JPEG compression; then, the embedding cost function is defined to elevate the resistance to steganalysis detection; in the next, the error correction coding is applied to further improve the robustness of embedded message. Finally, use the steganographic embedding code to embed the message into the cover object through the designed modification method above. For the receiver, the STCs is first decoded to obtain the interfered information flow, and then the error correction code is used to reduce the bit error rate, and finally get the original embedded message.
Based on the robust JPEG steganographic framework above, DCRAS and FRAS algorithms are also proposed in articles [7,25]. DCRAS and FRAS algorithm owns much better JPEG compression resisting performance than typical adaptive JPEG steganographic algorithm, such as J-UNIWARD, UED, and so on. But they need the side information about the quality factor of the attacking JPEG compression. If the stego object is suffered by a JPEG compression with a different quality factor. These algorithms can no longer protect the embedded message any more. That is because the quality factor is used to generate the robust cover object against JPEG compression, and the generated object is strong related to the quality factor in these algorithms. How to generate a robust cover object without the knowledge of quality factor is needed for robust JPEG steganography. On this problem, this paper will propose a new robust JPEG steganographic algorithm.

Construction of STCs Embedding Matrix
The main purpose of the steganographic embedding code is to minimize the cost value caused by embedding the secret message in the steganographic algorithm. The most popular embedding form is matrix embedding [1], and it can be described as where x = {x 1 , x 2 , . . . , x n }, y = {y 1 , y 2 , . . . , y n } denote the cover object and stego object of n length, respectively. And msg = {msg 1 , msg 2 , . . . , msg m } denotes the secret message with m bits. H denotes the embedding matrix, and D(x, y) is the embedding cost function describing the distortion caused by changing cover element. How to find a y that satisfies Equation (2) is the main purpose of steganographic embedding coding.
At present, most algorithms of the adaptive steganography and robust steganography use STCs [14] to embed a secret message into the cover object. STCs embedding code is based on the idea of the Viterbi decoding algorithm and find suitable solution of y by limited exhaustive, pruning, and traceable operations. A brief example of STCs is presented in Figure 1. From the example, we can see that the STCs algorithm can work efficiently because of the special construction of the embedding matrix H, and the detail of H is shown in Figure 2.
From the figure we can see that, H is composed by m submatrices H lined in diagonal. Notice that some rows of the last h − 1 sub-matrices are deleted to guarantee the size of H is m × n. This special construction makes the sender can find a stego nearly satisfies Equation (2) by the exhaustive process, and the computational complexity is acceptable on a personal computer. Embedding experiments in the article [14] show that the performance of STCs is gradually near to the theoretical bound with the height of H grows.

Analysis of Error Diffusion
In the lossy channel of JPEG compression, the DCT coefficients are changed and caused error bits in the steganographic extraction process. Article [6] points out that the occurrence of error bits in robust stego object of DCRAS after JPEG compression is random.
We suppose the error probability of the robust stego object y 1×n after JPEG compression is p err . y is generated by STCs with H m×n , and the embedding matrix is composed by m sub-matrices H h×w . According to Equation (2) of matrix embedding, the embedded m bits message msg 1×m is extracted on the binary field by The where the symbol p 1 denotes the probability of "1" elements in sub-matrix H. As described in [11], the elements of H are suggested to be chosen randomly chosen from set {0, 1}, p 1 can be regarded as 1/2. Thus, the error probability of the elements in H is p err /2. Notice that the computation of Equation (3) is on the binary field, and 1 ⊕ 1 = 0 on this field. It means that if the number of errors is even, the extracted message is correct. Because the extracted message m b is computed by hw elements from H, the error probability p m b of m b can be expressed as Because the value of p err is less than 0.1 in many situations based on the experiments in [4], p m b can be estimated by From Equation (6), we can get that, the larger values of height and width of H cause higher error probability of extracted message in the lossy channel.

PROPOSED ROBUST STEGANOGRAPHIC ALGORITHM
In this section, the robust steganographic algorithm without side information of quality factor is proposed. The basic flow chart of the proposed algorithm is shown in Figure 3, which mainly includes generating robust virtual cover object, defining embedding cost function, coding the secret message by error correction encoder, reducing the error diffusion of STCs, embedding coded message through STCs and the corresponding extracting algorithms. This section will introduce how to generate the robust virtual cover object, define the embedding cost function and reduce the error diffusion.

Construction of Robust Virtual Cover Object
Based on the relative relationship between DCT coefficients, a robust against JPEG compression virtual cover object is generated: (1) Decoding the JPEG image I to achieve a set of nonoverlapping 8 × 8 DCT coefficients blocks D k = {D k (i), i = 1, 2, . . . 64}, k = 1, 2, . . . , B, B is the number of the blocks, and D k (i) is the ith coefficient in the kth block. (2) Generating robust virtual cover object X = {x 1 , x 2 , . . . , x n } based on the relationship between coefficient D k (i) and M ki . The symbol M ki is the rounded mean value of three DCT coefficients D k 1 (i), D k 2 (i), D k 3 (i) at the same in-block position of three neighboring blocks. The element x j of the generated cover object X satisfying: Then, robust virtual stego object Y = {y 1 , y 2 , . . . , y n } is obtained after embedding message into the virtual cover object X. A corresponding mapping rule from the robust Last, for the receiver, the extracted stego object after compression is denoted as Y, and the extracting rule is where the symbols D, D k = {D k (i), i= 1, 2, . . . , 64} and {M ki } k,i , respectively, denote the sets of DCT coefficients, 8 × 8 blocks and neighboring mean values after JPEG compression. (3) How to determine the value of σ ki in formula (8) of step II is presented as follows: where D max is the maximum value among the four coefficients, D min k (i) = min{D k (i), D k 1 (i), D k 2 (i), D k 3 (i)} is the minimum value, T 1 , T 2 (T 1 < T 2 ) are the threshold values determined by user, a suggested value of (T 1 , T 2 ) is (15,30) according to the experiments in [24].

Design of Embedding Cost Function
After the robust virtual cover object is created, the popular minimal distortion model [13,26] is used to concentrate the embedding modifications on the elements in the less distortion region to increase the performance on resisting detection. First, embedding cost function is defined to describe the distortion value caused by embedding message on cover object X. The cost function is designed based on the combination of the J-UNIWARD embedding cost function DF(D, D) [18] of formula (1) and the robust virtual cover object. It is shown as follows: where ρ (1) ki and ρ (2) ki , respectively, denote the cost values DF(D k (i),D k (i)) of modification magnitude 1 and 2 in the J-UNIWARD embedding cost function, and wet_cost denote the cost value that not advanced to be modified in the STCs embedding process (usually be set to a quite large value such as 10 8 ). Then, the robust virtual stego object Y is obtained after embedding secret message into X by STCs code, and the modification is mapped into image DCT coefficients D k by formula (8) to obtain the DCT coefficients stego object.

Reduction of Error Diffusion
Based on the analysis result Section 3.2, the error probability can be reduced by shrinking the hw of sub-matrix H. Because the height h of H effects, the performance of steganographic embedding and computational complexity a lot, the value of h is often in the range h ∈ 8, 9, 10, 11, 12 on embedding efficiency and complexity consideration. Another way to reduce the error diffusion of STCs under the situation is to get a small value w. According to the construction of embedding matrix of STCs in Section 3.1, the value of w is due to the embedding rate α = m/n. Thus, we can increase the embedding rate of STCs by following steps: I. Sort the elements of robust virtual cover object X computed from the same in-block position (i, j), i, j ∈ {1, 2, . . . , 8} of 8 × 8 DCT coefficients in a row sort(X(i, j)), i, j ∈ 1, 2, . . . , 8. II. Compute the required length n rd of virtual cover object based on the reduced embedding rate α. III. Select n rd elements from the set {sort(X(i, j)), i, j ∈ {1, 2, . . . , 8}} in an order shared by the sender and receiver.
The sort of the X is to make the elements in the same in-block position adjoined in the selected n rd elements virtual cover object. This process is to increase the ability of resisting detection of the proposed method. As shown in Figure 4, it tells that the embedding modifications of J-UNIWARD are related to the in-block position, and concentrate to the low-frequency positions. Thus, we suggest the first 10 sort(X(i,j)) in a permutation as (s (X(1, 3)), s(X(1, 2)), s(X(1, 1)), s(X(2, 1)), s(X(3, 1)) s(X(2, 2)), s(X(3, 2)), s(X(2, 3)), s(X(4, 1)), s(X (1, 4))).
Then, error correction encoder RS [27] with parameter (6,15) is applied on the secret message, and the robust virtual stego object is obtained after embedding the encoded secret message into the selected n rd -element virtual cover object by STCs code. The modifications are mapped into image DCT coefficients D k by formula (8) to obtain the DCT coefficients stego object.

Experimental Setups
The experimental results were carried out by the Matlab R2010a, and the spatial image database used in the experiments was BOSSbase v1.01 (proposed by Patrick Bas, Tomas Filler, Tomas Pevny at ICASSP 2013, containing 10,000 images of size 512 × 512, download: http: //agents.fel.cvut.cz/stegodata/), the image database contains natural scenery, artificial facilities, and human portraits pictures, at the same time, the photos are shot from eight cameras of different companies to ensure the diversity.
In the resisting JPEG compression experiments, the measure of resisting JPEG compression of the steganographic algorithm is the extraction error rate R error , which is defined as the ratio of the bit-length num error of the errors in the extracted message after the stego object is JPEG compressed to the bit-length m of the original embedded secret message, that is, R error = num error /m. The closer value to 0 indicates the higher performance on resisting JPEG compression.
In the resisting detection experiment, the popular detection features (such as ccPEV [28] and DCTR [23] detection feature libraries with 548 and 8000 dimensions, respectively) are extracted from the cover image set and stego image set. Then half of the features are used to train the classifier and use the trained classifier to classify the remaining images to test the detection resisting performance of steganographic algorithm. The measurement is "out of bag estimate of the testing error", and denoted as E oob , which is an unbiased value and indicates the test error rate of the classifier. The higher the value, the better performance of the steganographic algorithm owns.

Experiments of Resisting JPEG Compression
In this section, we randomly select 1000 spatial images from the BOSSbase v1.01 image database to, respectively, generate 1000 cover images when quality factor is 75, and then use J-UNIWARD [20], robust watermarking algorithm [29], DCRAS [7] and the improved method in this paper to transmit secret message. The embedding rate varies from 0.01 bpnzAC (bits per non-zero Alternating Current coefficient) to 0.1 bpnzAC with 0.01 interval and 1000 stego images are generated on each embedding rate with each embedding algorithm. To simulate the no side information of quality factor of JPEG lossy channel, the stego images generated by DCRAS algorithm are obtained to resist 80 quality factor JPEG compression. Then, the JPEG compression attacks with the quality factor of 65, 75, and 85 are applied to the stego images. Then, the corresponding message extraction algorithms are run after the lossy compression, and the extracted message is compared with the original message by bit. Last, the extraction error rates R error of the tested methods are calculated, and the results are shown in Figures 5-7.
It can be seen from the figures that the secret carriers obtained by J-UNIWARD algorithm and DCRAS algorithm are unable to resist the lossy compression. At the same time, the extraction error rate of the robust watermarking algorithm in the [29] is between 3% and 10%. It owns better JPEG compression resisting performance than typical adaptive JPEG steganographic algorithm but the error rate is still high. The correctness rate of the extraction error rate of the proposed algorithm about 0.3-3%, and it means that the proposed algorithm can resist JPEG compression efficiently.

Experiments of Resisting Statistical Detection
In this section, we construct the cover image set with QF = 75 from all 10,000 spatial images in the BOSSbase v1.01 image database, and test the resisting performance of detection on the proposed algorithm, the robust watermarking algorithm [29], and DCRAS [7] algorithm. The embedding rate varied from 0.01 to 0.1 bpnzAC, 10,000 stego images are generated on each embedding rate with different testing algorithms. Then, the detection features of the cover set and the stego set are extracted by the detection feature library, and then the ensemble integration classifier [30] is trained by the extracted features (from 5000 cover-stego pairs). In the next, the trained classifier is used to classify the remaining 10,000 images (5000 cover images and 5000 stego images are random distributed). The results of E oob are shown in shows the results of the DCTR detection algorithm (DCTR is one of the most effective detection library for JPEG steganography, and it contains 8000 features [23]). It can be seen from Figure 8 that the detection error rate E oob of robust watermarking algorithm is low, the possible reason is that the anti-detectability is not considered in the design of robust watermarking algorithm, resulting in the embedded image is easy to be detected. At the same time, the E oob of the proposed algorithm is less than the E oob of DCRAS algorithm at most 7%. This is because the STCs used in the proposed method only to find the solution of Equation (2) in a part of the whole cover object, and better solution can be found if considering the whole cover object. Thus, the ability of the proposed method is reduced when compared to DCRAS algorithm.

CONCLUSIONS
In view of the problem that the JPEG compression quality factor is unknown in some lossy channels. This paper proposed a new robust JPEG steganographic algorithm to satisfy the situation without knowledge of JPEG compression quality factor. It generates a robust virtual cover object based on the relationship between DCT coefficients. A series of experiments are conducted and the results show that the proposed robust algorithm can achieve high extraction accuracy in various JPEG compression situations without knowing the quality factor of compression and can resist steganalysis statistical detection methods.
Without any doubts, better coding performance can be obtained if the steganographic embedding code is combined with the error correction code, it may be the focus of the next work. How to elevate the extraction accuracy to 100% is a curious question. Furthermore, exploiting new method to resist stronger lossy attacks (such as rotation, cropping, down-sampling, etc.) is another interesting topic of robust steganography.