Color Image Compression with Modified Fractal Coding on Spiral ...

5 downloads 196 Views 651KB Size Report
Information transmission is the key means to acquire and give the knowledge or ... IEEE International Conference on Information Technology: New. Generations ITNG ...... Ph D Thesis, University of Technology, Sydney, 1999. [28] X. He, T. Hintz, ... Regional College of Engineering), Nagpur, India and Master of. Technology ...
JOURNAL OF MULTIMEDIA, VOL. 2, NO. 4, AUGUST 2007

55

Color Image Compression with Modified Fractal Coding on Spiral Architecture Nileshsingh V. Thakur, Department of Computer Science, G.H. Raisoni College of Engineering, Nagpur, India [email protected]

Dr. O. G. Kakde Department of Computer Science, Visvesvaraya National Institute of Technology, Nagpur, India [email protected]

Abstract—The proposed approach (CICMFCSA), firstly, compose the one-plane image using the pixel’s trichromatic coefficients. One-plane image in traditional square structure is represented in Spiral Architecture for compression. On this Spiral Architecture image, proposed modified Fractal grey level image coding algorithm (MFCSA) is applied to get encoded image. In this modified Fractal coding, the numbers of domain blocks are optimized from 343 to 10 using local search. Extensive experiments are carried out on UCID - An Uncompressed Color Image Database. The proposed approach minimizes the encoding process time because of optimized domain blocks and one dimensional structure of Spiral Architecture and falls in the lossy compression category. The results of SFC and our approach are compared with respect to the time. Index Terms—Image Compression, Spiral Architecture, Fractal Coding

I. INTRODUCTION Information transmission is the key means to acquire and give the knowledge or data related to particular event. For example: video conferences, medical data transfer, business data transfer, etc. require much more image data to be transmitted and stored on-line. Due to the Internet, the huge information transmissions take place. The processed data required much more storage, computer processor speed and much more bandwidth for transmission. To overcome these problems, image compression is necessary. The whole process of image compression minds the fact that images are naturegenerated and that the human eye may not perceive the details possibly lost during this type of image codification process. Compressing an image is significantly different than compressing raw binary data. Of course, general purpose compression programs can be used to compress images, but the result is less than optimal. Based on “Color Image Compression on Spiral Architecture using Optimized Domain Blocks in Fractal Coding”, by Nileshsingh V. Thakur and Dr. O. G. Kakde, which appeared in the Proceedings of the IEEE International Conference on Information Technology: New Generations ITNG 2007, Las Vegas, USA, April 2007. © 2007 IEEE.

© 2007 ACADEMY PUBLISHER

This is because images have certain statistical properties which can be exploited by encoders specifically designed for them. Also, some of the finer details in the image can be sacrificed for the sake of saving a little more bandwidth or storage space. Image data redundancy is a key for image compression. Most images contain some amount of redundancy that can sometimes be removed when the image is stored and replaced when it is reconstructed, but eliminating this redundancy does not lead to high compression. Fortunately the eye is insensitive to a wide variety of information loss. Fractal coding method exploits similarities in different parts of the image. Fractal objects like Sierpinski triangle and Fern {[1], [2], [3]} have very high visual complexity and low storage information content. For generating computer graphic images and compression of such objects, Iterated Function System (IFS) {[2], [4], [5]} are recently being used. The basic idea is to represent an image as the fixed points of IFSs. An appropriately chosen IFS consists of a group of affine transformations [3]. Therefore, an input image can virtually be represented by a series of IFS codes. In short, for fractal coding an image is represented by fractals rather than pixels. Each fractal is defined by a unique IFS consists of a group of affine transformations. Therefore the key point for fractal coding is to find fractals which can best approximate the original image and then to represent them as a set of affine transformations. In all, the fractal coding is always applied to grey level images. The most straight forward method to encode a color image by gray-level fractal image coding algorithm is to split the RGB color image into three Channels, red, green and blue, and compress them separately by treating each color component as a single gray-scale image, the so called three-component Seperated Fractal Coding (SFC). In place of going for three independent planes, in this paper, we have composed a one plane image from the three planes of RGB color image using trichromatic coefficients. This one plane image is then compressed by proposed modified Fractal coding on Spiral Architecture, which minimizes the the number of domain blocks from

56

JOURNAL OF MULTIMEDIA, VOL. 2, NO. 4, AUGUST 2007

343 to 10 using local search. The results of SFC and our approach are compared with respect to the time. Encoding time with optimized domain blocks and without optimized domain blocks is evaluated for different tolerance values. Compression ratio and PSNR is also compared with respect to the tolerance value which is used in the quadtree partitioning to get the homogeneous blocks. The remainder of this paper is organized as follows: A brief review of related work is given in Section II. Section III describes the overview of Fractal coding. Section IV describes the overview of Spiral Architecture. Proposed approach is presented in Section V. It consists of modified fractal coding for gray level images on Spiral Architecture; compression algorithm and decompression algorithm. Section VI consists of experimental setup and results. Finally, Section VII presents the conclusion and future scope. II. RELATED WORK When we take or store a photograph i.e. image, the size of the image file is huge compared to many other types of computer files since each pixel requires 24 bits (3 bytes) to store color information. As the resolution increases, so does the file size. A file for a low-resolution 1 megapixel image is 3 megabytes, and at 3 megapixels is a climb to 9 megabytes and at 6 megapixels all the way to 18 megabytes. The files become too large to easily store, transmit, and edit. To make image files smaller and more manageable, we have to go for image compression. Compressing images not only save more images on storage device but it also allows us to download, display, edit, and transmit them more quickly. The figures in the Table I show the qualitative transition from simple text to full-motion video data and the disk space, transmission bandwidth, and transmission time needed to store and transmit such uncompressed data. TABLE I. VARIOUS IMAGE TYPES AND UNCOMPRESSED STORAGE SPACE, TRANSMISSION BANDWIDTH, AND TRANSMISSION TIME REQUIRED.

