You are on page 1of 22

Digital Signal Processing 20 (2010) 12861307

Contents lists available at ScienceDirect

Digital Signal Processing


www.elsevier.com/locate/dsp

Hybrid wet paper coding mechanism for steganography employing


n-indicator and fuzzy edge detector
Chin-Chen Chang a,c , Jung-San Lee a, , T. Hoang Ngan Le b
a
Department of Information Engineering and Computer Science, Feng Chia University, 100 Wenhwa Rd., Seatwen, Taichung 40724, Taiwan, ROC
b
Department of Computer Science, Natural Science University, 227 Nguyen Van Cu, District 5, HCMC, Viet Nam
c
Department of Computer Science and Information Engineering, National Chung Cheng University, Chiayi 621, Taiwan, ROC

a r t i c l e i n f o a b s t r a c t

Article history: Data hiding technique can facilitate security and the safe transmission of important
Available online 13 November 2009 information in the digital domain, which generally requires a high embedding payload
and good stego image quality. Recently, a steganographic framework known as wet
Keywords:
paper coding has been utilized as an effective strategy in image hiding to achieve the
Security
Wet paper coding
requirements of high embedding payload, good quality and robust security. In this paper,
Steganography besides employing this mechanism as a fundamental stage, we take advantage of two
Indicator novel techniques, namely, an ecient n-indicator and a fuzzy edge detector. The rst
Fuzzy edge detector is to increase the robustness of the proposed system to guard against being detected
or traced by the statistics methods while allowing the receiver without knowledge of
secret data positions to retrieve the embedded information. The second is to improve the
payload and enhance the quality of stego image. The experimental results show that our
proposed scheme outperforms its ability to reduce the conict among three steganography
requirements.
2009 Elsevier Inc. All rights reserved.

1. Introduction

With the increasing reliance on digital media and the rapid growth of Internet distribution possibilities, mechanisms
of digital content are continually becoming important. Digital steganography is known as an effective technology used
to enhance communication security by inserting a secret message into the digital image and slightly modifying the non-
essential pixels of the image. After embedding the secret message, this image, so-called stego image, is then sent to the
receiver through a public channel [9]. Although steganographic techniques only alter the most insignicant components, they
inevitably leave detectable traces which often make successful attacks. Hence, by detecting statistical differences between
the cover and stego objects proposed, analytical techniques use this weakness to reveal the existence of the hidden message
[7,12].
In general, to evaluate a steganographic scheme, we need to carefully consider three criteria: capacity, concealment, and
robustness. The rst requirement is to improve the embedding payload. The more information is embedded, the higher
payload the steganographic scheme possesses. The second is to avoid paying attention to the noticeable parts and damaging
the important parts of the cover object when we perform embedding action. When two steganographic schemes have
the same embedding capacity, the one which makes fewer changes to cover object is considered as a better scheme. Our
proposed scheme does not much concern regarding concentration of the last criterion thanks to utilizing the wet paper
coding mechanism together an n-indicator book and an appropriate selection rule. Based on only the rst two requirements,

* Corresponding author. Fax: +886 27066495.


E-mail addresses: ccc@fcu.edu.tw, ccc@cs.ccu.edu.tw (C.-C. Chang), leejs@fcu.edu.tw, ljs@cs.ccu.edu.tw (J.-S. Lee), lthngan@t.hcmuns.edu.vn (T.H.N. Le).

1051-2004/$ see front matter 2009 Elsevier Inc. All rights reserved.
doi:10.1016/j.dsp.2009.11.005
C.-C. Chang et al. / Digital Signal Processing 20 (2010) 12861307 1287

there are many schemes proposed to obtain good stego image quality with high embedding payload. However, there are
some factors that control the effectiveness and practical implementation of a steganography system: (1) the importance of
elements in cover object. That means we need to carefully consider which pixels are affected by the embedding operation;
(2) the quality of stego image. That is, how to change the nominated pixels to keep very low image distortion under the
human eyes. Obviously, when two stego images having the same peak signal-to-noise ratio (PSNR); the one which changes
less the noticeable parts must possess a better quality from the human visual system (HVS). In this paper, we proposed an
innovative scheme which is to reduce the conict between the embedding payload and stego image quality. Namely, our
scheme is to achieve one of following goals:

Enhance the quality of stego image while increasing or, at least, maintaining high embedding capability.
Increase the payload while making better or, at least, keeping very low image distortion under the human eyes.

Let us take a circumstance as an example in which having one secret data, one original grayscale image regarding as
a cover image and two stego images called Stego_A and Stego_B. These two stego images have been generated by two
different embedding schemes, absolutely. The relationship among these objects is demonstrated as follows:

There are some noticeable features in such a circumstance:

Even Stego_A and Stego_B have the same PSNR value; the responses of the HVS to them are different. That means the
quality of image can not be only evaluated by PSNR but by both PSNR value and the human eyes.
The responses of the HVS to change of different pixels are not same. Therefore, to ensure the concealment property, we
will avoid embedding secret data to some pixels very sensitive to any modication.

Based on the advantage of intersection of two different color regions of edge pixels, it is dicult for observer to realize
changes in these pixels by the HVS. Thus, we can embed more secret data to the edge pixels without worrying about
image distortion. In our approach, we rst use a fuzzy edge detector to nd the candidate pixels for hiding secret data. We
second use an n-indicator book to identify the characteristic of every segment and its embedding capacity. Then, we dene
a Selection Rule (SR) to determinate which modication operations will be apply to hide secret data as well as which pixels
among a set of candidates will be effected by such operations.
Because the human eyes are less sensitive to change in edge pixels, we completely increase the number of modications
at these pixels while guaranteeing the quality of stego image evaluated by the HVS. Assume that the embedding scheme A
replaces LSBs of non-edge pixels with secret data and the embedding scheme B performs embedding operation on edge
pixels. The experimental results in Table 1 show the quality of stego images made by the embedding schemes A and B with
different numbers of LSBs substitution.
According to above results, we can realize that even the same PSNR values, the stego image generated by the embedding
scheme B gives better quality than that have been done by the embedding scheme A under the human eyes at every number
of LSBs substitution. From this point of view, our proposed scheme will be directed on using edge pixels to hide secret data.
Many coding mechanisms [46,16] have been proposed to meet the requirements of a data hiding problem recently.
However, one of these noticeable mechanisms is wet paper codes [14,15,17] proposed by J. Fridrich et al. Wet paper
code is an effective data hiding scheme in terms of high embedding payload, good quality and robust security. Moreover,
this mechanism is highly relevant to steganography and is applicable in several different situations. Recently, Zhang et
al. proposed a new scheme based on wet paper coding [18]. In their scheme, integrating a least signicant bits (LSBs)
substitution approach with wet paper coding, the secret message bits are double-layer embedded into the cover image. This
scheme shows that the embedding payload is high with adding/subtracting one LSB into/from pixel values. Based on the
experimental results, it shows that their scheme can provide the high quality of the stego image with one bit replacing.
However, the quality of the stego image cannot be maintained with more than two bits replacing. Thus, the trade-off
between embedding payload and image quality is the drawback of Wang et al.s scheme. In this paper, we employ two
more mechanisms named n-indicator and edge detector to overcome the above drawbacks. An n-indicator considered to be
a location map is to both decides the characteristic of each segment and indicates its embedding capacity. In our approach,
1288
Table 1
Quality of stego images made by the embedding schemes A and B corresponding to various numbers of LSBs substitution.

