Chapter 1 Introduction
1.4 Thesis Organization
The remainder of this thesis is organized as follows. In Chapter 2, we review the related works of this study. In Chapter 3, the proposed method for creation of tetromino-based mosaic images is described. In Chapters 4, the data hiding method by distinct combinations of tetrominoes in tetromino-based mosaic images is presented.
The edge fitting method by edge detection thresholding is also described. Then, the proposed data hiding method by small tetromino color shiftings is described in Chapter 5. We present the proposed removable lossless watermarking method for tetromino-based mosaic images in Chapter 6. In Chapter 7, the proposed method for image steganography by watermarking in tetromino-based mosaic images will be presented. Conclusions of our works and discussions on future works are included in Chapter 8.
Chapter 2
Review of Related Works
2.1 Previous Studies on Mosaic Images
Mosaic image is a common type of decorations composed of numerous small tiles arranged in a certain way. Tile mosaics appeared in Greek and Roman times over 2000 years ago. Two examples are shown in Figure 2.1. They are still widely used today. Creation of mosaic images is a new research topic in recent years.
(a) (b)
Figure 2.1 Ancient mosaic images. (a) Detail from the mosaic floor signed Gnosis in the “House of the Abduction of Helen” at Pella, Greek, late 4th century BC, Pella, Archaeological Museum.
(b) Roman mosaic of Ulysses at Carthage, Bardo Museum, Tunisia.
Haeberli [6] used Voronoi diagrams to place the Voronoi sites at random and fill each tile with a color which is sampled from the image. However, Haeberli’s method does not attempt to follow the edge features of the image and the tiles all have different shapes. Hausner [7] proposed a method to create tile mosaic images by
utilizing centroidal Voronoi diagrams. In Hausner’s method, the method proposed by Hoff [8] was extended to draw a Voronoi diagram efficiently, and Lloyd’s algorithm [9] was utilized to produce centroidal Voronoi diagrams by moving each seed to the centroid of its Voronoi region.
Extending the original idea of Haeberli’s method, Dobashi et al. [10] optimized Voronoi diagrams by using the sites and edges of the Voronoi diagrams to reduce the error between the original image and the resulting image. Faustino and Figueiredo [11]
presented a technique similar to Dobashi’s method. The main difference is that Faustino and Figueiredo created tiles whose sizes are adapted to the edge features of the image. This method is achieved by using a centroidal Voronoi diagram with a density function that emphasizes edge features. Di Blasi and Gallo [12] created another type of mosaic images by emphasizing boundaries by placing tiles along edge directions. Elber and Wolberg [13] proposed an advanced approach to rendering traditional mosaic images by recovering free-form feature curves from the image and laying rows of tiles along edge curves. Figure 2.2 shows some examples of the results of the above-mentioned methods.
Photomosaics created by Silvers and Hawley [14] is a different kind of mosaic where a collection of small images is arranged in a rectangular grid. When viewing the mosaic composed by small images from a distance, the small images combine to yield an impressive integrated painting. Kim and Pellacini [15] introduced a new kind of mosaic, called jigsaw image mosaic (JIM), as shown in Figure 2.3, where image tiles of arbitrary shape are used to compose the final picture. Gi et al. [16] proposed a technique of generating and arranging fragmentary piece of colored tiles to simulate colored paper mosaic as shown in Figure 2.4.
(a) (b)
(c) (d)
(e) (f)
Figure 2.2 Mosaic images created by a number of authors. (a) By Haeberli. (b) By Hausner. (c) By Dobashi et al. (d) By Faustino and Figueiredo. (e) By Di Blasi and Gallo. (f) By Elber and Wolberg.
Figure 2.3 Jigsaw image mosaic (JIM) created by Kim and Pellacini.
Figure 2.4 Colored paper mosaic created by Gi et al..
2.2 Previous Studies on Information Hiding Techniques
Many information hiding techniques have been proposed to embed data into given media for various purposes, such as covert communication or copyright protection. Most information hiding techniques in images utilize the weaknesses of
the human visual system, for example, by changing the least significant bits of the pixels of a cover image to embed information [17]. The information embedded in an image can be used to protect the copyright of the image, verify the authenticity of the image, convey a secret message, and so on.
Information hiding in images is a popular research topic in recent years.
Researches on this topic can be classified into three approaches, namely, the spatial-domain approach, the frequency-domain approach, and the combination of them [18]. Ni, et al. [19] presented a novel reversible data hiding algorithm in the spatial domain by utilizing the zero or the minimum point of the histogram and slightly modifying the pixel values to embed data. Cheng and Tsai [20] proposed a DCT-based method for embedding an invisible watermark by adjusting the magnitude relation of certain DCT coefficient pairs in the frequency domain. No matter what domains they belong to, most of these researches are based on pixel-wise or block-wise operations. Generally speaking, information hiding in the frequency domain is more robust than that in the spatial domain, but produces more distortion sometimes.
2.3 Previous Studies on Information Hiding in Art Images
Lin and Tsai [21] proposed two methods to hide information in image mosaics.
One is to manipulate the four borders of tile images. The other is to modify the histogram of tile images. Hung et al. [22] proposed two methods to hide information in art images. One is to embed data in the tile mosaic image by modifying the orientations, sizes, and textures of tile mosaic images. The other is to embed data in the stained glass image by cracking glasses slightly. The resulting images created by
Lin and Tsai [21] are shown in Figure 2.5. Two images generated by Hung et al. [22]
are shown in Figure 2.6.
(a) (b)
Figure 2.5 Image mosaics created by Lin and Tsai [21]. (a) A mosaic image of Lena. (b) A mosaic image of Albert Einstein.
(a) (b)
Figure 2.6 Art images created by Hung et al. [22]. (a) A tile mosaic image. (b) A stained glass image.
Hsu and Tsai [23] proposed three methods to hide information in art images. One is to embed data in digital puzzle images by modifying the orientations, sizes, and angles of the puzzle image. Another is to embed data in the pointillistic image by
varying the RGB values of each color dot of the pointillistic image. The other is to embed data in the circular-dotted image by modifying the drawing order of the circular dots of the circular-dotted image. Some examples of the art images created by Hsu and Tsai [23] are shown in Figure 2.7.
(a) (b) (c)
Figure 2.7 Art images created by Hsu and Tsai [23]. (a) A digital puzzle image. (b) A digital pointillistic image. (c) A digital circular-dotted image.
Wang and Tsai [24] proposed the creations of three types of art images and their applications for information hiding. First, information is hidden in irregular hexagonal-tiled images by adjusting the locations of the two specific vertices and modifying the inner colors of hexagons. For tile-overlapping mosaic images, the information hiding work was implemented by changing the overlapping degrees of adjacent tile images. Last, an information hiding method in variable-sized mosaic images was proposed by changing the sizes of them without creating holes and overlapping areas in the resulting stego-image. Some examples of the art images created by Wang and Tsai [24] are shown in Figure 2.8.
In this study, different from traditional methods of information hiding in images,
the combinations of mosaic image creation and information hiding techniques will be proposed. We will focus on tetromino-based mosaic images, a novel type of mosaic image. A method for automatic creation of tetromino-based mosaic images and two data hiding methods for such images are proposed. Furthermore, we propose a technique of removable lossless visible watermarking in tetromino-based mosaic image. Using this watermarking technique, an image steganography method for tetromino-based mosaic images is also proposed in this study.
2.4 Previous Studies on Image Steganography
Steganography, which means “covered writing” in Greek, is the science of communicating a message by embedding it into data files of certain forms. This technique differs from cryptography in that communication is evident but the content of the communication is camouflaged. Unlike data hiding and digital watermarking, the main goal of steganography is to create complete imperceptibility. Many different file formats can be used as cover media for data hiding, but digital image are the most popular file type because they are used everywhere on the Internet.
Least significant bit (LSB) insertion is the most common approach to embedding information in a cover image [17]. In this approach, the least significant bit of each byte inside an image is changed to hide at least a bit of the secret message. Lee and Chen [25] proposed an image steganographic model based on variable-sized LSB insertion to maximize the embedding capacity while maintaining image fidelity.
Currie and Irvine [26] suggested a modified LSB insertion technique for use in JPEG
images by using the compression properties of the frequency domain. Fridrich and Du [27] presented a steganographic technique for palette images by hiding message bits into the parity bits of colors which are close to one another.
Marvel et al. [28] presented a new type of digital image steganography, called spread spectrum image steganography (SSIS). The SSIS system proposed by them combines spread spectrum communication, error control coding, and image processing to hide information in images. Fridrich and Goljan [29] presented a new steganographic method for digital images in raster formats. Message bits are embedded in the cover image by adding a weak noise signal with a specified but arbitrary probabilistic distribution. A steganographic technique for embedding secret messages into a gray-valued cover image was proposed by Wu and Tsai [30].
Information is embedded into a cover image by replacing the difference values of the two-pixel blocks of the cover image with similar ones in which bits of embedded data are included.
(a)
Figure 2.8 Art images created by Wang and Tsai [24]. (a) An irregular hexagonal-tiled images. (b) A tile-overlapping mosaic images. (c) A variable-sized mosaic images.
(b)
(c)
Figure 2.8 Art images created by Wang and Tsai [24]. (a) An irregular hexagonal-tiled images. (b) A tile-overlapping mosaic images. (c) A variable-sized mosaic images (continued).
Chapter 3
Creation of Tetromino-based Mosaic Images
3.1 Idea of Proposed Method
Lin and Tsai [21] proposed a method to create an image mosaic by arranging a large number of small tile images with each tile image resembling a similar-sized block of a given image. The image mosaic composed of all the tile images looks integrally like the source image when seen from a distance. The idea of the proposed art image creation method in this study was inspired by Lin and Tsai’s method to create a new type of mosaic images, called tetromino-based mosaic image, as mentioned previously. The idea of tetromino-based mosaic image creation was developed by two main concepts. The first is an integration of art and computer technology. Users can create their own images which look more artistically with special visual effects for decorations. The second concept is that a mosaic image can be used as a fine medium for covert communication. As a result, the proposed method also deals with the problem of copyright protection.
In geometry, tetrominoes can be repeated to fill a plane and combined closely to one another to form a square lock. This is the reason why tetrominoes are also good units for mosaic image creation as proposed in this study. However, tiling a plane with tetrominoes is more difficult than traditional mosaic creation because tetrominoes have more complicated shapes. Consequently, how to combine different
kinds of tetrominoes to create a variety of distinct mosaic image is a critical issue. In addition, using tetrominoes as components to generate mosaic images can provide a new style of visual effects for viewers. The tetromino-based mosaic image creation and other related processes are stated in the following sections.
3.2 Review of Traditional Image Mosaic Creation Process
3.2.1 Mosaic Image Creation Process
Two issues, mosaic database construction and similarity measure selection, play important roles in mosaic image creation. The former is the first step of the mosaic creation process to generate tiles images. Tile images are not only the basic components of mosaic images but also the key components determining how mosaic images look like. The latter issue is the design of a good measure for use in the process of choosing the best matching tile image from a mosaic database. In Lin and Tsai’s study [21], mosaic images were created according to the following procedures.
First, a mosaic database was constructed by selecting a set of tile images and then extracting from their relevant features which depend on what types of tile images are used as the input to the construction process. Next, the image mosaic creation process starts with a source image as an input. The process divides the source image into many small target images based on a given size. A similarity measure is then used to search the best matching tile images of the given size from the mosaic database.
Finally, after putting the best-matching tile images together, a mosaic image is generated. A step-by-step process is described in Algorithm 3.1.
Algorithm 3.1. Traditional mosaic creation process.
Input: a source image I, a tile image database DB, and a given tile size S.
Output: a mosaic image I′.
Steps:
Step 1. Divide I into blocks of target images based on the given size S.
Step 2. Extract features from each target image.
Step 3. For each target image, search the best matching tile image from tile image database DB according to a similarity measure.
Step 4. Compose all tile images to generate a mosaic image I′.
The architecture of traditional mosaic creation is shown in Figure 3.1. The experimental result is show in Figure 3.2.
Figure 3.1 The system architecture of an image mosaic creation system.
Divide image into target images
Figure 3.2 An experimental result of image mosaic creation by Lin and Tsai [21].
3.2.2 Tile Image Mosaic Database Construction
For mosaic image creation, we have to construct a database to accelerate the computation of searching the best matching tile image. We accomplish tile image database construction using the following algorithm.
Algorithm 3.2. Tile image database construction.
Input: a set of original tile images, M = {I1, I2, …, In}.
Output: a set of new tile images, N = {T1, T2, .., Tn} and a set of feature vectors V = {V1, V2, .., Vn} , for use as the tile image database.
Steps:
Step 1 Calculate the average color of each original tile image Ii in each of the RGB channels.
Step 2 Represent the average colors as a one-dimension feature vector Vi with three elements Ri, Gi, and Bi for Ii.
Step 3 Generate a new tile image Ti by resizing and cropping each original image Ii
to a predefined tile size.
Step 4 Add all Ti and associated Vi to DB.
3.2.3 Similarity Measure Computation
In Algorithm 3.1, computation of the similarity measure between a target image and a tile image is mentioned. An input source image is first divided into blocks of small target images and the feature vector of each target image is obtained by calculating three average color values of the target image in the RGB channels. The vector extracted from a target image is taken as an input to the similarity measure computation with another input being the feature vector extracted from a tile image in the mosaic database. A tile image from the mosaic database is considered to be similar to the target image if the resulting value of the similarity measure, say a Euclidean distance between the two feature vectors, is the smallest among all the tile images in the database. The detailed algorithm of similarity measure computation is described as follows.
Algorithm 3.3. Similarity measure computation.
Input: a target image T, and a tile image L from the database DB.
Output: a similarity measure value D between T and L.
Steps:
Step 1. Divide T and L into N parts, where N is a predefined number.
Step 2. Extract color features from each part of T to form a vector VT with N×3
In this section, based on above-mentioned traditional mosaic image creation process we show how to create a tetromino-based mosaic image as an algorithm as follows.
Algorithm 3.4. Creation process of tetromino-based mosaic images.
Input: a source image I, a given size s of one square in a tetromino, and a tile image database DB.
Output: a tetromino-based mosaic image I′.
Steps:
Step 1. Construct a tetromino database DB by generating numerous tile images with different tetromino combinations and colors.
Step 2. Divide the source image I into many target images with the given size s.
Step 3. For each target image T, perform the following operations.
3.1 Calculate the distance between T and each tile image L in the tetromino database DB by Algorithm 3.3. create a tetromino-based mosaic image I′ as output.
In the above steps, a best matching tile image, which is the most similar to the corresponding target image, is found by the similarity measure computation as stated in Algorithm 3.3. The construction of the tetromino database DB mentioned in the above algorithm is described in the next section.
3.3.2 Tetromino Database Construction
The tetromino database is used to find the best matching tile image for each target image, as described in the previous algorithm. It is desired to control the number of colors and combinations of the tetrominoes in the database. Before the beginning of tetromino database construction, we have to design an algorithm to enumerate all the possible tetromino combinations in a fixed-sized region. Nineteen types of tetrominoes, as shown in Figure 3.3, are used as inputs for the tetromino database construction algorithm. In this study, the fixed-sized region is a plane of 4×4 grids as shown in Figure 3.4 (a). For example, Figure 3.4 (b) shows one of tetromino
combinations in a 4×4 grid. The detail of the enumerating process of tetromino combinations is described in Algorithm 3.4 below. The tetromino database is constructed by Algorithm 3.5 below.
Figure 3.3 Nineteen types of oriented tetrominoes.
Figure 3.4 Some illustrations of inputs in Algorithm 3.5. (a) A plane of 4×4 grids. (b) A tetromino combination in a plane of 4×4 grids.
Algorithm 3.5. Process for enumerating tetromino combinations.
Input: 19 types of tetrominoes E and a plane P of 4×4 grids.
Output: a set of all possible tetromino combinations T = {T1, T2, .., Tn} in P.
Steps:
Step 1. Create a four-level tree R with a root r.
Step 2. In first level, for each tetromino type X in E, perform the following operations.
2.1 For each position which can be used to place X, perform the following operations.
2.1.1 Generate a child node Cr of root r.
2.1.2 If the filled tetromino crosses the boundary of P, delete Cr and go back to 2.1.
2.1.3 Record the tetromino type X and the position of X in Ck
Step 3. For each node of level Li , where 2≧i≧4, perform the following operations.
3.1 For each node D in level i − 1, perform the following operations.
3.1.1 Choose one type from E and denote it by Y. tetromino, delete child node Ck and go back to Step 3.1.2.
3.1.2.4 If the filled tetromino combination Y already exists in the
Input: 19 types of tetrominoes, and a fixed number N of colors.
Output: a tetromino database DB with all possible tile images.
Steps:
Step 1. Generate a set of all possible tetromino combinations T = {T1, T2, .., Tn} in a plane of 4×4 grids by Algorithm 3.5.
Step 2. Generate a set of N distinct colors, C = {C1, C2, .., CN}, in the RGB color space uniformly.
Step 3. Create all possible tile images by generating all possible combinations of Ti
in T and Ci in C.
3.3.3 Visual Effect Improvement by Border Enhancement
Through the above-proposed algorithms, a basic tetromino-based mosaic image is created. However, a problem occurs in our creation process. If two tetrominoes which are close to one another have the same or similar color, the edge between these two tetrominoes may be hard for the viewers to recognize. It is desire to enhance the boundary of tetrominoes in tetromino-based mosaic creation. Furthermore, we also hope to make each piece of tetrominoes look more three-dimensional. As a result, two visual effects, lightening and shading borders, are created as a post-processing step in this study after the tetromino-based mosaic image creation process, which we call
Through the above-proposed algorithms, a basic tetromino-based mosaic image is created. However, a problem occurs in our creation process. If two tetrominoes which are close to one another have the same or similar color, the edge between these two tetrominoes may be hard for the viewers to recognize. It is desire to enhance the boundary of tetrominoes in tetromino-based mosaic creation. Furthermore, we also hope to make each piece of tetrominoes look more three-dimensional. As a result, two visual effects, lightening and shading borders, are created as a post-processing step in this study after the tetromino-based mosaic image creation process, which we call