
Is fractal image compression bullshit?
I was watching a documentary about "fractal image compression" and how this mathematician was federally granted over 2 million dollars to research this field. Well, the documentary was meant for the masses, and not to be scrutinized by a thinker. What really failed to surprise me was the guys explaination of how "fractal compression" works. Basically, to me, he was full of it. He "demonstrated" his algorithm by pixelating an image of a parrot and then what appeared to be interpolating between colors. The end result was something similar to what the default CLOD in Photoshop would give you, or what would remind you of how jaggies are antialiased. When his demo "fractalized" the pixelated image, there was no, I repeate, no added information. The sad thing was that my entire math class bought it. Please tell me if anything, what the f*** that guy is doing at that research center...I forgot his name. Also, no detail was given into how the f*** he supposedly created an orderly picture out of a defined pattern from a set he did not disclose. I wish to be persuaded to think otherwise, because seeing bullshit on that blatantly obvious of a scale, TO ME, was ignominious, disgusting, and sad

So, you''re making conclusions about fractal image compression, having seen nothing more than a documentary about it on TV? Don''t you know better than to believe everything you see on TV?
Get "Fractal Image Compression: Theory and Application" by Yuval Fisher. The mathematical concept at the heart of the method is the Contraction Mapping Theorem, which says that under certain conditions an iteration will converge regardless of starting point. So you create an iteration which will converge to your image and you can save the transformation and not the original image.
The compression rates go up to 80:1, and an infinite amount of detail *is* created. Since the transformations apply continuously on a plane, you can apply them to any size image and get pixel-level detail. There are fractal compression programs out there, download one and try it for yourself.
This might boggle your imagination, but mathematicians in general are not always very good at explaining things, especially to people who aren''t conversant with their jargon.
Tom
Get "Fractal Image Compression: Theory and Application" by Yuval Fisher. The mathematical concept at the heart of the method is the Contraction Mapping Theorem, which says that under certain conditions an iteration will converge regardless of starting point. So you create an iteration which will converge to your image and you can save the transformation and not the original image.
The compression rates go up to 80:1, and an infinite amount of detail *is* created. Since the transformations apply continuously on a plane, you can apply them to any size image and get pixel-level detail. There are fractal compression programs out there, download one and try it for yourself.
This might boggle your imagination, but mathematicians in general are not always very good at explaining things, especially to people who aren''t conversant with their jargon.
Tom
"E-mail is for geeks and pedophiles." -Cruel Intentions
Quick question. If you get get such great compression ratios, why aren''t these compression algorithms used for common image formats. Is the decompression to slow or is finding the transformation not garunteed?
Gamedev for learning.
libGDN for putting it all together.
An opensource, cross platform, cross API game development library.
Gamedev for learning.
libGDN for putting it all together.
An opensource, cross platform, cross API game development library.
VSEDebug Visual Studio.NET Add-In. Enhances debugging in ways never thought possible.
Found out the answer for myself. It's SLOW to compress, and the time required increases I believe Geometrically with size. Or maybe exponentially. A 128x128 image went from 48 to 10 kb in 5 secs, and a 1024x768 image is going to go from 2308 kb to probably a lot less than that in something like 714 mins (on Athlon XP 2000+)
Gamedev for learning.
libGDN for putting it all together.
An opensource, cross platform, cross API game development library.
[edited by - CpMan on May 20, 2003 10:55:26 PM]
Gamedev for learning.
libGDN for putting it all together.
An opensource, cross platform, cross API game development library.
[edited by - CpMan on May 20, 2003 10:55:26 PM]
VSEDebug Visual Studio.NET Add-In. Enhances debugging in ways never thought possible.
If you can use a C compiler then you might like to download enc/denc and see it work for yourself.
But it isn''t that much of a cost if compression is the only process intensive part of it. As long as it doesn''t take equally as long to decompress I would do all distribution with a fractal system.
To "leinad" :
At first i''m not a beginer. I made comertial image compression soft , and have done many researches for myself. I deal with it some 10 years.
With respect of Yuval, i can tell that fractal compression is some of mistifications.
It works , but it works BAD. All positive you will find about it is:
1. Loose compression with great 1 - 1000 ratios.
It is not true. It can compress only limited kind of images( clouds to example ) and reproduce some NOISE in a hi frequancy domain. The same we can get with a procedural textures.
2. The infinite image representation. It is not true.
It is a infinite NOISE representation.
//-------------
Some 1999 year work ( pure theoretical) show that all fractal compression transformations can be represented as a wavelet domain. You can find it in internet.
At first i''m not a beginer. I made comertial image compression soft , and have done many researches for myself. I deal with it some 10 years.
With respect of Yuval, i can tell that fractal compression is some of mistifications.
It works , but it works BAD. All positive you will find about it is:
1. Loose compression with great 1 - 1000 ratios.
It is not true. It can compress only limited kind of images( clouds to example ) and reproduce some NOISE in a hi frequancy domain. The same we can get with a procedural textures.
2. The infinite image representation. It is not true.
It is a infinite NOISE representation.
//-------------
Some 1999 year work ( pure theoretical) show that all fractal compression transformations can be represented as a wavelet domain. You can find it in internet.
karmicthreat:
decompressing fractals takes a trivial amount of time to decompress if you use the right algorithm; it''s linearly dependent on the detail in the original image and logarithmically dependant on the size of the resulting image.
minorlogic:
i don''t think most mathematicians will agree with your definition of ''NOISE''. whatever the high-frequency detail generated is, it''s definately NOT noise, nor is it at all random. the detail generated is scaled transformations of larger features in the image, which is very significant.
i do agree that most images will not get very good compression, (though I doubt anything you can compress with JPEG would be incompressable with fractal compression) HOWEVER the driving logic behind fractal image compression is that there are a lot of fractal-like structures in nature. If you have an image that is ''natural'', such as sand or rock or clouds, even cobblestones say, you get a nice self-similar fractal.
if you zoom in on the fractal clouds, they still look like clouds. nobody wants gigantic pixels floating in the sky, and players can tell when linear interpolation is being used. perlin noise always looks exactly like perlin noise, and as people around here probably know it takes a lot of tweaking to make nice clouds from noise. fractal image compression gives you a resolution-independent cloud texture for free. in game engines this is particularly important, and that is why i am interested in fractal image compression. i''m not advocating FIC for just anything, because anything with hard edges would get messed up. but for natural textures it''s invaluable, and then you get the compression as a bonus.
Tom
decompressing fractals takes a trivial amount of time to decompress if you use the right algorithm; it''s linearly dependent on the detail in the original image and logarithmically dependant on the size of the resulting image.
minorlogic:
i don''t think most mathematicians will agree with your definition of ''NOISE''. whatever the high-frequency detail generated is, it''s definately NOT noise, nor is it at all random. the detail generated is scaled transformations of larger features in the image, which is very significant.
i do agree that most images will not get very good compression, (though I doubt anything you can compress with JPEG would be incompressable with fractal compression) HOWEVER the driving logic behind fractal image compression is that there are a lot of fractal-like structures in nature. If you have an image that is ''natural'', such as sand or rock or clouds, even cobblestones say, you get a nice self-similar fractal.
if you zoom in on the fractal clouds, they still look like clouds. nobody wants gigantic pixels floating in the sky, and players can tell when linear interpolation is being used. perlin noise always looks exactly like perlin noise, and as people around here probably know it takes a lot of tweaking to make nice clouds from noise. fractal image compression gives you a resolution-independent cloud texture for free. in game engines this is particularly important, and that is why i am interested in fractal image compression. i''m not advocating FIC for just anything, because anything with hard edges would get messed up. but for natural textures it''s invaluable, and then you get the compression as a bonus.
Tom
"E-mail is for geeks and pedophiles." -Cruel Intentions
to ParadigmShift:
Thanks for a good replay.
"the detail generated is scaled transformations of larger features in the image, which is very significant."
For the given image it is noice , because don''t represent a information about image, it just replay some structured previous information. To get the same result , you can resize some jpeg compressed image, than find a corresponding parts of a image in a low freqancy domain and apply to hi freq. You will get the same visual quality. But it is not a compression. It is a visual adjustment to image for a better human perception. Keep it in mind !
....
Than i think you did not work much with a procedural textures. The much simpler methods than Yuval proposed, can be obtained. Just define some similarity texture function, and you can get incredible results. Have you tried to apply some predefined hi freq textures to a some high compressed images ? It look perfect ! Had you tried to apply jpeg organisation methods to improve visual quality to compressed images ?
And as i say, known "fractal" methods can be applied as strong math wavelet methods, without "magic words".
So to resume:
1.Compression quality of known fractal shemes not very good, comparable to others.
2.The visual udjustment of quality by fractal methods can be replaced with less complicated shemes.
(search the words "multiwavelet fractal" in google or "siteseer")
Thanks for a good replay.
"the detail generated is scaled transformations of larger features in the image, which is very significant."
For the given image it is noice , because don''t represent a information about image, it just replay some structured previous information. To get the same result , you can resize some jpeg compressed image, than find a corresponding parts of a image in a low freqancy domain and apply to hi freq. You will get the same visual quality. But it is not a compression. It is a visual adjustment to image for a better human perception. Keep it in mind !
....
Than i think you did not work much with a procedural textures. The much simpler methods than Yuval proposed, can be obtained. Just define some similarity texture function, and you can get incredible results. Have you tried to apply some predefined hi freq textures to a some high compressed images ? It look perfect ! Had you tried to apply jpeg organisation methods to improve visual quality to compressed images ?
And as i say, known "fractal" methods can be applied as strong math wavelet methods, without "magic words".
So to resume:
1.Compression quality of known fractal shemes not very good, comparable to others.
2.The visual udjustment of quality by fractal methods can be replaced with less complicated shemes.
(search the words "multiwavelet fractal" in google or "siteseer")
This topic is closed to new replies.
Advertisement
Popular Topics
Advertisement
Recommended Tutorials
Advertisement