Sustainability of Digital Formats
 Planning for Library of Congress Collections

Introduction | Sustainability Factors | Content Categories | Format Descriptions | Contact
Format Description Categories >> Browse Alphabetical List

JPEG 2000 Part 1, Core Coding System

>> Back
Table of Contents
Format Description Properties Explanation of format description terms

Identification and description Explanation of format description terms

Full name ISO/IEC 15444-1:2004. Information technology -- JPEG 2000 image coding system -- Part 1: Core coding system (formal name); JPEG 2000 core coding (common name)
Description

Compression encoding generally used for full color and grayscale continuous-tone pictorial images. Core coding uses a discrete wavelet transform and other elements in a variable manner to produce files with lossy or lossless compression. The encoding process is briefly described in the Notes and in some of the Useful references below. The outcome is the creation of a bitstream (or "codestream") that may be employed in scalable fashion, sometimes stated as "compress once, decompress many ways." In addition, producers of JPEG 2000 images may identify segments as regions of interest (ROI). Core coding permits certain types of ROI definition; additional types may be defined under J2K_EXT (specification Part 2).

Particular implementations of JPEG 2000 Core Coding may be established as profiles; see Notes below. The profiles serve as the basis for several subtypes listed here. A given file may conform to more than one profile, or fit into more than one subtype.

Production phase May be applied in initial-state picture creation; often used for middle- and final-state archiving or end-user delivery.
Relationship to other formats
    Has subtype J2K_C_LL, JPEG 2000 Part 1, Core Coding, Lossless Compression
    Has subtype J2K_C_LSY, JPEG 2000 Part 1, Core Coding, Lossy Compression
    Has subtype J2K_C_Profile_0, Profile 0 for JPEG 2000 Part 1, Core Coding
    Has subtype J2K_C_Profile_1, Profile 1 for JPEG 2000 Part 1, Core Coding
    Has subtype J2K_C_Profile_3, Profile 3 for JPEG 2000 Part 1, Core Coding. For Digital Cinema.
    Has subtype J2K_C_Profile_4, Profile 4 for JPEG 2000 Part 1, Core Coding. For Digital Cinema.
    Has subtype J2K_C_BIIF_01_00, BIIF Profile for JPEG 2000 Part 1, Core Coding, Version 01.00
    Has subtype BIIF Profile for JPEG 2000 Part 1, Core Coding, Version 01.10 (2009), not described at this Web site at this time
    Has subtype J2K_C_NDNP, NDNP Profile for JPEG 2000 Part 1, Core Coding
    Has subtype Profiles for broadcast applications. These seven profiles are specified in ISO/IEC 15444-1:2004/Amd 3:2010. Not described at this Web site at this time.

Local use Explanation of format description terms

LC experience or existing holdings See JP2_FF
LC preference See JP2_FF

Sustainability factors Explanation of format description terms

Disclosure Open standard. Developed by Joint Technical Committee ISOAEC JTC 1, Information technology, Subcommittee SC 29, Coding of audio, picture, multimedia and hypermedia information incollaboration with ITU-T.
    Documentation ISO/IEC 15444-1:2004. Information technology -- JPEG 2000 image coding system -- Part 1: Core coding system. See complete list of ISO/IEC JPEG 2000 standards in JP2_FF format specifications.
Adoption See JP2_FF
    Licensing and patents The Guide to the Practical Implementation of JPEG 2000, cited in Useful references below, reports, "The JPEG committee has striven to ensure that implementations of Part 1 can be royalty and licence-fee free. To help ensure its success, a number of patent holders have waived the right to impose royalties and licence fees in connection with JPEG 2000; other technology patents are believed to be non-essential for implementation. This is not a formal guarantee, however." The specification lists 17 patent holders in Annex L; the compiler of this document was unable to identify a patent pool or similar collective that represented this group of patent-holders.
Transparency Depends upon algorithms and tools to read; will require sophistication to build tools. JPEG 2000 compensates for this lack of transparency (typical of most compressed data formats) by a number of "resiliency" elements, described in the Notes below.
Self-documentation See JP2_FF
External dependencies None.
Technical protection considerations See JP2_FF

Quality and functionality factors Explanation of format description terms