A page of text Grey Image Color Image Medi. Image

Transmission Bandwidth (b for bits)

Transm -ission Time (using 28.8Mo dem)

Size/ Duration

Bits/ Pixel

Uncom pressed Size (B for bytes)

11'' x 8.5''

Varying resolution

4-8 KB

32-64 Kb/page

1.1 - 2.2 sec

262 KB 786 KB

2.1 Mb/image 6.29 Mb/image

1 min 13 sec 3 min 39 sec

5.16 MB

41.3 Mb/image

23 min 54 sec

512 x 512 512 x 512 2048 x 1680

8 bpp 24 bpp 12 bpp

There are two forms of compression—lossless and lossy. Lossy is a term applied to data compression techniques in which some amount of the original data is lost during the compression process. Lossy image compression applications attempt to eliminate redundant © 2007 ACADEMY PUBLISHER

or unnecessary information in terms of what the human eye can perceive. As the amount of data is reduced in the compressed image, the file size is smaller than the original. Lossy image data compression is useful for application to World Wide Web images for quicker transmission across the Internet. Examples of lossy techniques are: JPEG, GIF, Wavelet, etc. Lossless is a term applied to image data compression techniques where very little of the original data is lost. It is typically used by the photographic and print media, where high resolution imagery is required and larger file sizes aren't a problem. Examples of lossless techniques are: TIFF, CCD RAW, etc. A. Work on Fractal Coding Fractal coding techniques are generally applied on gray level images. For color image compression, the Fractal coding is applied on different planes of color image independently by treating each plane as gray level image. Some of the gray level Fractal image compression techniques are Texture Based Image Compression [6], where the image compression carried out on the basis of texture, the approach based on Unifying Fractal and Transform Coding [7] is focused on block-oriented Fractal coding scheme using an approximation in the frequency domain, a block based approach consist of Fractal Compression by DCT is given in [8], Hybrid Wavelet-Fractal Coder [9] is a combination of the adaptive Fractal prediction and bitplane wavelet coding where the Fractal prediction is applied to regions where the Fractal rate saving justifies its overhead, Hybrid Image Coding based on Partial Fractal Mapping is well explained in [10]. Apart from these, some other approaches found in literature are as follows: The Relative fractal coding [11], Region-Based Fractal Image Compression [12], Stochastic Image Compression Using Fractals [13], Entropy based Fractal image compression [14], Quadtree-based Fractal image compression [15]. For color image compression, the RGB model is best suited due to the highest correlation than the other models [16]. The work on Fractal coding for grey level images on square architecture is extended recently by using the Spiral Architecture in place of a square architecture. B. Work on Spiral Architecture Research work on image compression based on Spiral Architecture in [17], focused on the properties of the hexagonal pixel address labeling scheme. The property of interest was the physical proximity of the hexagonal pixels with neighboring addresses. The research reported in [18] used the properties of uniform image partitioning based on Spiral Architecture. On Spiral Architecture, an image can be partitioned into a few sub-images [19] each of which is a scaled down near copy of the original image. Various methods based on the features of locality and uniformity on Spiral Architecture for lossy and lossless compression is investigated in [20]. Fractal image compression on Spiral Architecture related work is also presented in [21]. Fractal image compression on

JOURNAL OF MULTIMEDIA, VOL. 2, NO. 4, AUGUST 2007

Spiral Architecture related work presented in literature is particularly focused the grey level image compression. In our earlier research work on color image compression using Spiral Architecture [22], we focused on the representation of color image into a single plane image which then compressed on Spiral Architecture using Fractal coding. The research work presented in [23], optimizes the search space of domain blocks using local search. The present paper includes the comparison of the proposed approach results with the SFC results. Compression ratio and PSNR is also compared with respect to the tolerance value which is used in the quadtree partitioning to get the homogeneous blocks.

57

A. Fractal Coding Algorithm 1. Partition the original image to get the range blocks RBi . 2. Partition the original image to get the domain blocks DB j . 3. Find out the codebook blocks CBk . 4. For each codebook block CBk , find the values of s and

o by referring RBi ,

regression method (equations (1) and (2) ) [3]. The coefficients s and o are called scaling and offset. Given a pair of blocks RBi and CBk of n pixels with intensities r1 ,.....rn and c1 ,.....cn we have to minimized the quantity n

III. OVERVIEW OF FRACTAL CODING Fractal coding is used as fractal image compression technique. It is a block-based processing technique which takes long processing time for compression but less processing time for decompression and falls in the category of lossy compression technique. The basic concept of fractal coding is to represent an image by an iterated function system (IFS) of which the fixed point is close to that image. This fixed point is named as ‘fractal’ [3]. Each IFS is then coded as a contractive transformation [3] with coefficients. The encoding process is to find an IFS whose fixed point is close to the given image, is based on the collage theorem, which provides a bound on the distance between the image to be encoded and the fixed point of an IFS [3]. A suitable transformation may therefore be constructed which guaranteeing that the fixed point of that transformation is close to the original image [24]. This transformation was composed of the union of a number of affine mappings on the entire image [5]. After the appearance of the acronym “IFS,” a slew of others appeared on the scene. These include RIFS, RFIF, PIFS, WFA, HIFS, and MRCM [3]. Fractal coding became a practical reality with the introduction of the partitioned IFS (PIFS) [25], which differs from an IFS in that each of the individual transformation operates on a subset of the image, rather than the entire image. Range blocks are mapped from one of the domain blocks; the combined mappings constitute a transformation on the image as a whole. This transformation is then represented by specifying, for each range block, the identity of the matching domain block together with the block mapping parameters minimizing the collage error for that range block [3]. Range Blocks (RB): Group of Collection of horizontal and vertical pixels to form the non-overlapping blocks of fixed size, for instance, 8 x 8; Domain Blocks (DB): Group of Collection of horizontal and vertical pixels to form the overlapping blocks of fixed size, which are generally two or four times as the size of range blocks, for instance, 16 x 16 or 32 x 32; Codebook Blocks (CB): The domain blocks are filtered and sub-sampled so that it shrinks to match the size of the range blocks.

