Next Article in Journal
Para-Ricci-Like Solitons on Riemannian Manifolds with Almost Paracontact Structure and Almost Paracomplex Structure
Next Article in Special Issue
A Novel LSB Matching Algorithm Based on Information Pre-Processing
Previous Article in Journal
Corruption Shock in Mexico: fsQCA Analysis of Entrepreneurial Intention in University Students
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Reversible Data Hiding Based on Pixel-Value-Ordering and Prediction-Error Triplet Expansion

1
Department of Information Engineering and Computer Science, Feng Chia University, Taichung 40724, Taiwan
2
Department of Electronic Engineering, National Quemoy University, Kinmen 89250, Taiwan
*
Authors to whom correspondence should be addressed.
Mathematics 2021, 9(14), 1703; https://doi.org/10.3390/math9141703
Submission received: 22 June 2021 / Revised: 13 July 2021 / Accepted: 19 July 2021 / Published: 20 July 2021

Abstract

:
Pixel value ordering and prediction error expansion (PVO+PEE) is a very successful reversible data hiding (RDH) scheme. A series of studies were proposed to improve the performance of the PVO-based scheme. However, the embedding capacity of those schemes is quite limited. We propose a two-step prediction-error-triplet expansion RDH scheme based on PVO. A three-dimensional state transition map for the prediction-error triplet is also proposed to guide the embedding of the two-step scheme. By properly designing the state transitions, the proposed scheme can embed secret data or expand without embedding by modifying just a single entry of the triplet. The experimental results show that the proposed scheme significantly enlarges the embedding capacity of the PVO-based scheme and further reduces the distortion due to embedding.

1. Introduction

With the rapid development of computer and communication technologies, the privacy and security of data transmission have become more and more important. In order to make data transmission more secure, researchers developed various encryption algorithms to convert data into unrecognizable ciphertext. To make unrecognizable ciphertext appear less conspicuous, researchers developed various data hiding algorithms to embed the secret data into digital media, such as images, for transmission. Since a modified digital medium with confidential information is very similar to the original one, it will not draw the eavesdroppers’ attention.
Data hiding methods are mainly divided into two types: reversible and irreversible. Reversible data hiding (RDH) [1,2,3,4,5,6] can extract secret data and restore the original digital objects without distortion. Irreversible data hiding (IRDH) [7,8] can only extract secret data and cannot restore the original digital objects losslessly.
So far, researchers have developed many efficient and easy-to-implement image reversible data hiding (RDH) technologies, such as differential expansion (DE) [9,10,11], histogram shift (HS) [12,13,14], prediction error expansion (PEE) [15,16,17], and so on. The DE method embeds secret data by extending the pixel difference. In HS technology, the image intensity histogram must be generated first and then modified for data embedding. Data embedding based on the PEE algorithm needs to generate the prediction error histogram (PEH) first, then modify it according to specific rules.
Due to the inherent characteristics of PEE-based technology, the embedding performance is related to the generated PEH, and the degree of image distortion is related to the modification rules. Therefore, work improving on PEE has focused on the design of a more concentrated PEH, such as rhombus predictor [18] and interpolation prediction [19], etc., while other works were dedicated to designing rules for minimum distortion. In addition, there is also a method called pairwise PEE, which uses the joint distribution between two prediction errors to generate a two-dimensional (2D) PEH and embeds secret data into the cover image, the digital image used to carry secret information, by modifying the generated 2D PEH [20].
The pixel value ordering (PVO) algorithm proposed by Li et al. [21] flexibly divides the cover image into scalable non-overlapping blocks to obtain a more desirable prediction error histogram. Then, the algorithm modifies the maximum and minimum values in each block to embed the data. The maximum value (minimum value) in each block is either increased (decreased) by one or unchanged so that the order of pixel values does not change after the data is embedded, thus ensuring reversibility. The improved PVO (IPVO) algorithm proposed by Peng et al. [22] takes the spatial relationship between pixels into consideration to improve the prediction method and PEH modification rules. In order to make better use of the spatial relationship between pixels, flexible spatial location-based PVO (FSL-PVO) was proposed by He et al. [23]. In [24], Ou et al. proposed a pairwise PEE to expand the embedding capability of PVO. In addition, researchers also developed various improved algorithms for PVO [25,26,27,28]. An example approach is to simultaneously embed data at the first k maximum values (minimum values) of a pixel block, such as PVO-k [26], k-pass PVO [27], and improved k-pass PVO [28].
PVO-based RDH schemes have the advantage of very low image distortion. That means this series of data hiding schemes can produce a stego-image, the digital image embedded with secret information, with a high peak-signal-to-noise ratio (PSNR) value. However, their embedding capacity is quite limited. As we outline in the next section, the existing PVO-based RDH schemes are all based on the two-dimensional state transition of prediction errors. In order to improve the embedding capacity, the new scheme proposed in this paper extends the state space of the prediction errors into three dimensions. More specifically, a prediction-error-triplet expansion RDH scheme based on PVO is proposed. Through an ingenious design of a three-dimensional state transition map for prediction-error triplets, the embedding of secret data or expansion for vacating rooms can be performed by modifying just a single entry of the triplet. The new scheme can improve the embedding capacity of the traditional PVO-based schemes while preserving the visual quality of the stego images.
The rest of this paper is organized as follows. The second section briefly introduces various typical PVO-based RDH schemes. The third section introduces the proposed scheme in detail. The experimental results and comparisons with related works are provided in Section 4. Finally, this paper is summarized in Section 5.

2. Related Works

In this section, PVO [21], IPVO [22], and Pairwise-PVO [24] are briefly introduced, and the embedding maps of typical PVO-based schemes are summarized. This series of RDH schemes are all based on the same problem formulation.
The PVO-based RDH schemes need to divide the cover image into non-overlapping equal-sized pixel blocks first. Each pixel block contains n pixel values ( x 1 , x 2 , , x n ) . Then, the n pixel values are sorted into the sequence x σ ( 1 ) x σ ( 2 ) x σ ( n ) , where ( σ ( 1 ) , σ ( 2 ) ,   , σ ( n ) ) represents the original location as a function of the current order. That is, the function σ : { 1 , 2 , , n } { 1 , 2 , , n } is the unique one-to-one and onto mapping. In the case of equal value, pixels are ordered by
σ ( i ) < σ ( j ) ,   if   x σ ( i ) = x σ ( j )   and   i < j   .
Finally, the pixels of maximum values (minimum values) are exploited to calculate prediction errors and embed secret data.

2.1. PVO

