Fractal Image Compression Using Block Indexing Technique: A Review

Fractal image compression depends on representing an image using affine transformations. The main concern for researches in the discipline of fractal image compression (FIC) algorithm is to decrease encoding time needed to compress image data. The basic technique is that each portion of the image is similar to other portions of the same image. In this process, there are many models that were developed. The presence of fractals was initially noticed and handled using Iterated Function System (IFS); that is used for encoding images. In this paper, a review of fractal image compression is discussed with its variants along with other techniques. A summarized review of contributions is achieved to determine the fulfillment of fractal image compression, specifically for the block indexing methods based on the moment descriptor. Block indexing method depends on classifying the domain and range blocks using moments to generate an invariant descriptor that reduces the long encoding time. A comparison is performed between the blocked indexing technology and other fractal image techniques to determine the importance of block indexing in saving encoding time and achieving better compression ratio while maintaining image quality on Lena image.


Introduction
In this section, an introduction is provided to data compression and the essential concept behind fractal image compression in order to clarify the most important methods involved.

Data Compression
To minimize the number of bits wanted to show an image, a video sequence or music, the data compression algorithms are applied. It is the science or technique to represent the information in a compact structure. Data compression is necessary because the users produce and utilize more and more of the information that is in digital form. The data compression function consists of two components: (i) an encoding algorithm that takes an image and produces a "compressed" representation, and (ii) a decoding algorithm that rebuilds, from the compressed representation, the original message or some approximation of it [1]. A variety of data compression methods are used to compact images including the lossy and lossless methods. In the lossy compression, the compressed signal does not look like the original actual signal and there are disfigurements of the actual signal with the decompressed signal. The lossless compression results in a compressed signal that can return the same original actual signal [2]. Recent compression methods can be classified into several categories, such as (a) Wavelet, (b) DCT, (c) Vector quantization, (d) Genetic algorithm and (e) Fractal methods. One benefit of fractal compression over the conventional transforms coding approaches is that it occupies merits of local scale invariance". Many natural image features, such the contrast regions and straight edges, are not changed by re-scaling. This kind of redundancy is difficult to exploit, and this is the major impulse of fractal image coding [3].

Fractal Image Compression
A new image compression technique, called fractal compression, has become rapidly popular. Nowadays it is being utilized in many of implementations, including image compression, feature extraction, image signatures, texture segmentation, and image watermarking [4]. Fractal image compression is an encouraging technique for compact storing of images. It depends on fractals and utilizes self-symmetry which can be observed in all images. It is a lossy technique that poses no troubles for applications, such as using the internet to submit and move the images [5]. The first researcher who used the concept of fractals in image compression was Michael Barnsley. He proposed that by utilizing refined repetitions of the affine transformation of the plane, one could result from a fractal like an image via saving the image as a combination of transformations instead of a combination of pixels [6]. The merging of many affine mappings on the whole image composing these transforms that are recognized as Iterated Function Systems (IFS). The fractal image compression that depends on IFS was difficult and yet not workable. Jacquin's introduction of the partitioned IFS (PIFS) makes the fractal image compression a workable fact. The difference between PIFS and IFS is that Jacquin divided the image into groups named as the range blocks, while the temporary images utilized to make the range blocks are named as the domain blocks. The PIFS were performed on the groups instead of being performed on all images [6,7,8]. The method of fractal image encoding included dividing the image to create the range blocks and domain blocks, identification of domain blocks, and appropriate implementation of affine transforms. On every range block, the set of transformations taken is performed to guide the domain blocks, as the elapsed time (encoding) is longer than the decoding time, which makes the fractal coding asymmetric. The decoding operation affects the specific IFS transformations on any preliminary image, and the operation is reduplicated numerous times until arriving at the attractor [9].
Fractal compression, compared to other image compression techniques, makes an acceptable balance between the compression ratio (CR) and the quality of image. The advantage of fractal coding is the ability to rebuild the compressed image to any size without the loss of details [10]. Fractal compression is one of the efficient codec methods. Many researchers paid attention to the process of further planning of the models that could reach properties such as more efficient compression ratio (CR), independent resolutions, and high grade of decoding speed, etc. [11,12,13]. The technique of fractal image compression is proper in the operation of image signature solutions [14,15], texture segmentation process [16,17], image retrieval [18,19] and the distinct methods like MRI-and ECGbased image processing [20,21]. In addition, it focuses on other types of image processing applications, image denoising [22,23], and digital watermarking solutions [24,25]. A major setback in the model is its complexity, long encoding time, and time taken to find the best block matching in a large pool of domain blocks [26]. Thus, speeding up the encoding is necessary and many attempts were conducted to speed FIC using different methods. Numerous techniques targeted the aspect of addressing the conditions of encoding time [10,27,28,29]. Decreasing the size of a domain pool could be another techniques adapted in many ways [30,31,32].

