This invention relates to a halftone method and more particularly to a halftone method which minimizes image distortion introduced by the halftoning process.
Many types of printing devices use a limited variety of ink (or toner) colors for the production of printed pages (typically one color for monochrome devices and four colors for color devices). These devices are generally bistable with respect to the output of individual ink levels. In particular, output of the ink is either enabled or disabled at any given location on a page. In such devices, intermediate tones are created using a process called halftoning, in which ink output is modulated against a background defined by the color of the print media (e.g. paper) so as to create an average tone which will be visually integrated by the viewer.
Owing to historical methods for achieving the effect of halftoning, the halftone process is synonymously referred to as halftone screening or simply screening.
The process of halftoning is widely recognized, by those skilled in the art, as a potential source of image content distortion. This distortion is typically manifested as 1) a loss of sharpness, 2) introduction of moiré, and 3) exaggeration of image noise. These effects are largely due to a phenomenon known as aliasing, which in this context, is defined as the misrepresentation of image content due to inadequate sampling. This occurs because arbitrarily applied halftoning can effectively introduce its own sampling grid—which may be insufficient to yield a proper representation of the image's contents.
The phenomenon of aliasing, as it relates to the process of sampling, is known and well documented in the public literature (esp. as sampling theory). For purposes of understanding the invention to be described below, inadequate sampling can be conceptualized as sparse sampling. More particularly, there is information in the original image which does not contribute to the resulting image because it “slips through the cracks” in the (sparse) sampling grid. The standard solution to this problem is to match the sampling resolution with a (pre-sample) blurring process which “spreads out” the representation of image details to ensure that no detail remains spatially isolated (in the “cracks”) such that it can avoid being sampled.
As previously discussed, the standard way to avoid aliasing is to prefilter the data being sampled with a blurring filter. This blurring process is sometimes called smoothing and may be referred to technically as low-pass filtering (this name derives from the nature of the filter—that low frequency content is passed through unaltered while high frequency content is attenuated). Blurring an image has the disadvantage that edge and detail content become less discernible, which generally reduces the effectiveness or visual appeal of the image.
The use of a sharpening filter (sometimes called unsharp masking) can improve the visibility of edge and detail image content. Such a filter operates by increasing the localized contrast where edges and details are present, thereby increasing the localization and amplitude of such content. Application of a sharpening filter can be used to counteract the loss of sharpness which may be associated with halftoning. Unfortunately, sharpening an image has the disadvantage that it increases the visibility of image noise and strengthens the potential moiré interference between high frequency image content and the halftone pattern.
Sharpening and blurring are opposite types of filters and are effectively mutually exclusive of one another. To be effective on documents with varied content, one or both types of filtering may need to be applied dynamically—based on the results of a content analysis algorithm. The problem with this type of processing is that it tends to be complex and prone to error.
Another way to avoid halftone induced aliasing is to use very high frequency or dispersed-dot halftoning. Both of these types of halftoning utilize very small halftone dots—often placing them very close together as well. These methods can avoid introducing aliasing if their effective sampling grid is well aligned with that of the image being halftoned. This may, in fact, be the preferred solution for some types of devices—most notable printers based on ink-jet technology (which may actually require dispersed-dot halftoning due to problems with alignment and over saturation of ink). However, due largely to output instabilities resulting from cost/performance tradeoffs, many printing devices still work best with lower frequency clustered halftones.
Accordingly, it is an object of the invention to provide an improved halftone process.
It is a further object of the invention to provide an improved halftone process that avoids creation of image artifacts.
The invention provides a computer-implemented procedure that is applicable to various halftoning methods, which minimizes image distortion introduced by the halftoning process. The procedure involves maintaining specific relationships between the halftone pattern and the phase and resolution of the input image. Specifically, that the halftone pattern is designed such that it does not bias tone reproduction with respect to the location of the input image pixels—each input pixel should be given equal weight when filtered by the halftoning process. This suggests a 1 to 1 relationship between each pixel of the input image and the corresponding tone output produced by the halftoning process. The procedure results in improved print quality, manifested by avoidance of certain types of moiré which are commonly associated with halftoning, as well as improved reproduction of edges and image details.
A preferred embodiment of the invention creates a scaled halftoned destination pixel image from a source pixel image portion that comprises plural source pixels. (1) Initially, a scaled set of matrix values is created to be used for each of the source pixels. (2) Then, depending upon a determined halftone relationship of a source pixel and each of said scaled set of matrix values, a scaled set of destination pixels is created. Each respective created destination pixel value is dependent upon a relationship of a value of the respective source pixel and a corresponding matrix value. Thereafter, step 2 is repeated for each source pixel, using the scaled set of matrix values, and arranging the scaled set of matrix values to create a determined halftone pattern over the source pixels that exhibits a desired repeating pattern. Each scaled set of destination pixels produced thus exhibits a reduced tonal error as a result of use of the same scaled set of matrix values for each source pixel.
a illustrates a 4×4 dither matrix with 16 threshold indices.
b illustrates a 2×2 source pixel matrix overlaid with the 4×4 threshold matrix of
a shows a simple 2×2 dither pattern which filters the area of a single source pixel with threshold indices from 1 to 4.
b is a function table which shows the numerical mapping between input source pixel values and corresponding output tone values as filtered by the dither pattern.
c is a graph of the tone reproduction function that results from
d shows a dither pattern in which two source pixels are filtered by different threshold indices.
e shows the tone reproduction for source pixel A resulting from use of the threshold indices of
f shows the tone reproduction for source pixel B resulting from use of the threshold indices of
g is a graph of tone reproduction functions resulting from
a illustrates a prior art threshold matrix (i.e., dither pattern) that is referred to as a diagonal (45 degree) halftone screen.
b graphically represents development priorities indicated numerically in
c is a graph that illustrates error values associated with halftoning using the dither pattern of
a illustrates a dither pattern in which each source pixel is represented directly by an entire halftone cell.
b graphically represents development priorities indicated numerically in
c is a graph that illustrates error values associated with halftoning using the dither pattern of
a illustrates a reduced frequency dither pattern.
b graphically represents development priorities indicated numerically in
c is a graph that illustrates error values associated with halftoning using the dither pattern of
a illustrates application of a simple dispersion to the dither pattern shown in
b graphically represents development priorities indicated numerically in
c is a graph that illustrates error values associated with halftoning using the dither pattern of
a–7c illustrate an example of derivation of a dither pattern using a spot function.
a–8i illustrate a plurality of 1 to 1 screen geometry's.
A preferred embodiment of this invention is based on a known halftoning algorithm which applies a two-dimensional array of values, called a threshold matrix, in a tiled fashion across the area of the image being halftoned. For each location in a destination image, a pixel value is output—its value being determined based on a comparison of the source image pixel at that location to corresponding threshold value. The invention is related to the nature of the data stored in the threshold matrix and the relationship of that data to the fundamental sampling grid of the source image.
For purposed of the description below, a dither pattern is an array of data values that enable threshold matrix values to be derived. The dither patterns used below contain a set of values, called threshold indices, which are sequential, starting at the value of 1 (although values may be duplicated). The indices represent a pixel priority which corresponds to the structure of the halftone pattern.
A threshold matrix can be derived from its corresponding dither pattern by adjusting the threshold indices in the dither pattern to match the range of values which may be presented by source image pixels. This conversion may also take into account other factors. For example it may apply a tone compensation which corrects for possible non-linearities of the output device.
A halftone cell is the smallest region of pixels that completely represents the primary repeating pattern of the halftone. This is typically the cluster of pixels seen as an individual halftone dot. To define the halftone over a larger area, the halftone cell is repeated in a tiled fashion to cover the area in question. For purposes of this description, a halftone cell is distinguished from a halftone “supercell”. A supercell is a composition of multiple halftone cells and typically introduces small variations to the shape or tone reproduction of each cell in order to achieve a more precise screen angle and/or to introduce a slight tone dispersion which may reduce the appearance of tonal contouring (described later). For further information regarding threshold matrices and dither patterns, reference is made to chapter 2 of the book “Postscript Screening ” by Peter Fink, (c) 1992 (incorporated herein by reference).
This invention is described in terms of a digital halftoning algorithm which uses a tiled threshold matrix to select the values of binary pixels for the output device. However, it will be appreciated by those skilled in the art that the invention is applicable to a broader variety of mechanisms including other digital halftoning algorithms such as those which utilize multiple output levels per pixel, also including analog halftoning methods such as might be used in a long-run printing press.
An assumption will be made hereafter that the resolution of the destination pixel halftone output is higher than the original resolution of the source image being halftoned. For example, a source image might be captured at a resolution of 300 dpi, and then printed, via halftoning, at 1200 dpi. This differential implies an element of resolution conversion (also called image scaling).
It is an important element of this invention that halftone patterns be defined with respect to a specific source image sampling grid that is defined by the resolution of the destination image. As such, the term source pixel will be used, in this document, to indicate the value of a received image pixel at a pre-scaling resolution.
The Figs. employ a simple schema to indicate the relationship between a dither pattern and the source pixel grid that it will be applied to.
The following software source code, written in C, demonstrates a method of performing scaling and halftoning as a single process. It will, however, be apparent to those skilled in the art, that scaling and halftoning are separable operations and may therefore be applied as individual steps of a pipelined sequence.
A significant characteristic of digital halftoning methods is that they are capable of producing a specific maximum number of distinct tone levels over a given area. In many cases, this number can be easily calculated using the following formula:
Destination pixels*(sublevels−1)+1
In this formula, “destination pixels” indicates the number of output pixels representing a given area and sublevels indicates the number of different tone values to which each destination pixel can be assigned (this value is two for binary output but can be more, depending on the attributes of the device).
Subsequent discussion of halftoning will include analysis of the relationship between source pixel values and their tone reproduction via a dither pattern. These relationships can be represented as mathematical functions which will be referred to as tone reproduction functions.
In order to simplify the function descriptions, the input range is mapped, as real numbers, to the total number of threshold indices for the dither matrix—in this case 0.0 through 4.0 (practical applications typically map the dither pattern to an input range of integers from 0 through 255). Since there are four output destination pixels to represent each input source pixel. The mapping is a step function having five output levels—0 through 4.
d shows a dither pattern in which two source pixels are filtered by different threshold indices. Source pixel A contains indices 1 through 4 and source pixel B contains indices 5 through 8. Because the two source pixels are filtered with different threshold indices, they have different tone reproduction functions. These functions are represented by the tables in
e shows that when the threshold indices are applied, via the halftoning algorithm, the tone reproduction for source pixel A increases at input source pixel values 0.5, 1.5, 2.5, and 3.5.
Analysis of this graph reveals a large disparity between the tone reproduction functions of the dither pattern and that of the ideal. Source pixel A is reproduced by a function which is substantially above the ideal (meaning that too much tone will be used) and source pixel B is reproduced by a function which is substantially below the ideal (meaning that too little tone will be used).
The problem which the invention addresses is demonstrated by the dither pattern represented in
c demonstrates the problem associated with halftoning using this dither pattern. The tone reproduction graph for the pattern indicates two different functions with the potential for substantial reproduction error. Source pixels A and D, which are filtered by the initial development of the dot cluster (the black part of the dot), have a tone reproduction function which is above that of the ideal. Source pixels B and C, which are filtered by the final development of the dot cluster (the white part of the dot), have a tone reproduction function which is below that of the ideal.
These imperfect tone relationships are a normal and expected aspect of this known halftoning method. The method works, despite the imperfect source pixel reproduction, because the average tone output, taken over multiple source pixels, tends to be approximately correct. However, since it takes multiple source pixels to reproduce the correct average tone, the process of halftoning effectively resamples the data at a rate which is roughly equivalent to the size of a halftone cell. As previously described, this resampling causes aliasing and related artifacts which the present invention avoids.
To achieve acceptable image reproduction using the dither pattern of this example, it is required that most image content be relatively low-detail so that the effective sampling applied by the halftoning process remains adequate despite the fact that it is lower than the image's original sampling rate. Where this is not the case, aliasing artifacts will be produced.
Referring back to
The present invention may best be understood by first understanding a simplified embodiment. It can be appreciated, that a direct 1 to 1 mapping of destination resolution halftone cells to source pixels can be performed without introducing a new sampling grid.
c demonstrates that this direct halftone cell mapping solves the resampling problem described in respect of
To see how this accomplished, consider the following modification of the dither pattern presented in
Since the threshold indices representing each source pixel are not changed (only rearranged), the 1 to 1 mapping of tone is preserved and the tone reproduction functions remain equivalent to the ideal (again ignoring quantization error). Therefore, as in the case of the direct mapped dither pattern, (and despite the fact the halftone pattern has a reduced frequency) the input image is not resampled as a result of the halftoning process.
a–5c embody the primary aspect of the present invention: halftoning such that the location of a source pixel does not have a large effect on the average tone of its reproduction, and further, varying the distribution of tone over the area of each source pixel, based on the location of that source pixel, to create a reduced frequency halftone pattern.
In the discussion of
A known method of reducing the appearance of contouring is to dither the output of the quantized values. This means the introduction of a slight variation in tone reproduction from source pixel to source pixel in order to create additional average tone levels when taken over a larger viewing area. When dithering is applied as a secondary modification to halftone patterns, the process is referred to as dispersion.
a demonstrates the application of a simple dispersion to the dither pattern of
The 1 to 1 dither pattern in
Dispersion can result in a slight location-based tone reproduction bias (represented graphically in
Here, the dither pattern is generated using a “spot function”. The basis of this embodiment is that pixel priority is assigned based on the result of a mathematical function which takes as parameters values X and Y that represent coordinates relative to an origin, represented by a circle in
The process is as follows:
a–8i schematically depict the construction of a variety of exemplary patterns which can be produced by application of the invention. The following table shows the basic relationships between sampling frequency and available 1 to 1 halftone frequencies.
From the above description it can be seen that the halftoning action of the invention maintains specific relationships between a halftone pattern and the phase and resolution of the input image. Further, the halftone pattern is designed such that it does not bias tone reproduction with respect to the location of the input image source pixels, and each source pixel is given equal weight when filtered by the halftoning process. There is thus a 1 to 1 relationship between each source pixel of the input image and the corresponding tone output produced by the halftoning process. The application of the invention results in improved print quality, avoids certain types of moiré which are commonly associated with halftoning and provides improved reproduction of edges and image details.
It should be understood that the foregoing description is only illustrative of the invention. Various alternatives and modifications can be devised by those skilled in the art without departing from the invention. For example, the software procedures for accomplishing the invention may be incorporated into memory devices such as magnetic diskettes or CD ROMS, etc. and loaded into a processor on an as needed basis. Further, the invention may be implemented on a stand-alone computer or by a processor incorporated into a plinter, such as laser-driven electrostatic printer, inkjet printer, etc. Accordingly, the present invention is intended to embrace all such alternatives, modifications and variances which fall within the scope of the appended claims.
This application is a Continuation of U.S. patent application Ser. No. 09/514,963, filed Feb. 29, 2000 now U.S. Pat. No. 6,825,953 the specification of which is incorporated by reference, which was a continuation-in-part of copending U.S. application Ser. No. 09/399,613 filed Sep. 20, 1999 now U.S. Pat. No. 6,707,578.
Number | Name | Date | Kind |
---|---|---|---|
5526445 | Smutek et al. | Jun 1996 | A |
5647026 | Kwarta | Jul 1997 | A |
5822451 | Spaulding et al. | Oct 1998 | A |
5966507 | Lin | Oct 1999 | A |
Number | Date | Country |
---|---|---|
19624205 | Feb 1997 | DE |
0785528 | Jul 1997 | EP |
2196508 | Apr 2000 | GB |
2087683 | May 2002 | GB |
2141895 | Jan 2005 | GB |
08116440 | Jul 1996 | JP |
11008766 | Dec 1999 | JP |
Number | Date | Country | |
---|---|---|---|
20040061904 A1 | Apr 2004 | US |
Number | Date | Country | |
---|---|---|---|
Parent | 09514963 | Feb 2000 | US |
Child | 10665966 | US |
Number | Date | Country | |
---|---|---|---|
Parent | 09399613 | Sep 1999 | US |
Child | 09514963 | US |