A Data Hiding Scheme based on Voronoi Diagram

Similar documents
1 An Image Data Hiding Scheme Based on Vector Quantization and Graph Coloring

Hybrid Stegnography using ImagesVaried PVD+ LSB Detection Program

A Revisit to LSB Substitution Based Data Hiding for Embedding More Information

A Reversible Data Hiding Scheme for BTC- Compressed Images

Adaptive Steganography Method Based on Two Tiers Pixel Value Differencing

A reversible data hiding based on adaptive prediction technique and histogram shifting

An Adaptive Data Hiding Method Using Neighborhood Pixels Differencing Based On Modulus Function

Digital Image Steganography Using Bit Flipping

An Information Hiding Scheme Based on Pixel- Value-Ordering and Prediction-Error Expansion with Reversibility

Random Traversing Based Reversible Data Hiding Technique Using PE and LSB

VARIABLE RATE STEGANOGRAPHY IN DIGITAL IMAGES USING TWO, THREE AND FOUR NEIGHBOR PIXELS

A high quality steganographic method with pixel-value differencing and modulus function

Digital image steganography using LSB substitution, PVD, and EMD

Meaningful Shadows for Image Secret Sharing with Steganography and Authentication Techniques

A Framework to Reversible Data Hiding Using Histogram-Modification

Research Article Improvements in Geometry-Based Secret Image Sharing Approach with Steganography

Digital Image Steganography Techniques: Case Study. Karnataka, India.

CHAPTER 6. LSB based data hiding with double Encryption. 6.1 Introduction

Research Article A Novel Image Data Hiding Scheme with Diamond Encoding

A Secure Steganographic Method Using Modified LSB (Least Significant Bit) Substitution

User-Friendly Sharing System using Polynomials with Different Primes in Two Images

Efficient & Secure Data Hiding Using Secret Reference Matrix

Data Hiding on Text Using Big-5 Code

High Capacity Data Hiding Scheme for DCT-based Images

A Formula Diamond Encoding Data Hiding Scheme

A Grayscale Image Steganography Based upon Discrete Cosine Transformation

Enhanced Least Significant Bit Scheme Robust Against Chi-Squared Attack

A new approach to the secret image sharing with steganography and authentication

Image Tamper Detection and Recovery Based on Dual Watermarks Sharing Strategy

Reversible Image Data Hiding with Local Adaptive Contrast Enhancement

Abstract. Keywords: Genetic Algorithm, Mean Square Error, Peak Signal to noise Ratio, Image fidelity. 1. Introduction

DIGITAL IMAGE WATERMARKING BASED ON A RELATION BETWEEN SPATIAL AND FREQUENCY DOMAINS

COPYRIGHT PROTECTION OF PALETTE IMAGES BY A ROBUST LOSSLESS VISIBLE WATERMARKING TECHNIQUE *

Keywords Stegnography, stego-image, Diamond Encoding, DCT,stego-frame and stego video. BLOCK DIAGRAM

Improved Qualitative Color Image Steganography Based on DWT

Image Error Concealment Based on Watermarking

488 IEEE TRANSACTIONS ON INFORMATION FORENSICS AND SECURITY, VOL. 3, NO. 3, SEPTEMBER 2008

Steganography by using Logistic Map Function and Cellular Automata

Highly Secure Invertible Data Embedding Scheme Using Histogram Shifting Method

Bit Adjusting Image Steganography in Blue Channel using AES and Secured Hash Function

Secured Double Layer Data Hiding Using Encryption and Decryption Techniques

A NOVEL SECURED BOOLEAN BASED SECRET IMAGE SHARING SCHEME

Multilayer Data Embedding Using Reduced Difference Expansion

A Novel Reversible Data Hiding Technique Based on Pixel Prediction and Histogram Shifting

A BTC-COMPRESSED DOMAIN INFORMATION HIDING METHOD BASED ON HISTOGRAM MODIFICATION AND VISUAL CRYPTOGRAPHY. Hang-Yu Fan and Zhe-Ming Lu

REVERSIBLE DATA HIDING SCHEME BASED ON PREDICTION ERROR SORTING AND DOUBLE PREDICTION.

A NovelQR-Code Authentication Protocol Using Visual Cryptography for Secure Communications

High capacity data hiding scheme based on (7, 4) Hamming code

Appendix A. Definition of Terms

Data Hiding Scheme Based on A Flower-Shaped Reference Matrix

Computation of Voronoi Diagrams and Delaunay Triangulation via Parametric Linear Programming

Optimized Watermarking Using Swarm-Based Bacterial Foraging

Improved Reversible Data Hiding in Encrypted Images Based on Reserving Room After Encryption and Pixel Prediction

Design and Performance Evaluation of Boolean based Secret Image Sharing Scheme

A Survey of Fragile Watermarking-based Image Authentication Techniques

COPYRIGHT PROTECTION OF PALETTE IMAGES BY A ROBUST LOSSLESS VISIBLE WATERMARKING TECHNIQUE *

A Robust Color Image Watermarking Using Maximum Wavelet-Tree Difference Scheme

Comparison of Wavelet Based Watermarking Techniques for Various Attacks

A New Approach to Compressed Image Steganography Using Wavelet Transform

