Data correction subsystem and method for image processing

Abstract: A data correction subsystem (3) for a colour image processing system having a colour image reading device (1) and a colour image printing device (5). A chart file (31) is transmitted to the printing device so that the printing device produces a sample chart (51). Calibration data (37) is calculated from read sample data so that the read sample data can be corrected to corresponding data in the chart file. The read sample data is obtained by causing the reading device to read the sample chart. Printing data to be transmitted to the printing device is correcting using the calibration data.

Description: The present invention relates to a data correction subsystem and method for improving the grey density of an image processing system and in particular the grey density and colour reproduction of a colour image processing system, such as a computer image processing device, a copying device, or a facsimile transmission system. US patent 4929978 discloses an image processing system having a data correction subsystem which involves: computing a set of colour patch printing colour values; printing a set of colour patches using the colour patch colour printing values; scanning the printed set of colour patches to obtain a set of colour patch input data values D which are stored; generating a 3-dimensional matrix array of input data values comprising all input colour values D M that can be produced by the scanner; computing which colour patch input data value (from set D) each input colour value (from set D M ) is closest to and linking each value from the set D M to a value from the set D to establish them as input and output values respectively of an initial colour correction table; performing a smoothing operation on the initial correction table to obtain a final correction table; and storing the final table in memory means. A typical colour image processing system comprises an image reading device, such as an image scanner, for producing image data from an original image, a host computer for processing the image data, and a colour printer for printing out images in response to the processed image data. One of the problems encountered by such a system is that the grey density and colour of the original image are not faithfully reproduced. A major reason for this problem is the discrepancy between the input/output characteristic of the image reading device and the input/output characteristic of the printer. Specifically, a non-linear input characteristic is generally observed in any type of device. While the input characteristic of the image reading device is generally relatively linear, that of the printer is relatively non-linear. As a result, the grey density and colours of the original image are not faithfully reproduced. Further, the printer cannot produce the entire density range of the original image and, in particular, cannot reproduce extremely high density regions. This is also one of the causes of impaired grey density and colour reproduction. The present invention has been made in view of the above circumstances and has as an object to provide a data correction subsystem which allows faithful reproduction of an original image even if there is a discrepancy between the input/output characteristic of an image reading device and that of a printer in a colour image processing system. Another object of the invention is to provide a data correction subsystem which allows faithful reproduction of an original image even if the printable density range is limited in the data correction subsystem. Still another object of the invention is to provide a simple processing procedure for executing data correction processing using a computer. Yet another object of the invention is to provide a colour image processing system having a flexible configuration. Additional objects and advantages of the invention will be set forth in part in the description which follows and in parts will be obvious from the description, or may be learned by practice of the invention. The objects and advantages of the invention may be realised and attained by means of instrumentalities and combinations particularly pointed out in the appended claims. To achieve the objects and in accordance with the purpose of the invention, as embodied and broadly described herein. In a first embodiment, the invention provides a data correction subsystem for a colour image processing system having a colour image reading device and a colour image printing device, the data correction subsystem being characterised by comprising: transmitting means for transmitting a chart file to the printing device so that the printing device produces a sample chart; calculation means for calculating γ and colour calibration data from read sample data so that the read sample data can be corrected to corresponding data in the chart file, the read sample data being obtained by causing the reading device to read the sample chart, the calculation means including grey density normalisation means for subjecting the read sample data to normalisation processing which expands the γ-charactaristics curve of the image printing device toward a higher side; and calibration means for correcting printing data transmitted to the printing device using the γ and colour calibration data. In a preferred embodiment, the calibration data includes γ calibration data for correcting grey density and colour calibration data for correcting a colour. The γ calibration data is, e.g., a conversion table for converting an inputted grey density value to another density value and outputting the converted density value. The colour calibration data is, e.g., a 3x3 matrix filter by which three primary colour components that indicate a colour are multiplied. To correct printing data, a printing data is subjected first to grey density correction with the γ calibration data and then to colour correction with the colour calibration data. Preferably, the calibration means is disposed within the reading device so that correction is made only to image data produced by the reading device. However, the system may be modified such that all data to be sent to the printing device can be corrected, whether or not the data is the image data produced by the reading device, by providing the calibration means within the computer. Further, in the case where a plurality of types of printing devices can be used selectively or concurrently as the printing device, calibration data respectively dedicated to such a plurality of usable types of printing devices may be calculated and saved in advance, so that calibration data to be used for correction may be selected in accordance with the type of printing devices actually used. To calculate the γ calibration data, first, the read sample data is subjected to normalisation processing to expand a grey density distribution region toward a higher density side. Then, a point of change in a density value is detected by scanning grey density values of the normalised read sample data. Conversion data for converting the grey density value of the read sample data at the detected point of change into a grey density value of the chart file data corresponding to the point of change is prepared, and the prepared conversion data is made into the γ calibration data. To calculate the colour calibration data, first, only colour data in the charge file is sampled from the read sample data, the colour data corresponding to a predetermined colour within a range of colours that can be outputted by the printing device. Then, a 3x3 matrix filter is used to minimise an error between the sampled colour data and the corresponding colour data in the chart file. Normalisation processing is thereafter executed to make lightness components with respect to the three primary colours of the calculated matrix filter equal to one another, and the thus normalised matrix filter is made the colour calibration data. It may be noted that better results could be obtained, in some cases, by sampling only colour data corresponding to a predetermined colour outside the range of colours that can be outputted by the printer in the aforementioned sampling operation. The system first gives a predetermined chart file to the printing device and prints out a sample chart described by the chart file. The sample chart reflects the input/output characteristic of the printing device. Then, the sample chart is read by the reading device. Data obtained by causing the reading device to read the sample chart reflects the input/output characteristic of the reading device superimposed upon the input/output characteristic of the printing device (since the input/output characteristic of the reading device is almost linear, it is the input/output characteristic of the printing device that is substantially reflected). Then, calibration data is calculated from the read data, the calibration data being such as to correct the read data to the original chart file data. In this way, the calibration data becomes conversion data that has a substantially inverse characteristic with respect to the input/output characteristic of the printing device. Printing data with thereafter be corrected using the calibration data, and the corrected data will then be sent to the printing device. As a result, the correction made by the calibration data cancels out the input/output characteristic of the printing device, which in turn allows an image having faithful colour and grey density reproduction to be printed out. Further, since the calibration data conforms to the input/out characteristic of a printing device that is actually used, the best correction specific to the printing device can be implemented. In addition, the calibration data is freely changed in accordance with the type of printing device. Some conventional examples (e.g., Unexamined Japanese Patent Publications Nos. Hei. 3-76471 and Hei. 5-183740) are designed so that appropriate calibration data is selected from a calibration data set prepared in a ROM in advance. However, compared with such conventional examples, the subsystem of the invention can provide a higher degree of freedom in handling optimisation of correction and change of the printing device. In addition, while the aforementioned two conventional examples employ the sample chart that has been prepared in advance, the subsystem of the invention is characterised as using a printout obtained by giving data to a printing device, which means that the subsystem can cover all colours that are to be possibly printed without being limited by the colour range specified in the sample chart that has been prepared in advance. Hence, the subsystem of the invention is applicable to future printing devices. Still further, the subsystem of the invention may function as a measuring instrument that measures the γ characteristic and colour correction coefficient of a printing device if the calculated calibration data is made usable independently of the calibration means. A system formed of a printing device, a reading device, and a computer such as an embodiment that will be described below can incorporate the calibration means in the reading device, in the computer, or in the printing device. If the calibration means is located in the reading device, there is an advantage that printing device changes and computer application software changes that take place relatively frequently can be handled with ease. On the other hand, if the calibration means is located in the computer, there are a plurality of advantages: printer changes can be handled with ease; application changes can be handled if located in the operating system of the computer; and data inputted through means other than the reading device can also be corrected. The third advantage is also provided when the calibration means is located in the printing device. Since a system that frequently prints out data inputted through means other than the image reading device connected thereto such as a copying machine and a facsimile transmission/reception system, each serving also as a printer, can particularly enjoy the aforementioned three advantages, it is preferred that the calibration means be located in a component other than the reading device in this type of system. A system that can use a plurality of types of printing devices selectively or concurrently can enjoy an advantage that the subsystem of the invention is freely applicable to any type of printer as long as calibration data dedicated to each of a plurality printers is saved in the system and appropriate calibration data is selected from the saved calibration data in accordance with the type of printing device actually used. In the subsystem of the invention, if γ calibration data for grey density correction and colour calibration data for colour correction are prepared as calibration data, and printing data is subjected first to grey density correction with the y calibration data, and then to colour correction with the colour calibration data, then satisfactory grey density and colour reproduction may, in some cases, be obtained only through relatively simple colour correction processing. That is, conventionally known colour correction processing (e.g., Unexamined Japanese Patent Publication No. Hei. 5-122513) involves the three steps of: expanding the amount of data in the high density region by subjecting original data to luminance data conversion processing using a logarithmic conversion curve; colour-correcting the thus processed data using a 3x3 matrix filter; and correcting the grey density of the thus corrected data. However, when the grey density correction using the y calibration data is performed first as described above, particularly in the case of a system using a printing device whose input/output characteristic is noticeably non-linear (e.g., an ink jet printer), the γ calibration data has a conversion characteristic that is extremely close to the aforementioned logarithmic conversion curve. Therefore, only the grey density correction is enough to obtain the same effect as that provided by executing both the conventional luminance conversion processing and the grey density correction processing concurrently. Therefore, satisfactory grey density and colour reproduction that are substantially equivalent to that obtained by the conventional three-step processing can be obtained by the two step processing involving the grey density correction using the γ calibration data and the colour correction processing using the 3x3 matrix filter. In the case of calibration the γ calibration data, if the read sample data is subjected to normalisation processing that is designed to expand the grey density distribution range toward the high density side, then a dynamic range in the high density region in a reproduced image obtained by printing out the printing data is expanded, so that a reproduced image having a satisfactory appearance can be obtained. In the case of calculating the γ calibration data, if the steps of: first detecting a point of change in the density value by scanning the grey density values of read sample data; then preparing conversion data for converting the grey density values of the read sample data at the detected point of change into the grey density values of the corresponding chart file data; and making the prepared conversion data the γ calibration data, are performed, then this processing can actually be executed by such a simple operation as to reference the read sample data and the chart file stored in memory. In calculating the colour calibration data, if only colour data in the chart file corresponding to colours within the range of colours that can be outputted by the printing device is sampled and calculated, then grey density and colour reproduction for half tone colours that can be outputted by the printing device improves, which in turn allows ordinary photographs consisting of many half tone colours to be reproduced faithfully. On the other hand, in the case of using data corresponding to colours outside the range of colours that can be outputted by the printing device by means of sampling, then the colours are corrected so as to be close to the primary colours. Therefore, this subsystem is suitably applied to cases where original images using many primary colours such as posters are to be reproduced clearly. In the case of using a 3x3 matrix filter as the colour calibration data, if such normalisation processing as to make the lightness components of the matrix filter equal to one another for the three colours is executed, then an advantage that grey balance is not lost in colour correction can be obtained. In a second embodiment, this invention provides a data correction method for a colour image processing system having a colour image reading device and a colour image printing device, comprising the steps of: transmitting a chart file to the printing device so that the printing device produces a sample chart; calculating γ and colour calibration data from read sample data so that the read sample data can be corrected to corresponding data in the chart file, the read sample data being obtained by causing the colour image reading device to read the sample chart, the calculation means including grey density normalisation means for subjecting the read sample data to normalisation processing for expanding the γ-characteristics curve of the image printing device toward a higher side; and correcting printing data to be transmitted to the colour image printing device using the γ and colour calibration data. The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate exemplary embodiments of the invention and, together with the description, serve to explain the objects, advantages and principles of the invention. In the drawings: Fig. 1 is a block diagram of a colour image processing system to which a data correction subsystem of the invention is applied; Fig. 2 is a flowchart of a file preparation process; Fig. 3 is a block diagram of an image scanner; Fig. 4 is a diagram of a sample chart; Fig. 5 is a diagram of a γ calibration chart in the sample chart; Fig. 6 is a diagram of a colour calibration chart in the sample chart; Fig. 7 is a graph of an input/output characteristic of a printer; Fig. 8 is a graph of a printer calibration γ curve, an inverse function of the printer y characteristic curve of Fig. 7; Fig. 9 is a flowchart of the process for calculating the printer calibration γ curve table; Fig. 10 is a diagram showing a position at which data is picked up from each batch of the sample chart; Fig. 11 is a diagram showing exemplary data interpolation based on a linear interpolation method effected during the γ curve table calculation process; Figs. 12A and 12B are a graphical representation of normalisation processing performed in the γ curve table calculation process; Fig. 13 is a table of read data and a table of chart file data after the read data and the chart file data have been subjected to normalisation processing, the tables being developed in a main memory; Fig. 14 is a calibration y curve table; Fig. 15 is a graphical representation of a colour correction coefficient; and Fig. 16 is a flowchart showing a flow of the process for calculating the colour correction coefficient. Fig. 1 shows an exemplary configuration of a colour image processing system to which a data correction subsystem of the invention is applied. As shown in Fig. 1, this system includes an image scanner 1, a host computer 3, and a colour printer 5. The image scanner 1 has the basic function of reading an original colour image to produce image data, and sending the image data to the host computer 3. The host computer 3 has the basic function of performing various operations corresponding to business applications with respect to the image data received from the image scanner 1 and outputting the thus processed image data to the colour printer 5. The colour printer 5 has the function of printing out a reproduced colour image based on the image data from the host computer 3. In addition to the aforementioned basic functions, the image scanner 1 and the host computer 3 have some other functions including that of correcting the image data to improve reproduction of the grey density and colour of the original image. The correction operation (hereinafter referred to as "calibration") will be described in detail below. The calibration operation is roughly divided into two phases. The first phase, although somewhat preliminary, forms the main part of the operation. In the first phase (hereinafter referred to as the "file preparation phase"), a γ curve table and a colour correction coefficient (a matrix filter), which are basic correction data, are calculated to prepare files corresponding to these data and the prepared files are saved in the system. In the second phase (hereinafter referred to as the "calibration execution phase"), a regular data calibration operation is performed while a business application is being executed, i.e., image data produced by the scanner 1 when the scanner 1 reads an image is subjected to correction using the saved γ curve table and colour correction coefficient. Fig. 1 also shows a general flow of the file preparation phase out of first and second phases. Further, Fig. 2 shows the processing flow thereof in the form of a flowchart. As shown in fig. 2, the file preparation phase starts with a chart file loading operation, step 201, in which the host computer 3 first loads a prestored, or externally inputted, chart file 31 to the main storage means thereof and then outputs the chart file 31 to the printer 5. The chart file 31 is an image data file specially designed for calibration, and represents a sample chart 51 (see Fig. 4) arranging standard samples of various grey densities and various colours. In the next step 202, the printer 5 prints out the sample chart 51 upon reception of the chart file 31. A printout of the sample chart 51 exhibits impairment of grey density and colour reproduction attributable to a non-linear input/output characteristic inherent in the printer 5. Then, in step 203, the sample chart 51 is read by the scanner 1 and the read image data is fed back to the host computer 3. The fed-back image data 33 reflects a modification of the data as a result of an input/output characteristic of the scanner 1 being superimposed upon the input/output characteristic of the printer 5. It may be noted that in reality, the input/output characteristic of the scanner 1 is almost linear, and therefore what is substantially exhibited in the fed-back image data 33 is affected by the non-linear input/output characteristic of the printer 5 itself. Hence, the calibration for such image data will hereinafter be called the "printer calibration" in this sense. Subsequently, a comparison/editing process 35 is executed by the host computer 3. That is, in step 204 and 205 predetermined typical data is sampled from the fed-back image data 33 then in steps 206 and 208 the sampled data is compared with the corresponding data in the original chart data file 31 and edited and in steps 207 and 207 a γ curve table and a colour correction coefficient are calculated to prepare files 37 and 39 respectively, hereinafter referred to as the "γ curve file" and "colour correction coefficient file", respectively. These files 37 and 39 are not only saved in the host computer 3, but also are sent to the scanner 1. The scanner 1 saves both they curve file 37 and the colour correction coefficient file 39. The file preparation phase is thus completed. The γ curve file 37 is a data conversion table for performing the printer calibration operation with respect to grey density. The colour correction coefficient file 39 is a coefficient array consisting of a 3x3 dimensional matrix filter for performing the printer calibration operation with respect to colour. These two data files 37, 39 will hereinafter be referred to collectively as "calibration data files". These calibration data files have calibration contents substantially amounting to an inverse function of the input/output characteristic of the printer 5. Once the calibration data files 37, 39 have been saved in this way, the scanner 1 effects the calibration execution phase using these files 37, 39 every time the scanner 1 reads an image, and sends the calibrated image data to the host computer 3. As has already been described, the content of this calibration operation substantially amounts to the inverse function of the input/output characteristic of the printer 5. Therefore, by sending the calibrated image data to the printer 5 to cause the printer to make a printout of the calibrated image data, the input/output characteristic of the printer 5 and the calibration content cancel each other out, thereby allowing a reproduced image having satisfactory grey density and colour reproduction to be printed out. As described above, this system is designed to save the calibration data files 37, 39 in the scanner 1 and to cause the scanner 1 to execute the printer calibration processing. Therefore, the host computer 3 and the printer 5 have nothing to do with the calibration processing while they are executing a business application program. As a result, this system provides an advantage that the host computer 3 is free to change business application programs. Further, this system provides another advantage that the calibration processing is easily executed if the scanner 1 and the printer 5 are directly connected to each other to "emulate" a copying machine without interposing the host computer 3 therebetween. Still further, this system is ready to accommodate such possible needs as changing the type of the printer 5 or selecting a single printer out of a plurality of printers since the printer does not have to perform the printer calibration processing itself. It may be noted that further improved flexibility can be provided if calibration data files of all the types of printers that are possibly used are saved in the host computer 3 to allow the corresponding files to be loaded to the scanner 1 every time the printer type is changed, or if calibration data files of all the types of printers are saved in the scanner 1 in advance and the corresponding calibration data in the scanner 1 is specified and selected every time the printer type is changed. A configuration of the scanner 1 of this system will be described next with reference to the block diagram of Fig. 3. As shown in Fig. 3, a central processing unit 101 controls the entire part of the scanner 1 through an address bus 115. A density correction section 103, a colour correction section 104, an enlargement/reduction section 105, a binary processing section 106, a ROM section 107, an image memory 108, a motor driver 109, and an interface 110 are connected to the central processing unit 101 through the address bus 115 and a data bus 116. An image input section 102 generates image data from an input image by colour-separating the image into the three colour components red (R), green (G), and blue (B), while irradiating the image sent to the scanner 1 with a beam of light and receiving reflected light at an optical sensor such as an array of CCDs. The density correction section 103 receives the image data from the image input section 102 and subjects the received image data to density conversion. The density correction section 103 has a memory 111. The γ curve file 37 sent from the host computer 3 through the interface 110 is saved in the memory 111. The density conversion processing is executed using the γ curve file 37. The colour correction section 104 receives the density-corrected image data and subjects the received image data to colour correction. The colour correction section 104 has a memory 112. The colour correction coefficient file 39 sent from the host computer 3 through the interface 110 is saved in the memory 112. The colour correction processing is executed using the colour correction coefficient file 39. The enlargement/reduction section 105 receives the colour-corrected image data and subjects the received data to enlargement or reduction as the case may so require. Conversion data for executing this enlargement/reduction processing is stored in a memory 113. The binary processing section 106 receives the image data from the enlargement/reduction section 105 (e.g., 24-bit data) and converts the received image data into data consisting of a smaller number of bits as the case may so require. Conversion data for executing this conversion processing is saved in a memory 114. The ROM section 107 stores programs including timing data of the whole unit, data for operating the central processing unit 101 by processing commands inputted from the interface 110, and the like. These programs are necessary for operating the central processing unit 101. The image memory 108 stores the image data processed by the density correction section 103, the colour correction section 104, the enlargement/reduction section 105, and the binary processing section 106, and holds such data until such data are outputted from the interface 110. The interface 110 is a communication interface with the host computer 3 and outputs image data, inputs commands, and inputs calibration data files, and the like. The scanner 1, upon reading the sample chart 51 in the file preparation phase, sends the read image data to the host computer 3 through the interface 110 without performing the operations at the density correction section 103 and the colour correction section 104. When the calibration data files 37, 39 have been sent from the host computer 3, the scanner 1 stores the γ curve file 37 in the memory 111 and the colour correction coefficient file 39 in the memory 112. On the other hand, in the calibration execution phase in which a business application is being executed, the scanner 1 subjects the read image data to processing at the density correction section 103 and the colour correction section 104, and then either sends the thus processed image data to the host computer 3 or directly to the printer 5 through the interface 110. The memories 108, 111, 112, 113 and 114 are shown as discrete elements, but could be combined in a single memory device if desired. The foregoing is an overall description of the calibration operation performed by this system. The file preparation file, which forms the main part of the calibration operation, will now be described in detail. Fig. 4 shows a configuration of the sample chart 51 that is printed out by the printer 4 at the initial stage of this phase. This chart 51 includes a colour calibration chart 511 for calculating the colour correction coefficient and a γ calibration chart 513, also called a "grey scale" for calculating the γ curve table. As shown in Fig. 5, the γ calibration chart 513 is an array of rectangular regions (each being hereinafter referred to as a "batch") extending in a single direction. These batches are printed in 33 tones (0, 7, 15, ..., 239, 247, 255) selected as every eighth tone across the total tone range (0 to 255) of grey, where the tones of R, G, and B are the same. It may be noted that this grey scale 513 is arranged in two rows to save space in the printed sample chart 51. As shown in Fig. 5, the colour calibration chart 511 is divided into 9 large square regions, and as shown in detail in Fig. 6, each large square region is further divided into 81 small square regions (each small square region being hereinafter referred to as a "batch"). in each of the 9 large square regions, the B component is changed in 9 tones selected as every thirty second tone (0, 31, ..., 223, 225) across the total tone range. In each large square region, the R component and the G component are also changed in 9 tones selected as every thirty second tone (0, 31, ..., 223, 225) across the total tone range in the horizontal direction and in the vertical direction, respectively. Therefore, the colour calibration chart 511 is constructed of a total of 729 colour batches. The thus constructed sample chart 51 is read by the scanner 1 to produce image data, and the image data is sent to the host computer 3. The host computer 3 then calculates the γ curve table and the colour correction coefficient from the image data. In this case, the γ curve table is calculated first, and the colour correction coefficient is calculated thereafter. The procedure for calculating the γ curve table will be described in detail below. Figs. 7 and 8 are graphical representations of the γ curve table. Fig. 7 shows an input/output characteristic of the printer 5. While the input/output characteristic of the printer 5 more or less varies depending on the components R, G, B, there is a common tendency that the input/output characteristic of the printer 5 exhibits a non-linear characteristic curving toward the low output side with respect to a linear characteristic (Y = X). This curve is generally called a γ characteristic curve. To provide an ideal grey density reproduction of a printed-out reproduced image by having the γ characteristic curve of the printer 5 corrected by the scanner 1, what is required is only that the scanner 1 have a printer calibration γ curve such as shown in Fig. 8 (an inverse function of the printer γ characteristic curve shown in Fig. 7) as an input/output characteristic thereof. It is the γ curve table that intentionally imparts this printer calibration γ curve to the input/output characteristic of the scanner 1. That is, the γ curve table is a description of the correspondence between inputs and outputs as shown in Fig. 14. Fig. 9 shows in detail a flow of the processing of calculating the printer calibration γ curve table to be executed by the host computer 3. It may be noted that in Fig. 9 the same steps as in the general flow shown in Fig. 2 are denoted by the same reference numbers. First, in step 204, data in the γ calibration chart 513 is sampled from the image data in the sample chart 51 inputted from the scanner. The term "sampling" is intended to mean that data in a predetermined central region of each batch, the hatched region as shown in Fig. 10, is picked up. As a result of this sampling operation, data for as much as 33 tones is obtained. Since data at each tone consists of the three components R, G, B, a total of 99 pieces of data are obtained. Then, in step 301, final data for 256 tones is prepared by interpolating data between each two adjacent pieces of data sampled every 8 tones. The data interpolation can be carried out by an ordinary linear interpolation method. An example of how data interpolation is effected is shown in Fig. 11. As shown in Fig. 11, based on the RGB data of a sampled tone and that of the sampled tone next to said sampled tone, the RGB data for the 7 tones present between the two sampled tones are calculated by the linear interpolation method. After the data for 256 tones has been obtained in this way, normalisation processing with respect to the data for 256 tones is then executed in Step 302. Figs. 12 are a graphical representation of this normalisation processing. The curve indicated by the solid line on the graph of Fig. 12A represents the printer γ characteristic curve, the aforementioned data for 256 tones. One of the features of the γ characteristic curve is that tones close to tone 0 (pure black) and tones close to tone 256 (pure white) cannot be outputted. In other words, regions close to pure black and pure white cannot be printed. The normalisation processing modifies the printer γ characteristic curve (the data for 256 tones) as if the region close to pure black within the regions that cannot be outputted could be outputted. That is, the curve indicated by the solid line on the graph of Fig. 12A is modified into a curve indicted by the broken line so as to expand toward the high density (black) side. As a result of the modification made by the normalisation processing, the finally obtained printer calibration γ curve becomes the curve indicated by the broken line on the graph of Fig. 12B. If the normalisation processing is not executed, the printer calibration γ curve becomes the curve indicated by the solid line on the graph of Fig. 12B. This calibration γ curve indicated by the solid line means that black is outputted throughout a region A that is close to pure black. In contrast, the printer calibration γ curve indicated by the broken line on the graph of Fig. 12B obtained through the normalisation processing gives output tones that change in accordance with input tones even in the input region A that is close to pure black. As a result, when the data thus calibrated by this γ curve indicated by the broken line on the graph of Fig. 12B is printed out by the printer, a change in tones close to pure black in an original image can be reproduced as a change in tones close to the black side edge of the printable tone range. That is, the dynamic range close to the pure black region can be ensured. Accordingly, an unnatural solid black region is no longer present in a reproduced image, thereby allowing a natural reproduced image to be obtained. On the other hand, this normalisation processing is not designed to ensure the dynamic range with respect to a region close to pure white in the printer γ characteristic curve, but to only leave such region as a region that cannot be outputted. The reason for this is that a region close to pure white, such as a highlighted portion in an original image, looks natural if left pure white (the background colour of the sheet in actuality) in a reproduced image thereof and, if tones are given to such region (dotted in actuality), such region looks rather unnatural with the dots too conspicuous. This normalisation processing is executed using, e.g., the following operation expression for the respective RGB data: X' = (X - Min) * (Max / (Max - Min)) where X' is the normalised data, X is the data before being normalised, Min is the minimum value of the data before being normalised, and Max is the maximum value of the data before being normalised. After the normalisation processing, the grey scale data in the chart file 31 (meaning the Y = X linear characteristic) is loaded to the main memory in Step 303, and in Step 304 the chart file data is referenced to the previously normalised read data so that a calibration γ file 37 is prepared. Figs. 13 and 14 show a specific example of the γ table preparation processing. Fig. 13 schematically shows a table of normalised read data and a table of chart file data (Y = X) in upper and lower sides, respectively, where both data are developed in the main memory. The γ table preparation processing is designed to reverse the read data with Y = X as the central axis. A specific operation is as follows. Data in each column of a read data table shown in Fig. 13 is scanned in the order of tone and, upon change of the tone to a higher level, the column of the corresponding tone in the chart file table is referenced as shown by the arrow. The level of the tone in the read data table and level of the tone in the reference chart file table at the time are written as the input value and the output value to the calibration γ curve table such as shown in Fig. 14. This operation is continued until the read data table is scanned to the last column thereof. Accordingly, the calibration γ curve table shown in Fig. 14 can be prepared efficiently. This calibration γ curve table makes up the calibration γ file 37 and is not only saved in the host computer 3, but also sent to the scanner 1 so as to be saved in the memory 111 within the scanner 1. The operation of calculating a colour correction coefficient file 39 will be described next. The colour correction coefficient is in the form of the following 3x3 matrix filter. Defining data before passing through this matrix filter as Rn, Gn, Bn and data after passing therethrough as Rm, Gm, Bm, then is given. Fig. 15 is a graphical representation of a colour correction coefficient in this system. It may be noted that two colour components, R and G, are indicated on a two-dimensional plane and the colour component B is omitted to simplify Fig. 15. In Fig. 15, the solid line indicates data in the colour calibration chart in the chart file 31, and the broken line indicates read data in the chart file 31 (i.e., data that has been modified by the input/output characteristic of the printer). The colour correction coefficient is calculated so that the function of recovering the read data indicated by the broken line to the colour calibration chart data indicated by the solid line can be performed. Therefore, when the scanner 1 calibrates the data obtained by reading an original image using this colour correction coefficient, a reproduced image having colours of the original image extremely faithfully reproduced by be obtained with the effect of the calibration and the input/output characteristic of the printer cancelling each other out. Fig. 16 shows a flow chart of the process of calculating a colour correction coefficient performed by the host computer 3. It may be noted that in Fig. 16, the same steps as those in Fig. 2 are denoted by the same reference numerals. In Fig. 16, the following data for 21 colours is first sampled from the data obtained by reading the colour calibration chart 511 in the sample chart 51 in Step 205. It may be noted that the position of each batch of these 21 colours in the sample chart 51 is indicated in Fig. 4. (R, G, B) (R, G, B) 1. ( 63, 63, 63) 11. (191, 63, 127) 2. (191, 63, 63) 12. (127, 127, 127) 3. (191, 127, 63) 13. (191, 127, 127) 4. ( 63, 191, 63) 14. ( 63, 191, 127) 5. (127, 191, 63) 15. (127, 191, 127) 6. (191, 191, 63) 16. (191, 191, 127) 7. (191, 95, 95) 17. (191, 63, 191) 8. (127, 127, 95) 18. (191, 127, 191) 9. (223, 127, 95) 19. ( 63, 191, 191) 10. (191, 95, 95) 20. (127, 191, 191) 21. (191, 191, 191) The feature common to these 21 colours is that the tones range from 63 to 191. This range is determined by reference the aforementioned calibration γ curve table or γ curve file 37 so as to be within the range of tones that can be outputted by the printer 5. That is, data is sampled from the range of tones that can be outputted by the printer 5. The reason therefor is to allow faithful colour reproduction to be implemented within the range of tones that can be outputted by the printer 5. In other words, emphasis is placed on improving grey density and colour reproduction of half tones, not the primary colours (which are out of the range of tones that can be outputted by the printer 5). As a result of this design, satisfactory grey density and colour reproduction can be ensured for an original image such as an ordinary photograph in which there are many half tone colours. On the other hand, with respect to the original image such as an artificially depicted poster using many primary colours, there is a demand that the primary colours be reproduced as clearly as possible. To meet such a demand, it is necessary that data be sampled from regions close to the primary colours which is outside of the range of tones that can be outputted by the printer 5. Therefore, if a mode that performs the operation of sampling data from outside of the range of tones that can be outputted by the printer 5 is added to this embodiment, then two kinds of colour correction coefficients which satisfy the aforementioned two demands can be obtained, and these colour correction coefficients can be used in accordance with the application, thereby improving user-friendliness. The aforementioned sampling operation extracts data only in the central portion of the batch, as shown in Fig. 10, out of the read data for the 21 colours. A total of 63 pieces of data are sampled since each of the 21 colours includes the 3 colour components R, G and B. Then, in step 401, the sampled read data is subjected to γ characteristic calibration using the previously obtained γ curve table from Step 207. A colour correction coefficient is thereafter calculated in Step 402 from the γ-calibrated read data. The colour correction coefficient is calculated in the following way using the least-squares method so that error between the colour calibration chart data in the chart file 31 and the corresponding read data is minimised. If it is assumed that the read data for the 21 colours are defined as (Rgi, Ggi, Bgi) (i = 1, ..., 21) and that the corresponding data for the 21 colours in the chart file are defined as (Rsi, Gsi, Bsi) (i = 1, ..., 21), then the colour correction coefficient is determined so that an average square error between both data for each of the R, G, B components, i.e., is minimised. The coefficient is determined by solving the following equation. where Σ is the abbreviation of Σ and Rs, Gs, Bs, Rg, Gg, and Bg are the abbreviations of Rsi, Gsi, Bsi, Rgi, Ggi, and Bgi, respectively. That is, the colour correction coefficient can be calculated by executing the following arithmetic operation. where "-1" is the inverse matrix and "T" is the transposed matrix. The thus calculated colour correction coefficient is called a temporary colour correction coefficient. This temporary colour correction coefficient is subjected to normalisation processing in Step 403. The normalisation processing modifies the temporary colour correction coefficient so that the sum of each column (kr + kg + kb), (lr + lg + lb), (mr + mg + mb), which is the lightness component of the temporary colour correction coefficient, becomes equal to one another ( = 1). More specifically, each of coefficients kr, kg, kb of the column k is divided by the sum of the column k (kr + kg + kb), each of coefficients lr, lg, lb of the column 1 is divided by the sum of the column 1 (lr + lg + lb), and each of coefficients mr, mg, mb of the column m is divided by the sum of the column m (mr + mg + mb). This normalisation processing provides an advantage that grey balance is not lost. That is, in the case where the read data indicating grey (R, G, B have the same tone) is multiplied by the colour correction coefficient (see Eq. 2), if the temporary colour correction coefficient is used without normalisation, then the data after the multiplication is such that R, G, B have different tone levels since the sums of the respective columns (lightness component) are usually different from one another. This means that the read data after such multiplication exhibits a colour other than grey (achromatic colour). In contrast thereto, if the normalised colour correction coefficient is used, the read data after multiplication exhibits grey since the sums of the respective columns are equal to 1, thereby allowing grey balance to be maintained. The thus normalised colour correction coefficient is not only saved in the host computer 3 as the final colour correction coefficient file 39, but also sent to the scanner 1 to be saved in the memory 112 within the scanner 1.