Related Work
The fractal image compression (FIC) has been the centric point in numerous research studies. Various techniques for generating fractals have been developed and used to produce images, such as fractal with feature extraction, DCT, wavelet, Quadtree, genetic algorithms, and neural networks, etc.

1.
Fractal image with features extraction Saad [33] described the range of images by extracting a few number of features to improve the basic fractal image compression. The mean and variance features were extracted of all the range blocks. The mean (Mr) value of a range offers the amount of the average gray level of that range, whereas the variance (Vr) value of a range explains the dispersion of its gray level from the mean; it is utilized to determine if the range area is a homogenous region or it has details. Several values of the variance are used to control the areas of homogeneity; these values are called Homogenous Permittivity (HP), which demonstrate the level of homogeneity accepted. This can (i) decrease the number of complex calculations needed by the FIC compression method and (ii) lead to reducing the encoding time. Baviskar and Pawale [34] proposed an effective domain search method by feature extraction for fractal image compression that reduces coding time and enhances the form of the image that is compressed. For every image block, a small number of features are computed; these features are: (i) mean, (ii) standard deviation, (iii) skewness, and (iv) kurtosis. These features are used to distinguish the range and domain images and to compare the domain and range blocks rather than using separate pixels to distinguish and compare.

2.
Fractal image with DCT Rawat and Meher [35] combined the DCT with the fractal image compression. The color image is compressed using the DCT and, to avoid the repetitive coding of similar blocks, the fractal image compression is used. Equivalent blocks are discovered by using the Euclidean distance measure. The image is partitioned into 8×8 non-overlapping blocks. For all blocks of the image, the DCT is used and then the DCT coefficients are quantized. The zero values are removed by looking into the block values in a zig-zag technique; this technique enhances the compression quality and extracts the nonzero values. In this stage, the process of fractal image compression is applied. Lastly, the image is compressed by Huffman encoding. Gupta et al. [36] exercised a DCT for the optimization of image encoding. Two simple adaptive techniques, namely the variance-based selection of image blocks and the adaptive threshold, are applied for gaining the goal of image compression. The first technique, the range block exclusion adaptive technique eliminates similar range blocks before FIC compression. This exclusion decreases the number of domains and range blocks of matching operations. The hybrid compression algorithm localizes the position of the domain block around the range block without checking the whole domain pool. In the second technique, a decrease in the domain pool size is performed. Differences between domain and range blocks are matched. Each domain block that is within the threshold value is preserved in the pool. Lastly, quadtree partitioning is applied to optimize the achievement of encoding adaptive threshold with variance domain selection process.

Fractal image with wavelet
Feng et al. [37] proposed a fractal image compression technique which depends on multi-wavelet transform. This technique is performed by decomposing the original image into sub-images at different spatial frequencies through multi-wavelet transformation. Then, on the high-level wavelet coefficients, fractal coding is performed only by using the correlation between the wavelet coefficients at various scales and estimating the fractal code of the low-level wavelet coefficients from that of the upper-tiered wavelet coefficients. Rather than just building on the foundation of the neighborhood gray-scale correlation, it transforms the image model into a collection of relevant elements in the frequency domain. So that a larger image block can be coded, the possibility of global correlation in the image can be removed, and the coding speed of the existing fractal image compression algorithm can be enhanced. Hien [38] proposed a four-fork tree with a novel wavelet and fractal image coding technique, by examining the restrictions of the present wavelet-based image compression processes. Initial errors happen at various levels of significance, depending on the frequencies of sublevel-band wavelet coefficients. Higher frequency sublevel bands may end up with larger initial errors. Consequently, the initial errors of the sizes of sublevel blocks and superblocks vary. Also, because of the permitted errors and compression rates, the matching sizes between sublevel blocks and superblocks vary. Finally, the Haar wavelet was analyzed for 5-level decomposition for image compression.