© 2007 ACADEMY PUBLISHER

and using least squares

CBk

¦ ( s ˜c

RB

i

 o  ri ) 2

i 1

The minimum of RB occurs when the partial derivatives with respect to s and o are zero, which occurs when s

n n n ª º « n ¦ c i ri  ¦ c i ¦ ri » i 1 i 1 ¬ i 1 ¼ 2 n n ª º § · 2 « n ¦ ci  ¨ ¦ ci ¸ » © i 1 ¹ ¼» ¬« i 1

(1)

and n 1ª n º (2) ri  s ¦ c i » ¦ « n¬i 1 i 1 ¼ 5. Quantize the coefficients s and o using a uniform quantizer. 6. Compute the error E ( RBi i , CBk ) using (3) and quantized

o

coefficients s and o . With s and o given the square error is n n n 1ª n 2 § n 2 · § ·º (3) E(RB , CB )2 r  s s c  2 c r  2o c  o no  2 r i

If

k

«¦ i n¬i 1

¨ ©

¦

¦

i

i 1

2 ª n § n · º 2 « n ¦ ci  ¨ ¦ ci ¸ » © i 1 ¹ »¼ ¬« i 1

¦

i i

i 1

0

, then

i 1

s

i

¸ ¹

¨ ©

¦

i

i 1

¸» ¹¼

n 0 and o 1 ¦ ri

n

i 1

7. Among all codebook blocks CBk find the block with minimal error E ( RBi , CBl ) min E ( RBi , CBk ) .

CBl

8. Output the code for the current range block consisting of indices for the quantized coefficient s and o and the index l identifying the optimal codebook block CBl . IV. OVERVIEW OF SPIRAL ARCHITECTURE Almost all the previous image processing and image analysis research is based on traditional image structure, where the pixel means a rectangular box in an image. On a new image structure, called Spiral Architecture [26] each vision unit is a set of seven hexagons compared with the traditional image Architecture using a set of 3 x 3 vision unit. Spiral Addressing [26] is the first step in Spiral Architecture formulation to label each of the individual hexagons with a unique address as shown in Figure 1. To have more number of hexagons, dilate the basic hexagon structure {[26], [20], [17]} so that six additional collections of seven hexagons can be placed about the addressed hexagons, and multiply each address by 10. Spiral Counting [26] is an algorithm used to reach

58

JOURNAL OF MULTIMEDIA, VOL. 2, NO. 4, AUGUST 2007

any hexagon in an image from any other given hexagon in the same image. When applying Spiral counting, it is strictly dependent on a pre-determined key, see [26]. A key determines two important parameters: the distance and the orientation T. The key of 15 establishes the pattern of the primary eight hexagons as shown in Figure 2. Spiral counting is used to define two operations Spiral Addition and Spiral Multiplication [26] in the Spiral Architecture. Although Spiral Architecture has many advantages in image processing, image analysis and machine vision, there is no supporting hardware available to capture or display image. Different models are suggested: a mimic model was introduced in {[27], [28]}, Pseudo model in {[21], [26]}, Visual model in {[27], [29], [30], [31]}. We have chosen the Pseudo model because of pixel-to-pixel representation and less computational complexity. In the Pseudo model, first 343 rectangular pixels are the first 343 Pseudo hexagons with Spiral addresses 0 to 666 shown in Figure 3. Due to the hexagonal distribution, each pixel or hexagon has exactly six surrounding hexagons or pixels, we only consider six of the eight neighbors for the centre hexagons or pixels.

Figure 1. A collection of seven hexagons with unique addresses

Figures 2. Pattern of primary 8 hexagons

Figure 3. The first 343 Pseudo pixels with labeled spiral addresses

V. PROPOSED APPROACH In this paper, the new approach is based on the RGB color model {[32], [33]}. Firstly, hierarchically partitioning is used to represent the three color planes into strongly correlated blocks which latter used to form one

© 2007 ACADEMY PUBLISHER

