Color image signal processing device
BACKGROUND OF THE INVENTION 
     1. Field of the Invention 
     The invention relates to a color image signal processing device for converting a color signal of an image for a first device, such as a color CRT, to a color signal with which the image is reproduced by a second device, such as a color printer. 
     2. Description of Related Art 
     In a conventional color image signal processing device for converting RGB (red, green and black) signals for a first device, such as a color CRT, to CMYK (cyan, magenta, yellow, black) signals which are control signals for a second device, such as a color printer, a conversion process is generally carried out as follows when the color signal is described with 8 bits in each device. That is, assuming that the three signals of CMY are complementary color signals of RGB, the conversion processing is carried out according to the following equation: 
     
         C=255-R, M=255-G, Y=255-B 
    
     Various calculation methods have been proposed to calculate the black color signal of K and, generally the minimum value of each signal of CMY is used. 
     However, in such a color image signal processing device using numerical values which are dependent on the respective devices, it is difficult to match a reproduced color image with user&#39;s color sense, and it is also difficult to perform color correction and color conversion so as to achieve visual color matching. 
     Further, a color-correction and color-conversion target mainly concentrates on the adjustment of hue. For the color signals of the RGB and CMYK, the color to be reproduced is dependent on a device, so that conversion to accurate hue data cannot be performed and accurate transmission cannot be performed. 
     In order to solve this problem, some proposals have been made in U.S. Pat. Nos. 4,965,664 and No. 4,843,573. In these proposals, from the viewpoint that most of color-correction targets are concentrated on the correction of hue, the color correction is performed on the basis of three signals of H (hue), V (brightness) and C (chroma) (not using the RGB signals). Further, the problem that the color reproduction is dependent on device characteristics can be solved by using signals which are based on the CIE (Commission Internationale de l&#39;Eclairage or International Commission on Illumination) system as an international standard which is not dependent on a device. In the CIE system, an XYZ color system (hereinafter, the value of XYZ is referred to as &#34;CIE1931XYZ value&#34;) was instituted as a method of representing a color with a numerical value in 1931. A L*a*b* color system (hereinafter, the value of L*a*b* is referred to as &#34;CIE1976L*a*b* value&#34;) was instituted in 1976. 
     However, according to these conventional methods, the color matching is performed only on the basis of the color values of the CIE system and, thus, it is not applicable to overcome a visual color difference due to the difference in the color mixing mechanism between the color reproduction of an additive color mixing system based on coloring like CRT and the color reproduction of a subtractive color mixing system based on ink color materials like a printer. Furthermore, in some cases it is better to reproduce a color different from an actual color, for colors such as skin color, sky color, or lawn color (so-called memory color), to achieve excellent color reproduction. However, the conventional color conversion method aims to achieve numerically coincident color at all times. Thus, in some cases it does meet the user&#39;s intention. 
     SUMMARY OF THE INVENTION 
     An object of the invention is to provide a color image signal processing device in which, when a color signal of an image for a first device is reproduced by a second device, a user can easily alter to a desired hue conversion characteristic to perform proper color reproduction from the viewpoint that a color matching of hue in three attributes of color takes an important role for color reproduction. 
     In order to attain the above object, according to the invention, a color image signal processing device comprises hue calculation means for calculating a hue value from the color signal of an image for a first device, hue conversion means for performing a conversion operation to reproduce the hue value, calculated in the hue calculation means, by a second device, first color selection means for selecting a color of an image for the first device, second color selection means for selecting a color to be reproduced by the second device, and conversion characteristic correcting means for correcting a conversion characteristic of the hue conversion means on the basis of the color selected by the first color selection means and the color selected by the second color selection means. 
     In the color image signal processing device according to the invention, the hue conversion means may be provided with hue conversion value storage means for presetting and storing hue values of the first device into which a hue range of the first device is arbitrarily divided by the hue conversion means, and hue values of the second device which correspond to the hue values of the first device, and the conversion characteristic correcting means may be also provided with address calculation means for calculating an address in the hue conversion value storage means on the basis of the color selected by the first color selection means, hue conversion characteristic calculation means for calculating a new conversion characteristic on the basis of the colors which are selected by the first color selection means and the second color selection means, and hue conversion value correcting means for correcting a storage content of the hue conversion value storage means on the basis of the address calculated by the address calculation means and the new conversion characteristic calculated by the hue conversion characteristic calculation means. 
     The color image signal processing device of the invention may be designed so that the storage capacity of the hue conversion value storage means is variable. 
     In the color image signal processing device thus structured, the hue calculation means calculates the hue value on the basis of the color signal of the image for the first device, and the hue conversion means converts the calculated hue value for reproduction by the second device. A user selects the color of the image for the first device through the first color selection means, and selects the desired color to be reproduced by the second device through the second color selection means. On the basis of both of the selected colors, the conversion characteristic correcting means corrects the conversion characteristic of the hue conversion means. When the conversion characteristic is corrected once, the desired color which is selected by the second color selection means for the color selected by the first color selection means is subsequently reproduced by the second device. 
     Furthermore, in the color image signal processing device of the invention, the hue calculating means of the hue conversion means interpolatively calculates the hue value on the basis of information stored in the hue conversion value storage means. The conversion characteristic correcting means calculates the address in the hue conversion value storage means on the basis of the color selected by the first color selection means, and calculates a new conversion characteristic on the basis of the colors selected by the first color selection means and the second color selection means to correct the storage content of the hue conversion value storage means on the basis of the calculated address and the new conversion characteristic. With this operation, the hue value is interpolatively calculated in the hue conversion value storage means if the occasion demands, and the storage content is corrected to a new value in accordance with the user&#39;s selection. 
     Still further, in the color image signal processing device of the invention, the storage capacity of the hue conversion value storage means is variable, and a user&#39;s desired conversion characteristic can be developed. 
     As is apparent from the foregoing, according to the color image signal processing device of the invention, the hue conversion characteristic can be corrected on the basis of the selection of the color to be input from the first device and the color to be reproduced by the second device, so that a color which is needed by the user or matched with user&#39;s sense can be easily reproduced by the second device. 
     According to the color image signal processing device of the invention, the hue value is interpolatively calculated to correct the hue conversion value of the hue conversion value storage means, so that the reproduced color can be prevented from sharply varying when the hue varies slightly. 
     According to the color image signal processing device of the invention, the storage capacity of the hue conversion value storage means is variable, so that the hue conversion value can be freely altered to a user&#39;s favorite one. 
    
    
     BRIEF DESCRIPTION OF THE DRAWINGS 
     A preferred embodiment of the invention will be described in detail with reference to the following figures wherein: 
     FIG. 1 is a block diagram showing a color image signal processing device of an embodiment according to the invention; 
     FIG. 2 is a flowchart for a color conversion processing of the device of the embodiment; 
     FIG. 3 is a graph showing an interpolating method in hue conversion; 
     FIG. 4 shows a hue conversion table before correction; 
     FIG. 5 shows a hue conversion table after correction; and 
     FIG. 6 is a flowchart for a correction processing flow of a hue conversion table. 
    
    
     DETAILED DESCRIPTION OF PREFERRED EMBODIMENT 
     A preferred embodiment of the invention will be described in detail with reference to the accompanying drawings. 
     FIG. 1 shows the overall structure of a color image signal processing device of an embodiment according to the invention (hereinafter referred to as &#34;the device&#34;). The device converts a color signal of an image for a color CRT display 2 (first device) to reproduce the image signal in a color printer 4 (second device). The device 1 includes a CPU 3 for outputting the color signal of the image to the CRT display 2, a ROM 3A in which a control program for the CPU 3, is stored, a RAM 3B for storing signals to be input to and output from the CPU 3, a CPU 5 for conducting conversion processing on the color signal and outputting the processed color signal to a color printer 4 through a print driver 4A, a ROM 6 in which hue conversion data 6A and conversion programs are stored, and a RAM 7 provided with a hue conversion table 7A and a working area 7B. The CPU 3 is connected to a mouse 8 and a keyboard 9 to input operation commands. The CPU 3 and the CPU 5 are connected to each other through a bus 3C so that they are allowed to communicate therebetween. The CPU 5 is connected to the ROM 6 and the RAM 7. The CPU 5 has various functions, such as a hue calculator 11, a hue conversion table adjustment unit 12 and a color converter 13. 
     The operation of the device 1 is described as follows. First, a normal operation will be described. 
     When a print command to perform a print operation of color image data, displayed on a CRT display 2, by a color printer 4 is transmitted from the CPU 3 to the CPU 5, the CPU 5 searches for an address of the hue conversion table 7A in the RAM 7. If no data exist in the hue conversion table 7A, the CPU 5 accesses the hue conversion data 6A in the ROM 6 and writes the data at a predetermined area of the RAM 7. Thereafter, the image data are transmitted from the CPU 3 to the hue calculator 11 of the CPU 5 to calculate a hue value from the color signal in the image data. The hue value is further converted in the color converter 13 so that it is reproduced by the printer. The conversion by the color converter 13 is carried out while referring to the hue conversion table 7A stored in the RAM 7. The CPU 5 controls the color printer 4 through the print driver 4A on the basis of the data after the conversion to print the image. 
     Next, an adjusting operation of matching the hue conversion table 7A, stored in the RAM 7, to an user&#39;s favorite one will be described. When the print command is transmitted from the CPU 3 through the bus 3C to the CPU 5 and the CPU 5 confirms that data exist in the hue conversion table 7A, the CPU 5 outputs a signal to the CPU 3 to inquire of the CPU 3 whether the hue conversion table 7A should be adjusted. This inquiry signal is displayed on the CRT display 2 by the CPU 3. This inquiry is carried out at all times in normal operation. In response to the inquiry, the user manipulates the mouse 8 or the keyboard 9 to input his/her response as to whether the hue conversion table 7A is to be adjusted. The response signal is returned from the CPU 3 through the bus 3C to the CPU 5. 
     When the CPU 5 is supplied with the signal instructing the adjustment of the hue conversion table 7A, the CPU 5 transmits through the bus 3C to the CPU 3 a signal requesting selection of a color to be subjected to the hue adjustment on the CRT 2. The CPU 3 displays the request for the selection of the color to be subjected to the hue adjustment on the CRT 2. The user manipulates the mouse 8 or the keyboard 9 to select the color on which the user wants to conduct the hue adjustment on the CRT 2, and inputs the selected color to the CPU 3. When the color selection is completed, the CPU 3 transmits the hue data (color signal) of the selected color on the CRT display 2 through the bus 3C to the CPU 5. The hue conversion table adjustment unit 12 of the CPU 5 receives the transmitted data. The above structure and processing correspond to the first color selection means. 
     Subsequently, the CPU 5 transmits from the bus 3C to the CPU 3 a signal which instructs the CPU 3 to transmit a hue adjustment amount (ΔH). The hue adjustment amount is used for the selected color so that a desired color can be reproduced by the color printer 4. The user manipulates the mouse 8 or the keyboard 9 to input the hue adjustment amount (ΔH) to the CPU 3. The input hue adjustment amount (ΔH) is the transmitted from the CPU 3 through the bus 3D to the CPU 5. The hue adjuster 11A of the CPU 5 receives the transmitted data (ΔH). The above structure and processing correspond to the second color selection means. The hue adjuster 11A adjusts the selected color on the basis of the hue adjustment amount ΔH. The hue conversion table adjustment unit 12 corrects the hue conversion table 7A on the basis of the adjusted data by the hue adjuster 11A to alter the data of the hue conversion table 7A in the RAM 7. 
     Subsequently, the operation as described above will be described in more detail. In the following description, a CIE1931XYZ value output from the CPU 3 is subjected to the hue conversion to be altered to a new CIE1931XYZ value. Further, the new CIE1931XYZ value is converted to CMYK signals by a well-known CMY conversion method and then input to the print head driver 4A, that is, the conversion is carried out on a so-called device independent color system. 
     Before describing the invention in more detail, a conversion equation to convert the CIE1931XYZ value to an HVC (hue, brightness, chroma) value will be described. 
     The three stimulus values (signal values) in the CIE1931XYZ color system of a white color on the CRT display are represented by Xn, Yn and Zn respectively, and the three stimulus values (signal values) in the CIE1931XYZ color system of any color of an image for the CRT 2 which is output from the CPU 3 are represented by X, Y and Z respectively. An L*a*b* based on the CIE1976L*a*b* color system is calculated on the basis of the above data according to the following equation (1): 
     
         L*=116 (Y/Yn).sup.1/3 -16 
    
     
         a*=500 {(X/Xn).sup.1/3 -(Y/Yn).sup.1/3 } 
    
     
         b*=200 {(Y/Yn).sup.1/3 -(Z/Zn).sup.1/3 } 
    
     Here, when any one of (X/Xn), (Y/Yn) and (Z/Zn) is below 0.008856, the term of the corresponding cubic root is varied to 7.787(X/Xn)+16/116, 7.787(Y/Yn)+16/116, 7.787(Z/Zn)+16/116. The following equation (2) is used to convert the above value to HVC: 
     
         H0=ARCTAN (b*/a*)×180/π 
    
     
         For a*&gt;0 and b*≧0, H=H0 
    
     
         For a*&lt;0 and b*≧0, H=180-H0 
    
     
         For a*&gt;0 and b*≦0, H=H0+180 
    
     
         For a*&lt;0 and b*≦0, H=360-H0 
    
     
         For a*=0 and b*&gt;0, H=90 
    
     
         For a*=0 and b*&lt;0, H=270 
    
     For a*=0 and b*=0, there is no color. &#34;No color&#34; means a color having only brightness and having no concept of &#34;hue&#34; like white, black and gray, however, it is assumed to be a value having H=0 for the sake of convenience. 
     
         V=L* 
    
     
         C=(a*.sup.2 -b*.sup.2).sup.1/2 
    
     Next, a system for connecting the CRT display 2 and the color printer 4 in this embodiment will be described in detail. 
     In this embodiment, data transmission between the devices is carried out using a so-called device independent color, such as the CIE1931XYZ color system (hereinafter, a value of this color system is referred to as &#34;XYZ&#34;), which is one of the color systems that are not dependent on the devices. 
     First, flow of the color conversion will be described with reference to FIGS. 1 and 2. 
     When an input value XYZin is input from the CPU 3 through the bus 3C to the CPU 5 (S1), the input value XYZin is converted to an L*a*b* value according to the conversion equation (1) in the hue calculator 11 of the CPU 5. Subsequently, the L*a*b* value is converted to an input hue value Hin according to the equation (2) in the hue calculator 11 (S2). Subsequently, the color converter 13 refers to the hue conversion table 7A of the RAM 7 to judge whether the value corresponding to the hue value Hin is stored as the input hue value. If the judgment is &#34;Yes&#34;, the output color hue value Hout corresponding to the input hue value Hin is accessed. If the judgment is &#34;NO&#34;, the output hue value Hout is estimated by an interpolating method as described later (S3). Subsequently, L*a*b*out values are calculated on the basis of the calculated hue value and the L*a*b* value according to the following equation (3): 
     
         L*out=L*in 
    
     
         a*out=Cos (Hout×π/180)×(a*in.sup.2 +b*in.sup.2).sup.1/2 
    
     
         b*out=Sin (Hout×π/180)×(a*in.sup.2 +b*in.sup.2).sup.1/2 
    
     Next, on the basis of the L*a*b*out values, the XYZout values are calculated according to the following equation (4) (S4): 
     
         Y0=(L*out+16)/116 
    
     
         X0=a*out/500+Y0 
    
     
         Z0=Y0-b*out/200 
    
     
         Xout=X0.sup.3 ×Xn 
    
     
         Yout=Y0.sup.3 ×Yn 
    
     
         Zout=Z0.sup.3 ×Zn 
    
     When any one of X0, Y0 and Z0 is below (0.008856) 1/3 , the corresponding XYZout values are calculated according to the following equations: 
     
         Xout=(X0-16/116)/7.787 
    
     
         Yout=(Y0-16/116)/7.787 
    
     
         Zout=(Z0-16/116)/7.787. 
    
     Subsequently, the XYZout values are converted to CMY values by using the well-known CMY conversion in the color converter 13 (S5). The CMY value signals are transmitted from the CPU 5 through the bus 5A and the print head driver 4A to the printer print head 4 to reproduce the image through the print operation (S6). 
     Next, the interpolating method will be described with reference to FIGS. 3, 4 and 5. FIG. 3 is a graph whose abscissa axis shows the input hue value described in the hue conversion table 7A and whose ordinate axis shows the output hue value. FIG. 4 shows values stored in the hue conversion table 7A. The graph of FIG. 3 and the table of hue values described in the hue conversion table in FIG. 4 are illustrated as ranging from 0 to 360 in both input hue value and output hue value. However, there would be no problem even when the hue range exceeds the above range in a positive or negative direction insofar as it covers the hue range from 0 to 360. In this case, the hue value range is illustrated as ranging from 0 to 360 because any hue value is represented by a hue ring. 
     If the input hue value Hin is a hue value given to the color converter 13, the output hue value Hout is obtained as follows. Input hue values Hin1 and Hin2 which are located before and after the input hue value Hin are searched by the hue conversion table 7A, and the output hue values Hout1 and Hout2 corresponding to the input hue values Hin1 and Hin2 are further obtained. Thereafter, Hout is calculated according to the following equation (5): 
     
         Hout=(Hin-Hin1)/(Hin2-Hin1)×(Hout2-Hout1)+Hout1 
    
     FIG. 5 shows the interpolated hue conversion table 7A. The above description is for the processing method of converting the XYZin values for the CRT 2 output from the CPU 3 into the XYZoutput values for the color printer 4. 
     Next, the correction method of the hue conversion table 7A which is the feature of the invention will be described with reference to FIG. 6. 
     A color to be corrected of the colors displayed on the CRT 2 is selected by using the mouse 8 or the keyboard 9 (S11). The selected XYZ values are transmitted from the CPU 3, through the bus 3C, to the CPU 5. The hue calculator 11 of the CPU 5 reads in the XYZ values of the selected color and calculates the hue value Hin on the basis of the equations (1) and (2) (S12). The color converter 13 judges whether the same value as Hin is stored in the input hue values of the hue conversion table 7A (S13). If it is not stored in the hue conversion table 7A, the output hue value Hout corresponding to Hin is interpolatively calculated according to the equation (5) as described above (S14). Further, the address 2(n+1) of Hin2 on the hue conversion table 7A of the RAM 7 is stored as a rewrite address in the working area 7B of the RAM 7, and an insertion mode is stored in the working area 7B of the RAM 7 (S15). 
     Subsequently, when, using the CRT display 2 and the mouse 8 or the keyboard 9, the user inputs a color adjustment amount (ΔH) of the output hue Hout by which the selected color is varied from the color which has been obtained through the color conversion until now (S16), the color adjustment amount (ΔH) of the output hue Hout is transmitted from the CPU 3, through the bus 3D, to the hue adjuster 11A, of the CPU 5, the value of Hout which corresponds to the input value Hin is finely adjusted (S17). Various methods may be used as an input method of the color adjustment amount of the output hue Hout. For example, it may be adopted that various colors for selection of a fine adjustment amount are displayed on the CRT display 2 and then a desired color is selected by the mouse 8 or key board 9. Alternatively, a numerical value may be input from the keyboard connected to the CPU 3. Hue adjuster 11A calculates a new Hout (Hout new ) according to Hout new  =Hout+ΔH. 
     Subsequently, the hue conversion adjustment unit 12 checks the on/off status of the insertion mode which is stored in the working area 7B of the RAM 7 (S18). If the insertion mode is on, the hue conversion adjustment unit 12 inserts new data Hin and Hout new  at the address in the hue conversion table 7A which corresponds to 2(n+1) stored as the rewrite address in the working area 7B of the RAM 7 (S19), and data subsequent to Hin2 are shifted backwardly every two addresses (see FIG. 5). If Hin is equal to any one of the input hue values stored in the hue conversion table 7A (S13), the corresponding output hue value is set as Hout (S20). Further, the address in the hue conversion table 7A of the input hue value in which the same value as Hin is stored is stored as the rewrite address in the working area 7B of the RAM 7, and the off status of the insertion mode is stored in the working area 7B of the RAM 7 (S21). 
     The fine adjustment of Hout is performed in the same processing as described above. Thereafter, since the insertion mode stored in the working area 7B is off (S18:No), the values Hin and Hout new  are successively overwritten from the place indicated by the rewrite address stored in the working area 7B (S22). 
     As described above, by using the hue conversion table 7A whose conversion characteristic is corrected, a user&#39;s target color can be subjected to the color conversion in accordance with the user&#39;s taste. Further, color in the vicinity of Hin can be finely adjusted to keep continuity by the new hue conversion table 7A to which is added the input hue Hin and the output hue Hout new , so that jumping (discontinuity) of reproduced color due to the correction of the hue conversion table 7A can be prevented. 
     In this embodiment, the color conversion in the device independent color, such as the CIE1931XYZ color system, is described in detail. However, the invention is also applicable to a device for inputting and outputting RGB or CMYK which is the device color, by inserting color conversion means as disclosed in Japanese Laid-open Patent application No. Sho-63-162248 between the device color and the color image signal processing device of the invention.