Joint Bi-level Image Experts Group
<algorithm> (JBIG) An experts group of ISO, IEC and ITU-T (JTC1/SC2/WG9
and SGVIII) working to define a compression standard for lossless image coding.
Their proposed algorithm features compatible progressive coding and sequential
coding and is lossless - the image is unaltered after compression and
decompression.
JBIG can handle images with from one to 255 bits per pixel. Better compression
algorithms exist for more than about eight bits per pixel. With multiple bits
per pixel, Gray code can be used to reduce the number of bit changes between
adjacent decimal values (e.g. 127 and 128), and thus improve the compression
which JBIG does on each bitplane.
JBIG uses discrete steps of detail by successively doubling the resolution. The
sender computes a number of resolution layers and transmits these starting at
the lowest resolution. Resolution reduction uses pixels in the high resolution
layer and some already computed low resolution pixels as an index into a lookup
table. The contents of this table can be specified by the user.
Compatibility between progressive and sequential coding is achieved by dividing
an image into stripes. Each stripe is a horizontal bar with a user definable
height. Each stripe is separately coded and transmitted, and the user can define
in which order stripes, resolutions and bitplanes are intermixed in the coded
data. A progressively coded image can be decoded sequentially by decoding each
stripe, beginning by the one at the top of the image, to its full resolution,
and then proceeding to the next stripe. Progressive decoding can be done by
decoding only a specific resolution layer from all stripes.
After dividing an image into bitplanes, resolution layers and stripes,
eventually a number of small bi-level bitmaps are left to compress. Compression
is done using a Q-coder.
The Q-coder codes bi-level pixels as symbols using the probability of occurrence
of these symbols in a certain context. JBIG defines two kinds of context, one
for the lowest resolution layer (the base layer), and one for all other layers
(differential layers). Differential layer contexts contain pixels in the layer
to be coded, and in the corresponding lower resolution layer.
For each combination of pixel values in a context, the probability distribution
of black and white pixels can be different. In an all white context, the
probability of coding a white pixel will be much greater than that of coding a
black pixel. The Q-coder, like Huffman coding, achieves compression by assigning
more bits to less probable symbols. The Q-coder can, unlike a Huffman coder,
assign one output code bit to more than one input symbol, and thus is able to
compress bi-level pixels without explicit clustering, as would be necessary
using a Huffman coder.
[What is "clustering"?]
Maximum compression will be achieved when all probabilities (one set for each
combination of pixel values in the context) follow the probabilities of the
pixels. The Q-coder therefore continuously adapts these probabilities to the
symbols it sees.
JBIG can be regarded as two combined algorithms:
(1) Sending or storing multiple representations of images at different
resolutions with no extra storage cost. Differential layer contexts contain
pixels in two resolution layers, and so enable the Q-coder to effectively code
the difference in information between the two layers, instead of the information
contained in every layer. This means that, within a margin of approximately 5%,
the number of resolution layers doesn't effect the compression ratio.
(2) A very efficient compression algorithm, mainly for use with bi-level images.
Compared to CCITT Group 4, JBIG is approximately 10% to 50% better on text and
line art, and even better on halftones. JBIG, just like Group 4, gives worse
compression in the presence of noise in images.
An example application would be browsing through an image database.
["An overview of the basic principles of the Q-coder adaptive binary arithmetic
coder", W.B. Pennebaker, J.L. Mitchell, G.G. Langdon, R.B. Arps, IBM Journal of
research and development, Vol.32, No.6, November 1988, pp. 771-726].
http://www.crs4.it/~luigi/MPEG/jbig.html.
(1998-03-29)
Nearby terms:
John von Neumann « join « Joint Academic NETwork «
Joint Bi-level Image Experts Group » Joint
Photographic Experts Group » Joint Technical
Committee » Joint Test Action Group
|