Claims: A data correction subsystem (3) for a colour image processing system having a colour image reading device (1) and a colour image printing device (5), the data correction subsystem (3) being characterised by comprising: transmitting means (3) for transmitting a chart file (31) to the printing device (5) so that the printing device (5) produces a sample chart (51); calculation means (3) for calculating γ and colour calibration data (37, 39) from read sample data so that the read sample data can be corrected to corresponding data in the chart file (31), the read sample data being obtained by causing the reading device to read the sample chart (51), the calculation means including grey density normalisation means for subjecting the read sample data to normalisation processing which expands the γ-characteristics curve of the image printing device (5) toward a higher side; and calibration means (3) for correcting printing data transmitted to the printing device (5) using the y and colour calibration data (37, 39). A data correction subsystem according to claim 1 wherein the read sample data is first image data being produced by the image reading device (1) upon a reading of the sample chart (51) by the image reading device (1); the calculation means (3) for calculating the γ and colour calibration data (37, 39) in accordance with the comparison of the first image data with the chart file (31); and further comprising means (3) for transmitting the γ and colour calibration data (37, 39) to the image reading device (1) so that second image data produced by the image reading device (1) upon a reading of an image by the image reading device (1) is corrected in accordance with the γ and colour calibration data (37, 39). A data correction subsystem according to claim 1 or 2, wherein the γ and colour calibration data (37, 39) includes γ calibration data (37) for correcting grey density and colour calibration data (39) for correcting a colour, and the calibration means (3) subjects the printing data first to grey density correction using the y calibration data (37) and then to colour correction using the colour calibration data (39). A data correction subsystem according to claim 3, wherein the colour calibration data (39) is a 3x3 matrix filter by which three primary colour components of the printing data are multiplied. A data correction subsystem according to any preceding claim, wherein a plurality of different types of colour image printing devices (5) can be used selectively or concurrently as the colour image printing device (5), and wherein the data correction subsystem (3) further comprises: γ and colour calibration data storing means (3) for storing y and colour calibration data (37, 39) calculated respectively for each of the plurality of types of the colour image printing devices (5); and γ and colour calibration data selection means (3) for selecting the γ and colour calibration data (37, 39) for a type of colour image printing device (5) to be used from the stored γ and colour calibration data (37, 39) and for supplying the selected γ and colour calibration data (37, 39) to the calibration means (3). A data correction subsystem according to any preceding claim, wherein the calibration data (37, 39) includes γ calibration data (37) for correcting a grey density, and wherein the calculation means (3) comprises: grey density normalisation means (3) for subjecting the read sample data to normalisation processing to expand a grey density distribution region of the read sample data toward a higher density side; and conversion data calculation means (3) for calculating conversion data for correcting a grey density of the normalised read sample data to a grey density of the chart file (31) data and making the calculated conversion data the γ calibration data (37). A data correction subsystem according to any preceding claim, wherein the γ and colour calibration data (37, 39) includes γ calibration data (37) for correcting a grey density, and wherein the calculation means (3) comprises: density change detection means (3) for detecting a point of change in a density value by scanning grey density values of the read sample data in a single direction; and conversion data preparation means (3) for preparing conversion data for converting the grey density value of the read sample data at the detected point of change into a grey density value of the chart file (31) data corresponding to the point of change and making the prepared conversion data the γ calibration data (37). A data correction subsystem according to any one of claims 3 to 4, wherein the γ and colour calibration data (37, 39) includes colour calibration data (39) for correcting a colour, and wherein the calculation means (3) comprises: colour sampling means (3) for sampling only colour data in the chart file (31) from the read sample data, the colour data corresponding to a predetermined colour within a range of colours that can be output by the colour image printing device (5); and conversion data calculation means (3) for calculating conversion data for correcting the colour data sampled from the read sample data to corresponding data in the chart file (31) and making the conversion data the colour calibration data (39). A data correction subsystem according to any one of claims 3 to 4 or 8, wherein the γ and colour calibration data (37, 39) includes colour calibration data (39) for correcting a colour, and wherein the calculation means (3) comprises: colour sampling means (3) for sampling only colour data in the chart file (31) from the read sample data, the colour data corresponding to a predetermined colour outside a range of colours that can be output by the colour image printing device (5); and conversion data calculation means (3) for calculating conversion data for correcting the colour data sampled from the read sample data to corresponding data in the chart file (31) and making the conversion data the colour calibration data (39). A data correction subsystem (3) according to any one of claims 3 to 4, 8 or 9, wherein the y and colour calibration data (37, 39) includes colour calibration data (39) for correcting a colour, and wherein the calculation means (3) comprises: matrix filter calculation means (3) for calculating a 3x3 matrix filter to minimise an error between three primary colour component values of the read sample data and three primary colour component values of the chart file (31) data; and matrix normalisation means (3) for executing normalisation processing to make lightness components with respect to the three primary colours of the calculated matrix filter equal to one another and making the thus normalised matrix filter the colour calibration data (39). A data correction method for a colour image processing system having a colour image reading device (1) and a colour image printing device (5), comprising the steps of: transmitting a chart file (31) to the colour image printing device (5) so that the colour image printing device (5) produces a sample chart (51); calculating γ and colour calibration data (37, 39) from read sample data so that the read sample data can be corrected to corresponding data in the chart file (31), the read sample data being obtained by causing the colour image reading device to read the sample chart (51); the calculation means including grey density normalisation means for subjecting the read sample data to normalisation processing for expanding the γ-characteristics curve of the image printing device (5) toward a higher side; and correcting printing data to be transmitted to the colour image printing device (5) using the y and colour calibration data (37, 39). A data correction method according to claim 11, wherein the read sample data is first image data being produced by the colour image printing device (5) upon a reading of the sample chart (51) by the colour image reading device (1); and comprising the steps of: calculating the γ and colour calibration data (37, 39) in accordance with the comparison of the first image data with the chart file (31); and transmitting the γ and colour calibration data (37, 39) to the colour image reading device (1) so that second image data produced by the colour image reading device (1) upon a reading of an image by the colour image reading device (1) is corrected in accordance with the calibration data (37, 39). A colour image processing system having a colour image reading device (1) and a colour image printing device (5), and being characterised by comprising the data correction subsystem (3) of any one of claims 1-10. A colour image processing system according to claim 13, wherein the colour image reading device (1) comprises a calibration data storage means (3) for storing the γ and colour calibration data (37, 39) obtained by the calculation means (3), and wherein the calibration means (3) is provided in the colour image reading device (1). A colour image processing method comprising the data correction method of any of claims 11 to 12 inclusive. A colour image processing method according to claim 15 when dependent upon claim 12, wherein the step of calculating the calibration data (37, 39) includes the steps of calculating γ calibration data (37) and calculating colour calibration data (39), and wherein the step of correcting the second image data includes the steps of correcting a grey density of the second image data in accordance with the γ calibration data (37) and correcting a colour of the second image data in accordance with the colour calibration data (39). A colour image processing method according to claim 15 when dependent upon claim 12, wherein the printing step, the first reading step, the comparing step, and the calculating step are performed a plurality of times to produce γ and colour calibration data (37, 39) for a plurality of corresponding colour image printing devices (5), and wherein the method further comprises the step of storing the γ and colour calibration data (37, 39) for at least one of the plurality of colour image printing devices (5).

Inventors: ICHINOSE SHUICHI, TADENUMA HIRONOBU, ICHINOSE, SHUICHI, TADENUMA, HIRONOBU, ICHINOSE, SHUICHI, C/O SEIKO EPSON CORPORATION, TADENUMA, HIRONOBU, C/O SEIKO EPSON CORPORATION
Applicants: SEIKO EPSON CORP, SEIKO EPSON CORPORATION
Application year: 1995
Main classification: H04N1
IPC codes: H04N1, G06T5