Most of the data compression strategies currently used for black/white (one-bit gray-scale) images involve the detection and noiseless encoding of a specified set of image features, the most common features being "runs" of adjacent equal.valued picture elements. A procedure is provided that, given the frequency distribution for a particular set of features in a sample of images, calculates an extended run-length code (ERLC) that includes two classes of codewords: "regular" codewords for the runs and "special" codewords for the other image features. An ERLC is shown to be highly efficient for the sample images, uniformly efficient for similar images not in the sample, and easily implemented. An encoder and the corresponding decoder are described which can implement any ERLC that includes up to <tex xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink">R</tex> regular codewords and <tex xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink">S</tex> special codewords, where <tex xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink">R</tex> and <tex xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink">S</tex> are design parameters. Neither the encoder nor the decoder requires a table of codewords; rather, both are controlled by two auxiliary tables that include only <tex xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink">\ell_{max} [\log_{2} R]</tex> -bit entries and <tex xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink">\ell_{max} [\log_{2} S]</tex> -bit entries, respectively, where <tex xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink">\ell_{max}</tex> is the length of the longest codeword.
Read full abstract