Still Image
Normal rendering Good support.
Clarity (high image resolution) Excellent support, accommodating images with large picture sizes, high spatial resolution, and high bit depth. Color rendering (see below for color maintenance) is enhanced by the existence of lossless as well as lossy options for component transforms, and by the possibility of using a wide array of color spaces (each must be identified), three of which are in the specification as defaults: sRGB and sYCC (defined in IEC 61966-2-1 amended), and a grayscale space related to sRGB. The lossless compression algorithm permits the unchanged image to be recreated upon decompression. In the lossy realm, the use of wavelet transforms and other elements means that J2K_C codestreams provide greater clarity than JPEG_DCT ("old" JPEG) at the same file size, or equal clarity in smaller files.
Color maintenance The management of color is supported by the color space elements noted above, and by support for two classes of ICC color profiles defined in ICC.1:1998-09: Monochrome Input Profile and Three-Component Matrix-Based Input Profile. An ICC profile is data that may be encapsulated within a JPEG 2000 file that contains a mapping between color component values and a generic color space called the Profile Connection Space (PCS), employing the "fictitious primaries" called X, Y, and Z.
Support for vector graphics, including graphic effects and typography See JP2_FF
Support for multispectral bands No support; support for what are called multiple component images is provided by JPX_FF.
Functionality beyond normal rendering Special features for error resiliency are described in the Notes.

File type signifiers Explanation of format description terms

Tag Value Note
Filename extension j2c
Extension for raw codestreams; see also JP2_FF
Internet Media Type See related format.  See JP2_FF
Magic numbers See related format.  See JP2_FF
File type brand (ISO Base Media File Format) See related format.  See JP2_FF

Notes Explanation of format description terms

General

Regarding encoding. The following three paragraphs have been paraphrased from pages 14-15 of the Guide to the Practical Implementation of JPEG 2000 (2003, see Useful references below). This publication includes well-written explanations of additional coding elements, e.g., tiling, codeblock and precinct partitioning, bit plane coding and layering, all of which play a role in JPEG 2000's vaunted scalability.

Three of the most important areas of compression system design are choice of the transformation (or transformations), choice of the data reduction method (or methods), and choice of the coding system (or systems). JPEG 2000 uses (a) the wavelet transform, (b) a combination of coefficient quantization and post-encoding data reduction, and (c) arithmetic coding. Quantization means simply that the precision of the numbers in the transform domain, the 'transform coefficients', is selectively reduced: each number is divided by an integer quantization factor and any remainder (fractional part) is thrown away. Unlike the "old" JPEG, in JPEG 2000 the lossy compression is secondary. Post-encoding data reduction means throwing away some of the encoded data: although this may sound wasteful (why encode it and then throw it away?), it is much more flexible. It enables data reduction to be optimized for varying quality without any recoding (because the quantization is not changed), and it enables an existing JPEG 2000 image to be further compressed, e.g. from lossless to lossy or from lossy to even more lossy, also without any decoding, which supports the important 'scalability' offered by the new format.

Stated simply, the sequence of events in JPEG 2000 encoding is (1) wavelet transform, (2) quantize coefficients, (3) arithmetic coding, and (4) post-encoding data reduction. Mathematically, the wavelet transform is closely related to the process of sub-sampling, which means reducing the image data by lowering the number of sample points across the image; that is, lowering the image resolution. (For example, keeping only every other sample would reduce the resolution by a factor of 2; if done in both horizontal and vertical directions it would quarter the amount of data.) Because of this relationship, the wavelet transform is well suited to the removal of the redundancy corresponding to correlations between neighbouring image samples. It is also well suited to enabling the effective sub-sampling of chrominance (color information) relative to luminance (brightness information) in color imagery; this is an appropriate lossy compression technique because the eye is significantly less sensitive to variations in colour than in brightness.

In other compression systems, such as "old" JPEG, chrominance data are often explicitly subsampled by a factor of 2 in each direction. JPEG 2000's more subtle data reduction in the wavelet-transform domain allows a 'soft sub-sampling' that is more closely matched to the eye. An interesting consequence of the relative insignificance of color information is that thecompressed bit-rate figures for visually lossless (about 3 bits per pixel), near-lossless (about 1 bit per pixel), andusable images (about 0.25 bits per pixel or less), are approximately valid for both monochrome and color. In contrast, "old" JPEG's compression required two different compression ratios for monochrome (higher) and color (lower) to achieve the same visual effect. JPEG 2000's lossless compression cannot take advantage of the eye's reduced sensitivity to chrominance and thus does not offer the same effect. In any case lossless compression does not discard the information contained in even the least significant bits. That is why lossily compressed imagery is usually characterized by its compressed bit-rate (in bits per pixel) regardless of the raw data precision, whereas losslessly compressed imagery is usually characterized by compression ratio relative to the raw data.