Fractal image with QuadTree and Huffman coding
Veenadevi and Ananth [39] divided the original grey image into non-overlapped blocks, according to a threshold value and Quadtree decomposition, to achieve fractal image compression. These methods were applied for the compression of satellite imageries by using a threshold value and Huffman coding for encoding and decoding of the image. Pandey and Seth [40] performed a method of fractal image compression using quadtree decomposition. The block size in the Quadtree method varies according to the features of the image and the partition into different blocks. Later, the Huffman coding was applied in the compressed fractal image leading to the improvement its performance. Various quantitative computing methods are established by passing images of various formats and dimensions and, based on those quantitative measures, a decision is made as to which image format is better for compression.

5.
Fractal image with genetic algorithm Pandey and Singh [41] suggested a fractal image compression technique with the investigation of a novel image compression scheme that depends on genetic algorithm. In the tested image compression, a global technique was applied that can integrate genetic algorithm and other image compression schemes to achieve parameter alleviation and to perform application requirements. This is performed by applying the genetic algorithm process for finding best possible optimization through the compression process utilizing the different crossover methods. The goal is to quantitatively analyze the existing and suggested image compression schemes on the basis of few parameters, including various crossovers. The mechanism is performed and simulated using (i) Fractal image compression with different images and (ii) Same fractal compression technique with suggested adaptive genetic algorithm method utilizing variants of Crossover. After that, the effectiveness of these two methods was compared on few famous images in different scenarios and parameters. The outcomes showed that the suggested methods have better performance. Saxena and Singh [42] improved the genetic algorithm to raise the CR and quality of the digital image. This algorithm process involves the parallel selection of transform blocks in multiple sequences. The fractal transforms function is used for the transformation of image data. The fractal transforms provide the non-overlapping blocks. The second dimension is used to map the dimension and transform the image. The improved genetic algorithm process of data relies on the reference direction of the image. The direction of the image was divided into three sections: horizontal, vertical and diagonal. The modified algorithm is a combination of FIC and genetic algorithms. The fractal transforms function is used for the decomposition of data in different layers and the different layers precede the data for the input of parallel genetic algorithm. The parallel genetic algorithm precedes the data for searching for the best set of pixels or transforms value for the aims of input of the head code matrix (HCC matrix).

6.
Fractal image with neural network Zhou et al. [43] utilized a neural network to alter the variance depending on a fractal image compression algorithm. The original image has different subblocks and, depending on these blocks, some mapping structures are selected automatically by neural network. If the pixels of subblocks have few differences, the affine mapping had a perfect outcome between the matched subblocks. If the pixel values of subblocks differ highly, the affine mapping turns into inefficient for the mapping and the outcomes are in a large matching error. This problem is solved by using a neural network to structure the mapping for the subblocks, when the pixels differ highly. Each pixel in the subblocks is considered as a neuron in the network; the pixel in its matched domain blocks as input neurons and the pixel in range blocks as output neurons. Chakrapani and Rajan [44] classified the domain pool objects of a gray image using the developed neural network, so that the encoding time and quality of the image were improved. The feature extraction reduced the volume of the issue and also allowed the neural network to be trained on an image detached from the test image and, therefore, reduced the computations required during the search. The prime benefit of the neural network is adapting itself from the training data depending on the distribution of feature space noticed in the training stage.

[35]
A Hybrid mechanism using DCT, Fractal Image and Huffman encoding.

[42]
Fractal transform function and parallel genetic algorithm

[43]
Neural network 1. The PSNR is greater than that in the traditional variancebased method. The coding time and the CR are nearly similar to those in the traditional variance-based method. 2. The variance-based method increased the coding time by 22 times, but the rebuild image quality is decreased clearly. 3. The rebuild image quality is similar or greatly better than that in the baseline encoding algorithm. 4. The results on gray peppers image (256×256) are PSNR=33.41, time=0.64sec.

