Patent Abstract:
A system and method of calibration, screening, and compensation is presented for multiple gray-level digital presses. Unequal quantization of the input range is employed with compensated overlapping of sub-ranges. Multiple instances of bi-level screening algorithms, tone modification functions, and a recombination algorithm are employed to produce calibrated screening on individual tone ranges. The method works with any bi-level screening algorithm and devices with any number of gray-levels. Quality imaging results from high detail, high tonal accuracy, low screening noise, and lack of printed artifacts. Dynamic re-calibration is facilitated. The elimination of the constraint of evenly spaced gray-levels also has advantages of cost and yield for both print head fabricators as well as digital press manufacturers. Multiple implementations of the system and method are given for both hardware and software embodiments of the invention.

Full Description:
CROSS-REFERENCE TO RELATED APPLICATIONS 
       [0001]    This application claims priority to U.S. Provisional Application Ser. No. 61/932,848 filed on Jan. 29, 2014, now pending, U.S. Provisional Application Ser. No. 61/993,976 filed on May 15, 2014, now pending, and U.S. Provisional Application Ser. No. 62/067,790 filed on Oct. 23, 2014, now pending, all of which are hereby incorporated into this specification by reference in their entirety. 
     
    
     BACKGROUND OF THE INVENTION 
       [0002]      FIG. 1  shows a conventional bi-level digital printing system  100  having a bi-level digital printing machine  102  and a raster image processor  104  widely used by commercial print shops to print high volume and high quality prints from an input file  80  such as a raster file format (tiff, JPEG, etc.) or a vector file format (pdf, Postscript, etc.). Bi-level digital printing machine  102  has a plurality of fixed print heads (not shown) each having a plurality of fixed nozzles (not shown) that can print a single sized dot or no dot as the paper passes under the nozzles. Raster image processor  104  has an interpretation module  106  and a rendering module  108 . As is well known in the art, interpretation module  106  and rendering module  108  have computer instructions or code to produce an unscreened raster image file  110  from input file  80  that is in a non-raster image format (for example, pdf). If input file  80  is a raster file, then input file  80  requires only raster processes, such as scaling and color conversion, to produce unscreened raster image file  110 . 
         [0003]      FIG. 2  shows a generic unscreened raster image file  110  produced by rendering module  108  (w pixels wide by h lines high). Each pixel of unscreened raster image file  110  has a continuous tone value (for example, 0-1023 for 10 bit tone values) for each colorant of Cyan, Magenta, Yellow and black (CMYK). In order to print unscreened raster image file  110  on bi-level digital printing machine  102 , raster image processor  104  further comprises a screening module  114  ( FIG. 1 ) that has computer instructions to screen or convert the continuous tone value of each pixel of unscreened raster image file  110  to a print level value (0 or 1) stored in an output bitmap file  116  ( FIG. 1 ) using a well known half-toning algorithm such as threshold screening or AM screening. 
         [0004]      FIG. 3  shows a high level flow chart of conventional screening module  114  of raster image processor  104 . For each pixel on each line of an input unscreened raster file  110 , whose coordinates are X and Y, the continuous tone value is processed into a 1-bit output value by a half-toning algorithm. 
         [0005]    Multi level printing machines are being developed where a nozzle can print more than two (2) levels for each printed pixel, such as a four level machine. For example, in a four level machine, each nozzle can print no dot, a small dot, a medium dot or a large dot thereby allowing for a much finer quality print.  FIG. 4  shows a generic screened 2-bit output bitmap file for a 4-level digital printing machine. Each pixel has a value of 0-3, with a set of raster data for each printing ink or colorant. 
         [0006]      FIG. 5  shows a conventional way of partitioning the tone ranges in equal parts for a 4-level press having 3 dot sizes. One disadvantage of such contiguous sectioning of the printed tone range into equal parts, one for each output tone level for each colorant, is an artifact of flattening or visible loss of screening at the boundaries between the levels. 
         [0007]      FIG. 6  is a graph illustrating a response that one would expect for a perfectly built and correctly operating or ideal digital printing machine. For such an ideal press, an input tone value of 33.3% from the unscreened raster file results in a patch of small size dots having a measured print strength of 33.3 percent. However, no digital printing machine operates in an ideal manner. 
         [0008]      FIG. 7  is a graph illustrating a response for a digital printing machine that behaves in a non-ideal manner. In this example, an input tone value of 33.3% from the unscreened raster file results in a patch of small size dots having a measured print strength of 45 percent and not 33.3 percent. Further, an input tone value of 66.7 percent results in a patch of all medium size dots having a measured print strength of 55 percent and not 66.7 percent. As such, unwanted artifacts in the print are created as a result of the print heads of the digital printing machine producing a stronger or lighter intensity level for any continuous tone value of the unscreened raster file. These improper values and the intermediate values need to be carefully compensated. 
       SUMMARY OF THE INVENTION 
       [0009]    One object of the present invention is to provide a raster image processor and method thereof that produces a high quality multi-level screened output bit map file for digital printing machines that easily, accurately, and precisely removes the flattened tone contour artifacts. 
         [0010]    Another object of the present invention is to provide a raster image processor and method thereof that removes unwanted artifacts in the print created as a result of the print heads of the digital printing machine producing a stronger or lighter intensity levels. 
         [0011]    Another object of the present invention is to provide a raster image processor and method thereof that produces a high quality multi-level screened output bit map file for digital printing machines that employs any bi-level half-toning algorithm. 
         [0012]    Another object of the present invention is to provide a raster image processor and method thereof that produces a high quality multi-level screened output bit map file for digital printing machines with an arbitrary number of gray levels, not limited to a power of 2. 
         [0013]    Another object of the present invention is to provide a raster image processor and method thereof that produces a high quality multi-level screened output bit map file for digital printing machines whose multiple gray levels are extremely far from being equally spaced in the tone range, thus giving expanded design leeway to designers of new digital printing machines. 
         [0014]    Another object of the present invention is to provide a raster image processor and method thereof that produces a high quality multi-level screened output bit map file for digital printing machines with a calibration method and system that is straightforward, accurate, powerful, and quick, enabling rapid adaptation to changing print conditions, print heads, nozzles, electronics, and other physical varying factors. 
         [0015]    The present invention is a raster image processor for producing a screened multi-bit data output file for a digital printing machine having the ability to print on a page a first printable tone level, a second printable tone level, and a third printable tone level, from an unscreened raster data file specifying a continuous tone value for a first colorant for each printable position of the page. In one embodiment, the raster image processor comprises a computing device, a memory device, and a screening module stored on the memory device. The screening module comprises a tone sub-range module configured to produce first, second, and third tonal sub-ranges corresponding to the first, second, and third printable tone levels, respectively, for each colorant, namely Cyan, Magenta, Yellow, and Black (CMYK). Each of the first, second, and third tonal sub-ranges comprising beginning and ending boundary tone values defining first, second, and third tone range spans and a first transition tone value to be the value of both the ending boundary tone value of the first tonal sub-range and the beginning boundary tone value of the second tonal sub-range and a second transition tone value to be the value of both the ending boundary tone value of the second tonal sub-range and the beginning boundary tone value of the third tonal sub-range. The raster image processor further comprises a shifting module configured to shift the position of the first and second transition tone values so that the first tone range span is different from the second tone range span and said third tone range span. The raster image processor further comprises a pixel processing module comprising a tone modification sub-module configured to produce modified output tone values by first, second, and third tone modification functions for the first, second, and third tonal sub-ranges, respectively. The pixel processing module further comprising an output sub-module configured to produce a single multi-bit output value corresponding to each colorant for each printable position on the page by using the modified output tone values from the first, second, and third tone modification functions as inputs to at least one bi-level half-toning algorithm. 
         [0016]    Non-equal quantization of the input tone range, with overlap of the sub-ranges, leads to a dynamic system with multiple advantages. For example, any halftoning mechanism may be used, whether it be AM, FM, Stochastic, Threshold matrix based, Error Diffusion, or any other. Further, the method may be implemented in either software or hardware, whether it employs CPU programs, GPU kernels, ASIC chips, FPGAs, or discrete logic. Further, the shifting of the quantization points (first and/or second transition tone values) acts as a first level of compensation for profiled printheads. Furthermore the overlapping eliminates the contour artifacts otherwise visible at quantized tone level boundaries. 
     
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         [0017]    The following description of the invention will be further understood with reference to the accompanying drawings, in which: 
           [0018]      FIG. 1  is a high level block diagram showing the architecture of a conventional raster image processor used to produce a conventional output bit map file for a bi-level digital printing machine; 
           [0019]      FIG. 2  illustrates a conventional raster image file produced by a conventional rendering modules having a plurality of printable positions of a page defined by pixel location, line number, and CMYK value; 
           [0020]      FIG. 3  shows a high level flow chart of a conventional screening module of a rip. For each pixel on each line of an input unscreened raster file, whose coordinates are X and Y, the continuous tone value is processed into a 1-bit output value via a half-toning algorithm. 
           [0021]      FIG. 4  illustrates a conventional screened bit map output file stored in a bitmap memory device for each of the colorants Cyan, Magenta, Yellow, and Black for printable positions of a page defined by pixel location and line number. Each of the printable positions of the bit map has a 4-level output value (0-3) indicative of no dot, a small dot, a medium dot, and a large dot; 
           [0022]      FIG. 5  illustrates a conventional full tone range for a first colorant having three equal tonal sub-ranges corresponding to small, medium, and large size dots, respectively; 
           [0023]      FIG. 6  is a graph illustrating a response that one would expect for a perfectly built and correctly operating or ideal digital printing machine; 
           [0024]      FIG. 7  is a graph illustrating a response for a digital printing machine that behaves in a non-ideal manner; 
           [0025]      FIG. 8  is a high level block diagram showing the architecture of a raster image processor according to the present invention used to produce a bit map output file for a digital printing machine capable of printing multiple levels such as a no dot level, a small dot level, a medium dot level, and a large dot level; 
           [0026]      FIG. 9  is a high level block diagram showing the Screening Module according to the present invention comprising a Calibration Module and a Pixel Processing Module comprising a Tone Sub-range sub-module, a Boundary Shifting sub-module, an Overlap sub-module, a Tone Modification sub-module, and an Output sub-module 
           [0027]      FIG. 10  is a high level flow chart showing the operation of the Screening Module according to the present invention; 
           [0028]      FIG. 11  is a high level flow chart showing the operation of the pixel processing module of the screening module according to the present invention; 
           [0029]      FIG. 12  is a high level flow chart showing the operation of the calibration module of the screening module; 
           [0030]      FIG. 13  is a high level flow chart showing an example of the process of the Calibration Sub-module; 
           [0031]      FIG. 14  illustrates a test pattern of the calibration module; 
           [0032]      FIG. 15  illustrates a digital press profile according to the present invention; 
           [0033]      FIG. 16  illustrates a full tone range for a first colorant comprising three tonal sub-ranges corresponding to a first printable tone level (for example, a small size dot), a second printable tone level (for example, a medium size dot), and a third printable tone level (for example, a large size dot), respectively, with the tonal sub-ranges shifted; 
           [0034]      FIG. 17A  illustrates a tone modification function for a first printable tone level (for example, a small size dot) after transition point shifting according to the present invention; 
           [0035]      FIG. 17B  illustrates a tone modification function for a second printable tone level (for example, a medium size dot) after transition point shifting according to the present invention; 
           [0036]      FIG. 17C  illustrates a tone modification function for a third printable tone level (for example, a large size dot) after transition point shifting according to the present invention; 
           [0037]      FIG. 18  is a high level flow chart showing the process of raster image processor according to the present invention; 
           [0038]      FIG. 19  is a flow chart showing the operation of the Screening Module according to the present invention using example measurements; 
           [0039]      FIG. 20  is a flow chart showing the process of the tone modification sub-module of the pixel processing module; 
           [0040]      FIG. 21  is a flow chart showing an example of the process of the tone modification sub-module with example calculations; 
           [0041]      FIG. 22  illustrates solid patches of large dots which may be purposely oversized to enable solid coverage and may require additional linearization using conventional dot gain compensation methods; 
           [0042]      FIG. 23  illustrates a non-linear dot area response curve and its inverse function for input compensation. 
           [0043]      FIG. 24  is a flow chart showing the operation of the pixel processing module; 
           [0044]      FIG. 25  is a flow chart of example pseudo code showing the operation of the pixel processing module; 
           [0045]      FIG. 26  is a high level schematic of the pixel processing module of the screening module shown in a hardware implementation for discrete logic, ASIC chips, FPGAs, etc, with threshold matrix or supercell type of screening; 
           [0046]      FIG. 27  is a high level schematic of the output sub-module of the screening module according to the present invention shown in a hardware implementation for discrete logic, ASIC chips, FPGAs, etc, where each output tone value is assigned a level of 0, 1, 2, or 3 corresponding to no dot, small dot, medium dot, and large dot, respectively; 
           [0047]      FIG. 28  is a high level schematic of the pixel processing module of the screening module shown in a hardware implementation for discrete logic, ASIC chips, FPGAs, etc, for an error diffusion type of screening; 
           [0048]      FIG. 29  is a high level schematic of one implementation of a tone modification function in hardware suitable for discrete logic, ASIC chips, FPGAs, etc.; 
           [0049]      FIG. 30  is a block diagram illustrating an alternate implementation of a tone modification function employing a look-up table in memory, suitable for a hardware or a software implantation, comprising pre-computed tone modification values for a single printable tone level (for example, a small size dot, a medium size dot, or a large size dot); 
           [0050]      FIG. 31  is a high level flow chart showing the operation of a first embodiment of the overlap module with simple overlap; 
           [0051]      FIG. 32  is a graph showing a full tone range for a first colorant comprising three equally spaced tonal sub-ranges corresponding to a small dot size level, a medium dot size level, and a large dot size level, respectively, with the second tonal sub-range overlapping the first tonal sub-range and the third tonal sub-range overlapping the second tonal sub-range; 
           [0052]      FIG. 33  illustrates a full tone range for a first colorant comprising three tonal sub-ranges corresponding to a first printable tone level (for example, a small size dot), a second printable tone level (for example, a medium size dot), and a third printable tone level (for example, a large size dot), respectively, with shifting and simple overlapping of the tonal sub-ranges; 
           [0053]      FIG. 34A  is a graph of a tone modification function for the first printable tone level (for example, a small size dot) of a first colorant (for example, Cyan) with shifting and simple overlapping; 
           [0054]      FIG. 34B  is a graph of a tone modification function for the second printable tone level (for example, a medium size dot) of a first colorant (for example, Cyan) with shifting and simple overlapping; 
           [0055]      FIG. 34C  is a graph of a tone modification function for the third printable tone level (for example, a large size dot) of a first colorant (for example, Cyan) with shifting and simple overlapping; 
           [0056]      FIG. 35  is a high level flow chart showing the process of a second embodiment of the overlap module with shifting and bi-directional overlapping; 
           [0057]      FIG. 36  is a graph showing a full tone range for a first colorant (for example, Cyan) comprising three equally spaced tonal sub-ranges corresponding to a first printable tone level (for example, a small dot size), a second printable tone level (for example, a medium dot size), and third printable tone level (for example, a large dot size), respectively, with the second tonal sub-range bi-directionally overlapping the first tonal sub-range and the third tonal sub-range bi-directionally overlapping the second tonal sub-range; 
           [0058]      FIG. 37A  is a graph of a tone modification function for the first printable tone level (for example, a small size dot) with shifting and bi-directional overlapping; 
           [0059]      FIG. 37B  is a graph of a tone modification function for the second printable tone level (for example, a medium size dot) with shifting and bi-directional overlapping; 
           [0060]      FIG. 37C  is a graph of a tone modification function for the third printable tone level (for example, a large size dot) with shifting and bi-directional overlapping; 
           [0061]      FIG. 38  is an example of calibration and screening parameter calculations for a single colorant; and 
           [0062]      FIG. 39  is a rendered unscreened image of a test picture in CMYK; 
           [0063]      FIG. 40  is an image of the Cyan separation of the test picture of  FIG. 39 ; 
           [0064]      FIG. 41  is an image of the Magenta separation of the test picture of  FIG. 39 ; 
           [0065]      FIG. 42  is an image of the Yellow separation of the test picture of  FIG. 39 ; 
           [0066]      FIG. 43  is an image of the Black separation of the test picture of  FIG. 39 ; 
           [0067]      FIG. 44  is an image of the test picture for the separation Cyan ( FIG. 40 ) after processing by the small level tone modification function; 
           [0068]      FIG. 45  is an image of the test picture for the separation Cyan ( FIG. 40 ) after processing by the medium level tone modification function; 
           [0069]      FIG. 46  is an image of the test picture for the separation Cyan ( FIG. 40 ) after processing by the large level tone modification function; 
           [0070]      FIG. 47  is an image of the test picture for the tone modified Cyan separation ( FIG. 44 ) after processing by a 1-bit half-toning algorithm; 
           [0071]      FIG. 48  is an image of the test picture for the tone modified Cyan separation ( FIG. 45 ) after processing by a 1-bit half-toning algorithm; 
           [0072]      FIG. 49  is an image of the test picture for the tone modified Cyan separation ( FIG. 46 ) after processing by a 1-bit half-toning algorithm; 
           [0073]      FIG. 50  is an image for the separation Cyan after combining the half-toned images of the separation Cyan of the small dots ( FIG. 47 ), medium dots ( FIG. 48 ), and large dots ( FIG. 49 ); 
           [0074]      FIG. 51  is an image for the separation Magenta after combining the half-toned images of the separation Magenta of the small dots, medium dots, and large dots; 
           [0075]      FIG. 52  is an image for the separation Yellow after combining the half-toned images of the separation Yellow of the small dots, medium dots, and large dots; 
           [0076]      FIG. 53  is an image for the separation Black after combining the half-toned images of the separation Black of the small dots, medium dots, and large dots; 
           [0077]      FIG. 54  is a single CMYK composite image composed of the four combined output images of  FIGS. 50-53 ; 
           [0078]      FIG. 55  is an extremely high level zoom of a small portion of the single CMYK composite image of  FIG. 54  based upon calibrated tonal range output levels of 0%, 45%, 75%, and 100%; 
           [0079]      FIG. 56  shows the black separation of the CMYK image of  FIG. 55 ; 
           [0080]      FIG. 57  is an extremely high level zoom of a small portion of a single CMYK composite image after calibration and compensation after a drastic change of the printing levels (for whatever reason) to 0%, 25%, 50%, and 100%; and 
           [0081]      FIG. 58  shows the black separation of the CMYK image of  FIG. 57 . 
       
    
    
     DESCRIPTION OF THE INVENTION 
       [0082]    Referring to  FIG. 8 , a raster image processor  800  according to the present invention is connected with a multi level digital printing machine  850 . In the embodiment shown, digital printing machine  850  is a four (4) printable level machine. In other embodiments, digital printing machine  850  may be more or less than a four (4) printable level machine. Raster image processor  800  generally comprises a computing device  802 , a memory device  804  connected with computing device  802 , an interpretation module  806  stored on memory device  804 , a rendering module  808  stored on memory device  804  adapted to produce an unscreened raster image file  810 , and a screening module  812  adapted to produce a screened output bit map  814 . Computing device  802  may be one or more of any type of presently known or futurely developed computational processing device, including but not limited, to central processing units, microprocessors, and graphic processing units. Memory device  804  may be any type of memory device capable of storing computer instructions or code. Interpretation module  806  comprises a set of well known computer instructions or code stored on memory device  804  to interpret input file  80  describing the page (not shown) to be printed. Rendering module  808  comprises a set of well known computer instructions or code stored on memory device  804  to produce unscreened raster image file  810  specifying a continuous tone value for a first, second, third, and fourth colorant (CMYK) value in the range of 0-1023 (in the case of a 10 bit tone) for each printable position on the page (not shown). As will be described herein, screening module  812  comprises a plurality of instructions to convert each of the continuous tone values to a four (4) level output bit map  814 , namely, a tone value of 0, 1, 2 or 3 in a manner that significantly reduces contour artifacts and is easily, accurately, and precisely compensated. The term “module” means computer instructions or code that may be implemented in software or hardware. Such computer instructions or code may be programmed in any presently or futurely developed programming language such as C or C++ for most types of computing devices and CUDA® for NVIDIA® graphic processing units. As will be described more fully herein, screening module  810  may be implemented as software stored on memory device  804  or discrete circuit hardware directed connected with computing device  102  and/or digital printing machine  850 . 
         [0083]    Referring to  FIG. 9 , screening module  812  generally comprises a calibration module  902 , a tone sub-range module  906 , a boundary shifting module  908 , and a pixel processing module  904  comprising a tone modification sub-module  912 , an inverse compensation sub-module  914 , and an output sub-module  916 . In another embodiment of the invention, screening module  812  may further comprise an overlap module  910 . 
         [0084]    Referring to  FIG. 10 , a high level flow chart shows the process of screening module  812  for digital printing machine  850  ( FIG. 8 ). In this example, input file  810  from rendering module  808  may be either a composite file containing all colorants or separate files one for each colorant. As indicated by step  1002 , screening module  812  initializes variables X and Y to zero. As indicated by step  1004 , screening module  812  is configured to obtain the continuous tone value  1010  for the current X-Y position  1006 . As indicated by step  1008 , continuous tone value  1010  is processed by pixel processing module  1008  to produced a multi bit output value  1012  for X-Y position  1006 . For example, a value of 575 from a 10 bit continuous tone range of input file  810  from rendering module  808  at X-Y position  1006  is processed by pixel processing module  904  to generate a two bit output  1012  of values 0, 1, 2 or 3. As indicated by step  1014 , position X is incremented to point to the next pixel to the right. As indicated by step  1016 , screening module  812  determines if the rightmost limit of X exceeds the raster width. If not, control is returned where the next X-Y position is processed by pixel processing module  904  to produce the next two bit output  1012 . If the rightmost limit of X exceeds the raster width then, as indicated by step  1018 , screening module  812  sets the position of X to the left beginning of the next line Y. As indicated by step  1020 , screening module  812  is configured to determine if the last line Y has been processed and if so, ends execution of the module. If not, control is returned where the next X-Y position is processed by pixel processing module  904  to produce the next two bit output  1012 . 
         [0085]    Referring to  FIG. 11 , where a high level flow chart shows the operation of pixel processing module  904  according to the present invention for a four-level digital printing machine  850 . As indicated by a block  1102 , a current X and Y printable position is input to each of bi-level half-toning algorithms  1110 ,  1112 , and  1114  of output sub-module  916 . The continuous tone value corresponding to the current X and Y position from input file  1010 , for each of the four (4) colorants, is the input value to each of first, second, and third tone modification functions  1104 ,  1106 , and  1108  of tone modification sub-module  912 . The output from first, second, and third tone modification functions  1104 ,  1106 , and  1108  are then each passed through an inverse compensation function appropriate for that colorant and dot size from the Inverse Compensation module  914 . The outputs of the compensation functions are the inputs to bi-level half-toning algorithms  1110 ,  1112 , and  1114 , respectively, that generate three one bit output values  1116 ,  1118 , and  1120 , each having a value of 0 or 1. As indicated by block  1122 , these three one bit output values are combined by Boolean logic to produce a single 2-bit output value  1012  (0, 1, 2 or 3) that is stored in output bit map  814  ( FIG. 8 ). 
         [0086]    Referring to  FIG. 12 , a high level flow chart shows the process of calibration module  902 . Calibration module  902  comprises a set of instructions  1202  to create a test pattern for each colorant comprising a first test patch having only a first printable tone level (for example, only small size dots), a second test patch having only a second printable tone level (for example, only medium size dots), and a third test patch having only a third printable tone level (for example, only large size dots). Calibration module  902  further comprises a set of instructions  1204  to print the test patterns for each colorant. Calibration module  902  further comprises a set of instructions  1206  to measure the optical strength of each of the first, second, and third test patches of each colorant of test pattern  1402  using optical density as the measurement and to store these values in digital press profile  852  ( FIGS. 8 and 15 ) for use as needed. Calibration module  902  further comprises a set of instructions  1208  to convert the measurements of each of the first, second, and third test patches to an equivalent dot area value using a well known Murray-Davies equation (www.xrite.com/documents/apps/public/whitepapers/Ga00005a.pdf) that converts from optical density to percentage dot area as follows: 
         [0000]    
       
         
           
             
               percentage 
                
               
                   
               
                
               dot 
                
               
                   
               
                
               area 
                
               
                   
               
                
               
                 ( 
                 
                   0 
                   - 
                   
                     100 
                      
                     % 
                   
                 
                 ) 
               
             
             = 
             
               
                 
                   1 
                   - 
                   
                     10 
                     ^ 
                     
                       ( 
                       
                         - 
                         Dtone 
                       
                       ) 
                     
                   
                 
                 
                   1 
                   - 
                   
                     10 
                     ^ 
                     
                       ( 
                       
                         
                           - 
                           D 
                         
                          
                         
                             
                         
                          
                         max 
                       
                       ) 
                     
                   
                 
               
               × 
               100 
             
           
         
       
     
         [0000]    where Dmax represents the measured maximum optical density, and Dtone represents the measured density of a patch for which to produce the percentage dot area.
       Example densities: 0.0 0.479 1.08 2.5----&gt;0 67% 92% 100%   Example 2 densities 0.0 0.1752 0.4735 2.5----&gt;0 33% 67% 100%       
 
         [0089]    Referring to  FIGS. 13 and 14 , where an example is given for the process of calibration module  902 . As indicated by block  1302 , calibration module  902  comprises a set of instructions to create a test pattern having twelve test patches as shown in  FIG. 14  (3 printable levels or dot sizes each, for each of the four colorants, CMYK). The three (3) dot sizes may be small, medium, and large dots or other dot sizes. Calibration module  902  further comprises a set of instructions  1304  to print the test pattern. Calibration module  902  further comprises a set of instructions  1306  to measure the optical strength of each of the twelve test patches using optical density as the measurement. In the example shown, for the colorant Cyan, the measured density is 0.475 for the first printable tone level of digital printing machine  850  (for example, small size dots); 1.08 for the second printable tone level of digital printing machine  850  (for example, medium size dots), and 2.5 for the third printable tone level of digital printing machine  850  (for example, large size dots). Also shown are optical densities values for the colorants Magenta, Yellow, and Black. The optical density for each of the first, second, and third test patches of each colorant is converted to an equivalent dot area using the Murray-Davies equation. In the example shown, Cyan has an equivalent dot area of 67% for the first printable tone level (for example small size dots), 92% for the second printable tone level (for example, medium size dots), and 100% for the third printable tone level (for example, large size dots). The optical density is measured using a well known densitometer such as the X-Rite eXact available from X-Rite, Inc., 4300 44th St. SE, Grand Rapids, Mich. 49512 U.S.A. (www.xrite.com), or a similar device, that may be part of digital printing machine  850  or a separate machine connected with raster processor  800  and digital printing machine  850 . 
         [0090]    Referring to  FIG. 15 , where digital press profile  852  ( FIG. 8 ) is further illustrated. Data stored in Digital Press Profile  1502  includes maximum measured densities for all colorants and dot sizes. It also includes curve data points when they are used. 
         [0091]    Referring to  FIG. 16 , tone sub-range module  906  ( FIG. 9 ) comprises a set of instructions configured to create and store a first tonal sub-range  1602  corresponding to the first printable tone level of digital printing machine  850  for each of the four colorants, a second tonal sub-range  1610  corresponding to the second printable tone level of digital printing machine  850  for each of the four colorants, and a third tonal sub-range  1620  corresponding to the third printable tone of digital printing machine  850  for each of the colorants. The sub-ranges may and probably will be different for each of the colorants. First tonal sub-range  1602  comprises a beginning boundary tone value  1604  and an ending boundary tone value  1606  defining a first tone range span  1608 . Second tonal sub-range  1610  comprises a beginning boundary tone value  1612  and an ending boundary tone value  1614  defining a second tone range span  1616  and a first transition tone value  1618  to be the value of both ending boundary tone value  1606  of first tonal sub-range  1602  and beginning boundary tone value  1612  of second tonal sub-range  1610 . Third tonal sub-range  1620  comprises a beginning boundary tone value  1622  and an ending boundary tone value  1624  defining a third tone range span  1626  and a second transition tone value  1628  to be the value of both ending boundary tone value  1614  of second tonal sub-range  1610  and beginning boundary tone value  1622  of third tonal sub-range  1620 . 
         [0092]    With continued reference to  FIG. 16 , boundary shifting module  908  generally comprises a set of instructions to shift the positions of first and/or second transition tone values  1618  and  1628  depending upon the calibration data of digital printing machine  850  from calibration module  902  stored in digital press profile  852 . For example, boundary shifting module  908  may comprise a set of instructions that shift the position of first transition tone value  1618  so that, for example, first tone range span  1608  is different from second tone range span  1616 . By way of further example, boundary shifting module  908  may comprise a set of instructions that shift the position of second transition tone value  1628  so that second tone range span  1616  is different from third tone range span  1626 . Boundary shifting module  908  further comprises a set of instructions to set the first transition tone value  1618 , for a given colorant, using the measured density of the patch of small size dots for the colorant and the highest measured optical density of the test patch of large size dots for the colorant as the Dmax value used in the Murray-Davies equation. Boundary shifting module  908  further comprises a set of instructions to set the second transition tone value  1628 , for a given colorant, using the measured density of the patch of medium size dots for the colorant and the highest measured optical density of the test patch of large size dots for the colorant as the Dmax value used in the Murray-Davies equation. 
         [0093]    Referring to  FIGS. 17A-17C , where the process of tone modification sub-module  912  and tone modifications  1104 ,  1106  and  1108  ( FIG. 11 ) is illustrated for an example where first and second transition tone values  1618  and  1628  ( FIG. 16 ) are set to 48% and 70%, respectively, by boundary shifting module  908 . As shown by  FIG. 17A , tone modification sub-module  912  comprises a set of instructions to create or produce first tone modification function  1104  for the first printable tone level that is used for each colorant (CMYK). For example, an input tone value of 24% would be modified to a continuous tone value of 50% and an input tone value of 48% or higher would be modified to a value of 100%. As shown by  FIG. 17B , tone modification sub-module  912  further comprises a set of instructions to create or produce a second tone modification function  1704  for a second printable tone level that is used for each colorant (CMYK). For example, an input tone value of 48% or less would be modified to a value of 0%, input tone values of 70% or higher would be modified to values of 100% and input values between 48% and 70% would be modified to values between 0% and 100%. As shown by  FIG. 9C , tone modification sub-module  912  comprises a set of instructions to produce a third tone modification function  1706  for a third printable tone level that is used for each colorant (CMYK). For example, an input tone value of 70% or lower would be modified to a continuous tone value of 0% and an input tone value of greater than 70% would be modified to values between 0% and 100%. 
         [0094]    Referring to  FIG. 18 , where a high level flow chart shows a method of screening module  812 . As indicated by block  1802 , tone sub-range module  906  comprises a step of producing for each colorant, first, second, and third tonal sub-ranges corresponding to the first, second, and third printable tone levels, respectively, having first and second transition tone values. As indicated by block  1804 , boundary shifting module  908  comprises a step of shifting the position of first transition tone value  1618  and second transition tone value  1628  so that the first tone range span is different from the second tone range span, and to set first and second transition tone values  1618  and  1628 , for each colorant, by using the highest measured optical density of the test patches of test pattern  1402  ( FIG. 14 ) of digital printing machine  850  ( FIG. 8 ) for the Dmax value used in the Murray-Davies Equation. As indicated by block  1806 , tone modification sub-module  912  comprises a step of producing first, second, and third tone modification functions for the first, second, and third tonal sub-ranges, respectively. As indicated by block  1808 , output sub-module  916  comprises a step of producing a single multi-bit output value corresponding to each colorant for each printable position on the page by using the modified tone value of the first, second, and third tone modification functions as the inputs to a bi-level half-toning algorithm. 
         [0095]    Referring to  FIG. 19 , where an example of the method of screening module  812  is illustrated. As indicated by a block  1902 , tone sub-range module  906  comprises a step of creating or producing first, second, and third tonal sub-ranges  1602 ,  1610 , and  1620  ( FIG. 16 ), initially equally spaced, whose beginning and ending boundary tone value pairs are respectively, 0% and 33.3%, 33.3% and 66.7%, and 66.7% and 100.0%. First and second transition tone values  1618  and  1628  are thus initially 33.3% and 66.7%, respectively. As indicated by block  1904 , boundary shifting module  908  comprises a step of setting first and second transition tone values  1618  and  1628  to 67% and 92% based on the measurements shown in digital press profile  852  ( FIG. 15 ) of 0.475 and 1.08 for the test patches for small and medium dots, respectively, using the Murray-Davies with a DMax value of 2.5, shown by instructions  1308  of calibration module  902  ( FIG. 13 ). As indicated by a block  1906 , tone modification sub-module  912  comprises a step of creating the first, second, and third tone modification functions stored in the form of three 10-bit lookup tables. This process will be shown in two more levels of detail in  FIGS. 20 and 21 , containing a descriptive flowchart and pseudo-code using example measurements, respectively. As indicated by a block  1908 , output sub-module  916  comprises a step of producing a single multi-bit output value corresponding to the first colorant for each printable position on the page by using the modified tone values of first, second, and third tone modification functions as the input to a bi-level half-toning algorithm. This process will be shown in two more levels of detail in  FIGS. 24 and 25 , containing a descriptive flowchart and pseudo-code using example measurements, respectively. The effect of this step in block  1908 , when looked at for the whole image sets of small, medium, and large 1-bit data as a whole is to merge the images together as one would a set of image masks one on top of another. Where there is a mask bit value of 1, that data and level is used; where there is a 0 value, whatever data on the lower mask levels is allowed to appear. 
         [0096]    Referring to  FIG. 20 , where the process of tone modification sub-module  912  is shown in greater detail with example calculations. Step  2002  summarizes the function of creating or producing the tone modification functions and their inputs and outputs as previously described in connection with  FIGS. 17A-17C . Step  2014  marks the start of loops or iterations describing the calculations to produce a tone modification function&#39;s particular modified tone value for a specific input value. As indicated by a decisional block  2004 , tone modification sub-module  912  comprises a set of instructions to determine if the input tone value of the first tone modification function is less than the beginning boundary tone value of the first tonal sub-range. If so, control is passed to a block  2006  where tone modification sub-module  912  comprises a set of instructions to assign the continuous modified tone value to be the value of zero percent (0%). If not, control is passed to a decisional block  2008  where tone modification sub-module  912  comprises a set of instructions to determine of the input tone value of the first tone modification function is greater than the ending boundary tone value of the first tonal sub-range. If so, control is passed to a block  2010  where tone modification sub-module  912  comprises a set of instructions to assign the continuous modified tone value to be the value of one hundred percent (100%). If not, control is passed to block  2012 , where tone modification sub-module  912  comprises a set of instructions to assign the continuous modified tone values for input tone values that fall between the first tonal sub-range&#39;s beginning and ending boundary tone values. Conventional linear interpolation is used, mapping the within-boundaries input tone range to the full tone range 0 through 100% with values given by a linear interpolation formula defined by: output tone value=((input_tone_value−starting_tone_value)*100)/(ending_tone_value−starting_tone_value)). 
         [0097]    Referring to  FIG. 21 , where example pseudo code is shown to calculate the 1024 values for the lookup tables for each of the three tone modification functions. A single loop is used for all three tables. The tonal sub-ranges are for the Cyan colorant shifted based on the measured tone densities. Step  2102  creates an iterating integer index, “i”. Step  2104  calculates a floating point percentage value in the range 0 through 100, based on the value of “i”. Step  2106  sets the value for the ith entry in the first or small dot lookup table to be either  1023 , indicative of 100%, or a fractionally lower value depending on the floating point percentage. Step  2108  sets the value for the ith entry in the second or medium dot lookup table to be one of the values 0, 1023, or a fractionally intermediate value between 0 and 1023, depending on whether the floating point percentage is below, above, or within the tonal sub-range, respectively. Step  2110  sets the value for the ith entry of the lookup table for the third or large dot lookup table to be either 0 or a fractionally intermediate value between 0 and 1023, depending on whether the floating point percentage is below or within the tonal sub-range. Step  2112  increments i for the next lookup table entries. Step  2114  checks for completion by seeing if i has reached 1024 indicating that all the entries of indices 0 through 1023 have been calculated. 
         [0098]    Referring to  FIG. 22 , patches  2202 ,  2204 , and  2206  each show a printed patch five (5) printing dots wide by six (6) printing dots high, of dots of increasing sizes and overlap. One dot is shown missing in each of patches  2204 ,  2204 , and  2206 . The amount of dot area missing decreases with increasing dot size. As 100% coverage is reached there is diminishing increase in dot area. This non-linear effect is similar to traditional “dot gain”. 
         [0099]    Referring to  FIG. 23 , a graph illustrates compensation for the non-linear response of increasing tone value and a conventional inverse function used to compensate for it. For example for input tone values in the proximity of 50% the output tone values as points on curve  2302  are in the proximity of 75%. Compensating for this dot gain, when the system requires an output tone value of 50%, the necessary input tone needed is therefore less than 50% or about 20% as shown on inverse function  2304 . 
         [0100]    Referring to  FIG. 24 , where a high level flow chart shows the operation of output sub-module  916 . Step  2402  gets modified continuous tone values produced from the output of the tone modification functions  1104 ,  1106 , and  1108 . Step  2404  processes the modified continuous tone values with bi-level half-toning algorithms producing three 1-bit values. Decision blocks  2406 ,  2410 ,  2414 , and  2418  check the values of the three 1-bit values to select among multi-bit output values  3 ,  2 ,  1 , and  0  via statement blocks  2408 ,  2412 ,  2416 , and  2420  respectively. 
         [0101]    Referring to  FIG. 25 , where a detailed pseudo code flowchart of pixel processing module  904  is shown. Step  2502  creates three Boolean variables, B1, B2, and B3, for small, medium, and large dots, respectively. For each pixel on the page Step  2504  retrieves the corresponding continuous tone value from the rendering and the corresponding threshold matrix value from the screening threshold matrix. Step  2506  performs tone modification 1 by selecting a value from LookUpTable1 based on the continuous tone value from the rendering. Step  2506  sets the value of Boolean variable B1 to true if the looked up value is greater than the threshold matrix value. Otherwise Step  2506  sets the value of B1 to false. Steps  2508  and  2510  similarly set Boolean variable B2 and B3 using LookUpTable2 and LookUpTable3, respectively, and the continuous tone value from the rendering. Decision block  2512  and statement  2514  select 3 as the multi-bit output value if B3 is true. If B3 is false, decision block  2516  and statement  2518  select 2 as the multi-bit output value if B2 is true. If B2 is false, decision block  2518  and statement  2524  select 1 as the multi-bit output value if B1 is true. If B1 is false, statement  2526  selects 0 as the multi-bit output value. Decision block  2522  checks to see if the X-Y position just operated on is the last one on the page and either ends the module if the X-Y position is the last one on the page, or sets the control flow back to step  2504  to proceed with the next pixel to be processed. 
         [0102]    Referring to  FIG. 26 , where a schematic for pixel processing module  904  is shown in a hardware implementation suitable for threshold matrix half-tone screening. Blocks  2602 ,  2604 , and  2606  show first, second, and third tone modification functions for the first, second, and third printable tone levels, respectively (for example, small, medium, and large dots). Components used in the hardware for tone modification functions  1104 ,  1106 , and  1108  include 10-bit registers to hold screening parameters, 10-bit subtractors, and 10-bit multipliers. Bi-level half-toning, shown by block  2608 , comprises a threshold matrix  2610  that produces a threshold value  2611  for a given X-Y coordinate, and a comparator such as  2612  that compares the modified continuous tone value with the threshold value  2611  to determine a 1-bit output  2618  for the small size dots. Comparators  2614  and  2616  use the same threshold value  2611  to compare modified continuous tone values from Tone Modification functions  2604  and  2608  to produce 1-bit outputs  2620  and  2622  for the medium and large dots, respectively. 
         [0103]    Referring to  FIG. 27 , where a digital logic diagram is shown for producing multi-bit output  2708  from 1-bit logic levels  2618 ,  2620 , and  2622  for small, medium, and large dots, respectively. Sections  2702 ,  2704 , and  2706  are 2-bit multiplexers for data flow for the small, medium, and large dots, respectively. Each of 2-bit multiplexers  2702 ,  2704 , and  2706  have as inputs selector lines  2710 ,  2712 , and  2714 , and input lines internally labeled A1, A0, B1, and B0. Each 2-bit multiplexer has two output lines internally labeled A and B. Each 2-bit multiplexer functions as a two state switch, copying the two logic levels on inputs A1 and B1 to outputs A and B if its selector line is connected to a high logic level, or copying the logic levels on inputs A0 and B0 to outputs A and B if its selector line is connected to a low logic level. Production of multi-bit output value  2708  is described as follows. If 1-bit logic level  2622  is high 2-bit multiplexer  2706  immediately copies input levels of 11 to its output levels A and B, 0b11 in binary or base 2, which is equal to a value of 3 in the common base 10 number system. This provides a value of 3 to output value  2708 . If logic level  2622  is low, A0 and B0 inputs of multiplexer  2706  are selected for the output value  2708 . Inputs A0 and B0 inputs of multiplexer  2706  are connected to the outputs A and B of 2-bit multiplexer  2704  and thus receive either the A1 and B1 inputs of multiplexer  2704 , which have values of 1 and 0, respectively, or the outputs A and B of multiplexer  2702 , depending on the logic level state  2620 , the logic level for the medium dot. 
         [0104]    With continued reference to  FIG. 27 , 2-bit multiplexer  2702  has its outputs A and B selected between the 2-bit values 01 from the A1 and B1 inputs or the 2-bit values 00 from the A0 and B0 inputs. In this manner the multi-bit output value  2708  is set to one of the four 2-bit binary values 00, 01, 10, or 11, depending on the 3 1-bit logic levels  2618 ,  2620 , and  2622 . The numbers 00, 01, 10, or 11 interpreted in binary (base-2) have the values 0, 1, 2, and 3 (base 10) respectively. 
         [0105]    Referring to  FIG. 28 , where an alternative hardware for pixel processing module  904  is implemented in a manner suitable for an error diffusion algorithm. Hardware bi-level half-toning modules  2802 ,  2804 ,  2806  are shown as implementing an error diffusion algorithm for the half-toning function. They must each be initialized at the start of page as is well known in the art. Modules  2802 ,  2804 ,  2806  operate in parallel, that is simultaneously with each other, each producing a 1-bit value for a particular dot size. These three 1-bit values are inputs to the 2-bit multiplexers ( FIG. 27 ). 
         [0106]    Referring to  FIGS. 29 and 30 , two alternative implementations are shown for the 3 tone modification functions  2602 ,  2604 , and  2606  ( FIG. 26 ). For example, continuous tone input  1010  could have, in the range 0-1023, a value of 2. The implementation of  FIG. 29  would perform a subtraction followed by a multiplication on the value 2 to produce the modified continuous tone  1116 . The implementation of  FIG. 30  would use the value 2 as an index into lookup table  3002 , retrieving the third value  2802  as the output value in a single operation. 
         [0107]    Referring to  FIGS. 31 and 32 , in a first embodiment, overlap module  910  comprises a set of instructions to overlap the first and second tonal sub-ranges  3202  and  3204  by modifying a beginning boundary tone level  3212  of second tonal sub-range  3204  to a value 2% (example) lower then an ending boundary tone level  3210  of first tonal sub-range  3202 . Overlap module  910  further comprises a set of instructions to overlap second and third tonal sub-ranges  3204  and  3206  by modifying a beginning boundary tone level  3216  of third tonal sub-range  3206  to have a value of 2% lower than an ending boundary tone level  3214  of second tonal sub-range  3204 . 
         [0108]    Referring to  FIG. 33 , where both shifting and overlapping of a continuous tonal boundary is illustrated. Shown are first, second, and third tonal sub-ranges  3302 ,  3304 , and  3306 . First tonal sub-range  3302  has a beginning boundary tone value  3308  and an ending boundary tone value  3310 . Second tonal sub-range  3304  has a beginning boundary tone value  3312  and an ending boundary tone value  3314 . Third tonal sub-range  3306  has a beginning boundary tone value  3316  and an ending boundary tone value  3318 . First and second transition tone values  3322  and  3324  are set at 48% and 70%, respectively. The beginning boundary tone value  3312  of second tonal sub-range  3304  has been moved a value of 2% lower than the ending boundary tone value  3310  of first tonal sub-range  3302  resulting in an overlap of first and second tonal sub-ranges  3302  and  3304 . Similarly, the beginning boundary tone value  3316  of third tonal sub-range  3306  has been moved a value of 2% lower than the ending boundary tone value  3314  of second tonal sub-range  3304  resulting in an overlap of second and third tonal sub-ranges  3304  and  3306 . 
         [0109]    Referring to  FIG. 34A-34C , where graphs illustrate tone modification functions for small size dots ( FIG. 34A ), medium size dots ( FIG. 34B ), and large size dots ( FIG. 34C ). The tone modifications for shifting with overlapping are determined in the same manner as the tone modifications for shifting without overlapping ( FIGS. 16 and 17 ). 
         [0110]    Referring to  FIGS. 35 and 36 , where a second embodiment of overlap module  910  is shown with bi-directional overlapping. Overlap module  910  comprises a set of instructions  3502  to overlap the first and second tonal sub-ranges  3502  and  3504  by modifying beginning boundary tone level  3512  of second tonal sub-range  3504  to a value 2% lower then ending boundary tone level  3510  of first tonal sub-range  3502 . Overlap module  910  comprises a set of instructions  3504  to overlap the first and second tonal sub-ranges by modifying ending boundary tone level of first tonal sub-range  3502  to a value 2% higher then beginning boundary tone level of second tonal sub-range  3504 . Overlap module  910  comprises a set of instructions  3506  to overlap second and third tonal sub-ranges  3504  and  3506  by modifying beginning boundary tone level  3516  of third tonal sub-range  3506  to have a value of 2% lower than ending boundary tone level  3514  of second tonal sub-range  3504 . Overlap module  910  comprises a set of instructions  3508  to overlap second and third tonal sub-ranges  3502  and  3504  by modifying ending boundary tone level of second tonal sub-range  3504  to a value of 2% higher then beginning tone level of third tonal sub-range  3506 . 
         [0111]    Referring to  FIGS. 37A-37C , where graphs illustrate tone modification functions for small size dots ( FIG. 36A ), medium size dots ( FIG. 36B ), and large size dots ( FIG. 36C ), tone modification function  3702  is comprised of 3 segments labeled A through C. The value for the modified continuous tone value for this function is 100 if the input tone value falls within segment C. If the input tone value falls within segments A or B, the value for the modified continuous tone value is a standard linear interpolation between the two Y values of the endpoints of segments A and B, respectively, as is generally known to one skilled in the art. 
         [0112]    Referring to  FIG. 38 , where example calculations are shown for the screening parameters used for the tone modification functions, the screening parameter SmallDotPeak is calculated to have the 10-bit integer value  685 . The Calculation column shows how the values are calculated. For example, in the case of the SmallDotPeak parameter, the Murray Davies equation is used with density 0.475 and the nominal Dmax value of 2.50 to produce an equivalent dot area value of 67% that is scaled to a 10-bit integer value by dividing by 100 and multiplying by 1023 to give result  685 . 
         [0113]    Referring to  FIGS. 39-59 , where a visual demonstration of screening calibration and compensation for a four gray-level digital printing machine is illustrated. The native PDF drawings filed with this application are electronically available at the USPTO web site (www.uspto.gov) via PAIR in the SCORE database using the Supplemental Content tab. These native drawings can be zoomed in and out as described herein. The first step in press control is to calibrate the print processes. For traditional lithographic printing, this mainly involved measuring the density of a dark film, as films are used for all inks. In the present invention, this includes measuring the print densities of each of the process color inks. For multiple gray level digital presses, and specifically for this calibration, this now includes measuring the density of solid patches of each of the dot sizes or printable tone levels of the digital printing machine. Though the scale and power of current desktop imaging programs is less than employed in current digital front ends for digital presses, current desktop imaging programs have excellent visual fidelity are can be used to well illustrate the processes of the invention. 
         [0114]    Referring to  FIG. 39 , the Musicians image is used as a rendered unscreened test image or file because it has excellent detail as well as skin tones, which are traditionally hard, yet critical for quality printing. The file is small compared to rendered data for a modern digital press. It is about 6×6 inches with a resolution of 350 dpi. By comparison, a digital press today may print 30 inches by 40 inches with a resolution of 1200 dpi. The rendered data for digital press thus has over 390 times the number of pixels in the Musicians image. The processing is the same, however, and the data processed images are easier to see with the far smaller Musicians file as rendered data. Also, to make the processes more visible, this calibration demonstration will employ FM screening at ⅙th the resolution of what it would be for the digital press, 200 Ipi versus 1200 Ipi. Error diffusion will be used. There is one final and major difference between this demonstration on a small image file and a production system on a digital press as outlined in the invention. For speed and efficiency, each of the invention embodiments processes a complete pixel by pixel in one pass. For this demonstration, however, at each step of the process data has been collected and made into a visible image suitable for placing into drawings for illustration. In the following images, examining the four process color ramps about the border of the test image is an excellent way to navigate the process and see what is actually going on after individual processing steps of the invention. 
         [0115]    Referring to  FIG. 40 , shown is the rendered unscreened image data for the separation of Cyan. The ramp for Cyan is shown having extremely smooth and continuous tone of Cyan from 0 to 100 percent, easily verified by zooming in. 
         [0116]    Referring to  FIG. 41 , shown is the rendered unscreened image data for the separation of Magenta. The ramp for Magenta is shown having a smooth and continuous tone of Magenta from 0 to 100 percent. 
         [0117]    Referring to  FIG. 42 , shown is the rendered unscreened image data for the separation of Yellow. The ramp for Yellow is shown having a smooth and continuous tone of Yellow from 0 to 100 percent. 
         [0118]    Referring to  FIG. 43 , shown is the rendered unscreened image data for the separation of Black. The ramp for Black is shown having a smooth and continuous tone of Black from 0 to 100 percent. 
         [0119]    Referring to  FIGS. 44-49 , the following steps of processing the test image will be shown for the Cyan separation only. The other process colors are processed similarly. In actual practice, there will be different measurements and tone modification functions for each of the separations.  FIGS. 44-46  show images of the same rendered data after being processed by the three (3) tone modification functions. The gray levels used for the digital press are not the equidistant ones that a linear tone quantization would employ. Here, for all separations, the small, medium, and large dots, indicative of the 3 non-zero gray levels have been given equivalent dot areas of 45%, 75%, and 100%. This should be clear upon examination of the visible tone ramps. For example, in  FIG. 45  the part of the ramp lower than 45% is white (0%) and the part of the ramp above 75% is black (100%). 
         [0120]    Referring to  FIGS. 47-49 , where are images are shown after the data has passed through the half-toning algorithms. Zooming in on the ramps at points 45% and 75% of the way from light to dark is illustrative. Half-toning takes place only within each sub-range. Again, only the separation of Cyan is shown. 
         [0121]    Referring to  FIG. 50 , where an image of the separation for Cyan is shown after being processed by the multi-layer combination logic. The four 2-bit output levels are represented by the four contone levels 0%, 45%, 75%, and 100% both for view ability as well as correspondence to the printed image. Zooming in on both transition points, 45% and 75%, on the Cyan ramp at a zoom of 200% or 300% readily shows both the transitioning at these points, as well as the overlapping. The other separations, after similar processing, are shown in  FIG. 51  (Magenta),  FIG. 52  (Yellow), and  FIG. 53  (Black). 
         [0122]    Referring to  FIG. 54 , the four output images ( FIGS. 50-53 ) are now combined into a single CMYK composite color image. This image still contains only 4 gray levels (3 dot sizes) per separation. Because of the high resolution of this image, at low zoom levels, display programs operating on this document may average it down to lower resolution, making it appear to be continuous tone. Though this removes all the screening that is to be shown, it has the advantage of showing the inherent visual fidelity of the image, as the zoomed out image looks virtually indistinguishable from the original CMYK continuous tone image. 
         [0123]    Referring to  FIGS. 55 and 56 , zooming in on a small portion of CMYK image ( FIG. 55 ) and the separation for black ( FIG. 56 ) of that zoom shows the calibration and screening details. These images are an extremely high level zoom on a very small portion of  FIG. 54  chosen for the very dynamic tonal changes and detail in this region. At this level of zoom, on a single separation, the advantages of the invention are easily seen. The placement of the transition points at the tone equivalency points lets the whole image appear continuous-tone-like, even though the image has only 4 tones. Close examination, or viewing the histogram, confirms this 4 gray-level nature. The image also shows the ability of a multi-level digital press to hold detail. The shading on the wrist employs all three dot-sizes and shows the extremely smooth hand-offs between changes of dot size and changes of dot frequency to produce visual tone change. 
         [0124]    Referring to  FIGS. 57 and 58 , recall that the tonal range output levels for the rendered unscreened test image of  FIG. 39  was set at 0%, 45%, 75%, and 100% resulting in the high quality screened images of  FIGS. 54 ,  55 , and  56 . To demonstrate the flexibility and efficacy of the invention,  FIGS. 57 and 58  show the same color and black separation zoom-ins as  FIGS. 55 and 56 , only this time after a re-calibration and compensation for a drastic change of the printing levels (for whatever reason) to 0%, 25%, 50%, and 100%. The small dots are now much lighter and the medium dots are now much darker. Nevertheless, the images of  FIGS. 57 and 58  are virtually indistinguishable from the images of  FIGS. 55 and 56 , respectively. After careful analysis, especially at even higher zoom levels, one sees for example that the middle of the wrist in  FIG. 56  is composed of mostly white with some small dots, whereas that same portion of the wrist in  FIG. 58  is composed of mostly small dots with some medium dots. Back away, however, and the images rightly become indistinguishable. 
         [0125]    The calibration, screening, and compensation, shown here for a 4 gray-level device, offers digital printing a calibrated and compensated screening system with low noise, high accuracy, precise imaging, dynamic re-calibration, and most-importantly, extremely high visual fidelity, making the most use of the inherent capabilities of the new generation of printing machines. 
         [0126]    While particular embodiments of the invention have been shown and described, it will be obvious to those skilled in the art that changes and modifications may be made without departing from the scope of the claimed invention.

Technology Classification (CPC): 7