Patent ID: 7457002

Claim:
A computer system comprising: one or more processors; a memory storing program instructions executble by the one or more processors to: receive an input bitmap that includes an array of multi-bit pixel values; and generate, from the input bitmap, an output bitmap that includes an array of single-bit pixel values, wherein said generating includes: computing gray level values for a first of two or more successive sets of cells in the input bitmap, wherein each cell of said first set of cells is a group of contiguous pixels of the input bitmap having the same dimensions; computing gray level values for remaining sets of said two or more sets of cells, wherein each cell in a given one of said remaining sets has the same dimensions, is larger than cells in a previous one of the two or more sets of cells, and includes two or more constituent cells from the previous set, wherein a last set of the two or more sets of cells has the largest cell size of all of the two or more sets of cells; computing a gray level error for each cell in the last set of cells; and for each cell in each of the remaining sets of cells, distributing any gray level error for that cell to at least one of the constituent cells of that cell.