Abstract:
A calibration target curve with less error is provided even when the number of points to be edited of the calibration target curve is few. An efficient and accurate method for editing or generating the calibration target curve is also provided. To provide them, on the basis of specified input data values versus a plurality of predetermined output density values, there is generated the calibration target curve in which the calibration target curve shows correspondence relation from the input data values to the output density values.

Description:
BACKGROUND OF THE INVENTION  
         [0001]    1. Field of the Invention  
           [0002]    The present invention relates to calibration techniques that stabilize variations of color in output image due to individual differences of printers or environmental changes, such as temperature-humidity variations. More particularly, the present invention relates to a calibration target curve generation method.  
           [0003]    2. Description of the Related Art  
           [0004]    Printer calibration stabilizes (compensates) the tone reproducibility of a printer that varies in accordance with variations in an establishment environment (temperature, humidity, etc) or aging of the printer. A calibration curve can be obtained by computing a function that compensates differences between input/output data characteristics with ideal tone reproducibility (a calibration target curve) and the measured values of outputs (a chart including a plurality of color patches) of the actual printer.  
           [0005]    The calibration target curve used for calibration of the printer and the like is predetermined or created by an operator.  
           [0006]    To be specific, when the target curve is edited, the desired output density values for corresponding input data representing the gradations of, for example, CMYK (Cyan Magenta Yellow Black) are specified to define the target curves.  
           [0007]    [0007]FIG. 3 shows an example edit screen for generating target curve data during a known calibration. In practice, the domain of input data values x and the range of output density values y are determined for each of CMYK where the input data values. (when the data is represented with 8 bits) range from 0 to 255 and the output density values y range from 0 to the maximum density value. For simplicity, the description will be made with each of the values ranging from 0 to 1.  
           [0008]    The target curve is obtained as follows: the output density values versus the input data at equal intervals as shown in FIG. 3 are specified; segments between points indicating input-output relationships are interpolated. FIG. 4 shows the target curve specified in FIG. 3.  
           [0009]    In the above method of specifying the output density values versus the input data values, when gradient variations in the target curve are steep between the points representing the input-output relationships (for example, between 0.0 and 0.1, between 0.1 and 0.2, between 0.8 and 0.9, between 0.9 and 1.0), errors due to curve interpolation in the corresponding segments increase. In particular, when the load on the operator is intended to be alleviated by decreasing the number of specifying points indicating the input data values (for example, the input data values are specified with an interval of 0.2), more errors occur due to the curve interpolation.  
         SUMMARY OF THE INVENTION  
         [0010]    Accordingly, it is an object of the present invention to generate a calibration target curve with less error even when the number of points to be edited on the calibration target curve is few.  
           [0011]    In addition, when the calibration target curve is edited or generated, it is another object of the present invention to provide efficient and accurate edit and generation methods.  
           [0012]    To this end, there is provided a method for generating a calibration target. This method includes the steps of: displaying a screen for generating a calibration target curve; specifying input data values versus a plurality of predetermined output density values; and generating the calibration target curve on the basis of the relationship between the input data values and the predetermined output density values.  
           [0013]    Further objects, features and advantages of the present invention will become apparent from the following description of the preferred embodiments with reference to the attached drawings. 
       
    
    
     BRIEF DESCRIPTION OF THE DRAWINGS  
       [0014]    [0014]FIG. 1 is a block diagram of a structure of an embodiment of the present invention.  
         [0015]    [0015]FIG. 2 is a flowchart showing calibration of the embodiment.  
         [0016]    [0016]FIG. 3 is a known calibration target curve data edit screen.  
         [0017]    [0017]FIG. 4 is a graph showing an example calibration target curve via the point data specification shown in FIG. 3.  
         [0018]    [0018]FIG. 5 is a calibration target curve data edit screen according to the embodiment.  
         [0019]    [0019]FIG. 6 is a graph showing an example target curve via the point data specification shown in FIG. 5.  
         [0020]    [0020]FIG. 7 is a graph showing an example target curve via the point data specification according to another embodiment. 
     
    
     DESCRIPTION OF THE PREFERRED EMBODIMENTS  
       [0021]    [0021]FIG. 1 shows the construction of an embodiment. A computer  10  is connected to a printer  17  and a measuring device  18 . The printer  17  can perform printing using one of the following printing mechanisms: inkjet, electrophotography, and thermal transfer. The measuring device  18  is one of a densitometer, a calorimeter, and a scanner. The computer  10  includes a central processing unit  11 , a user interface  12  including an operation unit (mouse, keyboard) and a display unit (monitor, display), and a storage unit  13 . The storage unit  13  includes a calibration curve storage unit  14 , a measured density storage unit  15 , and a target curve storage unit  16 . The storage unit  13  also includes a ROM (Read Only Memory) or a hard disk and a RAM (Random Access Memory). The ROM or hard disk stores a program in which the steps in the flowchart in FIG. 2 are executed; the RAM (Random Access Memory) serves as a working space for the program.  
         [0022]    [0022]FIG. 2 shows the flowchart of the calibration according to the present embodiment. This flowchart is realized by causing the central processing unit  11  to execute the above program, which may be a utility program or an application program.  
         [0023]    At step S 21 , the process determines whether an operator uses the operation unit to request edit of the target curve via an operation menu of the calibration program shown on the display unit. When the determination is negative, the process proceeds to step S 23 ; otherwise, the process proceeds to step S 22 .  
         [0024]    At step S 22 , an edit operation screen for the calibration target curve is shown in response to the operator&#39;s request at step S 21 . The operator gives instructions from the user interface  12  to generate or edit the target curve. The generation method of the target curve will be described below. The result is stored in the target curve storage unit  16 .  
         [0025]    At step S 23 , the process determines whether the operator uses the operation unit to request density measurement via the operation menu. When the determination is negative (no measurement), the process proceeds to step S 26 ; otherwise, the process proceeds to step S 24 .  
         [0026]    At step S 24 , the process causes the printer  17  to print patches (calibration charts) ranging from a low density to the highest density of each of color materials (yellow, magenta, cyan, and black when four colors are used for calibration; light cyan and light magenta are added when six colors are used; alternatively, special colors including orange and green may be added in addition to the four colors) that correspond to a printing material (ink or toner) of the printer  17 . The operator uses the operation unit to select an item “Print chart” of the operation menu to perform printing.  
         [0027]    At step S 25 , the process causes the measuring device  18  to measure the patch density of each of the charts printed at step S 24 , and the measured patch density is stored in the measured density storage unit  15 .  
         [0028]    At step S 26 , on the basis of the target curve stored in the target curve storage unit  16  and the measured densities of the charts stored in the measured density storage unit  15 , the process generates the calibration curve, which is stored in the calibration curve storage unit  14 . The method of generating the calibration curve is as follows: the inverse function of a measured density function is computed so that a function obtained by combining a calibration-curve function (input: pre-compensated CMYK data values, output: post-compensated CMYK data values) and the measured density function (input: CMYK data values, output: density values) corresponds to the target curve function (input: CMYK data values, output: density values). This computed inverse function is the calibration-curve function, which is applied to an image to be processed to realize the most accurate tone reproduction to the target curve. When, during the generation of the calibration curve, there is a plurality of target curves including the target curves that are already generated, the latest edited/generated target curve is automatically selected. Alternatively, instead of automatically selecting the latest target curve, a group of target curves stored in the target curve storage unit  16  is shown, so that the operator may select curves via the user interface  12 . In this case, when the operator edits or generates the target curve, the operator feeds auxiliary information to the target curve storage unit  16  so that the fed information is associated with the edited/generated target curve. The auxiliary information includes information on the generation date of the target curve, the generation intention (highlight emphasis, gradation emphasis, etc) thereof, the name of the generator, and the name corresponding to the target curve. By showing the auxiliary information corresponding to each adjacent target curve on the operation unit, the user can easily select a desired target curve. FIG. 5 shows the edit screen according to the present embodiment for generating target curve data at step S 22 . Alternatively, after a graph with the axis of abscissa representing input data values and the axis of ordinates representing output data values is shown on the edit screen, the operator uses the user interface  12  to plot the graph in units of 0.1 from 0.1 to 1.0 with respect to the axis of ordinates (i.e. the operator specifies the input data value with respect to the axis of ordinates of 0.1, then specifies the input data value with respect to the axis of ordinates of 0.2, and so on). Unlike the edit screen in FIG. 3, when the output density values are at equal intervals, the operator uses the user interface  12  to specify the corresponding input data values via the operation menu. FIG. 6 shows an example target curve as specified in FIG. 5.  
         [0029]    When the target curve shown in FIG. 6 according to the present embodiment is compared with the target curve shown in FIG. 4 according to the known art described above, it is observed that the target curve can be generated more accurately in a region, for example, below 0.2. In other words, since input data values versus the output density values at equal intervals are specified via the operation menu by the operator, more points are disposed in regions where variations in the output density values are large. This can decrease errors and increase accuracy.  
         [0030]    By contrast, although the number of specified input data values is a few in regions where variations in the output density values is small, errors occurring due to interpolation is insignificant.  
         [0031]    Alternatively, the target curve may be generated using a combination of the specification of the input data values versus the output density values at equal intervals via the operation screen in the above embodiment and the specification of the output density values versus the input data values at equal intervals via the operation screen in the known manner. In this case, when data is specified, the edit screen in FIG. 5 or the above-described graph is used for plotting coordinates. For example, FIG. 7 shows an example in which the target curve is generated based on the points specified in the edit screens of FIGS. 3 and 5. This permits the generation of the target curve with fewer errors and more accuracy than the above embodiment.  
         [0032]    In the above embodiment, the target curve is generated by specifying input data values versus the output density values at equal intervals over the entire region. Alternatively, the input data values versus the output density values at equal intervals are specified in regions where the variations in the gradient of the curve are steep; otherwise, the output density values versus the input data values at equal intervals are specified.  
         [0033]    Although the CMYK are used as input data values in the above embodiment, the above target curve generation method can be applied to the K color data alone, CMY color data, or any kind of multiple color data.  
         [0034]    One of the objects of the present invention is achieved by providing a storage medium (or recording medium) storing a software program code that realizes the features of the above embodiment to a system or an apparatus whose computer (or CPU (Central Processing Unit), MPU (Micro Processing Unit)) reads the program code stored in the storage medium to execute the code. In this case, since it is the program code that realizes the above features of the embodiment, the storage medium storing the program code is also a component of the present invention. In order to realize the above features of the embodiment, the operating system (OS) that runs on the computer also serves to perform part of or the entirety of an actual task in accordance with instructions of the program code.  
         [0035]    Alternatively, after the program code read from the storage medium is loaded in a memory of an expansion card or an expansion unit connected to the computer, a CPU or the like provided in the expansion card or the expansion unit executes part of or the entirety of the actual task in accordance with the instructions of the program code to realize the above features of the embodiment.  
         [0036]    When the above embodiment is applied to the storage medium, the storage medium stores the program code corresponding to the flowchart described above.  
         [0037]    While the present invention has been described with reference to what are presently considered to be the preferred embodiments, it is to be understood that the invention is not limited to the disclosed embodiments. On the contrary, the invention is intended to cover various modifications and equivalent arrangements included within the spirit and scope of the appended claims. The scope of the following claims is to be accorded the broadest interpretation so as to encompass all such modifications and equivalent structures and functions.