Patentable/Patents/US-6654503
US-6654503

Block-based, adaptive, lossless image coder

PublishedNovember 25, 2003
Assigneenot available in USPTO data we have
Inventorsnot available in USPTO data we have
Technical Abstract

Method and system for lossless compression coding of a digitally represented image. The image is expressed as one or more blocks, each block having a sequence of pixels with binary pixel values. Within each block, a predictor index is chosen that predicts a pixel value as a linear combination of adjacent (actual) pixel values. The predicted and actual values are compared, and twice the predicted value is compared with the sum of the actual value and a maximum predicted value, to determine a value index, which is used to represent each pixel value in a block in compressed format. Use of the value index representation reduces the average number of bits needed to express each pixel value by an estimated 33-46 percent, reduces the time required for compression encoding by an estimated 4-6 percent, and reduces the time required for decompression by an estimated 49-61 percent. The compression ratios achieved by this coding approach compare favorably with, and sometimes improve upon, the compression achieved by several well known compression methods. Several processes in determination of the compressed values can be performed in parallel to increase throughput or to reduce processing time.

Patent Claims
10 claims

Legal claims defining the scope of protection, as filed with the USPTO.

1

1. A method for lossless coding of an image, the method comprising: providing a block of numbers representing pixel values for at least part of a digital image; determining if the block includes only pixels having a single value; when the block includes only pixels having a single value, choosing a selected dc predictor coefficient to determine a difference value between pixel value and a predicted pixel value for at least one number in the block; when the block includes pixels having at least two distinct values, choosing a selected set of non-dc predictor coefficients to determine the difference value for at least one number in the block; limiting each difference value predicted by the set of non-dc predictor coefficients to a selected range of values having a selected maximum value; computing a product value, equal to twice the predicted value, and a difference value, equal to the difference between the provided value and the predicted value, for at least one number in the block; when the provided value is no greater than the predicted value, and the product value is no greater than the sum of the provided value plus the maximum value, computing a value index equal to twice the difference value; when the provided value is no greater than the predicted value, and the product value is greater than the sum of the provided value plus the maximum value, computing a value index equal to the maximum value minus the provided value; when the provided value is greater than the predicted value, and the product value is less than the provided value, computing a value index equal to the provided value; when the provided value is greater than the predicted value, and the product value is at least equal to the provided value, computing a value index equal to twice the difference value minus 1; and representing the binary value for the at least one number in the block by the value index.

2

2. The method of claim 1 , further comprising choosing said selected set of non-dc predictor coefficients so that a pixel value for a chosen pixel is predicted by a linear combination of values of N pixels that are contiguous to the chosen pixel, where N 2.

3

3. The method of claim 2 , wherein said set of non-dc predictor coefficients used to form said linear combination of said pixel values has an algebraic sum of 1.

4

4. The method of claim 1 , further comprising: expressing a pixel value as one of at most 2 k binary values, where k is a selected non-negative integer; and limiting said difference value predicted to a selected range by providing a 1 -1 mapping from a set of said difference values to a set of at most 2 k consecutive values.

5

5. A system for lossless coding of an image, the system comprising a computer that is programmed: to provide a block of numbers representing pixel values for at least part of a digital image; to determine if the block includes only pixels having a single value; when the block includes only pixels having a single value, to choose a dc predictor coefficient to predict a binary value for at least one number in the block; when the block includes pixels having at least two distinct values, to choose a selected set of non-dc predictor coefficients to predict a binary value for at least one number in the block; to limit each binary value predicted by the set of non-dc predictor coefficients to a selected range of binary values having a selected maximum value; to compute a product value, equal to twice the predicted value, and a difference value, equal to the difference between the provided value and the predicted value, for at least one number in the block; when the provided value is no greater than the predicted value, and the product value is no greater than the sum of the provided value plus the maximum value, to compute a value index equal to twice the difference value; when the provided value is no greater than the predicted value, and the product value is greater than the sum of the provided value plus the maximum value, to compute a value index equal to the maximum value minus the provided value; when the provided value is greater than the predicted value, and the product value is. less than the provided value, to compute a value index equal to the provided value; when the provided value is greater than the predicted value, and the product value is at least equal to the provided value, to compute a value index equal to twice the difference value minus 1; and representing the binary value for the at least one number in the block by the value index.

6

6. The system of claim 5 , wherein said computer is further programmed to choose said selected set of non-dc predictor coefficients so that a pixel value for a chosen pixel is. predicted by a linear combination of values of N pixels that are contiguous to the chosen pixel, where N 2.

7

7. The system of claim 6 , wherein said computer is further programmed to choose said set of non-dc predictor coefficients used to form said linear combination of said pixel values to have an algebraic sum of 1.

8

8. The system of claim 5 , wherein said computer is further programmed: to express a pixel value as one of at most 2 k binary values, where k is a selected non-negative integer; and to limit said difference value predicted to a selected range by providing a 1-1 mapping from a set of said difference values to a set of at most 2 k consecutive values.

9

9. A method for lossless coding of an image, the method comprising: receiving and analyzing a data block representing pixel values for at least part of a digital image; when all values in the block are the same, providing a first dc predictor representing a constant pixel value for all pixels in the first block; when all values in the block are not the same, providing a selected set of H non-dc predictor coefficient sets (H 2), and computing predicted value errors for each of the pixels in the block for each of the predictor coefficient sets at substantially the same time; comparing the predicted value errors for the block for each of the predictor coefficient sets, using a selected error metric for the block; choosing a predictor coefficient set whose error metric is no greater than the error metric for each of the other predictor coefficient sets; and computing predicted pixel values for the block using the chosen predictor set.

10

10. The method of claim 9 , further comprising receiving said predicted pixel values and said predicted value errors for said block, using said chosen predictor coefficient set, and forming and issuing a block of compressed values representing the pixel values for the block.

Classification Codes (CPC)

Cooperative Patent Classification codes for this invention. Click any code to explore related patents in that topic.

Patent Metadata

Filing Date

April 28, 2000

Publication Date

November 25, 2003

Want to explore more patents?

Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.

Citation & reuse

Analysis on this page is generated by Patentable — an AI-powered patent intelligence platform. AI-generated summaries, explanations, and analysis may be reused with attribution and a visible link back to the canonical URL below. Patent abstracts and claims are USPTO public domain.

Cite as: Patentable. “Block-based, adaptive, lossless image coder” (US-6654503). https://patentable.app/patents/US-6654503

© 2026 Patentable. All rights reserved.

Patentable is a research and drafting-assistant tool, not a law firm, and does not provide legal advice. Documents we generate are drafts for review by a licensed patent attorney.