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.