a robust steganography algorithm based on texture ...

10 downloads 36651 Views 333KB Size Report
domain have made it possible to take advantage of features in human visual ... The need to find the best host image, guided us through the use of an image ...
2005 IEEE International Symposium on Signal Processing and Information Technology

A ROBUST STEGANOGRAPHY ALGORITHM BASED ON TEXTURE SIMILARITY USING GABOR FILTER Zahra Zahedi Kermani and Mansour Jamzad (IEEE member) Department of Computer Engineering, Sharif University of Technology, Tehran, Iran email: [email protected], [email protected] ABSTRACT

their simplicity but they are very weak in resisting even simple attacks such as transforms, compression, etc. However, image hiding techniques that are implemented in frequency domain have made it possible to take advantage of features in human visual system for image hiding [2, 8, 9, 7]. These methods are more robust with respect to compression and some transforms. But they can provide a limited capacity regarding the size of secret image. The spread spectrum techniques that are implemented in frequency or time domain, can provide high robustness regarding usual attacks. However, a disadvantage of these methods is that since they have to merge the key into a noisy pattern and then embed the merged data into the frequency domain coefficients, this process may cause severe degradation in the host image depending on the noisy pattern [4].

The main concern of steganography (image hiding) methods is to embed a secret image into a host image in such a way that the host should remain as similar as possible to its original version. In addition the host image should remain robust with respect to usual attacks. In this paper we present a method that tries to cover all above mentioned concerns. The secret and host images are divided into blocks of size 4 × 4. Each block in secret image is taken as a texture pattern for which the most similar block is found among the blocks of the host image. The embedding procedure is carried on by replacing these small blocks of the secret image with blocks in host image in such a way that least distortion would be imposed on it. We have used Gabor filter to measure the similarity between texture patterns. The location addresses of blocks in host image which are replaced by blocks of secret image are saved. This data is converted to a bit string and then modified by Hamming code. This bit string is embedded in DCT coefficients of the modified host image using a key which is the seed of a random number generator. Our experimental results showed a high level of capacity, robustness and minimum distortion on standard images.

Gabor wavelets are widely used for determining image similarity in content based image retrieval and related topics [5, 6]. In this paper, we present a robust method for image hiding that uses the concept of texture similarity between host and secret images using Gabor filter. This idea comes from the fact that an image may be considered as a mosaic of different textures [10]. Therefore, by having the address of these blocks (mosaic) and their correct order in host image, retrieving the secret image will be like solving a puzzle of disordered pieces when one has the key that tells him the order of putting parts together. So in this method we are going to hide a bit string containing these addresses instead of real data itself.

Keywords— Steganography, Gabor Filter, Texture similarity, Neural networks, DCT 1. INTRODUCTION

The need to find the best host image, guided us through the use of an image database and a criterion to select the best host image . In this paper we used Gabor filters to obtain a mean for summarizing texture information for each image. In addition, Kohonen neural network had been trained to improve finding the best host image.

Recent progresses in digital communication has made it possible to use intelligent methods for secret communication. Although high capacity and flexibility of digital media has made it possible to use a variety of methods, but distortions imposed on digital signals before reaching destination, and also intentional modifications imposed on the host image has made it difficult to propose robust method for image hiding. The simplest methods for hiding a secret image are the ones that modify the least significant bits of pixels in the host image [1], [3]. The advantages of these methods are

0-7803-9314-7/05/$20.00©2005 IEEE

The rest of this paper is organized as follows: In section 2 we describe different steps of our algorithm. In section 3 we evaluate the performance of our method. And finally we give our conclusion on this research.

578

host images of our image data base as well. In this way we obtain a set of 12 images as shown in Fig 1(c) for each candidate host image. 2.2. Creating a database for feature vectors Comparison of texture similarity between secret and host images is based on feature vector comparison. The secret and host images are divided into blocks. For each block, the mean and standard deviation of its corresponding blocks (i.e. location vise) in each of 12 filtered images of Fig 1(c) is calculated. In this way, a 24 component feature vector is obtained. In order to improve the performance of our method, we allow selecting the host image from an image database. In this way the host image which provides the best similarity to the secret image will be selected. Doing this we have calculated the above mentioned feature vector for all host images in our image data base and created a feature vector database. Assuming to have N images of size 256 × 256 in the image database, the number of entries for feature vector database will be equal to N × ((256 × 256)/(4 × 4)) = N × 4096.

Fig. 1. Applying a bank of 12 Gabor filters with 4 angles and 3 scales on a secret image of size 64 × 64 2. OUR ALGORITHM In this section we describe an algorithm that given a secret image, it finds the best candidate host image from an image data base in such a way that its content is most similar to that of the secret image. Our image data base contained 65 standard images of size 128 × 128, and the secret images were of size 64 × 64. The main idea of content based similarity is based on finding similar texture patterns in secret and host image(s) and save their location addresses in host image(s) as a bit string. As a similarity measure for textures we have used Gabor filter analysis provided in [10]. In this method the similarity is determined by comparison of a feature vector for a block of size 4 × 4 in secret image and a set of feature vectors constructed for blocks of host images that are saved in a feature vector database. In the following sections we use the term block for an sub-image block of size 4 × 4.

