EP1503574B1 - Stochastic halftone screening method - Google Patents
Stochastic halftone screening method Download PDFInfo
- Publication number
- EP1503574B1 EP1503574B1 EP04018127A EP04018127A EP1503574B1 EP 1503574 B1 EP1503574 B1 EP 1503574B1 EP 04018127 A EP04018127 A EP 04018127A EP 04018127 A EP04018127 A EP 04018127A EP 1503574 B1 EP1503574 B1 EP 1503574B1
- Authority
- EP
- European Patent Office
- Prior art keywords
- matrix
- pixels
- gray level
- filled
- target gray
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Lifetime
Links
- 238000000034 method Methods 0.000 title claims description 56
- 238000012216 screening Methods 0.000 title claims description 15
- 239000011159 matrix material Substances 0.000 claims description 89
- 238000003384 imaging method Methods 0.000 description 8
- 230000003252 repetitive effect Effects 0.000 description 4
- 238000004364 calculation method Methods 0.000 description 3
- 238000012937 correction Methods 0.000 description 3
- 238000005457 optimization Methods 0.000 description 3
- 238000003491 array Methods 0.000 description 2
- 230000001419 dependent effect Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 238000010367 cloning Methods 0.000 description 1
- 238000009792 diffusion process Methods 0.000 description 1
- 230000002349 favourable effect Effects 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 238000007429 general method Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000002040 relaxant effect Effects 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N1/00—Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
- H04N1/40—Picture signal circuits
- H04N1/405—Halftoning, i.e. converting the picture signal of a continuous-tone original into a corresponding signal showing only two levels
- H04N1/4051—Halftoning, i.e. converting the picture signal of a continuous-tone original into a corresponding signal showing only two levels producing a dispersed dots halftone pattern, the dots having substantially the same size
Definitions
- the present invention relates to halftone screening, and more specifically to a new method for stochastic screening.
- the process of generating a binary image from a continuous-tone image is often referred to as screening and is often implemented by comparing continuous-tone pixel values with those of a dither matrix of threshold values, commonly referred to as "screen”.
- Stochastic screening otherwise known as frequency-modulated screening or dispersed-dithered screening, is based on producing a well-dispersed pattern of isolated dots at spaced pixel locations, the average surface coverage by these dots being equal to a continuous-tone image gray level value represented in a specific location.
- US Patent No. 5,832,122 in the name of Shimazaki describes a method of generating threshold matrix that takes into account dot gain in order to obtain accurate linear gradation data . This goal is achieved by measuring a set of 36 different test patterns and calculating from them a set of empirical correction coefficients that are applied to a weighting filter used to build a threshold matrix from two initial seed pixels upward.
- this method does not deal sufficiently with the issues of graininess and non-uniform artifacts on different levels of thresholding, made visible by threshold matrix cloning in horizontal and vertical directions, because patterns used for correction coefficients calculation are dealing only with four immediate adjacent pixels to a central one, in a cross pattern, and do not take into account diagonat neighbors; this method does not relates to an actual shape of a pixel produced by the imaging device and its effect on adjacent pixels, providing instead empirical correction coefficients based on a subset of possible configurations of colored and blank pixels surrounding a specific pixel being transformed from blank to colored.
- US patent No. 5,469,515 in the name of Lin describes a method of generating a threshold matrix that, in order to achieve artifact-free rendering pattern and accurate linear gradation, takes into account a model of an actual pixel generated by imaging device; creating intermediate pattern based on said model with colored pixels of the intermediate pattern distributed substantially uniformly; and processing the intermediate pattern by means of spatial filtering.
- US Patent 6014500 discloses a stochastic halftoning screening method, which generates stochastic screens to eliminate the Moiré between stochastic screens and checkerboard inputs.
- An optimization algorithm is disclosed, utilizing a merit function.
- said function - as defined in US '500- is not related to single specific pixels and a desirability of said pixels to be black or white at a specific threshold value, but is a property of a plurality of at least two arbitrary chosen pixels. The said optimization process is performed separately on odd and even elements of a threshold matrix.
- the void-and-cluster method for dither array generation' describes a method for generating homogenous dither array.
- a dither array is built by looking for voids and clusters in the intermediate patterns and relaxing them to optimize isotropy. While the method can be used for strikingly high quality artefact-free with relatively small arrays, it is quite general; with different conditions the familiar recursive tessellation arrays can be built.
- Repetitive matrix-based methods are better suited for high-resolution imaging devices, such as imagesetters, platesetters, digital printing presses and high-resolution inkjet printers. Several different factors reduce image quality when using repetitive matrix-based stochastic screens.
- high-resolution frequencies present in the pixel distribution inside the matrix, contribute to an overall "noisy" appearance of the image, especially on relatively large areas with a uniform gray level.
- Data-dependent screening methods being easy to implement and computationally inexpensive, exhibit quasi-periodic patterns visible to the human eye; when used on high-resolution imaging devices, the spatial frequencies of prevailing local quasi-periodic patterns are such that the resulting effect provides an unpleasant visible appearance. Such methods are therefore used mostly on low-resolution printing devices.
- the method additionally comprises the steps of:
- a method of creating a threshold matrix for stochastic screening for an initial target gray level comprising the steps of:
- the method additionally comprises the steps of:
- the merit function represents dot-gain of pixels and/or pixel agglomerates.
- the geometrical function represents halftone dot shapes, such as a square or a circle.
- the present invention deals with the aforementioned limitations of existing stochastic screening methods by using the actual size and shape of imaged pixel and/or pixel agglomerate instead of the nominal one, in the stage of calculating appropriate threshold matrices.
- a matrix with desirable blue-noise-like characteristics is created from actual imaged pixels and/or pixel agglomerates, taking into account their overlap when placed in close proximity (as in midtone and shadow image regions).
- Such matrix produces, for a target combination of imager and imaged media - for each threshold level of an image - an imaged pattern with desirable spatial characteristics and with surface coverage substantially equal to the one required by the gray level being imaged.
- filled pixel's propagation into adjacent pixels is approximated by a geometric shape, described by an analytical function F(x,y).
- the method consists of building a threshold matrix according to actual characteristics of the imaging device (such as pixel shape and physical dot gain), by using actual dot pattern instead of nominal dot pattern at every algorithm step dealing with choosing position for dot placement, such as merit comparisons of alternative possible dot placement positions, and substituting the actual dot pattern for a nominal dot pattern at every subsequent step of the algorithm for creating the chosen threshold matrix.
- Fig. 1 is a flowchart illustrating one exemplary embodiment of the present invention.
- the stochastic screen patterns are built from scratch; namely, the process starts with an empty matrix.
- step 100 a merit function is calculated for all non-filled pixels in the matrix.
- step 110 the pixel with the highest merit function value is filled, followed by updating the values of all adjacent non-filled pixels (step 120).
- step 130 the effective surface coverage percent is calculated and compared, in step 140, with the required gray level. If the required gray level has not been reached yet, the process returns to step 100 for further filling of the matrix. Otherwise, if the required gray level, or its nearest system value has been achieved, the stochastic screen pattern for that gray level is saved, in step 150.
- Fig. 1 is suitable for a process of creating stochastic screen pattern for a monotonous series of gray levels, starting from the brightest level and ending with the darkest level in the series.
- the screen patterns created by the process of Fig. 1 are combined to create a threshold matrix.
- Figs. 2A through 2C are flowcharts illustrating another embodiment of the present invention.
- the process of creating stochastic screen patterns starts with an existing nominal pattern for some nominal system value Vstart.
- This nominal pattern may have been created by any known method for creating stochastic screen patterns.
- step 210 the values of non-filled pixels adjacent (having a common side or comer) to filled pixels are updated, according to the relevant geometrical function F(x,y), followed by calculation of merit function M1 for all filled pixels (step 220), to find a best candidate for removal, and calculation of merit function M2 for all non-filled pixels (step 230), to find a best candidate for filling.
- step 240 the pixel with the highest M1 value is swapped with the pixel with the highest M2 value and in step 250 values of non-filled pixels are updated accordingly.
- step 260 The global merit function is now calculated (step 260) and the difference ⁇ M between the previous and new merit functions is tested for acceptability (step 270).
- ⁇ M will be acceptable as long as it is positive, namely, the overall merit value is increasing, or till some other predefined optimization criterion is reached. If the difference ⁇ M is acceptable, the process returns to step 220, to try to further optimize the screen pattern.
- step 290 the process terminates with a created screen pattern for some actual system value Vact, generally not equal to Vstart.
- the screen pattern is saved for the nominal value Vact.
- Fig. 2B screen patterns are created for gray levels with higher black percentage.
- merit function M2 for all non-filled pixels is calculated in step 300.
- step 310 the pixel with the highest merit function value is filled, followed by updating the values of all adjacent non-filled pixels (step 320).
- step 330 the new effective surface coverage percent is calculated. The effective surface coverage is compared with the required gray level in step 340. If the required gray level has not been achieved yet, the process returns to step 300 for further filling. Otherwise, the created screen pattern is stored for the nominal gray level and the process returns to step 300, to create the screen pattern for the next (darker) gray level.
- step 360 the pixel with the highest merit function value is removed, followed by updating the values of all adjacent non-filled pixels (step 380).
- step 390 the new effective surface coverage percent is calculated. The effective surface coverage is compared with the required gray level in step 400. If the required gray level has not been achieved yet, the process returns to step 360 for further removing. Otherwise, the created screen pattern is stored for the nominal gray level and the process returns to step 360, to create the screen pattern for the next (brighter) gray level.
- the screen patterns created by the processes of Figs.2A through 2C are combined to create a threshold matrix.
- the merit function in the above description relates to the relative desirability of choosing a specific non-filled pixel as a candidate for filling, as compared with other pixels from a plurality of non-filled pixels or, alternatively, the relative desirability of choosing a specific filled pixel as a candidate for converting to a non-filled pixel, as compared to other pixels from a plurality of filled pixels.
- the merit function may be constructed using any known method of creating stochastic screen pattern, for example, void-and-cluster method.
- Fig. 4 is a diagram of the distribution of the coverage percentage of 4x4 pixel tiles, 50% black.
- the dashed line denotes use of prior art matrix with an appropriate X-curve.
- the solid line denotes use of a matrix built according to the method of the present invention.
- Fig. 5 is a diagram of the distribution of the coverage percentage of 4x4 pixel tiles, 33% black.
- the dashed line denotes use of prior art matrix with an appropriate X-curve.
- the solid line denotes use of a matrix built according to the method of the present invention.
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Image Processing (AREA)
- Facsimile Image Signal Circuits (AREA)
Description
- The present invention relates to halftone screening, and more specifically to a new method for stochastic screening.
- The process of generating a binary image from a continuous-tone image is often referred to as screening and is often implemented by comparing continuous-tone pixel values with those of a dither matrix of threshold values, commonly referred to as "screen".
- Stochastic screening, otherwise known as frequency-modulated screening or dispersed-dithered screening, is based on producing a well-dispersed pattern of isolated dots at spaced pixel locations, the average surface coverage by these dots being equal to a continuous-tone image gray level value represented in a specific location.
- Various methods exist for generating stochastic screens. They can be generally divided into two broad categories: data-dependent ones (such as "error diffusion" methods) and data-independent ones, based on repetitive matrix patterns.
-
US Patent No. 5,832,122 in the name of Shimazaki describes a method of generating threshold matrix that takes into account dot gain in order to obtain accurate linear gradation data . This goal is achieved by measuring a set of 36 different test patterns and calculating from them a set of empirical correction coefficients that are applied to a weighting filter used to build a threshold matrix from two initial seed pixels upward. While producing sufficiently linear gradation response this method does not deal sufficiently with the issues of graininess and non-uniform artifacts on different levels of thresholding, made visible by threshold matrix cloning in horizontal and vertical directions, because patterns used for correction coefficients calculation are dealing only with four immediate adjacent pixels to a central one, in a cross pattern, and do not take into account diagonat neighbors; this method does not relates to an actual shape of a pixel produced by the imaging device and its effect on adjacent pixels, providing instead empirical correction coefficients based on a subset of possible configurations of colored and blank pixels surrounding a specific pixel being transformed from blank to colored. -
US patent No. 5,469,515 in the name of Lin describes a method of generating a threshold matrix that, in order to achieve artifact-free rendering pattern and accurate linear gradation, takes into account a model of an actual pixel generated by imaging device; creating intermediate pattern based on said model with colored pixels of the intermediate pattern distributed substantially uniformly; and processing the intermediate pattern by means of spatial filtering. -
US Patent 6014500 discloses a stochastic halftoning screening method, which generates stochastic screens to eliminate the Moiré between stochastic screens and checkerboard inputs. An optimization algorithm is disclosed, utilizing a merit function. However, said function - as defined in US '500- is not related to single specific pixels and a desirability of said pixels to be black or white at a specific threshold value, but is a property of a plurality of at least two arbitrary chosen pixels. The said optimization process is performed separately on odd and even elements of a threshold matrix. - Ulichney, Robert A., Proc. SPIE Vol 1913, p. 332-343, Human vision, Visual Processing and digital display 'The void-and-cluster method for dither array generation' describes a method for generating homogenous dither array. A dither array is built by looking for voids and clusters in the intermediate patterns and relaxing them to optimize isotropy. While the method can be used for strikingly high quality artefact-free with relatively small arrays, it is quite general; with different conditions the familiar recursive tessellation arrays can be built.
- Ostromoukhov and Hersch, Color imaging: Device-Independent Color, Color Hardcopy and Graphic Art IV, SPIE Vol. 3645, p. 496-505, 1999 "Stochastic clustered-dot dithering" describes a method for building stochastic clustered-dot screens.
- Repetitive matrix-based methods are better suited for high-resolution imaging devices, such as imagesetters, platesetters, digital printing presses and high-resolution inkjet printers. Several different factors reduce image quality when using repetitive matrix-based stochastic screens.
- First, high-resolution frequencies, present in the pixel distribution inside the matrix, contribute to an overall "noisy" appearance of the image, especially on relatively large areas with a uniform gray level.
- Second, practically applicable repetitive matrix sizes are such that at high output resolutions the spatial frequency of the matrix repetition produces a highly visible and unpleasant pattern. This is caused by local non-uniformities, when multiplied step-and-repeat fashion in two orthogonal directions.
- Third, the existence of local non-uniformities may depend on the imaged media properties, since imaged pixel growth beyond its nominal border is affected both by media characteristics and by its environment in terms of imaged and non-imaged area, due to pixel-to-pixel interaction. Thus, there is a desire to construct a halftone screen, which minimizes undesirable imaging artifacts for a given imaging media while maintaining the favorable characteristics of a stochastic screen.
- In one aspect of the present invention, there is provided.
- Data-dependent screening methods, being easy to implement and computationally inexpensive, exhibit quasi-periodic patterns visible to the human eye; when used on high-resolution imaging devices, the spatial frequencies of prevailing local quasi-periodic patterns are such that the resulting effect provides an unpleasant visible appearance. Such methods are therefore used mostly on low-resolution printing devices.
- a method of creating a threshold matrix for stochastic screening for an initial target gray level, comprising the steps of:
- i. providing an initial threshold matrix;
- ii. providing a merit function for calculating a value relating to a relative desirability of choosing a specific non-filled pixel as a candidate for filling;
- iii. providing a geometrical function for approximating a geometric shape of filled pixel's propagation into adjacent pixels;
- iv. calculating the value of said merit function for all non-filled pixels in said matrix;
- v. filling one of said pixels for which the value of said merit function is highest;
- vi. updating values of all pixels in said matrix adjacent to said filled pixel according to said geometrical function;
- vii. calculating effective percentage of surface coverage in said matrix;
- viii. comparing said calculated effective coverage with said target gray level;
- ix. repeating steps through until said effective coverage is greater or equal to said target gray level; and
- x. storing said matrix.
- In one embodiment, the method additionally comprises the steps of:
- providing said stored matrix;
- providing a new target gray level, said new target gray level higher than said initial target gray level; and
- performing said steps (iv) through (viii).
- In another aspect of the invention there is provided a method of creating a threshold matrix for stochastic screening for an initial target gray level, comprising the steps of:
- i. providing a threshold matrix representing a nominal screen pattern for said target gray level;
- ii. providing a merit function for calculating a value relating to a relative desirability of choosing a specific non-filled pixel as a candidate for filling;
- iii. providing a geometrical function for approximating a geometric shape of filled pixel's propagation into adjacent pixels;
- iv. updating values of all non-filled pixels in said matrix according to said geometrical function;
- v. calculating a value M1 of said merit function for all filled pixels in said matrix;
- vi. calculating a value M2 of said merit function for all non-filled pixels in said matrix;
- vii. calculating a global value G1 for said merit function for all pixels in matrix;
- viii. swapping values of pixels with highest M1 and M2 values, respectively;
- ix. updating values of all non-filled pixels in said matrix affected by said swapping according to said geometrical function;
- x. calculating a global value G2 of said merit function for all pixels in said matrix;
- xi. comparing G1 with G2;
- xii. repeating said steps (v) through (xi) until said global value G2 is smaller than said global value G1;
- xiii. restoring said swapped values;
- xiv. calculating effective percentage of surface coverage in said matrix; and
- xv. storing said matrix.
- In one embodiment, the method additionally comprises the steps of:
- xvi. providing said stored matrix;
- xvii. providing a new target gray level, said new target gray level higher than said initial target gray level;
- xviii. calculating a value M2 of said merit function for all non-filled pixels in said matrix;
- xix. filling one of said pixels for which said merit function is highest;
- xx. updating values of all non-filled pixels in said matrix adjacent to said filled pixel according to said geometrical function;
- xxi. calculating effective percentage of surface coverage in said matrix;
- xxii. comparing said calculated effective coverage with said new target gray level;
- xxiii. repeating steps (xviii) through (xxii) until said effective coverage is greater or equal to said new target gray level; and
- xxiv. storing said matrix.
- In another embodiment the method additionally comprises the steps of:
- xvi. providing said stored matrix;
- xvii. providing a new target gray level, said new target gray level lower than said initial target gray level;
- xviii. calculating a value M1 of said merit function for all filled pixels in said matrix;
- xix. removing one of said pixels for which said value M 1 is highest;
- xx. updating values of all non-filled pixels in said matrix adjacent to said removed pixel according to said geometrical function;
- xxi. calculating effective percentage of surface coverage in said matrix;
- xxii. comparing said calculated effective coverage with said new target gray level;
- xxiii. repeating steps (xviii) through (xxii) until said effective coverage is greater or equal to said new target gray level; and
- xxiv. storing said matrix.
- According to a further embodiment of the present invention, the merit function represents dot-gain of pixels and/or pixel agglomerates.
- According to yet another embodiment of the present invention, the geometrical function represents halftone dot shapes, such as a square or a circle.
-
-
Fig. 1 is a flowchart illustrating one embodiment of the present invention; -
Figs. 2A through 2C are flowcharts illustrating another embodiment of the present invention; -
Figs. 3A and 3B show geometrical representations of imaged pixels' propagation into adjacent pixels; -
Fig. 4 is a histogram showing surface coverage uniformity for prior arts stochastic screen; and -
Fig. 5 is a histogram showing surface coverage uniformity for the stochastic screen of the present invention. - The present invention deals with the aforementioned limitations of existing stochastic screening methods by using the actual size and shape of imaged pixel and/or pixel agglomerate instead of the nominal one, in the stage of calculating appropriate threshold matrices. For each relevant combination of imager and imaged media, a matrix with desirable blue-noise-like characteristics is created from actual imaged pixels and/or pixel agglomerates, taking into account their overlap when placed in close proximity (as in midtone and shadow image regions). Such matrix produces, for a target combination of imager and imaged media - for each threshold level of an image - an imaged pattern with desirable spatial characteristics and with surface coverage substantially equal to the one required by the gray level being imaged.
- In the following description:
- "Dot pattern" refers to a product or an image resulting from a halftoning or screening process.
- A "nominal screen pattern" for a given gray level refers to a binary pattern of 1's and 0's identifying the location of the "ON" (black) and "OFF" (white) pixels, respectively, in a binary dot pattern for the given gray level.
- A "filled pixel" refers to the "ON" (black) pixel in a dot pattern.
- A "partially filled pixel" refers to an "OFF" (white) pixel adjacent to one or more filled pixels and being partially covered with the image due to filled pixel growth beyond its nominal borders ("dot gain").
- A "free pixel" refers to an "OFF" pixel having no adjacent filled pixels.
- A "non-filled" pixel refers to a free or partially-filled pixel.
- A filled pixel's value is equal to 1 for the purpose of this discussion, such a pixel being 100% covered with image.
- A free pixel's value is equal to 0 for the purpose of this discussion, such a pixel being 0% covered with image.
- A partially-filled pixel may have a value in the range from 0 to 1, its coverage percentage being defined by its environment of filled, partially filled and free pixels.
- For the purpose of this discussion, filled pixel's propagation into adjacent pixels is approximated by a geometric shape, described by an analytical function F(x,y). For example, in case of a square geometric shape, as shown in
Fig. 3a , assuming device resolution Res, dot gain Dg >=0 and system of coordinates starting at the center of an isolated filled pixel being described, we have: - Nominal pixel side length a = 1/res;
- Nominal pixel area Snom = a*a;
- Actual pixel area Sact = Snom*(1+Dg);
- Actual pixel side length b =sqrt(Sact), b>=a; and
- Actual pixel borders are described by four equations:
- In case of a round geometric shape (
Fig 3b ) under the same assumptions and denoting actual pixel radius as Ract, we have: - Actual pixel area Sact=π*Ract*Ract;
- Actual pixel radius Ract = sqrt(Sact/ π); and
- Actual pixel is described by equation:
- Following is a description of a general method for generating a halftone screen for converting an image received at d levels into a dot pattern at c levels, where c<=d, according to the present invention. The method consists of building a threshold matrix according to actual characteristics of the imaging device (such as pixel shape and physical dot gain), by using actual dot pattern instead of nominal dot pattern at every algorithm step dealing with choosing position for dot placement, such as merit comparisons of alternative possible dot placement positions, and substituting the actual dot pattern for a nominal dot pattern at every subsequent step of the algorithm for creating the chosen threshold matrix.
-
Fig. 1 is a flowchart illustrating one exemplary embodiment of the present invention. In this embodiment, the stochastic screen patterns are built from scratch; namely, the process starts with an empty matrix. Instep 100, a merit function is calculated for all non-filled pixels in the matrix. Instep 110, the pixel with the highest merit function value is filled, followed by updating the values of all adjacent non-filled pixels (step 120). Instep 130, the effective surface coverage percent is calculated and compared, instep 140, with the required gray level. If the required gray level has not been reached yet, the process returns to step 100 for further filling of the matrix. Otherwise, if the required gray level, or its nearest system value has been achieved, the stochastic screen pattern for that gray level is saved, instep 150. If more stochastic screen patterns are required, for additional higher (darker) gray levels, the process returns to step 100, to create the next stochastic screen pattern from the previously calculated one. The embodiment ofFig. 1 is suitable for a process of creating stochastic screen pattern for a monotonous series of gray levels, starting from the brightest level and ending with the darkest level in the series. The screen patterns created by the process ofFig. 1 are combined to create a threshold matrix. -
Figs. 2A through 2C are flowcharts illustrating another embodiment of the present invention. In this embodiment, the process of creating stochastic screen patterns starts with an existing nominal pattern for some nominal system value Vstart. This nominal pattern may have been created by any known method for creating stochastic screen patterns. - The flowchart of
Fig. 2A represents the first stage of the process, in which the existing nominal pattern for system value Vstart is transformed to a screen pattern according to the present invention. Instep 210, the values of non-filled pixels adjacent (having a common side or comer) to filled pixels are updated, according to the relevant geometrical function F(x,y), followed by calculation of merit function M1 for all filled pixels (step 220), to find a best candidate for removal, and calculation of merit function M2 for all non-filled pixels (step 230), to find a best candidate for filling. Instep 240, the pixel with the highest M1 value is swapped with the pixel with the highest M2 value and instep 250 values of non-filled pixels are updated accordingly. The global merit function is now calculated (step 260) and the difference ΔM between the previous and new merit functions is tested for acceptability (step 270). ΔM will be acceptable as long as it is positive, namely, the overall merit value is increasing, or till some other predefined optimization criterion is reached. If the difference Δ M is acceptable, the process returns to step 220, to try to further optimize the screen pattern. - Otherwise, the last swap is retracted in
step 280 and the effective surface coverage and gray level of the created screen pattern are calculated (step 290). The process terminates with a created screen pattern for some actual system value Vact, generally not equal to Vstart. The screen pattern is saved for the nominal value Vact. - Starting from the screen pattern created for the system value Vact in the process of
Fig. 2A , the process may now proceed to create screen patterns for higher and/or lower system values, as described hereinbelow with reference toFigs. 2B and2C . - In
Fig. 2B , screen patterns are created for gray levels with higher black percentage. Starting with the previously created screen pattern, merit function M2 for all non-filled pixels is calculated instep 300. Instep 310 the pixel with the highest merit function value is filled, followed by updating the values of all adjacent non-filled pixels (step 320). Instep 330 the new effective surface coverage percent is calculated. The effective surface coverage is compared with the required gray level instep 340. If the required gray level has not been achieved yet, the process returns to step 300 for further filling. Otherwise, the created screen pattern is stored for the nominal gray level and the process returns to step 300, to create the screen pattern for the next (darker) gray level. - Similarly, in
Fig. 2C , screen patterns are created for gray levels with smaller black percentage. Starting with the previously created screen pattern ofFig. 2A , merit function M1 for all filled pixels is calculated instep 360. Instep 370 the pixel with the highest merit function value is removed, followed by updating the values of all adjacent non-filled pixels (step 380). Instep 390 the new effective surface coverage percent is calculated. The effective surface coverage is compared with the required gray level instep 400. If the required gray level has not been achieved yet, the process returns to step 360 for further removing. Otherwise, the created screen pattern is stored for the nominal gray level and the process returns to step 360, to create the screen pattern for the next (brighter) gray level. - The screen patterns created by the processes of
Figs.2A through 2C are combined to create a threshold matrix. - The merit function in the above description relates to the relative desirability of choosing a specific non-filled pixel as a candidate for filling, as compared with other pixels from a plurality of non-filled pixels or, alternatively, the relative desirability of choosing a specific filled pixel as a candidate for converting to a non-filled pixel, as compared to other pixels from a plurality of filled pixels. The merit function may be constructed using any known method of creating stochastic screen pattern, for example, void-and-cluster method.
- One possible implementation of a merit function is described herein below.
- Assume we are creating a threshold matrix of size S. Then, let's define a matrix K[2n+1][2n+1] of weight coefficients, such that matrix coefficient K(n,n) - a central one - is equal to 0 and 2n+1 < S.
- On each subsequent stage of the matrix creation we have a corresponding pixel-map matrix Pmap[S][S], such that Pmap[i][j] = 1 if pixel p[i][j] is filled and Pmap[i][j] = 0 if pixel p[i][j] is not filled; we additionally have a corresponding matrix V[S][S], representing black coverage of respective pixels, so that V(i,j) = 1 for a filled pixel and 0<=V(i,j) < 1 for a non-filled pixel (in case of zero dot gain and absence of propagation of filled pixel into adjacent non-filled pixels, V(i,j) for a non-filled pixel is equal to 0).
- Merit function M(p,q) for a non-filled pixel P(p,q) with coordinates (p,q) would then be:
where V(c,d) is a level of black coverage of a pixel with coordinates (c,d), 0<=V(c.d)<=1. (1 - V(c,d)) is, thus, the fraction of white in a pixel with coordinates (c,d).
For example, let n = 1, 2n+1 =3 and matrix K[3] [3] = {{1,2,1},
{2,0,2,},
{1,2,1}};
and let the relevant part of pixel-map matrix Pmap in the vicinity of pixel P(p,q) be, for example
p-1 p p+1
q-1 0 1 0
q 1 0 0
q+1 0 1 0
where p+1 < S, q+1 < S. - Assuming dot gain 0 (no propagation from filled pixels to adjacent non-filled pixels), the corresponding part of matrix V will be equal to pixel-map matrix Pmap.
-
-
Fig. 4 is a diagram of the distribution of the coverage percentage of 4x4 pixel tiles, 50% black. The dashed line denotes use of prior art matrix with an appropriate X-curve. The solid line denotes use of a matrix built according to the method of the present invention. -
Fig. 5 is a diagram of the distribution of the coverage percentage of 4x4 pixel tiles, 33% black. The dashed line denotes use of prior art matrix with an appropriate X-curve. The solid line denotes use of a matrix built according to the method of the present invention.
Claims (9)
- A method of creating a threshold matrix for stochastic screening for an initial target gray level, comprising the steps of:i. providing an initial threshold matrix;ii. providing a merit function for calculating a value representing a relative desirability of choosing a specific non-filled pixel as a candidate for filling;iii. providing a geometrical function for approximating a geometric shape of filled pixel's propagation into adjacent pixels;iv. calculating (100) the value of said merit function for all non-filled pixels in said matrix;v. filling (110) one of said pixels for which the value of said merit function is highest;vi. updating (120) values of all pixels in said matrix adjacent to said filled pixel according to said geometrical function;vii. calculating (130) effective percentage of surface coverage in said matrix;viii. comparing (140) said calculated effective coverage with said target gray level;ix. repeating steps (iv) through (viii) until said effective coverage is greater or equal to said target gray level; andx. storing said matrix.
- The method of claim 1, additionally comprising the steps of:providing said stored matrix;providing a new target gray level, said new target gray level higher than said initial target gray level; andperforming said steps (iv) through (viii).
- A method of creating a threshold matrix for stochastic screening for an initial target gray level, comprising the steps of:i. providing a threshold matrix representing a nominal screen pattern for said target gray level;ii. providing a merit function for calculating a value representing a relative desirability of choosing a specific non-filled pixel as a candidate for filling;iii. providing a geometrical function for approximating a geometric shape of filled pixel's propagation into adjacent pixels;iv. updating (210) values of all non-filled pixels in said matrix according to said geometrical function;v. calculating (220) a value (M 1) of said merit function for all filled pixels in said matrix;vi. calculating (230) a value (M2) of said merit function for all non-filled pixels in said matrix;vii. calculating a global value (G1) for said merit function for all pixels in matrix;viii. swapping (240) values of pixels with highest (M1) and (M2) values, respectively;ix. updating (250) values of all non-filled pixels in said matrix affected by said swapping according to said geometrical function;x. calculating a global value (G2) of said merit function for all pixels in said matrix;xi. comparing (260) said global value (G1) with said global value (G2);xii. repeating said steps (v) through (xi) until said global value (G2) is smaller than said global value (G1);xiii. restoring (280) said swapped values;xiv. calculating (290) effective percentage of surface coverage in said matrix; andxv. storing said matrix.
- The method of claim 3, additionally comprising the steps of:xvi. providing said stored matrix;xvii. providing a new target gray level, said new target gray level higher than said initial target gray level;xviii. calculating a value (M2) of said merit function for all non-filled pixels in said matrix;xix. filling one of said pixels for which said merit function is highest;xx. updating values of all non-filled pixels in said matrix adjacent tosaid filled pixel according to said geometrical function;xxi. calculating effective percentage of surface coverage in said matrix;xxii. comparing said calculated effective coverage with said new target gray level;xxiii. repeating steps (xviii) through (xxii) until said effective coverage is greater or equal to said new target gray level; andxxiv. storing said matrix.
- The method of claim 3, additionally comprising the steps of:xvi. providing said stored matrix;xvii. providing a new target gray level, said new target gray level lower than said initial target gray level;xviii. calculating a value (M1) of said merit function for all filled pixels in said matrix;xix. removing one of said pixels for which said value (M1) is highest;xx. updating values of all non-filled pixels in said matrix adjacent to said removed pixel according to said geometrical function;xxi. calculating effective percentage of surface coverage in said matrix;xxii. comparing said calculated effective coverage with said new target gray level;xxiii. repeating steps (xviii) through (xxii) until said effective coverage is greater or equal to said new target gray level; andxxiv. storing said matrix.
- The method according to any one of claims 1 - 5, wherein said merit function represents dot-gain of pixels and/or pixel agglomerates.
- The method according to any one of claims 1 - 5, wherein said geometrical function represents halftone dot shapes.
- The method of claim 7, wherein said geometrical function is a square.
- The method of claim 8, wherein said geometrical function is a circle.
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US630844 | 2003-07-31 | ||
| US10/630,844 US7277204B2 (en) | 2003-07-31 | 2003-07-31 | Stochastic halftone screening method |
Publications (3)
| Publication Number | Publication Date |
|---|---|
| EP1503574A2 EP1503574A2 (en) | 2005-02-02 |
| EP1503574A3 EP1503574A3 (en) | 2005-08-17 |
| EP1503574B1 true EP1503574B1 (en) | 2013-01-16 |
Family
ID=33541502
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| EP04018127A Expired - Lifetime EP1503574B1 (en) | 2003-07-31 | 2004-07-30 | Stochastic halftone screening method |
Country Status (3)
| Country | Link |
|---|---|
| US (1) | US7277204B2 (en) |
| EP (1) | EP1503574B1 (en) |
| CA (1) | CA2475812A1 (en) |
Families Citing this family (9)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN100559835C (en) * | 2005-10-27 | 2009-11-11 | 帆宣系统科技股份有限公司 | Method and device for dynamic contrast stretching of image |
| US20090034008A1 (en) * | 2007-08-03 | 2009-02-05 | Lawrence Croft | Method for generating stochastic dither matrix |
| US20090034006A1 (en) * | 2007-08-03 | 2009-02-05 | Blondal Daniel J | Stochastic halftone images based on screening parameters |
| US9042427B2 (en) | 2011-03-14 | 2015-05-26 | Mohit Singh | Methods for generating multi-level pseudo-random sequences |
| US9036212B2 (en) | 2012-01-06 | 2015-05-19 | Ricoh Production Print Solutions LLC | Halftone screen generation mechanism |
| US8797601B2 (en) * | 2012-03-22 | 2014-08-05 | Xerox Corporation | Method and system for preserving image quality in an economy print mode |
| US8773722B2 (en) | 2012-04-05 | 2014-07-08 | Infoprint Solutions Company Llc | Hybrid halftone generation mechanism using change in pixel error |
| US9124841B2 (en) | 2013-11-26 | 2015-09-01 | Xerox Corporation | Connected component analysis with multi-thresholding to segment halftones |
| US9332155B2 (en) | 2014-02-04 | 2016-05-03 | Ricoh Company, Ltd. | Digital image halftone conversion with selective enhancement |
Citations (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US6014500A (en) * | 1998-06-01 | 2000-01-11 | Xerox Corporation | Stochastic halftoning screening method |
Family Cites Families (12)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5309526A (en) | 1989-05-04 | 1994-05-03 | At&T Bell Laboratories | Image processing system |
| US5469268A (en) | 1991-02-22 | 1995-11-21 | At&T Corp. | Display model-based error criterion halftoning |
| EP0593304B1 (en) * | 1992-10-15 | 1999-04-14 | Digital Equipment Corporation | Generation of templates having homogeneously distributed binary elements, for use in halftone image reproduction |
| US5473439A (en) | 1992-10-23 | 1995-12-05 | At&T Corp. | Model-based halftoning of color images |
| US5469515A (en) * | 1993-05-03 | 1995-11-21 | Lin; Qian | Halftone image formation using dither matrix generated based upon printed symbol models |
| DE69417832T2 (en) * | 1993-09-28 | 1999-08-12 | Hewlett-Packard Co., Palo Alto, Calif. | Digital halftone raster reproduction of a gray tone image with frequency-dependent diagonal correlation |
| DE69517855T2 (en) * | 1994-04-29 | 2001-03-01 | Adobe Systems, Inc. | Method for generating a threshold matrix |
| US5832122A (en) * | 1995-03-24 | 1998-11-03 | Fuji Photo Film Co., Ltd. | Method of processing image data |
| JP2002044446A (en) * | 2000-07-21 | 2002-02-08 | Fuji Xerox Co Ltd | Image processor and image processing method, and method for generating threshold matrix for generating halftone image |
| US6710778B2 (en) | 2001-02-12 | 2004-03-23 | Lexmark International, Inc. | Method for halftoning using a difference weighting function |
| JP4204000B2 (en) * | 2003-12-02 | 2009-01-07 | 株式会社リコー | Dither matrix creation method and apparatus, image processing method and apparatus, image forming method and apparatus, program, and recording medium |
| US20060197992A1 (en) * | 2005-03-02 | 2006-09-07 | Xerox Corporation | Stochastic screens for rendering devices with high-addressability |
-
2003
- 2003-07-31 US US10/630,844 patent/US7277204B2/en not_active Expired - Fee Related
-
2004
- 2004-07-26 CA CA002475812A patent/CA2475812A1/en not_active Abandoned
- 2004-07-30 EP EP04018127A patent/EP1503574B1/en not_active Expired - Lifetime
Patent Citations (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US6014500A (en) * | 1998-06-01 | 2000-01-11 | Xerox Corporation | Stochastic halftoning screening method |
Also Published As
| Publication number | Publication date |
|---|---|
| US7277204B2 (en) | 2007-10-02 |
| US20050024685A1 (en) | 2005-02-03 |
| EP1503574A3 (en) | 2005-08-17 |
| EP1503574A2 (en) | 2005-02-02 |
| CA2475812A1 (en) | 2005-01-31 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US6101285A (en) | Filter for producing continuous tone images from halftone digital images data | |
| US5543941A (en) | Method and apparatus for halftone rendering of a gray image using a blue noise mask | |
| EP0749231B1 (en) | Method and apparatus for halftone rendering of a gray scale image using a blue noise mask | |
| EP0562813B1 (en) | System and method for converting halftone images to continuous-tone images | |
| EP1392048B1 (en) | Halftone dot-growth technique based on morphological filtering | |
| US5761325A (en) | Digital halftone rendering of a gray scale image with frequency-dependent diagonal correlation | |
| Katsavounidis et al. | A multiscale error diffusion technique for digital halftoning | |
| EP1422925B1 (en) | Method and apparatus using anisotropic stochastic screening for halftoning using anamorphic pixels | |
| US6704123B1 (en) | Method for applying tonal correction to a binary halftone image | |
| EP0977424B1 (en) | Halftone printing using donut filters | |
| EP1366618B1 (en) | Error diffusion with partial dots method and system | |
| US7580074B2 (en) | Digital halftoning technique based on 1-D multi-scale dot assignment | |
| US6962400B2 (en) | Sub-dot phase modulation for computer to plate inkjet system | |
| AU743319B2 (en) | Method and apparatus for producing threshold arrays using variance minimization and pixel angle calculations | |
| JPH0785273A (en) | Frequency modulation halftone image and method of making | |
| US6025930A (en) | Multicell clustered mask with blue noise adjustments | |
| US7277204B2 (en) | Stochastic halftone screening method | |
| AU2004225390B2 (en) | Methods and apparatus for dynamically soft proofing halftone images | |
| JP3762800B2 (en) | How to create a mesh screen | |
| US6515770B1 (en) | Dither mask generation with calibration-independent number of threshold levels | |
| US20040090654A1 (en) | FM screening with sub-dot phase modulation | |
| US9167130B2 (en) | AM-FM halftone screen design | |
| JP4108517B2 (en) | Halftoning processing method and halftoning processing system | |
| US6597813B1 (en) | Masks with modulated clustering and aperiodicity and rescaling of masks | |
| US7446904B2 (en) | Methods and apparatus for generating dither mask through interpolation between preferred patterns |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| PUAI | Public reference made under article 153(3) epc to a published international application that has entered the european phase |
Free format text: ORIGINAL CODE: 0009012 |
|
| AK | Designated contracting states |
Kind code of ref document: A2 Designated state(s): AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IT LI LU MC NL PL PT RO SE SI SK TR |
|
| AX | Request for extension of the european patent |
Extension state: AL HR LT LV MK |
|
| PUAL | Search report despatched |
Free format text: ORIGINAL CODE: 0009013 |
|
| AK | Designated contracting states |
Kind code of ref document: A3 Designated state(s): AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IT LI LU MC NL PL PT RO SE SI SK TR |
|
| AX | Request for extension of the european patent |
Extension state: AL HR LT LV MK |
|
| 17P | Request for examination filed |
Effective date: 20060127 |
|
| AKX | Designation fees paid |
Designated state(s): BE DE FR GB |
|
| RAP1 | Party data changed (applicant data changed or rights of an application transferred) |
Owner name: KODAK IL LTD. |
|
| 17Q | First examination report despatched |
Effective date: 20070212 |
|
| GRAP | Despatch of communication of intention to grant a patent |
Free format text: ORIGINAL CODE: EPIDOSNIGR1 |
|
| GRAS | Grant fee paid |
Free format text: ORIGINAL CODE: EPIDOSNIGR3 |
|
| GRAA | (expected) grant |
Free format text: ORIGINAL CODE: 0009210 |
|
| AK | Designated contracting states |
Kind code of ref document: B1 Designated state(s): BE DE FR GB |
|
| REG | Reference to a national code |
Ref country code: GB Ref legal event code: FG4D |
|
| REG | Reference to a national code |
Ref country code: DE Ref legal event code: R096 Ref document number: 602004040773 Country of ref document: DE Effective date: 20130314 |
|
| PLBE | No opposition filed within time limit |
Free format text: ORIGINAL CODE: 0009261 |
|
| STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: NO OPPOSITION FILED WITHIN TIME LIMIT |
|
| 26N | No opposition filed |
Effective date: 20131017 |
|
| BERE | Be: lapsed |
Owner name: KODAK IL LTD. Effective date: 20130731 |
|
| REG | Reference to a national code |
Ref country code: DE Ref legal event code: R097 Ref document number: 602004040773 Country of ref document: DE Effective date: 20131017 |
|
| GBPC | Gb: european patent ceased through non-payment of renewal fee |
Effective date: 20130730 |
|
| REG | Reference to a national code |
Ref country code: FR Ref legal event code: ST Effective date: 20140331 |
|
| PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: GB Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 20130730 Ref country code: BE Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 20130731 |
|
| PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: FR Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 20130731 |
|
| PGFP | Annual fee paid to national office [announced via postgrant information from national office to epo] |
Ref country code: DE Payment date: 20150731 Year of fee payment: 12 |
|
| REG | Reference to a national code |
Ref country code: DE Ref legal event code: R119 Ref document number: 602004040773 Country of ref document: DE |
|
| PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: DE Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 20170201 |


