Upload
sameer-thigale
View
126
Download
5
Tags:
Embed Size (px)
DESCRIPTION
This is a seminar presentation on the topic of "Fractal Image coding using CUDA Architecture". It is based on an IEEE paper. Feel free to contact me to know more about the subject. It is very useful for TE students studying in Pune University as seminar topic
Citation preview
1
Presentation on Seminar Topic
IMPROVEMENT OF FRACTAL IMAGE CODING USING
CUDA
By
SAMEER THIGALE
ROLL NO: T3171, DIV A
Guided ByPROF. HANUMANT PAWAR
MAEER’s MIT COLLEGE OF ENGINEERING, PUNE, INDIAApril 10, 2023
2
A BRIEF OUTLINE
• CURRENT SCENARIO: INCREASE IN IMAGE SIZE RANGE TO ORDER OF TBs
• NEED FOR AN EFFECTIVE IMAGE COMPRESSION ALGORITHM
• THE FRACTAL CODING• IDEA OF PARALLELIZING THE ALGORITHM• A PROMISING ARCHITECTURE: CUDA
A Fractal that models the surface of a mountain
3
AGENDA
• RECAP: FRACTALS• FRACTAL IMAGE CODING• THE PROBLEM STATEMENT• INTRODUCTION TO CUDA• PARALLEL FRACTAL IMAGE CODING• EXPERIMENTS AND ANALYSIS
4
FRACTALS
• Fractal is a structure made up of similar forms and patterns that occur in many different sizes
• The Mandelbrot “SELF SIMILARITY” Property
A fractal that begins with an equilateral triangle and then replaces the middle third of every line segment with a pair of
line segments that form an equilateral "bump"
5
FRACTAL IMAGE COMPRESSION• Relies on the fact that parts of an
image often resemble other parts of the same image
• Fractal compression stores only the self similar regions
• Algorithm:– Divide the image into blocks– Find the blocks that are almost similar– Store the similar blocks
Based on work by Jacquin
6
FRACTAL CODES
• Describe the entire image in terms of it’s fractal properties
• The mathematical equations can then be used to recreate the entire image
• Similar to vectors where mathematical descriptions of objects are stored
30 ⁰
Why store all the pixels of this line??Store only the angle and the length of vector
This is Fractal code.
7
AN EXAMPLE
• We store only the fractals that are similar• We store the fractal codes required for
generating the image
Bitmap image When stored using fractal coding algorithm:Fractal + code
For block [1][2], show fractal
For block [2][1], rotate fractal 90⁰ and display
For block [2][2], rotate fractal 180⁰ and display
+
8
KEY POINTS OF THE ALGORITHM
• Compression is lossy• Size of the physical data used to store fractal
codes is much smaller than the original bitmap• Fractal images can be scaled up/down without
loss in details• Suited in applications where decompression is
required frequently than compression• Ex. Image databases and CD-ROM applications
9
THE PROBLEM STATEMENT
• Encoding is extremely computationally intensive.
• Millions or billions of iterations are required to find the fractal patterns in the image
• Compression could take from a few seconds to even few hours!
10
THE SOLUTION
• Why do sequential pattern search? When it can be done in parallel
• Do data dependency while compressing• Employ massive parallel computation using
GPUs
Block wise thread grouping
11
Why GPU and NOT CPU?
• Lots of math units• GPUs are great for “data” parallelism
– CPUs are great for “task” parallelism• GPU optimized for higher arithmetic intensity
for parallel nature(floating Point)• APIs are available
– CUDA is one such!
12
CUDA(SUPERCOMPUTING FOR THE MASSES)
• CUDA is a set of developing tools to create applications that will perform execution on GPU (Graphics Processing Unit).
• CUDA was developed by NVidia and as such can only run on NVidia GPUs of G8x series and up.
13
WHY CUDA?
• CUDA provides ability to use high-level languages such as C
• GPUs contain much larger number of dedicated ALUs then CPUs.
• Full support for integer and bitwise operations.
• Compiled code will run directly on GPU.
14
PARALLEL FRACTAL IMAGE CODING
• The fractal image coding algorithm consists of three two fold loops which include no data dependency
• So very easy to parallelize• By distributing loop
elements on multiple cores
15
EXPERIMENTS AND OBSERVATIONS
NOTE: Charts prepared by the work of August Sodora on NVidia GeForce Tesla C1060 GPU
16
CONTINUED..
NOTE: Charts prepared by the work of August Sodora on NVidia GeForce Tesla C1060 GPU
17
CONCLUSION
• Our graphs show the performance gain for parallel fractal image coding.
• We achieve speedup of up to 171.98 using NVidia GeForce Tesla C1060 GPU
• Further Scope:– Parallel fractal coding can be applied to audio– Across Frequency Domain– Error simpler to compute using Fourier Analysis
18
THANK YOU!