FACTOID # 25: If you're tired of sitting in traffic on your way to work, move to North Dakota.
 
 Home   Encyclopedia   Statistics   States A-Z   Flags   Maps   FAQ   About 
   
 
WHAT'S NEW
 

SEARCH ALL

FACTS & STATISTICS    Advanced view

Search encyclopedia, statistics and forums:

 

 

(* = Graphable)

 

 


Encyclopedia > JPEG
JPEG

A photo of a flower compressed with successively more lossy compression ratios from left to right.
File extension: .jpeg, .jpg, .jpe
.jfif, .jfi, .jif (containers)
MIME type: image/jpeg
Type code: JPEG
Uniform Type Identifier: public.jpeg
Developed by: Joint Photographic Experts Group

In computing, JPEG (pronounced JAY-peg; IPA: [ˈdʒeɪpɛg]) is a commonly used method of compression for photographic images. The name JPEG stands for Joint Photographic Experts Group, the name of the committee that created the standard. The group was organized in 1986, issuing a standard in 1992 which was approved in 1994 as ISO 10918-1. JPEG is distinct from MPEG (Moving Picture Experts Group) which produces compression schemes for video. JPG is a magazine, published 6 times a year[1] by 8020 Publishing, which focuses on photography. ... Image File history File links No higher resolution available. ... A filename extension is a suffix to the name of a computer file applied to show its format. ... Look up mime in Wiktionary, the free dictionary. ... A type code is a mechanism used in pre-Mac OS X versions of the Macintosh operating system to denote a files format, in a manner similar to file extensions in other operating systems. ... A Uniform Type Identifier (UTI) is a string that uniquely identifies the type of a class of items. ... A photo of a flower compressed with successively higher compression ratios from left to right. ... RAM (Random Access Memory) Look up computing in Wiktionary, the free dictionary. ... Articles with similar titles include the NATO phonetic alphabet, which has also informally been called the “International Phonetic Alphabet”. For information on how to read IPA transcriptions of English words, see IPA chart for English. ... Image compression is the application of Data compression on digital images. ... A photo of a flower compressed with successively higher compression ratios from left to right. ... Year 1986 (MCMLXXXVI) was a common year starting on Wednesday (link displays 1986 Gregorian calendar). ... Year 1992 (MCMXCII) was a leap year starting on Wednesday (link will display full 1992 Gregorian calendar). ... Year 1994 (MCMXCIV) The year 1994 was designated as the International Year of the Family and the International Year of the Sport and the Olympic Ideal by the United Nations. ... The is a working group of ISO/IEC charged with the development of video and audio encoding standards. ...


