This articlemay incorporate text from alarge language model. It may includehallucinated information,copyright violations, claims notverified in cited sources,original research, orfictitious references. Any such material should beremoved, and content with anunencyclopedic tone should be rewritten.(October 2025) (Learn how and when to remove this message) |
| JPEG 2000 | |
|---|---|
Comparison of JPEG 2000 with the original JPEG format | |
| Filename extension | .jp2,.j2k,.jpf,.jpm,.jpg2,.j2c,.jpc,.jpx,.mj2 |
| Internet media type | image/jp2,image/jpx,image/jpm,video/mj2 |
| Uniform Type Identifier (UTI) | public.jpeg-2000 |
| Magic number | 00 00 00 0C 6A 50 20 20 0D 0A 87 0A /FF 4F FF 51 |
| Developed by | Joint Photographic Experts Group |
| Type of format | Graphics file format |
| Extended from | JPEG |
| Standard | ISO/IEC 15444 |
| Open format? | Yes |
| Free format? | See§ Legal status |
| Website | jpeg |
JPEG 2000 (JP2) is animage compression standard and coding system. It was developed from 1997 to 2000 by aJoint Photographic Experts Group committee chaired by Touradj Ebrahimi (later the JPEG president),[1] with the intention of superseding their originalJPEG standard (created in 1992), which is based on adiscrete cosine transform (DCT), with a newly designed,wavelet-based method. The standardizedfilename extension is '.jp2' forISO/IEC 15444-1 conforming files and.jpx or.jpf for the extended part-2 specifications, published as ISO/IEC 15444-2. TheMIME types for JPEG 2000 are defined in RFC 3745.[2] The MIME type for JPEG 2000 (ISO/IEC 15444-1) isimage/jp2.
The JPEG 2000 project was motivated byRicoh's submission in 1995 of the CREW (Compression withReversibleEmbeddedWavelets) algorithm[3][4] to the standardization effort ofJPEG LS. Ultimately theLOCO-I algorithm was selected as the basis forJPEG LS, but many of the features of CREW ended up in the JPEG 2000 standard.[5]
JPEG 2000 codestreams areregions of interest that offer several mechanisms to support spatial random access or region of interest access at varying degrees of granularity. It is possible to store different parts of the same picture using different quality.
JPEG 2000 is a compression standard based on adiscrete wavelet transform (DWT). The standard could be adapted for motion imagingvideo compression with theMotion JPEG 2000 extension. JPEG 2000 technology was selected as thevideo coding standard fordigital cinema in 2004.[6] However, JPEG 2000 is generally not supported inweb browsers forweb pages as of 2024,[update] and hence is not generally used on theWorld Wide Web. Nevertheless, for those withPDF support, web browsers generally support JPEG 2000 in PDFs.
Unlike the legacy.jpg format, which offers basic image compression without support for embedded metadata or access control, JPEG 2000 introduces advanced container options such as.jp2 and.jpf. Of these, the.jpf extension offers a significantly more powerful and extensible framework. It supports high-fidelitywavelet compression, layered and tiled image structures,region-of-interest encoding, and remote streaming via theJPEG 2000 Interactive Protocol (JPIP). Crucially, the.jpf format enables the embedding of machine-readable consent flags, secure face hashes, and cryptographic signatures—allowing for time-limited, revocable access to visual data. These capabilities have positioned JPF as a leading candidate for privacy-respecting media exchange in an era ofdeepfakes and unauthorizedAI model training.[7]
While there is a modest increase in compression performance of JPEG 2000 compared to JPEG, the main advantage offered by JPEG 2000 is the significant flexibility of the codestream. The codestream obtained after compression of an image with JPEG 2000 is scalable in nature, meaning that it can be decoded in a number of ways; for instance, by truncating the codestream at any point, one may obtain a representation of the image at a lower resolution, orsignal-to-noise ratio – seescalable compression. By ordering the codestream in various ways, applications can achieve significant performance increases. However, as a consequence of this flexibility, JPEG 2000 requirescodecs that are complex and computationally demanding. Another difference, in comparison with JPEG, is in terms of visualartifacts: JPEG 2000 only producesringing artifacts, manifested as blur and rings near edges in the image, while JPEG produces both ringing artifacts and 'blocking' artifacts, due to its8×8 blocks.
JPEG 2000 has been published as anISO standard, ISO/IEC 15444. The cost of obtaining all documents for the standard has been estimated at 2,718 CHF (US$2,720 as of 2015).[8]
Notable markets and applications intended to be served by the standard include:

