Fractal Image Compression

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.
Data Compression CS 147 Minh Nguyen.
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.
Flash Animation Using Linear Transformations By Kevin Hunter Kevin Hunter Marcus Yu Marcus Yu.
Math Modeling Final Project APPLICATIONS of FRACTALS Advisor: Professor Alber Fang Qi Pu Wan Xue Rui FRACTAL LANDSCAPES FRACTAL IMAGE COMPRESSION.
What is a Wavelet? Haar Wavelet A wavelet is a function that has finite energy and has an average of zero. Here are some examples of mother wavelets:
SWE 423: Multimedia Systems
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.
School of Computing Science Simon Fraser University
School of Computing Science Simon Fraser University
1 Preprocessing for JPEG Compression Elad Davidson & Lilach Schwartz Project Supervisor: Ari Shenhar SPRING 2000 TECHNION - ISRAEL INSTITUTE of TECHNOLOGY.
Sampling and Pyramids : Rendering and Image Processing Alexei Efros …with lots of slides from Steve Seitz.
Image Sampling Moire patterns
Video Compression Bee Fong. Lossy Compression  Inter Frame Compression Compression among frames Compression among frames  Intra Frame Compression Compression.
Course Website: Computer Graphics 11: 3D Object Representations – Octrees & Fractals.
Fundamentals of Multimedia Chapter 7 Lossless Compression Algorithms Ze-Nian Li and Mark S. Drew 건국대학교 인터넷미디어공학부 임 창 훈.
CMPT 365 Multimedia Systems
Multimedia Data The DCT and JPEG Image Compression Dr Mike Spann Electronic, Electrical and Computer.
Lecture #9 High Compression
Fractal Image Compression By Cabel Sholdt and Paul Zeman.
Trevor McCasland Arch Kelley.  Goal: reduce the size of stored files and data while retaining all necessary perceptual information  Used to create an.
ENG4BF3 Medical Image Processing
CS 376b Introduction to Computer Vision 02 / 26 / 2008 Instructor: Michael Eckmann.
Data Compression For Images. Data compression or source coding is the process of encoding information using fewer bits (or other information-bearing units)
Faculty of Sciences and Social Sciences HOPE Website Development Graphics Stewart Blakeway FML 213
COMP Bitmapped and Vector Graphics Pages Using Qwizdom.
1 Image Compression. 2 GIF: Graphics Interchange Format Basic mode Dynamic mode A LZW method.
: Chapter 12: Image Compression 1 Montri Karnjanadecha ac.th/~montri Image Processing.
Computer Graphics Texture Mapping
Multimedia Specification Design and Production 2012 / Semester 1 / L3 Lecturer: Dr. Nikos Gazepidis
Image Representation. Objectives  Bitmaps: resolution, colour depth and simple bitmap file calculations.  Vector graphics: drawing list – objects and.
Computer Graphics Bitmaps & Sprites CO2409 Computer Graphics Week 3.
Multimedia Data DCT Image Compression
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.
_______________________________________________________________________________________________________________ PHP Bible, 2 nd Edition1  Wiley and the.
Understanding JPEG MIT-CETI Xi’an ‘99 Lecture 10 Ben Walter, Lan Chen, Wei Hu.
CHAPTER 8 Color and Texture Mapping © 2008 Cengage Learning EMEA.
Marwan Al-Namari 1 Digital Representations. Bits and Bytes Devices can only be in one of two states 0 or 1, yes or no, on or off, … Bit: a unit of data.
The task of compression consists of two components, an encoding algorithm that takes a file and generates a “compressed” representation (hopefully with.
Image File Formats. What is an Image File Format? Image file formats are standard way of organizing and storing of image files. Image files are composed.
COMP135/COMP535 Digital Multimedia, 2nd edition Nigel Chapman & Jenny Chapman Chapter 2 Lecture 2 – Digital Representations.
JPEG.
Digital Graphics for Computer Games Pixels Types of Digital Graphics (Raster and Vector) Compression.
-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.
An Improved Approach For Image Matching Using Principle Component Analysis(PCA An Improved Approach For Image Matching Using Principle Component Analysis(PCA.
Visible-Surface Detection Methods. To identify those parts of a scene that are visible from a chosen viewing position. Surfaces which are obscured by.
IS502:M ULTIMEDIA D ESIGN FOR I NFORMATION S YSTEM M ULTIMEDIA OF D ATA C OMPRESSION Presenter Name: Mahmood A.Moneim Supervised By: Prof. Hesham A.Hefny.
BITMAPPED IMAGES & VECTOR DRAWN GRAPHICS
Chapter-4 Single-Photon emission computed tomography (SPECT)
JPEG Compression What is JPEG? Motivation
Computer Science Higher
Data Compression.
BTEC NCF Dip in Comp - Unit 02 Fundamentals of Computer Systems Lesson 10 - Text & Image Representation Mr C Johnston.
Fractal image compression
JPEG.
JPG vs GIF vs PNG What is the difference?
Image Pyramids and Applications
Chapter III, Desktop Imaging Systems and Issues: Lesson IV Working With Images
Data Representation.
Representing Images 2.6 – Data Representation.
Fractal Image Compression
APPLICATIONS of FRACTALS
Image Coding and Compression
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

Fractal Image Compression Is a lossy compression method developed in the late 80’s Is patented Compression ratios from 1:4 to 1:100 Compressing is slow. Decoding is fast. Decoding is resolution independent (Resolution enhancements Zoom) Best suited for images of natural scenes, such as mountains, trees, clouds etc. Compresses colour images better than grey scale images.

Fractals? It uses the same principles of iteration, and self similarity. The fractal in fractal compression is a (Partitioned) Iterated Function System IFS fractals are created by taking a simple object and  applying a series of transformations through a number of iterations

Iterated Function System A set of linear functions (transformations) when applied to a starting point will generate a new point. x1 = ax + by + e y1 = cx + dy + f When the transformations are repeated on the new points iteratively an image is generated. Can produce complex images. Instead of finding transformations that describe the whole picture, find transformations that only apply to portions of a picture Partitioned Iterated Function Systems.

Fractals in the real-world If you look at the texture of the floor of the room you are currently in, you will notice that there are many repeating patterns. If you take a copy of a small part of the floor, you will find that there are many areas that are nearly identical to that copy. And if you rotate it, scale it, mirror it, you will find that you can get even more areas to match. If you now store the positions of the copy and the matching area of the floor, including the rotations etc you just made, you can create a mathematical representation of that part of the floor. You can do this until you have described the entire floor. This is what fractal compression does.

Fractal Compression The idea is to look for parts in a picture that resembles other parts in the same picture. The picture is divided into range blocks (small) and domain blocks (big). Uses a domain block to describe a range block. For each range block, search for the domain block that most closely resembles the range block. Transformations such as scaling, translation, rotating, sharing, scaling etc and adjustment of brightness/contrast are used on the domain block in order to get the best match.

Compression Mapping of range blocks (R) and domain blocks (D) and their transformations (T)

Compression The searching that is done when trying to find the most suited domain block for each range block takes a lot of time. Have to check many transformations per domain block. Hard to automate properly, and one gets higher compression ratios with human intervention. A human finds the best domain block. Can take from 5 seconds up to 5 hours (or more) to compress an image. What is stored in the compressed file: The translation done on the domain blocks to match the position of their associated range blocks The transformations done on the domain blocks. The colour, brightness, contrast adjustments. This information is called fractal codes. No pixels are stored at all, only mathematical functions.

Range blocks and domain blocks Typical pixel sizes of the range and domain blocks: The domain blocks are double the size of the range blocks. • Smaller size of the blocks means a larger compressed file, because of more fractal codes.

How does it work?-Encoding 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.” 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. 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. Draw Pictures on a board here.

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

Decompression Decompression is done by applying the transformations and translations described in the fractal codes on an arbitrary image (usually just a grey background) iteratively until an image is produced that looks approximately like the original. Easy to automate. Is fast. Number of iterations varies from 4 to 12+ Decoding is resolution independent: If a 64x64 image was compressed, it can be decompressed to any size (e.g. 128x128) without as much loss in quality as for a normal zoom.

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

Decompression The transformations and mappings are applied on the initial image iteratively until the image is restored.

Resolution independent decompression (Zoom) Note that the zoomed fractal image seem to contain more detail than the zoomed JPEG. But the detail has been generated, so zooming in on a person’s face will not show pores.

JPEG vs. Fractal Compression JPEG is better at low compression ratios, and Fractal Compression is better at high. Crossover point at 40:1 The fractal compressed images have a much more natural looking noise than JPEG. Same decompression time as JPEG, sometimes faster. Fractal compression much slower compression time than JPEG.