C.-C. Chang et al. / Digital Signal Processing 20 (2010) 12861307


Number of LSBs 1 2 3 4 5 6
substitution

Scheme A

Scheme B

PSNR 51.1 dB 44.1 dB 38.0 dB 31.9 dB 25.7 dB 19.8 dB


C.-C. Chang et al. / Digital Signal Processing 20 (2010) 12861307 1289

the n-indicator in combination with an appropriate SR helps the receiver easily obtaining the secret data even both parties
do not know precise locations of secret bits and neither does the number of secret bits embedded in each segment. Here,
the location map is dened as a table with 2 columns, the rst column is the cover image segment and the other is its
index. Fig. 1 is an example of such a location map corresponding to segment length set as 6 (6-indicator book). The other
mechanism called edge detector helps reducing the conict between embedding payload and stego image quality. To obtain
the objective that alters the LSBs of edge pixels to hide secret data, we will try to mine as many edge pixels as possible.
According to the experimental results which have been conducted in the suggested system, we make use of a very novel
edge detector based on fuzzy complement.
The rest of this paper is organized as follows. In Section 2, the fundamental concepts of the wet paper coding, edge
detector based on fuzzy complement, and n-indicator are briey described. In Section 3, we give a detailed description of
the embedding and decoding procedures while paying close attention to implementation issues. Section 4 illustrates the
simulation results to show the superiority of our scheme. Moreover, some drawbacks and theirs solutions are also discussed
in Section 4 to make the proposed scheme more practical and effective. We conclude this paper in Section 5.

2. Related works

To ensure that the coder randomly chooses partial pixels to embed the secret information by modifying their values, we
use the wet paper coding technique in this approach. The details of this mechanism are presented in Section 2.1. Aside from
that, to help the receiver obtain the secret data without any knowledge of the locations of the pixels chosen by the sender;
an n-indicator is employed. Section 2.2 will give the readers essential knowledge to set up an n-indicator. Moreover, to
improve the quality of the stego image from the HVS, we employ one fuzzy edge detector which is described in Section 2.3.

2.1. Wet paper coding

Wet paper coding rst proposed by J. Fridrich et al. in 2005 [10] is an information hiding technique. The wet paper
coding scheme can be explained by the analogy from which its name is derived. Imagine that the cover image is divided
into two parts after being exposed to rain. The rst section is labeled the dry part containing all the changeable pixels. The
other contains all the unchangeable pixels is considered the wet part. Note that the rain can be random, pseudo-random,
completely determined, or an arbitrary mixed. To apply the wet paper coding in data embedding, the sender randomly
chooses dry pixels belonging to the rst section following a Selection Rule and slightly modies their values. This rule
usually depends on the particular scheme and will be discussed in Section 3 corresponding to our embedding procedure.
During transmission, the marked image (stego image) dries out. Therefore, the detector does not know which pixels are
used for data hiding.
To make this concept easily comprehended, we explain the concept of the wet paper coding with the LSB substitution
strategy. Let X and Y be the primitive carrier image or the cover image and the stego image of dimension W H and
all its pixels are grayscale level from 0 to L namely xnm , ynm [0, L ] (m [1, W ], n [1, H ]). We further assume that the
secret information that will be transmitted is S containing q bits, i.e. s1 , s2 , . . . , sq . This secret message S is embedded into
X by Section Rule, named SR. At the embedding side, according to the SR, the sender rst chooses q changeable pixels from
the cover image X . Each changeable pixel xmn is slightly modied the last bits by LSB substation approach and becomes
ymn . Usually, the sender does not exactly know the positions of p pixels chosen. And also, the p pixels are frequently
spread over the whole image X . On the other end, the receiver will recover the secret message S from the stego image Y .
However, the receiver does not have any information about which changeable pixels are chosen to hide the secret message.
All retrieval operations are performed blindly based on the specied SR. In the wet paper coding approach, both parties
have no knowledge of message-carrying pixels in the cover image even when they themselves create SR.
Obviously, the embedded information can be easily retrieved if the recipient exactly determines the set of changeable
elements from the stego object. However, as discussed in Introduction section, there are two problems which may occur
in this scenario. The rst problem is that the requirement allowing the recipient to be able to determine the same set of
changeable elements imposes a limitation on the SR and the embedding modication. The other problem is that whenever
an attacker determines the message-carrying elements, the secret message can be easily destroyed. In real applications, wet
paper coding is usually combined with other techniques to solve these problems. Therefore, the recipient is able to read the
correct message but needs not to know the set of changeable elements.

2.2. Edge image detector based on fuzzy complement

An edge is characterized by signicant dissimilarity in gray levels being used to indicate the boundary between two re-
gions in an image fragment. Edge detection is one of the signicant studies in image processing and machine vision. That is
because edges are considered as important features for analyzing the most essential information contained in images. Many
classical edge operators such as Sobel, Prewitt, Laplacian, and Canny operators are already available in the literature [4].
However, in this proposed scheme, we use edge image detector based on fuzzy complement [13,8] as foundation for de-
tecting edge pixels. With this selection, we have more choices for seeking random changeable pixels. Thus, the capacity
of hiding secret message is increased. Moreover, the edge fuzzy detector helps increasing the quality of the stego image
1290 C.-C. Chang et al. / Digital Signal Processing 20 (2010) 12861307

from the HVS. The details of edge operator based on the fuzzy complement [13,19] is briey presented as follows with
assumption that X is an image of dimension W H , and all the pixels in X are gray level from 0 to L (i.e., xmn [0, L ]):

Step 1. Obtain the membership grade value mn at position (m, n).

The image X is rst transformed into an array F of fuzzy singletons, mn [0, 1] with m [1, W ] and n [1, H ]. Note
that in this domain, each value mn is called membership grade and indicates the degree of brightness of each pixel. The
array F is a union of all mn s and is determined as follows:


W 
H
F= mn . (1)
m =1 n =1

Let x be the biggest gray scale value in image X . Since all pixels in image X have values are less than or equal to x, x is
not obviously larger than L. The membership grade value is obtained by a simple normalization, Eq. (2):
xmn
mn = . (2)
x

Step 2. Determine the degree of edginess mn at position (m, n).

The simplest way to dene a fuzzy edge detector is determination of a proper membership function mn for each pixel
xmn at the position (m, n) with a surrounding w w spatial window. To do this, we need to sub-divide the image X into
overlapping w w blocks. Let W (m, n) be a w w window, where xmn is a center pixel.
Employing the fuzzy complement [20], the membership function can be dened for window w w as:
 1 p
 p
mn = min 1, min(i j , 1 i j ) , (3)
w
i j

or
 1 p

mn = min 1, i j (1 i j ) p . (4)
w
i j

In this situation, the membership grade value mn is locally calculated inside each window w w: mn =
maxi , j [1, w ] (xi j )mini , j [1, w ] (xi j )
x
.
It means that Eqs. (3) and (4) can be extended as Eqs. (5) and (6):
 
   maxi , j [1, w ] (xi j ) mini , j [1, w ] (xi j )
mn = min 1, min i j , (1 i j ) , (5)
w x
i j
 
 maxi , j [1, w ] (xi j ) mini , j [1, w ] (xi j )
mn = min 1, i j (1 i j ) , (6)
w x
i j

