Next Article in Journal
Dynamic Frequency Support from a DFIG-Based Wind Turbine Generator via Virtual Inertia Control
Next Article in Special Issue
QoS-Aware Flexible Handover Management in Software-Defined Mobile Networks
Previous Article in Journal
Three Approaches to Low-Duty Turbo Compressor Efficiency Exploitation Evaluation
Previous Article in Special Issue
Sonic Watermarking Method for Ensuring the Integrity of Audio Recordings
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Two-Dimensional Histogram Shifting-Based Reversible Data Hiding for H.264/AVC Video

School of Computer Science and Engineering, South China University of Technology, Guangzhou 510006, China
*
Author to whom correspondence should be addressed.
Appl. Sci. 2020, 10(10), 3375; https://doi.org/10.3390/app10103375
Submission received: 10 April 2020 / Revised: 6 May 2020 / Accepted: 9 May 2020 / Published: 13 May 2020
(This article belongs to the Special Issue Recent Developments on Multimedia Computing and Networking)

Abstract

:
Histogram shifting (HS) has been proved to be a great success in reversible data hiding (RDH). To reduce the quality loss of marked media and the increase in file size, several two-dimensional (2D) HS schemes based on the characteristics of cover media have been proposed recently. However, our analysis shows that the embedding strategies used in these methods can be further optimized. In this paper, two new 2D HS schemes for RDH in H.264/AVC video are developed, one of which uses the DCT coefficient pairs with both values 0 and the other does not. The embedding efficiency of a DCT coefficient pair in different embedding modes is firstly calculated. Then, based on the obtained embedding efficiency along with the statistical distribution of DCT coefficient pairs, two better embedding strategies are proposed. The secret data is finally embedded into the pairs of DCT coefficients of the middle and high frequencies using our proposed strategies. The comparison experiment results demonstrate that our schemes can achieve enhanced visual quality in terms of PSNR, SSIM, and entropy in most cases, and the increase in file size is smaller.

1. Introduction

As a special type of data hiding, RDH schemes imperceptibly embed secret data into cover media in a reversible manner, meaning the cover media can be losslessly recovered after data extraction. Due to the reversibility, RDH schemes are especially useful in the scenarios where any distortion may be unacceptable, such as military applications, medical imaging, and law enforcement. For example, the integrity check code of a video can be embedded into it to assure the video used for law enforcement has not been modified. So far, many RDH schemes have been proposed, which can be classified into three main categories: lossless compression [1,2], difference expansion [3,4,5,6] and histogram shifting [7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23]. HS-based RDH scheme was first proposed by Ni et al. [7], and it is improved for years afterwards using the histograms of difference image [8,9] or prediction errors [10,11,12,13], multiple histograms [14,15,16,17] and 2D HS [18,19,20,21,22,23].
Most aforementioned RDH schemes are only suitable for uncompressed images, and cannot be directly applied to compressed images and videos. However, compressed media such as JPEG images and H.264/AVC videos are more commonly used in daily life. Several RDH schemes have been proposed for JPEG images [24,25,26,27,28,29]. Huang et al. [24] proposed an HS-based RDH scheme for JPEG images by expanding the AC coefficients with values ± 1 . Moreover, a block selection strategy is used to adaptively choose DCT blocks for data embedding. An ordered embedding method to further reduce the increase in the file size of marked images was proposed in [25]. Subsequently, two different coefficient selection methods are proposed in [26,27] to further improve the embedding efficiency. Recently, He et al. [28] established the negative influence models of image visual distortion and file size change, which can be employed to optimize the selection of DCT blocks and coefficient frequencies. Cheng et al. [29] proposed a 2D HS-based RDH scheme for JPEG images as well as a selection strategy based on the optimal frequency band of the DCT coefficient pairs.
For H.264/AVC video, Chung et al. [30] proposed embedding the motion vectors (MVs) into DCT coefficients using the HS method for the purpose of intra-frame error concealment. In [31], position of the last nonzero level of DCT block is used to embed secret data. Although the distortion caused by data hiding can be reduced, the embedding efficiency is not high. To avert the intra-frame distortion drift, the directions of intra-frame prediction are used in the RDH scheme of [32]. To reduce the quality distortion, a 2D HS-based RDH scheme was introduced by Xu et al. [33] to embed secret data into DCT coefficients of middle and high frequencies. A different 2D HS-based method is also proposed in [34] to improve the embedding efficiency. Kim et al. [35] proposed an RDH algorithm based on compensation, reducing the modification of DCT coefficients. Niu et al. [36] presented an algorithm based on the HS of MVs, and to further improve the embedding performance, they also presented a 2D HS-based method of MVs [37].
Although many video coding schemes [38,39,40,41] based on DCT or wavelet transform [42] have been proposed, H.264/AVC is the most commonly used video coding format. Thus, the RDH technique for H.264/AVC video is of great value. In this paper, in order to embed additional data into H.264/AVC videos, the embedding efficiency of a DCT coefficient pair in different embedding modes is firstly calculated. Then, based on the computed embedding efficiency along with the statistical distribution of DCT coefficient pairs, the defects in several 2D HS schemes are analyzed. In addition, two better embedding strategies are proposed. The secret data is finally embedded into the pairs of DCT coefficients of the middle and high frequencies using our proposed methods. The experimental results demonstrate the effectiveness of our embedding strategies. Compared with the related schemes, the marked videos of our schemes have better visual quality in most cases, and the increase in file size of them is smaller.
The remainder of this paper is organized as follows. Firstly, the 2D HS-based RDH technique is briefly reviewed in Section 2. Then, based on the analysis of several 2D HS schemes for compressed media, the proposed two 2D HS-based RDH schemes are described in detail in Section 3. The experimental results and analysis are then presented in Section 4. Finally, the conclusions are given in Section 5.

2. HS-based RDH Technique

The one-dimensional (1D) HS-based RDH technique was first developed in [7] for uncompressed images, whose main idea is briefly reviewed here. Firstly, the histogram of pixel values in an image is generated by
h ( k ) = # { x i | x i = k } ,
where # denotes the cardinal number of a set, k [ 0 , 255 ] Z , and x i is a pixel from the image. Then the bins between the peak and zero bins are shifted toward the zero bin by one unit, i.e.,
x i = x i + 1 if x i [ k p + 1 , k z 1 ] , x i if x i [ k p + 1 , k z 1 ] ,
where k p and k z denote the pixel values of the peak and zero points of the histogram respectively, and without loss of generality, it is assumed that k p < k z . Finally, the data is embedded into the pixels by
x i = x i + 1 if x i = k p m i = 1 , x i if x i = k p m i = 0 ,
where m i is one bit of secret data to be embedded. The 1D HS-based method is illustrated in Figure 1.
The classic 2D HS-based RDH technique [19], which is extended from 1D HS-based method, is illustrated in Figure 2. Compared with 1D histogram, 2D histogram is generated by the statistical distribution of value pairs, so the line shown in Figure 1 is changed into a plane, as shown in Figure 2. The point ( x , y ) in the plane is a value pair composed of different kinds of objects (e.g., prediction errors of pixel values, transform coefficient values) used for data embedding. When the DCT coefficients are used to carry secret data, the value pair is also called a coefficient pair. Thus, the ( 0 , 0 ) DCT coefficient pair, which will be used later in the paper, denotes a pair of DCT coefficients with both values 0. There are various ways of pairing objects. For example, two consecutive DCT coefficients in a block or two DCT coefficients from adjacent blocks with the same frequency can be paired. Each arrow in Figure 2 indicates the possible modification of the value pairs. The number of arrows ending at a certain point can be called the in-degree of the point, and the number of arrows starting with a point can be called its out-degree. Generally, the amount of the modification to a value pair will be different when the value pair is modified along different directions. For instance, when a value pair ( x , y ) = ( 1 , 0 ) is modified to ( 2 , 1 ) or ( 2 , 0 ) when m i = 0 or m i = 1 , the corresponding amount of the modification to ( 1 , 0 ) is 2 or 1, respectively. For ease of discussion, the modification method of a point with a given out-degree is referred to as the embedding mode of the point, and the combination of different embedding modes is called an embedding strategy in the rest of this paper.
Since each point can be modified with many different embedding modes, there are various embedding strategies to design a 2D HS-based scheme, which will result in different embedding efficiency. High embedding efficiency means that more data can be embedded per unit modification. For compressed media, the classic 2D HS-based method may not be efficient enough. The reason is that, unlike pixels in uncompressed images, the objects used for data embedding in the compressed domain need to be encoded. For those commonly used objects, e.g., DCT coefficients and MVs, the results of entropy coding are sensitive to their values. For example, entropy coding of DCT coefficients in H.264/AVC video is related to the coefficient values of both current block and neighboring blocks. In addition, the distribution of zero values also has a great impact on the efficiency of entropy encoding. To improve embedding efficiency, several 2D HS-based RDH schemes have recently been proposed for JPEG images [29] and H.264/AVC videos [33,34,37], which will be analyzed in the following section.

