Abstract:
The present invention aims to create a database for realizing proper correction processing in accordance with inherent difference and/or time-lapse change of an output unit. The present invention provides an image processing method comprising a holding step for holding an original database in which a correction condition corresponding to a reproducing property of an output unit is stored, a forming step for writing a correction condition formed by calibration processing in the original database to create a new database, and a correction processing step for effecting correction processing regarding input data by using the created new database, and wherein the calibration processing not only creates the new database but also forms a management file based on head identification information of a head used in the output unit.

Description:
BACKGROUND OF THE INVENTION  
         [0001]    1. Field of the Invention  
           [0002]    The present invention relates to image processing apparatus and method for producing a database in which correction conditions used in correction processing were stored by means of calibration processing, and a recording medium.  
           [0003]    2. Related Background Art  
           [0004]    For example, when an image composed on a personal computer is outputted by a printer, luminance signals R (red), G (green) and B (blue) as data of the image data must be color-converted into color signals Y (yellow), M (magenta) and C (cyan) (and, if necessary, K (black)). In such color conversion, generally, there is a non-linear relationship between an input space of the luminance signal and an output space of the color signal. As such, in the data conversion, if the relationship between the input and the output is nonlinear, it is not easy to model such conversion strictly for calculation, and, even when the conversion can be modeled to some extent, an amount of calculation required for the conversion itself my become extensive. In order to solve such problems regarding the data conversion, a method in which data conversion can be effected relatively easily by previously stored output data corresponding to input data in a look-up table is known.  
           [0005]    In the past, pre-sought look-up tables were only varied from a recording medium to a recording medium, and, in the same model printer, the same look-up table was utilized regardless of conditions of an ink head and the printer.  
           [0006]    However, in the pre-sought look-up table, if a reproducing property is changed due to inherent difference and/or time-lapse change of the printer body and/or the ink head, the optimum print result was not always obtained. For example, if magenta color is stronger, the entire output image tends to have excessive red color component thereby not to keep gray balance.  
         SUMMARY OF THE INVENTION  
         [0007]    The present invention is made in consideration of the above-mentioned conventional drawback, and an object of the present invention is to be able to form a database for realizing proper correction processing in accordance with inherent difference and/or time-lapse change of an output portion.  
           [0008]    Another object of the present invention is to be able to manage the formed database efficiently.  
           [0009]    To achieve this object, the present invention provides an image processing method comprising a holding step for holding an original database in which a correction condition corresponding to a reproducing property of an output unit is stored, a forming step for writing a correction condition formed by calibration processing in the original database to create a new database, and a correction processing step for effecting correction processing regarding input data by using the created new database, and wherein the calibration processing not only creates the new database but also forms a management file based on head identification information of a head used in the output unit.  
           [0010]    A further object of the present invention is to be able to form database properly.  
           [0011]    To achieve this object, the present invention provides an image processing apparatus comprising holding means for holding an original database in which a correction condition corresponding to a reproducing property of an output unit is stored, forming means for writing a correction condition formed by calibration processing in the original database to create a new database, and correction processing means for effecting correction processing regarding input data by using the created new database, and wherein the calibration processing not only creates the new database but also forms a management file based on head identification information of a head used in the output unit.  
           [0012]    The other objects and features of the present invention will be apparent from the following detailed explanation of the invention referring to the accompanying drawings. 
       
    
    
     BRIEF DESCRIPTION OF THE DRAWINGS  
       [0013]    [0013]FIG. 1 is a block diagram showing a construction of an image processing system according to an embodiment of a data converting device;  
         [0014]    [0014]FIG. 2 is a conceptional view of calibration;  
         [0015]    [0015]FIG. 3 is a view showing conception of a construction of a database file;  
         [0016]    [0016]FIG. 4 is a view showing conception in which LUT of a gradation correction table is adjusted in accordance with a head rank;  
         [0017]    [0017]FIG. 5 is a view showing a format of a database management file in a printer corresponding one head;  
         [0018]    [0018]FIG. 6 is a view showing a format of a database management file in a printer corresponding two heads;  
         [0019]    [0019]FIG. 7 is a view for explaining an example of registration of the database management file;  
         [0020]    [0020]FIG. 8 is a view for explaining a case where data up to z is registered in the database management file;  
         [0021]    [0021]FIG. 9 is a view for explaining a case where data  1  is registered again in the database management file;  
         [0022]    [0022]FIG. 10 is a conceptional view showing a case where an original database file, a new database file and an management file are stored in a single discrete holder;  
         [0023]    [0023]FIG. 11 is a graph showing a gradation correction table when gradation correction tables for respective head ranks are held in a calibration module;  
         [0024]    [0024]FIG. 12 is a graph showing an original table when the calibration module carried out by numerical formula;  
         [0025]    [0025]FIG. 13 is a conceptional view showing calibration gradation tables held by media; and  
         [0026]    [0026]FIG. 14 is a flow chart for explaining an operation of a driver module. 
     
    
     DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS  
       [0027]    Now, preferred embodiments of the present invention will be explained with reference to the accompanying drawings.  
         [0028]    [0028]FIG. 1 is a block diagram showing a construction of an image processing system according to an embodiment of a data converting device of the present invention.  
         [0029]    An output device  205  may be, for example, a color printer and serves to effect color print output on a print paper by using four colors such as yellow (Y), magenta (M), cyan (C) and black (K). Incidentally, as the output device, a color printer using six or seven colors rather than four colors may be utilized.  
         [0030]    Print date including density data regarding Y, M, C, K used in the output device  205  are produced by image processing (effected by a control device  201 ) of input data including multi-value luminance data regarding R (red), G (green) and B (blue) representing an input image. The image processing includes color correction, color conversion, gradation correction and quantization processing.  
         [0031]    In the color correction processing, 8-bit RGB colors are color-corrected to 8-bit R′G′B′ colors. Further, in the color conversion processing, the 8-bit R′G′B′ colors are color-converted into 8-bit CMYK colors. Further, in the gradation correction processing, 8-bit C′M′Y′k colors are corrected to 8-bit C″M″Y″K″ colors. Further, in the quantization processing, the 8-bit C″M″Y″K″ colors are quantified to one-bit cmyk colors. In this case, the color correction, color conversion, gradation correction and quantization processing are effected by utilizing lookup tables (also referred to as “LUT” hereinafter).  
         [0032]    The control device  201  includes a CPU which performs data processing regarding the system such as color conversion and initial processing therefor and control of operations of various mechanical elements (described later). A storage device  203  is constituted by memories such as ROM and RAM and external storage devices such as a hard disk and a floppy disk. In an embodiment of the present invention, the LUTs (look-up tables) and calculation sections which will be described later are stored in the storage device  203 .  
         [0033]    According to the system having the above-mentioned arrangement, for example, the following processing can be carried out.  
         [0034]    Regarding an image stored in the storage device  203  and read by a scanner, an operator of the system instructs desired working by using an input device  202  comprised of a key board, a mouse and the like on the basis of an image displayed on a display device  204  such as CRT and produces a desired image. The produced desired image is printed out by the output device  205 .  
         [0035]    Incidentally, of course, the application of the present invention is not limited to the above-mentioned system. For example, it is well-known that color conversion processing is effected in a device such as a copying machine, and, it is apparent that the present invention can be applied to such a device or system.  
         [0036]    Now, the construction of the illustrated embodiment executed by the CPU of the control device  201  on the basis of program stored in the storage device  203  will be briefly explained with reference to FIG. 2.  
         [0037]    A main body of a printer driver module  206  is a module for effecting the above-mentioned processing.  
         [0038]    An original database file  211  of a printer database as shown in FIG. 3 including various default image processing conditions corresponding to types of printers, and, in this database, commands as printer type information, margin information, LUTs (interpolation look-up tables) required for color correction and color conversion, LUTs (gradation correction look-up tables) required for gradation correction processing, and a dither matrix required for quantization processing are included.  
         [0039]    A calibration module  208  serves to newly produce a database file  212  suitable for a reproducing property of the present printer on the basis of the original database file  211 . Namely, the calibration module produces a database file depending upon inherent difference and/or time-lapse change of an ink head of the printer. For example, by picking up head ID as head identification information and head rank information (for example, C:+2, M:0, Y:−1, K:+1) as information representing the reproducing property of the head from the printer body by means of a printer driver and by informing the calibration module of such information, a database file including an LUT (gradation correction table  223  in FIG. 4) corresponding to such head rank is produced.  
         [0040]    The calibration module serves to produce a new database file and also to produce a database name management file  213  for managing such a database file. The database name management file  213  is a file different from the image processing module and database file and manages the name of the new database table in correspondence to the head ID. Accordingly, when a new head is mounted, the calibration must be performed.  
         [0041]    The calibration module may be started in accordance with instruction from driver utility or may be started automatically when print start command is emitted or when the driver is installed or when the head is exchanged.  
         [0042]    An example of a one-head (for example, photo head) correspondence database file name management file in which only a single head can be mounted is shown in FIG. 5. Further, an example of two-head (black head and color head) correspondence database file name management file which is operated with two heads simultaneously mounted is shown in FIG. 6.  
         [0043]    In FIGS. 5 and 6, formats of the management files are the same, and model ID as model information, photo head ID, color head ID, black head ID and database file name are included as a set.  
         [0044]    As shown in FIG. 5, the one-head correspondence new database file is managed by using the model ID and the photo head ID in the set. On the other hand, the plural-head correspondence new database file is managed by using the model ID, color head ID and black head ID. Namely, the file name is formed to correspond to the combination of the heads.  
         [0045]    In this way, by managing the database by using the head IDs for respective heads, management can be effected with high accuracy.  
         [0046]    Whenever a head having different head ID is mounted to the printer, such fact is additionally registered as shown in FIG. 7. In the registration, the original database file is set as cnb — 0730.tb1, and, as shown in FIG. 8, the file names are registered in such a manner that only the lowest order (0) of 0730 is changed successively from 1 to 9 and then from a to z. When z is reached, first of all, the line is deleted and then “1” is registered again in the last line (FIG. 9), thereby newly forming a database file cnb — 0731.tb1.  
         [0047]    According to the management file of the illustrated embodiment, it can easily be judged whether the database is original or not, and the file numbers of the databases can be limited, with the result that the capacity of the hard disk can be prevented from being compressed and the burden of the system can be reduced.  
         [0048]    Now, the operation of the printer module during the printing will be explained with reference to FIG. 14.  
         [0049]    The printer driver module calls out a module  207  and acquires the original database file name. Further, the modules calls out a module  214  in order to acquire the file name of the new database file formed by the calibration and acquires the file name of the database corresponding to the head ID from the management file  213  (step S 10 ). The module  207  returning the database file name previously holds the file name of the original database.  
         [0050]    If the file name of the new database cannot be acquired (step S 20 ), since the database corresponding to the head ID is not registered, the calibration is carried out by a calibration module  208 . First of all, the original database corresponding to the original database name acquired in the step S 10  is read out from the original database file  211 . If the original database cannot be read out (step S 30 ), since the new database cannot be formed, notice of error is given to the operator (step S 40 ). If the original database is read out (step S 30 ), the calibration processing is executed (step S 50 ).  
         [0051]    On the other hand, if the file name of the new database is acquired, the new database is read out from the new database file  212  and the image processing is executed. Further, in the step S 50 , when the new database is firmed by executing the calibration, the image processing is effected by using the formed new database (step S 60 ). More specifically, by calling out the color correction/color conversion module and the quantization/gradation correction module under the file name of the acquired new database and by executing the image processing, the optimum printing result can be obtained by utilizing LUT corresponding to the mounted head.  
         [0052]    Upon uninstallation of the printer driver, all of the database files and the management files which were formed up to now are deleted. As shown in FIG. 10, the database file name management file  213 , new database file  212  and original database file  211  are stored in the same holder, and, by storing only these files in this holder, upon uninstallation, the database can be deleted only by deleting this holder ( 224  in FIG. 10). According to this method, it is not needed to ascertain which files are stored in the holder, and, thus, the uninstalling operation can easily be performed.  
         [0053]    Next, a method for forming the gradation correction table to be formed by the calibration will be explained. The calibration serves to form the database on the basis of the inherent difference and/or time-lapse change of the printer body and/or the ink head.  
         [0054]    For example, by analyzing the head identification information by the printer body to which the head is amounted, the head ID and the head rank information are obtained, and the printer driver picks up the head ID and the head rank information (for example, C:−2, M:+2, Y:+1, K:0) from the printer body and informs the calibration module of such information. The calibration module produces the new database file including LUT corresponding to the head rank from the original database.  
         [0055]    Alternatively, in place of the fact that the rank information is inputted from the printer body, a head rank judged by the operator on the basis of a test image printed by the printer body may be inputted.  
         [0056]    Now, an example of a method for producing the LUT corresponding to the head rank, which method is effected by the calibration module, will be explained.  
         [0057]    (1) Case Where the Calibration Module Holds Gradation Correction Tables for Respective Head Ranks:  
         [0058]    As shown in FIG. 13, gradation correction tables corresponding to all ranks  603  regarding all colors  602  in all media  601  are held in the calibration module. On the basis of the inputted rank, the gradation correction table is formed.  
         [0059]    An example of the gradation correction tables corresponding to the respective head ranks  603  is shown in FIG. 11. In FIG. 11, in order to enhance the accuracy of the gradation correction processing, input values 0 to 255 (8-bit) are corresponded to output values 0 to 4096 (12-bit).  
         [0060]    A gradation correction value  405  corresponds to head rank “+2”, a gradation correction value  404  corresponds to head rank “+1”, a gradation correction curve  402  corresponds to head rank “−1”, and a gradation correction curve  403  corresponds to head rank “−2”. A gradation correction value  401  is an original gradation correction value and corresponds to head rank “0”.  
         [0061]    The rank “+” represents the fact that an ink discharge amount is great in comparison with the rank “0” and the fact that the ink is stronger. On the other hand, the rank “−” represents the fact that the ink discharge amount is smaller and the ink is weaker.  
         [0062]    For example, when the head rank is Cyan:−2, Magenta:+2, Yellow:+1 and Black:0, since the output image tends to have excessive red color component if the print is effected without calibration, in the calibration module  208 , the original database table  211  is loaded and the following gradation correction values for respective colors are sought in accordance with the head rank, thereby forming the new database file  212 :  
         [0063]    Calibration Cyan correction value=gradation correction table for Cyan rank −2;  
         [0064]    Calibration Magenta correction value=gradation correction table for Magenta rank +2;  
         [0065]    Calibration Yellow correction value=gradation correction table for Yellow rank +1; and  
         [0066]    Calibration Black correction value=black original gradation correction table.  
         [0067]    In actual, the gradation correction tables are required in number of 112 (=number of media×number of colors×number of ranks=7×4×4). The capacity is 114.688 Kbyte (=112×1024 byte). Although there is a problem that size is increased if the number of combinations is great, since any tables can be held, easy utilization can be attained.  
         [0068]    (2) Case Where the LUT is Sought by Numerical Formula in the Calibration Module:  
         [0069]    The gradation correction tables (as original gradation correction values) corresponding to the rank “0” for all colors in all media is held by the original database file. The calibration module calculates the gradation correction values corresponding to the inputted head rank on the basis of the original gradation correction values held by the read-out original database file, in the following manner:  
         [0070]    Head rank: +2→original gradation correction value ( 501  in FIG. 5) is set to 80%;  
         [0071]    Head rank: +1→original gradation correction value ( 501  in FIG. 5) is set to 90%;  
         [0072]    Head rank: 0→original gradation correction value ( 501  in FIG. 5);  
         [0073]    Head rank: −1→original gradation correction value ( 501  in FIG. 5) is set to 110%; and  
         [0074]    Head rank: −2→original gradation correction value ( 501  in FIG. 5) is set to 120%.  
         [0075]    For example, when the head rank is Cyan:−2, Magenta:+2, Yellow:+1 and Black:0, since the output image tends to have excessive red color component if the print is effected without calibration, in the calibration module  208 , the original gradation correction table  211  of the original database table is read out, and the gradation correction values for respective colors are calculated in accordance with the head rank, thereby forming the new database file  212 :  
         Calibration Cyan gradation correction value=original Cyan gradation correction value×1.2  (formula 1);  
         Calibration Magenta gradation correction value=original Magenta gradation correction value×0.8  (formula 2);  
         Calibration Yellow gradation correction value=original Yellow gradation correction value×0.9  (formula 3); and  
         Calibration Black gradation correction value=original Black gradation correction value  (formula 4).  
         [0076]    Incidentally, the (formula 1), (formula 2), (formula 3) and (formula 4) may be different for each color and for each medium.  
         [0077]    In this way, by effecting the calculation on the basis of the formulae, the size of the calibration module can be reduced. However, to achieve this, the gradation properties between the ranks must be analogous. Thus, this is not always applicable to all of media, and, therefore, the utilization is made poor.  
         [0078]    Further, the above-mentioned methods (1) and (2) may be switched in the calibration module. In addition, the calibration may be effected only regarding the desired media and/or desired positions.  
         [0079]    Further, the calibration may be effected regarding not only the media alone but also combinations with other print mode or elements.  
         [0080]    Further, the calibration may be used to form, for example, LUTs required for the color correction/color conversion, rather than the gradation correction tables. When such LUTs are formed, a plurality of patches may be formed by the printer and the formed patches may be measured and the LUTs may be formed on the basis of the measured results.  
         [0081]    According to the illustrated embodiment, by forming and editing the database including the look-up tables on the basis of the inherent difference and/or time-lapse change of the printer body and/or the ink head, the optimum print result can always be obtained. For example, in the case where, due to the inherent difference of the color head, the magenta color is totally stronger so that the entire output image tends to have excessive red color component thereby not to keep gray balance, the image processing for correcting the inherent difference by using the calibration can be performed.  
         [0082]    (Alterations)  
         [0083]    A technique in which software program code for realizing the function according to the illustrated embodiment (for example, function executed by the flow chart of FIG. 14 and having the construction shown in FIG. 2) is supplied and various devices are operated by the stored program via a computer (CPU or MPU) of a system or an apparatus is also included in the present invention.  
         [0084]    In this case, since the function according to the illustrated embodiment is realized by the software program code itself, the software program code itself and means for supplying the software program code to the computer (for example, storing medium for storing the program code) constitute the present invention.  
         [0085]    The storing medium for storing the program code may be, for example, a floppy disk, a hard disk, an optical disk, a photomagnetic disk, CD-ROM, a magnetic tape, a non-volatile memory card, ROM or the like.  
         [0086]    Further, also when not only the function according to the illustrated embodiment is realized by executing the program code supplied to the computer, but also the function according to the illustrated embodiment is realized by cooperating the program code with OS (operating system) running on the computer or other application, such program code is included in an embodiment of the present invention.  
         [0087]    While the present invention has been explained with reference to the preferred embodiments thereof, various alterations and modifications can be made within the scope of the present invention.