Additional notes pertaining to lossless and lossy compression are provided in J2K_C_LL and J2K_C_LSY.

Regarding resiliency. Part 1 of the JPEG 2000 standard (the subject of this description) includes several elements intended to overcome errors that may arise in the networked transmission of image data. As indicated under the Transparency heading in the Sustainability section of this description, these resiliency elements also support preservation by compensating for the encoding's lack of transparency. The following bullets paraphrase the elements enumerated in annex J.7 of the standard:

  • The entropy coding of the quantized coefficients is done within code-blocks. Since the encoding and decoding of the code-blocks are independent, bit errors in the bit stream of a code-block will be contained within that code-block.
  • Termination of the arithmetic coder is allowed after every coding pass. Also, the contexts may be reset after each coding pass. This allows the arithmetic coder to continue to decode coding passes after errors.
  • The optional arithmetic coding bypass style puts raw bits into the bit stream without arithmetic coding. This prevents the types of error propagation to which variable length coding is susceptible.
  • Short packets are achieved by moving the packet headers to the PPM (Packed Packet headers, Main header marker) or PPT (Packed packet header, Tile-part header marker) segments. If there are errors, the packet headers in the PPM or PPT marker segments can still be associated with the correct packet by using the sequence number in the SOP (Start of Packet marker).
  • A segmentation symbol is a special symbol. The correct decoding of this symbol confirms the correctness of the decoding of this bit-plane which allows error detection.
  • A packet with a resynchronization marker SOP allows spatial partitioning and resynchronization. This is placed in front of every packet in a tile with a sequence number stating at zero. It is incremented with each packet.

Additional resiliency elements, intended to overcome errors that may occur in wireless transmission, are defined in Part 11 of the standard (ISO/IEC 15444-11:2007, Information technology -- JPEG 2000 image coding system: Wireless).

Regarding profiles. Particular implementations of JPEG 2000 Core Coding may be established as profiles. Amendment 1 to Part 1 of the Standard, titled Codestream Restrictions, establishes J2K_C_Profile_0 (Profile 0) and J2K_C_Profile_1 (Profile 1), and (by implication) profile 2 (no constraints). A further amendment to serve the Digital Cinema Initiative's DCP_1_0 specification was proposed in 2005 and establishes J2K_C_Profile_3 (Profile 3) and J2K_C_Profile_4 (Profile 4). In JPEG2000: Image Compression Fundamentals, Standards and Practices (2002), David S. Taubman and Michael W. Marcellin compare JPEG 2000 profiles to those in MPEG standards: "In JPEG 2000, however, profiles play a much less significant role, since compliant processors are not required to recover all of the information in the codestream." As summarized by Michael Gormish at a Web page no longer available in December 2011 (formerly at http://www.crc.ricoh.com/~gormish/jpeg2000.html), "Profile 0 codestreams are not allowed to use some of the features of JPEG 2000 . . . . Profile 1 codestreams are only slightly limited from JPEG 2000, the primary limitation is that all components must contain low resolution pieces of 128x128 or smaller." The specification itself adds, "The case of 'No Restrictions' meaning conforming to JPEG-2000 Part-1 standard can be called profile-2." (Amendment 1, p. 1) The profiles are agnostic regarding the use of J2K_C_LL (Lossless Compression) and J2K_C_LSY (Lossy Compression), although most of the profiles are designed for service in applications where lossy compression will be employed.

A profile for scanned newspaper pages, called J2K_C_NDNP at this Web site, has been specified for the National Digital Newspaper Program, launched by the Library of Congress and the National Endowment for the Humanities during 2004. This profile has much in common with Profile 0 as listed above.

History  

Format specifications Explanation of format description terms


Useful references

URLs

Books, articles, etc.

Last Updated: 02/08/2014