/rcc

A lossy image compression codec using RTrees

Primary LanguageC

RCC (RTree Compression Codec)

Welcome to RCC, the terribly inefficient lossy image compression codec!

RCC converts images into heightmaps for each channel (red, green, blue, alpha), then compresses these heightmaps. Compression is achieved by grouping sets of nearby points into single rectangles, or RTrees. In this way, RCC preserves details like facial features and text even at high compression levels.

RCC In Action

Compression Level: 10

Compression Level: 20

Compression Level: 40

Compression Level: 2

Compression Level: 5

Compression Level: 50

Compression Level: 10

Compression Level: 20

Compression Level: 30

Installation

$ git clone git://github.com/aaasen/rcc.git
$ cd rcc
$ make all
$ ./rcc [input-file-name.bmp]

Usage

$ rcc [input-file-name.bmp]

-h
    show this documentation/help text
  
-m [compression level (int)]
    set the compression level (0 is lossless, higher values mean more compression, default is 5)
  
-o [filename]
    specify an output file name (default is "out")

Authors

  ______________________
 |  ____                | * * * * * * * * * * * * *
 | |    |               |   _         __      __  *
 | | ___|________       |  ||\\      / _|    / _| *
 | ||   |        |      |  || \\    / /     / /   *
 | ||___|  ___   |      |  || //   | |     | |    *
 |  |     |   |  |      |  ||/\\    \ \_    \ \_  *
 |  |     |___|  |      |  ||  \\    \__|    \__| *
 |  |____________|      |                         *
 |______________________| * * * * * * * * * * * * *