Secret Image Sharing Scheme Based on a Boolean Operation

A Comparative Study and Analysis of Quantization Table Modification Effect on JPEG Based Image Steganography

Interleaving Max-Min Difference Histogram Shifting Data Hiding Method

High Capacity Reversible Watermarking Scheme for 2D Vector Maps

Reversible Data Hiding Based on Median Difference Histogram

Feature Based Watermarking Algorithm by Adopting Arnold Transform

Adaptive Pixel Pair Matching Technique for Data Embedding

Reversible Blind Watermarking for Medical Images Based on Wavelet Histogram Shifting

DATA HIDING IN PDF FILES AND APPLICATIONS BY IMPERCEIVABLE MODIFICATIONS OF PDF OBJECT PARAMETERS

A Novel Secure Digital Watermark Generation from Public Share by Using Visual Cryptography and MAC Techniques

Mobile Robot Path Planning in Static Environments using Particle Swarm Optimization

Reversible Data Hiding VIA Optimal Code for Image

Robust DWT Based Technique for Digital Watermarking

VARIATION-FREE WATERMARKING TECHNIQUE BASED ON SCALE RELATIONSHIP

2

A Novel Information Security Scheme using Cryptic Steganography

Robust Image Watermarking based on DCT-DWT- SVD Method

IMPROVED RHOMBUS INTERPOLATION FOR REVERSIBLE WATERMARKING BY DIFFERENCE EXPANSION. Catalin Dragoi, Dinu Coltuc

A Image Steganography based on Non-uniform Rectangular Partition

A secure steganographic algorithm based on Cellular Automata using Fibonacci representation

Chaos-based Modified EzStego Algorithm for Improving Security of Message Hiding in GIF Image

Image Steganography Method Using Integer Wavelet Transform

An Improved Reversible Data-Hiding Scheme for LZW Codes

SINDH UNIVERSITY RESEARCH JOURNAL (SCIENCE SERIES)

A DWT and DCT based Hybrid Approach for Audio Watermarking

ACEAIT-3055 High-Capacity Steganography Using MRF-Synthesized Cover Images

MRT based Fixed Block size Transform Coding

CHAPTER 4 REVERSIBLE IMAGE WATERMARKING USING BIT PLANE CODING AND LIFTING WAVELET TRANSFORM

Robust Steganography Using Texture Synthesis

AN EFFICIENT VIDEO WATERMARKING USING COLOR HISTOGRAM ANALYSIS AND BITPLANE IMAGE ARRAYS

Hyper Edge Detection with Clustering for Data Hiding

Data Hiding Method Based on Graph Coloring and Pixel Block s Correlation in Color Image

Feature-Guided K-Means Algorithm for Optimal Image Vector Quantizer Design

Digital Image Watermarking Scheme Based on LWT and DCT

DIGITAL WATERMARKING FOR GRAY-LEVEL WATERMARKS

A Novel Fragile Watermark-Based Image Authentication Scheme for AMBTC-Compressed Images

Data Hiding in Color Images Using Modified Quantization Table

A Digital Video Watermarking Algorithm Based on LSB and DCT

A DWT Based Steganography Approach

SECURE DATA EMBEDDING USING REVERSIBLE DATA HIDING FOR ENCRYPTED IMAGES

A WATERMARKING TECHNIQUE USING SYNONYM SUBSTITUTION FOR INTEGRITY PROTECTION OF XML DOCUMENTS

Transcription:

A Data Hiding Scheme based on Voronoi Diagram Shi-Yu Cui 1, *, Zhi-Hui Wang 1, Chin-Chen Chang 2,3, and Ming-Chu Li 1 1 Department of Software, Dalian University of Technology, DaLian 116024, China {cuishiyu0523, wangzhihui1017}@gmail.com, li_mingchu@yahoo.com 2 Department of Information Engineering and Computer Science, Feng Chia University, Taichung 407, Taiwan, ROC alan3c@gmail.com 3 Department of Computer Science and Information Engineering, Asia University, Taichung 41354, Taiwan, ROC Received 25 August 2011; Revised 10 October 2011; Accepted 20 November 2011 Abstract. In this paper, we propose a novel image steganographic technique based on the Voronoi diagram. The basic idea is to generate a Voronoi diagram of a graph transformed from cover image; that is, the Voronoi points correspond to every two consecutive pixels in the cover image. According to the secret bits to be embedded, every Voronoi point will either be replaced by one of its neighbors or keep its original value. As a result, this scheme does not need any extra information, such as indicators, to extract the secret data. Furthermore, the experimental results show that the proposed scheme can achieve greater data hiding capacity with less distortion compared to related schemes. Keywords: Steganography, data hiding, voronoi diagram, delaunay triangulation, PSO 1 Introduction Large digital images can be conveniently transmitted via the Internet due to the rapid development of networking technologies. Because networks are public environments, protecting transmitted information has become a significant problem. Several techniques have been proposed, which can be classified into two categories: encryption [1], [2] and steganography [3]-[9]. In encryption, the secret information is converted into meaningless ciphertext through cryptography algorithms such as DES[1], RSA[2]. This meaningless ciphertext is sent to the recipient via the Internet. No one can extract the secret information without the secret key; however, the attacker may pay more attention to the ciphertext, because it is meaningless. In contrast, steganography involves embedding secret information into meaningful cover images with good visual quality. Steganographic schemes such as reversible data hiding can recover the original image after extraction, but the embedding capacity is generally limited. To meet transfer large amount of information efficiently and securely, the embedding capacity of these schemes must be improved while keeping low distortion. In past decades, many steganographic techniques have been proposed. One effective and common approach is embedding secret information into the least-significant bits (LSB) of the pixel pairs in an image. To achieve higher stego-image quality, Wang et al. [3] proposed an improved scheme that finds the optimal LSB substitution using genetic algorithms. However, because this approach is time-consuming and contains obvious distortion in the smooth areas of cover images, Chang et al. [4] proposed an optimal LSB substitution method based on dynamic programming that improves the computation time of Wang et al. s scheme [3]. In addition, Wu and Tsai [5] proposed a scheme to hide more information in the edge areas using pixel differences. In recent years, Wu et al. [6] proposed a method based on pixel-value differencing and LSB replacement; Mielikainen revisited an LSB matching method [7]; and Yang et al. presented a similar scheme [8]. Later, Wang et al. proposed a combination scheme based on pixel-value differencing and modulus functions [9] to reduce the visibility of the hiding effect in Wu and Tsai s scheme. To obtain higher capacity than Wang et al. s scheme, Hsiao et al. [10] * Correspondence author