where w is the scaling factor and is calculated by Eq. (2). Based on the experimental results, to attain the goal of high
ij
visual quality edge image and to ensure a large number of edge detected pixels, Wang et al. suggested that the values of
and the window size w shall be 9 and 3, respectively.
Nevertheless, there is one problem related to the number of edge pixels mined by the fuzzy complement edge operator.
That is which pixel of cover image is considered to be an edge pixel based on edginess degree (mn ). This problem will be
solved by the relationship between mn of pixel and predened threshold. Obviously, the value range of edginess degree
mn is known to be well behaved on the interval [0, 1] so that threshold will be ranged from 0 to 1 and determined by
characteristics of image itself. Moreover, the bigger value of threshold will give more accuracy, thinner edge but less number
of edge pixels. As dened, our objective is to obtain as many edge pixels as acceptably possible while keeping acceptable
accuracy. Therefore, choosing the reasonable value of threshold is important. The following experimental results in Table 2
have been performed on 256 256 test images with variance of thresholds.
Note the whole experimental results have been done on natural images. By the human eyes, we can see that the ac-
ceptable threshold completely depends on image itself. Take Baboon, for instance, the threshold should be dened bigger
than 0.4. With other pictures, the threshold can be chosen as 0.3 or bigger. To give more general value for threshold, one
image database test named Caltech (http://www.vision.caltech.edu/Image_Datasets/Caltech256/) is employed. Based on the
simulated results, the threshold making good enough for edge image is bigger than 0.4 and the threshold acceptable for
number of edge pixels is smaller than 0.7.

Step 3. Obtain the edge image.


C.-C. Chang et al. / Digital Signal Processing 20 (2010) 12861307 1291

Table 2
Edge image with variance of thresholds.

Threshold Lena Baboon Building Pepper

0.1

0.3

0.4

0.7

0.9

Let us assume that an image F  contains all edges of certain image F in fuzzy domain. The image F  is dened as an
array of fuzzy singleton mn and is determined by the following equation


M 
N
F = mn . (7)
m =1 n =1

146 97 89 85

To make this technique more clear, take an example with grayscale image in space domain as 149 122 90 92
. The size
152 144 135 99
156 147 145 143
of window is chosen as 3 3.
1292 C.-C. Chang et al. / Digital Signal Processing 20 (2010) 12861307

First, we assume that there is no edge pixel on the border image. That means we need not to consider pixels at positions
(1, 1), (1, 2), (1, 3), (1, 4), (2, 1), (2, 4), (3, 1), (3, 4), (4, 1), (4, 2), (4, 3), and (4, 4). And, in this edge image, all pixels on
the border receive value 0.
The following will be to consider the remaining pixels at positions (2, 2), (2, 3), (3, 2), and (3, 3).
The membership grade value 22 of the pixel at position
(2, 2) called x22 will be calculated inside the window 3 3,
146 97 89
where x22 is the central pixel. In this window, namely 149 122 90 the maximum value is 152 and the minimum value is
152 144 135
89. With the global maximum value (over image) is 156, the membership grade value 22 is calculated as:
maxi , j [1, w ] (xi j ) mini , j [1, w ] (xi j ) 152 89 63
22 = = = = 0.4038.
xmaxi[1,M ], j[1,N ] 156 156

22 at position (2, 2) is determined as:


According to Eq. (5), the degree of edginess
 
  1 / p
22 = min 1, min i j , (1 i j ) p
w
i j
    
1  63 93 1 63
= min 1, min , = min 1, 3 3 = 1.
3 156 156 3 156
i j

The membership grade value 23 of the pixel at position


(2, 3 ) called x23 will be calculated inside the window 3 3,
97 89 85
where x23 is the central pixel. In this window, namely 122 90 92 the maximum value is 144 and the minimum value is
144 135 99
85. The membership grade value 23 is calculated as:
maxi , j [1, w ] (xi j ) mini , j [1, w ] (xi j ) 144 85 59
23 = = = = 0.3782.
xmaxi[1,M ], j[1,N ] 156 156

23 at position (2, 3) is determined as:


The degree of edginess
 
  1 / p
23 = min 1, min i j , (1 i j ) p
w
i j
    
1  59 97 1 59
= min 1, min , = min 1, 3 3 = 1.
3 156 156 3 156
i j

The membership grade value 32 of the pixel at position


(3, 2) called x32 will be calculated inside the window 3 3,
149 122 90
where x32 is the central pixel. In this window, namely 152 144 135 the maximum value is 156 and the minimum value is
156 147 145
90. The membership grade value 23 is calculated as:
maxi , j [1, w ] (xi j ) mini , j [1, w ] (xi j ) 156 90 66
32 = = = = 0.423.
xmaxi[1,M ], j[1,N ] 156 156

32 at position (3, 2) is determined as:


The degree of edginess
 
  1 / p
32 = min 1, min i j , (1 i j ) p
w
i j
    
1  66 90 1 66
= min 1, min , = min 1, 3 3 = 1.
3 156 156 3 156
i j

The membership grade value 33 of the pixel at position


(3, 3) called x33 will be calculated inside the window 3 3,
122 90 92
where x33 is the central pixel. In this window, namely 144 135 99 the maximum value is 147 and the minimum value is
147 145 143
90. The membership grade value 23 is calculated as:
maxi , j [1, w ] (xi j ) mini , j [1, w ] (xi j ) 147 90 57
33 = = = = 0.365.
xmaxi[1,M ], j[1,N ] 156 156

The degree of edginess 32 at position (3, 3) is determined as:


C.-C. Chang et al. / Digital Signal Processing 20 (2010) 12861307 1293

 
  1 / p
33 = min 1, min i j , (1 i j ) p
w
i j
    
1  57 99 1 57
= min 1, min , = min 1, 3 3 = 1.
3 156 156 3 156
i j

0 0 0 0

Hence, the edge image F  in fuzzy domain can be obtained as 0 1 1 0


.
0 1 1 0
0 0 0 0

2.3. The n-indicator book designing

Designing an appropriate n-indicator book for the proposed system is the most crucial task. In fact, the quality of stego
image, the embedding payload and the robustness of our proposed scheme depend on the n-indicator book. In general, an
n-indicator book is dened as a table consisting of two columns and n rows. The rst column represents the set of segments
whose index values are carried in the second column. Since the fact that each segment is a chain of n pixels having at least
one dry pixel, an n-indicator book must have (2n 1) elements inside the rst column at most. The set of segments is
divided into n groups, each one is a collection of all the segments which have the same embedding capacity and the same
index value. All the index values in the indicator are represented using binary system; hence, we need log2 n bits to
manage values inside the second column. Let us assume that the ith group which contains ni elements specied by the
index value i , with i [1, n], ni [1, 2n 1], and i [0, n 1].
To generate an n-indicator book, we rst list all (2n 1) values able to be assigned to one segment having n pixels with
at least one dry pixel inside. Here, each value is considered as one element in the second column of the n-indicator book.
To determinate the index value e of certain segment e or element e, we use a dividing operation under two conditions.
(1) The number of pixels in the left part must be more than or at least equal to the right one. (2) There is at least one dry
pixel in each part.
The n-indicator book designing procedure can be described by following steps.

Step 1. At the initial stage, set (e )10 = 0. Take the rst element e into account. Term (e )10 is used to denote the value of
index e in decimal system.

Step 2. Divide the element e into ((e )10 + 1) parts. This dividing operator performs over the element in the spatial domain
from right to left. Each part contains either  ( )n +1  pixels or  ( )n +1  pixels. According to the rst condition, there are
e 10 e 10
 (e )n10 +1  pixels in the right parts and  (e )n10 +1  pixels in the left parts. If this dividing operation completely satises the
two above conditions, proceed to Step 3. Otherwise, we proceed to Step 4.

Step 3. Increase (e )10 by 1 ((e )10 = (e )10 + 1). Return to Step 2.

Step 4. Obtain the index value (e )10 and add the element e into ((e )10 + 1)th group. If this element is the last one, we
stop and get the n-indicator book; otherwise, carry out the next element and return to Step 2.

As an example, set n = 6. Let us use notations D and W to indicate the changeable pixel (dry pixel) and unchangeable
pixel (wet pixel), respectively. To determine the index value for element e = [DWDWWD] for instance, we apply the above
steps as follows:

Step 1. At the initial stage, set (e )10 = 0 and e = [DWDWWD].

Step 2. Divide e into one part: 1st part = [DWDWWD]. Since the dividing operator at that time meets two above conditions,
go to Step 3.

Step 3. Increase the index value: (e )10 = (e )10 + 1 = 1. Return to Step 2.

Step 2. Element e is divided into two parts: 1st part = [WWD], 2nd part = [DWD]. Once the dividing operator at that time
satises the two above conditions, go to Step 3.

Step 3. Increase the index value: (e )10 = (e )10 + 1 = 2. Return to Step 2.

Step 2. Element e is divided into three parts: 1st part = [WD], 2nd part = [DW], 3rd part = [DW]. Since the dividing operator
at that time satises the two above conditions, go to Step 3.
1294 C.-C. Chang et al. / Digital Signal Processing 20 (2010) 12861307

Fig. 1. The location map corresponding to segment length sets as 6 (6-indicator book).

Step 3. Increase the index value: (e )10 = (e )10 + 1 = 3. Return to Step 2.

Step 2. Element e is divided into four parts: 1st part = [D], 2nd part = [W], 3rd part = [DW], and 4th part = [DW]. In the
2nd part, there is no changeable pixel inside. Thus, it doesnt satisfy the rst condition. Go to Step 4.

Step 4. This element e has index value (e ) which a value 3 in the decimal system.

In the above example, element e = [DWDWWD] is indexed by (e )10 = 3. This element belongs to the 4th group (4th
row) and has index value e = 011.
To set up the 6-indicator book, we rst list all 26 1 = 63 values that can be available to an element e having 6 pixels in
which at least one dry pixel. With each element, we apply the entire listed procedure. Finally, we can obtain the 6-indicator
book as shown in Fig. 1.

3. Proposed scheme

In this section, a new data hiding scheme, which uses wet paper coding mechanism in combination with a fuzzy edge
detector and an n-indicator book, is thoroughly presented. Like other data hiding schemes, the proposed scheme consists of
two procedures: embedding procedure and extracting procedure.

3.1. Embedding procedure

This procedure contains four phases, and the owchart of these phases is illustrated in Fig. 2.

Phase 1. Create the wet image from an input grayscale image considered as carried signal.
C.-C. Chang et al. / Digital Signal Processing 20 (2010) 12861307 1295

Fig. 2. Flowchart of the embedding procedure.

Fig. 3. Details of Phase 1 of the embedding procedure.

In Section 2.1 it is mentioned that in most existing data hiding schemes, which employ wet paper coding, the wet image
is randomly created by a rain. However, we suggest using an edge detector to rst generate the wet image. This phase can
be presented by Fig. 3.
We rst employ the edge image detector based on the fuzzy complement to categorize the input grayscale image into
two parts corresponding to non-edge pixels and edge pixels parts. The details of this fuzzy edge detector are revealed in
Section 2.2. Here, the raindrops are randomly created over the edge pixels part. Probably, in our approach, Phase 1 helps to
consider which pixels to be wet pixels among the edge pixels part. This is because of two following reasons:

(1) We do not pick all the edge pixels as wet pixels.


(2) We arbitrarily choose some of them and consider to be wet pixels.

The produced wet image is formed by combining the rst and the second parts after receiving the arbitrary rain. Def-
initely, there is no change in the wet image in comparison with the original cover image. Moreover, we can obtain the
information of positions of wet pixels among the second part. From here, we can use wet image term to represent the input
gray scale image.
x11 x12 x13
Take, for example, an image x21 x22 x23 sized 3 3 considered to be a cover image. All pixels of this image are denoted
x31 x32 x33
as x11 , x12 , x13 , x21 , x22 , x23 , x31 , x32 , x33 . After taking the edge detecting operation to this image, we receive two parts:
the rst, non-edge part, consists of pixels x11 , x12 , x13 , x22 , x33 and the other consists of remaining pixels x21 , x23 , x31 , x32 .
Choose randomly some pixels from the second part as the wet pixels, x21 , x23 , for example. That means the cover image is
divided into two parts:

Part 1. A set of pixels x11 , x12 , x13 , x22 , x31 , x32 , x33 is considered as dry part.
Part 2. A set of pixels x21 , x23 is considered as the wet part.
x11 x12 x13
In nal, the wet image is generated by combining two above parts and becomes as x21 x22 x23 . That means there is no
x31 x32 x33
difference between the original cover image and the wet image, absolutely. In addition to the achieved wet image, we have
more information of positions a set of wet pixels.

Phase 2. Partition the wet image.

This operator is rst executed by scanning the whole wet image from left to right and from top to bottom to identify the
longest wet pixel chain. A wet pixel chain is dened as a section of uninterrupted wet pixels. Let us assume n 1 (n  2)
is the length of the longest wet pixels chain. In this approach, the wet image is partitioned into a set of segments. Each
1296 C.-C. Chang et al. / Digital Signal Processing 20 (2010) 12861307

Fig. 4. Details of Phase 3 of the embedding procedure.

segment is dened as a section of continuous pixels having at least one dry pixel. Thus, the length of each segment will
be n. Let W and H be the width and height of the wet image. We obtain a set of  W n H  segments after partition.

Phase 3. Embed a secret message.

To embed a secret message called S into the wet image, we need to divide the secret message S into a set of pieces.
Each piece is embedded into one segment length n. Here, the ith segment will contain the ith piece by slightly changing
the LSBs of changeable dry pixels. Because the number of dry pixels of each segment is different, the segment embedding
payload is not the same in two different segments. Thus, the length of the ith piece depends on embedding capacity of
ith segment and cannot be predetermined. Moreover, the embedding capacity depends on three parameters, namely, the
number of LSBs substitution (x), the length of each segment (n), and index value i which is decided by an n-indicator
book.
Let us designate x (x  1) as the number of LSBs in each dry pixel which are chosen to be replaced by secret message
bits. If x is not less thanlog2 n, the embedding capacity of the ith segment will be (x log2 n + x (i 1)) bits. Note
that i is index value of the ith segment. Otherwise, x (i 1) bits will be the embedding capacity of the segment.
Depending on the ratio between the size of the secret message and the embedding capacity of the input image, we
can decide the length of the individual piece. Basically, the length of the ith piece is less than or equal to the embedding
payload of the ith segment. The process of embedding the ith piece into the ith segment is performed as shown in Fig. 4.
Note that in the proposed scheme, each segment is not only considered as an array of pixels but also a set of parts. Here,
we divide a segment into a set of parts based on the strategy revealed in Section 2.3. Let k, with k = i + 1, be the number
of parts of the ith segment. Let l be the number of bits used to represent the parameter n in the binary system. If x is not
less than log2 n, l = x; otherwise, log2 n. This phase is implemented by the following steps.

Step 1. Obtain l LSBs from each pixel of the rst part. Then, we apply the XOR operation to these LSBs. The outcome is a
group of bits, called b1 b2 . . . bl .

Step 2. Identify the index value i of the ith segment by the n-indicator book.

Step 3. From each remaining part (k 1 remaining parts), we get one group which consists of x bits called a1 a2 . . . ax . To
do so, we rst obtain x LSBs from every pixel which are contained in each part. Then, we apply the XOR operation to the
set of x LSBs to retrieve [a1 a2 . . . ax ]i from the ith part. From k 1 remaining parts, we have a set of k 1 groups, each of
which has x bits.

Step 4. To embed x secret message bits called m1 m2 . . . mx into one part, we slightly change x LSBs of the rst dry pixel
within this part such that a1 a2 . . . ax = m1 m2 . . . mx . According to the assumption in Phase 2, there is at least one dry pixel
in each part so that we can perform the embedding operation in every part. To make Steps 3 and 4 more detailed, we
demonstrate this idea by the example shown in Fig. 5.

Take one part which contains four pixels for instance. The order of the four pixels is specied as: the rst and the third
pixels are wet; the second and the fourth pixels are dry. The number of LSBs substitution is chosen as 2. We rst perform
the XOR operation on the last two bits of four pixels in this part. Then, we compare the result a1 a2 . . . ax with the secret
C.-C. Chang et al. / Digital Signal Processing 20 (2010) 12861307 1297

Fig. 5. An example of the Steps 3 and 4 of Phase 3.

Fig. 6. Details of the Step 5 of Phase 3.

message m1 m2 . . . mx . If a1 a2 . . . ax is different from m1 m2 . . . mx , we must modify the rst dry pixel, namely the second
pixel. This modication operation changes last two bits of the second pixel such that a1 a2 . . . ax = m1 m2 . . . mx .

Step 5. We apply the XOR operation to these two components: l LSBs of all k parts and the index value i . Obviously,
the index value i is represented by l bits in binary system. A segment is considered as a marked segment if and only if
XOR(b1 b2 . . . bl , [a1 a2 . . . al ]k1 , i ) = 0. If the outcome is not equal to zero, we need to slightly modify the LSBs of the rst
dry pixel inside the rst part (i.e. b1 b2 ...bl ) such that XOR(b1 b2 . . . bl , i , [a1 a2 . . . al ]k1 ) = 0. Fig. 6 will make this step more
clear.

Take a segment A = {0, 100, 0, 192, 128, 255}, for example. This segment consists of three changeable pixels (dry pixels):
1st, 3rd, and 5th pixels (format font bold), and the secret message is S = [0110]. In this example, we assume that the
number of LSBs substituted is chosen as 2 (x = 2).
According to Section 2.3, we know that there are three (k = 3) parts inside segment A: A 1 = {0, 100}, A 2 = {0, 192}, and
A 3 = {128, 255}. To assist readers with easily calculation in binary system, we rst transform all pixels to their binary rep-
resentation, namely A 1 = {[00000000], [01100100]}, A 2 = {[00000000], [11000000]}, and A 3 = {[10000000], [11111111]}.

Step 1. In this example, the length of segment is n, with n = 6 and the number of LSBs substitution is x, with x = 2.
Since x is less than log2 n, l = log2 n = 3. Applying the XOR operation, three LSBs from the rst part A 1 are b1 b2 b3 =
XOR([000], [100]) = [100].

Step 2. Looking up the n-indicator book, we can see that the index value of the segment A is = [010].

Steps 3, 4. With the second part, A 2 = {[00000000], [11000000]}, applying the XOR operation to the last two LSBs, we get
a1 a2 = XOR([00], [00]) = [00]. This value is different from m1 m2 = [01]. Thus, a1 a2 is changed to 01, and the second part
becomes A 2 = {[00000001], [11000000]} = {1, 192}.
1298 C.-C. Chang et al. / Digital Signal Processing 20 (2010) 12861307

Fig. 7. The owchart of the extracting procedure.

With the third part A 3 = {[10000000], [11111111]}, applying XOR operator into last two LSBs, we get a1 a2 =
XOR([00], [11]) = [11]. This value is different from m1 m2 = [10]. Hence, the rst pixel (i.e. the rst dry pixel) in this part is
changed into 129. The third part becomes A 3 = {[10000001], [11111111]} = {129, 255}.

Step 5. Here, the number of LSBs used for substitution purpose in each part is l, with l = 3. From the rst part, we
get b1 b2 b3 = [100]; from the second part, we get [a1 a2 a3 ]1 = XOR([001], [000]) = [001]; from the third part, we get
[a1 a2 a3 ]2 = XOR([001], [111]) = [110]. Therefore, XOR(b1 b2 b3 , , [a1 a2 a3 ]1 , [a1 a2 a3 ]2 ) = XOR([100], [010], [001], [110]) =
[001]. This value is different from the index value zero; hence, we must change value b1 b2 b3 to [101]. Thus, the
value of the rst dry pixels in the rst part is changed. To obtain the value of b1 b2 b3 as [101], the rst part A 1 be-
comes {[00000001], [01100100]} = {1, 100}. The marked segment which is considered as stego image is A  = {1, 100,
1, 192, 129, 255} after embedding secret message S = [0110].

Our proposed scheme is evaluated by two criteria, namely, embedding capacity and quality of stego image. And these
two criteria have been established by two parameters: the number of raindrops and the length of segment. However, the
segment length is decided by the rst parameter. Therefore, choosing the number of raindrops will affect to both embedding
payload and stego image quality. Namely, if there are more pixels chosen as rain, the PSNR of the stego image will be reduces
and the embedding payload will be increased. Probably the segment in this circumstance will be longer. However, in our
approach, thanks to the denition of raindrop as an edge pixel and using the fuzzy complement to design the edge detector,
the quality of stego image is not much reduced under the human eyes even the PSNR has been decreased especially when
we consider more rains in image. Therefore, the reasonable number of raindrops can be chosen as the number of edge
pixels.
However, a practical threshold is estimated depending on the relationship in size of cover image and secret data, ab-
solutely. Namely, if the secret data size is too small in comparison with cover image, any valid value can be chosen as
threshold. That means the threshold can be chosen as 1 to give the best quality of image. In the other circumstance, we
must choose the small value for threshold. In sum up, to ensure the acceptable quality of the stego image as well as the
embedding capacity we would like suggest choosing threshold as from 0.4 to 0.7.

3.2. Extracting procedure

The owchart of this procedure is illustrated in Fig. 7. The details of each step are demonstrated in the following.

Step 1. The receiver rst partitions the stego image into a set of segments. Each segment contains n pixels. This operation
is performed over the stego image from left to right and top to bottom.

Step 2. To obtain the index value i of the ith segment, we perform the XOR operation on l LSBs of all pixels (including dry
pixels and wet pixels) contained in the ith segment. The outcome of this operation is considered as index values i s. We
apply this step to every segment in succession.

Step 3. According to the index value i of the ith segment, we divide the ith segment into (i + 1) parts by looking up the
n-indicator book. Noticeably, the dividing operation satises the two conditions mentioned in Section 2.2.

Step 4. To retrieve the secret message bits from each segment, we apply the XOR operation to x LSBs of all pixels in every
part except the rst one. The secret message bits are retrieved from the second part to the last part.

To make this process more clear, take an example which continues the previous procedure. The stego image at this stage
is A  = {1, 100, 1, 192, 129, 255} and the number of LSBs for substitution x = 2.
C.-C. Chang et al. / Digital Signal Processing 20 (2010) 12861307 1299

Fig. 8. Four 256 256 grayscale images.

Step 1. A set of segments contains one segment as A  = {1, 100, 1, 192, 129, 255} after the partition operation. This segment
is transformed into binary system as A  = {[00000001], [01100100], [00000001], [11000000], [10000001], [11111111]}.

Step 2. Since x = 2 < log2 n, l = 3. After obtaining three LSBs from all the pixels in this segment, we have the
group of bits as {[001], [100], [001], [000], [001], [111]}. Applying the XOR operation to the group, we achieve value as
XOR([001], [100], [001], [000], [001], [111]) = [010]. Presented in the decimal system, this value becomes 2 and is consid-
ered as the index value of this segment.

Step 3. Using the 6-indicator book (n-indicator book, with n = 6), we see that if a segment has index value 2, it is divided
into three parts and each part contains two pixels inside. Thus, based on the index value, we have three parts in total:
A 1 = {[00000001], [01100100]}, A 2 = {[00000001], [11000000]}, and A 3 = {[10000001], [11111111]} from the segment A  .

Step 4. From the second part A 2 = {[00000001], [11000000]}, we rst get two LSBs from all the pixels. Then, we apply
XOR operation to these LSBs, namely, XOR([01], [00]) = [01]. Similarly, from the third part A 3 = {[10000001], [11111111]},
we rst get two LSBs from all the pixels. Then, we apply the XOR operation to these LSBs, namely, XOR([01], [11]) = [10].
Appending these outcomes which contain [01] from the second part and [10] from the third part, we recover the secret
message as [0110].

4. Experimental results

The experimental results presented in this section demonstrate the performance of our proposed scheme. To conduct
our experiments, four 256 256 grayscale images shown in Fig. 8, namely, Lena, Baboon, Building, and Peppers are
served as the test images.
The peak signal-to-noise ratio (PSNR) is used in the experiments to evaluate the quality of the stego image. The PSNR
formula is dened as
2552
PSNR = 10 log10 (dB), (8)
MSE
where MSE is the mean square error between the cover and stego images. For a cover image whose width and height are
W H , respectively, MSE is dened as

1 
W 
H
MSE = I i j I i j2 , (9)
W H
i =1 j =1

where I i j and I i j are the pixel values of the cover and stego images, respectively. A higher PSNR indicates that the quality
of the stego image is better and more similar to the cover one.
1300 C.-C. Chang et al. / Digital Signal Processing 20 (2010) 12861307

Table 3
The relationship between the number of raindrops and the value of the parameter n.

(a) Lena (b) Baboon

(c) Building (d) Pepper

The quality of the stego image and the embedding payload of the proposed scheme depend on two parameters: (1) the
number of LSBs chosen for substitution, namely, the value of the parameter x, (2) the length of each segment which is
divided from the input grayscale image, namely, the value of the parameter n. The rst parameter depends on the ratio
between size of the secret message and the embedding capacity of the cover image. If the ratio is smaller than 1, namely,
the embedding capacity of the cover image is larger than the size of the secret message, we can choose the value x as 1
(the smallest value). Obviously, in this case, the required embedding space is small and the quality of the stego image with
high quality is ensured. Otherwise, we must increase the value of parameter x to guarantee the embedding capacity and
the quality of the stego image in this case will be reduced. The second parameter depends on the number of raindrops and
individual cover image. With the same cover image, if we seed more raindrops, the probability of value parameter n with
larger value will be higher. Observably, with the same number of raindrops, the value of parameter n depends on the edge
pixels of each specic cover image. Table 3 shows the relationship between the number of raindrops and the value of the
parameter n corresponding to four test images. It also presents that with the same number of raindrops, the values of n are
different corresponding to different cover image.
Table 4 shows that the number of secret bits is direct ratio to the length of segment. The embedding payload will
increase if the length of segment is larger. In Table 5, we conduct the experiments with one LSB substitution. However, we
cannot conclude the trend of the stego image quality based on Table 5, but the quality of the stego image is higher than
45 dB following the experimental results.
Table 6 and Table 7 show the relationships among the quality of the stego image, the embedding capacity and the
substitutive bits. Obviously, that the more LSBs are substituted generates the stego image with lower quality and higher
embedding payload.
There are two parameters used to measure the performance of the proposed scheme: the quality of stego image and the
embedding rate R. The rst criterion is evaluated by PSRN. The other is calculated by the amount of secret bits embedded
in cover pixels. As usual, the second criterion is presented by bpp (bits per pixel). A larger bpp indicates that the embedding
payload of the scheme is higher.
In general, it is dicult for people to distinguish the cover from the stego images when the PSNR value is larger than
30 dB specially when we utility the edge pixels. Based on the experimental results, even in the case of n = 3, the new
method can obtain an average PSNR of larger than 36.8 dB. In addition, with the substitution approach, the number of LSBs
chosen is one or two, as usual. If so, the values of PSNR are larger than 43 dB. According to experimental results, the stego
image is nearly the same with the cover image in the case of one or two bits substitution.
C.-C. Chang et al. / Digital Signal Processing 20 (2010) 12861307 1301

Table 4
The relationship between the length of segment (n) and the number of secret bits.

(a) Lena (b) Baboon

(c) Building (d) Pepper

Table 5
The relationship between quality of the stego image and the number of raindrops.

(a) Lena (b) Baboon

(c) Building (d) Pepper


1302 C.-C. Chang et al. / Digital Signal Processing 20 (2010) 12861307

Table 6
The PSNR (dB) of test images corresponding to different substitutive bits (x) when the thresh-
old is set to 0.4.

x Lena Baboon Building Pepper


1 52.0138 52.5178 49.3743 48.7537
2 43.986 44.0845 43.7392 43.5561
3 37.4694 37.097 36.8366 37.2517
4 31.0223 31.1613 31.1526 30.8675
5 24.6378 24.3092 24.306 24.4738

Table 7
The embedding capacity (bits) of test images corresponding to different substitutive bits (x)
when the threshold is set to 0.4.

x Lena Baboon Building Pepper


1 18,042 46,678 9,633 15,889
2 40,573 93,315 19,260 31,761
3 54,095 140,104 28,884 47,640
4 72,156 166,015 28,915 63,544
5 90,112 233,604 36,133 79,429

Moreover, compared with other methods with attaining the same PSNR values, the proposed scheme gives better quality
of the stego image from the human visual system (HVS). This is due to the fact that we utilize the edge detector. The
following table shows the quality of the stego image in two cases: (1) without edge detector and (2) using edge detector
with its edge image. To make difference between the stego images in above two cases clearly, the experimental results
shown in Table 6 are done with 4 LSBs substitution (n = 4).
Table 8 shows that even though the stego images possess the same PSNR, the images in the right side obtain higher
quality than those in the left side achieved by HVS. Without edge detector, we can perceive noise in non-edge region with
eyes. Utilizing edge detector, it is dicult for people to realize the locations of noise. Therefore, the role of edge detector
employed in improving the quality of stego image in our scheme is important. Moreover, above experiments show that the
new proposed scheme still generates a good look of stego image even the PSNR is not high.
Furthermore, based on Table 7, the embedding payload of this new scheme is ranged up to 3.7 bpp corresponding to
the values n ranged from 1 to 5. As to other schemes [10,11,17,18], the number of LSBs substitution is usually chosen as
one or two. However, in this scheme, thanks to the advantage of using edge detector, we completely select larger values
for parameter n without reducing the quality of stego image under the HVS. The larger value n helps providing the high
capability of embedding.
Moreover, to evaluate the maximal number of embedded bits for one image systematically, we rst pay attention on
some following parameters:

x: the number of LSBs substitution.


n: the length of each segment.
i : the index of certain ith segment. The value of i is ranged from 0 to (n 1), absolutely.
The reasonable number of raindrop is equal to the number of edge pixels.
To guarantee the number of edge pixels is large and the quality of the stego image is high, the threshold should be set
from 0.4 to 0.7.

Based on the embedding procedure, once x is not less than log2 n, the embedding capacity of the ith segment will be
(x log2 n + x (i 1)) bits. Otherwise, x (i 1) bits will be the embedding capacity of the ith segment. By choosing
maximal value for i , the payload of our proposed scheme can be shown as in Table 9.
However, denitely the practical capacity is smaller than the maximal estimated one because the value index i of
certain ith segment is not (n 1) always. Corresponding to four test images, the maximal embedding payload can be
achieved as in Tables 10 and 11 when the threshold is set as 0.4 and 0.7, respectively.
In Table 12, a comparison has been made between our scheme and two other schemes in [20] and [21].
Due to the fact that application property of both schemes in [20] and [20] is watermarking and image is chosen as
watermark, the accuracy of the extracted data (extracted image) is not strictly required. That means that extracted data is
required to be just similar to not the same as the embedded one. Moreover, the purpose of these schemes is to balance
these requirements based on the GA together a tness function.
Whereas, our proposed scheme is steganography and performs on any data type; therefore, the extracted data must
be what embedded. In addition to that the robust security requirement is satised based on the wet paper mechanism, as
default, our scheme focuses on how to reduce the conict between the embedding payload and stego image quality. Namely,
our scheme is to achieve one of following goals:
C.-C. Chang et al. / Digital Signal Processing 20 (2010) 12861307 1303

Table 8
The stego image with two above cases and its edge image.

Original Edge image Stego image Stego image


image without edge detector using fuzzy edge detector

Lena

PSRN: 30.852 dB; Number of raindrops: 9519

Baboon

PSRN: 31.436 dB; Number of raindrops: 22,325

Building

PSRN: 30.958 dB; Number of raindrops: 10,568

Pepper

PSRN: 30.371 dB; Number of raindrops: 11,648


1304
Table 9
Theoretical maximal embedding payload corresponding to different values of parameters n and x when the threshold is set to 0.7.

x=1 x=2 x=3 x=4 x=5


n bits/segment bits/pixel n bits/segment bits/pixel n bits/segment bits/pixel n bits/segment bits/pixel n bits/segment bits/pixel
2 0 0 2 1 1/2 2 2 2/2 2 3 3/2 2 4 2
3 1 1/3 3 2 2/3 3 4 4/3 3 6 2 3 8 8/3
4 2 2/4 4 4 4 4 7 7/4 4 10 10/4 4 13 13/4
5 3 3/5 5 6 6/5 5 9 9/5 5 13 13/5 5 17 17/5
6 4 4/6 6 8 8/6 6 12 2 6 17 17/6 6 22 22/6

C.-C. Chang et al. / Digital Signal Processing 20 (2010) 12861307


7 5 5/7 7 10 10/7 7 15 15/7 7 21 3 7 27 27/7
8 6 6/7 8 12 12/8 8 18 18/8 8 25 25/8 8 32 4
9 7 7/9 9 14 14/9 9 21 21/9 9 28 28/9 9 36 4

Table 10
The experimental maximal embedding payload when the number of raindrops is set of the number of edge pixels when the threshold is set to 0.4.

x Lena Baboon Building Pepper Average Payload (bits/pixel)


1 18,042 46,678 9,633 15,889 22560.5 0.344246
2 40,573 93,315 19,260 31,761 46227.25 0.705372
3 54,095 140,104 28,884 47,640 67680.75 1.032726
4 72,156 166,015 28,915 63,544 82657.5 1.261253
5 90,112 233,604 36,133 79,429 109819.5 1.675713

Table 11
The experimental maximal embedding payload when the number of raindrops is set of the number of edge pixels when the threshold is set to 0.7.

x Lena Baboon Building Pepper Average Payload (bits/pixel)


1 703 8415 876 719 2678.25 0.041
2 3,106 25,947 2,907 3,041 8750.25 0.133
3 5,982 44,310 5,130 5,820 15310.5 0.233
4 16,168 67,272 15,032 15,952 28606 0.436
5 26,354 90,234 24,934 26,084 41901.5 0.64
C.-C. Chang et al. / Digital Signal Processing 20 (2010) 12861307 1305

Table 12

Criteria [21] [20] Our scheme


Application Watermarking Watermarking Steganography

Approach Employ the GA and a tness Employ the GA and a tness Employ the wet paper
function function mechanism, n-indicator and edge
detector

Secret data Image Image Any data type

Extracted data Similar to secret data Similar to secret data The same as secret data

Requirements Imperceptibility Low High High


PSNR [33, 41] dB PSNR [44, 46] dB PSNR [30, 48] dB
Not utilize HVS yet Not utilize HVS yet Utilize HVS
Robustness All together LPF, MF, JPEG attacks Each separately LPF, MF, JPEG Avoid being detected by statistics
attack methods based on the wet paper
mechanism
Capacity Acceptable Low High
1 bit/16 pixels 1 bit/64 pixels 1 bit/1.56 pixels

Computational complexity High High Low

Trade off among requirements Weighting factors 1 , 2 and Weighting factor and Characteristics of cover image
is determined by characteristics of each cover characteristics of each cover itself
image itself image itself

Focus on Robustness Robustness Imperceptibility and capacity

Purpose To balance 3 requirements: To balance 2 requirements: To reduce the conict between


imperceptibility, robustness, and imperceptibility, and robustness payload and imperceptibility
capacity while xing capacity while xing robustness

Enhance the quality of stego image while increasing or, at least, maintaining high embedding capability.
Increase the payload while making better or, at least, keeping very low image distortion under the human eyes.

Due to the fact that rain is arbitrarily scatted over the cover image and no one has information about the position of
secret data. Thus, one of the important benets of the wet mechanism is robust ability itself against being detected by
statistics methods. In this proposed scheme, we need not worry about this criterion.
Although the proposed scheme has proofed that outperforms than other previous ones. Nevertheless, there are still some
weaknesses gured out as in following study. Based on analyzing these shortcomings, we would like to suggest solutions to
deal them as follows:

Weakness 1.

In our proposed scheme, both the maximal embedding capacity and the best quality of the stego image are various
from different numbers of raindrops. That means we did not give any specied measurement which sets a trade-off
among these requirements for a certain image.

Solution 1.

Design a function tness to design the trade-off among three requirements.


Apply GA to obtain the optimized outcome.

Weakness 2.

In our proposed scheme, we subjectively make decision on image quality based on the human eyes. We did not use or
build any mathematical simulation HVS model to evaluate the quality. That means our assessment of stego image is not
completely convincing.

Solution 2.

Utilize a mathematical simulation HVS model to exactly measure the quality of the stego image.
1306 C.-C. Chang et al. / Digital Signal Processing 20 (2010) 12861307

Weakness 3.

Thanks to employing the wet paper mechanism, our scheme is able to against being detected or traced by statistics
methods. However, the proposed scheme is not robust enough in some realistic situations.

Solution 3.

We should consider more common attacks to make the scheme more robust and practical by (1) redening the Selection
Rule (SR) to make the proposed scheme more robust; (2) reselecting pixels to be nominated pixels.

All the above weaknesses together their solutions are theoretical. To make perfectly perfect the proposed scheme, we
need to further study and implement.

5. Conclusions

In this paper, we have proposed a novel steganography scheme, which is established by the wet paper mechanism and
employs two techniques: an n-indicator and a fuzzy edge detector. The n-indicator book takes a role as a location map
which helps to determine the characteristics of each segment and indicating the amount of secret data will be embedded.
The fuzzy edge detector assists the new scheme in generating a better quality of the stego image. Indeed, compared with
other steganography schemes which generate the same PSNR of stego image, the new scheme possesses better quality of
stego image under the HVS thanks to the edge detector. Experimental results conrm that the proposed scheme is not only
to achieve high embedding payload but also to obtain satisfactory quality of the stego image.

References

[1] Y.H. Kuo, C.S. Lee, C.C. Liu, A new fuzzy edge detection method for image enhancement, in: Proceedings of IEEE International Conference on Fuzzy
Systems, vol. 2, 1997, pp. 10691074.
[2] G.J. Klir, T.A. Folger, Fuzzy Sets, Uncertainty and Information, Prentice-Hall Inc., USA, 1988.
[3] J.C. Bezdek, R. Chandrasekhar, Y. Attikiouzel, A geometric approach to edge detection, IEEE Trans. Fuzzy Syst. 6 (1) (1998) 5275.
[4] M. Sonka, V. Hlavac, R. Boyle, Image Processing, Analysis, and Machine Vision, second edition, Thomson Brooks/Cole, 1999.
[5] F. Russo, FIRE operators for image processing, Fuzzy Sets Syst. 103 (1999) 265275.
[6] J. Fridrich, R. Du, Secure steganographic methods for palette images, in: Proceedings of the 2nd International Workshop on Information Hiding, in:
LNCS, vol. 1768, 2000, pp. 4760.
[7] E. Franz, Steganography preserving statistical properties, in: Proceedings of the 5th International Workshop on Information Hiding, in: LNCS, vol. 2578,
2002, pp. 278294.
[8] H.R. Tizhoosh, Fast fuzzy edge detection, in: Proceedings of the Annual Meeting of the North American Fuzzy Information Processing Society, 2002, pp.
239242.
[9] H. Wang, S. Wang, Cyber warfare: Steganography vs. steganalysis, Commun. ACM 47 (10) (2004) 7682.
[10] J. Fridrich, M. Goljan, P. Lisonek, D. Soukal, Writing on wet paper, IEEE Trans. Signal Process. 53 (2005) 39233935.
[11] J. Fridrich, M. Goljan, D. Soukal, Ecient wet paper codes, in: Proceedings of the 7th International Workshop on the Information Hiding, in: LNCS,
vol. 3727, 2005, pp. 204218.
[12] A. Westfeld, R. Bhme, Exploiting preserved statistics for steganalysis, in: Proceedings of the 6th International Workshop on Information Hiding, in:
LNCS, vol. 3200, 2005, pp. 8296.
[13] T.M. Amarunnishad, V.K. Govindan, T.M. Abraham, A fuzzy complement edge operator, in: IEEE Proceedings of the 14th International Conference on
Advanced Computing and Communications, vol. 20, 2006, pp. 344348.
[14] J. Bierbrauer, J. Fridrich, Constructing good covering codes for applications in steganography, in: Transactions on Data Hiding and Multimedia Security
III, in: LNCS, vol. 4920, 2008, pp. 122.
[15] J. Fridrich, D. Soukal, Matrix embedding for large payloads, IEEE Trans. Inform. Security Forensics 1 (3) (2006) 390394.
[16] D. Schnfeld, A. Winkler, Embedding with syndrome coding based on BCH codes, in: Proceedings of the 8th ACM Workshop on Multimedia and
Security, 2006, pp. 214223.
[17] J. Fridrich, M. Goljan, D. Soukal, Wet paper codes with improved embedding eciency, IEEE Trans. Inform. Forensics Security 1 (1) (2006) 102110.
[18] X. Zhang, W. Zhang, S. Wang, Ecient double-layered steganographic embedding, Electron. Lett. 43 (8) (2007) 482483.
[19] T.M. Amarunnishad, V.K. Govindan, T.M. Abraham, Improving BTC image compression using a fuzzy complement edge operator, Signal Process. 88
(2008) 29892997.
[20] S.C. Chu, H.C. Huang, Y. Shi, S.Y. Wu, C.S. Shieh, Genetic watermarking for zerotree-based applications, Circuits Syst. Signal Process. 27 (2) (2008)
171182.
[21] H.C. Huang, C.M. Chu, J.S. Pan, The optimized copyright protection system with genetic watermarking, Soft Comput. 13 (4) (2009) 333343.

Further reading

[22] M. Wu, E. Tang, B. Liu, Data hiding in digital binary image, in: Proceedings of IEEE International Conference on Multimedia and Exposition, vol. 1, 2000,
pp. 393396.
[23] A. Westfeld, F5: A steganographic algorithm, in: Proceedings of the 4th International Workshop Information Hiding, in: LNCS, vol. 2137, 2001, pp. 289
302.
[24] Y.C. Tseng, Y.Y. Chen, H.K. Pan, A secure data hiding scheme for binary images, IEEE Trans. Commun. 50 (8) (2002) 12271231.
[25] F. Galand, G. Kabatiansky, Information hiding by coverings, in: Proceedings of the IEEE Information Theory Workshop, 2004, pp. 151154.
C.-C. Chang et al. / Digital Signal Processing 20 (2010) 12861307 1307

Chin-Chen Chang received his B.S. degree in applied mathematics in 1977 and his M.S. degree in computer and decision sciences in
1979, both from the National Tsing Hua University, Hsinchu, Taiwan. He received his Ph.D. in computer engineering in 1982 from the
National Chiao Tung University, Hsinchu, Taiwan. During the academic years of 19801983, he was on the faculty of the Department of
Computer Engineering at the National Chiao Tung University. From 1983 to 1989, he was on the faculty of the Institute of Applied Math-
ematics, National Chung Hsing University, Taichung, Taiwan. From 1989 to 2004, he worked as a professor in the Institute of Computer
Science and Information Engineering at National Chung Cheng University, Chiayi, Taiwan. Since 2005, he has worked as a professor in the
Department of Information Engineering and Computer Science at Feng Chia University, Taichung, Taiwan. Dr. Chang is a Fellow of IEEE,
a Fellow of IEE and a member of the Chinese Language Computer Society, the Chinese Institute of Engineers of the Republic of China,
and the Phi Tau Phi Society of the Republic of China. His research interests include computer cryptography, data engineering, and image
compression.

Jung-San Lee received the B.S. degree in computer science and information engineering in 2002 and his Ph.D. in computer science
and information engineering in 2008, both from the National Chung Cheng University, Chiayi, Taiwan. Since 2008, he has worked as an
assistant professor in the Department of Information Engineering and Computer Science at Feng Chia University, Taichung, Taiwan. His
current research interests include electronic commerce, information security, cryptography, and mobile communications.

T. Hoang-Ngan Le received her B.S. degree in Information Technology from the University of Science, Vietnam National University
HCMC, in 2005 and her M.S. degree from the same university in 2009. She is currently a Lecturer of the Department of Computer Science,
Faculty of Information Technology, University of Science, Vietnam National UniversityHCMC, Vietnam. Her research interests include
image processing, audio processing, and multimedia security.

You might also like