Jpeg Format
Jpeg Format
JPEG
From Wikipedia, the free encyclopedia
In computing, JPEG ( /ˈdʒeɪpɛɡ/ [pronounced as jay-peg] is a commonly used method of lossy compression for Joint Photographic Experts Group
digital photography (image). The degree of compression can be adjusted, allowing a selectable tradeoff between
storage size and image quality. JPEG typically achieves 10:1 compression with little perceptible loss in image quality.
JPEG compression is used in a number of image file formats. JPEG/Exif is the most common image format used by
digital cameras and other photographic image capture devices; along with JPEG/JFIF, it is the most common format
for storing and transmitting photographic images on the World Wide Web.[citation needed] These format variations are
often not distinguished, and are simply called JPEG.
The term "JPEG" is an acronym for the Joint Photographic Experts Group which created the standard. The MIME
media type for JPEG is image/jpeg (defined in RFC 1341), except in Internet Explorer, which provides a MIME type
of image/pjpeg when uploading JPEG images.[1]
The JPEG standard specifies the codec, which defines how an image is compressed into a stream of bytes and decompressed back into an image, but not the file format
used to contain that stream.[8] The Exif and JFIF standards define the commonly used file formats for interchange of JPEG-compressed images.
JPEG standards are formally named as Information technology – Digital compression and coding of continuous-tone still images. ISO/IEC 10918 consists of the
following parts:
http://en.wikipedia.org/wiki/JPEG 08/04/2012
JPEG - Wikipedia, the free encyclopedia Pagina 2 di 13
Ecma International TR/98 specifies the JPEG File Interchange Format (JFIF); the first edition was published in June 2009.[11]
Typical usage
The JPEG compression algorithm is at its best on photographs and paintings of realistic scenes with smooth variations of tone and color. For web usage, where the
amount of data used for an image is important, JPEG is very popular. JPEG/Exif is also the most common format saved by digital cameras.
On the other hand, JPEG may not be as well suited for line drawings and other textual or iconic graphics, where the sharp contrasts between adjacent pixels can cause
noticeable artifacts. Such images may be better saved in a lossless graphics format such as TIFF, GIF, PNG, or a raw image format. The JPEG standard actually
includes a lossless coding mode, but that mode is not supported in most products.
As the typical use of JPEG is a lossy compression method, which somewhat reduces the image fidelity, it should not be used in scenarios where the exact reproduction
of the data is required (such as some scientific and medical imaging applications and certain technical image processing work).
JPEG is also not well suited to files that will undergo multiple edits, as some image quality will usually be lost each time the image is decompressed and recompressed,
particularly if the image is cropped or shifted, or if encoding parameters are changed – see digital generation loss for details. To avoid this, an image that is being
modified or may be modified in the future can be saved in a lossless format, with a copy exported as JPEG for distribution.
JPEG compression
The compression method is usually lossy, meaning that some original image information is lost and cannot be restored,
possibly affecting image quality. There is an optional lossless mode defined in the JPEG standard; however, this mode is not
widely supported in products.
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 while downloading over a slow connection, allowing a
reasonable preview after receiving only a portion of the data. However, progressive JPEGs are not as widely supported,
[citation needed]
and even some software which does support them (such as versions of Internet Explorer before Windows 7)[12]
only displays the image after it has been completely downloaded.
http://en.wikipedia.org/wiki/JPEG 08/04/2012
JPEG - Wikipedia, the free encyclopedia Pagina 3 di 13
There are also many medical imaging and traffic systems that create and process 12-bit JPEG images, normally grayscale
images. The 12-bit JPEG format has been part of the JPEG specification for some time, but again, this format is not as
widely supported.
Lossless editing
A number of alterations to a JPEG image can be performed losslessly (that is, without recompression and the associated
quality loss) as long as the image size is a multiple of 1 MCU block (Minimum Coded Unit) (usually 16 pixels in both
directions, for 4:2:0 chroma subsampling). Utilities that implement this include jpegtran, with user interface Jpegcrop, and
the JPG_TRANSFORM plugin to IrfanView.
A chart showing the relative quality of
Blocks can be rotated in 90 degree increments, flipped in the horizontal, vertical and diagonal axes and moved about in the various JPEG encoding settings and also
image. Not all blocks from the original image need to be used in the modified one. compares saving a file as a JPEG normally
and using Photoshop's "save for web"
The top and left edge of a JPEG image must lie on a block boundary, but the bottom and right edge need not do so. This option
limits the possible lossless crop operations, and also prevents flips and rotations of an image whose bottom or right edge
does not lie on a block boundary for all channels (because the edge would end up on top or left, where – as aforementioned
– a block boundary is obligatory).
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.
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.
JPEG files
The file format known as "JPEG Interchange Format" (JIF) is specified in Annex B of the standard. However, this "pure" file format is rarely used, primarily because of
the difficulty of programming encoders and decoders that fully implement all aspects of the standard and because of certain shortcomings of the standard:
Several additional standards have evolved to address these issues. The first of these, released in 1992, was JPEG File Interchange Format (or JFIF), followed in recent
years by Exchangeable image file format (Exif) and ICC color profiles. Both of these formats use the actual JIF byte layout, consisting of different markers, but in
addition employ one of the JIF standard's extension points, namely the application markers: JFIF use APP0, while Exif use APP1. Within these segments of the file,
that were left for future use in the JIF standard and aren't read by it, these standards add specific metadata.
Thus, in some ways JFIF is a cutdown version of the JIF standard in that it specifies certain constraints (such as not allowing all the different encoding modes), while in
other ways it is an extension of JIF due to the added metadata. The documentation for the original JFIF standard states:[13]
JPEG File Interchange Format is a minimal file format which enables JPEG bitstreams to be exchanged between a wide variety of platforms and applications.
This minimal format does not include any of the advanced features found in the TIFF JPEG specification or any application specific file format. Nor should it, for
the only purpose of this simplified format is to allow the exchange of JPEG compressed images.
Image files that employ JPEG compression are commonly called "JPEG files", and are stored in variants of the JIF image format. Most image capture devices (such as
digital cameras) that output JPEG are actually creating files in the Exif format, the format that the camera industry has standardized on for metadata interchange. On the
other hand, since the Exif standard does not allow color profiles, most image editing software stores JPEG in JFIF format, and also include the APP1 segment from the
Exif file to include the metadata in an almost-compliant way; the JFIF standard is interpreted somewhat flexibly.[14]
Strictly speaking, the JFIF and Exif standards are incompatible because they each specify that their marker segment (APP0 or APP1, respectively) appears first. In
practice, most JPEG files contain a JFIF marker segment that precedes the Exif header. This allows older readers to correctly handle the older format JFIF segment,
while newer readers also decode the following Exif segment, being less strict about requiring it to appear first.
The most common filename extensions for files employing JPEG compression are .jpg and .jpeg, though .jpe, .jfif and .jif are also used. It is also possible for JPEG data
to be embedded in other file types – TIFF encoded files often embed a JPEG image as a thumbnail of the main image; and MP3 files can contain a JPEG of cover art, in
the ID3v2 tag.
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; see gamma curve.
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, preventing framing errors. Decoders must skip this 0x00 byte. This technique, called byte stuffing (see JPEG specification section F.1.2.3), is only applied to
the entropy-coded data, not to marker payload data.
http://en.wikipedia.org/wiki/JPEG 08/04/2012
JPEG - Wikipedia, the free encyclopedia Pagina 4 di 13
There are other Start Of Frame markers that introduce other kinds of JPEG encodings.
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, such as transmission over an unreliable network or file corruption. Since the runs of macroblocks between restart markers may be independently
decoded, these runs may be decoded in parallel.
1. The representation of the colors in the image is converted from RGB to Y′CBCR, consisting of one luma component (Y'), representing brightness, and two chroma
components, (CB and CR), representing color. This step is sometimes skipped.
2. The resolution of the chroma data is reduced, usually by a factor of 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
to the strength of high-frequency brightness variations. Therefore, the magnitudes 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 on a scale of 0–100 in the Independent JPEG Group's library[16]) affects to
what extent the resolution of each frequency component is reduced. If an excessively low quality setting is used, the high-frequency components are discarded
altogether.
5. The resulting data for all 8×8 blocks is further compressed with a lossless algorithm, a variant of Huffman encoding.
The decoding process reverses these steps, except the quantization because it is irreversible. In the remainder of this section, the encoding and decoding processes are
described in more detail.
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 among 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.[citation needed]
First, the image should be converted from RGB into a different color space called Y′CBCR (or, informally, YCbCr). It has three components Y', CB and CR: the Y'
component represents the brightness of a pixel, and the CB and CR components represent the chrominance (split into blue and red components). This is basically the
same color space as used by digital color television as well as digital video including video DVDs, and is similar to the way color is represented in analog PAL video
and MAC (but not by analog NTSC, which uses the YIQ color space). The Y′CBCR color space conversion allows greater compression without a significant effect on
perceptual image quality (or greater perceptual image quality for the same compression). The compression is more efficient because the brightness information, which is
more important to the eventual perceptual quality of the image, is confined to a single channel. This more closely corresponds to the perception of color in the human
visual system. The color transformation also improves compression by statistical decorrelation.
A particular conversion to Y′CBCR is specified in the JFIF standard, and should be performed for the resulting JPEG file to have maximum compatibility. However,
some JPEG implementations in "highest quality" mode do not apply this step and instead keep the color information in the RGB color model[citation needed], where the
image is stored in separate channels for red, green and blue brightness components. This results in less efficient compression, and would not likely be used when file
size is especially important.
Downsampling
http://en.wikipedia.org/wiki/JPEG 08/04/2012
JPEG - Wikipedia, the free encyclopedia Pagina 5 di 13
Due to the densities of color- and brightness-sensitive receptors in the human eye, humans can see considerably more fine detail in the brightness of an image (the Y'
component) than in the hue and color saturation of an image (the Cb and Cr components). Using this knowledge, encoders can be designed to compress images more
efficiently.
The transformation into the Y′CBCR color model enables the next usual step, which is to reduce the spatial resolution of the Cb and Cr components (called
"downsampling" or "chroma subsampling"). The ratios at which the downsampling is ordinarily done for JPEG images are 4:4:4 (no downsampling), 4:2:2 (reduction
by a factor of 2 in the horizontal direction), or (most commonly) 4:2:0 (reduction by a factor of 2 in both the horizontal and vertical directions). For the rest of the
compression process, Y', Cb and Cr are processed separately and in a very similar manner.
Block splitting
After subsampling, each channel must be split into 8×8 blocks. Depending on chroma subsampling, this yields (Minimum Coded Unit) MCU blocks of size 8×8 (4:4:4 –
no subsampling), 16×8 (4:2:2), or most commonly 16×16 (4:2:0). In video compression MCUs are called macroblocks.
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. Filling the edges with a fixed color (for example, black) can create ringing artifacts along the visible part of the border; repeating the edge pixels is a
common technique that reduces (but does not necessarily completely eliminate) such artifacts, and more sophisticated border filling techniques can also be applied.
Next, each 8×8 block of each component (Y, Cb, Cr) is converted to a frequency-domain representation, using a
normalized, two-dimensional type-II discrete cosine transform (DCT).
The next step is to take the two-dimensional DCT, which is given by:
where
http://en.wikipedia.org/wiki/JPEG 08/04/2012
JPEG - Wikipedia, the free encyclopedia Pagina 6 di 13
Note the top-left corner entry with the rather large magnitude. This is the DC coefficient. The remaining 63 coefficients are called the AC coefficients. 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 overall size of the DCT coefficients, resulting in a signal that is easy to compress efficiently in the entropy stage.
The DCT temporarily increases the bit-depth of the data, since the DCT coefficients of an 8-bit/component image take up to 11 or more 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 size of the image representation at this
point; they are typically reduced back to 8-bit values by the quantization step. 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 image encoding or decoding process.
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 allows one to greatly reduce 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 rounding operation is the only lossy operation in the whole
process if the DCT computation is performed with sufficiently high precision. 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 represent.
where is the unquantized DCT coefficients; is the quantization matrix above; and is the quantized DCT coefficients.
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
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.
The JPEG standard also allows, but does not require, decoders to support the use of arithmetic coding, which is mathematically
superior to Huffman coding. However, this feature has rarely been used as it was historically covered by patents requiring
royalty-bearing licenses, and because it is slower to encode and decode compared to Huffman coding. Arithmetic coding
typically makes files about 5–7% smaller.
The previous quantized DC coefficient is used to predict the current quantized DC coefficient. The difference between the two is
encoded rather than the actual value. The encoding of the 63 quantized AC coefficients does not use such prediction
differencing.
The zigzag sequence for the above quantized coefficients are shown below. (The format shown is just for ease of
understanding/viewing.)
http://en.wikipedia.org/wiki/JPEG 08/04/2012
JPEG - Wikipedia, the free encyclopedia Pagina 7 di 13
−26
−3 0
−3 −2 −6
2 −4 1 −3
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 Zigzag ordering of JPEG image
0 0 0 0 components
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.
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(2,0)-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.
Baseline sequential JPEG encoding and decoding processes
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.
−26
−3 0
−3 −2 −6
2 −4 1 −3
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 precede 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 preceded 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.
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.
Those who use the World Wide Web may be familiar with the irregularities known as compression artifacts that appear in
JPEG images, which may take the form of noise around contrasting edges (especially curves and corners), or blocky
images, commonly known as 'jaggies'. These are due to the quantization step of the JPEG algorithm. They are especially
noticeable around sharp corners between contrasting colors (text is a good example as it contains many such corners). The
analogous artifacts in MPEG video are referred to as mosquito noise, as the resulting "edge busyness" and spurious dots,
which change over time, resemble mosquitoes swarming around the object.[17][18]
These artifacts 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. The images created with
ray-tracing programs have noticeable blocky shapes on the terrain. Certain low-intensity compression artifacts might be
acceptable when simply viewing the images, but can be emphasized if the image is subsequently processed, usually This image shows the pixels that are
resulting in unacceptable quality. Consider the example below, demonstrating the effect of lossy compression on an edge different between a non-compressed image
detection processing step. and the same image JPEG compressed with
a quality setting of 50. Darker means a
larger difference. Note especially the
changes occurring near sharp edges and
having a block-like shape.
http://en.wikipedia.org/wiki/JPEG 08/04/2012
JPEG - Wikipedia, the free encyclopedia Pagina 8 di 13
Original
Processed by
Canny edge detector
Some programs allow the user to vary the amount by which individual blocks are compressed. Stronger compression is applied to The compressed 8×8-squares are
areas of the image that show fewer artifacts. This way it is possible to manually reduce JPEG file size with less loss of quality. visible in the scaled up picture,
together with other visual
JPEG artifacts, like pixelation, are occasionally intentionally exploited for artistic purposes, as in Jpegs, by German photographer artifacts of the lossy
Thomas Ruff.[19][20] compression.
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 External images
matrix is a matrix of ones, information will still be lost in the rounding step.
Illustration of edge busyness
Decoding (http://i.cmpnet.com/videsignline/2006/02/algolith
-fig2.jpg) .[17]
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
which closely resembles the original DCT coefficient matrix for the top-left portion.
The next step is to take the two-dimensional inverse DCT (a 2D type-III DCT), which is given by:
where
Rounding the output to integer values (since the original had integer values) results in an image with values (still shifted down by 128)
http://en.wikipedia.org/wiki/JPEG 08/04/2012
JPEG - Wikipedia, the free encyclopedia Pagina 9 di 13
This is the decompressed subimage. In general, the decompression process may produce values outside of the original input range of
. If this occurs, the decoder needs to clip the output values keep them within that range to prevent overflow when storing the
decompressed image with the original bit depth.
The decompressed subimage can be compared to the original subimage (also see images to the right) by taking the difference (original
− uncompressed) results in the following error values:
The error is most noticeable in the bottom-left corner where the bottom-left pixel becomes darker than the pixel to its immediate right.
Required precision
The encoding description in the JPEG standard does not fix the precision needed for the output compressed image. However, the JPEG standard (and the similar MPEG
standards) includes some 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:
These assertions are tested on a large set of randomized input images, to handle the worst cases. The former IEEE 1180–1990 standard contained some similar precision
requirements. The precision has a consequence on the implementation of decoders, and it is 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.
Sample photographs
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 highest quality images (Q=100), about 8.25 bits per color pixel is
required. On grayscale 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
highest 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.
http://en.wikipedia.org/wiki/JPEG 08/04/2012
JPEG - Wikipedia, the free encyclopedia Pagina 10 di 13
Size Compression
Image Quality Comment
(bytes) ratio
Highest quality
83,261 2.6:1 Extremely minor artifacts
(Q = 100)
High quality
15,138 15:1 Initial signs of subimage artifacts
(Q = 50)
Medium quality
9,553 23:1 Stronger artifacts; loss of high frequency information
(Q = 25)
Lowest quality Extreme loss of color and detail; the leaves are nearly
1,523 144:1
(Q = 1) unrecognizable
Note: The above images are not IEEE / CCIR / EBU test images, and the encoder settings are not specified or available.
The medium quality photo uses only 4.3% of the storage space required for the uncompressed image, 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. A particular limitation of JPEG in this regard is its non-overlapped 8×8 block transform structure. More modern designs such as
JPEG 2000 and JPEG XR exhibit a more graceful degradation of quality as the bit usage decreases – by using transforms with a larger spatial extent for the lower
frequency coefficients and by using overlapping transform basis functions.
Typically, such schemes take advantage of improvements to the naive scheme for coding DCT coefficients, which fails to take into account:
http://en.wikipedia.org/wiki/JPEG 08/04/2012
JPEG - Wikipedia, the free encyclopedia Pagina 11 di 13
■ The DC coefficients when taken together resemble a downscale version of the original image multiplied by a scaling factor. Well-known schemes for lossless
coding of continuous-tone images can be applied, achieving somewhat better compression than the Huffman coded DPCM used in JPEG.
Some standard but rarely-used options already exist in JPEG to improve the efficiency of coding DCT coefficients: the arithmetic coding option, and the progressive
coding option (which produces lower bitrates because values for each coefficient are coded independently, and each coefficient has a significantly different
distribution). Modern methods have improved on these techniques by reordering coefficients to group coefficients of larger magnitude together;[21] using adjacent
coefficients and blocks to predict new coefficient values;[23] dividing blocks or coefficients up among a small number of independently coded models based on their
statistics and adjacent values;[22][23] and most recently, by decoding blocks, predicting subsequent blocks in the spatial domain, and then encoding these to generate
predictions for DCT coefficients.[24]
Typically, such methods can compress existing JPEG files between 15 and 25 percent, and for JPEGs compressed at low-quality settings, can produce improvements of
up to 65%.[23][24]
A freely-available tool called packJPG[25] is based on the 2007 paper "Improved Redundancy Reduction for JPEG Files." There are also at least two companies selling
proprietary tools with similar capabilities, Infima's JPACK[26] and Smith Micro Software's StuffIt,[27] both of which claim to have pending patents on their respective
technologies.[28][29]
JPEG Stereoscopic (JPS, extension .jps) is a JPEG-based format for stereoscopic images.[30][31] It has a range of configurations stored in the JPEG APP3 marker field,
but usually contains one image of double width, representing two images of identical size in cross-eyed (i.e. left frame on the right half of the image and vice versa) side
-by-side arrangement. This file format can be viewed as a JPEG without any special software, or can be processed for rendering in other modes.
JPEG Multi-Picture Format (MPO, extension .mpo) is a JPEG-based format for multi-view images. It contains two or more JPEG files concatenated together.[32][33]
There are also special EXIF fields describing its purpose. This is used by the Fujifilm FinePix Real 3D W1 camera, Panasonic Lumix DMC-TZ20, Sony DSC-HX7V,
HTC Evo 3D, the JVC GY-HMZ1U AVCHD/MVC extension camcorder and by the Nintendo 3DS for its 3D Camera.
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 (http://www.google.com/patents?vid=4698672) ). The announcement created a furor reminiscent of
Unisys' attempts to assert its rights over the GIF image compression standard.
The JPEG committee investigated the patent claims in 2002 and were of the opinion that they were invalidated by prior art.[34] Others also concluded that Forgent did
not have a patent that covered JPEG.[35] 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 addition, Microsoft launched a separate lawsuit against Forgent in April 2005.[36] 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.[37] 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.[38]
Forgent also possesses a similar patent granted by the European Patent Office in 1994, though it is unclear how enforceable it is.[39]
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.[40]
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.
Beginning in August 2007, another company, Global Patent Holdings, LLC claimed that its patent (U.S. Patent 5,253,341 (http://www.google.com/patents?
vid=5253341) ) issued in 1993, is infringed by the downloading of JPEG images on either a website or through e-mail. If not invalidated, this patent could apply to any
website that displays JPEG images. The patent emerged in July 2007 following a seven-year reexamination by the U.S. Patent and Trademark Office in which all of the
original claims of the patent were revoked, but an additional claim (claim 17) was confirmed.[41]
In its first two lawsuits following the reexamination, both filed in Chicago, Illinois, Global Patent Holdings sued the Green Bay Packers, CDW, Motorola, Apple,
Orbitz, Officemax, Caterpillar, Kraft and Peapod as defendants. A third lawsuit was filed on December 5, 2007 in South Florida against ADT Security Services,
AutoNation, Florida Crystals Corp., HearUSA, MovieTickets.com, Ocwen Financial Corp. and Tire Kingdom, and a fourth lawsuit on January 8, 2008 in South Florida
against the Boca Raton Resort & Club. A fifth lawsuit was filed against Global Patent Holdings in Nevada. That lawsuit was filed by Zappos.com, Inc., which was
allegedly threatened by Global Patent Holdings, and seeks a judicial declaration that the '341 patent is invalid and not infringed.
Global Patent Holdings had also used the '341 patent to sue or threaten outspoken critics of broad software patents, including Gregory Aharonian[42] and the anonymous
operator of a website blog known as the "Patent Troll Tracker."[43] On December 21, 2007, patent lawyer Vernon Francissen of Chicago asked the U.S. Patent and
Trademark Office to reexamine the sole remaining claim of the '341 patent on the basis of new prior art.[44]
On March 5, 2008, the U.S. Patent and Trademark Office agreed to reexamine the '341 patent, finding that the new prior art raised substantial new questions regarding
the patent's validity.[45] In light of the reexamination, the accused infringers in four of the five pending lawsuits have filed motions to suspend (stay) their cases until
completion of the U.S. Patent and Trademark Office's review of the '341 patent. On April 23, 2008, a judge presiding over the two lawsuits in Chicago, Illinois granted
the motions in those cases.[46] On July 22, 2008, the Patent Office issued the first "Office Action" of the second reexamination, finding the claim invalid based on
nineteen separate grounds.[47] On Nov. 24, 2009, a Reexamination Certificate was issued cancelling all claims.
Standards
Main article: Joint Photographic Experts Group#Published Standards
Main article: Joint Bi-level Image experts Group#Published Standards
Here are some examples of standards created by ISO/IEC JTC1 SC29 Working Group 1 (WG 1), which includes the Joint Photographic Experts Group and Joint Bi-
level Image experts Group:
http://en.wikipedia.org/wiki/JPEG 08/04/2012
JPEG - Wikipedia, the free encyclopedia Pagina 12 di 13
See also
■ C-Cube an early implementer of JPEG in chip form
■ Comparison of graphics file formats
■ Comparison of layout engines (graphics)
■ Deblocking filter (video), the similar deblocking methods could be applied to JPEG
■ Design rule for Camera File system (DCF)
■ Exchangeable image file format (Exif)
■ File extensions
■ Generation loss
■ Graphics editing program
■ Image compression
■ Image file formats
■ JPEG 2000
■ JPEG File Interchange Format (JFIF)
■ JPEG XR
■ Lenna, the traditional standard image used to test image processing algorithms
■ Libjpeg of Independent JPEG Group
■ Lossless Image Codec FELICS
■ Motion JPEG
■ PGF
■ PNG
References
1. ^ MIME Type Detection in Internet Explorer: Uploaded MIME Types (http://msdn.microsoft.com/en-us/library/ms775147%28v=vs.85%29.aspx#_replace) (msdn.microsoft.com)
2. ^ JPEG File Layout and Format (http://class.ee.iastate.edu/ee528/Reading%20material/JPEG_File_Format.pdf)
3. ^ ISO/IEC JTC 1/SC 29 (2009-05-07). "ISO/IEC JTC 1/SC 29/WG 1 – Coding of Still Pictures (SC 29/WG 1 Structure)" (http://www.itscj.ipsj.or.jp/sc29/29w12901.htm) .
http://www.itscj.ipsj.or.jp/sc29/29w12901.htm. Retrieved 2009-11-11.
4. ^ a b ISO/IEC JTC 1/SC 29. "Programme of Work, (Allocated to SC 29/WG 1)" (http://www.itscj.ipsj.or.jp/sc29/29w42901.htm) . http://www.itscj.ipsj.or.jp/sc29/29w42901.htm.
Retrieved 2009-11-07.
5. ^ ISO. "JTC 1/SC 29 – Coding of audio, picture, multimedia and hypermedia
information" (http://www.iso.org/iso/standards_development/technical_committees/list_of_iso_technical_committees/iso_technical_committee.htm?commid=45316) .
http://www.iso.org/iso/standards_development/technical_committees/list_of_iso_technical_committees/iso_technical_committee.htm?commid=45316. Retrieved 2009-11-11.
6. ^ a b JPEG. "Joint Photographic Experts Group, JPEG Homepage" (http://www.jpeg.org/jpeg/index.html) . http://www.jpeg.org/jpeg/index.html. Retrieved 2009-11-08.
7. ^ "T.81 : Information technology – Digital compression and coding of continuous-tone still images – Requirements and guidelines" (http://www.itu.int/rec/T-REC-T.81) .
http://www.itu.int/rec/T-REC-T.81. Retrieved 2009-11-07.
8. ^ William B. Pennebaker and Joan L. Mitchell (1993). JPEG still image data compression standard (http://books.google.com/books?
id=AepB_PZ_WMkC&pg=PA291&dq=JPEG+%22did+not+specify+a+file+format%22&lr=&num=20&as_brr=0&ei=VHXySui8JYqukASSssWzAw#v=onepage&q=JPEG%20%
22did%20not%20specify%20a%20file%20format%22&f=false) (3rd ed.). Springer. p. 291. ISBN 9780442012724. http://books.google.com/books?
id=AepB_PZ_WMkC&pg=PA291&dq=JPEG+%22did+not+specify+a+file+format%22&lr=&num=20&as_brr=0&ei=VHXySui8JYqukASSssWzAw#v=onepage&q=JPEG%20%
22did%20not%20specify%20a%20file%20format%22&f=false.
9. ^ ISO. "JTC 1/SC 29 – Coding of audio, picture, multimedia and hypermedia information" (http://www.iso.org/iso/iso_catalogue/catalogue_tc/catalogue_tc_browse.htm?
commid=45316) . http://www.iso.org/iso/iso_catalogue/catalogue_tc/catalogue_tc_browse.htm?commid=45316. Retrieved 2009-11-07.
10. ^ a b JPEG (2009-04-24). "Press Release – 48th WG1 meeting, Maui, USA – JPEG XR enters FDIS status, JPEG File Interchange Format (JFIF) to be standardized as JPEG Part
5" (http://www.jpeg.org/newsrel25.html) . http://www.jpeg.org/newsrel25.html. Retrieved 2009-11-09.
11. ^ "JPEG File Interchange Format (JFIF)" (http://www.ecma-international.org/publications/techreports/E-TR-098.htm) . ECMA TR/98 1st ed.. Ecma International. 2009.
http://www.ecma-international.org/publications/techreports/E-TR-098.htm. Retrieved 2011-08-01.
12. ^ "Progressive Decoding Overview" (http://msdn.microsoft.com/en-us/library/ee720036(v=vs.85).aspx) . Microsoft Developer Network. Microsoft. http://msdn.microsoft.com/en-
us/library/ee720036(v=vs.85).aspx. Retrieved 2012-03-23.
13. ^ "JFIF File Format as PDF" (http://www.w3.org/Graphics/JPEG/jfif3.pdf) (PDF). http://www.w3.org/Graphics/JPEG/jfif3.pdf.
14. ^ Tom Lane (1999-03-29). "JPEG image compression FAQ" (http://www.faqs.org/faqs/jpeg-faq/part1/) . http://www.faqs.org/faqs/jpeg-faq/part1/. Retrieved 2007-09-11. (q. 14:
"Why all the argument about file formats?")
15. ^ "ISO/IEC 10918-1 : 1993(E) p.36" (http://www.digicamsoft.com/itu/itu-t81-36.html) . http://www.digicamsoft.com/itu/itu-t81-36.html.
16. ^ Thomas G. Lane.. "Advanced Features: Compression parameter selection" (http://apodeline.free.fr/DOC/libjpeg/libjpeg-3.html) . Using the IJG JPEG Library.
http://apodeline.free.fr/DOC/libjpeg/libjpeg-3.html.
17. ^ a b Phuc-Tue Le Dinh and Jacques Patry. Video compression artifacts and MPEG noise reduction (http://www.videsignline.com/howto/180207350) . Video Imaging DesignLine.
February 24, 2006. Retrieved May 28, 2009.
18. ^ "3.9 mosquito noise: Form of edge busyness distortion sometimes associated with movement, characterized by moving artifacts and/or blotchy noise patterns superimposed over
the objects (resembling a mosquito flying around a person's head and shoulders)." ITU-T Rec. P.930 (08/96) Principles of a reference impairment system for video
(http://eu.sabotage.org/www/ITU/P/P0930e.pdf)
19. ^ jpegs, Thomas Ruff, Aperture, May 31, 2009, 132 pp., ISBN 978-1-59711093-8
20. ^ Review: jpegs by Thomas Ruff (http://jmcolberg.com/weblog/2009/04/review_jpegs_by_thomas_ruff/) , by Joerg Colberg, Apr 17, 2009
21. ^ a b I. Bauermann and E. Steinbacj. Further Lossless Compression of JPEG Images. Proc. of Picture Coding Symposium (PCS 2004), San Francisco, USA, December 15–17, 2004.
22. ^ a b N. Ponomarenko, K. Egiazarian, V. Lukin and J. Astola. Additional Lossless Compression of JPEG Images, Proc. of the 4th Intl. Symposium on Image and Signal Processing
and Analysis (ISPA 2005), Zagreb, Croatia, pp.117–120, September 15–17, 2005.
23. ^ a b c d M. Stirner and G. Seelmann. Improved Redundancy Reduction for JPEG Files. Proc. of Picture Coding Symposium (PCS 2007), Lisbon, Portugal, November 7–9, 2007
24. ^ a b c Ichiro Matsuda, Yukio Nomoto, Kei Wakabayashi and Susumu Itoh. Lossless Re-encoding of JPEG images using block-adaptive intra prediction. Proceedings of the 16th
European Signal Processing Conference (EUSIPCO 2008).
25. ^ "Latest Binary Releases of packJPG: V2.3a" (http://www.elektronik.htw-aalen.de/packjpg/) . January 3, 2008. http://www.elektronik.htw-aalen.de/packjpg/.
26. ^ "Reduce Your JPEG Storage and Bandwidth Cost by up to 80% While Enhancing User's Experience With Infima's JPACK(TM) Compression
Solution" (http://www.marketwatch.com/news/story/Reduce-Your-JPEG-Storage-Bandwidth/story.aspx?guid=%7B924ADA85-3E91-40FE-B0A1-162EC91A9467%7D) . Infima
Technologies. November 17, 2008. http://www.marketwatch.com/news/story/Reduce-Your-JPEG-Storage-Bandwidth/story.aspx?guid=%7B924ADA85-3E91-40FE-B0A1-
162EC91A9467%7D.
27. ^ "StuffIt Image Compression White Paper rev. 2.1" (http://my.smithmicro.com/stuffitcompression/wp_stuffit_imgcomp.pdf) . 1/5/2006.
http://my.smithmicro.com/stuffitcompression/wp_stuffit_imgcomp.pdf.
28. ^ "Infima Ultimate Compression" (http://www.myinfima.com/images/) . Infima Technologies. http://www.myinfima.com/images/.
29. ^ "Stuffit Image" (http://my.smithmicro.com/stuffitcompression/imagecompression.html) . Smith Micro Software.
http://my.smithmicro.com/stuffitcompression/imagecompression.html.
30. ^ J. Siragusa, D. C. Swift, “General Purpose Stereoscopic Data Descriptor” (http://vrex.com/developer/sterdesc.pdf) , VRex, Inc., Elmsford, New York, USA, 1997.
31. ^ Tim Kemp, JPS files (http://ephehm.com/jps/)
32. ^ "Multi-Picture Format" (http://www.cipa.jp/english/hyoujunka/kikaku/pdf/DC-007_E.pdf) (PDF). http://www.cipa.jp/english/hyoujunka/kikaku/pdf/DC-007_E.pdf. Retrieved
2011-05-29.
http://en.wikipedia.org/wiki/JPEG 08/04/2012
JPEG - Wikipedia, the free encyclopedia Pagina 13 di 13
33. ^ cybereality, MPO2Stereo: Convert Fujifilm MPO files to JPEG stereo pairs (http://www.mtbs3d.com/phpbb/viewtopic.php?f=3&t=4124&start=15) , mtbs3d,
http://www.mtbs3d.com/phpbb/viewtopic.php?f=3&t=4124&start=15, retrieved 12 January 2010
34. ^ "Concerning recent patent claims" (http://www.jpeg.org/newsrel1.html) . Jpeg.org. 2002-07-19. http://www.jpeg.org/newsrel1.html. Retrieved 2011-05-29.
35. ^ JPEG and JPEG2000 – Between Patent Quarrel and Change of Technology (http://web.archive.org/web/20040817154508/www.algovision-
luratech.com/company/news/patentquarrel.jsp?OnlineShopId=164241031081525276) (Archive)
36. ^ Kawamoto, Dawn (April 22, 2005). "Graphics patent suit fires back at Microsoft" (http://news.cnet.com/2100-1025_3-5681112.html) . CNET News. http://news.cnet.com/2100-
1025_3-5681112.html. Retrieved 2009-01-28.
37. ^ "Trademark Office Re-examines Forgent JPEG Patent" (http://www.publish.com/c/a/Graphics-Tools/Trademark-Office-Reexamines-Forgent-JPEG-Patent/) . Publish.com.
February 3, 2006. http://www.publish.com/c/a/Graphics-Tools/Trademark-Office-Reexamines-Forgent-JPEG-Patent/. Retrieved 2009-01-28.
38. ^ "USPTO: Broadest Claims Forgent Asserts Against JPEG Standard Invalid" (http://www.groklaw.net/article.php?story=20060526105754880) . Groklaw.net. May 26, 2006.
http://www.groklaw.net/article.php?story=20060526105754880. Retrieved 2007-07-21.
39. ^ "Coding System for Reducing Redundancy" (http://gauss.ffii.org/PatentView/EP266049) . Gauss.ffii.org. http://gauss.ffii.org/PatentView/EP266049. Retrieved 2011-05-29.
40. ^ "JPEG Patent Claim Surrendered" (http://www.pubpat.org/jpegsurrendered.htm) . Public Patent Foundation. November 2, 2006. http://www.pubpat.org/jpegsurrendered.htm.
Retrieved 2006-11-03.
41. ^ Ex Parte Reexamination Certificate for U.S. Patent No. 5,253,341 (http://www.uspto.gov/web/patents/patog/week30/OG/html/1320-4/US05253341-20070724.html)
42. ^ Workgroup. "Rozmanith: Using Software Patents to Silence Critics" (http://eupat.ffii.org/pikta/xrani/rozmanith/index.en.html) . Eupat.ffii.org.
http://eupat.ffii.org/pikta/xrani/rozmanith/index.en.html. Retrieved 2011-05-29.
43. ^ "A Bounty of $5,000 to Name Troll Tracker: Ray Niro Wants To Know Who Is saying All Those Nasty Things About Him" (http://www.law.com/jsp/article.jsp?
id=1196762670106) . Law.com. http://www.law.com/jsp/article.jsp?id=1196762670106. Retrieved 2011-05-29.
44. ^ Reimer, Jeremy (2008-02-05). "Hunting trolls: USPTO asked to reexamine broad image patent" (http://arstechnica.com/news.ars/post/20080205-hunting-trolls-uspto-asked-to-
reexamine-broad-image-patent.html) . Arstechnica.com. http://arstechnica.com/news.ars/post/20080205-hunting-trolls-uspto-asked-to-reexamine-broad-image-patent.html.
Retrieved 2011-05-29.
45. ^ U.S. Patent Office – Granting Reexamination on 5,253,341 C1
46. ^ "Judge Puts JPEG Patent On Ice" (http://www.techdirt.com/articles/20080427/143205960.shtml) . Techdirt.com. 2008-04-30.
http://www.techdirt.com/articles/20080427/143205960.shtml. Retrieved 2011-05-29.
47. ^ "JPEG Patent's Single Claim Rejected (And Smacked Down For Good Measure)" (http://techdirt.com/articles/20080731/0337491852.shtml) . Techdirt.com. 2008-08-01.
http://techdirt.com/articles/20080731/0337491852.shtml. Retrieved 2011-05-29.
External links
■ JPEG Standard (JPEG ISO/IEC 10918-1 ITU-T Recommendation T.81) (http://www.w3.org/Graphics/JPEG/itu-t81.pdf) at W3.org
■ Official Joint Photographic Experts Group site (http://www.jpeg.org/)
■ JFIF File Format (http://www.w3.org/Graphics/JPEG/jfif3.pdf) at W3.org
■ JPEG File Size Calculator (http://filesizecalculator.com/jpeg)
■ JPEG viewer in 250 lines of easy to understand python code (http://code.google.com/p/micro-jpeg-visualizer/)
■ Wotsit.org's entry (http://www.wotsit.org/list.asp?page=3&fc=1&search=&al=) on the JPEG format
■ Example images over the full range of quantization levels from 1 to 100 (http://www.visengi.com/products/jpeg_hardware_encoder) at visengi.com
■ Public domain JPEG compressor in a single C++ source file, along with a matching decompressor (http://code.google.com/p/jpeg-compressor/) at
code.google.com
■ Example of .JPG file decoding (http://l1032265.myweb.hinet.net/huffman.htm)
■ Jpeg Decoder Open Source Code , Copyright (C) 1995–1997, Thomas G. Lane. (http://opensource.apple.com/source/WebCore/WebCore-1C25/platform/image-
decoders/jpeg/)
http://en.wikipedia.org/wiki/JPEG 08/04/2012