Journal of Computers Vol. 22, No. 4, January 2012 proposed an adaptive steganographic method based on just noticeable distortion (JND) profile which performs both well on embedding capacity and image quality. In order to achieve higher embedding capacity and better image quality than related schemes [9], [10], this paper proposes an ingenious data hiding technique that manipulates mapping rules based on the Voronoi diagram. We treat every two consecutive pixels as a pixel pair to record secret data and use their value as coordinates to generate a Voronoi diagram. According to the experimental results, the proposed scheme is superior to Wang et al. s method in terms of both stego-image quality and embedding capacity. Furthermore, our scheme provides better security by using a secret key in the PSO algorithm, which is used to generate the Voronoi diagram. The rest of this paper is organized as follows. Section 2 introduces the Voronoi diagram and particle swarm optimization (PSO) algorithm, which are used in the proposed scheme. The proposed data hiding scheme, which includes an embedding phase and a secret information extracting phase, is presented in Section 3. Section 4 presents the experimental results of the proposed method, including the influence of the parameter setting and the comparison with Wang et al. s scheme and Hsiao et al. s scheme. Finally, conclusion is provided in Section 5. 2 Related Works In this paper, a Voronoi diagram on a plane is considered as a data structure in which the Voronoi points correspond to every adjacent pixel pair in a cover image. Each Voronoi point is assigned an integer value with the PSO algorithm to stand for binary secret data. The Voronoi diagram and PSO algorithm are described in this section. 2.1 Voronoi Diagram The Voronoi diagram was originally proposed in 1644 by Descartes, who presented it in [11]. However, the complete concept was introduced by the mathematicians Dirichlet [12] and Voronoi [13], [14], the structure of this concept has been named Dirichlet tessellation or Voronoi diagram as its standard name today. In mathematics, a 2D Voronoi diagram is a special kind of decomposition used to put n points into a convex polygon on a plane. The convex polygon is generated by finding the perpendicular bisectors between every two neighboring points for the purpose of creating one convex polygon contains only one generating point; each point in the convex polygon is closer to its generating point than to any other. For example, let P i stands for a point on a plane. A Voronoi diagram with six points is shown in Figure 1. Convex polygons containing P i are called Voronoi polygons; the contained points are called Voronoi points; and its segments are called Voronoi edges. 48 Fig. 1. A Voronoi diagram of six points If (and only if) the Voronoi polygons of P i and P j are separated by the same edge, connect P i and P j with a straight line. The triangulations consisting of straight lines between every two adjacent Voronoi points that share the same Voronoi edge are called Delaunay triangulations. The Delaunay triangulation for the Voronoi diagram in Figure 1 is shown in Figure 2. There is one and only one Delaunay triangulation corresponding to a Voronoi diagram.

