Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
Fractal Image Compression on Spiral Architecture Xiangjian He1,2, Huaqing Wang1, Qiang Wu1, Tom Hintz1 and Namho Hur2 1 Computer Vision Research Group University of Technology, Sydney {sean,huwang,wuq,hintz }@it.uts.edu.au 2 Broadcasting System Research Group Digital Broadcasting Research Division Electronics Telecommunications Research Institute 161 Gajeong-dong, Yuseong-gu, Daejeon, 305-700, Korea namho@etri.re.kr Abstract Image compression has many applications. For example, it is an important step for distributed and network based pattern recognition. For real time object recognition or reconstruction, image compression can greatly reduce the image size, and hence increase the processing speed and enhance performance. Fractal image compression is a relatively recent image compression method. Its basic idea is to represent images as a fixed point of a contractive Iterated Function System (IFS). Spiral Architecture (SA) is a novel image structure on which images are displayed as a collection of hexagonal pixels. The efficiency and accuracy of image processing on SA have been demonstrated in many recently published papers. We have shown the existence of contractive IFS’s through the construction of a Complete Metric Space on SA. The selection of range and domain blocks for fractal image compression is highly related to the uniform image separation specific to SA. In this paper, we will review the current research work on fractal image compression based on SA. We will compare the results obtained on SA and the traditional square structure in terms of compression ratio and PSNR. Keywords--- hexagonal image structure, image storage, image addressing, Spiral Architecture. 1. Introduction Fractal image compression is a relatively recent image compression method which exploits similarities in different parts of the image. During more than two decades of development, the Iterated Function System (IFS) based compression algorithm stands out as the most promising direction for further research and improvement [1]. The basic idea is to represent an image as the fixed points of IFSs. Therefore, an input image can virtually be represented by a series of IFS codes. In this way, a compression ratio 10000:1 can be achieved [2]. The research work to be presented in this paper is based on a novel data structure, Spiral Architecture (SA) [3], which is inspired from anatomical considerations of the primate’s vision [4]. On Spiral Architecture, an image is a collection of hexagonal picture elements as shown in Figure 1. In the case of human eye, these elements (hexagons) would represent the relative position of the rods and cones on the retina. Figure 1. Spiral Architecture with spiral addressing In our earlier research work on image compression based on SA [5], we 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 [6] used the properties of uniform image partitioning based on Spiral Architecture. On Spiral Architecture, an image can be partitioned into a few sub-images [7] each of which is a scaled down near copy of the original image. Namely, each sub-image holds all the representative intensity information contained in the original. Using such properties, in our Proceedings of the International Conference on Computer Graphics, Imaging and Visualisation (CGIV'06) 0-7695-2606-3/06 $20.00 © 2006 Authorized licensed use limited to: University of Technology Sydney. Downloaded on February 26, 2009 at 19:23 from IEEE Xplore. Restrictions apply. work, the points in the original image first were reallocated into a few groups, sub-images. The similar pixel intensity was found between the corresponding points in the different sub-images. Then, one sub-image was chosen as the reference image, and the intensity difference between the reference image and other subimages was computed. After that, the information of the original image was coded by recording only the reference sub-image and the intensity difference information. Based on the features of locality and uniformity on SA, in [8], we investigated various methods for lossless and lossy image compression and concluded that SAbased image compression would improve the performance of image compression. In our work shown in [9, 10], we proposed fractal image compression (FIC) on SA. In those papers, we adopted the algorithms on traditional square image structure. The FIC algorithms relied on the uniform image separation to 7n parts. The size of range blocks and domain blocks for FIC was assumed to be a multiple of 7 pixels. In [11], a more flexible FIC method on SA was proposed. In order to have a clearer comparison with the Fisher’s FIC method [12] based on square structure, the size of domain blocks was set to be 4 times of the size of range blocks. This work was further improved in [13], where a virtual SA was constructed to increase the computation speed and to compress images with rectangular shapes. In this paper, we review FIC algorithms on SA. The organization of this paper is as follows. Section 2 reviews the Spiral Architecture. Various FIC algorithms on SA are introduced in Sections 3 through 5. We conclude in Section 6. 2. Spiral Architecture On the Spiral Architecture, an image is a collection of hexagonal elements [4]. Each pixel on The Spiral Architecture is identified by a designated positive number of based 7, called Spiral Address as shown in Figure 1. The numbered hexagons form the cluster of size 7n. The hexagons tile the plane in a recursive modular manner along the spiral direction [7]. Spiral Counting [4] can be considered as a Spiral movement from a given commencing hexagon counting for a pre-determined number and terminating at another certain hexagon. Any hexagon in an image can be reached by Spiral counting from any other given hexagon in the same image. When applying Spiral counting, it is strictly dependent on a pre-determined key define by Sheridan in [4]. A key is the first hexagon to be reached in an instance of a Spiral counting, which determines two important parameters: the distance and the orientation. For instance, given a Spiral address 15, the key of 15 can determine two values. One is the distance between the given hexagon 15 and the hexagon 0; the other is the orientation of hexagon 15 from hexagon 0. Spiral counting is used to define two operations in the SA, which are Spiral Addition and Spiral Multiplication [3]. Let a and b be Spiral addresses of two arbitrarily chosen hexagons in SA. Definition 1. [14] Spiral addition of a and b, denoted by a † b, is the Spiral address of the hexagon found by Spiral counting b hexagons in the key of Spiral address 1 from the hexagon with Spiral address a. For example, 3 † 2 = 26. Definition 2. [14] Spiral multiplication of a and b, denoted by a b, is the Spiral address of the hexagon found by Spiral counting b hexagons in the key of Spiral address a from the hexagon with Spiral address 0. For example, 15 2 = 26. A Spiral Multiplication corresponds to an image rotation with scaling and a Spiral Addition is equivalent to an image translation. 3. Basic FIC on SA The fundamental principle of fractal image compression consists of the representation of 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’ [12]. Each IFS is then coded as a contractive transformation with coefficients. Banach’s fixed point theorem guarantees that, within a complete metric space, the fixed point of such a transformation may be recovered by iterated implementation thereof to an arbitrary initial element of that space [15]. Therefore, the encoding process is to find an IFS whose fixed point is close to the given image. The usual approach is based on the Collage Theorem [16], which provides a bound on the distance between the image to be encoded and the fixed point of an IFS. A suitable transformation may therefore be constructed as a ‘collage’ from the image to itself with a sufficiently small ‘collage error’ (the distance between the collage and the image) guaranteeing that the fixed point of that transformation is close to the original image [17]. In the original approach, devised by Barnsley, this transformation was composed of the union of a number of affine mappings on the entire image [1]. Fractal image compression became a practical reality with the introduction by Jacquin of the partitioned IFS (PIFS) [18], which differs from an IFS in that each of the individual transformation operates on a subset of the image, rather than the entire image. Since the image support is tiled by ‘range blocks’, each of which is mapped from one of the ‘domain blocks’ as depicted in Figure 2, the combined mappings constitute a transformation on the image as a whole. The transformation minimizing the collage error within this framework is constructed by individually minimizing the collage error for each range block, which requires locating the domain block which may be made closest to it under an admissible block mapping. This transformation is then represented by specifying, for each range block, the identity of the matching domain Proceedings of the International Conference on Computer Graphics, Imaging and Visualisation (CGIV'06) 0-7695-2606-3/06 $20.00 © 2006 Authorized licensed use limited to: University of Technology Sydney. Downloaded on February 26, 2009 at 19:23 from IEEE Xplore. Restrictions apply. block together with the block mapping parameters minimizing the collage error for that range block. each range block on SA is of 7 pixels (compared with 16 pixels in square structure), the compression ratio is slightly lower but the quality of decompressed image has increased with higher PSNR output. Figures 5-7 show the original testing images represented on SA and the decompressed images. Table 1. Summary for images on square structure Image Figure 2. Each range block is constructed by a transformed domain block For each range block R, the FIC encoder must find the best approximation (1) R | sD  oI , where D is a codebook block transformed from a domain block to the same size as R. The coefficients s and o are called scaling and offset. If we use the Euclidean norm, the (1) is equivalent to minimizing E ( D, R ) min R  ( sD  oI ) . Building Boat House Compression ratio 3.37 3.37 3.37 PSNR 23.40 26.56 22.41 Table 2. Summary for images on Spiral Architecture Building Compression ratio 2 Boat 2 29.73 House 2 26.20 Image PSNR 25.43 s ,o The well known least squares method can be used to find the optimal coefficients directly as shown in [9,10]. In our early research on SA-Based FIC, we follow the same idea applied on square structure as described above. Firstly we separate the image into range blocks of seven hexagonal pixels and define the domain blocks of seven times more, i.e. 49 pixels (see Figure 3). Each pixel in the image can be the centre of a domain block. Then we include the neighboring 48 pixels around it based on Spiral counting to form a domain block unless any pixel of this domain block is out of the given image. Ȧ range block domain block Figure 3. Range and domain blocks in Spiral Architecture Figure 5. Original and compressed ‘building’ in Spiral Architecture Figure 6. Original and compressed ‘boat’ in Spiral Architecture Figure 4. Testing images: Building, Boat and House We use three figures as shown in Figure 4 to test our algorithms. Tables 1 and 2 summarize compression results on square structure (SQ) and SA. As the size of Figure 7. Original and compressed ‘house’ in Spiral Architecture Proceedings of the International Conference on Computer Graphics, Imaging and Visualisation (CGIV'06) 0-7695-2606-3/06 $20.00 © 2006 Authorized licensed use limited to: University of Technology Sydney. Downloaded on February 26, 2009 at 19:23 from IEEE Xplore. Restrictions apply. 4. FIC on SA with Variable Sizes of Range Blocks In [11], the range blocks for FIC on SA were redefined. The size of range blocks does not have to be a multiple of 7 pixels and each domain block is 4 times (rather than 7 times) as big as range blocks. As stated earlier, when an image is projected onto SA, every hexagonal pixel is identified by its unique spiral address, and image translation and partitioning can be performed based on the two spiral operations. Figure 8 shows an example of image partitioning using spiral multiplication. The original image has 1680710 hexagon pixels. The multiplier used in spiral multiplication is 555557. The separated sub-image areas are shown using different illuminations and labeled by different area numbers (see Figure 8b). Finally, the fragments of each sub-image are collected together to produce a complete partitioned sub-image. The addends used in spiral addition for fragment collection are also shown on each sub-image (see Figure 8c). The uniform image partitioning on SA applied here reveals the one-to-four relationship between the original image and its four sub-images. Therefore, for any given block in the SA space, it would be possible to find another corresponding area of four-time larger size by implementing the opposite operation of this uniform image partitioning. If we consider the smaller block as a range block, the larger block then would be one of the candidate domain blocks for this range. (a) (b) (c) Figure 8. Uniform image partitioning on SA. (a) Original image, (b) Four labeled sub-images after spiral multiplica-tion, (c) Four complete sub-images after fragment collecting with spiral addition. In Fisher’s basic FIC algorithm on SQ, the union of all range blocks in the same size covers the complete image space and there is no overlap between range blocks. The FIC on SA follows the fundamental idea with some enhancement for the flexibility in compression ratio. range block 2 range block 1 Figure 9. Two range blocks defined within a sub-image of 49 pixels The procedure begins with an equal-size image partitioning on SA. The number of pixels in each subimage is a power of seven, i.e.7, 49 or 343. A sub-image can then be defined as a range block or it can be further separated into parts of similar size to obtain smaller range blocks. In the example shown in Figure 9, the image is firstly partitioned into sub-images of 49 pixels and within each sub-image two range blocks are defined, namely the first range block has 25 pixels and another has 24 pixels so that the 49 pixels sub-image space is completely covered and the two range blocks have no overlap. Following the systematical scheme, range blocks can be defined quickly based on spiral counting and the size of range block is adjustable so that flexible compression ratios are available for further analysis. Following the Fisher’s FIC algorithm on SQ, the candidate domain block is four times larger than the given range block. Each pixel in a given range block should find four corresponding pixels in the candidate domain block. In addition, those sets of four pixels do not overlie with each other and the union of them will completely cover the candidate domain block. It also requires that the shape of the partition needs to be as similar as possible to the given range block. For example, it is often a square-to-square mapping between a range block and its domain block in most of FIC approaches on SQ. The task on SA can be fulfilled by the opposite operation of spiral multiplication. Let us consider a subimage in Figure 8c as a range block and it is easy to discover that one suitable domain block would be the image shown in Figure 8a. Then the 1 to 4 relationship between pixels in a range block and its domain block can be identified by the opposite operation of spiral multiplication, namely spiral division. The number 555557, which was previously used as multiplier, is used now to be a divisor. This spiral division is implemented over every range block pixel to find out the spiral address of the first corresponding pixel in the domain block. The other three corresponding pixels are traced by spiral addition with addends 1, 2 and 6 respectively. With the assistance of this definition scheme based on spiral operations, for a given range block in spite of the size and shape, a set of corresponding domain blocks could be found. As long as the pixels in the range block are continuous and non-overlapped, the domain block pixels cover a constant space without overlap. This guarantees that the ratio between range block and domain block used in our proposed FIC on SA follows the same 1:4 ratio as Fisher’s basic FIC algorithm. Once the range and domain blocks are defined, for each range block, the fractal transformation is constructed by searching for all the elements in the domain pool to find the most similar block following Fisher’s basic FIC. The three images as shown in Figure 4 were used to test our algorithms. For every testing image, the performance of FIC on SQ is compared with that on SA and the results are shown in the figures from Figures 10 to 12. In these figures, the curve representing FIC performance on SA is always above that for SQ. It is Proceedings of the International Conference on Computer Graphics, Imaging and Visualisation (CGIV'06) 0-7695-2606-3/06 $20.00 © 2006 Authorized licensed use limited to: University of Technology Sydney. Downloaded on February 26, 2009 at 19:23 from IEEE Xplore. Restrictions apply. easy to see that there are higher PSNR values over different compression ratios for all tested images. Building introduces less average variance than on SQ [12]. This less variance can reduce the error when computing the best similarity in FIC and eventually increases the fidelity in both encoding and decoding. 5. FIC on a Novel SA Presentation 50 SQ 45 PSNR (dB) SA 40 35 30 25 20 0 5 10 15 20 Compression Ratio Figure 10. PSNR versus Compression Ratio for Building Boat 50 SQ 45 PSNR (dB) SA 40 35 30 25 20 0 5 10 15 20 Compression Ratio Figure 11. PSNR versus Compression Ratio for Boat The idea of uniformly separating an image into four sub-images is adopted in this section for the definition of range and domain blocks on a virtual hexagonal structure (VHS). There are the following differences between our previous approach and the work to be presented in this section. First of all, we will not explicitly use the time consuming Spiral Addition and Multiplication for range and domain blocks definition. Secondly, the shape of images to be compressed is no longer hexagon-like, and can be a rectangle. The third but not the least difference is that the conversion between image represented on square structure and the hexagonal structure is fast and easy. The construction of the virtual hexagonal structure and the operation for image separation is shown as follows. To construct virtual hexagonal pixels, each square pixel is first separated into 7×7 smaller pixels, called sub-pixels. To be simple, the light intensity for each of these sub-pixels is set to be the same as that of the pixel from which the sub-pixels are separated. Each virtual hexagonal pixel is formed by 56 sub-pixels. To be simple, the light intensity of each constructed hexagonal pixel is computed as the average of the intensities of the 56 subpixels forming the hexagonal pixel when necessary. Figure 13 shows the arrangement of each hexagonal pixel with its 56 sub-pixels and also a collection of seven hexagonal pixels constructed with spiral addresses from 0 to 6. House 50 SQ 45 SA PSNR (dB) 40 35 30 25 20 15 0 5 10 15 20 Compression Ratio Figure12. PSNR versus Compression Ratio for House The improved performance is introduced by the enhanced image structure, i.e. SA. First of all, SA has higher degrees of symmetry that results in a considerable saving in storage [11]. Meanwhile the beautiful circular symmetry guarantees that the search of the best domain block is smoother and closer to the given range block compared with that on SQ can only follow either horizontal or vertical direction. In addition, in our preliminary research on image compression on SA, it has been found that for a fixed size block on SA always Figure 13. A cluster of seven hexagonal pixels The idea for image separation on the virtual structure is to define rows and columns as images represented on the square structure. Then, each subimage is a collection of hexagonal pixels from every second row and column. Figure 14 shows the results of image separation. After the virtual image represented using hexagonal pixels is obtained, FIC procedures become obvious by Proceedings of the International Conference on Computer Graphics, Imaging and Visualisation (CGIV'06) 0-7695-2606-3/06 $20.00 © 2006 Authorized licensed use limited to: University of Technology Sydney. Downloaded on February 26, 2009 at 19:23 from IEEE Xplore. Restrictions apply. simply following Fisher’s basic FIC algorithm on a square structure. The size of range block is scalable and can be 2˜2, 3˜3, 4˜4, 6˜6, 8˜8 and so forth which make the various compression ratios available. Then, the performance of the proposed codec can be compared with those obtained from the original square image using the same scales. References [1] [2] [3] [4] [5] [6] Figure 14. Four similar sub-images separated from a 512×384 a car image [7] When testing our algorithms using the three images shown in Figure 4, similar results to those shown in Figures 10 to 12 in the previous section were obtained. It was found that the FIC performance on VHS was always above that for square structure. It is easy to see that the proposed FIC on VHS always performs better than that on square because there are higher PSNR values for different compression ratios for all test images. [8] [9] [10] 6. Conclusions and Future Work [11] In this paper, we have reviewed the research work for FIC on SA. The investigation carried out and the performance analyses show the advantages of the FIC algorithms on SA. By inheriting the basic FIC method directly from square structure (SQ) to SA, it gives more accurate compression results (higher PSNR at the same compression ratios as on SQ) for all testing images. The FIC algorithms also have flexible range block sizes so that the compression ratio is adjustable. There are many ways to improve FIC on SA for future work. In order to improve the quality for image display and representation on VHS, a better image interpolation method must be developed to convert images represented on SQ and SA. An adaptive FIC method that uses different sizes for different range blocks (and domain blocks) is another research direction to further enhance the compression performance. For real-time web-based applications, it will be interested to consider progressive FIC encoding and decoding [19], which can more efficiently use network bandwidth and increase image transmission speed. Parallel processing is another potential approach to increase the computation speed and this can be performed through the uniform image separation on SA using a spiral multiplication. [12] [13] [14] [15] [16] [17] [18] [19] M. Barnsley and L. P. Hurd, Fractal Image Compression, AK Peters. Ltd, 1993. M. Barnsley and A. D. Sloan, “A better way to compress images”, BYTE, pp.215-223, 1988. P. Sheridan, T. Hintz. and W. Moore, “Spiral Architecture in machine vision”, Proceedings of Australian Occam and Transputer Conference, Amesterdam, 1991. P. Sheridan, Spiral Architecture for Machine Vision, PhD. Thesis, Faculty of IT, University of Technology, Sydney, 1996. 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. 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. 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. 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 H. Wang, M. Wang, T. Hintz, Q. Wu and X. He, “VSAbased fractal image compression”, Journal of WSCG, Vol.13, No.1-3, pp.89-96, 2005. 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. H. Wang, Q. Wu, X. He and T. Hintz, “A new approach for SA-based fractal image compression”, International Conference on Image Processing (ICIP2006), to appear. Y. Fisher, Fractal Image Compression: Theory and Application, New York, Springer-Verlag New York, Inc., 1995. H. Wang, X. He, Q. Wu and T. Hintz, “A new approach for fractal image compression a virtual hexagonal structure”, International Conference on Pattern Recognition (ICPR2006), to appear. X. He, H. Wang, Q. Wu and T. Hintz, “Contractive IFS for fractal image compression on Spiral Architecture”, Proceedings of Asia-Pacific Workshop on Visual Information Processing (IEEE), , pp.171-176, 2005. E. Kreyszlg., Introductory Functional Analysis with Applications, New York: Wiley, 1978. M. Barnsley, Fractals Everywhere, Academic Press, 1988. B. Wohlberg, B. and G. D. Jager, A Review of the Fractal Image Coding Literature, IEEE Transaction on Image Processing. A.E. Jacquin, Fractal image coding: a review, Proceedings of the IEEE 81(10): 1451-1465,1993. H. Wang, Q. Wu, X. He and T. Hintz, “A novel interactive progressive decoding method for fractal iamge compression”, International Conference on Innovative Computing, Information and Control (IEEE ICICIC2006), to appear. Proceedings of the International Conference on Computer Graphics, Imaging and Visualisation (CGIV'06) 0-7695-2606-3/06 $20.00 © 2006 Authorized licensed use limited to: University of Technology Sydney. Downloaded on February 26, 2009 at 19:23 from IEEE Xplore. Restrictions apply.