JPEG 2000

JPEG 2000 was published in 2000 as a successor to JPEG, and shares nothing with it but the name. It is built on wavelets rather than the DCT, and it has a lossless mode as well as a lossy one. It never replaced JPEG on the web, but it is widely used in digital cinema, medical imaging and archives.

A JPEG 2000 file is multi-resolution by nature. A half- or quarter-size version is not a separate thumbnail but part of the same data, so opening a large file at a smaller size reads only the part it needs instead of decoding everything.

Files come two ways: the boxed .jp2 container, which can carry a color profile and an alpha channel, and a bare codestream (.j2k, .j2c, .jpc) which is the same pixels with the metadata stripped off.

No browser reads JPEG 2000, and many image programs do not either, so it is a poor choice for a file you intend to send someone. JPEG XL and WebP travel much further.

Capabilities

FeatureDetails
CompressionBoth modes: reversible (lossless) and irreversible (lossy)
Precision8-bit, and 10/12/16-bit files decoded at full 16-bit precision
TransparencyAn alpha channel, read and written
Color profilesRead and written, in the .jp2 container
Multi-resolution openingA reduced-size load decodes straight from the codestream at 1/2, 1/4, 1/8 and so on
ContainersRead: .jp2, .jpf, .jpx and the raw .j2k / .j2c / .jpc codestreams
Export.jp2, lossless or lossy, 8- or 16-bit, with alpha and a profile

Limitations

In the Format

These are properties of JPEG 2000 itself. No program can do better with a .jp2 file.

LimitationResult
LayersThe format holds one flat image, so export writes the flattened picture
SpeedWavelet coding is slower to read and write than the DCT formats, on any implementation

In Paintapp

These are choices and gaps on our side, not the format's.

LimitationResult
Export containerAlways the boxed .jp2. A bare .j2k codestream would be the same image with the profile and the alpha description thrown away, so there is nothing to gain by offering it

Saving JPEG 2000 Files

Lossless is on by default. It is a separate switch rather than a position on the quality slider because the reversible wavelet is a different compression path. A 16-bit picture round-trips through it bit for bit.

Turn Lossless off to use Quality. This number is not the same scale as JPEG's: JPEG 2000 targets a compression ratio rather than a quantizer, so quality 75 here does not mean what quality 75 means in a JPEG.

Transparency keeps the alpha channel, and ICC Profile embeds the document's color profile.

See Also