plane image. Then only one color-plane needs to be coded, while the other two can be automatically reconstructed from the encoded color plane and correlation among them. To encode one color-plane image in traditional square structure, it is represented in Pseudo Spiral Architecture. On this new Spiral Architecture image, modified fractal grey level image coding algorithm is applied to get encoded image. At the decoding process, fractal decoding algorithm is used. A. Modified Fractal Coding Algorithm for Grey Level Images on Spiral Architecture (MFCSA) Fractal coding is used as fractal image compression technique. The basic concept of fractal coding is to represent an image by an iterated function system (IFS) of which the fixed point is close to that image. This fixed point is named as ‘fractal’ [3]. A suitable transformation may therefore be constructed which guaranteeing that the fixed point of that transformation is close to the original image [24]. Fractal coding became a practical reality with the introduction of the partitioned IFS (PIFS) [25], which differs from an IFS in that each of the individual transformation operates on a subset of the image, rather than the entire image. Firstly we separate the image into non-overlapping range blocks of seven pixels and define the overlapping domain blocks of seven times more in general, i.e. 49 pixels or 343 pixels. The domain pool for each range block may be restricted to a region about the range block or a spiral search path may be followed outwards from the range block position. To form the Codebook blocks, the domain blocks are optimized to specific number, then filtered and sub-sampled using pixel median so that it shrinks to match the size of the range blocks. Proposed Modified Fractal Coding Algorithm for Grey Level Images on Spiral Architecture (MFCSA) is given below: Algorithm (MFCSA): Var: Range blocks RBi, Domain blocks DBj, Codebook blocks CBk, ……… Input: Spiral Architecture image (S’) Output: CODE (For the current range block, indices for the quantized coefficient s and o and the index l identifying the optimal codebook block CBl). { Read S’; Partition S’ { Non-overlapping block formation { RBi = Collection of clusters of 7 hexagons i.e. 7 pixels } Overlapping block formation { DBj = Collection of clusters of 49 hexagons (49 pixels) i.e. 7 clusters of 7 hexagons } } For each RBi

JOURNAL OF MULTIMEDIA, VOL. 2, NO. 4, AUGUST 2007

{ For j=1 to 343 { DBj = Collection of 7 clusters of 7 hexagons; For each cluster of DBj For cluster kk=1 to 7 { Sum-D = Summation of 7 intensity values; Average-D = Sum-D / 7; AV(DBj) = Axerage(Average-D); } } Sum-R = Summation of 7 intensity values; Average-R = Sum-R / 7; AV(RBi) = Average-R; D = AV(RBi) - AV(DBj) for all DBj; S(D)=Sort DBj on D; DBj-Final = First 10 DB of S(D); CBk = Transformation with median(DBj-Final); For each CBk For k = 1 to 10 { Compute s & o; Uniform quantization of s & o; Compute E[(RBi), (CBk)]; Find CBl with E[(RBi),(CBl)]=minE[(RBi),(CBk)]; Output the CODE (indices for the quantized coefficient s and o and the index l identifying the optimal codebook block CBl); } } } B. Compression Algorithm For the encoding of any color image e.g. CI, the whole encoding process is devided in two parts. First, the oneplane image formation and average trichromatic coefficient calculation of relevant homogeneous blocks which formed according to the tolerance value. Second, for the current range block, indices for the quantized coefficient s and o and the index l identifying the optimal codebook block. The proposed approach for any color image compression is summarized below as an algorithm (CICMFCSA). Algorithm (CICMFCSA): Var: Color image CI, Trichromatic coefficients, variances, tolerance, level Input: Color Image (CI) of size N x N Output: S, Average Trichromatic Coefficients; CODE (For the current range block, indices for the quantized coefficient s and o and the index l identifying the optimal codebook block CBl). { Read CI; For each pixel { Compute Trichromatic Coefficients, see [32]; } © 2007 ACADEMY PUBLISHER

59

Quadtree { Define tolerance; Define maximum level; Partition of CI in four non-overlaped blocks of size N/2 x N/2; For each such block { Compute Average Trichromatic Coefficients, see [22]; Compute variances, see [22]; If (((VrrL”tolerance,VggL”tolerance and VbbL”tolerance) or ( predefined maximum level reached)) and (all blocks processed)) Terminate Quadtree; Store Average Trichromatic Coefficients; else For blocks with nontermination of Quadtree { Quadtree; } } } One plane image-S { Use RGB triplet and Trichromatic Coefficients triplet; Store S; } S’ = Represent S in Spiral Architecture; MFCSA(S’); Output the S, Average Trichromatic Coefficients of each block, CODE (indices for the quantized coefficient s and o and the index l identifying the optimal codebook block CBl); } C. Decompression Algorithm 1. Use the fractal decoding algorithm and the second part of compressed image to decode image S’’. 2. By using first part of compressed image and Sij” to get Rij”, Gij” and Bij”, where Rij”§Rij, Gij”§Gij, and Bij”§Bij. 3. Rij”, Gij” and Bij” are used to reconstruct image CI’ (spiral) where CI§CI’. Where Rij, Gij, Bij represents red, green and blue components of pixel (i,j) respectively. RRij, GGij, BBij are called trichromatic coefficients of pixel (i,j) which describe the percent of each color component in their sum. Mrr, Mgg, Mbb represents the mean value of trichromatic coefficient RRij, GGij and BBij on block L, respectively. m is the block size; Lx, Ly are x- and ycoordinates of the first pixel of block L. VrrL, VggL, VbbL represents variances of trichromatic coefficient RRij, GGij and BBij on block L, respectively. S’ represents Spiral Architecture image to be encoded. S’’ is the decoded S’, i.e., S’§S”. Rij”, Gij” and Bij”, are decoded red, green and blue components of pixel (i,j) respectively, i.e., Rij”§Rij, Gij”§Gij, and Bij”§Bij.

60

JOURNAL OF MULTIMEDIA, VOL. 2, NO. 4, AUGUST 2007

The proposed approach minimizes the number of color planes of RGB image from three to one, the processing time can be saved in comparison with the SFC. In simple Fractal coding, to match the range blocks with the domain blocks, the eight transformation calculation increases the encoding time. While in proposed approach, as the one-plane image is represented in the Spiral Architecture, the total transformations are also minimized. Due to the use of MFCSA, one-plane image and Spiral Architecture, the time complexity is minimized. The only constraint of the proposed approach is that there is no any hardware available to have the image in Spiral Architecture. So, the image is represented in Spiral Architecture using the square architecture. Here in our approach, each pixel represents individual hexagon. So, the complete image will be the collection of hexagons. To have the complete image representation in Spiral Architecture, the padding can be used. The experimental results show the effectiveness of the proposed approach.

Lena, House, Splash and Sailboat color images are plotted and shown in Figure 8.

Mandrill (512 x 512)

House (512 x 512)

Airplane (512 x 512)

Lena (512 x 512)

Splash (512 x 512)

Sailboat (512 x 512)

Figure 4: Original Images

VI. EXPERIMENTAL SETUP AND RESULTS Table II [22] shows the correlation and variance among three-color planes of three representative color models. From the table, we find that color planes in RGB model have highest correlation (indicated by non diagonal values of covariance) than the other models. The variance of trichromatic coefficients is small when the three-color planes are strongly correlated, in such a case, larger blocks can be obtained, implying as consequence, that higher compression ratio can be achieved. This is the reason why we have chosen the RGB color space. TABLE II. STATISTIC OF RGB IMAGES

Color Space R G B

Covariance R G B 1.0 0.9930 0.9784 0.9930 1.0 0.9916 0.9784 0.9916 1.0

(a) Tolerance Value 0.01

Variance 34.23 35.02 30.75

