A steganographic method for digital images with four-pixel differencing and modified LSB substitution
J. Vis. Commun. Image R.
journalhomepage:www.elsevier.com/locate/jvci
A steganographic method for digital images with four-pixel differencing and modified LSB substitution
a Xin Liao b ⇑ , Qiao-yan Wen , Jie Zhang
b State Key Laboratory of Networking and Switching Technology, Beijing University of Posts and Telecommunications, Beijing 100876, China School of Science, Beijing University of Posts and Telecommunications, Beijing 100876, China
article info
abstract
Article history: To improve the embedding capacity and provide an imperceptible visual quality, a novel steganographic Received 13 December 2009
method based on four-pixel differencing and modified least significant bit (LSB) substitution is presented. Accepted 22 August 2010 Available online 27 August 2010
The average difference value of a four-pixel block is exploited to classify the block as a smooth area or an edge area. Secret data are hidden into each pixel by the k-bit modified LSB substitution method, where k is decided by the level which the average difference value falls into. Readjustment will be executed to
Keywords: Steganography
guarantee the same level that the average difference value belongs to before and after embedding, and Four-pixel differencing
to minimize the perceptual distortion. By proving that the readjusting procedure works, a theoretical Modified LSB substitution
proof is given to justify our method succeeded in embedding and extracting. Our experimental results Data hiding
have shown that the proposed method not only has an acceptable image quality but also provides a large Pixel-value differencing
embedding capacity.
Error block Ó 2010 Elsevier Inc. All rights reserved. Embedding capacity Imperceptible
1. Introduction the amount of bits to be embedded in each pixel is variable [9– 16] . In 2003, Wu and Tsai proposed a novel steganographic method
Internet is a popular communication channel nowadays. Trans- that uses the difference value between two neighboring pixels to mitted data are easy to be copied or destroyed by unauthorized per-
determine how many secret bits should be embedded [9] . Chang sons. Therefore, how to transmit data secretly by internet becomes
and Tseng proposed a side match approach to embed secret data, an important topic. Encryption may provide a safe way, which
where the number of bits to be embedded in a pixel is decided transforms data into a ciphertext via cipher algorithms [1] . How-
by the difference between the pixel and its upper and left side pix- ever, it makes the messages unreadable and suspicious enough to
els [10] . In 2005, Wu et al. presented a novel steganographic meth- attract eavesdroppers’ attention. To overcome this problem, stega-
od, which combined pixel-value differencing and LSB substitution nography offers different approaches to transmitting secret mes-
[11] . Park et al. proposed a new method based on the difference va- sages [2,3] . Steganography is a technique that imperceptibly hides
lue between two pixels adjacent to the target pixel [12] . In 2006, secret data into cover media by altering its most insignificant com-
Yang and Weng proposed a multi-pixel differencing method that ponents for covert communication, such that an unauthorized user
uses three difference values in a four-pixel block to determine will not be aware of the existence of secret data [4] .
how many secret bits should be embedded [13] . The method in The most common and well-known steganographic method is
[14] provided the combination of multi-pixel differencing and called least significant bit (LSB) substitution, which embeds secret
LSB substitution to improve the work in [13] , but the embedding data by replacing k LSBs of a pixel with k secret bits directly [5] .
capacity is far less than that of Wu et al.’s method. In 2008, Wang Many optimized LSB methods have been proposed to improve this
et al. presented a steganographic method that utilizes the remain- work [6–8] . The human perceptibility has a property that it is sen-
der of two consecutive pixels to record the information of secret sitive to some changes in the pixels of the smooth areas, while it is
data [15] . Yang et al. proposed an adaptive LSB steganographic not sensitive to changes in the edge areas. Not all pixels in a cover
method using the difference value of two consecutive pixels to dis- image can tolerate equal amount of changes without causing
tinguish between edge areas and smooth areas [16] . All pixels are noticeable distortion. Hence, to improve the quality of stego
embedded by the k-bit modified LSB substitution method, where k images, several adaptive methods have been proposed in which
is decided by the range which the difference value belongs to [16] . However, some of them seem not to consider the features of
⇑ Corresponding author. edge sufficiently [9,11,15,16] . The methods in [10,12] have over- E-mail address: liaoxinbupt@gmail.com (X. Liao).
come the drawback, but unfortunately they would result in the 1047-3203/$ - see front matter Ó 2010 Elsevier Inc. All rights reserved.
doi: 10.1016/j.jvcir.2010.08.007
X. Liao et al. / J. Vis. Commun. Image R. 22 (2011) 1–8
propagated error and lower embedding capacity. In order to pro- to a smooth area), then k = k l . Otherwise, D belongs to vide better stego-image quality and larger embedding capacity, a
‘‘higher-level” (i.e., the block belongs to an edge area), then novel steganographic method improving the multi-pixel differenc-
k=k h . In order to succeed in the readjusting procedure, we ing based on modified LSB substitution is presented in this paper.
apply the restrictions 2 k l 6 T62 k h and 1 6 k l ,k h 6 5. Similar to [13,14] , a four-pixel block with three difference values
Step 3: Verify whether the block belongs to ‘‘Error Block”. If not, is sufficiently considered. The average value of three difference val-
continue to next step. Otherwise, restart from Step 1. ues is exploited to distinguish between edge areas and smooth areas, and to estimate how many secret bits will be embedded into
Definition 1. Assume y max = max{y 0 ,y 1 ,y 2 ,y 3 }, the block is called the block. Embed secret bits into each pixel in the block by modi-
‘‘Error Block” if and only if D 6 T and y max min > 2T + 2. fied LSB substitution method. Readjustment will be executed to ex-
For instance, assume T = 6. A block with four neighboring pixel tract secret data exactly and to minimize the perceptual distortion
values (139, 140, 140, 154) belongs to ‘‘Error Block”, because resulted from embedding. The experimental results show that our
D¼ 17 3 < 6 and 154
proposed method provides a large embedding capacity, and the NOT used to embed secret bits, which will be explained in Section 3 . quality of the stego image is improved as well.
Step 4: Convert y i to be y 0 i by the k-bit common LSB substitution the embedding and extracting algorithms of the proposed method
The remainder of this paper is organized as follows. In Section 2 ,
method (0 6 i 6 3), respectively. is presented. In the next section, we show that the proposed meth-
Step 5: Apply the k-bit modified LSB substitution method to y i 0 , od succeed in embedding and extracting by proving that the read-
be the result (0 6 i 6 3), respectively. justing procedure works. The experimental results will be in
and let y 00 i
Step 6: This step
is
called
‘‘readjusting procedure”. Let
Section 4 . Finally, conclusions are given in Section 5 .
y b i ¼y
i 00 ; 0 6 i 6 3; l
and search
ð y c 0 ; c y 1 ; c y 2 ; c y 3 Þ such that
(1) b
D and D belong to the same level, where b D¼
y min Þ, ^ y min ¼ minf c y 0 ; c y 1 ; c y 2 ; c y 3 g. (2) The final stego block ð c y 0 ; c y 1 ; y c 2 ; c y 3 Þ does not belong to The proposed method conforms to the issues that are men-
2. The proposed method
1 P 3 3 i¼0 ð y b i
‘‘Error Block”.
tioned before. The pixels in edge areas can tolerate much more
i Þ 2 is minimized. changes without making perceptible distortion than smooth areas. The range of average difference value is partitioned into two differ-
(3) The value of P 3 i¼0 ð y b i
After the replacement of (y 0 ,y 1 ,y 2 ,y 3 ) by ð y c 0 ; y c 1 ; c y 2 ; c y 3 Þ in the ent levels, low level and high level. The division of smooth and
block, the purpose of 4k-bit secret data hiding have been achieved. edge areas is predefined by users. Pixels located in the block are
Repeat Steps 1–6 until all the secret data are embedded in the cov- embedded by the k-bit modified LSB substitution method, where
er image, and the stego image is obtained. k is decided by the level which the average difference value be-
For example, suppose we have a block with four neighboring longs to. Low level will use a lower value k l , while high level uses
pixel values (139, 146, 137, 142), and the secret data are k h . The perceptual distortion can be minimized by readjustment,
000111111101. Assume T = 5, k l = 2 and k h = 3. Calculate the aver- which, at the same time, guarantees the same level that the aver-
age difference value D ¼ 16 3 >T ¼ 5, then y i (0 6 i 6 3) are embed- age difference value belongs to before and after embedding. The
ded by the 3-bit common LSB substitution method at first, embedding and extracting algorithms are presented in the follow-
y 0 0 ¼ 136; y 1 0 ¼ 151; y 0 2 ¼ 143 and y 0 3 ¼ 141. After applying the 3- ing subsections.
bit modified LSB substitution method, y 00 0 ¼ 136, y 1 00 ¼ 143, The concept of modified LSB substitution is to increase or de-
y 2 00 ¼ 135 and y 00 3 ¼ 141. Readjustment is executed resulting in crease the most significant bit (MSB) part by 1 in order to improve
c y 0 ¼ 136, y c 1 ¼ 151, c y 2 ¼ 135 and c y 3 ¼ 141. the image quality [17,18] . For instance, secret data is m = 000 (2) ,
then a pixel p = 1100111 (2) is embedded by the 3-bit common
2.2. The extracting algorithm
LSB substitution method and have a result p 0 = 1100000. The MSB
part of p 0 is increased by 1, so the result of modified LSB substitu- In the extraction process, we can quickly extract secret data tion method is p 0 = 1101000 (2) , reducing the difference between p
without the original image. Partition the stego image into four-pix- and p 0 .
el blocks, which is identical with the embedding algorithm. For each block (p i,j ,p i,j+1 ,p i+1,j ,p i+1,j+1 ), the following steps are executed to extract the secret data.
2.1. The embedding algorithm Step 1: Calculate the average difference value D by Eq. (1) .
All the pixels in the cover image are 256 gray values. The cover Step 2: Use the threshold value T to find out the level which D image is partitioned into non-overlapping four-pixel blocks. For
belongs to. If D belongs to the ‘‘lower-level”, k = k l , other- each block, there are four neighboring pixels p i,j ,p i,j+1 ,p i+1,j ,
wise k = k h .
Step 3: Verify whether the block belongs to ‘‘Error Block”. If not, respectively. The detailed embedding steps are as follows.
p i+1,j+1 , and their corresponding gray values are y 0 ,y 1 ,y 2 and y 3 ,
extract 4k-bit secret data from the k-bit LSB of y i (0 6 i 6 3). Otherwise, restart from Step 1.
Step 1: Calculate the average difference value D, which is given by For instance, we extract the embedding example
(136, 151, 135, 141), which is shown in the above subsec-
1 X D¼
ðy Þ tion. Since T = 5, D ¼ 23 3 belongs to ‘‘higher-level”, then
min i¼0
k=k h = 3. We extract 3-bit LSB of y i (0 6 i 6 3), respec- y min ¼ minfy 0 ;y 1 ;y 2 ;y 3 g tively. Secret data 000111111101 can be obtained.
Step 2: Our proposed method adaptively embeds messages using
3. Theoretic analyses and discussions
two levels (lower-level and higher-level), and threshold value T is used to partition the range of D into two levels.
Secret data can be directly extracted as the least k bits of the If D 6 T, D belongs to ‘‘lower-level” (i.e., the block belongs
pixel values, because Step 4 and Step 5 in the embedding algorithm
X. Liao et al. / J. Vis. Commun. Image R. 22 (2011) 1–8
do not change the embedded data. When applying the k-bit mod- Assume y 00 0 0 ¼ My 0 ;y 00 1 1 ¼ My 1 , we have y 0 6 y 1 ;y 00 0 P y 1 00 . ified LSB substitution, pixel values may be modified at distance 2 k
Then, 0 6 y 1 0 6M y 0 1 .
by increasing or decreasing the most significant bit part. The
y 00 00
readjusting phase works by modifying the pixel value p as p + 2
0 þ 3y 0 1 1 ¼ ðy 0 þ My 0 Þ þ 3y 0 1 þ My 1 1 k . Both of them do not affect the least k bits of the pixel
1 0 Þ þ My 0 1 6M y 0 1 values.
6 2 kþ1
In the proposed method, adjustment procedure is the more important technique for ensuring that secret data can be extracted
y 00 þ 3y
successfully. Some restrictions have been applied to ensure the
0 0 1 1 1 0 Þ þ My 0 1 correctness of the method. We will give a theoretical proof to ex-
0 1 Þ þ My 0 1 plain or justify our strategy.
þ My
kþ1
Lemma 1 [16]. For the k-bit modified LSB substitution, if pixel value Thus, we have y 0 00 þ 3y 0 00 1 kþ1 . From Eq. (3) we y i dose not belong to the rang [0, 2
know that jD 00 1 þ 1 3 1 3 þ 1 kþ1
, 255], y i is
3 ¼2 .h
modifiable and the resulting value y 00 i such that y i
y 00 i 6 y i þ2 . Theorem 2. Suppose that four pixels of the block are modifiable and Lemma 2 [16]. For the k-bit modified LSB substitution, if y i belongs
the cover block dose not belong to ‘‘Error Block”. Then, the readjusting to the rang [0, 2
6 phase can work successfully when 2 k l 6 T62 k h and 1 6 k l ,k h 6 5. y 00 6 y þ ð2 k
], the embedded result has y
00 belongs to the rang [0, 2 k
iii
i belongs
Proof. There are eighty-one readjusting choices (3 6 4 y i 00 6
= 81) in Step 6, y i þ2
, 255], the embedded result has y i
and y 00 i k and we will show that there exists at least one choice such that the
former two conditions hold in Step 6; namely, (1) b
D and D belong
Lemma 3 [16]. Suppose that only one of p 1 and p 2 is not modifiable.
to the same level; (2) The final stego block does not belong to
‘‘Error Block”. Then, there must exist the best one in the finite 16p 00 1 k 2 00 1 2 jþ2 .
For the k-bit modified LSB substitution, then jp 1 2 k
choices such that three conditions hold in Step 6. Thus, the read- justing phase works successfully.
Without loss of generality, suppose that the resulting pixel
Lemma 4. Suppose that two pixels p 1 and p 2 belong to the range
[0, 2 ]. For the k-bit
From Theorem 1 , we have D 00 ¼ 1 00 k . 06p 1 2 .
values are w 6 z 6 y 6 x after the k-bit modified LSB substitution.
00 00 k
Now we discuss the cases that D belongs to different levels, which 3 can be divided into two categories:
Proof. From Lemma 2 , we have 0 6 p 00 6 2 k
(1) Category A: D > T belongs to high level. k = k h . Case 1: If D 00 > T, there already exists a choice (x, y, z, w) such that the former two conditions hold in Step 6.
Case 2: If D 00 6 k For the k-bit modified LSB substitution, we have jD 00
Theorem 1. Suppose that four pixel y 0 ,y 1 ,y 2 and y 3 are modifiable.
) such that
, where
b 00 00 1 P 3 00 D¼D þ2 k ¼D 00 þ2 k h P T. Decrease of w by 2 k may not
D ¼ 3 i¼0 y i min 00 ,y min 00 ¼ min y 0 00 ;y 1 00 ;y 00 2 ;y 00 3 be allowed if the pixel value w < 2 k . However, we can find
another
choice
(x + 2 k ,y+2 k ,z+2 k , w) such that
Proof. Without loss of generality, let y 0 6 y 1 6 y 2 6 y 3 , then
b D¼D 00 þ2 k h P
k . Obviously, these
D¼ 1 3 ðy 1 þy 2 þy 3 0 Þ. If y 0 00 ¼ min y 00 0 ;y 00 1 ;y 2 00 ;y 3 00 , we have
choices don’t belong to ‘‘Error Block”. (2) Category B: D 6 T belongs to low level. k = k l . The cover block
jD 00 1 ðy 00 þy 00 þy 00 00 1 ðy þy þy
to ‘‘Error
block”, so we have
¼ 1 y 00 1 00 1 00 00 ðy min
Þ 6 2T þ 2 þ 2 .
3 y 3 3 3 0 0 Case 1: D 00 6 T. If (x, y, z, w) does not belong to ‘‘Error block”, it
6 1 y 00 1 y 00 1 00 satisfies the former two conditions in Step 6. Otherwise, k
3 , y, z, w) 3 3 3 þy 00
such that the former two conditions hold.
0 0 Case 2: D 00 > T. We divide it into 10 subcases according to the
¼2 k
relationship among four pixels x, y, z, and w, as follows:
3 3 3 subcase 1: x P y P z P w + 2 k
Fig. 1 (a) shows the If y 0 00 – min y
possible location. There exists a choice (x, y, z, w + 2 1 k 00 2 00 3 00 ) such know that
0 00 ;y 00 1 ;y 2 00 ;y 00 3 , let’s assume y 00 1 ¼ min y 0 00 ;y ;y ;y . We
that b D¼D 00 k 6 k ) 6 2T + 2.
subcase 2: x P y P w + 2 k
k > w. Fig. 1 (b)
jD 00 1 y 00 þy 00 þy 00 00 1 ðy þy þy
shows the possible location. There exists a choice
3 0 2 3 1 3 1 2 3 0 (x, y, z, w + 2 k )
y 00 1 00 y
00 þ 3y
3y 00 2 ) 6 2T + 2. þy
3 2 3 3 3 3 0 0 3 1 1 subcase 3: x P y P w + 2 k
k > z P w. Fig. 1 (c)
1 1 shows the possible
location. There exists a choice
6 y 00 00
3 2 2 3 y 3 3 k ,z+2 k ,w+2 k ) such that b D¼D 00 k 6 k D 6 T and
) 6 2T + 2.
þ y 00 0 þ 3y
0 1 1 subcase 4: x P w + 2 k
3 k > w. Fig. 1 (d)
shows the possible location. There exists a choice
X. Liao et al. / J. Vis. Commun. Image R. 22 (2011) 1–8
Fig. 1. 10 subcases about the possible locations of x, y, z, and w.
(x, y, z, w + 2 k ) such
Lemma 5. If there exist a pixel belongs to the range [0, 2 ] and k ) 6 2T + 2.
, 255], there already subcase 5: x P w + 2 k
exists a choice such that the former two conditions hold in Step 6. shows the possible location. There exists a choice
k > z P w. Fig. 1 (e)
k , y, z + 2 k ,w+2 k ) such that b D¼D 00 k 6 D 6 T and
06p 1 6 2 and subcase 6: x P w + 2 k
k , y, z + 2 k
k ) 6 2T + 2.
Proof. Suppose
the
pixels
> y P z P w. 6 Fig. 1 (f) p 2 6 255, then D P 1 3 Þ>2 k h P T shows the possible location. There exists a choice
and D belongs to high level. From Lemma 2 , we have
06p 1 00 6 k
kkk
00 ,y+2 6 ,z+2 ,w+2 ) such that 2 and
D 00 P
3 1 h P T and D 00 also belongs
h to high level. Obviously, the choice does not belong to ‘‘Error
D¼ k ÞÞ þ ðy þ 2
k ÞÞ
Block”. h
i þðz þ 2
kk
3 Theorem 3. Suppose that not all the four pixels of the block are mod-
ifiable and the cover block dose not belong to ‘‘Error Block”. Then, the
3 3 readjusting phase can work successfully when 2 k l 6 T62 k h and
¼ 1 Þ6T
16k ,k 6 5.
3 3 Proof. Similar to Theorem 2 , we will show that there exists at least
k ;y þ2 k ;z þ2 k
k Þ 6 2T þ 2.
one choice such that the former two conditions hold in Step 6. It can
be divided into three cases: (1) Only some pixels belong to [0, 2 ]; subcase 7: w + 2 k
, 255]; (3) Some pixels the possible location. There exists a choice (x, y, z, w + 2 k ) such
k > w. Fig. 1 (g) shows
belong to [0, 2
, 255]. We only
need to discuss case 1, because the proof of case 2 is similar and subcase 8: w + 2 k
that b D¼D 00 k 6 k ) 6 2T + 2.
k > z P w. Fig. 1 (h) shows
case 3 is solved by Lemma 5 . We divide case 1 into two categories:
k , z, w)
such that
b D¼D 00 2 k < 1 k
k þ2 k
2 (1) Category A: D > T belongs to high level. No matter how many
pixels are not modifiable in the four-pixel block, the proof in subcase 9: w + 2 k
¼2 k
k > y P z P w. Fig. 1 (i) shows
Theorem 2 is still efficient and correct.
(2) Category B: D 6 T belongs to low level. that
k , y, z, w) such
Case 1: D 00 6 T. The cover block is not an error block, so we have subcase 10: w + 2 k > x P y P z P w. Fig. 1 (j) shows the possible
min 6 2T + 2. If (x, y, z, w) does not belong to ‘‘Error location. The subcase 10 does not belong to Case 2 because
y max
block”, it satisfies the former two conditions in Step 6. Other-
max is tion imposed for Case 2. h
D 00 < 1 k þ2 k þ2 k Þ¼2 3 k 6 T, which contradicts the assump-
is modifiable, then
Þ 6 2T þ 2 þ 2 , so we can Theorem 2 has shown that our method is correct if all the four
max þ2
k , y, z, w) such that the former two con- pixels are modifiable. Now, we discuss the cases that at least one of
min
ditions hold in Step 6. If y max is not modifiable, i.e., y max belongs the four pixels is not modifiable.
to [0, 2
]. Thus, all the cover four pixels are not modifiable.
X. Liao et al. / J. Vis. Commun. Image R. 22 (2011) 1–8
From Lemma 4
(x, y, z, w + 2 k ) is a choice such that b D¼D 00 k 6 D 6 T and choice (x, y, z, w) such that the former two conditions hold. Case 2: D 00 > T. We also divide it into 10 subcases according to
k < 2T + 2, there exists a
For the subcases 6, 8, 9, 10: The proof in Theorem 2 is still the relationship among four pixels x, y, z, and w.
efficient and correct.
Only some pixels in the four-pixel block belong to [0, 2
] and
there are four conditions: Condition 3: Three pixels y 0 ,y 1 and y 2 belong to [0, 2 ], and y 3 is modifiable. From Lemma 2 , we know that since
Condition 1: Only one pixel y 0 belongs to [0, 2
], and others
06y 00 0 ;y 00 1 ;y 2 00 6 2 k
are modifiable. All the subcases in Fig. 1 are possible and The proof in Theorem 2 is still efficient and correct. y 0 = min{y 0 ,y 1 ,y 2 ,y 3 }. The block is not an error block, so we have
Condition 4: All the four pixels belong to [0, 2 ]. From Lemma y max
2 , we know that since 0 6 y 00 ;y 00 ;y 00 ;y 00 6 2 0 k 1 2 3 2T þ 2 þ 2 k .
min 6 max þ2
case 10 is possible. The proof in Theorem 2 is still efficient and correct. h
For the subcases 1, 2, 4, 7: From Lemma 2 , we have 0 6 y 00 0 6 2 k
0 = w. From Lemma 3 , we know that D 00 From Theorems 2 and 3 , we have:
3 ½y 00 1 00 0 1 0 j þ y 2 00 0 00 2 0 j þ y k 00 3 k 00 0 3
y 0 . Then (x, y, z, w + 2 )
is
a choice
such
that
Theorem 4. Suppose that four pixel values of the block are
D¼D b 00 k 6 k
) 6 2T + 2.
y i (0 6 i 6 3) and the cover block dose not belong to ‘‘Error Block”.
For the subcases 3, 5: If y 0 00 ¼ w, we also have D 00 k and
Then, the readjusting phase can work successfully when 2 k l 6 T62 k h
(x, y, z, w + 2 k ) is a choice such that b D¼D 00 k 6 D 6 T and
and 1 6 k l ,k h 6 5.
0 00 – w, we know that y 0 00 ¼ z according to Lemma
2 . Suppose y 00 1 ¼ w, we have phase cannot work if the cover block belongs to ‘‘Error Block”, i.e., D 6 T and y max
Here, we will give an example to show that the readjusting
D 00 1 y 00 þy 00 0 00 2 þy
y min = min{y 0 ,y 1 ,y 2 ,y 3 } and D ¼ 1 3 P i¼0 ðy i min Þ. Suppose that we
min > 2T + 2, here y max = max{y 0 ,y 1 ,y 2 ,y 3 },
3 1 ðy 1 þy 2 þy 3 0 Þ
3 3 have a block with four pixel values (66, 66, 66, 81), and the secret
¼ 1 y 00 2 1 2 þ y 00 3 þ 3 1 y 00 3y
3 3 3 0 þ 3y
0 3 1 þy 1 data are 11001011. Assume T = 5, k l = 2, and k h = 3. Calculate the average difference value D ¼ 15 3 6 T, then y i (0 6 i 6 3) are embed-
¼ 1 y 00 þ 1 y 00 ded by the 2-bit common LSB substitution method at first,
3 2 2 3 3 3 y 0 0 ¼ 67, y 0 1 ¼ 64, y 0 2 ¼ 66 and y 0 3 ¼ 83. After applying the 2-bit þ 00 1 y 00 00
00 þ2y 00 00 Þ modified LSB substitution method, y 0 ¼ 67, y 1 ¼ 64; y 2 ¼ 66 and
3 0 1 1 1 1 0 y 00 3 ¼ 83. There are 81 readjusting choice in Step 6, but the mini-
6 1 y 00 þ 1 y 00 1 00 00 00 mum of average difference values is b D¼ 16 > T. The readjusting
3 0 1 þ2y 1 1
phase cannot work. 3
1 y 00 1 00 1 00 ¼ A good question would be: How many error blocks dose a dig-
3 y 3 3 þ 3 1 1 ital image have? Table 1 shows the numbers Num and proportions Pe of error blocks that ten digital images have when T = 2 (lower
Þ¼2 k
3 3 3 boundary), T = 15 (middle value) and T = 32 (upper boundary). Num and is shown in Fig. 2
(x, y, z, w + 2 k ) is a choice such that b D¼D 00 k 6 D 6 T and
for various threshold values T. These are significantly few error blocks in a cover image. So it will have a negligible effect on the
For the subcases 6, 8, 9, 10: The proof in Theorem 2 is still capacity of our method, which can be almost ignored. efficient and correct.
4. Experimental results
Condition 2: Two pixels y 0 and y 1 belong to [0, 2
], and others
are modifiable. From
Several experiments are preformed to evaluate our proposed 06y 00 ;y 00 0 k 1 6 2 the experiments as cover images, and three of them are shown in
For the subcases 3, 5: Because 0 6 y 00 ;y 00 6 2 k
00 ¼ w or
Fig. 3 . A series of pseudo-random numbers as the secret bit streams y 1 00 ¼ w. If y 00 0 1 0 0 ¼ w, from Lemmas 3 and 4 we have D 00 are embedded into the cover images. The peak signal to noise ratio
3 y 00 1 00 0 1 0 j þ k y 2 00 0 00 2 0 j þ y 00 3 00 0 3 (PSNR) is utilized to evaluate the quality of the stego image. For an y 0 .
Then (x,y,z,w + 2 k )
is
a choice
such
that
D¼D b 00 k 6 00 1 ¼ w, we have
ðdBÞ ð4Þ
y 00 00 00 00 1
Þ 0 2 þy 2 þy 3 1 ðy 1 þy 2 þy 3 0 Þ
P P ðp
3 i;j 3
i¼1 j¼1
i;j
¼ 1 y 00 2 2 þ 1 y 00 3 where p i,j and q i,j denote the pixel values in row i and column j of the
3 3 3 cover image and the stego image, respectively.
þ 1 y 00 00 0 00 1 þ 2ðy 1 1 1 0 Þ
Stego images created by our proposed method with various val-
3 ues of k l and k h are shown in Figs. 4–6 . As the figures show, distor-
6 1 y 00 þ 1 y 00 þ 1 y 00 00 þ2y
tions resulted from embedding are imperceptible to human vision. We have experimented using a series of ‘‘k l
h ” division with
¼ 1 y 00 þ 1 y 00 þ 1 00
various threshold values. For instance, 2–3 division with T = 7 means that four-pixel block with average difference value falling
Þ¼2 k
into the low level and high level, will be embedded by the 2-bit
3 3 3 and 3-bit modified LSB substitution method, respectively. Table 2
X. Liao et al. / J. Vis. Commun. Image R. 22 (2011) 1–8
Table 1 The numbers and proportions of error blocks in ten digital images.
Tiffany Average Num(T = 2)
0 0 0 0 0 0 0 0 0 0 0 Pe(T = 2)
0 0 0 0 0 0 0 0 0 0 0 Num(T = 15)
15 12 1 29 84 1 25 34 Pe(T = 15)
Num(T = 32) 6 1 61 1 8 0 1 76 0 4 16 Pe(T = 32)
6 Fig. 5. Three stego images (T = 15, k l = 2, k h = 4) (a) Lena (embedded 572744 bits,
5 PSNR = 42.68 dB) (b) Peppers (embedded 562648 bits, PSNR = 43.23 dB) (c) Baboon (embedded 760664 bits, PSNR = 37.71 dB).
Proportions of error blocks Pe 4
5 10 15 20 25 30 Threshold value T
Fig. 2. The proportions of error blocks Pe for various threshold values T.
Fig. 6. Three stego images (T = 15, k l = 3, k h = 4) (a) Lena (embedded 810564 bits, PSNR = 39.58 dB) (b) Peppers (embedded 805492 bits, PSNR = 39.79 dB) (c) Baboon (embedded 903580 bits, PSNR = 36.90 dB).
lue, where the proposed method uses 3–4 division with T = 15. It is shown that our method provides both much larger embedding capacity and better image quality.
A number of secret bits are embedded into every block using the modified LSB substitution method, which was used by Yang et al.’s [16] . Parameters k l
h both used in Yang et al.’s and ours represent the same condition. A steganographic scheme is pre- ferred if it can provide higher PSNR values when concealing with the same embedding capacity. Thus, the comparisons of PSNR val- ues based on the embedding capacities that are slightly larger than those provided by Yang et al. are given in Table 4 . The statistics show that the proposed steganographic method is better than Yang et al.’s approach when using a two-level adaptive embedding strat- egy. A possible reason is that our proposed method considers non-
the features of edge may be considered sufficiently and the pixels in edge areas can tolerate much more changes without making
Fig. 4. Three stego images (T = 7, k l = 2, k h = 3) (a) Lena (embedded 587220 bits,
perceptible distortion.
PSNR = 44.05 dB) (b) Peppers (embedded 578624 bits, PSNR = 44.26 dB) (c) Baboon
(embedded 714164 bits, PSNR = 41.58 dB).
5. Conclusions
shows the results of the proposed method in terms of embedding In this paper, we have proposed a novel steganographic method capacity and PSNR value. The embedding capacities (in bits) and
based on four-pixel differencing and modified LSB substitution. Se- the PSNR values are average values of the results executed by ran-
cret data are hidden into each pixel by the k-bit modified LSB sub- dom bit streams many times.
stitution method, where k is decided by the average difference Table 3 shows the comparisons of the results between Wu
value of a four-pixel block. Readjustment has been executed to ex- et al.’s [11] and ours in terms of embedding capacity and PSNR va-
tract the secret data exactly and to minimize the perceptual distor-
X. Liao et al. / J. Vis. Commun. Image R. 22 (2011) 1–8
Table 2 Experimental results with different parameters.
Covers T = 7, 2–3
T = 21, 4–5 Capacity
PSNR Capacity PSNR Elaine
Table 3 proposed method are validated explicitly. The proposed method Comparisons of the results between Wu et al.’s and ours.
considers the features of edge sufficiently, so the pixels in edge Covers
Wu et al. [11]
areas can tolerate much more changes without making perceptible Capacity
Ours
distortion. The experimental results show that the proposed meth- od provides larger embedding capacity and better image quality.
39.57 Our proposed method majors in more significant promotions in Baboon
36.90 the terms of capacity and imperceptivity. There is a trade-off be- Peppers
39.79 tween embedding capacity/quality and attack-resistance, and it Toys
39.36 would sacrifices attack-resistance a little for obtaining higher Girl
39.61 embedding capacity/quality. In the future, besides the merits Gold
37.67 achieved in this paper, we will attempt to improve and modify Zelda
40.16 the propose method to achieve stronger security. Tiffany
This work is supported by National Natural Science Foundation
of China (Grant Nos. 60873191, 60903152, 60821001), Beijing Nat- oretical importance, because the correctness and feasibility of the
tion. The lemmas and theorems presented in Section 3 are of the-
ural Science Foundation (Grant No. 4072020).
Table 4 The same embedding capacity with better stego-image quality.
Yang et al.
Ours Capacity
Ours
Yang et al.
Ours
Yang et al.
PSNR Capacity PSNR Elaine
PSNR
Capacity
PSNR
Capacity
PSNR
Capacity
PSNR
Capacity
34.90 611732 37.18 Lena
36.73 590360 38.47 Baboon
32.12 731124 34.05 Peppers
38.22 565456 40.08 Toys
37.69 581492 39.04 Girl
37.07 574412 39.32 Gold
36.75 586928 38.62 Barb
32.76 718888 34.36 Zelda
39.54 552596 41.26 Tiffany
37.67 572132 39.57 Average
Elaine 814184
31.96 1077364 33.16 Lena
32.91 1070440 33.66 Baboon
30.57 1116068 32.02 Peppers
33.41 1062232 34.06 Toys
33.29 1067484 33.82 Girl
32.95 1065244 33.85 Gold
32.88 1069296 33.67 Barb
31.06 1112176 32.18 Zelda
33.74 1058012 34.25 Tiffany
33.25 1064244 33.94 Average
X. Liao et al. / J. Vis. Commun. Image R. 22 (2011) 1–8
References [11] H.C. Wu, N.I. Wu, C.S. Tsai, M.S. Hwang, Image steganographic scheme based on pixel-value differencing and LSB replacement methods, Proc. Inst. Elect.
[1] H.J. Highland, Data encryption: a non-mathematical approach, Comput. Secur. Eng., Vis. Images Signal Process 152 (5) (2005) 611–615. 16 (1997) 369–386.
[12] Y.R. Park, H.H. Kang, S.U. Shin, K.R. Kwon, A Steganographic Scheme in Digital [2] R.J. Anderson, F.A.P. Petitcolas, On the limits of steganography, IEEE J. Sel. Areas
Images Using Information of Neighboring Pixels, vol. 3612, Springer-Verlag, Commun. 16 (1998) 474–481.
Berlin, Germany, 2005. pp. 962–967.
[3] F.A.P. Petitcolas, R.J. Anderson, M.G. Kuhn, Information hidinga survey, Proc. [13] C.H. Yang, C.Y. Weng, A steganographic method for digital images by multi- IEEE Spec. Issue Prot. Multimedia Content 87 (7) (1999) 1062–1078.
pixel differencing, in: Proceedings of International Computer Symposium, [4] H. Wang, S. Wang, Cyber warfare: steganography vs. steganalysis, Commun.
Taipei, Taiwan, R.O.C., 2006, pp. 831–836.
ACM 47 (10) (2004) 76–82. [14] K.H. Jung, K.J. Ha, K.Y. Yoo, Image data hiding method based on multi-pixel [5] D.W. Bender, N.M. Gruhl, A. Lu, Techniques for data hiding, IBM Syst. J. 35
differencing and LSB substitution methods, in: International Conference on (1996) 313–316.
Convergence and Hybrid Information Technology, 2008, pp. 355–358. [6] R.Z. Wang, C.F. Lin, J.C. Lin, Image hiding by optimal LSB substitution and
[15] C.M. Wang, N.I. Wu, C.S. Tsai, M.S. Hwang, A high quality steganography genetic algorithm, Pattern Recognit. 34 (3) (2001) 671–683.
method with pixel-value differencing and modulus function, J. Syst. Softw. 81 [7] C.K. Chan, L.M. Chen, Hiding data in images by simple LSB substitution, Pattern
(2008) 150–158.
Recognit. 37 (3) (2004) 469–474. [16] C.H. Yang, C.Y. Weng, S.J. Wang, H.M. Sun, Adaptive data hiding in edge areas [8] I.C. Lin, Y.B. Lin, C.M. Wang, Hiding data in spatial domain images with
of images with spatial LSB domain systems, IEEE Trans. Inf. Forensics Secur. 3 distortion tolerance, Comput. Stand. Inter. 31 (2) (2009) 458–464.
(3) (2008) 488–497.
[9] D.C. Wu, W.H. Tsai, A steganographic method for images by pixel-value [17] Y.K. Lee, L.H. Chen, High capacity image steganography model, Proc. Inst. Elect. differencing, Pattern Recognit. Lett. 24 (9–10) (2003) 1613–1626.
Eng. Vis. Image, Signal Processing 147 (3) (2000) 288–294. [10] C.C. Chang, H.W. Tseng, A steganographic method for digital images using side
[18] S.J. Wang, Steganography of capacity required using modulo operator for match, Pattern Recognit. Lett. 25 (12) (2004) 1431–1437.
embedding secret images, Appl. Math. Comput. 164 (2005) 99–116.