JPEG 2000 decomposes the image into a multiple resolution representation in the course of its compression process. Thispyramid representation can be put to use for other image presentation purposes beyond compression.
These features are more commonly known asprogressive decoding andsignal-to-noise ratio (SNR) scalability. JPEG 2000 provides efficient codestream organizations which are progressive by pixel accuracy and by image resolution (or by image size). This allows the viewer to see a lower quality version of the final picture before the whole file has been downloaded. The quality improves progressively as more data is downloaded from the source.
Like theLossless JPEG standard,[10] the JPEG 2000 standard provides bothlossless andlossy compression in a single compression architecture. Lossless compression is provided by the use of a reversible integer wavelet transform in JPEG 2000.
Like JPEG 1992, JPEG 2000 is robust to bit errors introduced by noisy communication channels, due to the coding of data in relatively small independent blocks.
The JP2 and JPX file formats allow for handling of color-space information, metadata, and for interactivity in networked applications as developed in the JPEG Part 9 JPIP protocol.
JPEG 2000 supports bit depths of 1 to 38 bits per component. Supported color spaces include monochrome, 3 types of YCbCr, sRGB,PhotoYCC, CMY(K), YCCK and CIELab. It also later added support for CIEJab (CIECAM02), e-sRGB, ROMM, YPbPr and others.[11]
Full support for transparency and alpha planes.[12][13]
The JPEG 2000 image coding system (ISO/IEC 15444) consists of the following parts:
| Part | Number | public release date | Latest amend- ment | Identical ITU-T standard | Title | Description | |
|---|---|---|---|---|---|---|---|
| First edition | Current edition | ||||||
| Part 1 | ISO/IEC 15444-1 | 2000 | 2024 | T.800 | Core coding system | the basic characteristics of JPEG 2000 compression (.jp2) | |
| Part 2 | ISO/IEC 15444-2 | 2004 | 2023[16] | T.801 | Extensions | (.jpx,.jpf,floating points) | |
| Part 3 | ISO/IEC 15444-3 | 2002 | 2007 | 2010[17] | T.802 | Motion JPEG 2000 | (.mj2) |
| Part 4 | ISO/IEC 15444-4 | 2002 | 2024 | T.803 | Conformance testing | ||
| Part 5 | ISO/IEC 15444-5 | 2003 | 2021[18] | T.804 | Reference software | Java and C implementations | |
| Part 6 | ISO/IEC 15444-6 | 2003 | 2013 | T.805 | Compound image file format | (.jpm) e.g. document imaging, for pre-press and fax-like applications | |
| Part 7 | abandoned[14] | Guideline of minimum support function of ISO/IEC 15444-1[19] | (Technical Report on Minimum Support Functions[20]) | ||||
| Part 8 | ISO/IEC 15444-8 | 2007 | 2023[21] | T.807 | Secure JPEG 2000 | JPSEC (security aspects) | |
| Part 9 | ISO/IEC 15444-9 | 2005 | 2023[22] | T.808 | Interactivity tools, APIs and protocols | JPIP (interactive protocols and API) | |
| Part 10 | ISO/IEC 15444-10 | 2008 | 2011[23] | T.809 | Extensions for three-dimensional data | JP3D (volumetric imaging) | |
| Part 11 | ISO/IEC 15444-11 | 2007 | 2007 | 2013[24] | T.810 | Wireless | JPWL (wireless applications) |
| Part 12 | ISO/IEC 15444-12 (withdrawn in 2017) | 2004 | 2015[25] | ISO base media file format | |||
| Part 13 | ISO/IEC 15444-13 | 2008 | 2008[26] | T.812 | An entry-level JPEG 2000 encoder | ||
| Part 14 | ISO/IEC 15444-14 | 2013[27] | T.813 | XML representation and reference | JPXML[28] | ||
| Part 15 | ISO/IEC 15444-15 | 2019 | 2019 | T.814 | High-throughput JPEG 2000 | HTJ2K and JPH file format | |
| Part 16 | ISO/IEC 15444-16 | 2019 | 2025 | T.815 | Enhanced encapsulation of JPEG 2000 images into ISO/IEC 14496-12 | HEIF | |
The aim of JPEG 2000 is not only improving compression performance over JPEG but also adding (or improving) features such as scalability and editability. JPEG 2000's improvement in compression performance relative to the original JPEG standard is actually rather modest and should not ordinarily be the primary consideration for evaluating the design. Very low and very high compression rates are supported in JPEG 2000. The ability of the design to handle a very large range of effective bit rates is one of the strengths of JPEG 2000. For example, to reduce the number of bits for a picture below a certain amount, the advisable thing to do with the first JPEG standard is to reduce the resolution of the input image before encoding it. That is unnecessary when using JPEG 2000, because JPEG 2000 already does this automatically through its multi-resolution decomposition structure. The following sections describe the algorithm of JPEG 2000.
According to theRoyal Library of the Netherlands, "the current JP2 format specification leaves room for multiple interpretations when it comes to the support of ICC profiles, and the handling of grid resolution information".[29]
Initially images have to be transformed from the RGBcolor space to another color space, leading to threecomponents that are handled separately. There are two possible choices:
If R, G, and B are normalized to the same precision, then numeric precision of CB and CR is one bit greater than the precision of the original components. This increase in precision is necessary to ensure reversibility. Thechrominance components can be, but do not necessarily have to be, downscaled in resolution; in fact, since the wavelet transformation already separates images into scales, downsampling is more effectively handled by dropping the finest wavelet scale. This step is calledmultiple component transformation in the JPEG 2000 language since its usage is not restricted to theRGB color model.[30]
After color transformation, the image is split into so-calledtiles, rectangular regions of the image that are transformed and encoded separately. Tiles can be any size, and it is also possible to consider the whole image as one single tile. Once the size is chosen, all the tiles will have the same size (except optionally those on the right and bottom borders). Dividing the image into tiles is advantageous in that the decoder will need less memory to decode the image and it can opt to decode only selected tiles to achieve a partial decoding of the image. The disadvantage of this approach is that the quality of the picture decreases due to a lowerpeak signal-to-noise ratio. Using many tiles can create a blocking effect similar to the olderJPEG 1992 standard.