The original PVO data hiding scheme [21] uses the second largest value x σ ( n 1 ) (second smallest value x σ ( 2 ) ) to predict the maximum value x σ ( n ) (minimum value x σ ( 1 ) ), the prediction errors P E m a x and P E m i n can be calculated by
{ P E m a x = x σ ( n ) x σ ( n 1 ) P E m i n = x σ ( 1 ) x σ ( 2 ) .
According to the histogram distributions of P E m a x and P E m i n , the peak bins are exploited to embed secret data. The embedding rules for P E m a x and P E m i n are given by
P E m a x = { P E m a x , if   P E m a x = 0 P E m a x + b , if   P E m a x = 1 P E m a x + 1 , if   P E m a x > 1 ;
P E m i n = { P E m i n , if   P E m i n = 0 P E m i n b , if   P E m i n = 1 P E m i n 1 , if   P E m i n < 1 ,
where b { 0 ,   1 } is the binary secret bit to be embedded. Then, the maximum pixel value x σ ( n ) is modified to
x σ ( n ) = x σ ( n 1 ) + P E m a x = { x σ ( n ) , if   P E m a x = 0 x σ ( n ) + b , if   P E m a x = 1 x σ ( n ) + 1 , if   P E m a x > 1 ,
while the minimum pixel value x σ ( 1 ) is modified to
x σ ( 1 ) = x σ ( 2 ) + P E m i n = { x σ ( 1 ) , if   P E m a x = 0 x σ ( 1 ) b , if   P E m a x = 1 x σ ( 1 ) 1 , if   P E m a x < 1 .
The rest pixels in the block remain unchanged. To make the embedding rules easier to understand, the prediction errors can be translated into a location-based representation, as introduced in [25] by
{ e m a x 1 = x u x σ ( n 2 ) e m a x 2 = x v x σ ( n 2 ) ,
where
{ u = m i n ( σ ( n ) , σ ( n 1 ) ) v = m a x ( σ ( n ) , σ ( n 1 ) ) .
Based on the location-based prediction error pair ( e m a x 1 , e m a x 2 ) , the embedding rules of the PVO scheme can be illustrated by the state transition map, as given in Figure 1a. For each pixel block, its corresponding prediction error pair can be mapped to a ‘state’ on the map. The solid purple lines indicate the state transition rules for embedding the embeddable states, while the pink dashed lines indicate the expansions of non-embeddable states. The states without any guiding line are non-embeddable states with no expansion required. During the secret data embedding phase, the maximum value (minimum value) is either increasing (decreasing) or unchanged. The order of the pixel values is preserved, which is crucial for reversibility. In the secret data extraction phase, the prediction errors P E m a x and P E m i n can be calculated in the same way. Then, the secret data extraction and the pixel value restoration processes can be designed according to their corresponding embedding rules.

2.2. IPVO

In the PVO scheme, bin 1 of the P E m a x histogram and bin −1 of the P E m i n histogram are exploited to embed the secret data. Bin 0 is kept unchanged. That is, the states on the main diagonal line of the state transition map (Figure 1a) are left unexploited. The IPVO scheme [22] defines a new prediction error calculation method, which takes the position information into account. The prediction error P E m a x is defined by
P E m a x = x u x v ,
where u and v are defined the same as Equation (8). The embedding rules for IPVO are given by
P E m a x = { P E m a x 1 , if   P E m a x < 0 P E m a x b , if   P E m a x = 0 P E m a x + b , if   P E m a x = 1 P E m a x + 1 , if   P E m a x > 1 .
The corresponding pixel value modification rules are given by
x σ ( n ) = { x σ ( n ) + 1 , if   P E m a x < 0 x σ ( n ) + b , if   P E m a x = 0 x σ ( n ) + b , if   P E m a x = 1 x σ ( n ) + 1 , if   P E m a x > 1 .
Again, the modification of prediction errors and pixel values can be translated into a state transition map, as shown in Figure 1b. Prediction error states that satisfy e m a x 2 = e m a x 1 are exploited instead of e m a x 2 = e m a x 1 + 1 . According to the experiments, the IPVO scheme outperforms the original PVO scheme in embedding capacity. That is, the accumulated value of the histogram bins exploited by IPVO is greater than that of PVO for the conventional test images.

2.3. Pairwise-PVO

To improve the embedding capacity, the pairwise-PVO scheme [24] allows two maximum-valued pixels to be increased by one at the same time. The prediction error pair ( e m a x 1 , e m a x 2 ) is defined the same way as in Equations (7) and (8). The corresponding state transition map of the pairwise-PVO is given in Figure 1c. The diagonal guiding lines indicate the simultaneous increase of two maximum-valued pixels for embedding or expansion. There are more embeddable states near the origin. Additionally, the state of ( e m a x 1 , e m a x 2 ) = ( 1 , 1 ) is exploited to embed a ternary digit.
Although the embedding capacity is effectively increased, the simultaneous increase of pixel values severely degrades the visual quality of the stego images. A complexity measure is applied to classify the image blocks into different categories. Only low complexity blocks are embedded with the pairwise-PVO scheme. Median complexity blocks are embedded with the IPVO scheme, while high complexity blocks are left unembedded.

2.4. Other Typical PVO-Based Schemes

To further improve the embedding capacity, studies [26,27,28] were conducted to embed secret data by modifying the k maximum-valued pixels. The corresponding state transition maps for PVO-k [26], k-pass PVO [27], and improved k-pass PVO [28] schemes are given in Figure 1d–f.
Although their motivation is to modify k maximum-valued pixels, the concluded feasible value of k is still 2. Further extension of the k value leads to an unbearable degradation of image quality. The only difference between PVO-k and the original PVO, referring to Figure 1a,d, is the usage of ( e m a x 1 , e m a x 2 ) = ( 1 , 1 ) with the required additional expansions. In k-pass PVO, the state ( e m a x 1 , e m a x 2 ) = ( 1 , 1 ) is exploited to embed two bits at a time, as shown in Figure 1e. The improved k-pass PVO further exploits the states of | e m a x 1 e m a x 2 | = 3 to embed secret data, as shown in Figure 1f. As a result, the pixel value may be increased by two.
The image quality degradation caused by modifying two pixel-values at a time is still not solved. The improved PVO-based data hiding schemes [26,27,28] are all hybrid methods. Only smooth blocks are processed with the newly proposed schemes. The remaining complex blocks are embedded with IPVO or left unembedded.

3. Proposed Scheme

As discussed in the previous section, the embeddable states are concentrated in the smooth blocks of a cover image. To enlarge the embedding capacity, the improved PVO versions vacate more states for embedding by expanding the surrounding states outward. In most cases, this results in the simultaneous modification of two pixel-values and thus degrades the image quality.
In this section, a new PVO reversible data hiding scheme based on a prediction-error triplet is proposed. By extending the state space from two dimensions to three dimensions (3D), the space for vacating embeddable states can be effectively expanded. By modifying, at most, one of the three maximum-valued pixels in a block, the proposed scheme can embed secret data with the least sacrifice in image quality.
The flowcharts of the proposed data embedding and extraction processes are given in Figure 2. In the following subsections, the framework and pre-process are introduced first. Then, the new proposed 3D state transition map is presented. The complete data embedding process of two example blocks is given in the third subsection, and then their corresponding data extraction and pixel value recovery are demonstrated. Finally, an additional complex block exclusion process is provided to skip non-embeddable blocks.

3.1. Framework and Preprocess

As shown in Figure 2, the data embedding phase consists of a pre-process and a block-wise process. The cover image, the secret data stream, and the block size and complexity threshold parameters are provided as the input information. The framework of block processing is introduced first. Then, the required pre-process to ensure perfect recovery of both the cover image and secret data is presented.
Like all the PVO-based schemes, the RDH scheme proposed in this paper first divides the cover image into non-overlapping and equally sized blocks. Then, the pixels in each block is rearranged into a sequence of n pixels ( x 1 , x 2 , , x n ) in the raster scan order. The secret data embedding process includes two steps: the maximum-prediction-error expansion (max-PEE) and the minimum-prediction-error expansion (mini-PEE). In the first step, the n pixel values are sorted to obtain the sequence x σ ( 1 ) x σ ( 2 ) x σ ( n ) , where σ ( i ) represents the original location index of the i -th term after sorting. When repeated pixel value occurs, the spatial order of pixels with the same value is preserved as given in Equation (1). The 4-th pixel x σ ( n 3 ) is used to predict the three maximum-valued pixels ( x σ ( n ) , x σ ( n 1 ) , x σ ( n 2 ) ) and three prediction errors are obtained. The specific operation is as follows: first sort the spatial indices ( σ ( n ) , σ ( n 1 ) , σ ( n 2 ) ) to obtain a 1 < a 2 < a 3 . That is, the three pixels ( x σ ( n ) , x σ ( n 1 ) , x σ ( n 2 ) ) are resorted in their original raster-scanned order into ( x a 1 , x a 2 , x a 3 ) . Then, calculate the prediction errors ( e m a x 1 , e m a x 2 , e m a x 3 ) by
{ e m a x 1 = x a 1 x σ ( n 3 ) e m a x 2 = x a 2 x σ ( n 3 ) e m a x 3 = x a 3 x σ ( n 3 ) .
The prediction error triplet ( e m a x 1 , e m a x 2 , e m a x 3 ) is a process in a similar manner as the PVO-based schemes introduced in the related works to embed secret data except for the state transition map is expanded to 3D space. The proposed 3D state-space transition map is provided in the next subsection. Suppose the prediction error triplet ( e m a x 1 , e m a x 2 , e m a x 3 ) is modified into ( e m a x 1 , e m a x 2 , e m a x 3 ) after data embedding or expansion, the three maximum-valued pixels ( x a 1 , x a 2 , x a 3 ) are modified accordingly by
x a i = x σ ( n 3 ) + e m a x i ,   ( i = 1 , 2 , 3 ) .
In our design, the modification of the maximum-valued pixels is always incremented or unchanged, while the remaining pixels are kept unchanged. The maximum-valued group can be preserved. Further, the three pixels are resorted in their spatial order. This order cannot be altered even if their order in value is changed during the embedding process. Therefore, the embedding scheme’s reversibility can be ensured.
In the second step, the modified pixel sequence obtained in the previous step ( x 1 , x 2 , , x n ) is sorted again to obtain x σ ( 1 ) x σ ( 2 ) x σ ( n ) . The indices ( σ ( 1 ) , σ ( 2 ) , σ ( 3 ) ) are then resorted according to their spatial order to obtain c 1 < c 2 < c 3 . The prediction errors of the three minimum-valued pixels ( e m i n 1 , e m i n 2 , e m i n 3 ) are calculated by Equation (14). The second round of data embedding is executed by modifying ( e m i n 1 , e m i n 2 , e m i n 3 ) according to the same 3D state transition map into ( e m i n 1 , e m i n 2 , e m i n 3 ) . The corresponding modification of pixel values is given by Equation (15). Again, the three minimum-valued pixels are decremented or unchanged to ensure reversibility. The remaining pixels are kept unchanged, and the final stego pixel sequence ( x 1 , x 2 , , x n ) of the block can be obtained.
{ e m i n 1 = x σ ( 4 ) x c 1 e m i n 2 = x σ ( 4 ) x c 2 e m i n 3 = x σ ( 4 ) x c 3 .
x c i = x σ ( 4 ) e m i n i ,   ( i = 1 , 2 , 3 ) .
The pre-process is illustrated in Figure 2a. There are some auxiliary messages, including the length and width of a block (4 bits), the threshold of block complexity (8 bits), and the secret data size (16 bits). To avoid overflow and underflow, a block that contains any 0-valued or 255-valued pixel is classified as a non-embeddable block and is marked by 1 in the location map. Then, the compressed location map and the other auxiliary messages are hidden in the LSB of the pixels in the first two rows of the cover image, and these two rows are skipped in the embedding process. The original LSB bits of these two lines are appended to the front of the secret stream and embedded into the cover image. At the receiving end, these auxiliary messages are retrieved first to help extract the secret data and restore the cover image.

3.2. 3D State Transition Map

To design a proper 3D state transition map for a prediction-error triplet ( e m a x 1 , e m a x 2 , e m a x 3 ) , the 3D histogram of the triplet is investigated first. Figure 3 shows the 3D histogram of prediction-error triplet for cover image ‘Lena’ slice-wise. As shown in the figure, the maximum value appears at ( 1 , 1 , 1 ) , which is a common phenomenon for ordinary cover images. A 3D view of the histogram is given in Figure 4, where a cross-sectional view at the maximum value is also plotted. The values of the prediction error triplets of an entire cover image are highly concentrated near the state ( 1 , 1 , 1 ) , and the population gradually decreases outward.
A rule of thumb for transition map design is to select the maximum bins in the histogram as the embedding targets while reducing the required expansion of non-embeddable bins. The 3D prediction-error space is divided into layered structures according to the equation
L p = { ( e m a x 1 , e m a x 2 , e m a x 3 ) | min ( e m a x 1 , e m a x 2 , e m a x 3 ) = p . } ,
where L p is the set of all states included in the p -th layer. The layered structure is illustrated in Figure 5. In fact, the 0-th layer is the boundary surface of an octant in the 3D space. More specifically, the p -th layer contains all of the states on three quarter plane
{ e m a x 1 = p , e m a x 2 p , e m a x 3 p e m a x 2 = p , e m a x 1 p , e m a x 3 p e m a x 3 = p , e m a x 1 p , e m a x 2 p .
Since the maximum value of the 3D prediction-error histogram appears at ( 1 , 1 , 1 ) , which is located on the 1 -st layer, the 3D state transition map for the 0 -th layer and the remaining layers are designed differently, as shown in Figure 6 and Figure 7, respectively. In each figure, the state transition maps for the three quarter-planes are given in (a–c), while their projection versions are given in (d–f) for convenience. The major difference between the 0 -th layer and the remaining layers is that the state ( 0 , 0 , 0 ) is left unembedded, while the states ( p , p , p ) ,   p 0 are embedded with two bits each. Thus, the highest bin of ( 1 , 1 , 1 ) is efficiently exploited. On each quarter plane, the embeddable states are aligned on two diagonal lines, and the secret data is embedded by expanding the states along the horizontal and the vertical axes. This design can reduce the embedding distortion to a minimum since only a single value of the prediction-error triplet is modified. Based on the 3D state transition map, the proposed PVO scheme can efficiently embed the secret data with the least sacrifice of image quality. The corresponding rules for data embedding or pixel value expansion of the proposed scheme are summarized as follows.
  • For the 0-th layer ( L 0 ):
    • e m a x 3 = 0 :
      ( e m a x 1 , e m a x 2 , e m a x 3 ) = { ( e m a x 1 , e m a x 2 , e m a x 3 ) , e m a x 1 = e m a x 2 = 0 ( e m a x 1 + 1 , e m a x 2 , e m a x 3 ) , e m a x 1 1 > e m a x 2 ( e m a x 1 + b , e m a x 2 , e m a x 3 ) , e m a x 1 1 = e m a x 2 ( e m a x 1 , e m a x 2 + b , e m a x 3 ) , e m a x 1 = e m a x 2 0 ( e m a x 1 , e m a x 2 + 1 , e m a x 3 ) , 0 e m a x 1 < e m a x 2 .
    • e m a x 2 = 0 :
      ( e m a x 1 , e m a x 2 , e m a x 3 ) = { ( e m a x 1 , e m a x 2 , e m a x 3 + 1 ) , e m a x 1 < e m a x 3 1 ( e m a x 1 , e m a x 2 , e m a x 3 + b ) , e m a x 1 = e m a x 3 1 ( e m a x 1 + b , e m a x 2 , e m a x 3 ) , e m a x 1 = e m a x 3 0 ( e m a x 1 + 1 , e m a x 2 , e m a x 3 ) , e m a x 1 > e m a x 3 0 .
    • e m a x 1 = 0 :
      ( e m a x 1 , e m a x 2 , e m a x 3 ) = { ( e m a x 1 , e m a x 2 , e m a x 3 + 1 ) , e m a x 2 < e m a x 3 1 ( e m a x 1 , e m a x 2 , e m a x 3 + b ) , e m a x 2 = e m a x 3 1 ( e m a x 1 , e m a x 2 + b , e m a x 3 ) , e m a x 2 = e m a x 3 0 ( e m a x 1 , e m a x 2 + 1 , e m a x 3 ) , e m a x 2 > e m a x 3 0 .
  • For the p -th (except for 0) layer ( L p 0 ):
    • e m a x 1 = e m a x 2 = e m a x 3 = p :
      ( e m a x 1 , e m a x 2 , e m a x 3 ) = { ( e m a x 1 , e m a x 2 , e m a x 3 ) , b 1 b 0 = 00 ( e m a x 1 + 1 , e m a x 2 , e m a x 3 ) , b 1 b 0 = 01 ( e m a x 1 , e m a x 2 + 1 , e m a x 3 ) , b 1 b 0 = 10 ( e m a x 1 , e m a x 2 , e m a x 3 + 1 ) , b 1 b 0 = 11 .
    • e m a x 3 = p :
      ( e m a x 1 , e m a x 2 , e m a x 3 ) = { ( e m a x 1 + 1 , e m a x 2 , e m a x 3 ) , e m a x 1 1 > e m a x 2 ( e m a x 1 + 1 , e m a x 2 , e m a x 3 ) , e m a x 1 1 = e m a x 2 = p ( e m a x 1 + b , e m a x 2 , e m a x 3 ) , e m a x 1 1 = e m a x 2 p ( e m a x 1 , e m a x 2 + b , e m a x 3 ) , e m a x 1 = e m a x 2 p ( e m a x 1 , e m a x 2 + 1 , e m a x 3 ) , p e m a x 1 < e m a x 2 .
    • e m a x 2 = p :
      ( e m a x 1 , e m a x 2 , e m a x 3 ) = { ( e m a x 1 , e m a x 2 , e m a x 3 + 1 ) , e m a x 1 < e m a x 3 1 ( e m a x 1 , e m a x 2 , e m a x 3 + 1 ) , e m a x 1 = e m a x 3 1 = p ( e m a x 1 , e m a x 2 , e m a x 3 + b ) , e m a x 1 = e m a x 3 1 p ( e m a x 1 + b , e m a x 2 , e m a x 3 ) , e m a x 1 = e m a x 3 p ( e m a x 1 + 1 , e m a x 2 , e m a x 3 ) , e m a x 1 > e m a x 3 p .
    • e m a x 1 = p :
      ( e m a x 1 , e m a x 2 , e m a x 3 ) = { ( e m a x 1 , e m a x 2 , e m a x 3 + 1 ) , e m a x 2 < e m a x 3 1 ( e m a x 1 , e m a x 2 , e m a x 3 + 1 ) , e m a x 2 = e m a x 3 1 = p ( e m a x 1 , e m a x 2 , e m a x 3 + b ) , e m a x 2 = e m a x 3 1 p ( e m a x 1 , e m a x 2 + b , e m a x 3 ) , e m a x 2 = e m a x 3 p ( e m a x 1 , e m a x 2 + 1 , e m a x 3 ) , e m a x 2 > e m a x 3 p .

3.3. Examples of Secret Data Embedding

In this subsection, two example image blocks sized 2 × 2 are provided to demonstrate the data embedding process of the proposed scheme. The first example is shown in Figure 8a. The first step is to execute the max-PEE. The sorted sequence is ( 192 , 192 , 192 , 193 ) , the maximum-valued pixels in their spatial order are ( x 2 , x 3 ,   x 4 ) = ( 192 , 192 , 193 ) , and the minimum-valued pixel is x 1 = 192 . The prediction error triplet can be calculated by ( e m a x 1 , e m a x 2 , e m a x 3 ) = ( x 2 x 1 , x 3 x 1 , x 4 x 1 ) = ( 0 , 0 , 1 ) and its corresponding layer p = min ( e m a x 1 , e m a x 2 , e m a x 3 ) = e m a x 2 = 0 . According to the state transition map of the 0 -th layer (see Figure 6e or Equation (19)), suppose the data to be embedded is b = 1 , the triplet ( e m a x 1 , e m a x 2 , e m a x 3 ) is modified from ( 0 , 0 , 1 ) to ( 0 , 0 , 2 ) . Consequently, ( x 2 , x 3 ,   x 4 ) is modified from ( 192 , 192 , 193 ) to ( x 2 , x 3 ,   x 4 ) = ( 192 , 192 , 194 ) . Then, the second step of the mini-PEE has proceeded. The sorted pixel sequence is ( 192 , 192 , 192 , 194 ) and the minimum-valued pixels in their spatial order is ( x 1 , x 2 ,   x 3 ) . The prediction error triplet is given by ( e m i n 1 , e m i n 2 , e m i n 3 ) = ( x 4 x 1 , x 4 x 2 , x 4 x 3 ) = ( 2 , 2 , 2 ) and its corresponding layer is p = min ( e m i n 1 , e m i n 2 , e m i n 3 ) = e m i n 2 = 2 . According to the state transition map of the 2 -nd layer (see Figure 7e or Equation (23)), suppose the two bits of data to be embedded are b 1 b 0 = 01 , ( e m i n 1 , e m i n 2 , e m i n 3 ) is modified from ( 2 , 2 , 2 ) to ( 3 , 2 , 2 ) . Consequently, ( x 1 , x 2 ,   x 3 ) is modified from ( 192 , 192 , 192 ) to ( x 1 , x 2 ,   x 3 ) = ( 191 , 192 , 192 ) . The second example block is given in Figure 8b. In the first embedding step, the maximum-valued pixels in their spatial order is ( x 1 , x 2 ,   x 4 ) = ( 194 , 195 , 193 ) . The prediction error triplet is therefore ( e m a x 1 , e m a x 2 , e m a x 3 ) = ( x 1 x 3 , x 2 x 3 , x 4 x 3 ) = ( 2 , 3 , 1 ) . According to the state transition map of the 1-st layer (see Figure 7d or Equation (22)), the state is not embeddable and ( e m a x 1 , e m a x 2 , e m a x 3 ) is expanded from ( 2 , 3 , 1 ) to ( 2 , 4 , 1 ) . Consequently, ( x 1 , x 2 ,   x 4 ) is modified from ( 194 , 195 , 193 ) to ( x 1 , x 2 ,   x 4 ) = ( 194 , 196 , 193 ) . In the second embedding step, the minimum-valued pixels in spatial order is ( x 1 , x 3 ,   x 4 ) = ( 194 , 192 , 193 ) . The triplet is ( e m i n 1 , e m i n 2 , e m i n 3 ) = ( x 2 x 1 , x 2 x 3 , x 2 x 4 ) = ( 2 , 4 , 3 ) . According to the state transition map of the 2 -th layer (see Figure 7f or Equation (24)), suppose the data to be embedded is b = 1 , ( e m i n 1 , e m i n 2 , e m i n 3 ) is modified from ( 2 , 4 , 3 ) to ( 2 , 5 , 3 ) . Consequently, ( x 1 , x 3 ,   x 4 ) changes from ( 194 , 192 , 193 ) to ( x 1 , x 3 ,   x 4 ) = ( 194 , 191 , 193 ) .

3.4. Data Extraction and Image Recovery

The data extraction is operated in the reverse embedding order. At the receiver end, the stego-image is first divided into non-overlapping blocks of the same size. For each block, the pixels are sorted to obtain the ordered sequence first. Then, the reverse operations of mini-PEE and max-PEE are executed sequentially to extract the secret data and recover the original pixel values.
The stego-block in Figure 8a is applied as the first example shown in Figure 9a. The pixel sequence is sorted to obtain the minimum-valued pixels in spatial order ( x 1 , x 2 , x 3 ) = ( 191 , 192 , 192 ) and the triplet ( e m i n 1 , e m i n 2 , e m i n 3 ) = ( 194 191 , 194 192 , 194 192 ) = ( 3 , 2 , 2 ) . According to the state transition map of the 2 -nd layer (see Figure 7e or Equation (23)), ( 3 , 2 , 2 ) = ( p + 1 , p , p + 0 ) corresponds to the state ( 1 , 0 ) on the map and comes from ( 0 , 0 ) due to embedding of b 1 b 0 = 01 . Therefore, the original prediction error triplet is ( 2 + 0 , 2 , 2 + 0 ) and the pixel values are ( x 1 , x 2 , x 3 ) = ( 192 , 192 , 192 ) . Then, the sequence is sorted again to obtain the maximum-valued pixels ( x 2 , x 3 , x 4 ) = ( 192 , 192 , 194 ) and the prediction error triplet ( e m a x 1 , e m a x 2 , e m a x 3 ) = ( 192 192 , 192 192 , 194 192 ) = ( 0 , 0 , 2 ) . According to the state transition map of the 0 -th layer (see Figure 6e or Equation (19)), the triplet ( 0 , 0 , 2 ) corresponds to ( 0 , 2 ) on the map and comes from ( 0 , 1 ) due to embedding of b = 1 . Therefore, the original triplet is ( 0 , 0 , 1 ) and the cover pixel values are ( x 2 , x 3 , x 4 ) = ( 192 , 192 , 193 ) . The second stego-block is shown in Figure 9b. The pixel sequence is sorted to obtain the minimum-valued pixels in spatial order ( x 1 , x 3 , x 4 ) = ( 194 , 191 , 193 ) and the prediction error triplet ( e m i n 1 , e m i n 2 , e m i n 3 ) = ( 196 194 , 196 191 , 196 193 ) = ( 2 , 5 , 3 ) . According to the state transition map of the 2 -nd layer (see Figure 7f or Equation (24)), ( 2 , 5 , 3 ) = ( p , p + 3 , p + 1 ) corresponds to the state ( 3 , 1 ) on the map and comes from ( 2 , 1 ) due to embedding of b = 1 . Therefore, the original prediction error triplet is ( 2 , 2 + 2 , 2 + 1 ) and the pixel values are ( x 1 , x 2 , x 3 ) = ( 194 , 192 , 193 ) . Then, the sequence is sorted again to obtain the maximum-valued pixels ( x 1 , x 2 , x 4 ) = ( 194 , 196 , 193 ) and the triplet ( e m a x 1 , e m a x 2 , e m a x 3 ) = ( 194 192 , 196 192 , 193 192 ) = ( 2 , 4 , 1 ) . According to the state transition map of the 1 -st layer (see Figure 7d or Equation (22)), the triplet ( 2 , 4 , 1 ) corresponds to ( 1 , 3 ) on the map and comes from ( 1 , 2 ) due to expansion. Therefore, the original triplet is ( 2 , 3 , 1 ) , and the cover pixel values are ( x 1 , x 2 , x 4 ) = ( 194 , 195 , 193 ) .

3.5. Complex Block Exclusion

Since the embeddable states are aligned on two diagonal lines of each quarter plane in the layered structure, at least two pixel-values in a block should be equal or very close to each other to make it embeddable. Complex blocks are non-embeddable, and pixel value expansion is required without any contribution to the embedding capacity.
All PVO-based schemes introduced in the related works include a complexity measure of blocks and skip the complex blocks when embedding. In our scheme, the complexity measure of blocks proposed by Ou et al. in [26] was adopted. The noise level (NL) of a pixel block is evaluated through its context. When the size of the pixel block is n 1 × n 2 , referring to Figure 10, the two columns of pixels on the right and the two rows of pixels below the pixel block are regarded as the context of the current block. Calculating the sum of the absolute difference between every two consecutive pixels in the context can obtain the complexity NL of the current pixel block. The formula is given by
N L = d v e r + d h o r ,
where d v e r denotes an absolute difference of two consecutive pixels in the vertical direction, and d h o r denotes an absolute difference of two pixels in the horizontal direction.
The pairwise-PVO [24], POV-k [26], k-pass PVO [27], and improved k-pass PVO [28] all classify the image blocks into three types and process them with hybrid schemes. In our work, the proposed single scheme was applied. The complexity measure was just used to exclude the non-embeddable blocks when NL exceeds a given threshold T.

4. Experimental Results and Comparisons

The proposed data hiding scheme is implemented using MATLAB language on the Windows PC environment. Eight standard grayscale test images sized 512 × 512 shown in Figure 11 are applied. The binary secret data S is produced by a random number generator. The performance is mainly evaluated through two indicators, the peak signal-to-noise ratio (PSNR) and the payload. Let W and H be the width and height of the cover image. The PSNR defined by Equation (26) evaluates the visual quality of a stego image.
P S N R = 10 log 10 ( H × W × ( 255 ) 2 i = 1 H j = 1 W ( G i j G i j ) 2 ) ,
where G i j and G i j are the pixel values in the i-th row and the j-th column of the cover image and the stego-image, respectively. In general, we think that if the PSNR of the hidden image is greater than 30, then the difference between it and the original image is already invisible. Of course, the higher the PSNR, the smaller the difference between the hidden image and the original image, and the less likely it is to discover the secret data on the hidden image. A stego image of a high PSNR value can be produced by minimizing the required modification of pixel values during data embedding. A major objective of data hiding is to resemble the original image as much as possible. Therefore, an excellent data hiding scheme should embed a satisfactory amount of secret data with a high PSNR value.
The payload is the valid part of the data we embed in the stego image, i.e., the secret data. In fact, the data we embed in the stego image consists of two parts: the payload and the auxiliary information. The bigger the payload, the more secret data we can embed.

4.1. Experimental Results

There are two adaptive parameters in our proposed scheme, which are the block size n 1 × n 2 and the threshold of complexity T. In general, larger block size or a smaller threshold value can produce a stego image with a high PSNR value. However, both strategies lead to the reduction of payloads. A larger block size reduces the total number of blocks, while a smaller threshold value reduces the number of applicable smooth blocks.
In our experiments, the influence of the block size was investigated first. The block sizes of 1 × 4 , 2 × 2 , 4 × 1 , 2 × 3 , 3 × 2 , and 3 × 3 were tested, and the results are listed in Table 1. As shown in the table, the visual quality of the stego images improves with the expansion in block size. However, among different shapes of the same size, 2 × 2 and 3 × 2 outperform the others.
By taking both the block size and the threshold value into consideration, Table 2 lists the best block size and the complexity threshold to obtain the best PSNR for different test images under a payload of 10,000 bits. As shown in the table, 3 × 2 is the most frequent optimal solution and is the smallest size among all the sizes, which is advantageous when the application requires a high payload.

4.2. Comparisons

In this subsection, the performance of our proposed scheme is compared with the typical PVO-based schemes, namely, PVO [21], IPVO [22], pairwise PVO [24], and the improved k-pass PVO [28]. PSNR values under different payloads for different test images are plotted in Figure 12, where the block size of 3 × 2 is adopted. The payload starts with 5000 bits, and the step length is 5000 bits, except for the cover image ‘Baboon’. Due to the image’s special features, the initial and step sizes of the payload are set differently. The results show that, for all test images, the PSNR of the proposed scheme outperforms the other schemes under the same payload. As the amount of payload increases, the PSNR improvement of the proposed scheme is more obvious. Due to the high embedding capacity and the low pixel value distortion during embedding and expansion, the proposed data hiding scheme provides a significant improvement for test images of high complexity such as ‘Baboon’. This further confirms the superiority of the proposed 3D state transition map.
Table 3 and Table 4 list the PSNR values of the stego images for related works under the payloads of 10,000 bits and 20,000 bits, where the block size is 3 × 2 . The embedding capacity of the test image ‘Baboon’ cannot achieve 20,000 bits for all schemes, so its corresponding row in Table 4 is empty.

5. Conclusions

A new 3D state transition map for the PVO-based RDH scheme was proposed. The newly defined prediction error triplet and a sophisticatedly devised 3D state transition map were applied to guide the hiding of secret data in an image. The peak state in the 3D prediction error histogram was efficiently exploited to embed two bits of secret data each. All states, either embeddable or non-embeddable, were processed so that only a single entry of the triplet was modified during the embedding of secret data or pure expansion.
The experimental results showed that the proposed scheme could efficiently embed secret data with very low distortion to the cover image. The PSNR of the proposed scheme significantly outperforms the existing PVO-based schemes. Our scheme is especially advantageous for images with complex textures. As the amount of payload increases, the improvement in the visual quality of stego images becomes more obvious. In the future, a PVO scheme based on a state space of prediction errors with even higher dimensions is promising.

Author Contributions

Conceptualization, H.-X.C. and J.-H.H.; methodology, J.-H.H.; validation, H.-X.C.; writing—original draft preparation, H.-X.C.; writing—review and editing, J.-H.H. and C.-C.C. All authors have read and agreed to the published version of the manuscript.

Funding

This research was funded by the Ministry of Science and Technology of Taiwan, grant number MOST 110-2221-E-507-003.

Institutional Review Board Statement

Not applicable.

Informed Consent Statement

Not applicable.

Data Availability Statement

Not applicable.

Conflicts of Interest

The authors declare no conflict of interest.

References

  1. Chang, C.-C. Adversarial Learning for Invertible Steganography. IEEE Access 2020, 8, 198425–198435. [Google Scholar] [CrossRef]
  2. Chang, C.-C.; Li, C.-T.; Shi, Y.-Q. Privacy-Aware Reversible Watermarking in Cloud Computing Environments. IEEE Access 2018, 6, 70720–70733. [Google Scholar] [CrossRef]
  3. Chi, H.; Chang, C.-C.; Liu, Y. An SMVQ Compressed Data Hiding Scheme Based on Multiple Linear Regression Prediction. Connect. Sci. 2020, 1–20. [Google Scholar] [CrossRef]
  4. Chen, K.-M. High Capacity Reversible Data Hiding Based on the Compression of Pixel Differences. Mathematics 2020, 8, 1435. [Google Scholar] [CrossRef]
  5. Yu, C.; Ye, C.; Zhang, X.; Tang, Z.; Zhan, S. Separable Reversible Data Hiding in Encrypted Image Based on Two-Dimensional Permutation and Exploiting Modification Direction. Mathematics 2019, 7, 976. [Google Scholar] [CrossRef] [Green Version]
  6. Sun, Y.; Lu, Y.; Chen, J.; Zhang, W.; Yan, X. Meaningful Secret Image Sharing Scheme with High Visual Quality Based on Natural Steganography. Mathematics 2020, 8, 1452. [Google Scholar] [CrossRef]
  7. Chang, C.C.; Liu, Y.; Nguyen, T.S. A Novel Turtle Shell Based Scheme for Data Hiding. In Proceedings of the Tenth International Conference on Intelligent Information Hiding and Multimedia Signal Processing, Kitakyushu, Japan, 27–29 August 2014; pp. 89–93. [Google Scholar] [CrossRef]
  8. Qin, J.; Wang, J.; Tan, Y.; Huang, H.; Xiang, X.; He, Z. Coverless Image Steganography Based on Generative Adversarial Network. Mathematics 2020, 8, 1394. [Google Scholar] [CrossRef]
  9. Alattar, A.M. Reversible Watermark Using the Difference Expansion of a Generalized Integer Transform. IEEE Trans. Image Process. 2004, 13, 1147–1156. [Google Scholar] [CrossRef]
  10. Hu, Y.; Lee, H.-K.; Li, J. DE-Based Reversible Data Hiding With Improved Overflow Location Map. IEEE Trans. Circuits Syst. Video Technol. 2009, 19, 250–260. [Google Scholar] [CrossRef]
  11. Tian, J. Reversible Data Embedding Using a Difference Expansion. IEEE Trans. Circuits Syst. Video Technol. 2003, 13, 890–896. [Google Scholar] [CrossRef] [Green Version]
  12. Li, X.; Li, B.; Yang, B.; Zeng, T. General Framework to Histogram-Shifting-Based Reversible Data Hiding. IEEE Trans. Image Process. 2013, 22, 2181–2191. [Google Scholar] [CrossRef]
  13. Ni, Z.; Shi, Y.-Q.; Ansari, N.; Su, W. Reversible Data Hiding. IEEE Trans. Circuits Syst. Video Technol. 2006, 16, 354–362. [Google Scholar] [CrossRef]
  14. Tsai, P.; Hu, Y.-C.; Yeh, H.-L. Reversible Image Hiding Scheme Using Predictive Coding and Histogram Shifting. Signal Process. 2009, 89, 1129–1143. [Google Scholar] [CrossRef]
  15. Dragoi, I.-C.; Coltuc, D. Local-Prediction-Based Difference Expansion Reversible Watermarking. IEEE Trans. Image Process. 2014, 23, 1779–1790. [Google Scholar] [CrossRef]
  16. Dragoi, I.-C.; Coltuc, D. Adaptive Pairing Reversible Watermarking. IEEE Trans. Image Process. 2016, 25, 2420–2422. [Google Scholar] [CrossRef]
  17. He, W.; Xiong, G.; Weng, S.; Cai, Z.; Wang, Y. Reversible Data Hiding Using Multi-Pass Pixel-Value-Ordering and Pairwise Prediction-Error Expansion. Inf. Sci. 2018, 467, 784–799. [Google Scholar] [CrossRef]
  18. Sachnev, V.; Kim, H.J.; Nam, J.; Suresh, S.; Shi, Y.Q. Reversible Watermarking Algorithm Using Sorting and Prediction. IEEE Trans. Circuits Syst. Video Technol. 2009, 19, 989–999. [Google Scholar] [CrossRef]
  19. Luo, L.; Chen, Z.; Chen, M.; Zeng, X.; Xiong, Z. Reversible Image Watermarking Using Interpolation Technique. IEEE Trans. Inf. Forensics Secur. 2010, 5, 187–193. [Google Scholar] [CrossRef]
  20. Ou, B.; Li, X.; Zhao, Y.; Ni, R.; Shi, Y.-Q. Pairwise Prediction-Error Expansion for Efficient Reversible Data Hiding. IEEE Trans. Image Process. 2013, 22, 5010–5021. [Google Scholar] [CrossRef] [PubMed]
  21. Li, X.; Li, J.; Li, B.; Yang, B. High-Fidelity Reversible Data Hiding Scheme Based on Pixel-Value-Ordering and Prediction-Error Expansion. Signal Process. 2013, 93, 198–205. [Google Scholar] [CrossRef]
  22. Peng, F.; Li, X.; Yang, B. Improved PVO-Based Reversible Data Hiding. Digit. Signal Process. 2014, 25, 255–265. [Google Scholar] [CrossRef]
  23. He, W.; Cai, Z.; Wang, Y. Flexible Spatial Location-Based PVO Predictor for High-Fidelity Reversible Data Hiding. Inf. Sci. 2020, 520, 431–444. [Google Scholar] [CrossRef]
  24. Ou, B.; Li, X.; Wang, J. High-Fidelity Reversible Data Hiding Based on Pixel-Value-Ordering and Pairwise Prediction-Error Expansion. J. Vis. Commun. Image Represent. 2016, 39, 12–23. [Google Scholar] [CrossRef] [Green Version]
  25. Zhang, T.; Li, X.; Qi, W.; Guo, Z. Location-Based PVO and Adaptive Pairwise Modification for Efficient Reversible Data Hiding. IEEE Trans. Inf. Forensics Secur. 2020, 15, 2306–2319. [Google Scholar] [CrossRef]
  26. Ou, B.; Li, X.; Zhao, Y.; Ni, R. Reversible Data Hiding Using Invariant Pixel-Value-Ordering and Prediction-Error Expansion. Signal Process. Image Commun. 2014, 29, 760–772. [Google Scholar] [CrossRef]
  27. He, W.; Zhou, K.; Cai, J.; Wang, L.; Xiong, G. Reversible Data Hiding Using Multi-Pass Pixel Value Ordering and Prediction-Error Expansion. J. Vis. Commun. Image Represent. 2017, 49, 351–360. [Google Scholar] [CrossRef]
  28. Weng, S.; Chen, Y.; Ou, B.; Chang, C.-C.; Zhang, C. Improved K-Pass Pixel Value Ordering Based Data Hiding. IEEE Access 2019, 7, 34570–34582. [Google Scholar] [CrossRef]
Figure 1. The state transition map for PVO-based RDH schemes. (a) PVO [21]; (b) IPVO [22]; (c) Pairwise-PVO [24]; (d) PVO-k [26]; (e) k-pass PVO [27]; (f) Improved k-pass PVO [28].
Figure 1. The state transition map for PVO-based RDH schemes. (a) PVO [21]; (b) IPVO [22]; (c) Pairwise-PVO [24]; (d) PVO-k [26]; (e) k-pass PVO [27]; (f) Improved k-pass PVO [28].
Mathematics 09 01703 g001
Figure 2. Flowcharts of the proposed scheme. (a) Embedding phase; (b) Extraction phase.
Figure 2. Flowcharts of the proposed scheme. (a) Embedding phase; (b) Extraction phase.
Mathematics 09 01703 g002
Figure 3. Slice representation of 3D prediction error histogram. (a) Lena; (b) e m a x 3 = 0 ; (c) e m a x 3 = 1 ; (d) e m a x 3 = 2 ; (e) e m a x 3 = 3 ; (f) e m a x 3 = 4 ; (g) e m a x 3 = 5 ; (h) e m a x 3 = 6 .
Figure 3. Slice representation of 3D prediction error histogram. (a) Lena; (b) e m a x 3 = 0 ; (c) e m a x 3 = 1 ; (d) e m a x 3 = 2 ; (e) e m a x 3 = 3 ; (f) e m a x 3 = 4 ; (g) e m a x 3 = 5 ; (h) e m a x 3 = 6 .
Mathematics 09 01703 g003
Figure 4. 3D prediction error histogram with a view at the maximum value. (a) 3D histogram; (b) Cross section view.
Figure 4. 3D prediction error histogram with a view at the maximum value. (a) 3D histogram; (b) Cross section view.
Mathematics 09 01703 g004
Figure 5. Layered structure of the 3D transition map.
Figure 5. Layered structure of the 3D transition map.
Mathematics 09 01703 g005
Figure 6. (ac) 3D state transition map for the 0 -th layer L p = 0 ; (df) the projection versions.
Figure 6. (ac) 3D state transition map for the 0 -th layer L p = 0 ; (df) the projection versions.
Mathematics 09 01703 g006
Figure 7. (ac) 3D state transition map for the p -th layer L p 0 ; (df) the projection versions.
Figure 7. (ac) 3D state transition map for the p -th layer L p 0 ; (df) the projection versions.
Mathematics 09 01703 g007
Figure 8. Two examples of the secret data embedding process. (a) Embedding Example 1; (b) Embedding Example 2.
Figure 8. Two examples of the secret data embedding process. (a) Embedding Example 1; (b) Embedding Example 2.
Mathematics 09 01703 g008
Figure 9. Two examples of the secret data extraction and block recovery process. (a) Extract Example 1; (b) Extract Example 2.
Figure 9. Two examples of the secret data extraction and block recovery process. (a) Extract Example 1; (b) Extract Example 2.
Mathematics 09 01703 g009
Figure 10. A 2 × 2 sized block and its context (gray pixels), where NL is the noise level.
Figure 10. A 2 × 2 sized block and its context (gray pixels), where NL is the noise level.
Mathematics 09 01703 g010
Figure 11. Eight gray level standard test images applied in our experiments. (a) Lena; (b) Baboon; (c) Barbara; (d) Elaine; (e) Airplane; (f) Peppers; (g) Lake; (h) Boat.
Figure 11. Eight gray level standard test images applied in our experiments. (a) Lena; (b) Baboon; (c) Barbara; (d) Elaine; (e) Airplane; (f) Peppers; (g) Lake; (h) Boat.
Mathematics 09 01703 g011
Figure 12. The PSNR values under different payloads. (a) Lena; (b) Baboon; (c) Barbara; (d) Elaine; (e) Airplane; (f) Peppers; (g) Lake; (h) Boat.
Figure 12. The PSNR values under different payloads. (a) Lena; (b) Baboon; (c) Barbara; (d) Elaine; (e) Airplane; (f) Peppers; (g) Lake; (h) Boat.
Mathematics 09 01703 g012aMathematics 09 01703 g012b
Table 1. PSNR values under different sizes (payload = 10,000 bits).
Table 1. PSNR values under different sizes (payload = 10,000 bits).
Image 1 × 4 2 × 2 4 × 1 2 × 3 3 × 2 3 × 3
Lena59.51 60.26 60.20 61.05 61.18 61.42
Baboon55.33 55.84 55.33 56.89 56.99 56.72
Barbara59.65 60.01 59.68 60.97 60.98 61.28
Elaine58.03 58.52 57.85 59.19 59.29 59.30
Airplane62.63 63.07 62.97 63.73 63.80 63.63
Peppers58.30 58.55 58.48 59.75 59.90 60.40
Lake59.72 59.92 59.39 60.88 60.76 60.72
Boat58.22 58.51 58.49 59.50 59.52 59.81
Table 2. PSNR values under different sizes (payload = 10,000 bits).
Table 2. PSNR values under different sizes (payload = 10,000 bits).
ImagePSNRBlock SizeT
Airplane63.80 3 × 2 20
Baboon56.99 3 × 2 223
Barbara61.29 3 × 3 65
Boat59.82 2 × 4 106
Elaine59.29 3 × 2 97
Lake60.88 2 × 3 68
Lena61.57 3 × 4 70
Peppers60.55 3 × 4 105
Table 3. Comparison of PSNR values when the pixel block is 3 × 2 (payload = 10,000 bits).
Table 3. Comparison of PSNR values when the pixel block is 3 × 2 (payload = 10,000 bits).
ImageProposed[21][22][24][27][28]
Lena61.1860.2860.4760.9060.6460.68
Baboon56.9953.4353.4954.9454.0054.60
Barbara60.9860.3960.4860.1460.3760.72
Elaine59.2956.7957.3458.2957.6757.49
Airplane63.8061.9562.9063.6363.4563.28
Peppers59.9058.8358.9759.3659.2959.14
Lake60.7658.1358.8559.9459.7159.86
Boat59.5258.0558.2558.0558.2858.61
Table 4. Comparison of PSNR values when the pixel block is 3 × 2 (payload = 20,000 bits).
Table 4. Comparison of PSNR values when the pixel block is 3 × 2 (payload = 20,000 bits).
ImageProposed[21][22][24][27][28]
Lena57.6756.1456.5157.0456.8156.67
Baboon
Barbara57.2755.4056.1355.8856.0956.74
Elaine54.9352.3152.5853.5053.0853.14
Airplane60.0458.0958.9959.7359.5959.18
Peppers56.4254.6154.7155.3455.1054.97
Lake56.3153.3253.5454.8454.5354.66
Boat55.5753.3453.8153.7254.0754.27
Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Share and Cite

MDPI and ACS Style

Chi, H.-X.; Horng, J.-H.; Chang, C.-C. Reversible Data Hiding Based on Pixel-Value-Ordering and Prediction-Error Triplet Expansion. Mathematics 2021, 9, 1703. https://doi.org/10.3390/math9141703

AMA Style

Chi H-X, Horng J-H, Chang C-C. Reversible Data Hiding Based on Pixel-Value-Ordering and Prediction-Error Triplet Expansion. Mathematics. 2021; 9(14):1703. https://doi.org/10.3390/math9141703

Chicago/Turabian Style

Chi, Heng-Xiao, Ji-Hwei Horng, and Chin-Chen Chang. 2021. "Reversible Data Hiding Based on Pixel-Value-Ordering and Prediction-Error Triplet Expansion" Mathematics 9, no. 14: 1703. https://doi.org/10.3390/math9141703

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