Skip to content

playing with dwt, lossy and lossless image compression

License

Notifications You must be signed in to change notification settings

Special-graphic-formats/dwt

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ORG.SGF: GitHub release (latest by date) GitHub Release Date GitHub repo size GitHub all releases GitHub

DWT

Playing with lossy and lossless image compression based on the discrete wavelet transformation

Quick start:

Encode smpte.ppm PNM picture file to encoded.dwt:

./dwtenc smpte.ppm encoded.dwt

Decode encoded.dwt file to decoded.ppm picture file:

./dwtdec encoded.dwt decoded.ppm

Watch decoded.ppm picture file in feh:

feh decoded.ppm

Limited storage capacity

Use up to 65536 bits of space instead of the default 0 (no limit) and discard quality bits, if necessary, to stay below 65536 bits:

./dwtenc smpte.ppm encoded.dwt 65536

Use different wavelet

Use the reversible integer Haar wavelet instead of the default 1 CDF 9/7 wavelet for lossless compression:

./dwtenc smpte.ppm encoded.dwt 0 2

Reading

  • Run-length encodings
    by Solomon W. Golomb - 1966
  • Image coding using wavelet transform
    by M. Antonini, M. Barlaud, P. Mathieu and I. Daubechies - 1992
  • Factoring wavelet transforms into lifting steps
    by Ingrid Daubechies and Wim Sweldens - 1996

Packages

No packages published

Languages

  • C 98.7%
  • Makefile 1.3%