The proposed approach is implemented with MATLAB 6.5 and Windows operating system on the System Model P4i65GV, Intel HT, 256 MB RAM. For experimentation, UCID - An Uncompressed Color Image Database [34] is used. Extensive experiments are carried out on different images with the tolerance values 0.01 to 0.05. For codebook formation, median calculations are used. Previous algorithms are implemented on RGB color space images. Original images are shown in Figure 4. Figure 5 shows the result of hierarchical partitioning with the tolerance value equal to 0.01 and 0.02. Composite one-plane images are shown in Figure 6 and Figure 7. Compression ratio, PSNR, encoding time for Fractal coding i.e. without optimized domain blocks and modified Fractal coding i.e. with optimized domain blocks are evaluated for tolerance values from 0.01 to 0.05. Compression ratio and PSNR values for the tolerance values from 0.01 to 0.05 of Mandrill, Airplane,

© 2007 ACADEMY PUBLISHER

(b) Tolerance Value 0.02 Figure 5: Images of hierarchical partitioning with the tolerance value equal to (a) 0.01 and (b) 0.02

Figure 6: First three composite one-plane images

JOURNAL OF MULTIMEDIA, VOL. 2, NO. 4, AUGUST 2007

61

TV

CR

PSNR

CR and PSNR

40

Figure 7: Next three composite one-plane images

30 20 10 0 0.01

From the graphs in Figure 8, it is seen that as the tolerance value increases the compression ratio increases but the peak signal to noise ratio decreases. According to the requirement of compression ratio and PSNR value, the tolerance value can be decided. CR

TV

PSNR

0.03

0.04

0.05

Tolerance Value

0.02

0.03

0.04

0.05

For Sailboat Figure 8: Compression ratio and PSNR values for the tolerance values from 0.01 to 0.05 of different images

For Mandrill TV

CR and PSNR

CR

0.02

Tolerance Value

CR

PSNR

35 30 25 20 15 10 5 0 0.01

0.02

0.03

0.04

0.05

Tolerance Value

For Airplane TV

CR

Encoding time of the different images with optimized domain blocks i.e. simple Fractal coding and without optimized domain blocks i.e. MFCSA for the tolerance values from 0.01 to 0.05 are plotted in the Figure 9. From Figure 9, it can be seen that the MFCSA save the encoding time in comparison with the simple Fractal coding on Spiral Architecture (SimpleFCSA). As the search space is minimized to less number of domain blocks, the processing time is saved, so the encoding time. In proposed approach the optimal 10 domain blocks are used. ODB

PSNR

WODB

72

35 30 25 20 15 10 5 0

Encoding Time

CR and PSNR

0.05

35 30 25 20 15 10 5 0 0.01

0.01

70 68 66 64 62 60

0.01

0.02

0.03

0.04

0

0.05

0.01

0.02

CR

0.04

0.05

0.06

0.05

0.06

For Mandrill

For Lena TV

0.03 Tolerance Value

Tolerance Value

ODB

PSNR

WODB

60 Encoding Time

40 CR and PSNR

0.04

For Splash

PSNR

35 30 25 20 15 10 5 0

0.03 Tolerance Value

CR and PSNR

CR and PSNR

TV

0.02

30 20 10 0

50 40 30 20 10 0

0.01

0.02

0.03 Tolerance Value

For House

© 2007 ACADEMY PUBLISHER

0.04

0.05

0

0.01

0.02

0.03 Tolerance Value

For Airplane

0.04

62

JOURNAL OF MULTIMEDIA, VOL. 2, NO. 4, AUGUST 2007

ODB

WODB

Encoding Time

100 80 60 40 20 0 0

0.01

0.02

0.03

0.04

0.05

0.06

Tolerance Value

For Lena ODB

WODB

Encoding Time

Figure 10: Reconstructed images with talerance value 0.02 52 51 50 49 48 47 46 0

0.01

0.02

0.03

0.04

0.05

0.06

Tolerance Value

VII. CONCLUSION AND FUTURE SCOPE

For House

Encoding Time

ODB

WODB

52 51 50 49 48 47 46 45 0

0.01

0.02

0.03

0.04

0.05

0.06

0.05

0.06

Tolerance Value

For Splash ODB

WODB

Encoding Time

60 50 40 30 20 10 0 0

0.01

0.02

0.03

0.04

Tolerance Value

For Sailboat Figure 9: Encoding time for the tolerance values from 0.01 to 0.05 of different images with optimized and withot optimized domain blocks

Reconstructed images for the tolerance value 0.02 are shown in the Figure 10. PSNR and compression ratio values of the reconstructed images with the tolerance value of 0.02 are shown in Table 3. TABLE III. PSNR / COMPRESSION RATIO VALUES OF IMAGES

Mandrill 28.33 / 7.43 House 30.13 / 8.94

Airplane 31.23 / 9.73 Splash 31.61 / 8.59

© 2007 ACADEMY PUBLISHER

Comparison of the proposed approach (CICMFCSA) with the straight Fractal coding (SFC) is shown in the Table IV. Proposed approach includes the color image compression on Spiral Architecture using SimpleFCSA and the MFCSA.

Lena 29.05 / 7.48 Sailboat 29.51 / 9.59

According to the experiments performed, we found that the numbers of color planes are minimized from three to one and use of the Pseudo Spiral Architecture in place of traditional Architecture facilitates the processing of image as one dimensional structure. Only the constraint of proposed approach is that no hardware is available to have the image in spiral Architecture, so logical spiral structure is formed to study the implementation of proposed approach. Optimization of domain blocks gives rise to have the more accuracy in the formation of codebook blocks and save the processing time. Median is used as the basis for the formation of codebook blocks. Table IV justify that the proposed approach save the processing time in comparison with the Straight Fractal coding (SFC) as well as with the SimpleFCSA. From the Figure 8 and Figure 9, as the tolerance size increases the compression ratio increases and reconstruction quality degrades and the encoding time is less with the optimized domain blocks i.e. MFCSA in comparison with general domain blocks i.e. simple Fractal coding. One can select the particular value of the tolerance, as per the problem definition, if the problem at hand belongs to the problem domain of image data transmission. Here the necessary compression algorithm should be used. Proposed approach falls in the lossy compression category. Experimental results show the effectiveness and potential of this approach for various color image database processing applications with little trade off in image quality. The proposed approach can be useful for the huge image data transmission where the image quality does not matter much for example, video conference. Web based image data can be managed using the proposed approach. In future, the proposed approach can be applied to the whole image by using the padding. The search of domain blocks can be optimized using the genetic algorithm.

