You are on page 1of 13

J. Vis. Commun. Image R.

76 (2021) 103064

Contents lists available at ScienceDirect

Journal of Visual Communication and Image Representation


journal homepage: www.elsevier.com/locate/jvci

Reversible data hiding based on three shadow images using rhombus


magic matrix
Sisheng Chen a, b, c, Chin-Chen Chang b, *
a
School of Electronic and Information Engineering, Fujian Polytechnic Normal University, Fuzhou 350300, China
b
Department of Information Engineering and Computer Science, Feng Chia University, Taichung 40724, Taiwan
c
Engineering Research Center for ICH Digitalization and Multi-Source Information Fusion (Fujian Polytechnic Normal University), Fujian Province University, Fuzhou
350300, China

A R T I C L E I N F O A B S T R A C T

Keywords: This paper proposes a multi-image-based reversible data hiding method using a rhombus magic matrix. It takes a
Reversible data hiding pixel pair as a position coordinate of a 256 × 256 modulus function matrix and extracts a 5-order rhombus
Three shadow images matrix. It first embeds a 5-ary secret digit by producing three shadow pixel pairs which satisfies the predefined
Rhombus magic matrix
distance condition. Then it embeds a 6-ary secret digit by permuting the three shadow pixel pairs and assigning
Hierarchical data security
them to three ordered shadow images. Third, it embeds another 5-ary secret digit by modifying the pixel pair
within a 3-order rhombus magic matrix in a shadow image. The receiver can extract the secret data and recover
the original cover image when obtaining all shadow images. It also introduces a new application scenario for
hierarchical security data transmission. The experimental results and analysis show that the proposed security
scheme provides high embedding capacity with good visual quality of shadow images.

1. Introduction between a pixel pair and a reversed 1-bit embedding capacity in the
pixel pair. Ni et al. [9] proposed a histogram shifting (HS) based data
Data transmission security is an important topic in information se­ hiding method, in which they generated the statistical histogram of the
curity. The current popular method for protecting the security of data pixel values and chosen the peak and zero points of the histogram as the
transmissions is data encryption. However, the meaninglessness of the embedding bin. Li et al. [10] proposed a pixel values order (PVO)
ciphertext in the data transmission may attract the attention of monitors method, in which they divided a cover image into blocks and sorted the
and interceptors. To deal with this problem, data hiding technology is pixel values in each block. Then, they embedded the secret data by
being researched. Data hiding technology hides secret data in mean­ expanding the difference between the two largest pixel values and the
ingful cover content, like in digital images, and transmits the secret data difference between the two smallest pixel values. Based on the DE, HS,
without arousing the suspicion of attackers. Further, the secret data can and PVO methods, many works [11–16] have been presented to enhance
be easily extracted by the right receiver. the embedding capacity or the stego-image quality. Limited by the
Many data hiding methods in digital images have been proposed, and reversibility requirement, the embedding capacity of the RDH methods
they are classified into irreversible and reversible methods. Some well- are usually not high with the requirement of good visual quality.
known irreversible data hiding methods contain low significant bits In 2007, Chang et al. [17] proposed a dual-image technology to
(LSB) substation [1] method, matrix embedding [2,3] method, and implement the reversible data hiding, in which the secret data is
exploiting modifying direction (EMD) [4] method, among others. In embedded in a cover image based on a modulus function matrix and two
these irreversible methods [1–7], the original cover images are irre­ stego-images are generated. The dual-image-based data hiding can
versibly distorted. Reversible data hiding (RDH) allows the receiver to enhance the embedding capacity and disperse the distortion into two
recover the original cover image lossless after extracting the secret data. stego-images. It also uses the secret sharing concept to improve the se­
Some common RDH methods have been proposed. Tian [8] proposed a curity of data transmissions, in which only the receiver who obtains the
reversible data hiding method based on difference expansion (DE). He both stego-images can extract the secret data. Thus, dual-image-based
used a reversible integer transformation to expand the difference data hiding has attracted increasing attention from researchers

* Corresponding author.
E-mail address: alan3c@gmail.com (C.-C. Chang).

https://doi.org/10.1016/j.jvcir.2021.103064
Received 15 November 2020; Received in revised form 12 January 2021; Accepted 21 February 2021
Available online 27 February 2021
1047-3203/© 2021 Elsevier Inc. All rights reserved.
S. Chen and C.-C. Chang Journal of Visual Communication and Image Representation 76 (2021) 103064

