Fractal Image Compression By Cabel Sholdt and Paul Zeman.

Slides:



Advertisements
Similar presentations
GPU-accelerated fractal imaging Jeremy Ehrhardt CS 81 - Spring 2009.
Advertisements

CSCE 643 Computer Vision: Template Matching, Image Pyramids and Denoising Jinxiang Chai.
QR Code Recognition Based On Image Processing
Wavelets Fast Multiresolution Image Querying Jacobs et.al. SIGGRAPH95.
Image Compression. Data and information Data is not the same thing as information. Data is the means with which information is expressed. The amount of.
Texture Synthesis on [Arbitrary Manifold] Surfaces Presented by: Sam Z. Glassenberg* * Several slides borrowed from Wei/Levoy presentation.
BRISK (Presented by Josh Gleason)
Math Modeling Final Project APPLICATIONS of FRACTALS Advisor: Professor Alber Fang Qi Pu Wan Xue Rui FRACTAL LANDSCAPES FRACTAL IMAGE COMPRESSION.
More MR Fingerprinting
Image Indexing and Retrieval using Moment Invariants Imran Ahmad School of Computer Science University of Windsor – Canada.
Rectangle Image Compression Jiří Komzák Department of Computer Science and Engineering, Czech Technical University (CTU)
SWE 423: Multimedia Systems
Virtual Dart: An Augmented Reality Game on Mobile Device Supervisor: Professor Michael R. Lyu Prepared by: Lai Chung Sum Siu Ho Tung.
A Review of Iterated Function System Theory for Image Compression A presentation based on a publication by the same name by: Waite,J British Telecom Res.
Mosaics con’t CSE 455, Winter 2010 February 10, 2010.
Multiple-key indexes Index on one attribute provides pointer to an index on the other. If V is a value of the first attribute, then the index we reach.
Faster Fractal Image Compression Using Quadtree Recomposition Mahmoud, W.H. ; Jackson, D.J. ; A. Stapleton ; P. T. Gaughan Image and Vision Computing,
Motion Analysis (contd.) Slides are from RPI Registration Class.
Connecting with Computer Science, 2e
Fractal Image Compression
Course Website: Computer Graphics 11: 3D Object Representations – Octrees & Fractals.
Robust Real-Time Object Detection Paul Viola & Michael Jones.
T.Sharon-A.Frank 1 Multimedia Image Compression 2 T.Sharon-A.Frank Coding Techniques – Hybrid.
Digital Image Processing Final Project Compression Using DFT, DCT, Hadamard and SVD Transforms Zvi Devir and Assaf Eden.
5. 1 JPEG “ JPEG ” is Joint Photographic Experts Group. compresses pictures which don't have sharp changes e.g. landscape pictures. May lose some of the.
Connecting with Computer Science 2 Objectives Learn why numbering systems are important to understand Refresh your knowledge of powers of numbers Learn.
CS559-Computer Graphics Copyright Stephen Chenney Image File Formats How big is the image? –All files in some way store width and height How is the image.
Fractal Composition of Meaning: Toward a Collage Theorem for Language Simon D. Levy Department of Computer Science Washington and Lee University Lexington,
Navigating and Browsing 3D Models in 3DLIB Hesham Anan, Kurt Maly, Mohammad Zubair Computer Science Dept. Old Dominion University, Norfolk, VA, (anan,
Orthogonal moments Motivation for using OG moments Stable calculation by recurrent relations Easier and stable image reconstruction - set of orthogonal.
CMU SCS : Multimedia Databases and Data Mining Lecture #26: Compression - JPEG, MPEG, fractal C. Faloutsos.
1 Image Compression. 2 GIF: Graphics Interchange Format Basic mode Dynamic mode A LZW method.
CIS750 – Seminar in Advanced Topics in Computer Science Advanced topics in databases – Multimedia Databases V. Megalooikonomou Compression: JPEG, MPEG,
CS 395 T Real-Time Graphics Architectures, Algorithms, and Programming Systems Spring’03 Vector Quantization for Texture Compression Qiu Wu Dept. of ECE.
: Chapter 12: Image Compression 1 Montri Karnjanadecha ac.th/~montri Image Processing.
D ATA C OMMUNICATIONS Compression Techniques. D ATA C OMPRESSION Whether data, fax, video, audio, etc., compression can work wonders Compression can be.
Wavelet-based Coding And its application in JPEG2000 Monia Ghobadi CSC561 final project
Motion Segmentation By Hadas Shahar (and John Y.A.Wang, and Edward H. Adelson, and Wikipedia and YouTube) 1.
Digital Image Processing Image Compression
Image Compression Fasih ur Rehman. Goal of Compression Reduce the amount of data required to represent a given quantity of information Reduce relative.
Huffman Code and Data Decomposition Pranav Shah CS157B.
3d Pose Detection Used by Kinect
The task of compression consists of two components, an encoding algorithm that takes a file and generates a “compressed” representation (hopefully with.
Learning to Detect Faces A Large-Scale Application of Machine Learning (This material is not in the text: for further information see the paper by P.
A Fast LBG Codebook Training Algorithm for Vector Quantization Presented by 蔡進義.
JPEG.
-BY DARSHAN ALAGUD UNDER GUIDANCE OF K.R.RAO. FALL 09, ELECTRICAL ENGINEERING DEPARTMENT, UNIVERSITY OF TEXAS AT ARLINGTON A Study on Fractal Image Compression.
3-D WAVELET BASED VIDEO CODER By Nazia Assad Vyshali S.Kumar Supervisor Dr. Rajeev Srivastava.
Chapter 7 Lossless Compression Algorithms 7.1 Introduction 7.2 Basics of Information Theory 7.3 Run-Length Coding 7.4 Variable-Length Coding (VLC) 7.5.
EE591f Digital Video Processing
THE MAPLE LEAF FRACTAL Christina VoEPS 109 Fall 2013.
Multidimensional Access Structures COMP3017 Advanced Databases Dr Nicholas Gibbins –
Chapter-4 Single-Photon emission computed tomography (SPECT)
JPEG Compression What is JPEG? Motivation
Multidimensional Access Structures
Fractal image compression
Representing Moving Images with Layers
Progressive Transmission and Rendering of Foveated Volume Data
Representing Moving Images with Layers
Fractal Image Compression
APPLICATIONS of FRACTALS
Image Compression Purposes Requirements Types
Image Coding and Compression
第 四 章 VQ 加速運算與編碼表壓縮 4-.
DCT based simple classification scheme for fractal image compression
Non-numeric Data Representation
A Fast No Search Fractal Image Coding Method
5. Fractal Compression Fractal compression is a lossy compression method used to compress images using fractals. The method is best suited for photographs.
Presentation transcript:

Fractal Image Compression By Cabel Sholdt and Paul Zeman

Overview Why Fractal Image Compression Why Fractal Image Compression Mathematical Background Mathematical Background How does it work? How does it work? Examples Examples Possible Improvements Possible Improvements

Why Fractal Image Compression Different type of compression scheme worth exploring Different type of compression scheme worth exploring Takes advantage of similarities within an image Takes advantage of similarities within an image Advanced detail interpolation Advanced detail interpolation High theoretical compression rates High theoretical compression rates Fast decompression times Fast decompression times

Mathematical Background Started with Michael Barnsley, and refined by A. Jacquin Started with Michael Barnsley, and refined by A. Jacquin Try and find a set of transforms that map an image onto itself. Try and find a set of transforms that map an image onto itself. The key is the Collage Theorem The key is the Collage Theorem States that if the error difference between the target image and the transformation of that image is less than a certain value the transforms are an equivalent representation of the image. States that if the error difference between the target image and the transformation of that image is less than a certain value the transforms are an equivalent representation of the image.

How does it work?-Encoding Take a starting image and divide it into small, non- overlapping, square blocks, typically called “parent blocks”. Take a starting image and divide it into small, non- overlapping, square blocks, typically called “parent blocks”. Divide each parent block into 4 each blocks, or “child blocks.” Divide each parent block into 4 each blocks, or “child blocks.” Compare each child block against a subset of all possible overlapping blocks of parent block size. Compare each child block against a subset of all possible overlapping blocks of parent block size. Need to reduce the size of the parent to allow the comparison to work. Need to reduce the size of the parent to allow the comparison to work. Determine which larger block has the lowest difference, according to some measure, between it and the child block. Determine which larger block has the lowest difference, according to some measure, between it and the child block. 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. 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.

How does it work? – Encoding Upper left corner child block, very similar to upper right parent block. Upper left corner child block, very similar to upper right parent block. Compute affine transform. Compute affine transform. Store location of parent block (or transform block), affine transform components, and related child block into a file. Store location of parent block (or transform block), affine transform components, and related child block into a file. Repeat for each child block. Repeat for each child block. Lots of comparisons can calculations. Lots of comparisons can calculations. 256x256 original image 256x256 original image 16x16 sized parent blocks 16x16 sized parent blocks 241*241 = 58,081 block comparisons 241*241 = 58,081 block comparisons

How does it work?- Decoding Read in child block and tranform block position, transform, and size information. Read in child block and tranform block position, transform, and size information. Use any blank starting image of same size as original image Use any blank starting image of same size as original image For each child block apply stored transforms against specified transform block For each child block apply stored transforms against specified transform block Overwrite child block pixel values with transform block pixel values Overwrite child block pixel values with transform block pixel values Repeat until acceptable image quality is reached. Repeat until acceptable image quality is reached.

Examples Original Image Original Image Starting Image for Decoding Starting Image for Decoding

How does it Work? – Decoding First Iteration First Iteration Second Iteration Second Iteration

How does it work? - Decoding Fifth Iteration Fifth Iteration Tenth Iteration Tenth Iteration

Possible Improvments Greatest weakness is time for encoding Greatest weakness is time for encoding Possible speed ups Possible speed ups Order transform blocks into domains based off of average intensity and variance Order transform blocks into domains based off of average intensity and variance Only search through blocks with similar structures Only search through blocks with similar structures Do not search all possible blocks Do not search all possible blocks Reduce number of child blocks Reduce number of child blocks Quality and Compression Improvements through Quality and Compression Improvements through Quadtrees or HV Trees Quadtrees or HV Trees Rotations of Transform Blocks during comparison Rotations of Transform Blocks during comparison Improved grayscale transforms Improved grayscale transforms

Questions?