3. Proposed Schemes

In this section, we first use the embedding efficiency to analyze the embedding strategies of several 2D HS-based RDH schemes in compressed domain. Then according to the analysis results, two new 2D HS-based RDH schemes are proposed, one of which uses the ( 0 , 0 ) DCT coefficient pairs and the other does not.

3.1. Analysis of 2D HS-based RDH Schemes in Compressed Domain

Although our proposed scheme is general for DCT coefficients and MVs, the modification of MVs may introduce huge prediction errors, and with the increase of frame number, the error propagation will greatly degrade the quality of the video. Therefore, only the DCT coefficients are selected for embedding. The embedding efficiency of the embedding mode i related to a coefficient pair is defined as follows.
E i = B i V i = n = 1 N p n b n n = 1 N p n v n ,
where B i is the number of bits that can be embedded into the coefficient pair with the embedding mode i, and V i is the corresponding amount of modification to the coefficient pair. p n is the occurrence probability of a certain modification direction n of the embedding mode i, and N is the out-degree of the DCT coefficient pair, thus, n = 1 N p n = 1 . b n is the number of bits that can be embedded through the modification direction n, and v n is the corresponding amount of modification to the coefficient pair. In 2D HS, the shifting across a coefficient pair will introduce excessive modification, so this kind of shifting will not be considered. On this basis, the maximum out-degree of a coefficient pair is nine, including eight neighbors and the coefficient pair itself. To embed secret data, the out-degree of a coefficient pair must larger than one. The embedding efficiency is not only related to the value of out-degree, but also to the length of secret data that can be embedded with the chosen modification directions.
Without loss of generality, it can be assumed that the secret data to be embedded is evenly distributed on 0 and 1, i.e., the probabilities of 0 and 1 in the data are both 0.5. Then, the occurrence probability of a binary string consisting of 0 and 1 is inversely proportional to the length of the string. The longer the string, the lower the probability. For example, the probability of a string of length 1 (e.g., ‘0’) is 1 2 , while the probability of a string of length 2 (e.g., ‘10’ or ‘11’) is 1 2 × 1 2 = 1 4 . Therefore, to obtain more efficient embedding modes for a given out-degree, the direction that would cause large modifications should be used to embed long data string. Based on these observations, the embedding modes with the highest embedding efficiency for a given out-degree can be obtained. The results are illustrated in Figure 3, and the corresponding embedding efficiency of each embedding mode can be calculated as follows.
E 2 = B 2 V 2 = 1 2 × 1 + 1 2 × 1 1 2 × 1 = 1 0.5 = 2 ,
E 3 = B 3 V 3 = 1 2 × 1 + 1 2 × 1 1 2 × 2 = 1.5 0.5 = 3 ,
E 4 = B 4 V 4 = 2 3 4 × 1 = 2 0.75 = 2.67 ,
E 5 = B 5 V 5 = 3 4 × 2 + 1 4 × 3 3 4 × 1 = 2.25 0.75 = 3 ,
E 6 = B 6 V 6 = 1 2 × 2 + 1 2 × 3 5 8 × 1 + 1 8 × 2 = 2.5 0.875 = 2.857 ,
E 7 = B 7 V 7 = 1 4 × 2 + 3 4 × 3 4 8 × 1 + 2 8 × 2 = 2.75 1 = 2.75 ,
E 8 = B 8 V 8 = 3 4 8 × 1 + 3 8 × 2 = 3 1.25 = 2.4 ,
E 9 = B 9 V 9 = 7 8 × 3 + 1 8 × 4 4 8 × 1 + 3 8 × 2 = 3.125 1.75 = 2.6 .
From the above calculation results, it can be seen that the highest embedding efficiency can be achieved with the out-degree is 3 or 5, and the embedding capacity with an out-degree of 5 is higher. Similarly, the embedding efficiency of other embedding modes with different out-degrees can be easily obtained. Accordingly, the defects in the embedding strategies of the related 2D HS-Based RDH schemes are analyzed in Section 3.1.1 and Section 3.1.2.

3.1.1. Related Schemes Using the ( 0 , 0 ) Coefficient Pairs

The number of coefficient pairs ( 0 , 0 ) are usually much larger than those of other coefficient pairs, so very high capacity can be obtained in the schemes using the ( 0 , 0 ) coefficient pairs. However, at the same time, when many zero coefficients are changed to non-zeros during data embedding, there will be a considerable increase in the file size of marked videos. Therefore, the schemes using the ( 0 , 0 ) coefficient pairs may only be suitable for the situations where high capacity is required regardless of file size.
In [34], an embedding mode with an out-degree of 3 is applied to most points on the coordinate axis; however, this embedding mode is not the most efficient embedding mode with an out-degree of 3. More importantly, in order to make the scheme reversible with this embedding mode, both values of many pairs will be modified without data embedding, so many modifications are introduced without increasing the embedding capacity. Thus, the overall embedding efficiency may decrease. In [33], only the points in the right half plane are used, so not only are many points in the other half plane not fully used, but the best embedding mode with an out-degree of 5 cannot be used for the ( 0 , 0 ) coefficient pairs. Thus, the use of the embedding mode with an out-degree of 4 make this method generally less efficient than the method proposed in [34] for E 4 < E 5 .

3.1.2. Related Schemes Without Using the ( 0 , 0 ) Coefficient Pairs

To reduce the increase in file size, the ( 0 , 0 ) coefficient pairs should not be used. The corresponding schemes are usually suitable for the case where the increase in file size should be as small as possible, but the required embedding capacity is not large. In this case, the number of the coefficient pairs ( 0 , 1 ) , ( 0 , 1 ) , ( 1 , 0 ) and ( 1 , 0 ) is the largest, so these pairs are the best candidates for data embedding.
In [29], to reduce the modification to the zero coefficients, the best embedding mode with the out-degree being 2 is applied to the coefficient pairs ( 0 , 1 ) , ( 0 , 1 ) , ( 1 , 0 ) and ( 1 , 0 ) . Although the probability of modifying the zero coefficients is 0.5 when the best embedding modes with an out-degree of 2 or 3 are used during data embedding, E 2 < E 3 . Hence, this embedding strategy lowers the overall embedding efficiency without reducing the modifications. In [37], the best embedding modes with an out-degree of 4 are used for the coefficient pairs ( 1 , 0 ) and ( 1 , 0 ) , but the less efficient embedding modes with an out-degree of 4 are used for the coefficient pairs ( 0 , 1 ) and ( 0 , 1 ) . In addition, the embedding efficiency of the two used embedding modes is lower than that of the best embedding mode with an out-degree of 3. Moreover, the two values of many coefficient pairs need to be modified at the same time, so the videos will be greatly modified.

3.2. Proposed 2D HS-Based RDH Schemes

