A computer-readable memory storing a computer program for directing a computer system to perform image compression, wherein the computer program implements the steps for performing integer wavelet transformation of an input image having a finite number of bits per pixel, quantizing the wavelet transformed image, applying entropy coding to the quantized image, and outputting a file that includes the entropy coded image, wherein the integer wavelet transform used modular arithmetic and wavelet coefficients of the wavelet transformed image have no more finite number of bits than do any of the pixels of the input image.