Aware JPEG 2000

JPEG 2000 Software Development Kit (SDK) for Medical Imaging Applications

The Aware JPEG 2000 SDK allows developers to quickly and easily incorporate JPEG 2000 into their applications. Aware’s SDK includes DLLs and linkable libraries to compress and decompress JPEG 2000 images, transcode from other image formats, and randomly extract data from JPEG 2000 files, such as metadata, sub-resolution images, individual color channels, and areas of interest. The SDK can read and write many common file formats, including DCM, JPEG and TIFF, supports lossy and lossless compression, 8 to 16 bit pixel data, grayscale, color and multi-spectral images, region of interest encoding, tiling, selectable progression ordering (by resolution, by quality and by color channel), and a unique progressive encoding capability found only with Aware’s implementation.

Aware’s SDK features a powerful and flexible API that allows a programmer to select an input image and output properties such as image type, compression rate, stream format, etc. The codec automatically determines how to best produce the desired output, which may include compression (if the input image is uncompressed and the output format is JPEG 2000), decompression (if the input image is JPEG 2000 and the output format is uncompressed), or transcoding (if both the input and output are JPEG 2000 format).

Aware’s SDK is available for Apple Mac and iOS, for Windows 2000, 2003, XP, CE, Vista, 7 and Mobile, and various Unix platforms such as Solaris, AIX, HPUX, and Linux. It is written in ANSI C and is highly portable to other platforms. It can be used in applications running on a client, workstation, or server, and includes example programs with source code and project files that demonstrate how to implement the various encoding and decoding options in JPEG.

Compression to Target Quality: A constant image distortion level set to a constant pSNR results in different levels of compression for each image in a CT series.

Compression to Target Quality:
A constant image distortion level set to a constant pSNR
results in different levels of compression for each image in a CT series.

About JPEG 2000 and Aware

JPEG 2000 is an image compression standard designed for a broad range of applications, including the compression and transmission of medical images. The standard is based on wavelet technology and a layered file format that offer lossless compression, diagnostic-quality lossy compression, and advanced system-level functionality.

Aware was the first commercial provider of wavelet compression and was actively involved in the development of the JPEG 2000 standard. Aware offers a suite of development tools that enable DICOM-compatible equipment manufacturers and application developers to quickly incorporate JPEG 2000 technology into their products. These tools include a Software Development Kit (SDK), libraries, sample applications with source code, a command line codec, and a Windows GUI tool with viewer. All Aware products are fully supported and backed by the expertise developed by providing wavelet-based compression solutions since 1987.


Key Features

  • ISO/ITU JPEG 2000 standard adopted in DICOM
  • Offers lossless and lossy compression
  • Support for 8, to 16 bit data, signed and unsigned, grayscale and color
  • Layered file format allows image quality and resolution scalability
  • Progressive display reduces time to first-view during image transmission
  • Support for Apple iOS on both ARM6 and ARM7 processor platforms for decompression and viewing of images on an iPad or iPhone.

Advanced Functionality

Resolution Scalability

JPEG 2000 allows reduced-resolution images to be quickly and efficiently extracted from a compressed file. This capability is useful for generating index or catalog pages with thumbnails of each image. With JPEG 2000, sub-resolution images of various sizes can be extracted from the compressed file and do not need to be stored separately.

Quality Scalability

JPEG 2000 allows reduced-quality images to be extracted from a compressed file, producing images with higher compression ratios optimized for specific workflows. For example, for archival and reference purposes, a lossless image at 2:1 compression can be stored on the server. From this master file, a medium quality image at 30:1 compression can be extracted and transmitted for browsing, and a high quality image at 10:1 compression can be extracted and viewed for diagnostic purposes. JPEG 2000 allows the more highly compressed images to be quickly extracted from the master file.

Progressive Display

JPEG 2000’s progressive transmission format displays a low-resolution version of an image after only a small portion of the file has been received. As more data arrives, the display is progressively refined until the full resolution image is shown. This feature allows a user to quickly orient themselves to an image, reducing the time spent waiting for data to arrive.

JPEG 2000 3D

The Aware JPEG 2000 SDK includes JPEG 2000-3D. JPEG 2000-3D is an implementation of JPEG 2000 Part 2 extensions that enable compression of volumetric medical image data, such as that created by CT and MR scanners. JPEG 2000-3D enables a series of two-dimensional images to be further compressed in the third dimension by exploiting correlation between the adjacent images in the series. The result is that better compression ratios can be achieved than if each image in the series were compressed independently.


Aware also provides server-based software supporting the JPIP protocol, with a software toolset designed for streaming of images by region of interest, sub-resolution, sub-quality and specific color channel. For efficient viewing of multi-frame DICOM images, JPIPextracts only the frames that the client directly requests. It can also automatically compress non-JPEG 2000 images to JPEG 2000 for faster prototyping. A JPIP viewer is also available.