Since the modifications of zero DCT coefficients have a great negative impact on the compression rate, long string of data should be preferentially embedded through the modification directions that will modify more zero coefficients. As analyzed in Section 3.1, the probability of long data string is small, so the probability of the modification to zero coefficients can be reduced. Based on this premise and the previous conclusions about the embedding efficiency in Section 3.1, two new 2D HS schemes are developed for RDH in H.264/AVC video, one of which uses the ( 0 , 0 ) DCT coefficient pairs and the other does not. The details of these two schemes are described in the following two sections.

3.2.1. 2D HS Using the ( 0 , 0 ) Coefficient Pairs

Let ( x , y ) denote a cover coefficient pair, and the corresponding marked coefficient pair is represented by ( x , y ) . The proposed 2D HS scheme using the ( 0 , 0 ) coefficient pairs is illustrated in Figure 4. First, all points are divided into several disjoint sets shown below.
S 1 = 0 , 0 , S 2 = 0 , y y > 0 y 2 , S 3 = 1 , 1 , S 4 = 0 , y y < 0 y 2 , S 5 = 1 , 1 , S 6 = x , 0 x > 0 x 2 , S 7 = 1 , 1 , S 8 = x , 0 x < 0 x 2 , S 9 = 1 , 1 , S 10 = x , y x > 0 y > 0 S 7 , S 11 = 0 , 2 , S 12 = x , y x < 0 y > 0 S 3 , S 13 = 2 , 0 , S 14 = x , y x < 0 y < 0 S 9 , S 15 = 0 , 2 , S 16 = x , y x > 0 y < 0 S 5 , S 17 = 2 , 0 .
Then, the method of embedding data into the coefficient pairs belonging to different sets is described as follows.
If ( x , y ) S 1 , the marked coefficient pair will be
( x , y ) = ( x , y ) if m i m i + 1 = 01 , ( x + 1 , y ) if m i m i + 1 = 10 , ( x , y 1 ) if m i m i + 1 = 11 , ( x 1 , y ) if m i m i + 1 m i + 2 = 000 , ( x , y + 1 ) if m i m i + 1 m i + 2 = 001 .
If ( x , y ) S 2 S 3 , the marked coefficient pair will be
( x , y ) = ( x , y + 1 ) if m i = 0 , ( x 1 , y ) if m i = 1 .
If ( x , y ) S 4 S 5 , the marked coefficient pair will be
( x , y ) = ( x , y 1 ) if m i = 0 , ( x + 1 , y ) if m i = 1 .
If ( x , y ) S 6 S 7 , the marked coefficient pair will be
( x , y ) = ( x + 1 , y ) if m i = 0 y = 0 or m i = 1 y 0 , ( x , y + 1 ) if m i = 1 y = 0 or m i = 0 y 0 .
If ( x , y ) S 8 S 9 , the marked coefficient pair will be
( x , y ) = ( x 1 , y ) if m i = 0 y = 0 or m i = 1 y 0 , ( x , y 1 ) if m i = 1 y = 0 or m i = 0 y 0 .
If ( x , y ) S 10 S 11 S 12 S 13 S 14 S 15 S 16 S 17 , any secret data cannot be embedded, so the coefficient pair will be just shifted as
( x , y ) = ( x , y + 1 ) if ( x , y ) S 10 S 11 , ( x 1 , y ) if ( x , y ) S 12 S 13 , ( x , y 1 ) if ( x , y ) S 14 S 15 , ( x + 1 , y ) if ( x , y ) S 16 S 17 .
Although our method and the method proposed in [34] use the same embedding mode for the ( 0 , 0 ) coefficient pairs, the embedding modes used at other points in our scheme is different from that used in [34]. To evaluate the embedding performance of different schemes, the overall embedding efficiency is defined by
O E = m = 1 M r m B m m = 1 M r m V m ,
where r m is the ratio of points using the embedding mode m to the total number of points, M is the number of embedding modes included in a scheme, thus m = 1 M r m = 1 . B m is the number of bits that can be embedded with the embedding mode m, and V m is the corresponding amount of modification to the DCT coefficient pair. Here, the point shifting without data embedding is considered a special embedding mode that can embed 0 bits. Since the embedding efficiency represents the embedding capacity per unit modification, high embedding efficiency means that under the same payload, the amount of modification will be smaller, which will have less impact on video quality and file size.
A video clip called ‘bus’ from Xiph.org (https://media.xiph.org/video/derf/) is used to illustrate calculation of O E . The first 90 frames of this video is encoded using the H.264/AVC codec with a quantization parameter (QP) of 16, and a group of pictures (GOP) structure IPBPBPBPBPBPBPB. The number of each DCT coefficient pair with both values in the range [ 4 , 4 ] in the first GOP of video ‘bus’ is summarized in Table 1.
Let O E o and O E z denote the overall embedding efficiency of our method and the method presented in [34], respectively. Based on the statistical results given in Table 1, O E o and O E z can be estimated as below.
O E o = 251,897 413,725 × 2.25 + 127,853 413,725 × 1 + 33,975 413,725 × 0 251,897 413,725 × 0.75 + 127,853 413,725 × 1 + 33,975 413,725 × 1 = 694,621.25 350,750.75 = 1.980 . O E z = 251,897 413,725 × 2.25 + 64,392 413,725 × 1.5 + 48,604 413,725 × 1 + 6926 413,725 × 1 + 41,906 413,725 × 0 251,897 413,725 × 0.75 + 64,392 413,725 × 1 + 48,604 413,725 × 1.5 + 6926 413,725 × 1 + 41,906 413,725 × 2 = 718,886.25 416,958.75 = 1.724 .
It can be seen from the above calculation results that our overall embedding efficiency is higher than that of the method proposed in [34]. The reason is that the embedding modes used in [34] for the points on the coordinate axis affect the shift of those points without capacity gain. In [34], both values of those points that are shifted without data embedding need to be modified, while only one value will be modified in our scheme. When the video content is more complex and the compression rate is lower, the number of shifting-only points will increase, thus, the impact of bigger modifications will be more obvious.

3.2.2. 2D HS without Using the ( 0 , 0 ) Coefficient Pairs

The proposed 2D HS scheme without using the ( 0 , 0 ) coefficient pairs is illustrated in Figure 5. First, the points except ( 0 , 0 ) are divided into several disjoint sets as follows.
S 1 = 1 , 0 , S 2 = 0 , 1 , S 3 = 1 , 0 , S 4 = 0 , 1 , S 5 = 1 , 1 , S 6 = 1 , 1 , S 7 = 1 , 1 , S 8 = 1 , 1 , S 9 = x , 1 x > 1 , S 10 = x , 1 x < 1 , S 11 = x , 1 x < 1 , S 12 = x , 1 x > 1 , S 13 = x , 0 x > 1 , S 14 = x , 0 x < 1 , S 15 = x , y y > 1 , S 16 = x , y y < 1 .
Then, the method of embedding data into the coefficient pairs belonging to different sets is described as below.
If ( x , y ) S 1 , the marked coefficient pair will be
( x , y ) = ( x , y ) if m i = 0 , ( x + 1 , y ) if m i m i + 1 = 10 , ( x , y + 1 ) if m i m i + 1 = 11 .
If ( x , y ) S 2 , the marked coefficient pair will be
( x , y ) = ( x , y ) if m i = 0 , ( x , y + 1 ) if m i m i + 1 = 10 , ( x 1 , y ) if m i m i + 1 = 11 .
If ( x , y ) S 3 , the marked coefficient pair will be
( x , y ) = ( x , y ) if m i = 0 , ( x 1 , y ) if m i m i + 1 = 10 , ( x , y 1 ) if m i m i + 1 = 11 .
If ( x , y ) S 4 , the marked coefficient pair will be
( x , y ) = ( x , y ) if m i = 0 , ( x , y 1 ) if m i m i + 1 = 10 , ( x + 1 , y ) if m i m i + 1 = 11 .
If ( x , y ) S 5 , the marked coefficient pair will be
( x , y ) = ( x , y + 1 ) if m i = 0 , ( x + 1 , y ) if m i m i + 1 = 10 , ( x + 1 , y + 1 ) if m i m i + 1 = 11 .
If ( x , y ) S 6 , the marked coefficient pair will be
( x , y ) = ( x , y + 1 ) if m i = 0 , ( x 1 , y ) if m i m i + 1 = 10 , ( x 1 , y + 1 ) if m i m i + 1 = 11 .
If ( x , y ) S 7 , the marked coefficient pair will be
( x , y ) = ( x , y 1 ) if m i = 0 , ( x 1 , y ) if m i m i + 1 = 10 , ( x 1 , y 1 ) if m i m i + 1 = 11 .
If ( x , y ) S 8 , the marked coefficient pair will be
( x , y ) = ( x , y 1 ) if m i = 0 , ( x + 1 , y ) if m i m i + 1 = 10 , ( x + 1 , y 1 ) if m i m i + 1 = 11 .
If ( x , y ) S 9 , the marked coefficient pair will be
( x , y ) = ( x + 1 , y ) if m i = 0 , ( x + 1 , y + 1 ) if m i = 1 .
If ( x , y ) S 10 , the marked coefficient pair will be
( x , y ) = ( x 1 , y ) if m i = 0 , ( x 1 , y + 1 ) if m i = 1 .
If ( x , y ) S 11 , the marked coefficient pair will be
( x , y ) = ( x 1 , y ) if m i = 0 , ( x 1 , y 1 ) if m i = 1 .
If ( x , y ) S 12 , the marked coefficient pair will be
( x , y ) = ( x + 1 , y ) if m i = 0 , ( x + 1 , y 1 ) if m i = 1 .
If ( x , y ) S 13 S 14 S 15 S 16 , any secret data cannot be embedded, and the coefficient pair will be shifted as
( x , y ) = ( x + 1 , y ) if ( x , y ) S 13 , ( x 1 , y ) if ( x , y ) S 14 , ( x , y + 1 ) if ( x , y ) S 15 , ( x , y 1 ) if ( x , y ) S 16 .
Because the method described in [37] uses more points on the coordinate axis for data embedding, while the method presented in [29] does not use any points on the coordinate axis except ( 0 , 1 ) , ( 0 , 1 ) , ( 1 , 0 ) and ( 1 , 0 ) for data embedding. It can be easily inferred that the embedding capacity of our scheme illustrated in Figure 5 will be lower than that of [37], and higher than that of [29]. Our scheme achieves a good balance between embedding capacity and modification to video, so its performance is better than the methods of [29,37] for most payloads, which will be demonstrated in the massive experiments.

3.2.3. Data Extraction and Video Recovery

In the proposed scheme, the data extraction and video recovery can be completed by the inverse operation of embedding. From Figure 4 and Figure 5, it can be observed that the in-degree of each point is one. Therefore, each coefficient pair in the marked video denoted by the point ( x , y ) can be uniquely restored to the original coefficient pair in the cover video denoted by the point ( x , y ) by following the opposite direction of the arrow ending at ( x , y ) , and at the same time, the embedded data can be obtained according to the rules of shifting ( x , y ) to ( x , y ) .

4. Experimental Results

The proposed schemes are implemented based on the reference software JM 19.0 (http://iphome.hhi.de/suehring/tml/) for H.264/AVC. Six typical sequences with the resolution of 352 × 288 from Xiph.org video dataset are used in our experiments. These videos contain different motion and content, allowing for a wide range of payloads. The first 90 frames of each video are encoded with main profile, and the GOP structure is IPBPBPBPBPBPBPB, which means that there are six GOPs in total.
To compare the performance of different 2D HS schemes fairly, the method proposed in [29] is modified to make it suitable for H.264/AVC video, and the objects used for data embedding in [37] is changed from motion vectors to DCT coefficients. Moreover, to reduce the impact of data embedding on video quality, only P frames and B frames are used for data embedding. In addition, the DCT coefficient pair is composed of two sequential coefficients in a zig-zag scanning order. There are 16 coefficients in a 4 × 4 block of H.264/AVC video, but only the 7th to 16th coefficients are selected, because modifying more low-frequency coefficients may cause larger video distortion.
In the following sections, Ours+ is used to denote our proposed scheme using the ( 0 , 0 ) coefficient pairs, and Ours denotes our proposed scheme without using the ( 0 , 0 ) coefficient pairs. To present the comparison results more clearly, we also use gray cells to rank the results. There are three types of gray cells. The darker the cell, the higher the ranking of the result. In addition, the best results are displayed with underlined numbers.

4.1. Embedding Capacity

Although the primary goal of our schemes is to reduce the loss of video quality and the increase in file size, the embedding capacity should not decrease too much. In this section, the embedding capacity of different schemes is evaluated. The results of the schemes using the ( 0 , 0 ) coefficient pairs are shown in Table 2. It can be learned that the capacity of [33] is lowest, which is significantly lower than that of our scheme and [34]. Furthermore, the capacity of our scheme is very close to that of [34], and the difference is generally around 1%, which is basically negligible.
The results of the schemes without using the ( 0 , 0 ) coefficient pairs are shown in Table 3. As can be seen from Table 3, although the embedding capacity of our proposed scheme is lower than that of [37], it is still higher than that of [29]. The experimental results are consistent with the previous analysis presented in Section 3.2.

4.2. Video Quality

To obtain a reasonably comprehensive evaluation of the impact of data embedding on the quality of H.264/AVC video, the video sequences are encoded with two QPs of 16 and 28, and five different payloads are selected according to the embedding capacity of each video. The 10th frame of the six cover videos with a QP of 16 and the corresponding marked frames generated by our schemes are shown in Figure 6, where the payload is the maximum value we use for each video in our experiments. It can be seen that the visual distortions in the marked frames are almost unnoticeable. Hence, the peak signal-to-noise ratio (PSNR), structural similarity index (SSIM) [43] and entropy are used to further demonstrate the visual quality of marked video.
The results of the schemes using the ( 0 , 0 ) coefficient pairs are shown in Table 4, and the corresponding percentages for each ranking are shown in Table 5. From Table 4 and Table 5, it can be seen that when QP is 16, as far as PSNR is concerned, the quality of the marked video generated by our scheme is the best in 66.7% of the cases, while in the remaining cases, our results are all ranked in the middle, which are superior to [34] and inferior to [33]; in terms of SSIM, our scheme achieves the best video quality in 93.3% of the cases. When QP is 28, 70.0% of the PSNR values of our scheme are the highest, and for SSIM, our scheme obtains the best results in about 73.3% of the cases, both results are higher than the comparison methods. The main reason for the small difference between the PSNR and SSIM values of our results and the comparison methods is that the proportion of the ( 0 , 0 ) coefficient pairs are very high, and thus large part of data will be embedded into these coefficient pairs. However, our embedding mode of the ( 0 , 0 ) coefficient pairs is the same as that of [34], and the difference in embedding efficiency between our scheme and [33] is not very large. To sum up, our scheme achieves better video quality in terms of PSNR or SSIM in most cases, as demonstrated by the average results shown in Table 4 and the results in Table 5.
The experimental results of the schemes without using the ( 0 , 0 ) coefficient pairs are shown in Table 6, and the corresponding percentages for each ranking are shown in Table 7. When QP is 16, it can be observed from Table 6 and Table 7 that 73.3% of the PSNR values and 96.7% of the SSIM values of our scheme are the highest. When QP is 28, due to the significant reduction in payload, the SSIM values of our scheme and the related schemes are almost the same in about 60% of the cases. However, for PSNR, 83.3% of the results of our schemes are the best, which is apparently superior to the related schemes. Moreover, the average results given in Table 6 also show that our scheme achieves the best video quality in most cases. Compared with the schemes using the ( 0 , 0 ) coefficient pairs, the improvement of our scheme without using the ( 0 , 0 ) coefficient pairs is more obvious.
Furthermore, the changes in Shannon entropy of marked videos compared with the original videos are calculated to evaluate the modifications to the video. The average results of each cover video and the marked videos generated by different schemes are shown in Table 8. It can be seen from Table 8 that for the schemes using the ( 0 , 0 ) coefficient pairs, whether the QP is 16 or 28, the results of our method are basically closer to the entropy of cover videos than the related schemes. The same observations can be made for the schemes without using the ( 0 , 0 ) coefficient pairs. The closer the entropy of the marked video is to the original video, generally means the smaller modification to the video. Thus, the quality of the marked videos generated by our scheme will be better, which was already demonstrated in Table 4 and Table 6.

4.3. File Size

Generally, the file size of marked videos will increase. However, as the H.264/AVC video aims to provide good video quality at a low bit rate, so it is desirable that the RDH schemes for H.264/AVC video will not cause a significant increase in the file size of marked videos.
The experimental results of the schemes using the ( 0 , 0 ) coefficient pairs are shown in Figure 7 and Figure 8. It can be seen from Figure 7 that when QP is 16, the increase in file size caused by our scheme is apparently smaller than that of [33] for all six videos. Although the increase in the file size of marked video generated by [34] is close to ours, it is still slightly higher, and as the payload increases, the difference become more noticeable. When QP is 28, Figure 8 shows that the file size increase of our scheme is also apparently lower than that of [33]. However, the difference between our scheme and [34] is very small. The reason for the above results is that the method proposed in [33] uses only half of the plane, resulting in more blocks of H.264/AVC video modified with the same payload. Although both values of the points that will be shifted by [34] need to be modified at the same time during data embedding, we found that these points are seldom used in our experiments because the ( 0 , 0 ) coefficient pairs carry most of the payload, so the file size increase of [34] is close to that of ours.
The experimental results of the schemes without using the ( 0 , 0 ) coefficient pairs are shown in Figure 9 and Figure 10. It can be seen from Figure 9 and Figure 10 that whether the QP is 16 or 28, the increase in file size of the marked video generated by our proposed scheme is basically smaller than that of [29,37] for all six videos. Moreover, as the payload increases, the differences between the file size increase of our scheme and those of the related schemes become more obvious. The reason is that the scheme proposed in [37] not only uses more points with lower embedding efficiency, but also needs to modify both values of many points without embedding any data. Moreover, due to the low embedding efficiency in [29], there are more coefficient pairs will be modified under the same payload, resulting in more apparent increase in file size. The influence of these factors will be more obvious with the increase of the payload, which will lead to a growing impact on the file size.

5. Conclusions

In this paper, two new 2D HS-based RDH schemes for H.264/AVC video are presented, one of which uses the ( 0 , 0 ) coefficient pairs and the other does not. Based on the statistical distributions of DCT coefficient pairs, both schemes employ a better embedding strategy consisting of the embedding modes with high embedding efficiency. Moreover, to further reduce the embedding distortion, secret data is only embedded into the DCT coefficients with middle and high frequencies. The experimental results demonstrated that our proposed schemes can achieve better visual quality and smaller increase in the file size of marked video compared with the related schemes.

Author Contributions

Conceptualization, J.H. and Y.X.; methodology, Y.X.; software, Y.X.; validation, Y.X. and J.H.; formal analysis, J.H.; investigation, J.H.; resources, J.H.; data curation, Y.X.; writing–original draft preparation, Y.X.; writing–review and editing, J.H.; visualization, Y.X.; supervision, J.H.; project administration, J.H.; funding acquisition, J.H. All authors have read and agreed to the published version of the manuscript.

Funding

This research was funded by the Guangdong Natural Science Foundation under grant number 2019A1515011231, Guangdong Province Key Area R&D Program of China under grant number 2019B010137004.

Conflicts of Interest

The authors declare no conflict of interest. The funders had no role in the design of the study; in the collection, analyses, or interpretation of data; in the writing of the manuscript, or in the decision to publish the results.

References

  1. Goljan, M.; Fridrich, J.J.; Du, R. Distortion-Free Data Embedding for Images. In Proceedings of the Information Hiding (IH’01), Pittsburgh, PA, USA, 25–27 April 2001; Volume 2137, pp. 27–41. [Google Scholar]
  2. Celik, M.U.; Sharma, G.; Tekalp, A.M.; Saber, E. Lossless Generalized-LSB Data Embedding. IEEE Trans. Image Process. 2005, 14, 253–266. [Google Scholar] [CrossRef] [PubMed]
  3. Tian, J. Reversible Data Embedding Using a Difference Expansion. IEEE Trans. Circuits Syst. Video Technol. 2003, 13, 890–896. [Google Scholar] [CrossRef] [Green Version]
  4. Hu, Y.; Lee, H.K.; Chen, K.; Li, J. Difference Expansion Based Reversible Data Hiding Using Two Embedding Directions. IEEE Trans. Multimed. 2008, 10, 1500–1512. [Google Scholar] [CrossRef]
  5. Liu, M.; Seah, H.S.; Zhu, C.; Lin, W.; Tian, F. Reducing Location Map in Prediction-based Difference Expansion for Reversible Image Data Embedding. Signal Process. 2012, 92, 819–828. [Google Scholar] [CrossRef]
  6. Caciula, I.; Coanda, H.G.; Coltuc, D. Multiple Moduli Prediction Error Expansion Reversible Data Hiding. Signal Process. Image Commun. 2019, 71, 120–127. [Google Scholar] [CrossRef]
  7. Ni, Z.; Shi, Y.Q.; Ansari, N.; Su, W. Reversible Data Hiding. IEEE Trans. Circuits Syst. Video Technol. 2006, 16, 354–362. [Google Scholar]
  8. Lin, C.C.; Tai, W.L.; Chang, C.C. Multilevel Reversible Data Hiding Based on Histogram Modification of Difference Images. Pattern Recognit. 2008, 41, 3582–3591. [Google Scholar] [CrossRef]
  9. Tai, W.L.; Yeh, C.M.; Chang, C.C. Reversible Data Hiding Based on Histogram Modification of Pixel Differences. IEEE Trans. Circuits Syst. Video Technol. 2009, 19, 906–910. [Google Scholar]
  10. Hong, W.; Chen, T.S.; Shiu, C.W. Reversible Data Hiding for High Quality Images Using Modification of Prediction Errors. J. Syst. Softw. 2009, 82, 1833–1842. [Google Scholar] [CrossRef]
  11. Kim, S.; Qu, X.; Sachnev, V.; Kim, H.J. Skewed Histogram Shifting for Reversible Data Hiding Using a Pair of Extreme Predictions. IEEE Trans. Circuits Syst. Video Technol. 2018, 29, 3236–3246. [Google Scholar] [CrossRef]
  12. Jia, Y.; Yin, Z.; Zhang, X.; Luo, Y. Reversible Data Hiding Based on Reducing Invalid Shifting of Pixels in Histogram Shifting. Signal Process. 2019, 163, 238–246. [Google Scholar] [CrossRef] [Green Version]
  13. Jung, S.M.; On, B.W. An Advanced Reversible Data Hiding Algorithm Using Local Similarity, Curved Surface Characteristics, and Edge Characteristics in Images. Appl. Sci. 2020, 10, 836. [Google Scholar] [CrossRef] [Green Version]
  14. Li, X.; Zhang, W.; Gui, X.; Yang, B. Efficient Reversible Data Hiding Based on Multiple Histograms Modification. IEEE Trans. Inf. Forensics Secur. 2015, 10, 2016–2027. [Google Scholar]
  15. Wang, J.; Ni, J.; Zhang, X.; Shi, Y.Q. Rate and Distortion Optimization for Reversible Data Hiding Using Multiple Histogram Shifting. IEEE Trans. Cybern. 2017, 47, 315–326. [Google Scholar] [CrossRef] [PubMed]
  16. Ou, B.; Zhao, Y. High Capacity Reversible Data Hiding Based on Multiple Histograms Modification. IEEE Trans. Circuits Syst. Video Technol. 2019. [Google Scholar] [CrossRef]
  17. Wang, J.; Chen, X.; Ni, J.; Mao, N.; Shi, Y. Multiple Histograms Based Reversible Data Hiding: Framework and Realization. IEEE Trans. Circuits Syst. Video Technol. 2019. [Google Scholar] [CrossRef]
  18. Li, X.; Zhang, W.; Gui, X.; Yang, B. A Novel Reversible Data Hiding Scheme Based on Two-Dimensional Difference-Histogram Modification. IEEE Trans. Inf. Forensics Secur. 2013, 8, 1091–1100. [Google Scholar]
  19. Ou, B.; Li, X.; Zhao, Y.; Ni, R.; Shi, Y. Pairwise Prediction-Error Expansion for Efficient Reversible Data Hiding. IEEE Trans. Image Process. 2013, 22, 5010–5021. [Google Scholar] [CrossRef]
  20. Ou, B.; Li, X.; Zhang, W.; Zhao, Y. Improving Pairwise PEE Via Hybrid-dimensional Histogram Generation and Adaptive Mapping Selection. IEEE Trans. Circuits Syst. Video Technol. 2018, 29, 2176–2190. [Google Scholar] [CrossRef]
  21. Xiao, M.; Li, X.; Wang, Y.; Zhao, Y.; Ni, R. Reversible Data Hiding Based on Pairwise Embedding and Optimal Expansion Path. Signal Process. 2019, 158, 210–218. [Google Scholar] [CrossRef]
  22. Wu, H.; Mai, W.; Meng, S.; Cheung, Y.; Tang, S. Reversible Data Hiding With Image Contrast Enhancement Based on Two-Dimensional Histogram Modification. IEEE Access 2019, 7, 83332–83342. [Google Scholar] [CrossRef]
  23. Qin, J.; Huang, F. Reversible Data Hiding Based on Multiple Two-Dimensional Histograms Modification. IEEE Signal Process. Lett. 2019, 26, 843–847. [Google Scholar] [CrossRef]
  24. Huang, F.; Qu, X.; Kim, H.J.; Huang, J. Reversible Data Hiding in JPEG Images. IEEE Trans. Circuits Syst. Video Technol. 2016, 26, 1610–1621. [Google Scholar] [CrossRef]
  25. Qian, Z.; Dai, S.; Chen, B. Reversible Data Hiding in JPEG Images Using Ordered Embedding. KSII Trans. Internet Inf. Syst. 2017, 11, 945–958. [Google Scholar]
  26. Wedaj, F.T.; Kim, S.; Kim, H.J.; Huang, F. Improved Reversible Data Hiding in JPEG Images Based on New Coefficient Selection Strategy. EURASIP J. Image Video Process. 2017, 2017, 63. [Google Scholar] [CrossRef]
  27. Hou, D.; Wang, H.; Zhang, W.; Yu, N. Reversible Data Hiding in JPEG Image Based on DCT Frequency and Block Selection. Signal Process. 2018, 148, 41–47. [Google Scholar] [CrossRef]
  28. He, J.; Chen, J.; Tang, S. Reversible Data Hiding in JPEG Images Based on Negative Influence Models. IEEE Trans. Inf. Forensics Secur. 2020, 15, 2121–2133. [Google Scholar] [CrossRef]
  29. Cheng, S.; Huang, F. Reversible Data Hiding in JPEG Images Based on Two-Dimensional Histogram Modification. In Proceedings of the 4th International Conference on Cloud Computing and Security (ICCCS’18), Haikou, China, 8–10 June 2018; pp. 392–403. [Google Scholar]
  30. Chung, K.; Huang, Y.; Chang, P.; Liao, H.M. Reversible Data Hiding-Based Approach for Intra-Frame Error Concealment in H.264/AVC. IEEE Trans. Circuits Syst. Video Technol. 2010, 20, 1643–1647. [Google Scholar] [CrossRef]
  31. Fallahpour, M.; Shirmohammadi, S.; Ghanbari, M. A High Capacity Data Hiding Algorithm for H.264/AVC Video. Secur. Commun. Netw. 2015, 8, 2947–2955. [Google Scholar] [CrossRef]
  32. Liu, Y.; Ju, L.; Hu, M.; Ma, X.; Zhao, H. A Robust Reversible Data Hiding Scheme for H.264 without Distortion Drift. Neurocomputing 2015, 151, 1053–1062. [Google Scholar] [CrossRef]
  33. Xu, D.; Wang, R. Two-dimensional Reversible Data Hiding-based Approach for Intra-Frame Error Concealment in H.264/AVC. Signal Process. Image Commun. 2016, 47, 369–379. [Google Scholar] [CrossRef]
  34. Zhao, J.; Li, Z.T.; Feng, B. A Novel Two-dimensional Histogram Modification for Reversible Data Embedding into Stereo H.264 Video. Multimed. Tools Appl. 2016, 75, 5959–5980. [Google Scholar] [CrossRef]
  35. Kim, H.; Kang, S.U. Genuine Reversible Data Hiding Technology Using Compensation for H.264 Bitstreams. Multimed. Tools Appl. 2018, 77, 8043–8060. [Google Scholar] [CrossRef]
  36. Niu, K.; Yang, X.; Zhang, Y. A Novel Video Reversible Data Hiding Algorithm Using Motion Vector for H.264/AVC. Tsinghua Sci. Technol. 2017, 22, 489–498. [Google Scholar] [CrossRef]
  37. Li, D.; Zhang, Y.; Li, X.; Niu, K.; Yang, X.; Sun, Y. Two-dimensional Histogram Modification Based Reversible Data Hiding Using Motion Vector for H.264. Multimed. Tools Appl. 2019, 78, 8167–8181. [Google Scholar] [CrossRef]
  38. Sikora, T. The MPEG-4 Video Standard Verification Model. IEEE Trans. Circuits Syst. Video Technol. 1997, 7, 19–31. [Google Scholar] [CrossRef] [Green Version]
  39. Wiegand, T.; Sullivan, G.J.; Bjontegaard, G.; Luthra, A. Overview of the H.264/AVC Video Coding Standard. IEEE Trans. Circuits Syst. Video Technol. 2003, 13, 560–576. [Google Scholar] [CrossRef] [Green Version]
  40. Sullivan, G.J.; Ohm, J.; Han, W.; Wiegand, T. Overview of the High Efficiency Video Coding (HEVC) Standard. IEEE Trans. Circuits Syst. Video Technol. 2012, 22, 1649–1668. [Google Scholar] [CrossRef]
  41. Ferroukhi, M.; Ouahabi, A.; Attari, M.; Habchi, Y.; Taleb-Ahmed, A. Medical Video Coding Based on 2nd-Generation Wavelets: Performance Evaluation. Electronics 2019, 8, 88. [Google Scholar] [CrossRef] [Green Version]
  42. Ouahabi, A. Signal and Image Multiresolution Analysis; Wiley-ISTE: London, UK, 2012. [Google Scholar]
  43. 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] [Green Version]
Figure 1. Illustration of 1D HS-based method.
Figure 1. Illustration of 1D HS-based method.
Applsci 10 03375 g001
Figure 2. Classic 2D HS-based method.
Figure 2. Classic 2D HS-based method.
Applsci 10 03375 g002
Figure 3. The best embedding modes for a given out-degree.
Figure 3. The best embedding modes for a given out-degree.
Applsci 10 03375 g003
Figure 4. The proposed 2D HS using the ( 0 , 0 ) coefficient pairs.
Figure 4. The proposed 2D HS using the ( 0 , 0 ) coefficient pairs.
Applsci 10 03375 g004
Figure 5. The proposed 2D HS without using the ( 0 , 0 ) coefficient pairs.
Figure 5. The proposed 2D HS without using the ( 0 , 0 ) coefficient pairs.
Applsci 10 03375 g005
Figure 6. The 10th frame of original videos (a) foreman, (b)container, (c) bus, (d) crew, (e) hall_monitor, and (f) mobile, and the corresponding 10th frame of marked videos, where (g) marked foreman, (h) marked container, and (i) marked bus are generated by our scheme using the ( 0 , 0 ) coefficient pairs; (j) marked crew, (k) marked hall_monitor, and (l) marked mobile are generated by our scheme without using the ( 0 , 0 ) coefficient pairs, respectively.
Figure 6. The 10th frame of original videos (a) foreman, (b)container, (c) bus, (d) crew, (e) hall_monitor, and (f) mobile, and the corresponding 10th frame of marked videos, where (g) marked foreman, (h) marked container, and (i) marked bus are generated by our scheme using the ( 0 , 0 ) coefficient pairs; (j) marked crew, (k) marked hall_monitor, and (l) marked mobile are generated by our scheme without using the ( 0 , 0 ) coefficient pairs, respectively.
Applsci 10 03375 g006
Figure 7. The increase in the file size of marked video generated by different schemes using the ( 0 , 0 ) coefficient pairs when QP is 16.
Figure 7. The increase in the file size of marked video generated by different schemes using the ( 0 , 0 ) coefficient pairs when QP is 16.
Applsci 10 03375 g007
Figure 8. The increase in the file size of marked video generated by different schemes using the ( 0 , 0 ) coefficient pairs when QP is 28.
Figure 8. The increase in the file size of marked video generated by different schemes using the ( 0 , 0 ) coefficient pairs when QP is 28.
Applsci 10 03375 g008
Figure 9. The increase in the file size of marked video generated by different schemes without using the ( 0 , 0 ) coefficient pairs when QP is 16.
Figure 9. The increase in the file size of marked video generated by different schemes without using the ( 0 , 0 ) coefficient pairs when QP is 16.
Applsci 10 03375 g009
Figure 10. The increase in the file size of marked video generated by different schemes without using the ( 0 , 0 ) coefficient pairs when QP is 28.
Figure 10. The increase in the file size of marked video generated by different schemes without using the ( 0 , 0 ) coefficient pairs when QP is 28.
Applsci 10 03375 g010
Table 1. The number of different DCT coefficient pairs in the video ‘bus’.
Table 1. The number of different DCT coefficient pairs in the video ‘bus’.
x−4−3−2−101234
y
−435651091854112171005736
−35510819643497445321910456
−28615543512723453133249519899
−11643711175526324,32155161298417168
0277809327426,301251,89726,3463450823311
11603901314547224,28353301262370158
29819450613573473125749418486
3509923845710214321999554
434541051973951761007734
Table 2. The embedding capacity of the schemes using the ( 0 , 0 ) coefficient pairs, where the percentage figures in parentheses indicate the relative difference between other schemes and Ours+.
Table 2. The embedding capacity of the schemes using the ( 0 , 0 ) coefficient pairs, where the percentage figures in parentheses indicate the relative difference between other schemes and Ours+.
VideoEmbedding Capacity (bits)
QP = 16QP = 28
Ours+[33][34]Ours+[33][34]
foreman3,415,0242,991,010 (−12.4%)3,411,252 (−0.1%)442,374387,443 (−12.4%)445,023 (+0.6%)
container2,197,1521,914,967 (−12.8%)2,206,489 (+0.4%)180,453156,344 (−13.4%)182,238 (+1.0%)
bus3,885,6603,216,720 (−17.2%)3,874,676 (−0.3%)1,442,2341,267,463 (−12.1%)1,453,286 (+0.8%)
crew3,888,5173,488,241 (−10.3%)3,886,072 (−0.1%)1,048,725928,943 (−11.4%)1,051,886 (+0.3%)
hall_monitor4,213,7953,762,970 (−10.7%)4,219,961 (+0.1%)250,843217,846 (−13.2%)253,323 (+1.0%)
mobile2,814,8232,134,882 (−24.2%)2,823,286 (+0.3%)1,597,4611,357,855 (−15.0%)1,614,352 (+1.1%)
Table 3. The embedding capacity of the schemes without using the ( 0 , 0 ) coefficient pairs, where the percentage figures in parentheses indicate the relative difference between other schemes and Ours.
Table 3. The embedding capacity of the schemes without using the ( 0 , 0 ) coefficient pairs, where the percentage figures in parentheses indicate the relative difference between other schemes and Ours.
VideoEmbedding Capacity (bits)
QP = 16QP = 28
Ours[37][29]Ours[37][29]
foreman674,237864,838 (+28.3%)480,248 (−28.8%)16,89222,252 (+31.7%)11,761 (−30.4%)
container388,377499,770 (+28.7%)273,428 (−29.6%)11,74715,398 (+31.1%)8118 (−30.9%)
bus1,253,0461519,264 (+21.2%)879,967 (−29.8%)156,593205,092 (+31.0%)110,696 (−29.3%)
crew616,595795,013 (+28.9%)440,713 (−28.5%)24,47832,174 (+31.4%)16,845 (−31.2%)
hall_monitor701,549920,756 (+31.2%)493,344 (−29.7%)14,70419,408 (+32.0%)10,171 (−30.8%)
mobile1,371,8421,616,303 (+17.8%)989,803 (−27.8%)311,538404,755 (+29.9%)220,584 (−29.2%)
Table 4. PSNR and SSIM for different schemes using the ( 0 , 0 ) coefficient pairs, where payload is the number of bits embedded into each GOP.
Table 4. PSNR and SSIM for different schemes using the ( 0 , 0 ) coefficient pairs, where payload is the number of bits embedded into each GOP.
VideoQP = 16QP = 28
Payload
(bits)
PSNRSSIMPayload
(bits)
PSNRSSIM
Ours+[33][34]Ours+[33][34]Ours+[33][34]Ours+[33][34]
40,00043.7643.6243.760.9850.9840.985800036.4536.4436.380.9400.9390.940
75,00043.3243.4043.060.9830.9830.98216,00035.4435.5335.410.9330.9330.934
110,00042.5642.3442.180.9800.9780.98024,00035.0934.8735.070.9290.9270.929
145,00041.8041.9541.430.9770.9770.97632,00034.5934.3934.880.9240.9220.925
180,00041.9441.5641.270.9770.9750.97640,00034.2734.1034.150.9210.9190.920
40,00043.4443.2043.310.9790.9790.979400036.3236.2836.300.9250.9250.925
75,00042.3342.1242.150.9760.9730.976850035.9235.8535.900.9220.9200.922
110,00041.5941.3241.360.9700.9680.96913,00035.6135.5035.580.9190.9170.919
145,00040.9440.7640.720.9650.9640.96417,50035.3535.2635.330.9150.9140.915
180,000
40.6240.4440.350.9630.9600.96222,00035.2035.1435.150.9130.9120.913
40,00042.9542.9242.760.9920.9910.99120,00034.0233.9233.900.9510.9500.950
80,00042.4342.7541.970.9900.9900.99050,00032.8232.8232.680.9420.9420.941
120,00041.4241.5741.260.9880.9880.98880,00032.0831.8331.800.9360.9330.935
160,00040.9041.2140.190.9860.9860.985110,00031.3131.1631.090.9280.9260.928
200,00040.6840.7840.420.9860.9850.985140,00030.9230.7330.610.9240.9210.923
40,00040.9940.9940.790.9780.9780.97920,00034.4934.1734.370.9170.9150.920
80,00040.7540.7539.850.9760.9770.97345,00032.6432.8232.720.8910.8900.893
120,00039.7638.9438.600.9710.9670.96970,00031.9431.6732.300.8730.8690.876
160,00039.0738.5938.140.9660.9650.96295,00031.7030.7731.350.8600.8460.857
200,00039.3438.2937.940.9650.9620.962120,00030.4730.7630.630.8380.8380.841
40,00041.7941.9441.200.9810.9800.981240037.4437.2137.420.9540.9530.954
80,00041.4741.3641.330.9780.9770.978480036.8536.9636.610.9520.9520.952
120,00041.2839.8840.730.9760.9730.975720036.3236.6536.530.9510.9510.951
160,00040.2239.9539.650.9710.9700.969960035.4236.2835.890.9490.9510.950
200,00040.4439.8939.800.9720.9690.97012,00036.3436.0836.030.9500.9500.950
40,00043.7244.1243.060.9940.9940.99432,00033.5233.5333.350.9700.9710.970
75,00043.2542.9442.740.9940.9930.99364,00032.6432.5532.450.9660.9660.966
110,00042.1742.4741.370.9920.9920.99196,00032.0331.8931.820.9630.9620.962
145,00041.8941.8541.160.9920.9910.991128,00031.5331.4131.280.9600.9590.959
180,00041.2141.3640.360.9900.9900.990160,00031.1431.0530.890.9570.9560.956
average41.6041.4441.100.9800.9790.97933.9933.9233.930.9290.9280.929
Table 5. The percentages of PSNR and SSIM values of different schemes using the ( 0 , 0 ) coefficient pairs in each ranking.
Table 5. The percentages of PSNR and SSIM values of different schemes using the ( 0 , 0 ) coefficient pairs in each ranking.
RankingQP = 16QP = 28
PSNR (%)SSIM (%)PSNR (%)SSIM (%)
Ours+[33][34]Ours+[33][34]Ours+[33][34]Ours+[33][34]
High66.740.03.393.333.336.770.026.76.773.326.763.3
Middle33.343.313.36.726.736.716.733.350.023.320.033.3
Low0.016.783.30.040.026.713.340.043.33.353.33.3
Table 6. PSNR and SSIM for different schemes without using the ( 0 , 0 ) coefficient pairs, where payload is the number of bits embedded into each GOP.
Table 6. PSNR and SSIM for different schemes without using the ( 0 , 0 ) coefficient pairs, where payload is the number of bits embedded into each GOP.
VideoQP = 16QP = 28
Payload
(bits)
PSNRSSIMPayload
(bits)
PSNRSSIM
Ours[37][29]Ours[37][29]Ours[37][29]Ours[37][29]
10,00045.1844.9945.130.9880.9880.98926037.3637.3337.340.9450.9450.945
20,00044.8344.4644.580.9880.9870.98852037.2937.2337.280.9450.9450.945
30,00044.2844.0244.160.9870.9860.98778037.2637.2137.250.9450.9450.945
40,00044.0743.6043.910.9870.9850.986104037.2137.1637.200.9450.9450.945
50,00043.8543.3443.620.9860.9850.986130037.2037.1437.180.9450.9450.945
750044.9644.7844.810.9860.9860.98622036.7536.7436.750.9270.9270.927
15,00044.4544.1444.200.9850.9840.98444036.7236.7036.710.9270.9270.927
22,50044.0543.5943.790.9840.9820.98266036.7036.6636.680.9270.9260.927
30,00043.7843.2243.550.9830.9810.98288036.6736.6236.660.9260.9260.926
37,50043.5442.9243.390.9820.9790.981110036.6636.5936.640.9260.9260.926
20,00043.7942.8543.870.9940.9930.994300035.2335.0235.180.9580.9580.958
40,00042.8542.6542.960.9930.9920.992550035.0334.8534.880.9570.9570.957
60,00042.4641.3542.250.9920.9910.991800034.8034.4134.610.9570.9560.956
80,00041.7941.2241.700.9910.9900.99110,50034.5334.2134.450.9560.9550.956
100,00041.4440.6841.320.9900.9890.99013,00034.4433.9134.350.9560.9540.955
10,00043.5042.6343.190.9870.9860.98732037.7337.5837.480.9470.9470.947
20,00042.9041.9842.550.9860.9840.98664037.2937.2237.390.9460.9460.946
30,00042.4541.5041.950.9850.9830.98496037.4637.3637.310.9460.9460.946
40,00041.7841.0241.830.9830.9810.982128037.0137.3137.050.9450.9450.945
50,00041.0240.7441.480.9820.9800.982160037.1037.0037.140.9460.9450.945
14,00044.2843.7744.300.9870.9860.9876937.9937.9937.950.9550.9550.955
28,00043.4642.9643.170.9860.9850.98513837.9137.9737.770.9540.9550.954
42,00043.1242.2642.820.9850.9830.98420737.9137.5737.830.9540.9540.954
56,00042.6242.0442.600.9840.9820.98327637.8737.7937.850.9540.9540.954
70,00042.5041.8942.200.9830.9810.98234537.6837.8337.840.9540.9540.954
24,00044.3043.6744.370.9960.9950.996660034.6434.4834.600.9760.9750.975
48,00043.1342.8243.270.9950.9950.99513,20034.3534.1234.210.9750.9740.974
72,00042.5042.0842.550.9950.9940.99519,80034.0833.7333.950.9740.9730.974
96,00042.0741.3042.020.9940.9930.99426,40033.8733.4633.760.9740.9720.973
120,00041.6441.0041.630.9940.9930.99433,00033.7233.2333.630.9730.9710.973
average43.2242.6543.110.9880.9870.98736.3536.2136.300.9510.9500.950
Table 7. The percentages of PSNR and SSIM values of different schemes without using the ( 0 , 0 ) coefficient pairs in each ranking.
Table 7. The percentages of PSNR and SSIM values of different schemes without using the ( 0 , 0 ) coefficient pairs in each ranking.
RankingQP = 16QP = 28
PSNR (%)SSIM (%)PSNR (%)SSIM (%)
Ours[37][29]Ours[37][29]Ours[37][29]Ours[37][29]
High73.30.026.796.76.756.783.310.013.396.766.776.7
Middle26.70.073.33.320.043.310.010.073.33.313.323.3
Low0.0100.00.00.073.30.06.780.013.30.020.00.0
Table 8. Shannon entropy of each cover video and changes in Shannon entropy of the marked video generated by different schemes.
Table 8. Shannon entropy of each cover video and changes in Shannon entropy of the marked video generated by different schemes.
VidoeShannon Entropy/Shannon Entropy Change
QP = 16QP = 28
Origin(0, 0)s Are Used(0, 0)s Aren’t UsedOrigin(0, 0)s Are Used(0, 0)s Aren’t Used
Ours+[33][34]Ours[33][34]Ours+[33][34]Ours[33][34]
foreman7.4020.0130.0140.0140.0040.0060.0057.3810.0060.0090.0050.0000.0000.000
container6.8710.0130.0140.0130.0040.0050.0056.8280.0050.0050.0050.0000.0000.000
bus7.3160.0100.0120.0140.0070.0110.0087.2860.0300.0320.0300.0040.0060.005
crew7.1480.0200.0200.0200.0080.0090.0107.1220.0640.0670.0660.0000.0020.000
hall_monitor7.2690.0060.0140.0090.0030.0050.0057.2440.0010.0030.0020.0000.0000.000
mobile7.5680.0040.0050.0040.0000.0010.0007.6030.0000.0000.000−0.001−0.001−0.002

Share and Cite

MDPI and ACS Style

Xu, Y.; He, J. Two-Dimensional Histogram Shifting-Based Reversible Data Hiding for H.264/AVC Video. Appl. Sci. 2020, 10, 3375. https://doi.org/10.3390/app10103375

AMA Style

Xu Y, He J. Two-Dimensional Histogram Shifting-Based Reversible Data Hiding for H.264/AVC Video. Applied Sciences. 2020; 10(10):3375. https://doi.org/10.3390/app10103375

Chicago/Turabian Style

Xu, Yuzhang, and Junhui He. 2020. "Two-Dimensional Histogram Shifting-Based Reversible Data Hiding for H.264/AVC Video" Applied Sciences 10, no. 10: 3375. https://doi.org/10.3390/app10103375

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