Image of link to MultiMedia Contents Image Map of Navigational Panel to Home / Contents / Search ColorBox Pro Version 3.0

by Robert Munoz - GUI Computing

Image of line

First, what is fractal compression? Simply, fractal compression is a method that creates a set of equations that define an image much like shorthand defines a document. Unlike JPEG (industry standard), higher rates of compression and accuracy are achieved since it does not consider 8x8 pixel blocks, but provides a systematic way of breaking up an image into separate smaller regions, and determining the best ‘affine’ map which is stored as a mathematical expression. The real advantage comes from the fact that a fractal image provides true image scalability, meaning it is possible to decompress an image to any specific resolution without pixelation. High-quality image of flower

Iterated Systems have released their third version of ColorBox Pro which uses fractal transform compression technology. This package contains a bag of goodies which encompass both hardware and software by using a dedicated fractal coprocessor board, software to suit both Windows and DOS users.

Version 3.0 of ColorBox Pro comes with several new features including greater reduction of FIF files via new archiving functions, an Omega correction parameter which increases precision in fractal codes for images, an easy to use Windows SDK compressor, and improved background compression allowing the user to perform other tasks while compressing.

The compressor can handle images from 64x64 to 1280x1024 pixels. Color compression rates can range from 10:1 up to 160:1 for standard modes, and from 40:1 up to a mammoth 600:1 for hi-resolution modes. With grayscale, rates can vary from 5:1 up to 80:1 and from 20:1 up to 300:1 respectively. It supports TGA, RAS, BMP and Windows DIB files.

Image - "Rose" 192.0 Kbytes
Compression Ratio Time FIF File Size Quality
10:118 Seconds19.6 KbytesExcellent
20:136 Seconds9.6 KbytesExcellent
50:148 Seconds4.4 KbytesOk
132:145 Seconds2.5 KbytesAverage

You can control the precision, the file size, quality, resolution and compression rate, both programatically and stand alone. Most VGA display modes are supported on 24-bit true color images.

I found the performance impressive regarding quality and speed as I decompressed images through different resolutions. The FIF files where displayed on average 20% faster than the original BMP and TGA images, with rich colors and detail.

Compression results do depend heavily on the image being processed. Certain images are inherently fractal for ideal images very high compression ratios can be achieved. During compression, I found the ability to insert a color table into the FIF file which reduced subsequent decompression times by as much as 50% very effective.

What I really liked was the Fractal Transform Template feature. You can use an FTT to improve the quality of fractal images that have similar features in common. For example, if you are compressing a series of maps, an FTT with a single map will enhance the quality of subsequent maps. On the other hand, it can be used as a key to unlock an image. You can also further compress an FIF, by archiving the file. This usually reduces the file by a further 10%, but will increase decompression time.

ColorBox Pro can be utilised effectively by Windows and DOS users and can be implemented by both VB and C programmers. Developers need only include the compression DLL, specify the file, and call the particular DLL command to compress.


Figure 1: This code decompresses a test file to full scale mode with 8 bit color mapping.

  If InitFIFDecompress() <> 0 Then Stop          ' Init Decompressor
  hCodefile = lopen("C:\TEST.FIF", 0)            ' Open file
  OutPutFormat = DIB_COLORMAPPED_8               ' Set the output to 8 bit
  OutPutRes.Image_Scale = FULL_SCALE       	 ' Set the Scale
                                                 ' Decompress
  er% = FIFFileToBuffer(ByVal hCodefile,ByVal -1, hBuffer, ByVal 0&, OutPutRes, ByVal OutPutFormat)
  hBitmap% = hBuffer
  ret = Lclose(hCodefile)		         ' Close FIF
  If (hBitmap% <> 0) Then                        ' Create a logical pallette for a colormapped dib
    er% = CreatePaletteForDIB(ByVal hBitmap%, hPal%)
  End If
  If CloseFIFDecompress() <> 0 Then Stop         ' Close compression

Developing a VB application that compressed Targa files was effortless. Example programs with source code are also included to get you started quickly. ColorBox Pro is a definite "must" to any developer\user who is considering compression of graphic intensive applications.


System Requirements

Available from Iterated Systems Pty Ltd.
5 Seaview Avenue, Ferny Creek, Victoria 3786. Phone: (03) 9755 1755 / Fax: (03) 9755 2432


Written by: Robert Munoz
June 94

Image of arrow linked to previous page Image of arrow linked to next page
Image of line
[HOME] [TABLE OF CONTENTS] [SEARCH]