JOURNAL OF MULTIMEDIA, VOL. 2, NO. 4, AUGUST 2007

Artificial

neural

network

can

be

used

for

63

the

implementation of proposed CICMFCSA with MFCSA.

TABLE III. COMPARISON OF SFC WITH CICMFCSA USING MFCSA AND CICMFCSA USING SIMPLEFCSA SFC

CICMFCSA using MFCSA

CICMFCSA using SimpleFCSA

400 350

Encoding Time

300 250 200 150 100 50 0 Mandrill

Airplane

Lena

House

Splash

Sailboat

Image Name

APPENDIX A CONTRACTIVE MAPS AND IFS’S Definition 1: Let X be a metric space with metric d. A map w : X o X is Lipschitz with Lipschitz factor s if there exists a possitive real value s such that

d ( w( x ), w( y )) d sd ( x, y ) for every x, y  X . If the Lischitz constant satisfies s < 1, then w is said to be contractive with contractivity s. Examples: 1. The function f ( x) 1 x is Lipschitz on the closed interval [1,2] but not on the open interval (0,1). On [1,2],

f ( x)  f ( y )

1 x 1 y

( x  y ) ( xy ) d x  y

, but on (0,1) the slope of f becomes unbounded and so even when x  y is small, 1 x 1 y can be very large. This example suggests that the technicalities, such as closure, are at least relevant. 2. If f is discontinous, then f is not Lipschitz because if there is a discontinuity between x and y, then when x and y get arbitrary close, f(x) and f(y) can remain separated. n

n

G

G G

3. If f : \ o \ is given by f ( x) Ax  b then f is Lipschitz. In fact, any linear operator on a finitedimenssional vector space is Lipschitz. Lemma 1: If f : X o X is Lipschitz, then f is continous. Proof: It is sufficient to think of continous functions as maps that have f(x) and f(y) arbitrarily close as x gets close to y. But as x and y get close, d(x,y) gets arbitrarily small so that d ( f ( x), f ( y )) d sd ( x, y ) must also.

© 2007 ACADEMY PUBLISHER

A map is contractive if it brings points closer together. The contractivity s measures how much closer two points are brought together. As an example, consider the map f ( x) x 2 on the real line (with the usual metric d ( x, y )

x  y ). This map is contractive,

because the distance between f(x) and f(y) is never more than half the distance between x and y. If we pick any initial x and iterate f, computing

f ( x), f ( f ( x)), f D3 ( x),..... , then we will converge to a fixed point 0=f(0). This is a general property of contractive maps: if we iterate them from any intial point, we converge to a unique fixed point. While all contractive maps have unique fixed points, not all maps with unique fixed points are contractive. For example, x 6 2 x only fixes 0, but it is an expansive map. Here are some examples of contractive maps: n

G

n

1. If f : \ o \ is defined by f ( x)

G JG

G JG Ax  B ,

where A is a n x n matrix and x , B are vectors, then f is

G

G

contractive if x 6 Ax is contractive. This map will be

G

G x  1 . This value is

contractive if sup Gx\ n Ax called the norm of A. 2. Let

wi : \ 2 o \ 2 , i=1,…,n be a collection of

contractive transformations. Then we can define a map

W : + (\ 2 ) o + (\ 2 ) by n

W (S )

* w (S ) i

i 1

The next theorem tells us that this map is contractive also.

64

JOURNAL OF MULTIMEDIA, VOL. 2, NO. 4, AUGUST 2007

2

Theorem 1: If wi : \ o \ si

contractivity

2

is contractive with i=1,…,n,

for

then

n

* w :+(\

W

i

2

) o + (\ 2 ) is contractive in the

i 1

Hausdroff metric with contractivity s

max i

1,...., n

{si } .

d ( x, f Dk ( x)) d d ( x, f Dk 1 ( x))  d ( f Dk 1 ( x), f D k ( x)) d(x, f Dk(x)) dd(x, f (x))d( f (x), f ( f (x)))˜˜˜˜d( f Dk1(x), f Dk(x)) d ( x, f D k ( x)) d (1  s  ˜˜˜˜  s k  2  s k 1 )d ( x, f ( x)) 1 d ( x, f D k ( x)) d d ( x, f ( x)) (4) 1 s Therefore,

Proof: We will prove this for the case n=2. The general case can be proved by induction. Select

A, B  + (\ 2 ) , and let H A  B(H ) and B  A(H ) . Let s max{s1 , s2 } ,

Then

sm d ( x, f ( x)) 1 s

and since s < 1, the left side can be made as small as we like if n and m are sufficiently large. This means that the sequence x, f(x), f(f(x)),…. is a Cauchy sequency, and since X is complete, the limit point x f

Ai Bi

wi ( A) , wi ( B ) ,

A'

W ( A)

A1 ‰ A2 , and

B'

W ( B)

B1 ‰ B2 .

Then

h( A, B ) .

d ( f D m ( x), f D n ( x)) 

lim f D n ( x) is n of

in X. By Lemma 1, contractivity of f implies that f is continous, and so

we

want

f (x f ) to

show

that

h(W ( A),W ( B ))  sh( A, B) , or B '  A' ( sH ) and A'  B ' ( sH ) . But this follows from Bi  wi ( A(H ))  Ai ( siH )  Ai ( sH ) and Ai  wi ( B (H ))  Bi ( siH )  Bi ( sH ) , for i=1,2. See Figure 11

f (lim f D n ( x)) lim f D n 1 ( x)