[44]
Neural network (Back-propagation algorithm) 1. The network is properly trained and the domains are classified correctly with a minimum deviation which helps in encoding the image using FIC. 2. The PSNR is less for the grayscale image by neural network method depends on FIC than that of FIC utilizing full search method.

Fractal image compression using block indexing technique
A novel fractal compression technique is presented; this technique depends on indicating the zeromean range blocks by implementing moment descriptors. The principal concerns for the moment descriptor search scheme are: 1. When the blocks are identical, they must have roughly a similar descriptor amount, but they may not be similar to the same descriptor amounts. 2. Candidate blocks are specified using the descriptor search scheme. These blocks must be identical in their descriptor values utilizing single identical for matching. These values must be tested utilizing block based matching process. 3. It is applied to specify the image blocks in the range and domain pool. 4. It performs the IFS-mapping stage as a selective process, rather than that each domain block is tested to detect the best approximate for all range block. 5. It is used to speed up the range-domain seeking task, which consequently speeds up the matching stage. 6. The total of the matching blocks in the search window is reduced by exchanging it with identical block descriptors matching. 7. Adopting the asymmetry assessment method to achieve extra time reduction and to estimate the near-optimal isometric transform is needed to obtain the perfect matching with any two blocks. This predictor is employed and thus will reduce the eight isometric transformation trials for the domain block to one. 8. The range pool partition is achieved for any chosen block size. The most complex task in the layout of the descriptor search is how to determine the perfect special descriptor for all blocks. Several types of research were published within block indexing mechanisms for fractal image compression, which increased the encoding time with a high quality of the reconstructed image. The published works are listed below [45][46][47][48][49][50][51][52][53]:  A novel fractal coding planner which depends on IFS-transform for zero-mean to domain and range blocks was implemented by George [45]. Several enhancements were accomplished on the matching process, which utilize the moment indicating as a standard to classify the blocks of the domain in an appropriate manner that they look like the blocks of the range. Also, the use of finish search condition depends on controlling the minimum error for matching. The fractal coding long time will be minimized by these extra coding proceedings. The encoder includes a group of transforms on parts of the image, which are the domain or range blocks. The domain blocks are overlapped, whereas the range blocks are non-overlapped. The group of transformations is composed of a spatial contraction (such as the mean of every four adjacent pixels) to build kxk blocks from blocks of 2kx2 size. Then one of the eight square symmetry process (four rotations and four reflections) is performed, followed by a contractive affine transformation on the grey pixel values.  A new fractal compression technique to index the zero-mean range on domain blocks by moment criteria was proposed by Al-Hilo and George [46]. The block descriptor "moment's ratio index" was determined using moment criteria; this descriptor was performed to determine the blocks in domain and range pools. In the encoding stage, the block moment ratio descriptor of each range block is used to filter the domain blocks and take only those blocks whose moment descriptor is appropriate to be IFS-matched with the tested range block. Initially, the loaded RGB is converted to YUV and the (U, V) component is down-sampled to obtain a reliable compression. FIC method is used to code individually each component of YUV and the image is divided to obtain non-overlapping range blocks. An identical but larger domain block is presented to each range block. The method used in this job is a fixed size dividing method to divide images, because it needs little calculation times compared with the other methods used. The domain blocks in which moment ratio factors are comparable to that of the tested range block are achieved using the IFS method instead of the full search method.  George and Al-Hilo [47] depended on the zero-mean process to suggest a mechanism for speedingup the fractal compression for color images utilizing a symmetry predictor. This predictor was used to decrease the total of isometric trails from eight to only one. IFS compression using the zero-mean process implies that the offset values of the block are changing with the mean values of brightness. Depending on this change, the equation of IFS mapping was implemented. For all domain and range blocks, the first order centralized moments are implemented to index onto 1 of 8 potential isometric states. These blocks indexes are passed via the predictor that produces the index of the desired isometric transform to obtain a good matching of range and domain. Also, the indexes of range average and scale are coded by implementing Differential Pluses Coding Modules (DPCM) followed by shift coding.  George and Minas [48] suggested an improved PIFS scheme; the image in the PIFS scheme is transformed to YUV, then the U, V components are down-sampled. A block descriptor is implemented to arrange the zero-mean of domain and range blocks. This descriptor is computed by a pair of lowfrequency DCT coefficients because of the energy packing features of DCT. Two kinds of Rdescriptors have been tested (i.e., the ratio descriptor, and the relative difference). For each kind, the two sets of DCT coefficients were taken into consideration. Hence, the isometric state of blocks of both range and domain are addressed using these descriptors. The quantization is performed on optimal affine approximation coefficients; they are coded by implemented DPCM, and finally the shift coding is performed.  George and Kadim [49] depended on block indexing and proposed a vector quantization compression mechanism to compress color images. An affine transform is used to constitute the codebook using the blocks of the color image. To nearly clarify the blocks of the compressed color image by using a template image (domain pool), it must have more contrast areas like a codebook. The image blocks are indexed using block descriptors, which are obtained from the DCT coefficients. The DCT-based descriptor is an affine transform invariant. The DCT descriptor is utilized to classify the blocks of the domain and matching is performed only with comparable indexed blocks. DCT shows the image by its elementary frequency ingredients; by which the more related information of the image is saved or compressed in the top left corner of the color image; this characteristic of DCT is named energy compaction, where it is logical to easily drop out the high frequency coefficients, like the approximate mean, to classify the block characteristics.  Mahmoud [50] applied the IFS using double descriptors and symmetry prediction. These descriptors are dependent on the quantity of the central moments of order-1 and order-3. They are incorporated to obtain block descriptors, classified like the affine transform invariant descriptors, to mark the domain and range blocks and increase the IFS matching. The isometric predictor used the order-1 moment status of the block matching to decrease the total time of matching process, because, rather than 8 matches, only one match will be performed to determine the comparability for both range and domain blocks. The coefficients of the best affine approximation are quantized to implement high CR and saved as a compressed file. The moment features are utilized for block indexing to obtain double block descriptors such that the affine invariant is accomplished for each one.  Al Hilo and Al-khafaji [51] introduced the impact of quantization on the rebuilt image in the FIC technique. This method depends on the zero-mean block for the block matching process; an average of the range blocks is used as a substitute for the traditional offset parameter. The uniform quantization was implemented because it can work faster than the other methods. To increase the compression, IFS coefficients should be quantized before prior saving because the IFS coefficients are real-valued. The quantization process affects the quality of the rebuilt image. The conversion of the real numbers to integers causes the forgetting of additional information. When the information missing is large, the quality of the rebuilt image will be poor. If the missing information is little, better quality and little compression ratio of the rebuilt image will be achieved.  Al Hilo and Al-khafaji [52] investigated the impact of image size on the compression coefficients of the (FIC) method. In this work, the same encoding technique used in an earlier work [46] and three variant sizes of the gray image (100 x 100, 150 x 150, 256 x256) were utilized.  Sultan et al. [53] proposed an enhanced fractal image compression system (FIC); it speeds up the blocks matching process by utilizing the symmetry prediction and indexing of blocks. The proposed system used a quadtree as a variable range block dividing method. The partitioning decision has two criteria: the Sobel-based edge magnitude and the contrast of block. The proposed system introduced a new set of moment descriptors which can emphasize the weights of different parts of each block. The performance of all possible combinations between double moment descriptors was investigated and a fast computation mechanism was introduced to calculate the moments attended to enhance the overall computation cost. The enhanced algorithm of FIC based on the partition IFS method was represented in: (i) The scheme of range pool partitioning, (ii) IFS matching with low computation redundancy, and (iii) using a new set of centralized moments which are complementary and more informative. Table-2 presents a comparison of the results of previous works on the Lena image in terms of compression ratio (CR), Peak Signal to Noise Ratio (PSNR), and coding time.

Conclusions
There were many studies of different fractal image compression techniques; these techniques have many merits and demerits. The block indexing process can provide more optimal results than other techniques. The main concept of the block indexing process is that each block is classified by a descriptor value to the candidate domain blocks and to reduce the encoding time.