These tiles are thenwavelet-transformed to an arbitrary depth, in contrast to JPEG 1992 which uses an 8×8 block-sizediscrete cosine transform. JPEG 2000 uses two differentwavelet transforms:
The wavelet transforms are implemented by thelifting scheme or byconvolution.
After the wavelet transform, the coefficients are scalar-quantized to reduce the number of bits to represent them, at the expense of quality. The output is a set of integer numbers which have to be encoded bit-by-bit. The parameter that can be changed to set the final quality is the quantization step: the greater the step, the greater is the compression and the loss of quality. With a quantization step that equals 1, no quantization is performed (it is used in lossless compression).
The result of the previous process is a collection ofsub-bands which represent several approximation scales. A sub-band is a set ofcoefficients—real numbers which represent aspects of the image associated with a certain frequency range as well as a spatial area of the image.
The quantized sub-bands are split further intoprecincts, rectangular regions in the wavelet domain. They are typically sized so that they provide an efficient way to access only part of the (reconstructed) image, though this is not a requirement.
Precincts are split further intocode blocks. Code blocks are in a single sub-band and have equal sizes—except those located at the edges of the image. The encoder has to encode the bits of all quantized coefficients of a code block, starting with the most significant bits and progressing to less significant bits by a process called theEBCOT scheme.EBCOT here stands forEmbedded Block Coding with Optimal Truncation. In this encoding process, eachbit plane of the code block gets encoded in three so-calledcoding passes, first encoding bits (and signs) of insignificant coefficients with significant neighbors (i.e., with 1-bits in higher bit planes), then refinement bits of significant coefficients and finally coefficients without significant neighbors. The three passes are calledSignificance Propagation,Magnitude Refinement andCleanup pass, respectively.
In lossless mode all bit planes have to be encoded by the EBCOT, and no bit planes can be dropped.
The bits selected by these coding passes then get encoded by a context-driven binaryarithmetic coder, namely the binary MQ-coder (as also employed byJBIG2). The context of a coefficient is formed by the state of its eight neighbors in the code block.
The result is a bit-stream that is split intopackets where apacket groups selected passes of all code blocks from a precinct into one indivisible unit. Packets are the key to quality scalability (i.e., packets containing less significant bits can be discarded to achieve lower bit rates and higher distortion).
Packets from all sub-bands are then collected in so-calledlayers.The way the packets are built up from the code-block coding passes, and thus which packets a layer will contain, is not defined by the JPEG 2000 standard, but in general a codec will try to build layers in such a way that the image quality will increase monotonically with each layer, and the image distortion will shrink from layer to layer. Thus, layers define the progression by image quality within the codestream.
The problem is now to find the optimal packet length for all code blocks which minimizes the overall distortion in a way that the generated target bitrate equals the demanded bit rate.
While the standard does not define a procedure as to how to perform this form ofrate–distortion optimization, the general outline is given in one of its many appendices: For each bit encoded by the EBCOT coder, the improvement in image quality, defined as mean square error, gets measured; this can be implemented by an easy table-lookup algorithm. Furthermore, the length of the resulting codestream gets measured. This forms for each code block a graph in the rate–distortion plane, giving image quality over bitstream length. The optimal selection for the truncation points, thus for the packet-build-up points is then given by defining criticalslopes of these curves, and picking all those coding passes whose curve in the rate–distortion graph is steeper than the given critical slope. This method can be seen as a special application of the method ofLagrange multiplier which is used for optimization problems under constraints. TheLagrange multiplier, typically denoted by λ, turns out to be the critical slope, the constraint is the demanded target bitrate, and the value to optimize is the overall distortion.
Packets can be reordered almost arbitrarily in the JPEG 2000 bit-stream; this gives the encoder as well as image servers a high degree of freedom.
Already encoded images can be sent over networks with arbitrary bit rates by using a layer-progressive encoding order. On the other hand, color components can be moved back in the bit-stream; lower resolutions (corresponding to low-frequency sub-bands) could be sent first for image previewing. Finally, spatial browsing of large images is possible through appropriate tile or partition selection. All these operations do not require any re-encoding but only byte-wise copy operations.[citation needed]


