Progressive Graphics File

Progressive Graphics File

Infobox file format
name = PGF
extension = .pgf
mime =
owner = xeraina GmbH
creatorcode =
type = wavelet-based bitmapped image format
container for =
contained by =
extended from =
extended to =

PGF (Progressive Graphics File) is a wavelet-based bitmapped image format that employs lossless and lossy data compression. PGF was created to improve upon and replace the JPEG format. It was developed at the same time as JPEG 2000 but with a different focus: speed over compression ratio.

PGF can operate at higher compression ratios without taking more encoding/decoding time and without generating the characteristic 'blocky and blurry' artifacts of the original DCT-based JPEG standard [ [ PGF - A new progressive file format for lossy and lossless image compression] ] . It also allows more sophisticated progressive downloads.

Color Models

PGF supports a wide variety of color models:
* grayscale with 1, 8, 16 or 31 bit per pixel
* Indexed color with palette size of 256
* RGB color image with 12, 16 (565), 24 or 48 bit per pixel
* ARGB color image with 32 bit per pixel
* L*a*b color image with 24 or 48 bit per pixel
* CMYK color image with 32 or 64 bit per pixel


There are several claimed advantages of PGF over the ordinary JPEG standard:

* "Superior compression performance": The image quality (measured in PSNR) for the same compression ratio is on average 3% better than the PSNR of JPEG. At lower bit rates (e.g. less than 0.25 bits/pixel for gray-scale images), PGF has a much more significant advantage over certain modes of JPEG: artifacts are less visible and there is almost no blocking. The compression gains over JPEG are attributed to the use of DWT.

* "Multiple resolution representation": PGF provides seamless compression of multiple image components, with each component carrying from 1 to 31 bits per component sample. With this feature there is no need anymore for separately stored preview images (thumbnails).

* "Progressive transmission" by resolution accuracy, commonly referred to as progressive decoding: PGF provides efficient codestream organizations which are progressive by resolution. This way, after a smaller part of the whole file has been received, it is possible to see a lower quality of the final picture, the quality can be improved monotonically getting more data from the source.

* "Lossless and lossy compression": PGF provides both lossless and lossy compression in a single compression architecture. Both lossy and lossless compression are provided by the use of a reversible (integer) wavelet transform.

* "Side channel spatial information": it fully supports transparency and alpha planes.

* "ROI extraction": Since version 5, PGF supports extraction of regions of interest (ROI) without decoding the whole image.

Technical discussion

The aim of PGF is not only improved compression quality over JPEG but also adding (or improving) features such as scalability.In fact, PGF'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. Moreover, very low and very high compression rates (including lossless compression) are also supported in PGF. In fact, the graceful ability of the design to handle a very large range of effective bit rates is one of the strengths of PGF. 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 — something that is ordinarily not necessary for that purpose when using PGF because of its wavelet scalability properties.

The PGF process chain contains the following four steps:
* Color space transform (in case of color images)
* Discrete Wavelet Transform
* Quantization (in case of lossy data compression)
* Hierarchical bit-plane run-length encoding

Color components transformation

Initially, images have to be transformed from the RGB color space to another color space, leading to three "components" that are handled separately. PGF uses a fully reversible modified YUV color transform. The transformation matrices are::egin{bmatrix}Y_r \ U_r \ V_rend{bmatrix} = egin{bmatrix}frac{1}{4} & frac{1}{2} & frac{1}{4} \1 & -1 & 0 \0 & -1 & 1end{bmatrix}egin{bmatrix}R \ G \ Bend{bmatrix}; qquad qquadegin{bmatrix}R \ G \ Bend{bmatrix} = egin{bmatrix}1 & frac{3}{4} & -frac{1}{4} \1 & -frac{1}{4} & -frac{1}{4} \1 & -frac{1}{4} & frac{3}{4}end{bmatrix}egin{bmatrix}Y_r \ U_r \ V_rend{bmatrix}

The chrominance components can be, but do not necessarily have to be, down-scaled in resolution.

Wavelet transform

The color components are then wavelet transformed to an arbitrary depth, in contrast to JPEG 1992 which uses an 8x8 block-size discrete cosine transform. PGF uses one reversible wavelet transform:a rounded version of the biorthogonal CDF 5/3 wavelet transform. This wavelet filter bank is exactly the same as the reversible wavelet used in JPEG 2000. It uses only integer coefficients, so the output does not require rounding (quantization) and so it does not introduce any quantization noise.