[18–29]. In 2009 and 2013, Chang et al. [18,19] improved the embed­
ding capacity of [17] by enlarging the size of the sub-matrix. In [20], Lee
and Huang proposed a dual-image-based data hiding scheme using
orientation combinations. For each pixel pair, they initialed a major
pixel pair and an auxiliary pixel pair. Then, they embedded a 5-base
secret digit in the major pixel pair and a base-5 secret digit in the
auxiliary pixel pair based on 25 pre-defined embedding rules. Qin et al.
[21] proposed a novel dual-image-based reversible data hiding based on
the EMD method. They used the normal EMD method to obtain the main
stego-image and generated the second stego-image by adjusting the
modification direction with the first stego-image as a reference. Lu et al.
[22] proposed a dual-image data hiding scheme based on the central-
folding method. In this method, they first encoded the secret digit
from a greater one to a smaller one. Then, they folded the encoded secret
digit into two equal digits and embedded them into two stego-images by
increasing and decreasing the cover pixel value. Lu et al. [23] proposed
another scheme using LSB matching. In 2017, Yao et al. [24] proposed
Fig. 1. Zhang and Wang’s modulus function matrix (n = 2).
an improved scheme based on [22]. Yao et al.’s scheme has greater
embedding capacity than [22]. Shastri et al. [27] continued to improve
For the pixel group (pi,1 , pi,2 , ⋯, pi,n ), if at most only one pixel is
the method by reducing the distortion. In [26], Lin et al. proposed a dual-
increased or decreased by 1, we can get (2n + 1) different pixel groups.
image data hiding scheme using the turtle shell reference matrix. Yao et
According to Eq. (1), the function values of the (2n + 1) different pixel
al. [28] proposed a high fidelity dual-image based data hiding based on
groups only consist of the set {0, 1, ⋯, 2n}, that is, they are not equal to
rhombus prediction and prediction error shifting. They embedded half
each other in pairs. Then, they constructed a mapping from the (2n +
of the secret bits based on the prediction of the padding pixels and
1)-ary numeral system to the (2n + 1) different pixel groups. In the data
prediction error shifting. Then, they embedded the other half of the
embedding processing, they first convert the secret data into a (2n +
secret bits by predicting the blank pixels of the first tentative marked
1)-ary number sequence. Then, for a (2n + 1)-ary secret digit si , they
image. This method can obtain high quality stego-images, but with low
computed li = si − f(pi,1 , pi,2 , ⋯, pi,n )mod(2n + 1). If li = 0, then do not
embedding capacity.
modify the pixel group; if li ∕ = 0, then modify the li -th pixel in the pixel
From above, it can be seen that dual-image technology has been
group (pi,1 , pi,2 , ⋯, pi,n )with the following rule:
considered an effective method to enhance the embedding capacity and
{
improve the quality of the stego-image. We further classify dual-image- ′
pli = pli + 1, if li ⩽n
based data hiding as multi-image-based data hiding. In order to further ′ ′ (2)
p2n+1− li = p2n+1− li − 1, if li > n
enhance the embedding capacity and develop new application sce­
narios, we study other multi-image based reversible data hiding On the receiving side, the secret digit si can be extracted by
methods. This paper proposes a novel reversible data hiding scheme computing the function value of the modified pixel group in the stego-
based on three shadow images. For each pixel pair in the original cover image.
image, it draws four adjacent 3-order rhombus magic matrixes based on Eq. (1) is called extraction function, which also can be denoted by a
Zhang and Wang’s [4] modulus function matrix, and they consist of a 5- matrix called the modulus function matrix. Fig. 1 shows the modulus
order rhombus matrix. Then, it embeds two 5-ary secret digits and a 6- function matrix when n = 2. For a pixel group (pi , pj ), the value of the
ary secret digit based on the rhombus matrix in three shadow images for position (pi , pj )in the modulus function matrix is the function valuef (pi ,
each original cover pixel pair. In the normal application scenarios, only pj ), and the adjacent four positions are the modification direction. For
the receiver can extract the secret data when obtaining all three shadow example, we consider an original cover pixel group (6, 6) and a secret
images. However, the proposed method can support a hierarchical se­ digit 4 in a 5-ary numeral system. Sincel = 1, the data hider modifies
curity data transmission by adjusting embedding processing, in which a pixel group (6, 6) to (7, 6) as the stego-pixel group. When receiving the
receiver can extract part of the secret data from each shadow image and stego-pixel group (7, 6), the receiver can extract the secret digital 4 from
can only extract the secret data when obtains all three shadow images. position (7, 6) in the matrix or by computing f (7, 6).
The experimental results and analysis show that the proposed method The EMD data embedding method can’t recover the original cover
can achieve high embedding capacity, while maintaining good visual image after the data extraction. To solve the irreversibility of this
quality. method, Chang et al. [17] proposed a reversible data hiding method by
We organize the rest of paper as follows. Section 2 introduces the combining the dual image method and the EMD method. In their
EMD method. In Section 3, we present the construction of the rhombus method, for each pixel pair (pi , pj ), they extracted a left and right diag­
magic matrix. The proposed scheme is described in Section 4. Section 5 onal lines in the modulus function matrix, both of which contain five
shows the experimental results and analysis. Finally, we conclude this elements and intersect at (pi , pj ). The stego-images are generated by
paper in Section 6. embedding the secret data in the left and right diagonal line. To enhance
the embedding capacity, Qin et al. [21] also proposed a novel dual-
2. Related works image-based reversible data hiding method based on the EMD method.
To further enhance the embedding capacity, we will propose a new RDH
Zhang and Wang proposed an efficient steganographic method using method based on the modulus function matrix.
fully exploiting modification directions (EMD) [4]. In their method, they
used a pixel group (pi,1 , pi,2 , ⋯, pi,n ) to carry a secret digit in the (2n + 3. Rhombus magic matrix
1)-ary numeral system. For each pixel group (pi,1 ,pi,2 ,⋯,pi,n ), compute a
function value f(⋅) that is defined as (1): In this section, we first introduce the constructing method of a
∑n rhombus magic matrix based on Zhang and Wang’s [4] modulus func­
f (pi,1 , pi,2 , ⋯, pi,n ) = ( pi,j × j)mod(2n + 1) (1) tion matrix. Then, we present three conclusions on the rhombus magic
j=1
matrix which are the basis of the proposed scheme.

2
S. Chen and C.-C. Chang Journal of Visual Communication and Image Representation 76 (2021) 103064

3.1. Construction of rhombus magic matrix

A rhombus matrix is a matrix that has a shape like Fig. 2a and b. If the
diagonal line of a rhombus matrix has (2n + 1) elements, then the
amount of elements in the rhombus matrix can be computed as follows.

n− 1
N = 2n + 1 + 2 (2i + 1)
i=0

= 4n + 2n(n − 1) + 1

= 2(n2 + n) + 1 (3)
We call a rhombus matrix with (2n + 1) diagonal elements as a (2n +
1)-order rhombus matrix. A (2n + 1)-order rhombus matrix consisting of
numbers from 0 to 2(n2 + n) is called a rhombus magic matrix. Fig. 2c
and d show the examples of the rhombus magic matrix.
The extraction function of Zhang and Wang [4] when n = 2 is
f (pi , pj ) = pi + 2pj (mod5), (4)

where (pi , pj ) is a pixel value pair of a cover image. We construct a


modulus function matrix according to Eq. (4) as shown in Fig. 1. We can
draw four adjacent 3-order rhombus magic matrixes with any element as
the center in the modulus function matrix, and the four adjacent 3-order
Fig. 2. Examples of rhombus matrix and rhombus magic matrix. (a) 3-order
rhombus matrixes consist of a 5-order rhombus matrix, as shown in
rhombus matrix; (b) 5-order rhombus matrix; (c) a 3-order rhombus magic
Fig. 3.
matrix; (d) a 5-order rhombus magic matrix.

3.2. Conclusions of the constructed rhombus magic matrix

The general pattern of a 5-order rhombus matrix consisting of four


adjacent 3-order rhombus magic matrixes in the modulus function ma­
trix is shown in Fig. 4, where O, Ai , Bi , Ci are the position labels and f(O),
f(Ai ),f(Bi ),f(Ci )∈ {0,1,2,3,4},(i = 1,2,3,4). The distances from O to the
√̅̅̅
positionsAi , Bi , and Ci are |OAi | = 1, |OBi | = 2, |OCi | = 2, where i = 1,
2, 3, 4. Next, three conclusions on the 5-order rhombus matrix will be
presented, which are the basis of the proposed scheme.
Conclusion 1 In the general pattern of the 5-order rhombus matrix,
for anys ∈ {0, 1, 2, 3, 4}/{f(O)}, we can get three positions:(A, B,
C),A ∈ {A1 , A2 , A3 , A4 },B ∈ {B1 , B2 , B3 , B4 },C ∈ {C1 , C2 , C3 , C4 }, which
satisfies the below condition: f(A) = f(B) = f(C) = s.
If we can prove that the three sets:
{f(A1 ),f(A2 ),f(A3 ),f(A4 ),f(O)},{f(B1 ),f(B2 ),f(B3 ),f(B4 ),f(O)}, and {
f(C1 ), f(C2 ), f(C3 ), f(C4 ), f(O)}
are all equal to the set {0, 1, 2, 3, 4}, then the conclusion is true.
Fig. 3. Example of drawing a rhombus magic matrix. According to Formula (4), we have
f (O) = f (pi , pj ) = pi + 2pj (mod5)

then,

Fig. 4. General pattern of a 5-order rhombus matrix.

3
S. Chen and C.-C. Chang Journal of Visual Communication and Image Representation 76 (2021) 103064

Table 1 Definition 1. In general, assuming A, B, C are three positions of the 5-


The solution of (A, B, C) with different s. order rhombus matrix centered on O, we define that(A, B, C)satisfies condi­
√̅̅̅ √̅̅̅
s (mod5) A B C tion T(O, 1, 2, 2, s) if |OA| = 1,|OB| = 2, |OC| = 2,and
f (O) A3=(pi, pj + 1) B4=(pi + 1, pj-1) C2=(pi-2, pj)
{
f (A) = f (B) = f (C) = s, if s ∕
= f (O)
f (O) + 1 A2=(pi + 1, pj) B2=(pi − 1, pj + 1) C1=(pi, pj-2) . (5)
f (A) ∕
= f (B) ∕
= f (C), if s = f (O)
f (O) + 2 A3=(pi, pj + 1) B1=(pi − 1, pj-1) C4=(pi + 2, pj)
f (O) + 3 A1=(pi, pj-1) B3=(pi + 1, pj + 1) C2=(pi-2, pj) From Conclusion 1, it knows that, given the position O = (pi ,pj ), for any
f (O) + 4 A4=(pi − 1, pj) B4=(pi + 1, pj-1) C3=(pi, pj + 2)
s∕= f(O), we can get three positions (A, B, C) in the 5-order rhombus matrix
√̅̅̅
centered on O satisfying condition T(O,1, 2,2,s). Ifs = f(O), we setA = (pi ,
pj + 1), B = (pi + 1, pj − 1), and C = (pi − 2, pj ); then, (A, B, C) satisfies
√̅̅̅
condition T(O, 1, 2, 2, s).
Conclusion 2 A, B, and C are three positions in the modulus function
√̅̅̅
matrix. If (A, B, C) satisfies condition T(O,1, 2,2,s), then we can recover
O according to (A, B, C).
Table 1 shows the solutions of (A, B, C) satisfying condition T(O, 1,
√̅̅̅
2, 2, s). It is obvious that the median of the first position coordinate
vector of the three positions (A, B, C) is pi , and the second position co­
ordinate vector of the three positions (A, B, C) is pj . Therefore, we can
recover O = (pi , pj ) according to (A, B, C).
Indeed, we can draw a triangle with A, B, and C as vertices in the
modulus function matrix. We define the median position O = (O (1),
′ ′

O (2)) of the triangle ΔABC , where


{ ′
O (1) = median((A(1), B(1), C(1))))
′ (6)
O (2) = median((A(2), B(2), C(2)))
For example, we consider O = (5, 6), that is pi = 5 and pj = 6,
andf(O) = 2. The four 3-order rhombus magic matrixes and the 5-order
rhombus matrix can be checked in Fig. 5 (a). If s = 3, then the position
coordinates of A, B, C satisfying condition T(O, A, B, C, s) are (6,6), (4,7),
and (5, 4). The median of the vector (6, 4, 5) is 5, and the median of
vector (6, 7, 4) is 6, that is O = (5, 6). Therefore, position O is just the

median position of the triangle ΔABC .


√̅̅̅
Conclusion 3 (A, B, C) satisfies condition T(O, 1, 2, 2, s), where
Fig. 5. Example of Conclusion 3.
s∕= f(O). If modify C to C within the 3-order rhombus magic matrix that

contains C and O, and (σ (A), σ(B), σ(C )) is one permutation of (A,B,C ).


′ ′

f (A1 ) = f (pi , pj − 1) = f (O) − 2(mod5),


Then, we can recover C from (σ (A), σ (B), σ(C )).

f (A2 ) = f (pi + 1, pj ) = f (O) + 1(mod5),


Since f(A) = f(B) ∕ = f(C ), it can determine the position of C’ when

receiving (σ (A), σ(B), σ (C )) by comparing the function values



f (A3 ) = f (pi , pj + 1) = f (O) + 2(mod5),
f (A4 ) = f (pi − 1, pj ) = f (O) − 1(mod5); f(σ(A)),f(σ (B)), and f(σ(C)). Then, draw a 1 × 2 rectangle with AB as the
diagonal line, and AA , BB represent the two edges of the rectangle,
′ ′

f (B1 ) = f (pi − 1, pj − 1) = f (O) − 3(mod5),


where |AA | = |BB | = 2. Let O1 be the midpoint of AA , and O2 be the
′ ′ ′

f (B2 ) = f (pi − 1, pj + 1) = f (O) + 1(mod5), √̅̅̅


midpoint of BB . We know that |AO1 | = 1,|BO1 | = 2,|BO2 | = 1,and |

√̅̅̅
f (B3 ) = f (pi + 1, pj + 1) = f (O) + 3(mod5), AO2 | = 2. Meanwhile, it also knows that there are only two positions
f (B4 ) = f (pi + 1, pj − 1) = f (O) − 1(mod5), that satisfy the above distance condition. Therefore, one of O1 and O2
just be O, and we can furthermore determine the position O based on the
position of C . Finally, we locate the position C according to Conclusion

f (C1 ) = f (pi , pj − 2) = f (O) − 4(mod5),
f (C2 ) = f (pi − 2, pj ) = f (O) − 2(mod5), √̅̅̅
1, which makes (A, B, C) satisfy conditionT(O, 1, 2, 2, f(A)).
For example, we know A=(6, 6), B=(4, 7), and C = (5, 4)satisfy
f (C3 ) = f (pi , pj + 2) = f (O) + 4(mod5),
condition T(O, A, B, C, 3)when O = (5, 6) from the last example. We
f (C4 ) = f (pi + 2, pj ) = f (O) + 2(mod5).
modify C = (5,4)to C = (5, 5) as shown in Fig. 5a and b. When receiving

It is clear that (A,B,C ), we draw a rectangle AA BB , and obtain O1 and O2 as shown in


′ ′ ′

{f (A1 ), f (A2 ), f (A3 ), f (A4 ), f (O)} = {0, 1, 2, 3, 4}, Fig. 5c. Since C’ is in the left of the rectangle, O1 is the center position O.
Finally, we recover (A, B, C) as shown in Fig. 5d.
{f (B1 ), f (B2 ), f (B3 ), f (B4 ), f (O)} = {0, 1, 2, 3, 4},
4. Proposed scheme
{f (C1 ), f (C2 ), f (C3 ), f (C4 ), f (O)} = {0, 1, 2, 3, 4}.
Therefore, the conclusion is true, and the solution of (A, B, C) is (A2 , In this section, this study proposes a reversible data hiding scheme
B2 , C1 ), (A3 , B1 , C4 ), (A1 , B3 , C2 ) or (A4 , B4 , C3 ). based on the rhombus magic matrix. The proposed scheme implements a
three-level embedding process in each pixel pair of an original cover

4
S. Chen and C.-C. Chang Journal of Visual Communication and Image Representation 76 (2021) 103064

image. The cover image is denoted by Ic , with the size of W × H, and Ic (i) the performance analysis.
denotes the i-th pixel value of the image Ic . For a pixel value pair O = Algorithm 2 (A, B, C) location (ABC_location)
(Ic (2i + 1), Ic (2i + 2)), it first embeds a 5-ary secret digit (s2i− 1 )5 by Input: pixel pair O = (pi , pi+1 ) and secret datasi
generating three shadow pixel pairs, A, B, and C, which are three posi­ √̅̅̅
Output: (A, B, C) satisfies condition T(O, 1, 2, 2, si )
tions of the 5-order rhombus matrix centered onOin the modulus func­ 1: d←si − f(pi , pi+1 ) (mod5);
√̅̅̅
tion matrix, and (A, B, C) satisfies condition T(O, 1, 2, 2, (s2i− 1 )5 ). 2: if d = 0 then
3: A←(pi , pi+1 + 1); B←(pi + 1, pi+1 − 1); C←(pi − 2, pi+1 );
Second, it embeds a 6-ary secret digit (s2i )6 by permuting the three
4: else if d = 1 then
shadow pixel pairs (A, B, C) and assigning them to three image shadow 5: A←(pi + 1, pi+1 ); B←(pi − 1, pi+1 + 1); C←(pi , pi+1 − 2);
images in a sequence. Third, it embeds a 5-ary secret data by modifying 6: else if d = 2 then
C to C within the 3-order rhombus magic matrix which contains C and O. 7: A←(pi , pi+1 + 1); B←(pi − 1, pi+1 − 1); C←(pi + 2, pi+1 );

After the data embedding, we obtain three shadow images I1 , I2 and I3 . 8: else if d = 3 then
9: A←(pi , pi+1 - 1); B←(pi + 1, pi+1 + 1); C←(pi - 2, pi+1 );
The receiver can extract the secret data and recover the original image
10: else if d = 4 then
only when obtaining all three shadow images. The detailed scheme is 11: A←(pi - 1, pi+1 ); B←(pi + 1, pi+1 - 1); C←(pi , pi+1 + 2);
described below. 12: end if
13: returnA,B, and C;
4.1. Data embedding

The necessary steps to embed the secret data are described in Al­
gorithm 1. We describe the process in four steps as follows. (3) Embedding initialization: Firstly, we initial the three shadow
Algorithm 1 Data Embedding images by setting I1 = Ic , I2 = Ic ,and I3 = Ic . For the first pixel
Input: W × H cover image Ic and secret data s value pair O = (Ic (1), Ic (2)), we draw a 5-order rhombus matrix
centered on Oand find the three positions A = (Ic (1), Ic (2)), B =
′ ′
Output: three shadow images I1 ,I2 , and I3
1: [Ic , Lloc ]←pre-processing(Ic ); (Ic (1), Ic (2)), andC = (Ic (1), Ic (2)) in the rhombus matrix, where
′′ ′′ ′′′ ′′′

2: s = (s1 )5 , (s2 )6 , (s3 )5 , (s4 )6 , ⋯, (s2l− 1 )5 , (s2l )6 ||(s2l+1 )5 , (s2l+2 )5 , ⋯(s2l+m )5 ; √̅̅̅
3: I1 ←Ic ; I2 ←Ic ; I3 ←Ic ;
(A, B, C) satisfies condition T(O, 1, 2, 2, s0 ), where s0 is an arbi­
4: [A, B, C] = ABC location((Ic (1), Ic (2)), s0 ); trary 5-ary digit and s0 ∕ = f(O). The processing to locate A, B and C
5: (I1 (1), I1 (2))←A; (I2 (1), I2 (2))←B;(I3 (1), I3 (2))←C; is described in Algorithm 2. In algorithm 2, it first computes the
6: for i = 1 to l difference d between secret data si and f(O), and then determines
7: s2i− 1 ←s2i− + s2i (mod5); the three positions A, B, and C according to Table 1. Then, (I1 (1),

1

8: [A, B, C] = ABC location ((Ic (2i + 1), Ic (2i + 2)), (s2i− 1 )5 ); I1 (2)) is modified to A in the first shadow image I1 , (I2 (1), I2 (2)) is

9: if s2i− = f(Ic (2i + 1), Ic (2i + 2)) then modified to B in the second shadow image I2 , and (I3 (1), I3 (2)) is

1 ∕
10: s2l+j(i) ←s2l+j(i) + s2i (mod5);C←modifying(C, (s2l+j(i) )5 ); modified to C in the third shadow image I3 . In the data extraction
′ ′

11: end if phase, the first two pixels of each shadow image can be used to
12: Table={A B C; A C B; B A C; B C A; C A B; C B A};
13: (I1 (2i + 1), I1 (2i + 2))←Table{(s2i )6 , 1};
determine their order.
14: (I2 (2i + 1), I2 (2i + 2))←Table{(s2i )6 , 2}; (4) Data embedding: After the embedding initialization, we succes­
15: (I3 (2i + 1), I3 (2i + 2))←Table{(s2i )6 , 3}; sively embed a 5-ary secret digit (s2i− 1 )5 and a 6-ary secret digit
16: end for (s2i )6 , based on the pixel value pair O = (Ic (2i + 1), Ic (2i + 2)),
17: return I1 , I2 , and I3 ;
where1⩽i⩽l. If s2i− 1 ∕ = f(O), then we are going to embed a 5-ary

secret digit (s2l+j(i) )5 , where j(i) represents the processing in the


(i + 1)-th pixel pair and j(i)⩽i. In order to protect the security of
secret digits (s2i− 1 )5 and (s2l+j(i) )5 , we first use (s2i )6 as the
encryption key to encrypt them to generate the encrypted secret
(1) Pre-processing: In Fig. 3, it is observed that if the pixel pair is digits:s2i− 1 = s2i− 1 + s2i (mod5), and s2l+j(i) = s2l+j(i) + s2i (mod5).
′ ′

located on the edge of the extraction matrix, a 5-order rhombus Then, we draw a 5-order rhombus matrix with the center of O and
matrix cannot be drawn. Therefore, the cover image Ic is first locateA = (Ic (2i + 1), Ic (2i + 2)), B = (Ic′′ (2i + 1), Ic′′ (2i + 2)), and
′ ′

preprocessed by modifying these special pixel values. If a pixel


C = (Ic (2i + 1), Ic (2i + 2)) in the rhombus matrix according to
′′′ ′′′

value pi is 0 or 1, it is transformed to pi + 2, and if a pixel value pi √̅̅̅


Algorithm 2, where(A, B, C) satisfies condition T(O,1, 2,2,s2i− 1 ).

is 254 or 255, it is transformed to pi − 2, and then record its


Next, the 6-ary numeral system is mapped to all permutations of
location information as parts of the secret data. Indeed, a few
(A, B, C), as shown in Table 2. Based on the mapping table, the
pixel values fall within these two intervals in most images. After
pixel value at the coordinates(2i + 1, 2i + 2) in each shadow
the pre-processing, we obtain the updated imageIc .
image is modified to A, B or C according to the secret digit (s2i )6 .
(2) Secret data converting: The secret dataswith the length of Ls is
For example, considering(s2i )6 = 3, (I1 (2i + 1), I1 (2i + 2)) is
split into two parts. One part is converted into a secret digit
sequence in a 5-ary numeral system, and the other is converted modified to B in the first shadow image I1 , (I2 (2i + 1), I2 (2i + 2))
into a secret digit sequence in a 6-ary numeral system. Then, the
secret datas is organized with the formation as follows: Table 2
Digit mapping table.
s = (s1 )5 , (s2 )6 , (s3 )5 , (s4 )6 , ⋯, (s2l− 1 )5 , (s2l )6 ||(s2l+1 )5 , (s2l+2 )5 , ⋯(s2l+m )5 ,
6-ary digit sequence 6-ary digit sequence

where landm satisfy conditions: (log2 5 + log2 6)⋅l + log2 5⋅m = Ls and m = 0 (A, B, C) 3 (B, C, A)
1 (A, C, B) 4 (C, A, B)
4l/5. That is, we convert the first log2 5⋅(l + m) bits of the secret data
2 (B, A, C) 5 (C, B, A)
into a 5-ary digit sequence and the rest log2 6⋅lbits into a 6-ary digit
sequence. The maximum length of the secret data will be evaluated in

5
S. Chen and C.-C. Chang Journal of Visual Communication and Image Representation 76 (2021) 103064

Table 3 the recovery image Ic = I1 and (Ic (1), Ic (2)) = O.


Sequence mapping rules table (SMRT). Algorithm 3 Data extraction and image recovery
(d1 , d2 , d3 ) 6-ary digit (d1 , d2 , d3 ) 6-ary digit Input: stego-images I1 ,I2 , andI3
Output: recover image Ic and secret datas
(1,2,4) 0 (2,4,1) 3
1:i←1; Ic ←I1 ;
(1,4,2) 1 (4,1,2) 4
2: while (I1 (2i + 1), I1 (2i + 2)) ∕
= (I2 (2i + 1), I2 (2i + 2))
(2,1,4) 2 (4,2,1) 5
3: P←(I1 (2i + 1), I1 (2i + 2));
4: Q←(I2 (2i + 1), I2 (2i + 2));
5: R←(I3 (2i + 1), I3 (2i + 2));
is modified to C in the second shadow image I2 , and (I3 (2i + 1), 6: If f(P) = f(Q) or f(Q) = f(R) or f(P) = f(R) then

I3 (2i + 2)) is modified to A in the third shadow image I3 . Finally, 7: (P, Q, R, s2l+j(i) )←recovery(P, Q, R) ;

8: end if
in the shadow image assigned withC, if s2i− 1 ∕ = f(O), then C is

9: O = (median((P(1), Q(1),R(1)), median((P(2), Q(2),R(2)));


modified to C within the 3-order rhombus magic matrix that

10: d1 ←(P(1) − O(1))2 + (P(2) − O(2))2 ;;
contains C and O, in which C satisfiesf(C ) = s2l+j(i) . After all the
′ ′ ′
11: d2 ←(Q(1) − O(1))2 + (Q(2) − O(2))2 ;
secret digits have been embedded, we obtain three shadow im­ 12: d3 ←(R(1) − O(1))2 + (R(2) − O(2))2 ;
ages I1 ,I2 , and I3 . 13: (s2i )6 ←SMRT(d1 , d2 , d3 );
14: if f(P) = f(Q) then
15: s2i− 1 ←f(P);

4.2. Data extraction and image recovery 16: else


17: s2i− 1 ←f(O);

When receiving all three shadow images and the modulus function 18: end if
19: s2i− 1 ←s’2i− 1 − s2i (mod5); s2l+j(i) ←s’2l+j(i) - s2i (mod5);
matrix, the cover image can be recovered and the secret data can be
20: (Ic (2i + 1), Ic (2i + 2))←O; i←i + 1;
extracted. The first step is to determine the order of the three shadow
21: end while
images. Extract the first pixel pair of each shadow image, and they are 21:s = (s1 )5 , (s2 )6 , (s3 )5 , (s4 )6 , ⋯, (s2l− 1 )5 , (s2l )6 ||(s2l+1 )5 , (s2l+2 )5 , ⋯(s2l+m )5 ;
denoted by (Iσ(1) (1), Iσ(1) (2)),(Iσ(2) (1), Iσ(2) (2)), and (Iσ(3) (1), Iσ(3) (2)), We 22: return Ic ands;
compute the median position O of the three positions (Iσ(1) (1), Iσ(1) (2)),
(Iσ(2) (1), Iσ(2) (2)), and (Iσ(3) (1), Iσ(3) (2)) in the modulus function matrix
by Conclusion 2 and compute their distances to O. Then, the shadow After determining the order of the shadow images I1 , I2 , and I3 , the
image with a distance of 1 is the first shadow image I1 , the shadow image processing of the data extraction and cover image recovery is described
√̅̅̅
with a distance of 2 is the second shadow image I2 , and the shadow in Algorithm 3. The data extraction procedure will successively extract
image with a distance of 2 is the third shadow image I3 . Then, we initial a 5-ary secret digit (s2l+j(i) )5 , a 6-ary secret digit (s2i )6 , and a 5-ary secret

Fig. 6. Illustration of data embedding.

6
S. Chen and C.-C. Chang Journal of Visual Communication and Image Representation 76 (2021) 103064

Table 4 4.4. Hierarchy security data hiding


Probability distribution of the value of d2.
P A B C C’ We consider a new application scenario called hierarchical security
data transmission. The sender sends a hierarchical security secret data to
2
d =0 0 0 0 1/3 × 4/5 × 1/5
multi-receivers through a multi-images based data hiding method. On
d2 = 1 1/3 0 0 1/3 × 4/5 × 1/5
the receiving side, a receiver can extract one part of the secret data
d2 = 2 0 1/3 0 1/3 × 4/5 × 2/5
independently from each shadow image, and the other parts of the secret
d2 = 4 0 0 1/3 × 1/5 1/3 × 4/5 × 1/5
data can be extracted only when they work together.
The proposed scheme can be used in the above scenario by adjusting
the embedding processing. Assume that the secret data s consists of s(1)
digit (s2i− 1 )5 from the below three pixel value pairs, P = (I1 (2i + 1), and s(2) , and expect that the receiver can extract s(1) from each shadow
I1 (2i + 2)), Q = (I2 (2i + 1), I2 (2i + 2)), and R = (I3 (2i + 1), I3 (2i + 2)) image independently, but we extract s(2) only when all the shadow im­
when they are not equal. First, if f(P) = f(Q), f(Q) = f(R) or f(P) = ages have been obtained. In the data embedding phase, we convert s(1)
f(R), which means we modified C to C in the data embedding phase to

into a 5-ary secret digit sequence and s(2) into a 6-ary secret digit
carry the secret digit (s2l+j(i) )5 . This is because if s2i− 1 = f(O) in the data sequence. Then the secret data is organized as the following formation:
′ ′

embedding phase, then f(P) ∕ = f(Q) ∕= f(R). Then, it recovers the modi­
fied pixel pair by Conclusion 3 and obtains the updated (P,Q,R), which s = (s(1) (1) (1) (2) (2) (2)
1 )5 , (s2 )5 , ⋯, (sl1 )5 ||(s1 )6 , (s2 )6 , ⋯, (sl2 )6

is a result of permuting (A, B, C) in the data embedding processing.


For the pixel pair(p2i+1 , p2i+2 ), if si = f(p2i+1 , p2i+2 ), we embed the
(1)

Meanwhile, it extracts the secret data as follows: iff(P) = f(Q), then
secret data s(1)
without encryption by generating three shadow pixel
s2l+j(i) = f(R); if f(Q) = f(R), then s2l+j(i) = f(P); if f(P) = f(R), then i
′ ′
√̅̅̅
pairs (A, B, C), which satisfies condition T(O, 1, 2,2, (s(1)
i )5 ), where O =
s2l+j(i) = f(Q). Second, it computes the median position O of the triangle

(p2i+1 , p2i+2 ), and embedsi′ by permuting (A, B, C). When si = f(p2i+1 ,


(2) (1)

ΔPQR and the distances, d1 = |OP|2 , d2 = |OQ|2 , and d3 = |OR|2 . Based


p2i+2 ), we directly assign the pixel pair (p2i+1 , p2i+2 ) to the three shadow
on the mapping rules shown in Table 3, it extracts the secret data (s2i )6
images and go to the next pixel pair. In the data extraction phase, we can
according to the sequence (d1 , d2 , d3 ). Third, it determines whether the
extract s(1) by calculating si = f(p2i+1 , p2i+2 ) from each shadow image,
(1)
values of the positions P, Q, and R in the modulus function matrix are
because s(1) are embedded into each shadow image without encryption.
equal. If yes, then s2i− 1 = f(P); if no, then s2i− 1 = f(O). Decrypt the
′ ′

But we can’t extract s(2) , because it can’t locate the center of the 5-order
secret data (s2i− 1 )5 and s2l+j(i) with (s2i− 1 )5 = s2i− − s2i (mod5) and
′ ′ ′
1
rhombus matrix with only one shadow image. When obtaining all three
(s2l+j(i) )5 = s2l+j(i) − s2i (mod5). Fourth, it recovers a pixel pair of the

shadow images, we can extract s(2) by adjusting Algorithm 3 corre­
cover image by modifying the pixel pair (Ic (2i + 1), Ic (2i + 2)) to O. sponding to the embedding processing.
We obtain the rearranged s when all the secret digits are extracted.
Then, we recover the original formation of the secret data and separate 5. Experimental results and analysis
the location information of the special pixels. Finally, we recover their
real values of the special pixels and obtain the cover image Ic . In this section, we first analyze the embedding capacity and image
quality of the proposed method in theory, and then we further demon­
4.3. Example of the proposed scheme strate the well performance of the proposed method by experimental
results and comparison. Finally, we analyze the security of the proposed
Fig. 6 gives an example of data embedding, where we omit embed­ method.
ding initialization, to further describing the proposed scheme. We take
the first cover pixel pair (5, 6) to illustrate the data embedding and
extraction. For the secret digit s1 = (1)5 , s2 = (3)6 , and s3 = (2)5 , s1 = 5.1. Performance analysis and experimental results
(1)5 ands3 = (2)5 are encrypted with the key s2 = (3)6 , i.e., s1 = 1 +

3(mod5) = 4, ands3 = 2 + 3(mod5) = 0. Draw a 5-order rhombus ma­


′ In this subsection, we discuss the embedding capacity and the quality
trix with a center of O = (5,6). We obtain three positionsA = (5, 7), B = of the image shadows. Although the proposed method generates three
√̅̅̅ shadow images after data embedding, it carries the secret data as a
(4, 5), and C = (7, 6), where (A, B, C) satisfies condition T(O, 1, 2, 2,
whole. Therefore, we analyze the maximum embedding capacity of the
(4)5 ). Since (3)6 maps to the sequence (B, C, A) in Table 2, (I1 (1), I1 (2)) is
proposed scheme. In the data embedding procedure, we first implement
modified to (4, 5), (I2 (1), I2 (2)) is modified to (7, 6), and (I3 (1), I3 (2)) is
two levels embedding based on each cover pixel pair, and successively
modified to (5, 7). Finally, since C is assigned toI2 , then (I2 (1), I2 (2)) is
embed a 5-ary secret digit and a 6-ary secret digit into each shadow
modified to (6, 7), where f(6, 7) = 0 = s3 .

image. Then, for pixel pairO = (Ic (2i + 1),Ic (2i + 2)), if s2i− 1 ∕
= f(O), we

In the data extraction phase, after determining the order of the three
are going to embed a 5-ary secret digit into each shadow image. In the 5-
shadow images, we locate three positions P = (4, 5), Q = (6, 7), and R =
ary number system, the probability of s2i− 1 ∕ = f(O) is 4/5, so the prob­

(5, 7) in the modulus function matrix based on the first pixel pair of each
ability of embedding the third digit is 4/5. Therefore, in theory, the
shadow image. Because f(P) = f(R) = 4 and f(Q) = 0, it can be known
embedding capacity (EC) and the embedding rate (ER) of the proposed
that Q is modified in the data embedding procedure. We recover Q= (7,
scheme with W × H cover image can be calculated as follows.
6) by Conclusion 3 and extract the secret digit s3 = f(6, 7) = 0, then

compute the median position O of triangle ΔPQR . The result is (5, 6). EC = 1/2 × W × H × (log2 5 + log2 6 + 4/5 × log2 5)
Sincef(A) = f(B) = f(C) = 4, we extract the secret digit s1 = 4. We

(7)
calculate the sequence (|OP|2 ,|OQ|2 ,|OR|2 ), and the result is (2, 4, 1). We
= 3.3822WH(bits)
then extract the secret digit s2 = (3)6 based on Table 3. Then, we decrypt
ER = EC/(3 × W × H) (8)
s1 and s3 with the key s2 = (3)6 , i.e., s1 = 4 − 3(mod5) = 1, and s3 =
′ ′

0 − 3(mod5) = 2. Finally, the first pixel pair of the recovery cover image That is, the allowed maximum length of the secret data is 3.3822WH
is O, i.e., (5, 6). bits.
Next, we analyze the quality of the shadow images using the peak
signal-to-noise ratio (PSNR). We modify each pixel pair (Ic (i, 2j − 1),

7
S. Chen and C.-C. Chang Journal of Visual Communication and Image Representation 76 (2021) 103064

Fig. 7. PSNR values of three shadow images with different embedding payloads and their expected values.

Ic (i, 2j)) of the cover image to (Ic (i,2j − 1),Ic (i,2j)), (Ic′′ (i,2j − 1),Ic′′ (i,2j)),
′ ′

W ∑
∑ H
and (Ic (i, 2j − 1), Ic (i, 2j)) to carry the secret digit si,j , and then they are
′′′ ′′′
MSE = 1/(W × H) × (Ist (i, j) − Ic (i, j))2
equally assigned to the three shadow images, where Ic (i, j) denotes the i=1 j=1

pixel value of location(i, j). Therefore, we can show that the qualities of
the three image shadows are the same. We use Ist to represent the
H/2
W ∑

= 1/(W × H) × d2 , (9)
shadow image and use (Ist (i, 2j − 1), Ist (i, 2j)) to denote the pixel pair of i=1 j=1
the shadow image. The mean square error (MSE) is defined as follows.

8
S. Chen and C.-C. Chang Journal of Visual Communication and Image Representation 76 (2021) 103064

Table 5
Comparison results in terms of PSNR and embedding capacity.
Methods Hierarchy property Metric Lena Peppers Barbara Gold hill Boat
1
Chang et al.[19] No PSNR (dB) 39.89 39.94 39.89 39.9 39.89
PSNR2 (dB) 39.89 39.94 39.89 39.9 39.89
PNNR* 39.89 39.94 39.89 39.9 39.89
ER(bpp) 1.53 1.52 1.53 1.53 1.53
EC(bit) 802,895 799,684 802,888 802,689 802,706
Lu et al. [23] No PSNR1 (dB) 49.13 49.11 49.14 49.17 49
PSNR2 (dB) 49.12 49.08 49.11 49.09 49.07
PNNR* 49.13 49.09 49.12 49.13 49.03
ER(bpp) 1.00 1.00 1.00 1.00 1.00
EC(bit) 524,288 524,288 524,288 524,288 524,288
Qin et al. [21] No PSNR1 (dB) 52.11 51.25 52.12 52.12 52.11
PSNR2 (dB) 41.58 41.52 41.58 41.58 41.57
PNNR* 46.84 46.42 46.85 46.85 46.84
ER(bpp) 1.16 1.16 1.16 1.16 1.16
EC(bit) 608,174 608,174 608,174 608,174 608,174
Lin et al. [26] No PSNR1 (dB) 49.39 49.38 49.38 49.38 49.38
PSNR2 (dB) 45.55 45.55 45.56 45.55 45.55
PSNR* (dB) 47.47 47.46 47.47 47.46 47.46
ER 1.25 1.25 1.25 1.25 1.25
EC(bit) 655,360 655,360 655,360 655,360 655,360
Proposed Yes PSNR1 (dB) 48.73 48.71 48.71 48.72 48.72
PSNR2 (dB) 48.72 48.71 48.72 48.71 48.72
PSNR3 (dB) 48.71 48.73 48.73 48.72 48.71
PSNR*(dB) 48.72 48.72 48.72 48.72 48.72
ER(bpp) 1.13 1.13 1.13 1.13 1.13
EC(bit) 886,627 886,531 886,627 886,627 886,371

where d2 = [(Ist (i, 2j − 1) − Ic (i, 2j − 1))2 + ((Ist (i, 2j) − Ic (i, 2j))2 ]. Then, image.
the PSNR value is defined as follows. To further demonstrate the well performance of the proposed
scheme, six standard images of size 512 × 512 are used in our experi­
PSNR = 10log10 (2552 /MSE)(dB). (10) ment as the original cover images. We first evaluate the quality of the
shadow images in the test images with different embedding payloads,
Because (Ist (i, 2j − 1), Ist (i, 2j)) is a position of the 5-order rhombus
and the experimental results are shown in Fig. 7. PSNR1, PSNR2, and
matrix with the center of O = (Ic (i,2j − 1),Ic (i,2j)), the possible values of
PSNR3 denote the PSNR value curves of the three shadow images when
(Ist (i, 2j − 1), Ist (i, 2j)) are A, B, C, and C , where (A, B,C) satisfies con­

√̅̅̅ the embedding payload varies from 0.05EC to EC. From the experi­
dition T(O, 1, 2, 2, si,j ) and C is within the 3-order rhombus magic

mental results, it is noted that the PSNR values of all the shadow images
matrix that contains C and O. In the data embedding process, if C is are more than 48.7 dB, which are close to the expected PSNR value with
assigned to (Ist (i, 2j − 1), Ist (i, 2j)) and then is modified to O, then d2 is 0. maximum payload. All the test images have approximate changing
Thus, the probability of d2 = 0 can be calculated as follows: curves which coincide with the expected values of PSNR according to
′ Eq. (13). It is obvious that the proposed scheme not only obtains a higher
P(d2 = 0) = P((Ist (i, 2j − 1), Ist (i, 2j)) = C) × P(C = O)
(11) embedding capacity, but also maintains a high quality of shadow
= 1/3 × (4/5 × 1/5).
images.
If A is assigned to (Ist (i, 2j − 1), Ist (i, 2j)), or C is assigned to
(Ist (i, 2j − 1), Ist (i, 2j)) and then is modified to A, then d2 is 1. If B is
assigned to (Ist (i, 2j − 1), Ist (i, 2j)), or C is assigned to (Ist (i, 2j − 1), 5.2. Comparison experiment and analysis
Ist (i, 2j)) and then is modified to B, then d2 is 2. If C is assigned to
Different with the existing dual-image-based RDH method, the pro­
(Ist (i, 2j − 1), Ist (i, 2j)) and si,j = f(O), or C is assigned to (Ist (i, 2j − 1),
posed RDH based on three shadow images can be used to hierarchy
Ist (i, 2j)) and then remains unchanged, then d2 is 4. Similar to Eq. (11),
security data transmission, which is described in Section 4.4. In such
we can calculate the other probability P(d2 = i), where i = 1, 2, 4. The
application scenario, each receiver can independently recover the
complete probability distribution of d2 is shown as in Table 4. Therefore,
common secret data, but the sharing secret data can be extracted only
the expected MSE value and PSNR value with a payload of αEC (0⩽α⩽1)
when they work together.
can be calculated as follows:
Although the proposed method is based on three shadow images,
H/2
W ∑
∑ which is different from the exiting dual-image-based methods, they are
E(MSE) = α/(W × H) × {1/3 + 2/3 + 1/3 × [4/5 + 4/5 × (1/5 both multi-image-based reversible data hiding scheme. Thus, to further
i=1 j=1
evaluate the proposed method, we compare it with some relative
+ 2/5 × 2 + 4/5)]} existing dual-image-based data hiding methods, including Chang et al.
[19], Qin et al. [21], Lu et al. [23], and Lin et al. [26]. Table 5 shows the
= 131α/150 (12) PSNR values of each stego-image and the embedding capacity, in which
the PSNR1, PSNR2, and PSNR3 represent the PSNR values of the first, the
E(PSNR) = 10log10 (2552 /E(MSE)) second, and the third stego-images, respectively. Fig. 8 shows the
average PSNR values with different embedding payloads. The embed­
= 48.72 + 10log10 (1/α)(dB). (13) ding capacity of proposed method is about 886,620bits, the embedding
From the result of Eq. (13), it knows that the expected PSNR value of ratio is 1.13bpp, and the average PSNR value with maximum embedding
each shadow image is 48.72 dB with the maximum embedding payload, payload is 48.72 dB. Chang et al. [19] has a high embedding ratio, but
i.e., α = 1. This means the proposed scheme has a high-quality shadow the PSNR values of stego-images are lower than other methods, espe­
cially with a high embedding payload. The embedding ratio of the

9
S. Chen and C.-C. Chang Journal of Visual Communication and Image Representation 76 (2021) 103064

Fig. 8. Comparison in average PSNRs with different embedding payload.

Table 6
Entropy and relative entropy of cover image and their shadow images with different payloads.
Images Payload H(Ic ) H(I1 ) H(I2 ) H(I3 ) D(Ic ||I1 ) D(Ic ||I2 ) D(Ic ||I3 )

Lena EC/4 7.4455 7.4462 7.4462 7.4461 0.0151 0.0098 0.0083


EC/2 7.4455 7.4468 7.4468 7.4469 0.0348 0.0460 0.0290
3EC/4 7.4455 7.4474 7.4473 7.4476 0.0552 0.0857 0.0877
Peppers EC/4 7.5944 7.5949 7.5950 7.5950 0.0149 0.0077 0.0138
EC/2 7.5944 7.5963 7.5962 7.5962 0.0536 0.0606 0.0579
3EC/4 7.5944 7.5966 7.5966 7.5967 0.0730 0.0825 0.0617
Baboon EC/4 7.3579 7.3580 7.3581 7.3580 0.0032 0.0021 0.0031
EC/2 7.3579 7.3582 7.3582 7.3581 0.0135 0.0068 0.0169
3EC/4 7.3579 7.3583 7.3584 7.3583 0.0424 0.0187 0.0515
Boat EC/4 7.1914 7.1939 7.1937 7.1939 0.0148 0.0086 0.0066
EC/2 7.1914 7.1967 7.1962 7.1966 0.0734 0.0285 0.0424
3EC/4 7.1914 7.1995 7.1993 7.1995 0.1097 0.0751 0.0490

proposed method is close to Qin et al. [21]. The average PSNR values of and the average PSNR with maximum embedding payload is about 49.1
[21] with maximum embedding payload is about 46.80 dB, and there dB. From the experimental results, it can be seen that the proposed
are significant differences in the quality of the two stego-images. From method performance better well than [23] both on embedding capacity
the average PSNR comparison results in Fig. 8, it can be seen that the and image quality. The embedding ratio of Lin et al. [26] is higher than
image quality of the proposed method is better than [21] with the same the proposed, but the PSNR values of the two stego-images are 49.38 dB
embedding payload. The embedding ratio of Lu et al. [23] is 1.00 bpp, and 45.55 dB. They proposed a security enhancement method to

10
S. Chen and C.-C. Chang Journal of Visual Communication and Image Representation 76 (2021) 103064

Table 7
Statistical evaluation of the proposed scheme (SD and CC).
Images Standard deviation (SD) Correlation coefficient (CC)

Ic I1 I2 I3 Ic &I1 Ic &I2 Ic &I3

Lena 47.8538 47.8597 47.8649 47.8654 0.9998 0.9998 0.9998


Peppers 53.9609 53.9659 53.9691 53.9721 0.9998 0.9999 0.9999
Baboon 42.3011 42.3103 42.3126 42.3084 0.9998 0.9998 0.9998
Boat 46.6772 46.6883 46.6838 46.6878 0.9998 0.9998 0.9998

Table 8
Statistical evaluation of the proposed scheme (HC and VC).
Images Horizontal correlation (HC) Vertical correlation (VC)

Ic I1 I2 I3 Ic I1 I2 I3

Lena 0.9718 0.9714 0.9714 0.9714 0.9850 0.9846 0.9846 0.9846


Peppers 0.9788 0.9784 0.9785 0.9785 0.9808 0.9805 0.9805 0.9805
Baboon 0.8665 0.8660 0.8660 0.8661 0.7628 0.7624 0.7624 0.7624
Boat 0.9381 0.9377 0.9378 0.9377 0.9713 0.9709 0.9710 0.9709

Fig. 9. PVD histograms of the cover image and their shadow images.

11
S. Chen and C.-C. Chang Journal of Visual Communication and Image Representation 76 (2021) 103064

implement the balance of the image quality in which the PSNR value is PVD histogram of an image to detect the probability of the data steg­
47.02 dB, but the cost is that the sender and receiver must share a secret anography in it. We compute the different values of each pixel pair in a
key. cover image and its shadow image, and compare their shapes of the PVD
histograms. The experimental results shown in Fig. 9 indicate that there
5.3. Security analysis is not substantial distortion in the shape of the PVD histograms after the
data embedding. Thus, the proposed method preserves the smoothness
In this subsection, we analyze the security of the proposed scheme. of the shadow images.
First, as a multi-image-based data hiding scheme, it must ensure the
receiver can’t extract the unauthorized data without obtaining all the 6. Conclusions
shadow images. That is, the receiver can’t obtain any information of the
secret data in the normal case, and can only extract s(1) in the hierar­ In this paper, a novel reversible data hiding scheme was proposed
chical security case. Second, as a data hiding scheme, we will evaluate based on three shadow images using rhombus magic matrix. For each
the performance of the shadow image against the steganalysis. pixel pair in the original cover images, it drew four adjacent 3-order
In the proposed scheme, except for the hierarchical security case, we rhombus magic matrixes based on a 256 × 256 modulus function ma­
use the 6-ary secret digit sequence as encryption key to protect the se­ trix, which construct a 5-order rhombus magic matrix centered on the
curity of 5-ary secret digits, i.e.s2i− 1 = s2i− 1 + s2i (mod5), ands2l+j(i) =
′ ′
pixel pair coordinates. Then, the proposed method implemented a 3-
s2l+j(i) + s2i (mod5), 1⩽i⩽l. When capturing one of the shadow images and level secret data embedding based on the 5-order rhombus matrix and
generated three shadow images. In addition to the normal RDH, the
obtaining the extraction function, an attacker can extract the ciphertext
proposed method can support a hierarchical security data transmission
of the secret data that is represented as a 5-ary secret digit sequence.
scenario by adjusting the embedding processing. The experimental re­
They cannot, however, extract the other parts of the secret data that is
sults and analysis show that the proposed method achieves a high
represented as a 6-ary secret digit sequence, because the attacker does
embedding capacity with the maximum of 886,627 bits, and the PSNR
not have all the three pixel pairs from the same position of the three
values of three shadow images with maximum payload are all higher
shadow images to map s2i , 1⩽i⩽l. Therefore, an attacker is unable to
than 48.72 dB. This also used a security analysis to show that the pro­
decrypt the encrypted 5-ary secret digit sequences and obtains the secret
posed method is statistically secure. In the future, we will intend to
data. In the hierarchical security case, the receiver can extract the part 1
introduce the content of the access structure secret sharing into the
of the secret data s(1) using the extraction function from one shadow
multi-image-based reversible data hiding method for more application
image, but can’t extract the secret part 2 of the secret data s(2) without scenarios.
obtaining all the shadow images. This is because the receiver can locate
the center of the 5-oder rhombus matrix and obtains the sequence (d1 ,
d2 , d3 ) to map the secret data with less than three shadow images. Declaration of Competing Interest
Then, we analyze the security of the proposed method from a steg­
analysis point of view, which contains relative entropy analysis, statis­ The authors declare that they have no known competing financial
tical analysis, and pixel value difference (PVD) histogram analysis. interests or personal relationships that could have appeared to influence
Relative entropy is a popular security measure used to analyze the data the work reported in this paper.
hiding scheme proposed by Cachin [30]. Let Pc and Pst be the probability
measures for original image Ic and stego-image Ist over space G. The Acknowledgements
relative entropy D(Ic ||Ist ) is defined as Eq. (14):
∑ This work was supported by the Education-Scientific Project for
D(Ic ||Ist ) = Pc (x)log2 [Pc (x)/Pst (x)], (14)
x∈G Youth Teacher of Fujian province [grant numbers JT180618]; and the
Engineering Research Center for ICH Digitalization and Multi-Source
where G = {0, 1, 2, ⋯, 255}. A data hiding method is called ε-secure Information Fusion of Fujian Province University [grant numbers FJ-
against a passive attacking if D(Ic ||Ist )⩽ε. If ε = 0, the method is called ICH 201901].
perfect secure, that is Pc and Pst coincide. We take four standard images
sized 512 × 512 as the test images, and the experimental results with References
different payloads are shown in Table 6. In our experiment, the entropies
of the three image shadows are all very close to the entropy of the cover [1] C.K. Chan, L.M. Chen, Hiding data in images by simple LSB substitution, Pattern
image in each test image. Furthermore, the relative entropy values of the Recognit. 37 (3) (2004) 469–474.
[2] R. Crandall, Some notes on steganography, Posted on steganography mailing List,
cover image and three shadow images vary from 0.0021 to 0.1097 [Online]; 1998. Available: http://os.inf.tu-dresden.de/~westfeld/crandall.pdf.
which is close to zero. Therefore, we can conclude that the proposed [3] J. Fridrich, D. Soukal, Matrix embedding for large payloads, IEEE Trans. Inf.
scheme is secure from an entropy point of view. Forensics Security 1 (3) (2006) 390–395.
[4] X. Zhang, S. Wang, Efficient steganographic embedding by exploiting modification
A statistical analysis is a conventional method of steganalysis that direction, IEEE Commun. Lett. 10 (11) (2006) 781–783.
analyzes the statistical distortion after data embedding by some image [5] A. Ker, Improved detection of LSB steganography in grayscale images, in:
statistical metric, such as standard deviation, horizontal and vertical International workshop on information hiding, Springer, Berlin, Heidelberg, 2004,
pp. 97–115.
correlation, and correlation coefficient. The fewer distortions, i.e., the [6] Q. Mao, A fast algorithm for matrix embedding steganography, Digital Signal
less difference between the before and after data embedding, means it is Process. 25 (1) (2014) 248–254.
more secure from a statistical point of view. According to Table 7, the [7] H.J., Kim. C. Kim, Y. Choi, S. Wang, X. Zhang, Improved modification direction
methods, Comput.60 (2016) 319–325.
divergences between the standard of the cover image and their shadow [8] J. Tian, Reversible data embedding using a difference expansion, IEEE Trans.
images are not significant, as they are less than 0.05. This is furthermore Circuits Syst. Video Technol. 13 (8) (2003) 890–896.
verified by the correlation coefficient values, which are very close to 1. [9] Z.C. Ni, Y.Q. Shi, N. Ansari, W. Su, Reversible data hiding, IEEE Trans. Circuits
Syst. Video Technol. 16 (3) (2006) 354–363.
The results from Table 8 show that the shadow images also keep the
[10] X. Li, J. Li, B. Li, B. Yang, High-fidelity reversible data hiding scheme based on
correlation between neighboring pixels after the data embedding. pixel-value-ordering and prediction-error expansion, Signal Process. 93 (2013)
The value differences between neighboring pixels represent the 198–205.
smoothness of an image, and we can use the pixel value differences [11] A.M. Alattar, Reversible watermark using the difference expansion of a generalized
integer transform, IEEE Trans. Image Process. 13 (8) (2004) 1147–1156.
(PVD) histogram to show it. Usually, the data embedding operation will [12] O.M. Al-Qershi, B.E. Khoo, Two-dimensional difference expansion (2D-DE) scheme
destroy the shape of the PVD histogram. We can examine the shape of with a characteristics-based threshold, Signal Process. 93 (1) (2013) 154–162.

12
S. Chen and C.-C. Chang Journal of Visual Communication and Image Representation 76 (2021) 103064

[13] P. Tsai, Y.-C. Hu, H.-L. Yeh, Reversible image hiding scheme using predictive [21] C. Qin, C.C. Chang, T.J. Hsu, Reversible data hiding scheme based on exploiting
coding and histogram shifting, Signal Process. 89 (6) (2009) 1129–1143. modification direction with two steganographic images, Multimed. Tools Appl. 74
[14] W.-L. Tai, C.-M. Yeh, C.-C. Chang, Reversible data hiding based on histogram (2015) 5861–5872.
modification of pixel differences, IEEE Trans. Circuits Syst. Video Technol. 19 (6) [22] T.C. Lu, J.H. Wu, C.C. Huang, Dual-image-based reversible data hiding method
(2009) 906–910. using center folding strategy, Signal Process. 115 (2015) 195–213.
[15] W. He, K. Zhou, J. Cai, L. Wang, G. Xiong, Reversible data hiding using multi-pass [23] T.C. Lu, C.Y. Tseng, J.H. Wu, Dual imaging-based reversible hiding technique using
pixel value ordering and prediction-error expansion, J. Vis. Commun. Image LSB matching, Signal Process. 108 (2015) 77–89.
Represent. 49 (11) (2017) 351–360. [24] H. Yao, C. Qin, Z. Tang, Y. Tian, Improved dual-image reversible data hiding
[16] F. Peng, X.L. Li, B. Yang, Improved PVO-based reversible data hiding, Digital Signal method using the selection strategy of shiftable pixels’ coordinates with minimum
Process. 25 (2014) 255–265. distortion, Signal Process. 135 (1) (2017) 26–35.
[17] C.C. Chang, T.D. Kieu, Y.C. Chou, Reversible data hiding scheme using two [25] I.F. Jafar, K.A. Darabkh, R.T. Al-Zubi, R.R. Saifan, An efficient reversible data
steganographic images, Tencon. 2007-2007 IEEE Region 10 Conference, Taibei, hiding algorithm using two steganographic images, Signal Process. 128 (11) (2016)
IEEE, 2007, pp. 1-4. 98–109.
[18] C.-C. Chang, Y.-C. Chou, and T. D. Kieu, Information hiding in dual images with [26] J.Y. Lin, Y. Liu, C.C. Chang, A real-time dual-image-based reversible data hiding
reversibility, in Proc. 3rd Int. Conf. Multimedia Ubiquitous Eng., IEEE, Jun. 2009, scheme using turtle shells, J. Real-Time Image Proc. 16 (3) (2019) 673–684.
pp. 145-152. [27] S. Shastri, V. Thanikaiselvan, Dual image reversible data hiding using trinary
[19] C.C. Chang, T.C. Lu, G. Horng, Y.H. Huang, Y.M. Hsu, A high payload data assignment and centre folding strategy with low distortion, J. Vis. Commun. Image
embedding scheme using dual stego-images with reversibility, in: Proceedings of R. 61 (2019) 130–140.
the Third International Conference on Information, Communications and Signal [28] H. Yao, F. Mao, Z. Tang, et al., High-fidelity dual-image reversible data hiding via
Processing, 2013, pp. 1–5. prediction-error shift, Signal Process. 170 (2020), 107447.
[20] C.-F. Lee, Y.-L. Huang, Reversible data hiding scheme based on dual stegano- [29] T.C. Lu, T.C. Chang, J.J. Shen, An effective maximum distortion controlling
images using orientation combinations, Telecommun. Syst. 52 (4) (2013) technology in the dual-image-based reversible data hiding scheme, IEEE Access 8
2237–2247. (2020) (May 2020) 90824–90837.
[30] C. Cachin, An information-theoretic model for steganography, Lect. Notes Comput.
Sci. 1525 (1998) 306–318.

13

You might also like