The JPEG standard specifies both the codec, which defines how an image is compressed into a stream of bytes and decompressed back into an image, and the file format used to contain that stream. The compression method is usually lossy compression, meaning that some visual quality is lost in the process, although there are variations on the standard baseline JPEG which are lossless. There is also an interlaced "Progressive JPEG" format, in which data is compressed in multiple passes of progressively higher detail. This is ideal for large images that will be displayed whilst downloading over a slow connection, allowing a reasonable preview before all the data has been retrieved. However, progressive JPEGs are not as widely supported. A codec is a device or program capable of performing encoding and decoding on a digital data stream or signal. ... In computer science a byte (pronounced bite) is a unit of measurement of information storage, most often consisting of eight bits. ... Original Image (lossless PNG, 60. ... faldfjajsldfkja;sdfkja;dkjfasdf;j ... Interlacing is a method of encoding a bitmap image such that a person who has partially received it sees a degraded copy of the entire image. ...


The file format is known as 'JPEG Interchange Format', as specified in Annex B of the standard. This is often confused with the JPEG File Interchange Format (JFIF), a minimal version of the JPEG format that was deliberately simplified so that it could be widely implemented and thus become the de-facto standard. Most image editing software programs that write to a "JPEG file" are actually creating a file in JFIF format.[1] A file format is a particular way to encode information for storage in a computer file. ... A photo of a flower compressed with successively higher compression ratios from left to right. ... A photo of a flower compressed with successively higher compression ratios from left to right. ...


Image files that employ JPEG compression are commonly called "JPEG files". The most common file extension for this format is .jpg, though .jpeg, .jpe, .jfif and .jif are also used. It is also possible for JPEG data to be embedded in other file types, such as TIFF format images. A filename extension or filename suffix is an extra set of (usually) alphanumeric characters that is appended to the end of a filename to allow computer users (as well as various pieces of software on the computer system) to quickly determine the type of data stored in the file. ... “TIFF” redirects here. ...


JPEG/JFIF is the format most used for storing and transmitting photographs on the World Wide Web. For this application, it is preferred to formats such as GIF, which has a limit of 256 distinct colors that is insufficient for color photographs, and PNG, which produces much larger image files for this type of image. The JPEG compression algorithm is not as well suited for line drawings and other textual or iconic graphics, and thus the PNG and GIF formats are preferred for these types of images. WWWs historical logo designed by Robert Cailliau The World Wide Web (commonly shortened to the Web) is a system of interlinked, hypertext documents accessed via the Internet. ... GIF (Graphics Interchange Format) is a bitmap image format that is widely used on the World Wide Web, both for still images and for animations. ... PNG may stand for: Persona non grata, literally meaning an unwelcome person, is a term used in diplomacy with a specialised and legally defined meaning. ...


The MIME media type for JPEG is image/jpeg (defined in RFC 1341). An Internet media type,[1] originally called a MIME type after MIME and sometimes a Content-type after the name of a header in several protocols whose value is such a type, is a two-part identifier for file formats on the Internet. ...

Contents

JPEG codec

A chart showing the relative quality of various jpg settings and also compares saving a file as a jpg normally and using a "save for web" technique

Although a JPEG file can be encoded in various ways, most commonly it is done with JFIF encoding. The encoding process consists of several steps: Image File history File links Size of this preview: 720 × 600 pixelsFull resolution (6000 × 5000 pixel, file size: 11. ... Image File history File links Size of this preview: 720 × 600 pixelsFull resolution (6000 × 5000 pixel, file size: 11. ...

  1. The representation of the colors in the image is converted from RGB to YCbCr, consisting of one luma component (Y), representing brightness, and two chroma components, representing color. This step is sometimes skipped.
  2. The resolution of the chroma data is reduced, usually by a factor 2. This reflects the fact that the eye is less sensitive to fine color details than to fine brightness details.
  3. The image is split into blocks of 8×8 pixels, and for each block, each of the Y, Cb, and Cr data undergoes a discrete cosine transform (DCT). A DCT is similar to a Fourier transform in the sense that it produces a kind of spatial frequency spectrum.
  4. The amplitudes of the frequency components are quantized. Human vision is much more sensitive to small variations in color or brightness over large areas than the strength of a high-frequency brightness variations. Therefore, the magnitude of the high-frequency components are stored with a lower accuracy than the low-frequency components. The quality setting of the encoder (for example 50% or 95%) affects to what extent the resolution of each frequency component is reduced. At a low quality setting, the high-frequency components are discarded altogether.
  5. The resulting data for all 8×8 blocks is further compressed with a loss-less algorithm, a variant of Huffman encoding.

The decoding process merely reverses these steps. In the remainder of this section, the encoding and decoding processes are described in more detail. A representation of additive color mixing—In CRT based (analog electronics) television three color electron guns are used to stimulate such an arrangement of phosphorescent coatings of the glass, the resultant reemission of photons providing the image seen by the eye. ... A colour image and the Y, Cb and Cr elements of it. ... 2-D DCT compared to the DFT The discrete cosine transform (DCT) is a Fourier-related transform similar to the discrete Fourier transform (DFT), but using only real numbers. ... In mathematics, the Fourier transform is a certain linear operator that maps functions to other functions. ... Look up quantization in Wiktionary, the free dictionary. ... In computer science, Huffman coding is an entropy encoding algorithm used for data compression that finds the optimal system of encoding strings based on the relative frequency of each character. ...


Encoding

Many of the options in the JPEG standard are not commonly used, and as mentioned above, most image software uses the simpler JFIF format when creating a JPEG file, which amongst other things specifies the encoding method. Here is a brief description of one of the more common methods of encoding when applied to an input that has 24 bits per pixel (eight each of red, green, and blue). This particular option is a lossy data compression method. Color depth is a computer graphics term describing the number of bits used to represent the color of a single pixel in a bitmapped image or video frame buffer. ... A representation of additive color mixing—In CRT based (analog electronics) television three color electron guns are used to stimulate such an arrangement of phosphorescent coatings of the glass, the resultant reemission of photons providing the image seen by the eye. ... A lossy data compression method is one where compressing data and then decompressing it retrieves data that may well be different from the original, but is close enough to be useful in some way. ...


Color space transformation

First, the image should be converted from RGB into a different color space called YCbCr. It has three components Y, Cb and Cr: the Y component represents the brightness of a pixel, the Cb and Cr components represent the chrominance (split into blue and red components). This is the same as the color space used by PAL, MAC and digital color television transmission (but not by NTSC, which uses the similar YIQ color space). The YCbCr color space conversion allows greater compression for the same image quality (or greater image quality for the same compression). A representation of additive color mixing—In CRT based (analog electronics) television three color electron guns are used to stimulate such an arrangement of phosphorescent coatings of the glass, the resultant reemission of photons providing the image seen by the eye. ... A comparison of different color spaces. ... A colour image and the Y, Cb and Cr elements of it. ... Chrominance (chroma for short) comprises the two components of a television signal that encode color information. ... For other uses, see PAL (disambiguation). ... Multiplexed Analogue Components (MAC) is a high-definition television transmission standard, originally proposed in 1995 for European HDTV. MAC transmits luminance and chrominance data separately in time rather than separately in frequency (as other analog television formats do, such as composite video). ... NTSC is the analog television system in use in the United States, Canada, Japan, South Korea, the Philippines, Mexico, and some other countries, mostly in the Americas (see map). ... This article needs to be cleaned up to conform to a higher standard of quality. ...


This conversion to YCbCr is specified in the JFIF standard, and should be performed for the resulting JPEG file to have maximum compatibility. However, many "high quality" JPEG images do not apply this step and instead keep them in the sRGB color space, where each color plane is compressed and quantized separately with similar quality levels. CIE 1931 xy chromaticity diagram showing the gamut of the sRGB color space and location of the primaries. ...


Downsampling

The human eye can see more detail in the Y component (brightness) than in Cb (blue) and Cr (red). Using this knowledge, encoders can be designed to compress images more efficiently.


The above transformation enables the next step, which is to reduce the Cb and Cr components (called "downsampling" or "chroma subsampling"). The ratios at which the downsampling can be done on JPEG are 4:4:4 (no downsampling), 4:2:2 (reduce by factor of 2 in horizontal direction), and most commonly 4:2:0 (reduce by factor of 2 in horizontal and vertical directions). For the rest of the compression process, Y, Cb and Cr are processed separately and in a very similar manner. Downsampling the chroma components saves 33% or 50% of the space taken by the image. Downsampling (or subsampling) is the process of reducing the sampling rate of a signal. ... In digital image processing, chroma subsampling is the use of lower resolution for the colour (chroma) information in an image than for the brightness (intensity or luma) information. ... This article should be merged with chroma subsampling YUV 4:4:4 is a specific encoding for digital representation of the YUV color space. ... YUV 4:2:2 is a specific encoding for digital representation of the YUV color space. ... YUV 4:2:0 is a specific encoding for digital representation of the YUV color space. ...


Block splitting

After subsampling, each channel must be split into 8×8 blocks (of pixels). If the data for a channel does not represent an integer number of blocks then the encoder must fill the remaining area of the incomplete blocks with some form of dummy data: In digital image processing, chroma subsampling is the use of lower resolution for the colour (chroma) information in an image than for the brightness (intensity or luma) information. ... This article is actively undergoing a major edit. ...

  • filling the edge pixels with a fixed color (typically black) creates dark artifacts along the visible part of the border
  • repeating the edge pixels is a common but non-optimal technique that avoids the visible border, but it still creates artifacts with the colorimetry of the filled cells
  • a better strategy is to fill pixels using colors that preserve the DCT coefficients of the visible pixels, at least for the low frequency ones (for example filling with the average color of the visible part will preserve the first DC coefficient, but best fitting the next two AC coefficients will produce much better results with less visible 8×8 cell edges along the border).

Discrete cosine transform

The 8×8 sub-image shown in 8-bit greyscale
The 8×8 sub-image shown after having its histogram equalized (i.e., 154 becomes white, 55 becomes black). Note that this is done just for visual purposes and no such equalization is done in the example data.

Next, each component (Y, Cb, Cr) of each 8×8 block is converted to a frequency-domain representation, using a normalized, two-dimensional type-II discrete cosine transform (DCT). Image File history File linksMetadata JPEG_example_image_not_scaled. ... Image File history File linksMetadata JPEG_example_image_not_scaled. ... Example 8x8 subimage used in the JPEG algorithm This picture/image was taken/created by me. ... Example 8x8 subimage used in the JPEG algorithm This picture/image was taken/created by me. ... Histogram equalization is a method in image processing of contrast adjustment using the images histogram. ... Frequency domain is a term used to describe the analysis of mathematical functions with respect to frequency. ... 2-D DCT compared to the DFT The discrete cosine transform (DCT) is a Fourier-related transform similar to the discrete Fourier transform (DFT), but using only real numbers. ...


As an example, if one such 8×8 8-bit subimage is:

The next step is to transform the subimage from a positive range to one centered around zero. For an 8-bit image each pixel has 256 possible values: [0,255]. To center around zero it is necessary to subtract by half the number of possible values, or 128.

Subtracting 128 from each pixel value yields pixel values on [ − 128,127]

The next step is to take the two-dimensional DCT, which is given by:

The DCT transforms 64 pixels to a linear combination of these 64 squares. Horizontally is u and vertically is v.

where Image File history File links Dctjpeg. ... Image File history File links Dctjpeg. ... In mathematics, linear combinations are a concept central to linear algebra and related fields of mathematics. ...

  • is the horizontal spatial frequency, for the integers .
  • is the vertical spatial frequency, for the integers .
  • is a normalizing function
  • is the pixel value at coordinates
  • is the DCT coefficient at coordinates

If we perform this transformation on our matrix above, and then round to the nearest integer, we get In mathematics, physics, and engineering, spatial frequency is a characteristic of any structure that is periodic across position in space. ...

Note the rather large value of the top-left corner. This is the DC coefficient. The remaining 63 coefficients are called the AC coefficients. The DCT temporarily increases the bit-depth of the image, since the DCT coefficients of an 8-bit/component image take up to 11 or 12 bits (depending on fidelity of the DCT calculation) to store. This may force the codec to temporarily use 16-bit bins to hold these coefficients doubling the formal size of the image representation at this point. The advantage of the DCT is its tendency to aggregate most of the signal in one corner of the result, as may be seen above. The quantization step to follow accentuates this effect while simultaneously reducing the size of the DCT coefficients to 8 bits or less, resulting in a signal with a large trailing region containing zeros that the entropy stage can simply throw away. The temporary increase in size at this stage is not a performance concern for most JPEG implementations, because typically only a very small part of the image is stored in full DCT form at any given time during the encoding or decoding process. It has been suggested that this article or section be merged with DC offset. ...


Quantization

The human eye is good at seeing small differences in brightness over a relatively large area, but not so good at distinguishing the exact strength of a high frequency brightness variation. This fact allows one to get away with greatly reducing the amount of information in the high frequency components. This is done by simply dividing each component in the frequency domain by a constant for that component, and then rounding to the nearest integer. This is the main lossy operation in the whole process. As a result of this, it is typically the case that many of the higher frequency components are rounded to zero, and many of the rest become small positive or negative numbers, which take many fewer bits to store. Brightness is an attribute of visual perception in which a source appears to emit a given amount of light. ...


A common quantization matrix is: Quantization, involved in image processing, is a lossy compression technique achieved by compressing a range of values to a single quantum value. ...

The quantized DCT coefficients are computed with

where A is the unquantized DCT coefficients; Q is the quantization matrix above; and B is the quantized DCT coefficients. (Note that this is in no way matrix multiplication.) This article gives an overview of the various ways to perform matrix multiplication. ...


Using this quantization matrix with the DCT coefficient matrix from above results in:

For example, using −415 (the DC coefficient) and rounding to the nearest integer

Entropy coding

Main article: Entropy encoding
Zigzag ordering of JPEG image components

Entropy coding is a special form of lossless data compression. It involves arranging the image components in a "zigzag" order employing run-length encoding (RLE) algorithm that groups similar frequencies together, inserting length coding zeros, and then using Huffman coding on what is left. In information theory an entropy encoding is a data compression scheme that assigns codes to symbols so as to match code lengths with the probabilities of the symbols. ... Image File history File links JPEG_ZigZag. ... Image File history File links JPEG_ZigZag. ... Lossless data compression is a class of data compression algorithms that allows the exact original data to be reconstructed from the compressed data. ... Run-length encoding (RLE) is a very simple form of data compression in which runs of data (that is, sequences in which the same data value occurs in many consecutive data elements) are stored as a single data value and count, rather than as the original run. ... In computer science and information theory, Huffman coding is an entropy encoding algorithm used for lossless data compression. ...


The JPEG standard also allows, but does not require, the use of arithmetic coding which is mathematically superior to Huffman coding. However, this feature is rarely used as it is covered by patents and because it is much slower to encode and decode compared to Huffman coding. Arithmetic coding typically makes files about 5% smaller. The introduction to this article provides insufficient context for those unfamiliar with the subject matter. ... For other uses, see Patent (disambiguation). ...


The zigzag sequence for the above quantized coefficients are shown below. (The format shown is just for ease of understanding/viewing.)

−26
−3 0
−3 −2 −6
2 −4 1 −4
1 1 5 1 2
−1 1 −1 2 0 0
0 0 0 −1 −1 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0
0 0 0 0 0 0
0 0 0 0 0
0 0 0 0
0 0 0
0 0
0

If the i-th block is represented by Bi and positions within each block are represented by (p,q) where p = 0, 1, ..., 7 and q = 0, 1, ..., 7, then any coefficient in the DCT image can be represented as Bi(p,q). Thus, in the above scheme, the order of encoding pixels (for the i-th block) is Bi(0,0), Bi(0,1), Bi(1,0), Bi(2,0), Bi(1,1), Bi(0,2), Bi(0,3), Bi(1,2) and so on.

Baseline sequential JPEG encoding and decoding processes

This encoding mode is called baseline sequential encoding. Baseline JPEG also supports progressive encoding. While sequential encoding encodes coefficients of a single block at a time (in a zigzag manner), progressive encoding encodes similar-positioned coefficients of all blocks in one go, followed by the next positioned coefficients of all blocks, and so on. So, if the image is divided into N 8×8 blocks {B0,B1,B2, ..., Bn-1}, then progressive encoding encodes Bi(0,0) for all blocks, i.e., for all i = 0, 1, 2, ..., N-1. This is followed by encoding Bi(0,1) coefficient of all blocks, followed by Bi(1,0)-th coefficient of all blocks, then Bi(0,2)-th coefficient of all blocks, and so on. It should be noted here that once all similar-positioned coefficients have been encoded, the next position to be encoded is the one occurring next in the zigzag traversal as indicated in the figure above. It has been found that Baseline Progressive JPEG encoding usually gives better compression as compared to Baseline Sequential JPEG due to the ability to use different Huffman tables (see below) tailored for different frequencies on each "scan" or "pass" (which includes similar-positioned coefficients), though the difference is not too large. Image File history File links No higher resolution available. ... Image File history File links No higher resolution available. ...


In the rest of the article, it is assumed that the coefficient pattern generated is due to sequential mode.


In order to encode the above generated coefficient pattern, JPEG uses Huffman encoding. JPEG has a special Huffman code word for ending the sequence prematurely when the remaining coefficients are zero.


Using this special code word: "EOB", the sequence becomes:

−26
−3 0
−3 −2 −6
2 −4 1 −4
1 1 5 1 2
−1 1 −1 2 0 0
0 0 0 −1 −1 EOB

JPEG's other code words represent combinations of (a) the number of significant bits of a coefficient, including sign, and (b) the number of consecutive zero coefficients that follow it. (Once you know how many bits to expect, it takes 1 bit to represent the choices {-1, +1}, 2 bits to represent the choices {-3, -2, +2, +3}, and so forth.) In our example block, most of the quantized coefficients are small numbers that are not followed immediately by a zero coefficient. These more-frequent cases will be represented by shorter code words.


The JPEG standard provides general-purpose Huffman tables; encoders may also choose to generate Huffman tables optimized for the actual frequency distributions in images being encoded.


Compression ratio and artifacts

This image shows the pixels which are different between a non-compressed image and the same image JPEG compressed with a quality of 50%. Darker means a larger difference. Note especially the changes occurring near sharp edges and having a block-like shape.
The compressed 8×8-squares are visible in the scaled up picture, together with other visual artifacts of the lossy compression.

The resulting compression ratio can be varied according to need by being more or less aggressive in the divisors used in the quantization phase. Ten to one compression usually results in an image that cannot be distinguished by eye from the original. 100 to one compression is usually possible, but will look distinctly artifacted compared to the original. The appropriate level of compression depends on the use to which the image will be put. Image File history File links No higher resolution available. ... Image File history File links No higher resolution available. ... Image File history File links Jpegvergroessert. ... Image File history File links Jpegvergroessert. ... Original Image (lossless PNG, 60. ... A compression artifact (or artefact) is the result of an aggressive data compression scheme applied to an image, audio, or video that discards some data which is determined by an algorithm to be of lesser importance to the overall content but which is nonetheless discernible and objectionable to the user. ...


Those who use the World Wide Web may be familiar with the irregularities known as compression artifacts that appear in JPEG images. These are due to the quantization step of the JPEG algorithm. They are especially noticeable around eyes in pictures of faces. They can be reduced by choosing a lower level of compression; they may be eliminated by saving an image using a lossless file format, though for photographic images this will usually result in a larger file size. Compression artifacts make low-quality JPEGs unacceptable for storing heightmaps. The images created with ray-tracing programs have noticeable blocky shapes on the terrain. WWWs historical logo designed by Robert Cailliau The World Wide Web (commonly shortened to the Web) is a system of interlinked, hypertext documents accessed via the Internet. ... A compression artifact (or artefact) is the result of an aggressive data compression scheme applied to an image, audio, or video that discards some data which is determined by an algorithm to be of lesser importance to the overall content but which is nonetheless discernible and objectionable to the user. ... Image compression is the application of Data compression on digital images. ... Lossless data compression is a class of data compression algorithms that allows the exact original data to be reconstructed from the compressed data. ... A heightmap created with Terragen The same heightmap converted to a 3D mesh and rendered with Anim8or In computer graphics, a heightmap or heightfield is a raster image used to store values, such as surface elevation data, for display in 3D computer graphics. ...


Some programs allow the user to vary the amount by which individual blocks are compressed. Stronger compression is applied to areas of the image that show fewer artifacts. This way it is possible to manually reduce JPEG file size with less loss of quality.


Since the quantization stage always results in a loss of information, JPEG standard is always a lossy compression codec. (Information is lost both in quantizing and rounding of the floating-point numbers.) Even if the quantization matrix is a matrix of ones, information will still be lost in the rounding step. In mathematics, a matrix of ones is a matrix where every element is equal to one. ...


Decoding

Decoding to display the image consists of doing all the above in reverse.


Taking the DCT coefficient matrix (after adding the difference of the DC coefficient back in)

and taking the entry-for-entry product with the quantization matrix from above results in This article gives an overview of the various ways to multiply matrices. ...

which closely resembles the original DCT coefficient matrix for the top-left portion. Taking the inverse DCT (type-III DCT) results in an image with values (still shifted down by 128)

 
Notice the slight differences between the original (top) and decompressed image (bottom) which is most readily seen in the bottom-left corner.

and adding 128 to each entry Example 8x8 subimage used in the JPEG algorithm This picture/image was taken/created by me. ... Example 8x8 subimage used in the JPEG algorithm after being compressed and decompressed; note the differences with Image:JPEG example image. ...

This is the uncompressed subimage and can be compared to the original subimage (also see images to the right) by taking the difference (original − uncompressed) results in error values

with an average absolute error of about 5 values per pixels (i.e., ).


The error is most noticeable in the bottom-left corner where the bottom-left pixel becomes darker than the pixel to its immediate right.


Syntax and structure

A JPEG image contains a sequence of markers, each of which begins with a 0xFF byte followed by a byte indicating which kind of marker it is. Some markers consist of just those two bytes; others are followed by two bytes indicating the length of marker-specific payload data that follows. (The length includes the two bytes for the length, but not the two bytes for the marker.) Some markers are followed by entropy-coded data; the length of such a marker does not include the entropy-coded data.


Within the entropy-coded data, after any 0xFF byte, a 0x00 byte is inserted by the encoder before the next byte, so that there does not appear to be a marker where none is intended. Decoders must skip this 0x00 byte. This technique, called byte stuffing, is only applied to the entropy-coded data, not to marker payload data.

Common JPEG markers
Short name Bytes Payload Name Comments
SOI 0xFFD8 none Start Of Image
SOF0 0xFFC0 variable size Start Of Frame (Baseline DCT) Indicates that this is a baseline DCT-based JPEG, and specifies the width, height, number of components, and component subsampling (e.g., 4:2:0).
SOF2 0xFFC2 variable size Start Of Frame (Progressive DCT) Indicates that this is a progressive DCT-based JPEG, and specifies the width, height, number of components, and component subsampling (e.g., 4:2:0).
DHT 0xFFC4 variable size Define Huffman Table(s) Specifies one or more huffman tables.
DQT 0xFFDB variable size Define Quantization Table(s) Specifies one or more quantization tables.
DRI 0xFFDD 2 bytes Define Restart Interval Specifies the interval between RSTn markers, in macroblocks.
SOS 0xFFDA variable size Start Of Scan Begins a top-to-bottom scan of the image. In baseline DCT JPEG images, there is generally a single scan. Progressive DCT JPEG images usually contain multiple scans. This marker specifies which slice of data it will contain, and is immediately followed by entropy-coded data.
RSTn 0xFFDn variable size Restart Inserted every r macroblocks, where r is the restart interval set by a DRI marker. Not used if there was no DRI marker. n, the low 4 bits of the marker code, cycles from 0 to 7.
APPn 0xFFEn variable size Application-specific For example, an Exif JPEG file uses an APP1 marker to store metadata, laid out in a structure based closely on TIFF.
COM 0xFFFE variable size Comment Contains a text comment.
EOI 0xFFD9 none End Of Image

There are other Start Of Frame markers which introduce other kinds of JPEG. Exchangeable image file format (Exif) is a specification for the image file format used by digital cameras. ... This article is about TIFF, the computer image format. ...


Since several vendors might use the same APPn marker type, application-specific markers often begin with a standard or vendor name (e.g., "Exif" or "Adobe") or some other identifying string.


At a restart marker, block-to-block predictor variables are reset, and the bitstream is synchronized to a byte boundary. Restart markers provide means for recovery after bitstream error. Since the runs of macroblocks between restart markers may be independently decoded, these runs may be decoded in parallel.


Required precision

The JPEG encoding does not fix the precision needed for the output compressed image. On the contrary, the JPEG standard (as well as the derived MPEG standards) have very strict precision requirements for the decoding, including all parts of the decoding process (variable length decoding, inverse DCT, dequantization, renormalization of outputs); the output from the reference algorithm must not exceed:

  • a maximum 1 bit of difference for each pixel component
  • low mean square error over each 8×8-pixel block
  • very low mean error over each 8×8-pixel block
  • very low mean square error over the whole image
  • extremely low mean error over the whole image

These assertions are tested on a large set of randomized input images, to handle the worst cases. Look at the IEEE 1880-1990 standard for reference. This has a consequence on the implementation of decoders, and it is extremely critical because some encoding processes (notably used for encoding sequences of images like MPEG) need to be able to construct, on the encoder side, a reference decoded image. In order to support 8-bit precision per pixel component output, dequantization and inverse DCT transforms are typically implemented with at least 14-bit precision in optimized decoders.


Lossless editing

A number of alterations can be performed to a JPEG image without any quality loss. Blocks can be rotated in 90 degree increments, flipped in the horizontal vertical and diagonal axes and moved about in the image. Not all blocks from the original image need to be used in the modified one.


The top and left of a JPEG image must lie on a block boundary, but the bottom and right need not do so. This limits the possible lossless crop operations, and also what flips and rotates can be performed on an image whose edges do not lie on a block boundary for all channels.


It is also possible to transform between baseline and progressive formats without any loss of quality, since the only difference is the order in which the coefficients are placed in the file.


Furthermore, if a JPEG is decompressed, edited, and then recompressed using the same chroma subsampling and quantisation tables, then unedited areas of the image should have minimal quality loss.


When using lossless cropping, if the bottom or right side of the crop region is not on a block boundary then the rest of the data from the partially used blocks will still be present in the cropped file and can be recovered relatively easily by anyone with a hex editor and an understanding of the format.


JPEG Interchange Format file format

Image File history File links This is a lossless scalable vector image. ...

Shortcomings

The JPEG Interchange Format suffers from three shortcomings which prevent it from being easily understood:

  • Color Space definition
  • Component Sub-Sampling Registration definition
  • Pixel Aspect Ratio definition

Several further standards have attempted to rectify this situation. These include, 'JPEG File Interchange Format' (JFIF), 'Exchangeable image file format' (Exif) and ICC color profiles. A photo of a flower compressed with successively higher compression ratios from left to right. ... Exchangeable image file format (official abbreviation Exif, not EXIF[1]) is a specification for the image file format used by digital cameras. ... The International Color Consortium was formed in 1993 by eight industry vendors in order to create a universal color management system that would function transparently across all operating systems and software packages. ... ICC (International Color Consortium) Profiles describe the color attributes of a particular device or viewing requirement by defining a mapping between the source or target color space and a profile connection space (PCS). ...


Color profile

Many JPEG files embed an ICC color profile (color space). Commonly used color profiles include sRGB and Adobe RGB. Because these color spaces use a non-linear transformation, the dynamic range of an 8-bit JPEG file is about 11 stops. A comparison of different color spaces. ... CIE 1931 xy chromaticity diagram showing the gamut of the sRGB color space and location of the primaries. ... The Adobe RGB color space is an RGB color space developed by Adobe Systems in 1998. ... For other uses, see Dynamic range (disambiguation). ... A 35mm lens set to f/11, as indicated by the white dot above the f-stop scale on the aperture ring In photography the f-number (focal ratio) expresses the diameter of the diaphragm aperture in terms of the effective focal length of the lens. ...


Usage

JPEG is at its best on photographs and paintings of realistic scenes with smooth variations of tone and color. In this case it usually performs much better than purely lossless methods while still giving a good looking image. In fact, it will usually produce much better results for such images than, for example, GIF, which can be lossless as long as the image contains 256 or fewer unique colors but requires severe quantization for full-color images. Quantization, involved in image processing. ...


Some operations on JPEG images, such as rotation by multiples of 90°, can be performed losslessly as long as the image size is a multiple 1 MCU block (usually 16 pixels in both directions, for 4:2:0). One program which can do this is the jpegtran utility which comes with the reference implementation. libjpeg is a library of computer programs created by the Independent JPEG Group which contain functions to manipulate JPEG images. ...


Photographs

JPEG compression artifacts blend well into photographs with detailed non-uniform textures, allowing higher compression ratios. Notice how a higher compression ratio first affects the high-frequency textures in the upper-left corner of the image, and how the contrasting lines become more fuzzy. The very high compression ratio severely affects the quality of the image, although the overall colors and image form are still recognizable. However, the precision of colors suffer less (for a human eye) than the precision of contours (based on luminance). This justifies the fact that images should be first transformed in a color model separating the luminance from the chromatic information, before subsampling the chromatic planes (which may also use lower quality quantization) in order to preserve the precision of the luminance plane with more information bits.


For information, the uncompressed 24-bit RGB bitmap image below (73,242 pixels) would require 219,726 bytes (excluding all other information headers). The filesizes indicated below include the internal JPEG information headers and some meta-data. For full quality images (Q=100), about 8.25 bits per color pixel is required. On grayscaled images, a minimum of 6.5 bits per pixel is enough (a comparable Q=100 quality color information requires about 25% more encoded bits). The full quality image below (Q=100) is encoded at 9 bits per color pixel, the medium quality image (Q=25) uses 1 bit per color pixel. For most applications, the quality factor should not go below 0.75 bit per pixel (Q=12.5), as demonstrated by the low quality image. The image at lowest quality uses only 0.13 bit per pixel, and displays very poor color, it could only be usable after subsampling to a much lower display size.

NOTE: The above images are not IEEE / CCIR / EBU test images, and the encoder settings are not specified or available.
Image "Quality" Size (bytes) Comment
Full quality (Q = 100) 83,261 Extremely minor artifacts
Average quality (Q = 50) 15,138 Initial signs of subimage artifacts
Medium quality (Q = 25) 9,553 Stronger artifacts; loss of high resolution information
Low quality (Q = 10) 4,787 Severe high frequency loss; subimage boundaries are obvious
Lowest quality (Q = 1) 1,523 Extreme loss of color and detail; leaves nearly unrecognizable

The mid-quality photo uses only one sixth the storage space but has little noticeable loss of detail or visible artifacts. However, once a certain threshold of compression is passed, compressed images show increasingly visible defects. See the article on rate distortion theory for a mathematical explanation of this threshold effect. Not to be confused with the Institution of Electrical Engineers (IEE). ... The ITU Radiocommunication Sector (ITU-R) is a standards body subcommittee of the International Telecommunication Union (ITU) relating to radio communication. ... “EBU” redirects here. ... In order to intuitively test the effects of an image-processing algorithm on a natural picture a number of test images are in common use in the image-processing field. ... Image File history File links JPEG_example_JPG_RIP_100. ... Image File history File links JPEG_example_JPG_RIP_050. ... Image File history File links JPEG_example_JPG_RIP_025. ... Image File history File links JPEG_example_JPG_RIP_010. ... Image File history File links JPEG_example_JPG_RIP_001. ... Rate distortion theory is the branch of information theory addressing the problem of determining the minimal amount of entropy (or information) R that should be communicated over a channel such that the source (input signal) can be reconstructed at the receiver (output signal) with given distortion D. As such, rate...


Medical imaging: JPEG's 12-bit mode

There are many medical imaging systems that create and process 12-bit JPEG images. The 12-bit JPEG format has been part of the JPEG specification for some time, but very few consumer programs (including web browsers) support this rarely used JPEG format.


Potential patent issues

In 2002 Forgent Networks asserted that it owned and would enforce patent rights on the JPEG technology, arising from a patent that had been filed on October 27, 1986, and granted on October 6, 1987 (U.S. Patent 4,698,672 ). The announcement created a furor reminiscent of Unisys' attempts to assert its rights over the GIF image compression standard. Also see: 2002 (number). ... Forgent Networks is a software company that specializes in meeting and scheduling programs. ... For other uses, see Patent (disambiguation). ... is the 300th day of the year (301st in leap years) in the Gregorian calendar. ... Year 1986 (MCMLXXXVI) was a common year starting on Wednesday (link displays 1986 Gregorian calendar). ... is the 279th day of the year (280th in leap years) in the Gregorian calendar. ... Year 1987 (MCMLXXXVII) was a common year starting on Thursday (link displays 1987 Gregorian calendar). ... Unisys Corporation (NYSE: UIS), based in Blue Bell, Pennsylvania, United States, and incorporated in Delaware[3], is a global provider of information technology services and solutions. ...


The JPEG committee investigated the patent claims in 2002 and were of the opinion that they were invalidated by prior art.[2] Others also concluded that Forgent did not have a patent that covered JPEG.[3] Nevertheless, between 2002 and 2004 Forgent was able to obtain about US$105 million by licensing their patent to some 30 companies. In April 2004, Forgent sued 31 other companies to enforce further license payments. In July of the same year, a consortium of 21 large computer companies filed a countersuit, with the goal of invalidating the patent. In contrast to other major computer companies such as Sony and Philips, Microsoft launched a major lawsuit against Forgent. In February 2006, the United States Patent and Trademark Office agreed to re-examine Forgent's JPEG patent at the request of the Public Patent Foundation.[4] On May 26, 2006 the USPTO found the patent invalid based on prior art. The USPTO also found that Forgent knew about the prior art, and did not tell the Patent Office, making any appeal to reinstate the patent highly unlikely to succeed.[5] This article or section cites very few or no references or sources. ... Also see: 2002 (number). ... Year 2004 (MMIV) was a leap year starting on Thursday of the Gregorian calendar. ... PTO headquarters in Alexandria The United States Patent and Trademark Office (PTO or USPTO) is an agency in the United States Department of Commerce that provides patent and trademark protection to inventors and businesses for their inventions and corporate and product identification. ... Public Patent Foundation, or PUBPAT, is a nonprofit organization that seeks to limit perceived abuse of the U.S. Patent system. ... is the 146th day of the year (147th in leap years) in the Gregorian calendar. ... Year 2006 (MMVI) was a common year starting on Sunday of the Gregorian calendar. ... This article or section cites very few or no references or sources. ...


Forgent also possesses a similar patent granted by the European Patent Office in 1994, though it is unclear how enforceable it is.[6]


As of October 27, 2006, the U.S. patent's 20-year term appears to have expired, and in November 2006, Forgent agreed to abandon enforcement of patent claims against use of the JPEG standard.[7] is the 300th day of the year (301st in leap years) in the Gregorian calendar. ... Year 2006 (MMVI) was a common year starting on Sunday of the Gregorian calendar. ...


The JPEG committee has as one of its explicit goals that their standards (in particular their baseline methods) be implementable without payment of license fees, and they have secured appropriate license rights for their upcoming JPEG 2000 standard from over 20 large organizations. JPEG 2000 is a wavelet-based image compression standard. ...


On September 27, 2007, another company, Global Patent Holdings, claims their patent (U.S. Patent 5,253,341 ), is for the downloading of JPEG images on either a website or through e-mail. In its first lawsuit it has named Green Bay Packers, CDW, Motorola, Apple, Orbitz, Officemax, Caterpillar, Kraft and Peapod as defendants. This patent is alarming as it applies to any website that displays JPG images. Niro, Scavone, Haller & Niro is the lawfirm that is representing the Global.


Standards

  • JPEG (lossy and lossless): ITU-T T.81, ISO/IEC IS 10918-1
  • JPEG (extensions): ITU-T T.84
  • JPEG-LS (lossless, improved): ITU-T T.87, ISO/IEC IS 14495-1
  • JBIG (black and white pictures): ITU-T T.82, ISO/IEC IS 11544-1
  • JPEG 2000 (successor of JPEG/JPEG-LS): ITU-T T.800, ISO/IEC IS 15444-1
  • JPEG-2000 (extensions): ITU-T T.801

faldfjajsldfkja;sdfkja;dkjfasdf;j ... JBIG is a lossless image compression standard from the Joint Bi-level Image Experts Group, standardized as ISO/IEC standard 11544 and as ITU-T recommendation T.82. ... JPEG 2000 is a wavelet-based image compression standard. ...

See also

Image compression is the application of Data compression on digital images. ... Image file formats provide a standardized method of organizing and storing image data. ... This is a comparison of graphics file formats. ... Windows Picture and Fax Viewer is an image viewer. ... Exchangeable image file format (official abbreviation Exif, not EXIF[1]) is a specification for the image file format used by digital cameras. ... A photo of a flower compressed with successively higher compression ratios from left to right. ... Design rule for Camera File system (DCF) is an ISO specification which defines the file system for digital cameras, including the directory structure, file naming method, character set and file format. ... JPEG 2000 is a wavelet-based image compression standard. ... Motion JPEG, also known as M-JPEG, is a video file format consisting of a sequence of individual JPEG images; unlike other video compression algorithms, each frame is an image unto itself. ... Graphics editing programs allow users to edit or modify images using various tools/options. ... The Graphics Device Interface (GDI, sometimes called Graphical Device Interface) is one of the three core components or subsystems, together with the kernel and the user (window manager), of Microsoft Windows. ... The following tables compare graphics compatibility and support for a number of layout engines. ... Generation loss refers to the loss of quality between subsequent copies of data. ... PGF (Progressive Graphics File) is a wavelet-based bitmapped image format that employs lossless and lossy data compression. ... PNG may stand for: Persona non grata, literally meaning an unwelcome person, is a term used in diplomacy with a specialised and legally defined meaning. ... Disambiguation For Felix the cat cartoon strip, see Felix the cat. ... libjpeg is a library created by the Independent JPEG Group [1] which contain functions to manipulate JPEG images. ... A deblocking filter is applied to blocks in decoded video to improve visual quality and prediction performance by smoothing the sharp edges which can form between blocks when block coding techniques are used. ... Image of Lena Söderberg famously used in many image processing experiments. ...

References

  1. ^ Tom Lane (1999-03-29). JPEG image compression FAQ. Retrieved on 2007-09-11. (q. 14: "Why all the argument about file formats?")
  2. ^ Concerning recent patent claims
  3. ^ JPEG and JPEG2000 - Between Patent Quarrel and Change of Technology (Archive)
  4. ^ Trademark Office Re-examines Forgent JPEG Patent. Publish.com (February 3, 2006). Retrieved on 2007-07-21.
  5. ^ USPTO: Broadest Claims Forgent Asserts Against JPEG Standard Invalid. Groklaw.net (May 26, 2006). Retrieved on 2007-07-21.
  6. ^ Coding System for Reducing Redundancy
  7. ^ JPEG Patent Claim Surrendered. Public Patent Foundation (November 2, 2006). Retrieved on 2006-11-03.

This article is about the year. ... is the 88th day of the year (89th in leap years) in the Gregorian calendar. ... Year 2007 (MMVII) is the current year, a common year starting on Monday of the Gregorian calendar and the AD/CE era in the 21st century. ... is the 254th day of the year (255th in leap years) in the Gregorian calendar. ... is the 34th day of the year in the Gregorian calendar. ... Year 2006 (MMVI) was a common year starting on Sunday of the Gregorian calendar. ... Year 2007 (MMVII) is the current year, a common year starting on Monday of the Gregorian calendar and the AD/CE era in the 21st century. ... is the 202nd day of the year (203rd in leap years) in the Gregorian calendar. ... is the 146th day of the year (147th in leap years) in the Gregorian calendar. ... Year 2006 (MMVI) was a common year starting on Sunday of the Gregorian calendar. ... Year 2007 (MMVII) is the current year, a common year starting on Monday of the Gregorian calendar and the AD/CE era in the 21st century. ... is the 202nd day of the year (203rd in leap years) in the Gregorian calendar. ... is the 306th day of the year (307th in leap years) in the Gregorian calendar. ... Year 2006 (MMVI) was a common year starting on Sunday of the Gregorian calendar. ... Year 2006 (MMVI) was a common year starting on Sunday of the Gregorian calendar. ... is the 307th day of the year (308th in leap years) in the Gregorian calendar. ...

External links


  Results from FactBites:
 
Independent JPEG Group (121 words)
IJG is an informal group that writes and distributes a widely used free library for JPEG image compression.
This is a stable and solid foundation for many application's JPEG support.
The ISO JPEG standards committee has their own web site.
JPEG - Wikipedia, the free encyclopedia (2198 words)
JPEG is used for lossy compression of images, although, variations on the standard baseline JPEG allow for lossless compression.
JPEG itself specifies only how an image is transformed into a stream of bytes, but not how those bytes are encapsulated in any particular storage medium.
The JPEG committee has as one of its explicit goals that their standards (in particular their baseline methods) be implementable without payment of license fees, and they have secured appropriate license rights for their upcoming JPEG 2000 standard from over 20 large organizations.
  More results at FactBites »

 
 

COMMENTARY     


Share your thoughts, questions and commentary here
Your name
Your comments

Want to know more?
Search encyclopedia, statistics and forums:

 


Press Releases |  Feeds | Contact
The Wikipedia article included on this page is licensed under the GFDL.
Images may be subject to relevant owners' copyright.
All other elements are (c) copyright NationMaster.com 2003-5. All Rights Reserved.
Usage implies agreement with terms, 1022, m