2.3. Using Kohenen neural network as a mean of fast search Due to the large number of records in feature vector database, we must have an efficient method for indexing and searching in it. Therefore, the input records of this database were fed into a Kohenen neural network that is a self organizing neural networks. At the beginning, there was no particular structure among the records in this database, but after training, the texture patterns in all host images were grouped. The training algorithm uses a mechanism called ”selecting the winning node”. In this mechanism, for each input feature vector, the Euclidean distance between input and all nodes is calculated. The node with minimum distance is selected to be the winning node and the weight of this node and its neighbors are updated. By implementing this algorithm on all feature vectors in database, the feature vectors will be grouped in such a way that those close to each other will always activate the same node. The initial learning rate of this network was 1, and the feature vector records were given to the network for training purpose, eight times, where the learning rate was reduced in half each time.

2.1. Selecting appropriate parameters for Gabor filter A bank of Gabor filters have been implemented using different scales and parameters. It has been shown that using six angles can provide a complete representation of the image. In our implementation we found that using 4 angles (i.e. 0, 45,90 and 135 degrees) and 3 scales (i.e. 1,2 and 3) provides acceptable performance in determining texture similarities. Four angles and three scales produce 12 Gabor filters that are applied on the secret image. Figure 1 shows the procedure of applying Gabor filter on a secret image. Each of 12 images in Fig.1(a) shows the real value of Gabor filter that is mapped in the gray scale range of [0 − 255] for visualization purpose. Fig 1(b) is the secret image and the tile images on Fig 1(c) are the results of convolving the corresponding Gabor filters with secret image. The procedure shown in Fig 1 is applied on all candidate

2.4. Finding the best host image for embedding We have used the above mentioned feature vectors to find the most similar texture in image database. For each block in secret image, its feature vector is calculated and is given to the neural network. In output of network, only one node is activated. This node indicates the index of a group of

579

3. PERFORMANCE EVALUATION OF OUR METHOD Our algorithm was implemented using Visual C++ on a PC with Pentium II processor of 500 MHz. The image database contained 65 images of fixed size 128 × 128. The secret image was of size 64 × 64. All images were 8 bit gray scale. For evaluation purpose, we used PSNR measure that is defined as follows: P SN R = 10 log M SE =

L2 M SE

N 1 X (xi − x¯i )2 N i=1

(1) (2)

In the above equations, L is the maximum gray level value, which is 255 in case of 8 bit gray scale image. xi is the real value of the signal and x¯i is the signal value after modification. N is the total number of signals. The amount of error in extracted signal is measured by Bit Error Rate (BER) that is equal to the number of error bits divided by total number of bits in original location bit string. In our evaluations, we considered three features such as capacity, perceived quality and robustness that are presented in following.

Fig. 2. An example of selecting three candidate images to host a secret image. The PSNR was 30, 28 and 29 for images in (a),(b) and (c), respectively. Images (e),(f) and (g) show the host image in which the secret image is hidden

similar blocks in image database. In this group, by using the feature vector distance measure, the nearest block of an image in data base to the block of secret image is determined. This procedure is carried on for all blocks of secret image. At the end, the image in data base in which the most number of similar blocks were found is chosen to be the host image.

3.1. Performance of selecting the host image Selecting the appropriate host image highly depends on the variety of images available in the image database. Figure 2 shows the performance of our algorithm by selecting different host images. According to PSNR, Fig 2 (a), (c) and (b) are the 1st, 2nd and 3rd candidates for the given host image, respectively. Figures (d),(e) and (f) show the host images in which the secret image is hidden.

2.5. How to hide and retrieve a secret image After choosing the host image, for each block in secret image, the most similar block to it in host image is found and is replaced with the block of secret image. The position of this block in host image is saved. At the end of this procedure, we have a modified host image in which the entire secret image is embedded. At this stage, the sequence of above mentioned block positions is saved into a location bit string. Apply the Hamming code to the location bit string in order to recover the possible errors on it. Then we choose a seed for a random number (key) and construct a sequence of location addresses. These addresses indicate the position of elements of DCT coefficient in which one bit of the location bit string will be embedded. In the retrieval stage, in order to extract the secret image, we apply DCT on the modified host image. Then using the key, we find all positions of DCT coefficients in which bits of the location bit string were saved. In this way, the location addresses is retrieved and those blocks of host image that contain the blocks of secret image are determined.

3.2. Performance with respect to capacity The capacity of data hiding increases proportional to the increase in variety of textures in host image. Such host images give higher PSNR ratio with respect to those having less variety in textures. Figure 3 shows how the PSNR decreases with respect to increase in capacity. The comparison is done using direct embedding of bits in DCT coefficients and embedding using Gabor filter. As seen the higher performance of Gabor filter is obvious, while in both methods the image quality decreases while the number of bits in secret image increases. 3.3. Robustness One of the weak points in most image hiding algorithms is that if the host image goes under some attacks, then extracting the secret image without applying pre-processing routines such as error control codes becomes very difficult. In