Compared to the previous JPEG standard, JPEG 2000 delivers a typical compression gain in the range of 20%, depending on the image characteristics. Higher-resolution images tend to benefit more, where JPEG 2000's spatial-redundancy prediction can contribute more to the compression process. In very low-bitrate applications, studies have shown JPEG 2000 to be outperformed[35] by the intra-frame coding mode of H.264.
JPEG 2000 is much more complicated in terms of computational complexity in comparison with JPEG standard. Tiling, color component transform, discrete wavelet transform, and quantization could be done pretty fast, though entropy codec is time-consuming and quite complicated. EBCOT context modelling and arithmetic MQ-coder take most of the time of JPEG 2000 codec.
On CPU the main idea of getting fast JPEG 2000 encoding and decoding is closely connected with AVX/SSE and multithreading to process each tile in a separate thread. The fastest JPEG 2000 solutions utilize both CPU and GPU power to get high performance benchmarks.[36][37]
Similar to JPEG-1, JPEG 2000 defines both a file format and a codestream. Whereas JPEG 2000 entirely describes the image samples, JPEG-1 includes additional meta-information such as the resolution of the image or the color space that has been used to encode the image. JPEG 2000 images should—if stored as files—be boxed in the JPEG 2000 file format, where they get the.jp2 extension. The part-2 extension to JPEG 2000 (ISO/IEC 15444-2) enriches the file format by including mechanisms for animation or composition of several codestreams into one single image. This extended file format is called JPX, and should use the file extension.jpf,[38] although.jpx is also used.[39]
There is no standardized extension for codestream data because codestream data is not to be considered to be stored in files in the first place, though when done for testing purposes, the extension.jpc,.j2k or.j2c is commonly used.
The.jpf file extension is an alternative container format forJPEG 2000 images, supporting the extended feature set defined in Part 2 of theISO/IEC 15444 standard. While functionally similar to.jp2, the.jpf format is commonly used in applications requiringwavelet compression, layered image structures, embedded metadata, and support for theJPEG 2000 Interactive Protocol (JPIP). It is often found in domains such asgeospatial imaging,digital cinema, andforensic science.
The.jpf format supports revocable image access through a combination of metadata and network streaming mechanisms. These features enable greater control over how images are accessed and used, particularly in the context ofartificial intelligence and identity protection. Capabilities include:
These mechanisms allow.jpf images to function as consent-aware media containers, offering post-publication control over AI training usage, facial recognition indexing, and unauthorized redistribution.[40]
Despite these technical capabilities, adoption of.jpf in consumer imaging software remains limited due to minimal support in mainstream browsers, mobile operating systems, and cloud platforms.
For traditional JPEG, additionalmetadata, e.g. lighting and exposure conditions, is kept in an application marker in theExif format specified by the JEITA. JPEG 2000 chooses a different route, encoding the same metadata inXML form. The reference between the Exif tags and the XML elements is standardized by the ISO TC42 committee in the standard 12234-1.4.
Extensible Metadata Platform can also be embedded in JPEG 2000.
This sectionpossibly containsoriginal research. Pleaseimprove it byverifying the claims made and addinginline citations. Statements consisting only of original research should be removed.(May 2020) (Learn how and when to remove this message) |
ISO 15444 is covered by patents and the specification lists 17 patent holders, but the contributing companies and organizations agreed that licenses for its first part—the core coding system—can be obtained free of charge from all contributors. But this is not a formal guarantee.[41][42] License and royalties may be required to use some extensions.[43][44]
The JPEG committee has stated:
It has always been a strong goal of the JPEG committee that its standards should be implementable in their baseline form without payment of royalty and license fees... The up and coming JPEG 2000 standard has been prepared along these lines, and agreement reached with over 20 large organizations holding many patents in this area to allow use of their intellectual property in connection with the standard without payment of license fees or royalties.[45]
However, the JPEG committee acknowledged in 2004 that undeclaredsubmarine patents may present a hazard:[importance?]
It is of course still possible that other organizations or individuals may claim intellectual property rights that affect implementation of the standard, and any implementers are urged to carry out their own searches and investigations in this area.[46]
In ISO/IEC 15444-1:2016, the JPEG committee stated in "Annex L: Patent statement":
The International Organization for Standardization (ISO) and the International Electrotechnical Commission (IEC) draw attention to the fact that it is claimed that compliance with this Recommendation | International Standard may involve the use of patents.
The complete list of intellectual property rights statements can be obtained from the ITU-T and ISO patent declaration databases (available athttps://www.iso.org/iso-standards-and-patents.html)
ISO and IEC take no position concerning the evidence, validity and scope of these patent rights.
Attention is drawn to the possibility that some of the elements of this Recommendation | International Standard may be the subject of patent rights other than those identified in the above mentioned databases. ISO and IEC shall not be held responsible for identifying any or all such patent rights.
Several additional parts of the JPEG 2000 standard exist; amongst them are ISO/IEC 15444-2:2000, JPEG 2000 extensions defining the.jpx file format, featuring for exampleTrellis quantization, an extended file format and additionalcolor spaces,[47] ISO/IEC 15444-4:2000, the reference testing and ISO/IEC 15444-6:2000, the compound image file format (.jpm), allowing compression of compound text/image graphics.[48]
Extensions for secure image transfer,JPSEC (ISO/IEC 15444-8), enhanced error-correction schemes for wireless applications,JPWL (ISO/IEC 15444-11) and extensions for encoding of volumetric images,JP3D (ISO/IEC 15444-10) are also already available from the ISO.
In 2005, a JPEG 2000–based image browsing protocol, calledJPIP was published as ISO/IEC 15444-9.[49] Within this framework, only selected regions of potentially huge images have to be transmitted from an image server on the request of a client, thus reducing the required bandwidth.
JPEG 2000 data may also be streamed using the ECWP and ECWPS protocols found within the ERDASECW/JP2 SDK.
Motion JPEG 2000, (MJ2), originally defined in Part 3 of the ISO Standard for JPEG2000 (ISO/IEC 15444-3:2002,) as a standalone document, has now been expressed by ISO/IEC 15444-3:2002/Amd 2:2003 in terms of the ISO Base format, ISO/IEC 15444-12 and inITU-T Recommendation T.802.[50] It specifies the use of the JPEG 2000 format for timed sequences of images (motion sequences), possibly combined with audio, and composed into an overall presentation.[51][52] It also defines a file format,[53] based on ISO base media file format (ISO 15444-12). Filename extensions for Motion JPEG 2000 video files are.mj2 and.mjp2 according to RFC 3745.
It is an openISO standard and an advanced update toMJPEG (or MJ), which was based on the legacyJPEG format. Unlike common video formats, such asMPEG-4 Part 2,WMV, andH.264, MJ2 does not employ temporal or inter-frame compression. Instead, each frame is an independent entity encoded by either a lossy or lossless variant of JPEG 2000. Its physical structure does not depend on time ordering, but it does employ a separate profile to complement the data. For audio, it supportsLPCM encoding, as well as various MPEG-4 variants, as "raw" or complement data.[54]
Motion JPEG 2000 (often referenced as MJ2 or MJP2) is considered as a digital archival format[55] by theLibrary of Congress though MXF_OP1a_JP2_LL (lossless JPEG 2000 wrapped in MXF operational pattern 1a) is preferred by the LOC Packard Campus for Audio-Visual Conservation.
ISO/IEC 15444-12 is identical with ISO/IEC 14496-12 (MPEG-4 Part 12) and it definesISO base media file format. For example, Motion JPEG 2000 file format,MP4 file format or3GP file format are also based on this ISO base media file format.[56][57][58][59][60]
TheOpen Geospatial Consortium (OGC) has defined ametadata standard forgeoreferencing JPEG 2000 images with embeddedXML using theGeography Markup Language (GML) format:GML in JPEG 2000 for Geographic Imagery Encoding (GMLJP2), version 1.0.0, dated 2006-01-18.[61] Version 2.0, entitledGML in JPEG 2000 (GMLJP2) Encoding Standard Part 1: Core was approved 2014-06-30.[61]
JP2 and JPX files containing GMLJP2 markup can be located and displayed in the correct position on the Earth's surface by a suitableGeographic Information System (GIS), in a similar way toGeoTIFF and GTG images.
| Program | Part 1 | Part 2 | Language | License | ||
|---|---|---|---|---|---|---|
| Read | Write | Read | Write | |||
| Grok | Yes | Yes | Partial | No | C++ | AGPL |
| JasPer | Yes | Yes | No | No | C | JasPer Software License |
| Kakadu | Yes | Yes | Yes | Yes | C++ | Proprietary |
| OpenJPEG | Yes | Yes | Partial | Partial | C | 2-clause BSD |
| Pillow | Yes | Yes | Yes | Yes | Python | MIT |
{{cite web}}: CS1 maint: numeric names: authors list (link){{cite journal}}:Cite journal requires|journal= (help){{cite journal}}:Cite journal requires|journal= (help)