Cui et al: A Data Hiding Scheme based on Voronoi Diagram Fig. 2. A Delaunay triangulation 2.2 Particle Swarm Optimization (PSO) Particle swarm optimization (PSO) is an evolutionary algorithm developed by Kennedy, Eberhart and Shi [15], [16] for a social model simulation [17]. PSO maintains a group of candidate solutions called particles and repeats a process to discover a satisfactory solution to the problem. In every loop, particles will move to a new position according to equations for each particle and each dimension until its best position is discovered or time is up. In Equation (1), v(t) and x(t) indicate a particle s velocity and position at time t; p(t) presents the best previous position of this particle; g(t) stands for the best previous position of the informants of the particle default values; R(c) means the uniform distribution on [0, c]; and w and c are constant coefficients. The movements of these particles are used to guide the swarm moved. v( t 1) w v() t R( c) ( p() t x()) t R( c) ( g() t x()) t, xt ( 1) xt ( ) vt ( 1) (1) The output results of the same graph are unchanged, using a same fixed integer as a secret key to initiate a pseudorandom number generator and setting a fixed stop time. Otherwise, the PSO algorithm may output different results every time due to the different keys and various stop times. 3 The Proposed Scheme This paper proposes a novel data hiding scheme based on a Voronoi diagram transformed from a cover image. The main idea is to generate a Voronoi diagram in which the Voronoi points correspond to every two adjacent pixels in a grayscale image (i.e. cover image). The Voronoi diagram is used as an embedding map. Each Voronoi point stands for an integer value 2 k, which is converted from a k-bit binary secret message. Only the neighboring pixel pairs of the cover image, which is transformed through a proposed generating process, are embeddable. Therefore, each embeddable pixel pair can carry k-bits secret binary message by being replaced by another meaningful pixel pair based on the relationship between the two Voronoi points to which they correspond. Some pairs of pixels are not changed to ensure that the Voronoi diagrams are the same for the cover image and stego-image secret extracting process. Details of the data hiding phase are described below. Let I and I denote an original image and a stego-image, respectively, both of which are sized H W, where H and W stand for the height and width of the original image and the stego-image. Let I(x, y) and I (x, y) represent the pixel value at the position of x th row and y th column of I and I, where 1 x W, 1 y H. A secret message is embedded and extracted as binary data. Let SM denote the secret message, where SM={s m s m {0, 1}, for m=1, 2,, p} and p is the length of SM. To create a pixel pair able to be replaced by another pixel pair that carries a fixed value, the secret message SM is divided into uniformly k-bit binary data; then SM is formed as a sequence of decimal values converted from those k-bit binary data. Let s n denote a transformed decimal value which is expressed within a range of [0, 2 k -1]. The transformed secret message SM is represented as: SM ={s n s n {0, 1, 2,, 2 k -1}, for n=1, 2,, q}. The following equation is used to transform the original secret SM into SM : s, for n = 0, 1,, q and m = 1, 2,, p. (2) k 1 ( 1) 2 k j n s j m k j 49