580

Fig. 5. The relation between PSNR and the number of host images used. our method, after most kind of attacks such as compression, high pass and low pass filtering, still we are able to extract the secret image but with lower quality, depending on type of attack. An example is shown in figure 4 the Peppers and Bridge images were selected as secret and host, respectively. It shows the robustness of our method with respect to JPEG compression with quality setting or Q factor 1 , Q=75, 50, 25, 10 and 5. The bit error rate (BER) shown under each image changed from 30, 36.5, 40, 45 and 50, respectively. BER increases with decrease in Q factor. Figure 4-a is the bridge image in which the secret image is hidden without compression.

Fig. 3. The relation between PSNR and the number of bits embedded in host image. Old DCT indicates using direct embedding of bits in DCT coefficients and My-DCT shows embedding using Gabor filter.

4. IMPROVING PERFORMANCE BY SELECTING MORE THAN ONE HOST IMAGE Our experimental results showed that the overall performance of our method can be improved by selecting more than one host image to embed the secret image. That is the blocks of secret image is distributed in two or more host images depending on the similarity measure being imposed. Figure 5 shows the performance of our method by comparing the PSNR while the number of host images increased from 2 to 6 images. The PSNR increased from 24 when using 2 host images to 34.5 in case of using 6 host images. 5. CONCLUSION Performance of image hiding methods highly depends on their capacity, robustness and the similarity of retrieved secret image to its original version. All these should be achieved by minimum distortion to the host image. There

Fig. 4. The effect of compression on robustness of our method. In all images the secret image could be extracted from the hibrid image.

1 Q factor ranges from 1 to 100, a factor of 1 produces the smallest, worst quality images, a factor of 100 produces the largest, best quality images.

581

are some methods that try to embed a secret image in only one host image. These methods, regardless to the content of host image, do provide certain amount of limitations in capacity, robustness and also similarity. It is clear that all these factors are easily affected by the increase in the size of secret image and also its content. In order to overcome these problems we developed an algorithm that we believe it provides a high level of capacity, robustness and also similarity, while maintaining the minimum distortion in the host image(s). The main idea is based on dividing the secret image into blocks and consider these blocks as texture patterns. Then using the similarity measure provided by Gabor filter, the most similar block in the host image(s) is found and the entire secret block is placed there. However, in order to achieve more capacity and also decrease host image distortion, we introduced the idea of embedding the secret image into more than one host image. Therefore, we prepared an image database using which the most suitable host images were found. This approach not only allows us to increase the size of secret image to any desired size, but also reduces the amount of distortions imposed on host images. We believe that our method can be improved by increasing the number of images in the database and providing different image databases for each group of images. In this regard we suggest to have at least three databases for images with low, medium and high details. There are many known methods for finding the level of detail in an image [11]. In our future work, we are going to implement this idea and evaluate its performance.

[6] M.Park, J.S.Jin, L.S.Wilson, Fast content-based image retrieval using quasi-Gabor filter and Reduction of image feature dimension, Fifth IEEE southwest Symposium on Image Analysis and Interpretation, Santa Fe, New Mexico, April 7-9, 2002. [7] LH.Zhang, HT. Wu, CL.Hu, A video watermarking algorithm based on 3D Gabor transform, Journal of Software, 15(8):1252 1258, 2004. [8] Ruanaidh, J.J.K.O.; Dowling, W.J.; Boland, F.M., Phase watermarking of digital images, IEEE Proceedings., International Conference on Image processing ,Volume 3, 16-19 Sept. 1996 Page(s):239 - 242 vol.3 [9] Young-Sik Kim, A wavelet based watermarking method for digital images using human visual system,IEEE Electronics Letters Volume 35, Issue 6, Page(s):466 - 468, March 1999. [10] W.Y.Ma,. Texture features and learning similarity,IEEE Computer Society Conference on Computer Vision and Pattern Recognition(CVPR ’96), 18-20 June 1996 Page(s):425 - 430 , 1996. [11] R.Franco, D.Malah, Adaptive Image Partitioning for Fractal Coding Achieving Designated Rates Under a Complexity Constraint, IEEE International Conference on Image Processing, 2001. Volume 2, Page(s):435 - 438 2001

6. REFERENCES [1] W.Bender, Techniques for data Hiding, IBM System Journal, Vol.35, No.3 & 4, pp.313-336, 1996. [2] J.J.Chae,D.Mukherjee and B.S.Manjunath, Color Image Embedding using Multidimensional Lattice Structures, Proceeding of IEEE International Conference of Image Processing (ICIP ’98), Vol.1,pp.460464,Chicago,October,1998 [3] G.Carroni, Assuring ownership rights for digital images, Proceeding of reliable IT system, VIS’95, Vieweg publishing, 1995. [4] Lisa M.Marvel, Image steganography for hidden communication, report no.A772773 University of Delaware, Spring 1999. [5] Z.Zhu, M.Tang, H.Lu, A new robust circular Gabor based object matching by using weighted Hausdorff distance, Pattern Recognition Letters, Vo;.25,Issue 4, pp.515-523, March 2004.

582

Suggest Documents