After the wavelet transform, the coefficients are scalar-quantized to reduce the amount of bits to represent them, at the expense of a loss 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). In contrast to JPEG 2000 PGF uses only powers of two, therefore the parameter value "i" represents a quantization step of 2"i". Just using powers of two makes no need of integer multiplication and division operations.


The result of the previous process is a collection of "sub-bands" which represent several approximation scales.A sub-band is a set of "coefficients" — integer 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 into "blocks", rectangular regions in the wavelet domain. They are typically selected in a way that the coefficients within them across the sub-bands form approximately spatial blocks in the (reconstructed) image domain and collected in a fixed size "macroblock".

The encoder has to encode the bits of all quantized coefficients of a macroblock, starting with the most significant bits and progressing to less significant bits. In this encoding process, each bit-plane of the macroblock gets encoded in two so-called "coding passes", first encoding bits of significant coefficients, then refinement bits of significant coefficients. Clearly, in lossless mode all bit-planes have to be encoded, and no bit-planes can be dropped.

Only significant coefficients are compressed with an adaptive run-length/Rice (RLR) coder, because they contain long runs of zeros. The RLR coder with parameter "k" (logarithmic length of a run of zeros) is also known as the elementary Golomb code of order 2"k".

Comparison with other File Formats

JPEG 2000

The JPEG 2000 is slightly more space-efficient in the case of natural images. The PSNR for the same compression ratio is on average 3% better than the PSNR of PGF. Its small advantage in compression ratio is paid with a clearly higher encoding and decoding time.

The original PGF source code is open (not patented) and available under LGPL.


The PNG (Portable Network Graphics) format is still more space-efficient in the case of images with many pixels of the same color. It can be expected that PNG will be more heavily used for compressing diagram-type images and PGF for photograph-type images.

ee also

*Comparison of graphics file formats
*Related graphics file formats
**JPEG 2000
*Image file formats
*Image compression


External links

* [ PGF Home Site]

Wikimedia Foundation. 2010.

Игры ⚽ Нужна курсовая?

Look at other dictionaries:

  • Progressive graphics file — Extension de fichier .pgf Type MIME image/pgf Spécification Format ouvert Le Progressive Graphics File, plus connu sous l acronyme PGF, est un format d image numérique couramment utilisé sur la T …   Wikipédia en Français

  • Progressive Graphics File — Extension .pgf Type MIME image/pgf Spécification Format ouvert …   Wikipédia en Français

  • Progressive Graphics File — PGF steht für Progressive Graphics File und ist ein Grafikformat für komprimierte Rastergrafiken. Es wurde als Ersatz für die in die Jahre gekommene JPEG Komprimierung entworfen. Die Daten werden entweder verlustfrei oder verlustbehaftet… …   Deutsch Wikipedia

  • Comparison of graphics file formats — This is a comparison of image file formats. General Ownership of the format and related information. Format Full name Owner Based Format File extension MIME type Application Patented Abc Advanced Bitonal Compression LEAD Technologies .abc …   Wikipedia

  • Audio Interchange File Format — Эта статья включает описание термина «AIFF»; о футбольной федерации AIFF см. Всеиндийская футбольная федерация. Audio Interchange File Format Расширение .aiff .aif .aifc MIME audio/x aiff audio/aiff Разработан Apple Inc. Тип формата Аудио файл …   Википедия

  • File system — For library and office filing systems, see Library classification. Further information: Filing cabinet A file system (or filesystem) is a means to organize data expected to be retained after a program terminates by providing procedures to store,… …   Wikipedia

  • Comparison of layout engines (graphics) — The following tables compare graphics compatibility and support for a number of layout engines. Please see the individual products articles for further information. This article is not all inclusive or necessarily up to date. Unless otherwise… …   Wikipedia

  • JPEG File Interchange Format — Dateiendung: .jpg, .jpeg, .jpe, .jfif MIME Type …   Deutsch Wikipedia

  • GIF — Graphics Interchange Format Вращающаяся Земля в формате GIF. В местах с синим градиентом заметен эффект постеризации, возникающий из за недостаточной глубины палитры. Расширение .gif MIME image/gif Сигнатура …   Википедия

  • .jpe — Dieser Artikel beschreibt die Norm zur Bildkompression. Für das Dateiformat mit der Dateiendung .jpg oder .jpeg, in dem mit diesen Verfahren komprimierte Bilder üblicherweise gespeichert werden, siehe JPEG File Interchange Format. Ein Bild einer… …   Deutsch Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”