xf .

To proove uniqueness: suppose x1 and x2 are both fixed points. Then d ( f ( x1 ), f ( x2 )) d ( x1 , x2 ) , but we also have d ( f ( x1 ), f ( x2 ))

sd ( x1 , x2 ) , a contradiction.

APPENDIX C COLLAGE THEOREM Theorem 3: With the hypothesis of the Contractive Mapping Fixed-Point Theorem,

d ( x, x f ) 

1 d ( x, f ( x)) . 1 s

Proof: This is a consequence of taking the limit as k goes to infinity in equation (4). It is not necessary for f to be contractive for it to have a fixed point which attracts all of X. For example, it is sufficient for some iterate of f to be contractive. This leads to the following generalization of the previous theorem. Generalized Collage Theorem and proof is given below: Figure 11 wi ( A(H ))  Ai ( siH ) for i=1,2.

Definition 2: Let f be a Lipschitz function. If there is a Dn

APPENDIX B FIXED-POINT THEOREM Theorem 2: Let X be a complete metric space and f : X o X be a contractive mapping. Then there exists a unique point x f  X such that for any point

x X xf

f (x f )

lim f D n ( x)

Theorem 4: Let f be eventually contractive with exponent n; then there exists a unique fixed point x f  X such that for any x  X

xf

n of

Such a point is called a fixed point or the attractor of the mapping f. Proof: Select x  X . Then n > m,

d( f Dm(x), f Dn (x))  sd( f Dm1(x), f Dn1(x))  smd(x, f Dnm(x)) Now, using this and the triangle inequality repeatedly. © 2007 ACADEMY PUBLISHER

number n such that f is contractive, then we call f eventually contractive. We call n the exponent of eventual contractivity.

f (x f )

lim f D k ( x) k of

In this case,

1 1V n d ( x, f ( x)) 1 s 1V Dn and V is the where s is the contractivity of f d ( x, x f ) 

Lipschitz factor of f.

JOURNAL OF MULTIMEDIA, VOL. 2, NO. 4, AUGUST 2007

f D n . We want to show that f D k Dk converges to xg; that is, f ( x) is arbitrarily close to xg Proof: Let g

for all sufficiently large k. For any k, we can write k = qn + r, with 0 d r  n . So,

d ( f D k ( x), xg )

d ( f D qn  r , xg )

d ( f Dk ( x), xg ) d d ( f Dqnr ( x), f Dqn ( x))  d ( f Dqn ( x), xg ) d ( f Dk (x), xg ) d (gDq ( f Dr (x)), gDq ( x))  d (gDq ( x), xg ) d ( f D k ( x), xg ) d s q d ( f D r ( x), x)  d ( g D q ( x), xg ) But both of these terms can be made arbitrarily small for 0 d r  n and q sufficiently large. The fixed-point condition follows from the continuity of f, and uniqueness follows from the uniqueness of xg . For the inequality, we know from Collage Theorem that:

d ( x, x g ) 

1 d ( x, g ( x)) 1 s

and n

d ( x, g ( x))

d ( x, f D n ( x)) d ¦ d ( f Di ( x), f Di 1 ( x)) i 1

n

d ( x, g ( x)) d d ( x, f ( x))¦ V i 1 i 1

n

d ( x, g ( x)) d

1V d ( x, f ( x)) 1V

It is not necessary for f to be contractive for all n that are sufficiently large. It is sufficient that f be contractive for some n. Also, it is possible for W ‰ wi to be eventually contractive if some of the wi are not contractive. REFERENCES [1] M. Barnsley, S. Demko, “Iterated Function Systems and the Global Construction of Fractals”, Royal Soc., vol. A399, London, 1985, pp. 243-275 [2] M. F. Barnsley, “Fractals Everywhere”, Academic Press, 2nd Edition, 1993. [3] Yuval Fisher, “Fractal Image Compression”, SIGGRAPH’92 Course Notes, 1992. [4] A. E. Jacquin “Image coding based on fractal theory of iterated contractive image transformations”, IEEE Trans, On Image Proc, vol. 1, January 1992. [5] M. F. Barnsley, L. P. Hurd, “Fractals Image Compression”, AK Peters Ltd., 1993. [6] Robert A. Hobvis, Soundararajan Ezekiel, Gary A. Winchester, “Texture Based Image Compression by using Quincunx Mask”, 2000. [7] Kai Uwe Barthel, Jorg Schuttemeyer, Thomas Voye, Peter Noll, “A New Image Coding Technique Unifying Fractal and Transform Coding”, IEEE International Conference on Image Processing (ICIP’94), 13-16 November 1994.

© 2007 ACADEMY PUBLISHER

65

