Fractal Image Compression


Published on

Fractal compression is a lossy compression method for digital images, based on fractals. The method is best suited for textures and natural images, relying on the fact that parts of an image often resemble other parts of the same image.[citation needed] Fractal algorithms convert these parts into mathematical data called "fractal codes" which are used to recreate the encoded image.

Published in: Technology, Art & Photos
No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide
  • Here we used similar sized blocks. This reduces the efficiency. For better compression the size of blocks should be non uniform . Hence we use quad tree partitioning
  • The compression can be further improved by multiple division of child blocks(Quad partition), but increases the number of iterations And comparisons
  • Fractal Image Compression

    1. 1. FRACTAL IMAGE COMPRESSION<br />Guided By<br />Mrs. Sheena S<br />Presented by<br />NithinSinkaran<br />Roll No:57<br />
    2. 2. fractal image compression<br />Overview<br /><ul><li>Basics of Fractal image compression
    3. 3. Why Fractal Image Compression
    4. 4. Mathematical Background
    5. 5. How does it work?
    6. 6. Examples
    7. 7. Possible Improvements</li></li></ul><li>fractal image compression<br />Some Important facts<br /><ul><li> Fractals have infinite details at every point
    8. 8. Self similarity between object part and whole object
    9. 9. Fractals are generated by iteratively applying transformation function to a region of space(initiator).</li></ul>Fractal image compression is NOT the compression of fractals<br /><ul><li>It uses the properties of fractals for compressing images.</li></li></ul><li>fractal image compression<br />Basics<br /><ul><li>Proposed by M.Barnsley
    10. 10. Based on college theorem</li></ul>Let R²(Hausdorff space) be set of two real numbers, and L be an object <br /> Let w1,w2,w3… be some affine transforms which maps<br /> the entire image to its subsets<br />W(L) =U wi(L)<br />If distance h(L, U wi(L) )=ɛ<br />(a small value)<br />Then h(L,A)= ɛ/(1-c) where c is the contractility factor, A is the converging abstract set<br />Now L can be approximated to the abstractor A<br />
    11. 11. fractal image compression<br />Significance in image compression<br />Fern created using the fractal method(fig 1)<br />The highlighted portion of the fern is similar to the entire <br />Image. Application of different affine transformation on <br />That portion produces the entire fern(fig 2).<br />The fern is self similar<br />The fern creation requires only 28 numbers and can <br />Achieve a large amount of compression.<br />The success of the compression depends on the amount of<br />Self similarity found in that image.<br />
    12. 12. fractal image compression<br />Limitation of basic theory<br /><ul><li>All images are not self similar
    13. 13. The direct application of affine transforms to the whole set L(image)</li></ul> will not always maps to its subsets due to lack of self similarities.<br /><ul><li>Now the affine transforms are applied not to L, but to the part of L</li></ul> Or subset of L and tries to map them to self similar parts of the <br /> Same image<br /><ul><li>This method can be used for compressing any common image</li></li></ul><li>fractal image compression<br />Jacquin’s Compression Algorithm<br />Suppose that we are dealing with a 128 x 128 image in(called Range image).<br />We then reduce by averaging (down sampling and low pass-filtering) the original image to 64 x 64(Domain Image).<br />Partitioned both images into blocks 4x4 pixels.<br />
    14. 14. fractal image compression<br />3.performed the following affine transformation to each block<br />(Di,j)=α Di,j + t0<br /> where α - contrast scaling<br />t0-luminance shift ([−255,255 ]).<br />4.Compare each domain block with each range block<br />5.Find Min Σ(Ri,j )m,n-T(Di,j))m,n<br />6.The transformed domain blockwhich is found to be the best approximation<br /> for the current range block is assigned to that range block<br />7. The coordinates of the domain block along with value of α, t0 describing <br />the transformations. This is what is called the Fractal Code Book<br />
    15. 15. fractal image compression<br />Decoding<br />Apply the transformations defined in fractal code book iteratively to some initial image Winit, until the encoded image is retrieved back.<br />The transformation over the whole initial image can be described as follows<br />W1 = h(Winit)<br />W2 = h(W1)<br />W3 = h(W2)<br />..... = ......<br />Wn = h(Wn-1)<br />Wn will converge to a good approximation of original image after some iterations.<br />Greater the number of iterations greater will be the decoded similarity.<br />
    16. 16. fractal image compression<br />Quad-tree partition method<br /><ul><li> Take a starting image and divide it into small, non-overlapping, square blocks, typically called “parent blocks”.
    17. 17. Divide each parent block into 4 each blocks, or “child blocks.”
    18. 18. Compare each child block against a subset of all possible parent blocks.</li></ul>(Need to reduce the size of the parent to allow the comparison to work.)<br /><ul><li>Determine which larger block has the lowest difference, according to some measure, between it and the child block.
    19. 19. Calculate a grayscale transform to match intensity levels between large block and child block precisely. Typically an affine transform is used (w*x = a*x + b) to match grayscale levels.</li></li></ul><li>fractal image compression<br />Encoding<br /><ul><li> Upper left corner child block, very similar to upper right parent block.
    20. 20. Compute affine transform.
    21. 21. Store location of parent block and child block, affine transform components, etc .into a file(Fractal code book).
    22. 22. Repeat for each child block.
    23. 23. Lots of comparisons andcalculations.</li></ul>For 256x256 original image and 16x16 sized parent blocks<br />241*241 = 58,081 block comparisons.<br />
    24. 24. fractal image compression<br />Decoding<br /><ul><li> Use any blank starting image of same size as original image
    25. 25. For each child block apply stored transforms against specified</li></ul> transform block<br /><ul><li> Overwrite child block pixel values with transform block pixel </li></ul> values<br /><ul><li> Repeat until acceptable image quality is reached.</li></ul>Original image<br />Initial image<br />First Iteration<br />Second Iteration<br />Tenth Iteration<br />Fifth iteration<br />
    26. 26. fractal image compression<br />Compression of color images<br /><ul><li>Color images are often built of several stacked color channels, each of them </li></ul>representing value levels of the given channel.<br />For example, RGB images are composed of three independent channels for red, green and blue primary color components.<br />Here RGB image is separated <br />Into 3 color channels<br />Their gray scale equivalents<br />Are shown in the right side<br />The reverse transformation<br />Is also possible<br /><ul><li> These gray scale parts can be compressed separately</li></li></ul><li>fractal image compression<br />SPEED-UP TECHNIQUES<br /><ul><li>Boss, Fisher and Jacob's scheme
    27. 27. Each range and domain blocks are further divided in to 4 parts
    28. 28. Average intensities are calculated for each block
    29. 29. Based on the average intensities it falls into any one of the 3 major classes
    30. 30. Comparison is done with blocks belonging to similar class only.
    31. 31. Speed up factor:8
    32. 32. Nearest neighbour search scheme(D. Saupe and U. Freiburg)
    33. 33. fractal image compression is equivalent to the multidimensional nearest neighbour search.
    34. 34. optimal domain-range pairs is equivalent to solving nearest neighbour problems in a suitable Euclidean space
    35. 35. Multi-dimensional nearest neighbor searching operates in logarithmic time
    36. 36. Speed up factor:1.3 up to 11.5</li></li></ul><li>fractal image compression<br />Properties<br /><ul><li>A fractal compressed image is actually stored as domain blocks and their</li></ul>Transformations. Its now resolution independent.<br /><ul><li>Can be de compressed into any resolution needed without loosing much details.
    37. 37. Behaves almost like a fractal image
    38. 38. It can be zoomed at any magnitude without producing the jagged effect
    39. 39. ‘ .FIF ’(Fractal Image File) is a commonly used format for fractal compressed images.</li></li></ul><li>fractal image compression<br />Zoom Using Fractal Decoding<br />Original image zooming<br />2x<br />2x<br />4x<br />4x<br />
    40. 40. fractal image compression<br />EXAMPLES<br /> Image Details (JPEG) Original Size(KB) Compressed Size(KB)<br />Lena<br />256X256(24bit)<br />84.3 17.5<br />Brick<br />256X256(24bit)<br />66.2 9.91<br />45.9 5.91<br />Leaf<br />256X256(24bit)<br />
    41. 41. fractal image compression<br />Application<br />Image enlargements<br />Automated Semiconductor Defect Detection<br /><ul><li>semiconductor devices always follows a definite patter. Fractal coding can be used to identify any variation from the self similar part of the image(defects).</li></ul>3. Image enhancement <br /><ul><li>Images have a large amount of affine redundancy
    42. 42. Any damaged part can be mapped into some other parts of the same image</li></ul>4.Texture compression<br /><ul><li>Textures are self similar images.
    43. 43. High compression can be achieved. </li></li></ul><li>fractal image compression<br />Some soft wares<br />Fractal Imager<br /><ul><li>developed by iterated systems Inc
    44. 44. Used to create .FIF files from JPEG,PNG etc.. </li></ul>Fractal Imager showing 8:1<br /> zooming of a Leaf.<br />Original image(left),<br /> .FIF image (right)<br />
    45. 45. fractal image compression<br />2. Genuine Fractals<br /><ul><li> Developed by onOne software Inc.
    46. 46. Used as a plug-in to software like Adobe Photoshop, Adobe Light room
    47. 47. Images can be enlarged up to 1000 times its original size</li></ul>Genuine fractals in Adobe Photoshop CS5<br />
    48. 48. fractal image compression<br />QUESTIONS ?<br />
    49. 49. fractal image compression<br />THANK YOU!<br />