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.
| Feature | Details |
|---|---|
| Compression | Both modes: reversible (lossless) and irreversible (lossy) |
| Precision | 8-bit, and 10/12/16-bit files decoded at full 16-bit precision |
| Transparency | An alpha channel, read and written |
| Color profiles | Read and written, in the .jp2 container |
| Multi-resolution opening | A reduced-size load decodes straight from the codestream at 1/2, 1/4, 1/8 and so on |
| Containers | Read: .jp2, .jpf, .jpx and the raw .j2k / .j2c / .jpc codestreams |
| Export | .jp2, lossless or lossy, 8- or 16-bit, with alpha and a profile |
These are properties of JPEG 2000 itself. No program can do better with a .jp2 file.
| Limitation | Result |
|---|---|
| Layers | The format holds one flat image, so export writes the flattened picture |
| Speed | Wavelet coding is slower to read and write than the DCT formats, on any implementation |
These are choices and gaps on our side, not the format's.
| Limitation | Result |
|---|---|
| Export container | Always 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 |
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.