[8] B. Wohlberg and G. de Jager, “Fast image domain fractal compression by DCT domain block matching,”, lectronics Letters, Vol. 31, pp. 869–870, May 1995. [9] Jin Li and C.-C. Jay Kuo, “Image Compression with a Hybrid Wavelet-Fractal Coder”, IEEE Trans. on Image Processing, Vol. 8, No. 6, June 1999. [10] Zhou Wang, David Zhang, Yinglin Yu, “Hybrid Image Coding based on Partial Fractal Mapping”, Signal Processing: Image Communication 15, pp. 767-779, 2000. [11] S.K. Ghosh J. Mukhopadhyay V.M. Chowdary A. Jeyaram, “Relative fractal coding and its application in satellite image compression”, IEEE 2001. [12] Kamel Belloulata and Janusz Konrad, “Fractal Image Compression with Region-Based Functionality”, IEEE Trans. on Image Processing, Vol. 11, No. 4, April 2002. [13] Aditya Kapoor, Kush Arora, Ajai Jain, G.P. Kapoor, “Stochastic Image Compression Using Fractals”, IEEE Proceedings of the International Conference on Information Technology: Computers and Communications (ITCC’ 03), 2003. [14] M. Hassaballah, M.M. Makky, Youssef B. Mahdy, “A Fast Fractal Image Compression Method Based Entropy”, Electronic Letters on Computer Vision and Image Analysis 5(1), pp. 30-40, 2005. [15] Bodo Zalan-Peter, “Maximal Processor Utilization in Parallel Quadtree-based Fractal Image Compression on MIMD Architectures”, Studia Univ. Babes- Bolyai, Informatica, Volume XLIX, Number 2, 2004. [16] Jacobs E. W., Fisher Y., Boss R. D., “Image Compression: A Study of the Iterated transform Method”, Signal Processing, 29, pp. 251-263, 1992. [17] T. Hintz and Q. Wu, “Image compression on Spiral Architecture”, Proceedings of The International Conference on Imaging Science, Systems and Technology, pp. 201-204, 2003. [18] Q. Wu, X. He and T. Hintz, “Preliminary image compression research using uniform image partitioning on Spiral Architecture”, The Second International Conference on Information Technology and Applications (IEEE), pp.216-221, 2004. [19] X. He, T. Hintz and U. Szewcow, “Replicated shared object model for parallel edge detection algorithm based on Spiral Architecture”, Future Generation Computer Systems Journal, Vol. 14, Elsevier, pp.341-350, 1998. [20] X. He, H. Wang, T. Hintz and Q. Wu, “How Can Spiral Architecture Improve Image Compression?” The Second International Conference on Information Technology and Applications (IEEE), pp. 226-231, 2004 [21] H. Wang, M. Wang, T. Hintz, X. He and Q. Wu, “Fractal image compression on a pseudo Spiral Architecture”, Australian Computer Science Communications, Vol.27, Australian Computer Society Inc, pp.201-207, 2005. [22] N. V. Thakur, O. G. Kakde, “Fractal Color Image Compression on a Pseudo Spiral Architecture”, 2nd IEEE International Conference on Cybernetics and Intelligent Systems, CIS 2006, Bangkok, Thailand, pp. 228-233. [23] N. V. Thakur, O. G. Kakde, “Color Image Compression on Spiral Architecture using Optimized Domain Blocks in Fractal Coding”, IEEE International Conference on Information Technology, ITNG’07, Las Vegas, USA, pp. 234-242. [24] B. Wohlberg, G. D. Jager, “A Review of the Fractal Image Coding Literature”, IEEE Transaction on Image Processing, vol. 8, 1999. [25] A. E. Jacquien, “Fractal Image Coding: A Review Proceeding of the IEEE, vol. 81, no. 10, 1993, pp. 14511465.

66

[26] P. Sheridan, “Spiral Architecture for Machine Vision”, Ph D Thesis, University of Tecnology, Sydney, 1996. [27] X. He, “2 D Object Recognition with Spiral Architecture”, Ph D Thesis, University of Technology, Sydney, 1999. [28] X. He, T. Hintz, “Refining Edge Detection within Spiral Achitecture”, Australian Computer Science Communications, 2000. [29] P. Sheridan, T. Hintz, D. Alexander, “Pseudo-invariant image Transformations on a Hexagonal Lattice’, Image and Vision Computing, vol. 18, 2000, pp. 907-917. [30] Schwartz E., “Computational Anatomy and Functional Architecture of Striate Cortex: A Spatial Mapping Approach to Perceptual Coding”, Vision Research, vol. 20, 1980, pp. 645-669 [31] Q. Wu, X. He, et al, “Virtual Spiral Architecture”, International Conference on Parallel and Distributed processing Techniques and Applications, vol. 1, pp. 399405. [32] Rafael C. Gonzalez, Richard E. Woods, “Digital Image Processing”, Second Edition, Pearson Education Asia, 2005. [33] S. E. Umbaugh, “Computer Vision And Image Processing: A Practical Approach Using CVIP Tools, Prentice Hall, 1996. [34] G. Schaefer and M. Stich, “UCID - An Uncompressed Color Image Database”, Proc. SPIE, Storage and Retrieval Methods and Applications for Multimedia 2004, San Jose, USA, pp. 472-480.

Nileshsingh V. Thakur received Bachelor of Engineering degree in Computer Science Engineering from Government College of Engineering, Amravati, India and Master of Engineering degree from College of Engineering, Badnera under Amravati University and Sant Gadge Baba Amravati University in 1992 and 2005 respectively. Currently he is Ph.D. candidate from Visvesvaraya National Institute of Technology,

© 2007 ACADEMY PUBLISHER

JOURNAL OF MULTIMEDIA, VOL. 2, NO. 4, AUGUST 2007

Nagpur, India at Department of Computer Science. His research interest includes image processing, computer vision, pattern recognition, artificial neural network, and evolutionary approaches. He is having over 15 years of teaching and research experience. Presently he is Assistant Professor in Department of Computer Science and Engineering at G. H. Raisoni College of Engineering, Nagpur, India. He is the author or co-author of more than ten scientific publications in International Journal, International Conferences, and National Conferences. A.Prof. Thakur is the life member of ISTE, India. He also worked as the reviewer for international conference.

Dr. O. G. Kakde received Bachelor of Engineering degree in Electronics and Power Engineering from Visvesvaraya National Institute of Technology (formerly Visvesvaraya Regional College of Engineering), Nagpur, India and Master of Technology degree in Computer Science and Engineering from Indian Institute of Technology, Mumbai, India in 1986 and 1989 respectively. He received Ph.D. from Visvesvaraya National Institute of Technology, Nagpur, India in 2004. His research interest includes theory of computer science, compilers, image processing, and genetic algorithms. He is having over 20 years of teaching and research experience. Presently he is Professor and Head of Department of Computer Science and Electronics Engineering at Visvesvaraya National Institute of Technology, Nagpur, India. He is the author or co-author of more than twenty scientific publications in International Journal, International Conferences, and National Conferences. He also authored five books on data structures, theory of computer science, and compilers. Dr. Kakde is the life member of Institution of Engineers, India. He also worked as the reviewer for international journals, international conferences, and National conferences and Seminars.