Journal of Computers Vol. 22, No. 4, January 2012 Let G(V, E) stand for a graph on a plane which is used to generate a Voronoi diagram. Each vertex in G indicates a pair of neighboring pixels in I as shown in Figure 3; in other words, a vertex is transformed from the two adjacent pixels are on the same row and adjacent column in the cover image. For example, there are two adjacent points I(2,3)=155 and I(2,4)=158 in Figure 3; the corresponding vertex in G is v(155,158). All same pixel pairs are indicated by the same vertex in G. For instance, I(2,3)=155 and I(2,4)=158, I(3,3)=155 and I(3,4)=158 correspond to vertex v(155,158). In this way, except for unembeddable pairs, all pixel pairs in the cover image can find their corresponding vertex points in graph G. 50 Fig. 3. Pixel pairs of image Lena The proposed scheme begins by scanning a cover image from left to right and from top to bottom in order to construct graph G by adding all vertices which indicate every kind of pixel pairs in the cover image. Next, the constructed graph G is used to generate the Voronoi diagram and Delaunay triangulation. Then, all neighboring vertices that share the same Voronoi edge in a Delaunay triangulation are connected to make sure that each vertex in G can find other Voronoi points by connecting lines under a breadth-first search. Next, Voronoi points that are also the vertices of graph G receive r kinds of value, which are denoted as Value(v) by the PSO algorithm. A secret key is used in a pseudorandom number generator of PSO for security. In order to ensure that each kind of Voronoi point only corresponds to a decimal value which is transformed from binary secret data in SM, r should fall into the range of the set R as follows: R={r i r i {2 2, 2 3,, 2 k }, for i=1, 2,, k-1 and k N, where N is the set of natural numbers. For example, when r equals 2 2, this means that there are four kinds of values for the Voronoi points; each point receives one decimal integer value in the range of [0, 3] to stand for one 2-bit binary secret data "00", "01", "10" and "11", respectively. As a result, every vertex in graph G corresponds to a k-bit binary secret data, and all r kinds of values can be found using a breadth-first search starting from any Voronoi point. To ensure that the secret message can be extracted completely, the Voronoi diagram generated based on the cover image must be the same as the one generated based on the stego-image. This means that the vertices appearing in image I before the hiding process also exist in image I. Let LastPoint(v) represent the last positions of every kind of vertex appearing in the cover image. Since vertex v(155,158) appears five times in Figure 3, the LastPoint(v(155,158)) is (5,4) which is the last position of v(155,158). In the data hiding process, the pixel pairs at LastPoint(v) cannot be used for embedding information. Although all different kinds of value have corresponding vertices in G after Voronoi diagram generation for the stego-image, the image quality is not as good as the cover image for carrying secret messages. If too many pixel pairs are replaced by Voronoi points which are too far away, this may reduce the visual quality of the stego-image. There should be a tradeoff between high embedding capacity and high stego-image quality. Let Distance(v 1,v 2 ) denote the distance of two vertices v 1 and v 2 ; v if and v is stand for the first and the second pixel of the i th vertex, respectively. The equation is defined as: Distance( v, v ) v v v v (3) 1 2 1f 2 f 1s 2s When a vertex can t find all r kinds of vertex values using a breadth-first search in the Voronoi diagram or the distance between this vertex and one of the other vertices is larger than a constant value dis_const, then this vertex cannot be used for embedding information and will be deleted in G. In such a case, we rebuild the Voronoi diagram based on the new G. This procedure is called Reconstruct(G) and repeats until each vertex can find all kinds of vertex values in the distance [0, dis_const]. In general, there are two unembeddable kinds of pixel pairs: the corresponding vertex is deleted by Reconstruct(G), and the last pixel pair in the cover image.

Cui et al: A Data Hiding Scheme based on Voronoi Diagram The proposed scheme also has safety performance, since an unauthorized receiver cannot extract a secret message without knowing the process of Voronoi diagram generation and the secret key (i.e. the seed of the random generator) used in the PSO algorithm. 3.1 Embedding Procedure The detailed data hiding procedure consists of the following steps: Input: a cover image I and a secret message SM. Step 1: Divide the secret message SM into parts of k-bit binary data uniformly. Then transform it into a sequence of decimal values represented as SM ; the elements of SM are denoted as s n s. Step 2: Generate a graph G by scanning the whole cover image I from left to right and from top to bottom. Add all kinds of pixel pairs v(x, y) into G, and record each kind of v(x, y) s last appearance position, denoted as LastPoint(v). Step 3: Construct a Voronoi diagram and Delaunay triangulation on G. Connect every two vertices in a Delaunay triangulation if and only if they share the same Voronoi edge. Step 4: Use a secret key to assign r kinds of value to all vertices in G with a PSO algorithm, where r equals 2 k, and put values in all vertices Value(v) s at the same time. Step 5: Reconstruct graph G. The details of this procedure are shown below. For each v(x, y) in G, check that whether the v(x, y) shares values with all r-kinds of values in Value(v) in a constant distance dis_const using a breadth-first search. If not, delete v(x, y) until no v can be deleted. Step 6: Embed the secret message into the cover image in a zig-zag scanning manner to process cover image I. For every pixel pair in the original image I, find its corresponding vertex v(x, y) in G. If the position of the pixel pair is not the same as LastPoint(v), find v(x, y ) using breadth-first search under conditions: Value(v )=s n and Distance(v, v ) dis_const. If v(x, y ) equals v(x, y), then process the next pixel pair to embed s n+1 ; otherwise, replace the current pixel pair in the cover image by the v(x, y ) s corresponding pixel pair. If the position of the pixel pair is the same as LastPoint(v), then process the next pixel pair to embed s n and delete vertex v(x, y) in graph G. The algorithm terminates when all pixel pairs in I are processed or when no vertex exists in G. Step 7: Output the stego-image I. 3.2 Embedding Example Here is an example of the proposed embedding scheme. There are four kinds of values in Step 4, so 2-bit binary data can be embedded in a pixel pair. The dis_const is set to 4. For simplicity's sake, an 8 8 pixel block sized cover image I is adopted (as shown in Figure 3), and the secret message SM is "00011011". The corresponding transformed secret message SM is shown in Figure 4. Fig. 4. Transform secret message into decimal 160 158 156 154 152 150 148 148 150 152 154 156 158 160 Fig. 5. The Voronoi diagram and Delaunay triangulation on graph G for pixel block First, construct graph G by scanning the cover image s pixel block in Figure 3 in a zig-zag manner. Next, generate a Voronoi diagram and Delaunay triangulation on G and connect the vertices which share a Voronoi edge. The result is shown in Figure 5. 51

Journal of Computers Vol. 22, No. 4, January 2012 Next, each Voronoi point in G receives a value between 1 and 4 using the PSO algorithm. The result is shown in Figure 6. The integer values 1, 2, 3, and 4 correspond to secret bits "00", "01", "10" and "11", respectively. Fig. 6. Value list of Voronoi points In the reconstruction process, only the vertices that can find all kinds of values within distance dis_const remain. Figure 7 shows the reconstruction process result for the vertices in Figure 6. Fig. 7. Reconstructed graph G 52 Fig. 8. The outputted stego-image

Cui et al: A Data Hiding Scheme based on Voronoi Diagram After reconstructing G, data hiding begins for cover image I in a zig-zag manner. The first pixel pair I(1,1) and I(1,2), which correspond to v(155,155), is replaced by the pixel pair (156,156) to embed secret data "00" using a breadth-first search in G. When processing the pixel pair of I(5,1) and I(5,2), which is the last appearance of v(155,155), graph G should be reconstructed after deleting v(155,155) other than embedding secret data in v(155,155). If the vertex does not appear in the reconstructed graph G, such as (151,151), then it is skipped without being processed. Following this procedure, repeat the embedding process until no v(x, y) remains in the block or until time is up. Finally, the stego-image with 34 embedded secret data bits is outputted as shown in Figure 8. 3.3 Secret Extraction The secret data extraction procedure is the reverse procedure of secret data hiding. First, the graph G must be rebuilt through stego-image I. All different last appeared pixel pairs in the cover image remain unchanged in the stego image to guarantee that the graph G rebuilt from the stego-image is exactly the same as the one built according to the cover image. The recipient can use the same secret key in the PSO algorithm to ensure that the values in G are also the same as those in the data hiding phase. For each stego-pixel pair except for the last appeared pixel pair of each kind, check whether there is a vertex corresponding to it in graph G. If so, then obtain the Value(v) of that vertex; the binary data converted from Value(v) are the secret data hidden in that pixel pair. If the current processing stego-pixel pair is the last appearing one of its kind, then reconstruct G after deleting it, and repeat the above secret extracting procedure until all stego-pixel are processed. For instance, we try to exact secret information from the stego-image generated by the embedding example in Subsection 3.2. The first pixel pair is (156,156). Its position is not equal to LastPoint(v(156,156)), and v(156,156)=0 is in current value list. Thus, the binary secret bits "00" can be extracted from this pixel pair. When a pixel pair shows its final appearance in the stego-image as (155,158), then the scheme will delete v(155,158) and reconstruct G to update the current value list by repeating Step 5. The pixel pairs (151,151) and (149,149) in stego-image will also be skipped if they do not appear in the current graph G and value list. The extracting scheme finds that only the former 17 pixel pairs can extract secret information after scanning the whole stego-image I from left to right and from top to bottom, which is similar to the embedding procedure. The rest of pixel pairs are deleted for the reasons stated above. The extraction process terminates when all embedded secret information has been extracted successfully. The extracted secret information in decimal system is "01230123012301230", corresponding to the original binary secret data "00011011000110110001101100". 4 Experimental Results and Analysis In this section, the proposed scheme s experimental results, including the hiding capacity and the visual quality of stego-image, are presented. The environment for the experiment is an Intel Core i5 machine at 2.40GHz with 4GB main memory. Programs were implemented using MATLAB 7.0 software, Intel Open CV 2.1.0 and Standard PSO in C [18]. Six grayscale images of size 512 512 were used (Figure 9). Fig. 9. Six grayscale test images of size 512 512 53

Journal of Computers Vol. 22, No. 4, January 2012 4.1 Embedding Capacity and Distortion Performance In image steganography, it is critical for a data hiding scheme to provide high embedding capacity with high stego-image quality. Peak signal-to-noise ratio (PSNR) is generally used to evaluate the perceptual quality between the cover image and the stego-image. A larger PSNR indicates that the quality of the stego image is more similar to the original one. The PSNR between the cover image and the stego-image is calculated using Equation (4). PSNR 2 (db) 10 log (255 / MSE) 10, 1 MSE I x y I x y W H H W ( (, ) '(, 2 )) (4) x 1 y 1 I(x, y) and I (x, y) are the (x, y) th pixel values of the cover image I and stego-image I ; W and H denote the width and height of the cover image. Table 1. Embedding capacity and PSNR values (with r set as 4 and dis_const set as 4, 8, 12, 16) r = 4 Cover image (512 512) dis_const = dis_const = 4 dis_const = 8 12 Airplane Capacity (bits) 239898 240566 240594 240606 PSNR (db) 49.5406 49.4428 49.4133 49.3948 Baboon Capacity (bits) 227948 228984 229024 229028 PSNR (db) 49.755 49.6345 49.6247 49.6045 Boat Capacity (bits) 229960 230920 230948 230954 PSNR (db) 49.8766 49.7264 49.7273 49.7241 Lena Capacity (bits) 236824 237568 237608 237624 PSNR (db) 49.8288 49.7134 49.721 49.7052 Pepper Capacity (bits) 238156 238824 238870 238872 PSNR (db) 49.8743 49.7452 49.7451 49.7282 Tiffany Capacity (bits) 245320 245874 245906 245908 PSNR (db) 50.0544 49.9815 49.9523 49.9430 Table 2. Embedding capacity and PSNR values (when r = 4, 8, 16, 32, respectively, and ) Cover image r = 4 r = 8 r = 16 r = 32 (512 512) Airplane Capacity (bits) 240606 360249 479340 582325 PSNR (db) 49.3948 46.9852 43.9186 41.2450 Baboon Capacity (bits) 229028 342219 455376 563870 PSNR (db) 49.6045 46.8666 44.017 41.3437 Boat Capacity (bits) 230954 345642 459964 567685 PSNR (db) 49.7241 46.6992 44.1241 41.1855 Lena Capacity (bits) 237624 355581 471684 567590 PSNR (db) 49.7052 46.8426 43.9231 41.0212 Pepper Capacity (bits) 238872 357768 475808 569030 PSNR (db) 49.7282 46.8592 44.1217 41.063 Tiffany Capacity (bits) 245908 368406 489512 603405 PSNR (db) 49.943 46.9866 44.5184 40.9978 4.2 Parameter Analysis In the proposed scheme, dis_const is used to limit the area of breadth-first search, and r is the kinds of values to be assigned to vertices with the PSO algorithm. There is no doubt that both values influence the experimental results. The detailed analysis is presented in the following section. Table 1 gives the experimental results, where dis_const equals 4, 8, 12, and 16, respectively, and r equals 4. We can see that the hiding capacity and the stego-image quality look stable with a fixed r and different dis_const. When the dis_const becomes larger, the hiding capacity increases slightly, while the stego-image quality decreases slightly. The reason that the embedding capacity increases in Table 1 is that the area for the breath-first search is widened by increasing the dis_const. The vertices find all kinds of values more easily in the larger area to avoid 54

Cui et al: A Data Hiding Scheme based on Voronoi Diagram being deleted, but there is a tradeoff between high embedding capacity and high PSNR by setting the value of dis_const. Table 2 shows several experimental results by setting a constant value to dis_const and different values to r. It is obvious that a larger r value leads to higher capacities and lower PSNR. Moreover, the embedding capacity increases dramatically when the value of r increases, because each embeddable pixel pair can carry r-bit secret data each time. 100 60000 50000 r=4 r=8 r=16 90 80 70 r=4 r=8 r=16 capacity(bytes) 40000 30000 20000 PSNR(dB) 60 50 40 30 10000 20 10 0 0 2 4 6 8 10 12 14 16 dis_const (a)embedding capacity 0 0 2 4 6 8 10 12 14 16 dis_const (b) PSNR values Fig. 10. The embedding capacity and PSNR when dis_const varies from 1 to 16 with the test image Baboon The above tables show that the PSNR values can be improved by setting a small dis_const. However, the dis_const must increase with the increase in r. If the dis_const is so small that the breadth-first search is limited to a small scope, then most vertices are unable to find all kinds of values and will be deleted as shown in Figure 10. Fig. 11. Visual quality performance when dis_const and r set as (4, 4) 55

Journal of Computers Vol. 22, No. 4, January 2012 4.3 Comparison with Related Schemes Based on Embedding Rate and Perceptual Quality The results of the proposed scheme are compared with the irreversible data hiding schemes of Wang et al. [9] and Hsiao et al. [10] as shown in Table 3, Table 4 and Table 5. In order to obtain suitable parameter values of high perceptual quality and embedding capacity, the dis_const and r are set as (4, 4), (8, 16), (16, 16) and (32, 16) respectively. Table 3 obviously shows that larger embedding capacity can be obtained by setting r=32 and dis_const=16, while the high PSNR values of the stego-image can be obtained by setting r=4 and dis_const=4. In general, larger embedding capacity can be achieved by setting larger r and dis_const values at the cost of PSNR reduction. The proposed scheme could achieve higher PSNR values with a smaller dis_const. Figures 11 and 12 indicate the visual quality performance for test images when dis_const and r are set as (4, 4) and (32, 16), respectively. Compared with Wang et al. s scheme as shown in Table 4, our scheme generally performs superior in terms of both embedding capacity and PSNR values when dis_const and r are set as (16, 16). The proposed scheme yields lower PSNR values for only a few images but have higher capacities. For example, the PSNR for the image Lena is only 0.2dB less than in Wang et al. s scheme, but the capacity is 15.1% higher. When the embedding capacity is a little lower, the PSNR is better than for Wang et al. s scheme. For instance, the capacity for Baboon is only 1792 bits lower, and the PSNR is 3.72dB Higher. In average, embedding capacity of test images in our method is 53219 bits more than Wang et al. s method with the average of PSNR value is nearly 1dB higher. Fig. 12. Visual quality performance when dis_const and r set as (4, 4) Table 3. The performances of Wang et al. s method, Hsiao et al. s method and the proposed method r = 4 r = 8 r = 16 r = 32 Cover image Wang Hsiao (512 512) et al.'s method et al.'s method dis_const = dis_const = dis_const = dis_const = 4 16 16 16 Airplane Capacity (bits) 409752 459532 239898 360249 479340 582325 PSNR (db) 45.2 42.7525 49.5406 46.9852 43.9186 41.2450 Baboon Capacity (bits) 457168 775055 227948 342219 455376 563870 PSNR (db) 40.3 35.2057 49.755 46.8666 44.017 41.3437 Boat Capacity (bits) 421080 540986 229960 345642 459964 567685 PSNR (db) 42.1 41.0037 49.8766 46.6992 44.1241 41.1855 Lena Capacity (bits) 409752 476270 236824 355581 471684 567590 PSNR (db) 44.1 43.3275 49.8288 46.8426 43.9231 41.0212 Pepper Capacity (bits) 407256 540572 238156 357768 475808 569030 PSNR (db) 43.3 41.6441 49.8743 46.8592 44.1217 41.063 Tiffany Capacity (bits) 407360 468705 245320 368406 489512 603405 PSNR (db) 43.9 43.2631 50.0544 46.9866 44.5184 40.9978 56

Cui et al: A Data Hiding Scheme based on Voronoi Diagram Table 4. The performance of Wang et al. s method and the proposed method when r=16, dis_const=16 Airplane Baboon Boat Lena Pepper Tiffany Average Airplane Baboon Boat Lena Pepper Tiffany Average Cover image (512 512) Wang et al.'s method Our method r = 16 dis_cons t= 16 Capacity (bits) 409752 479340 PSNR (db) 45.2 43.9186 Capacity (bits) 457168 455376 PSNR (db) 40.3 44.017 Capacity (bits) 421080 459964 PSNR (db) 42.1 44.1241 Capacity (bits) 409752 471684 PSNR (db) 44.1 43.9231 Capacity (bits) 407256 475808 PSNR (db) 43.3 44.1217 Capacity (bits) 407360 489512 PSNR (db) 43.9 44.5184 Capacity (bits) 418728 471947.3 PSNR (db) 43.15 44.10382 Table 5. The performance of Hsiao et al. s method and the proposed method Cover image (512 512) Wang et al.'s method Capacity (bits) 459532 479340 PSNR (db) 42.7525 43.9186 Capacity (bits) 775055 681432 PSNR (db) 35.2057 38.3746 Capacity (bits) 540986 567685 PSNR (db) 41.0037 41.1855 Capacity (bits) 476270 471684 PSNR (db) 43.3275 43.9231 Capacity (bits) 540572 569030 PSNR (db) 41.6441 41.063 Capacity (bits) 468705 489512 PSNR (db) 43.2631 44.5184 Capacity (bits) 543520 543113.8 PSNR (db) 41.1994 42.1639 Proposed method r = 16 r = 64 dis_const = 64 r = 32 r = 16 r = 32 r = 16 r = 32 5 Conclusion In this paper, we present an ingenious data hiding scheme based on the Voronoi diagram that considers every two consecutive pixels as Voronoi points to embed secret information. The experimental results comparison indicates that our proposed scheme has superior performance in terms of both embedding capacity and visual quality than Wang et al. s scheme. Also, Compared with Hsiao et al. s scheme, while embedding capacity between our scheme and Hsiao et al. s scheme are close, the average PSNR value of our scheme is even 1dB higher. By setting different parameter values, the proposed method can be adapted to satisfy different requirements for hiding capacity or stego-image quality. Furthermore, the security aspect of our proposed method can be ensured by the Voronoi diagram generating phase and the secret key used in PSO algorithm. References [1] R. Davis, The Data Encryption Standard in Perspective, IEEE Communications Society Magazine, Vol. 16, pp. 5-9, 1978. 57

Journal of Computers Vol. 22, No. 4, January 2012 [2] R. L. Rivest, A. Shamir, L. Adleman, A Method for Obtaining Digital Signatures and Public-key Cryptosystems, Communications of the ACM, Vol. 21, No. 3, pp. 120-126, 1978. [3] R.Z. Wang, C.F. Lin, J.C. Lin, Image Hiding by Optimal LSB Substitution and Genetic Algorithm, Pattern Recognition, Vol. 34, No. 4, pp. 671-683, 2001. [4] C.C. Chang, J.Y. Hsiao, C.S. Chan, Finding Optimal Least-signicant-bit Substitution in Image Hiding by Dynamic Programming Strategy, Pattern Recognition, Vol. 36, No. 7, pp. 1583-1595, 2003. [5] D.C. Wu and W.H. Tsai, A Steganographic Method for Images by Pixel-value Differencing, Pattern Recognition Letters, Vol. 24, No. 9-10, pp. 1613-1626, 2003. [6] H.C. Wu, N.I. Wu, C.S. Tsai, M.S. Hwang, Image Steganographic Scheme Based on Pixel-value Differencing and LSB Replacement Methods, IEE Proceedings of Vision, Image and Signal Processing, Vol. 152, No. 5, pp.611-615, 2005. [7] J. Mielikainen, LSB Matching Revisited, IEEE Signal Processing Letters, Vol. 13, No. 5, pp.285-287, 2006. [8] C.H. Yang, S.J. Wang, C.Y. Weng, Analysis of Pixel-value-differencing Schemes with LSB Replacement in Stegonagraphy, in Proceedings of Third International Conference on Intelligent Information Hiding and Multimedia Signal, Kaohsiung, Taiwan, ROC, pp. 445-448, 2007. [9] C.M. Wang, N.I.Wu, C.S. Tsai, M.S. Hwang, A High Quality Steganographic Method with Pixel-value Differencing and Modulus Function, Journal of Systems and Software, Vol.81, No. 11, pp. 150-158, 2008. [10] J.Y. Hsiao and C.T. Chang, An Adaptive Steganographic Method Based on the Measurement of Just Noticeable Distortion Profile, Image and Vision Computing, Vol. 29, No. 1, pp. 155-166, 2011. [11] R. Descartes, Principia Philosophiae, Ludovicus Elzevirius, Amsterdam, 1644. [12] G. L. Dirichlet, Über Die Reduktion Der Positiven Quadratischen Formen Mit Drei Unbestimmten Ganzen Zahlen, J. Reine Angew. Math., Vol. 40, pp. 209-227, 1850. [13] G. F. Voronoi, Deuxieme Memoire: Recherches Sur Les Paralleloedres Primitifs, J. Reine Angew. Math., Vol. 136, pp. 67-181, 1909. [14] G. F. Voronoi, Nouvelles Applications Des Parametres Continus A La Théorie Des Formes Quadratiques, Deuxieme Memoire, Recherches Sur Les Parallelloedres Primitifs, J. Reine Angew. Math., Vol. 134, pp. 198-287, 1908. [15] J. Kennedy and R. Eberhart, Particle Swarm Optimization, in Proceedings of IEEE International Conference on Neural Networks, Perth, WA, pp. 1942-1948, 1995. [16] Y. Shi and R. Eberhart, A Modified Particle Swarm Optimizer, in Proceedings of IEEE International Conference on Evolutionary Computation, Anchorage, AK, USA, pp. 69-73, 1998. [17] J. Kennedy, The Particle Swarm: Social Adaptation of Knowledge, in Proceedings of IEEE International Conference on Evolutionary Computation, Indianapolis, IN, USA, pp. 303-308, 1997. [18] Standard PSO, http://www.particleswarm.info/programs.html, 2007. 58