Method for optimal discrete rendering of images
First Claim
1. A method for converting an original image to a printable bitmap comprising the steps of:
- (a) defining a printer model (17a);
(b) defining a perception model (17b);
(c) defining a comparison model;
(d) sampling said original image to form a sampled image (12);
(e) constructing a plurality of parallel swaths (14) through said sampled image (12), each of said swaths (14) being a linear path of adjacent bits, each path having a width of n bits;
(f) defining a linear array of columns of bits (16a, 16b, etc.) for each of said swaths (14), each of said columns of bits (16) being n bits wide, each of said columns of bits (16) for each of said swaths (14) being numbered consecutively;
(g) choosing a configuration of values of a first column of bits (16a) of an ith swath (14i), said ith swath (14i) including a number p of said columns of bits (16) and q columns of non-image bits having preset bits (26);
(h) determinig a first set of look-ahead bits (22a) adjacent to said first column of bits (16a) and within said ith swath (14i), said first set of look-ahead bits (22a) including a set of k consecutive columns of bits of said ith swath (14i), said first set of look-ahead bits having a configuration of values;
(i) applying said printer model (17a) to a first neighborhood (20a) around said first column of bits (16a) to provide a printed image of said first neighborhood (20a);
(j) applying said perception model (17b) to a second neighborhood (18a) within said printed image of said first neighborhood (20a) around said first column of bits (16a) to provide a perceived image of said second neighborhood (18a);
(k) applying said comparison model to compare said perceived image of said second neighborhood (18a) with said sampled image (12) of said second neighborhood (18a) to arrive at a difference value for each bit of a subset of columns of bits of said ith swath (14i) lying within said second neighborhood (18);
(l) calculating a combined difference value from said difference values;
(m) storing said combined difference value along with said configuration of values of said first column of bits (16);
(n) altering said configuration of values of said first column of bits (16) of said ith swath (14i);
(o) repeating steps (i) through (n) 2n times until all of said configurations of values of said first column of bits (16) of said ith swath (14i) have been used;
(p) determining which of said configurations of values of said first column of bits (16) provides a least combined difference value for said configuration of values of said first set of look-ahead bits (22), by comparing said stored combined difference values;
(q) altering said configuration of values of said first set of look-ahead bits (22) of said ith swath (14i);
(r) repeating steps (i) through (q) up to 2n+k times until all of said configurations of values of said first set of look-ahead bits (22) of said ith swath (14i) have been used; and
(s) storing a configuration of values of said first column of bits (16) for each of said configuration of values of said first set of look-ahead bits (22), said stored configuration of values of said first column of bits (16) providing a least combined difference value for a respective configuration of values of said first set of look-ahead bits (22).
3 Assignments
0 Petitions
Accused Products
Abstract
A technique for efficiently converting an original sampled image into a bitmap suitable for a specific output device. The method includes explicit printer and perception effects, and employs local permutations of bits, to find optimal bit settings. A continuous-tone image is first sampled to form a sampled image (12), through which a series of swaths are defined. For each swath (14i) in turn, an iterative procedure examines a column of bits (16) at a time, determining which configuration of the column of bits yields a minimal local difference value between the trial bitmap and the sampled image. While holding the rest of the trail bitmap constant, the column of bits is permuted and the difference value calculated, for each configuration of the column'"'"'s look-ahead bits (22). To determine the difference values, local printer (17a) and perception (17b) models calculate effects between bits, while a local comparison model calculates the difference between the trial bitmap and the sampled image. The printable bitmap resulting from the methods of the present invention can be displayed by the output device to provide a faithful duplication of the original image.
-
Citations
4 Claims
-
1. A method for converting an original image to a printable bitmap comprising the steps of:
-
(a) defining a printer model (17a); (b) defining a perception model (17b); (c) defining a comparison model; (d) sampling said original image to form a sampled image (12); (e) constructing a plurality of parallel swaths (14) through said sampled image (12), each of said swaths (14) being a linear path of adjacent bits, each path having a width of n bits; (f) defining a linear array of columns of bits (16a, 16b, etc.) for each of said swaths (14), each of said columns of bits (16) being n bits wide, each of said columns of bits (16) for each of said swaths (14) being numbered consecutively; (g) choosing a configuration of values of a first column of bits (16a) of an ith swath (14i), said ith swath (14i) including a number p of said columns of bits (16) and q columns of non-image bits having preset bits (26); (h) determinig a first set of look-ahead bits (22a) adjacent to said first column of bits (16a) and within said ith swath (14i), said first set of look-ahead bits (22a) including a set of k consecutive columns of bits of said ith swath (14i), said first set of look-ahead bits having a configuration of values; (i) applying said printer model (17a) to a first neighborhood (20a) around said first column of bits (16a) to provide a printed image of said first neighborhood (20a); (j) applying said perception model (17b) to a second neighborhood (18a) within said printed image of said first neighborhood (20a) around said first column of bits (16a) to provide a perceived image of said second neighborhood (18a); (k) applying said comparison model to compare said perceived image of said second neighborhood (18a) with said sampled image (12) of said second neighborhood (18a) to arrive at a difference value for each bit of a subset of columns of bits of said ith swath (14i) lying within said second neighborhood (18); (l) calculating a combined difference value from said difference values; (m) storing said combined difference value along with said configuration of values of said first column of bits (16); (n) altering said configuration of values of said first column of bits (16) of said ith swath (14i); (o) repeating steps (i) through (n) 2n times until all of said configurations of values of said first column of bits (16) of said ith swath (14i) have been used; (p) determining which of said configurations of values of said first column of bits (16) provides a least combined difference value for said configuration of values of said first set of look-ahead bits (22), by comparing said stored combined difference values; (q) altering said configuration of values of said first set of look-ahead bits (22) of said ith swath (14i); (r) repeating steps (i) through (q) up to 2n+k times until all of said configurations of values of said first set of look-ahead bits (22) of said ith swath (14i) have been used; and (s) storing a configuration of values of said first column of bits (16) for each of said configuration of values of said first set of look-ahead bits (22), said stored configuration of values of said first column of bits (16) providing a least combined difference value for a respective configuration of values of said first set of look-ahead bits (22). - View Dependent Claims (2, 3, 4)
-
Specification