WO1992010791A1 - Apparatus and method for producing color corrected reproductions of colored original images - Google Patents
Apparatus and method for producing color corrected reproductions of colored original images Download PDFInfo
- Publication number
- WO1992010791A1 WO1992010791A1 PCT/US1991/005575 US9105575W WO9210791A1 WO 1992010791 A1 WO1992010791 A1 WO 1992010791A1 US 9105575 W US9105575 W US 9105575W WO 9210791 A1 WO9210791 A1 WO 9210791A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- color
- cyan
- density
- agent
- magenta
- Prior art date
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N1/00—Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
- H04N1/46—Colour picture communication systems
- H04N1/56—Processing of colour picture signals
- H04N1/60—Colour correction or control
- H04N1/6011—Colour correction or control with simulation on a subsidiary picture reproducer
Definitions
- the present invention concerns a system for providing output signals representative of color corrected color densities of coloring agents used in reproducing a colored original image. More particularly, the present invention automatically provides the output signals representative of the color corrected color densities in response to input signals representative of the primary color readings of the original image.
- the present invention is also concerned with a system for producing images on a color monitor realistically simulative of how an original image created on the color monitor would appear if printed as a color corrected image using process inks or the like.
- color reproduction strives to faithfully reproduce the colors of the original image. More particularly, color reproduction strives to create a reproduced image which reflects the same spectral colors, typically measured in terms of red, green and blue, as the original.
- Instruments such as a densitometer allow quantified readings of the primary spectral colors and thereby enable the quality of the reproduction to be quantified in numerical terms.
- a densitometer produces the three primary color readings of red, green, and blue by separately sensing the light transmitted through separate red, green, and blue filters. That is to say, a red reading corresponds to the amount of standardized light passing through a standardized red filter or transmitted through (transparency) after being reflected from a particular portion of the original image.
- green and blue readings are produced by sensing the light transmitted through respective green and blue filters.
- the red, green, and blue filters are designed to respectively absorb one-third of the spectrum reflected from the image centered about the three primary colors red, green, and blue.
- primary color readings are a subtractive process which readings representthe remaining light transmitted through red, green, and blue filters.
- the objective of color reproduction is to impress transparent coloring agents on white paper such that the coloring agents act as ideal primary color filters.
- Color agents are typically identified by their process colors of cyan, magenta and yellow corresponding respectively to red, green and blue, ideally these process colors act as perfect red, green, and blue filters which absorb only their designated portion of the spectrum and reflect or transmit the rest.
- coloring agents do not act as perfect red, green, and blue filters. That is to say, typically coloring agents are not strongly absorbing in one-third of the spectrum and strongly reflecting or transmitting in the other two-thirds of the spectrum. For example, a typical cyan coloring agent which ideally would absorb light only in the red third of the spectrum, also absorbs light in the green portion and blue portion. Similarly, typical magenta coloring agents, while predominately absorbing light in the green part of the spectrum, also absorb in the red and blue portions, and yellow coloring agents absorb not only the blue portion of the spectrum but also in the green portion and the red portion. Hence, coloring agents are said to contain so-called "dirt" in reference to the fact that coloring agents do not perform as ideal red, green, and blue filters.
- color for a particular type of coloring agent can be quantified as having a certain proportion or percentage of the other two colors.
- cyan ink at a given density can be said to include a density level or percentage of magenta and yellow. That is to say, the green filtering action in the cyan ink can be characterized as a certain percentage of magenta in the cyan and the blue filtering action can be characterized as a certain percentage of yellow.
- a magenta ink at a given density level can be said to include a certain percentages of cyan and of yellow, and the yellow ink can be said to have a certain percentages of magenta and cyan therein at a given density.
- each coloring agent contributes color to the other agent colors and the amount of contribution is different at different densities. This contribution effect must be taken into account in the color correction process.
- Proportionality failure refers to the fact that the color density of an agent color as measured by a densitometer does not increase linearly as the printing density of the coloring agent increases. That is, when the printing or coverage density of a cyan ink is increased, the measured cyan color density does not increase linearly therewith. Additionally, as the cyan ink density increases the magenta and yellow contributions also do not increase linearly.
- Additivity failure refers to the fact that when two or more coloring agents are combined, the contribution one makes to the other does not increase or add linearly.
- a cyan ink at a given density level has a certain cyan color density.
- a magenta ink at a given density level also contains a certain cyan density. If the cyan from the cyan ink and the cyan from the magenta ink combined linearly, the total cyan density reading of the combination would be a simple sum of the cyan density from the cyan ink and the cyan density contributed by the magenta ink. However, the resulting combination typically produces a net cyan density reading less than the sum of the two cyan sources. Thus, the cyan densities fail to add linearly.
- color correction is typically achieved by masking techniques in which the lithographer produces color separation masks used for producing printing plates which are designed to produce the desired color correction.
- the masking techniques while generally effective, are also time consuming and expensive and may be prohibitively expensive for short runs of printing material.
- Another color correction technique concerns the use of a micro ⁇ computer and associated electronic memory in which primary color reading data is stored therein corresponding to color charts of the coloring agents to be used in the reproduction process.
- the color agent charts for a given type of coloring agents are composed of patches of various combinations of the three colors of coloring agents at various color densities. If fifteen density steps of the three agent colors are used to make the charts, 3,375 combinations are possible with each producing corresponding red, green, and blue readings.
- This data is typically arranged in the form of a table and the patch is selected having red, green, an blue readings which correspond most closely with the desired red, green, and blue readings.
- a lookup table so construct- ed is limited in its color correction accuracy. For example, fifteen density steps for each process color produces increments of 6.67% for each step.
- the amount of memory space increases by the cube of the number of density steps.
- six bytes of data must be stored for each patch corresponding to a byte of data for each process color in the combination and a byte of data for each primary color reading produced by that color patch.
- at least 8,000,000 bytes of data must be stored.
- this volume of data becomes unwieldy to produce and enter, expensive to store, and time consuming to retrieve.
- this data is usable only for a particular set of inks and must be re-entered for different inks. That is to say, a new look-up table is required if the inks are changed. As a result of these problems, electronic color correction is not in widespread use.
- the prior art also presents another problem for artists creating colored art work on a colored monitor.
- the phosphors on monitors produce pure red, green and blue colors which are not subject to the linearity failures encountered with process inks.
- an artist can create images on a color monitor which present colors cleaner than the reproduction capability of process inks. This creates a problem in that after the artist has created an original image on the monitor, the printed image using process inks may appear substantially different.
- an artist can create a "pure” cyan without any yellow or magenta. The same is true with reds and greens and the corresponding process colors of cyan, magenta and yellow.
- Printing inks are not pure and when, for example, cyan ink is printed on paper, nearly 40% magenta color is also present. Thus, there is no way to print a "pure” cyan ink without printing some magenta and yellow as well. Because the printer cannot reproduce the "pure" clean colors that can be created on a color monitor, the colors of the printed image may appear substantially different than the originally generated color monitor image. It is an expensive and a time consuming process for the artist to wait until the original image is printed before knowing what the final product will look like. Accordingly, the prior art points out the need for a system which can present the artist with a rendition of a printed image without the time and expense of preparing printing plates and printing a three or four colored image.
- the preferred system uses a microcomputer to receive input signals representative of the primary color readings for each image unit, pixel, or line of the image to be reproduced.
- the microcomputer calculates final agent color densities as a function of color densities corresponding to the desired primary color readings, . corre ⁇ sponding color contribution factors, and corresponding correction factors.
- the microcomputer then produces output signals representative of the final agent color densities for each agent color such as cyan, magenta and yellow.
- the output signals are preferably used in a reproduction unit capable of producing variable dot sizes of the coloring agent to produce the color densities of the coloring agents as represented by the output signals, or used with an output device exposing color print paper, transparencies or the like.
- the system hereof also accounts for variations in the correction factors which occur at different density combinations of the coloring agents.
- the system also provides for gray component removal for four color reproduction using cyan, magenta, yellow, and black in which the black replaces portions of the other colors to achieve the same color density results.
- the invention hereof also provides for black enhancement used to emphasize shadows.
- red, green and blue (RGB) signals representative of an original image created on a color monitor or scanned in by a scanner are used as the primary color readings for processing into final agent color density signals for the agent colors.
- RGB signals are then processed to produce RGB signals for displaying a simulation image on the color monitor which accurately simulates what the original image will look like when printed.
- Figure 1 is a schematic representation of the preferred components of the present invention
- Fig.2 is a computer program flowchart illustrating the SI ⁇ T-UP module of the computer program for operating the microcomputer of Fig. 1 ;
- Fig. 3A is a computer program flowchart illustrating the first part of COLOR CORRECTION module of the computer program
- Fig. 3B is a computer program flowchart of the CYAN CORRECTION submodule of the computer program;
- Fig.3C is a computer program flowchart of the MAGENTA CORREC ⁇
- Fig. 3D is a computer program flowchart illustrating the YELLOW CORRECTION submodule of the computer program
- Fig. 4 is a computer program flowchart illustrating the BLACK ENHANCEMENT module of the computer program
- Fig. 5 is a computer program flowchart of the GRAY COMPONENT REMOVAL module of the computer program
- Fig. 6A is a portion of a computer program flowchart of the IMAGE SIMULATION module of a second embodiment of the invention.
- Fig. 6B is an additional portion of the computer program flowchart of the IMAGE SIMULATION module
- Fig. 6C is an additional portion of the computer program flowchart of the IMAGE SIMULATION module
- Fig. 6D is an additional portion of the computer program flowchart of the IMAGE SIMULATION module
- Fig. 6E is the final portion of the computer program flowchart of the IMAGE SIMULATION module
- Fig. 7A is a portion of a computer program flowchart of a variation of the IMAGE SIMULATION module of Figs. 6A-E;
- Fig. 7B is an additional portion of the computer program flowchart of the IMAGE SIMULATION module variation;
- Fig.7C is an additional portion of the computer program flowchart of the IMAGE SIMULATION module variation.
- Fig. 7D is the final portion of the computer program flowchart of the IMAGE SIMULATION module variation.
- Fig. 1 illustrates preferred apparatus 10 including microcomputer 12 having associated data storage unit 14, scanner 16, auxiliary input device 18, and reproduction device 20.
- Preferred microcomputer 12 is a WYSE 386 computer, model WY3216-01 having an INTEL 80387 math coprocessor, INTEL ABOVE BOARD 286 with 2048 K expanding memory, a general purpose interface board for interfacing with the scanner, and an AT&T TARGA 24 board.
- Microcomputer 12 also includes a conventional color monitor (not shown) such as Mitsubishi type 1371 and a conventional data entry keyboard (not shown).
- Data storage unit 14 is conventionally interconnected with microcom ⁇ puter 12 and preferably includes a 40 megabyte hard drive and two 1.2 megabyte floppy disk drives.
- Preferred scanner 16 is a HOWTEK SCANMASTER manufactured by Sharp Electronics (type JX 450). Scanner 16 is operable to scan a colored original image in order to produce corresponding red, green, and blue color density readings for each pixel which are presented as input signals representative of these RGB readings for reception and use by microcom ⁇ puter 12.
- Auxiliary input device 18 is an auxiliary source such as a conventional MACINTOSH microcomputer of input signals representative of desired red, green and blue readings of an image to be produced by reproduction device 20.
- Scanner 16 and device 18 are both operable to provide input signals to microcomputer 12 representative of the desired RGB readings of the image to be reproduced. Scanner 18 develops these desired RGB readings by scanning a colored original image.
- Device 18 in contrast, provides output signals representative of the RGB readings as produced on the color monitor associated with the preferred MACINTOSH microcomput- er, for example.
- output signals representative of the RGB readings as produced on the color monitor associated with the preferred MACINTOSH microcomput- er, for example.
- other devices may be used to supply input signals to microcomputer 12 such that the signals represent desired RGB readings or color density readings of the reproduced image.
- Reproduction device 20 is preferably a three or four color reproduc- tion device operable to produce varying dot sizes of each coloring agent in response to output signals from microcomputer 12.
- Preferred reproduction device 20 is film recorder such as a QZR-Z MATRIX brand capable of continuated gray tone film negative production.
- Other suitable reproduction devices include thermal printers, ink jet printers, continuous tone printers and xerographic printers including laser printers operable for color printing and preferably for producing variable dot sizes as a function of desired color density.
- Figs. 2-5 are computer program flowcharts illustrating the preferred method of operating apparatus 10 and, in particular, microcomputer 12 for producing output signals representative of the final agent color densities of the coloring agents used in reproduction device 20.
- the computer program is written using Borland International Turbo Basic Version 1.1, 1987.
- other software used in operating microcomputer 12 includes AT&T - Flamingo Graphics Soft Vision R10 Version 1.2, AT&T - Flamingo Graphics R10-PCS Version 1.33, and True Vision Image Process ⁇ ing Image Software from Island Graphics.
- SET-UP module 200 produces respective lookup tables for 256 increments of RGB readings corresponding to respective CMY densities.
- CMY densities are typically read from color charts of coloring agents using a conventional densitometer with the CMY densities in 12 to
- SET-UP module 200 enters contribution factors as percent contribution of agent colors for each step of the CMY densities and also enters corresponding contribution correction factors explained further hereinbelow.
- SET-UP module 200 enters at step 202 which allocates an array for 256 increments of RGB readings from zero to 255.
- Step 202 also allocates an array for the corresponding CMY density steps S and corresponding contribution factors at each agent color density step.
- step 204 enters the CMY densities D for each step S from the color charts as CD(S), MD(S), and YD(S).
- step 206 in which, for each CMY density steps, the corresponding contribution factor to the other agent colors is entered. For example, for each cyan density step, the percent magenta in cyan (%MC) and the percent yellow in cyan (%YC) for that step are entered in association with that step.
- %MC percent magenta in cyan
- %YC percent yellow in cyan
- the percent cyan in magenta (%CM) and the percent yellow in magenta (%YM) at that density level is entered and for each yellow density step, the percent cyan in the yellow (%CY) and the percent yellow in the magenta (%YM) are entered.
- step 208 the corresponding RGB readings are entered for each CMY density step S. This produces a red reading for each of the cyan step, a green reading for each magenta step, and a blue reading for each yellow step. Additionally, the RGB readings for the reproduction carrier such as white paper are also entered which represent the respective upper limits of reproducible RGB readings.
- the RGB readings for the carrier are necessary to define the upper RGB limits of the reproduced image. That is to say, the reproduced image cannot produce RGB readings greater than the RGB readings of the carrier without any coloring agent thereon.
- step 210 the program retrieves the respective RGB readings for each CMY step as R(S), G(S), and B(S).
- R(3) the corresponding red reading
- step 210 also retrieves corresponding cyan, magenta and yellow densities for step S designated as CD(S), MD(S), and YD(S).
- step 212 the variable J is initially set at 255.
- the remaining portion of SET-UP module 200 extrapolates respective RGB readings to fill in the gaps between corresponding CMY density steps. That is to say, the RGB array is set for a maximum of 256 increments but the initial data entered for corresponding CMY densities and corresponding RGB readings typically spans only 15 steps from the color charts. Accordingly, it is necessary to extrapolate the RGB readings between the CMY density steps. This extrapolation process in the remaining portion of SI ⁇ T-UP module 200 is done as a linear function between steps which, in the preferred embodiment, is sufficient to provide accurate results.
- step 216 which asks whether variable J is greater than the red reading at cyan step one minus one.
- J at 255 is greater than 225 - 1 and the answer in step 216 is yes.
- step 218 to conduct a series of calculations in order to extrapolate the red readings between step S and step S - 1.
- step 218 extrapolates between density step 0 and density step 1.
- the program calculates an incrementing factor F by dividing the red increment by the red span.
- the program then calculates the cyan span CP between step S and the previous step according to the formula shown and then calculates an extrapolated cyan amount as factor F times the cyan span.
- the program then calculates the cyan density at the J location in the RGB array as the density of the next lower step plus the cyan increment CE.
- the program asks whether C(J) is less than zero which occurs when J is greater than the R reading when the cyan density is zero at density step zero. If yes, the program moves to step 220 to set C(J) at zero or a very low number, .0001 in the preferred program. After 220 or if the answer in step 219 is no, the program moves to step 221 in which the cyan density C(J) is then stored at location R(J) in the red array.
- the red reading at step 1 which is the first density step of cyan might equal 225 and R(O) might be 250 which is the red reading of the carrier.
- Rl 250 - 235 which equals 15, and incrementing factor F is 15 - /- 25 which equals .60.
- the cyan density at step 1 is .11 , for example, then the cyan spa CP between step 0 and step 1 is also .11.
- the cyan extrapolated value CE is .60 X .11 or .066.
- the cyan density at location J equals the cyan density at step 0 which is zero plus .066 or rounded to .07.
- the cyan density value is then stored at location R(225) in the red array.
- input signals representing a red reading of 225 correspond to a cyan color density of .07.
- Input red readings greater than 250 would have a corresponding cyan density of zero (or .0001 as preferred from step 220).
- step 216 If the answer in step 216 is no indicating that variable J has been decremented below the red reading value at cyan density step S, the program moves to step 222 which increments variable S and then moves to step 223 which asks whether variable S is greater than the maximum value of S. In the example above, the maximum value of S is 15 corre ⁇ sponding to the 15 steps on the cyan density color chart. If the answer in step 223 is no, the program loops back to step 216.
- step 223 If the answer in step 223 is yes or after step 221 , the program moves to step 224 which again sets variable S equal to 1. Steps 224 through 231 perform the same calculations for the green and magenta as for red and cyan in order to extrapolate the magenta readings for the green array in the same manner as steps 214 - 223 for red and cyan.
- steps 232-241 perform the same steps and calculations for blue and yellow. If the answer in step 241 is yes or after step 239, the program moves to step 242 to decrement variable J and then moves to step 244 which asks whether variable J equals zero. If no, the program loops back to step 214 to complete steps 214-241 for the new value of J. In this way, the program fills in corresponding CMY extrapolated densities in respective RGB arrays for each value of J. When complete, each RGB array presents a complete set of corresponding CMY densities - up to 256 CMY density increments in the preferred embodiment. In this way, rather than working with only 15 density increments for each agent color, up to 256 increments are available which allow calculation of final density readings within about 1% of the original. When the answer in step 244 is yes, the operation of SET-UP module
- SET-UP module 200 is executed once for each set or type of coloring agents being used in reproduction unit 20. Thus, once the corresponding CMY densities have been calculated for each RGB increment in the corresponding arrays, SET-UP module 200 need not be again executed.
- the RGB arrays can be set up by the end user by physically taking ' a set of RGB readings and corresponding CMY densities for each of the corresponding CMY densities from color charts of the coloring agents with which the reproduced image is to be printed which typically involves 15 measurements for each coloring agent for a total 45 measurements.
- the array and factors can be provided on a floppy disk or read-only-memory (ROM) chip from the manufacturer of the coloring agent.
- Figs. 3A, B, C, and D illustrate the computer program flowchart for receiving input signals representative of RGB data and for producing output signals representative of color corrected CMY densities of the reproduced image in order to produce corresponding RGB readings.
- Figs. 3A-D illustrate COLOR CORRECTION module 300 which includes a CYAN CORRECTION submodule (Fig. 3B), a MAGENTA CORRECTION submodule (Fig.3C), and YELLOW CORRECTION submod ⁇ ule (Fig. 3D).
- COLOR CORRECTION module 300 performs a set of initial calculations based on the input signals represen ⁇ tative of the RGB readings of the colored original, the contribution factors to each coloring agent from the others, and corresponding correction factors.
- the correction factors to be entered in step 206 are specific to the particular coloring agents being used.
- J.A.C. Yule in a book entitled “Principles of Color Reproduction” published by John Wiley & Sons, New York, which is hereby incorporated by reference, suggested that correction factors could be calculated using a series of simultaneous equations. These equations are identified as equations 10.24 on page 278 of the Yule book. Solving of these simultaneous equations is not usually practical because of the number of independent variables that must be factored into the attempted solution.
- the total color density of an agent color is expressed in terms of the contribution from the coloring agent of that color plus the contribution to that agent color from the other agent colors.
- the first equation recites that the total cyan color density C equals the sum of: the cyan contribution from the cyan coloring agent C c , a correction factor "a" times the magenta coloring agent contribution to cyan M c , and a correction factor "b" times the yellow contribution to cyan Y c .
- magenta total M ⁇ is expressed in terms of the magenta agent contribution to magenta M M plus correction factors "d” and "e” times the respective contributions to magenta from the cyan an yellow coloring agents.
- the total yellow density Y ⁇ is expressed as a function of the yellow coloring agent contribution of the yellow Y ⁇ plus correction factors T and "g" respectively times the cyan and magenta coloring agent contributions to yellow.
- Yule and others made a concerted effort to quantify the linearity failures which occur when coloring agents are combined in practice by resorting to equations such as those referenced above.
- usefulness of these equations requires knowledge of a significant number of independent variable correction factors including at least a, b, d, e, f, and g, all of which are different for different coloring agents. These correction factors necessarily change as the density of combined coloring agents vary. This has heretofore prevented practical application of Yule-type equations in solving color correction problems.
- the independent variables, a to g inclusive are first empirically determined by taking density readings at strategic locations on color charts of the coloring agents to ultimately be used, then it is possible to solve the simultaneous equations.
- correction factors "a” can be determined by reading a previously prepared color chart patch having a known density of cyan and magenta and no yellow and solving the first equation above for "a” using these measured values.
- a color patch is then read using a densitometer of known densities of cyan and yellow with no magenta. These values may be used in the first equation to solve for "b".
- color patches may then be read for a cyan density having known densities of all three colors - cyan, magenta, and yellow. If the equation does not balance, factors "a” and “b” are altered until the equation does balance. This process is repeated for the other two equations until values have been determined for factors d, e, f, and g. In a typical set of match print inks, these correction factors have been found to be .6, .6, .4, .4, .5, and .6 respectively for a-g inclusive and yield acceptable results.
- C y , M ⁇ , and Y ⁇ correspond to the respective initial color densities CJ, MJ, and YJ from the RGB arrays and C c , M M , and Y ⁇ correspond to the final agent color densities CF, MF, and YF as will be explained further hereinbelow.
- the program enters COLOR CORRECTION module 300 at step 302 which defines a set of files from each pixel P or image unit of the image to be reproduced.
- the output signals from microcomputer 12 represents agent color densities for each image unit, pixel, or line of the reproduced image.
- halftone resolution is expressed in terms of so-called "lines per inch”.
- Image resolution can also be expressed in terms of pixels per inch with the term "image unit” as used herein being a generic term for pixels, lines, or the like.
- the particular scanner 22 being used may be capable of resolving an original image with a resolution greater than that of the particular reproduc ⁇ tion unit 20 being used, or greater than that needed or desired.
- Step 302 set up files for input RGB data, final CMY density data, and a file K for black data corresponding to either GRAY COMPONENT REMOVAL or BLACK ENHANCEMENT as will be explained in connection with Figs. 4 and 5.
- program step 304 corresponds to receive the input signals representative of the RGB data for the reproduced image.
- program step 304 corresponds to the physical operation of placing the colored original drawing in scanner 16 for scanning thereby and for generating and transmitting the input signals to microcomputer 12.
- program step 304 corresponds to the reception of input signals representative of the RGB data from some auxiliary source such as a Macintosh computer or data already stored in memory, or some other input signal source such as a xerographic copier capable of supplying input signals representative of primary color readings or equivalent color densities.
- Step 306 sets variable P equal to 1 and retrieves the RGB data corresponding to pixel P.
- the program then moves to step 308 which retrieves the respective
- CMY initial color densities corresponding to the input RGB data from the corresponding RGB arrays are represented as CJ, MJ, and CJ respectively.
- step 310 which asks whether any of the corresponding CMY densities CJ, MJ, or YJ ar equal to zero. If such is the case, the program moves to step 312 which sets the density for that color at an extremely low number corresponding to zero. That is to say, in the particular programming language used in the equation used further hereinbelow, the variable CJ, MJ, or YJ are not set exactly equal to zero but set at a very low number to avoid computational problems.
- step 314 the program moves to step 314 to retrieve the contribution factors corresponding to the color densities retrieved in step 308. More particularly, the contribution factors are expressed as percent magenta in cyan %MC, and percent yellow in cyan %YC which preferably correspond to the cyan density step S nearest the cyan density CJ retrieved in step 308. Similarly, the percent cyan in magenta %CM and the percent yellow in magenta %YM for the magenta density MJ are retrieved as the corresponding contribution factor of the magenta density step having a density value nearest retrieved density MJ. Similarly, the percent cyan in yellow %CY, and percent magenta in yellow %MY associated with the yellow density step having a density value nearest the density YJ are retrieved.
- these contribution factors as measured from a color chart of the coloring agents also vary non-linearly.
- the percent magenta in cyan may be lower at a low density cyan density step and higher at a high density cyan density step.
- Program step 314 retrieves the contribution factors associated with the density step nearest the density retrieved in step 308. Such a retrieval treats the variations in contribution factors between density steps as disjointed functions. In the preferred embodiment, this approximation is close enough to allow precise color correction.
- the contribution factors can be extrapolated in a manner similar to the color density extrapolation performed in SET-UP module 200 if a closer approxi ⁇ mation is desired.
- the least squares method of calculating the contribution factors can also be performed such that a set of 256 contribution factors corresponding to each of the 256 densities is produced.
- step 316 calculates two contribu ⁇ tion amounts for each agent color as a function of the corresponding contribution factor, correction factor, and initial color density.
- the contribution correction factors a, b, d, e, f and g are specific to the coloring agents being used in reproduction unit 20.
- the contribution factors retrieved in steps 314 are also specific to the coloring agents being used as they are measured directly from the color charts of the coloring agents.
- the contribution amounts calculated in step 316 are expressed as cyan contribution to magenta CCM, cyan contribution to yellow CCY, magenta contribution to cyan MCC, magenta contribution to yellow MCY, yellow contribution to cyan YCC, and yellow contribution to magenta YCM.
- step 316 the program is ready to move on to the cyan, magenta, and yellow correction submodules in order to calculate final densities for each coloring agent.
- the program enters the CYAN CORRECTION submodule (Fig. 3B) at step 318.
- This step is included to determine whether the contribution to cyan from the magenta coloring agent or the yellow coloring agent is greater than the initial cyan density CJ. If such is the case, then no cyan coloring agent need be included in the final combination. Accordingly, the final cyan density CF for the cyan coloring agent is set a zero or in the preferred case at an extremely low value in step 320.
- step 320 which asks whether the cyan contribution from the yellow coloring agent is greater than a predetermined factor (in this case 0.6) times the cyan contribution to the cyan without the magenta contribution to cyan.
- a predetermined factor in this case 0.6
- the actual yellow contribution to cyan (YCC) must be recalculated, recalling that the yellow contribution to cyan (YCC) was calculated in step 316 as a function of correction factor .
- this correction factor is generally acceptable except for coloring agent blends at high densities such that the yellow agent contrib ⁇ utes substantially to the percent of cyan.
- step 320 determines whether the yellow contribution to cyan (YCC) is a substantial amount to the cyan as indicated by the formula in step 320.
- step 322 calculates an interim variable "Z" according to the formula shown.
- Variable "Z" can be thought of as a ration between the yellow contribution to cyan and a percent of the cyan contribution to cyan without the effect of the magenta contribution to cyan.
- step 324 which asks whether variable "Z" is greater than 2. If yes, the program moves to step 326 to set "Z" equal to 2 with this being a preferred upper limit for "Z".
- step 328 calculates a new value for the yellow contribution to cyan YCC according to the formula shown in step 328.
- An inspection of this formula indicates that the term enclosed in brackets is a new calculation for correction factor T in the corresponding formula of step 316.
- the multiplication factor 0.6 used in steps 320 and 322 and the addition factor .7 used in step 328 are specific to the coloring agents being used. In other words, by using sample patches on a set of color charts of the coloring agents, and by using formulas in steps 320, 322, and 328, one can determine the appropriate factors for use in steps 320, 322, and 328. The particular factors .6 and .7 are preferred for match print inks.
- step 330 begins a series of steps similar to steps 320-328 in order to recalculate correction factor "d" from step 316 if necessary.
- magenta contribution to cyan is greater than .8 times the cyan contribution to cyan without the effects of the yellow contribution to cyan, then it is necessary to recalculate correction factor "d".
- magenta in the use of match print inks, it has been found that the correction factor "d" needs to be recalculated if the magenta contribution to cyan is greater than 80% of the cyan contribution to cyan without the effects of yellow contribu- tion to cyan.
- step 330 the program moves to step 332 to again calculate interim factor "Z" accordingly to the formula shown and similar to step 322.
- Steps 334, 336, and 338 are similar to steps 324-328 as explained above except that step 328 recalculates the contribution of the magenta contribution to cyan (MCC) by recalculating correction factor "d" according to the term as shown in brackets in step 338.
- step 340 calculates the final cyan color density CF according to the formula as shown.
- this formula states that the final color density of the cyan coloring agent is equal to the initial cyan color density CJ corresponding to the desired red reading less the magenta contribution to cyan (MCC) and less the yellow contribution to cyan (YCC).
- MCC magenta contribution to cyan
- YCC yellow contribution to cyan
- This formula incorporates magenta and yellow contributions to cyan as originally calculated in step 316 or as recalculated in steps 328 or 338 as explained above. Also as explained above, if the magenta or yellow contribute sufficiently to the cyan such that no cyan coloring agent is needed, the final cyan density is set at a very low number in step 320 and step 340 is bypassed.
- step 340 the program moves to step 342 (Fig. 3C) which initiates the calculations for the MAGENTA CORRECTION submodule.
- This submodule includes steps 342-366 performs the same calculations for magenta as were performed for cyan in steps 318-340 resulting in a final density for the magenta coloring agent as calculated in step 366.
- Step 354 and 364 respectively recalculate the cyan contribution to magenta and the yellow contribution to magenta by recalculating contribution correction factor
- step 366 the program moves to step 368 (Fig. 3D) to initiate the calculations for the yellow correction in steps 368 through 392 in the same manner as for magenta and cyan.
- steps 372, 374, 380, and 384 that the preferred form of the formulas is slightly different than the corre ⁇ sponding steps for the cyan and magenta calculations.
- the difference in the form of equations is primarily due to the fact that typical available yellow coloring agents such as process inks are not as "dirty" as magenta and cyan and thereby function more nearly like an ideal blue filter.
- process inks or toners or other types of coloring agents such may not be the case and the more general form of the formulas as used for calculating cyan and magenta may be necessary.
- step 392 the program has completed the calculations for the final color density for each coloring agent and has stored these values for pixel P.
- the program moves to step 393 which asks whether pixel P is to include enhancement black as will be explained in connection with Fig. 4. If yes, the program goes to BLACK ENHANCEMENT module 400 and executes that submodule and reenters the program at entry point "D". If the answer in step 393 is no, the program moves to step 394 which asks whether GRAY COMPONENT REMOVAL module 500 (Fig. 5) is to be executed as will be explained further hereinbelow. If yes, the program executes module 500 and then returns at entry point "D".
- both enhancement black and undercolor removal are typically not both used. Additionally, the particular reproduction unit 20 being used may not have the capability of a four color process incorporating black in which case the answers in steps 393 and 394 are both no.
- step 394 If the answer in step 394 is no or after execution of modules 400 or 500, the program moves to step 395 which increments pixel variable P. The program then moves to step 396 which asks whether P exceeds the maximum number of pixels in the reproduced image. If no, the program loops back to step 308 (Fig. 3A) to reexecute steps 308-396 for the next pixel.
- step 396 the program moves to step 397 to send output signals to reproduction unit 20 representative of the CMY densities for each coloring agent for each pixel.
- the output signals can be sent instead for conversion to data for storage in data storage unit 14. That is to say, the CMY data can be downloaded onto a floppy disk, for example, and stored thereon.
- the output signals represent the CMY color densities which can be corrected to represent percent dot sizes as will be explained further hereinbelow.
- Fig. 4 illustrates BLACK ENHANCEMENT module 400.
- Module 400 enters at step 402 which asks whether the final densities of the cyan, magenta, and yellow are all greater than .6. If no, indicating that this particular pixel is not densely colored, black enhancement is not appropriate and the program moves to step 404 to set the black enhance ⁇ ment level KE essentially at zero or as in the preferred case at a very low level as indicated.
- step 402 The selection of the factor .6 in step 402 is a matter of design choice as to what level the operator wishes black enhancement to start. if the answer in step 402 is yes, the program moves to step 406 which asks whether the ratio between the final yellow density and the final magenta density is between .6 and 1.4. If the answer is no, indicating that the yellow density is low as compared to the magenta density, the program moves to step 404. If the answer in step 406 is yes, the program moves to step 408 which asks whether the ratio between the final magenta density and the final cyan density is between .7 and 1.5. As those skilled in the art will appreciate, the selection of the ranges for steps 406 and 408 is a matter of design choice. If the answer in step 408 is no, the program moves to step 404.
- step 408 If the answer in step 408 is yes, the program moves to step 410 to calculate the amount of enhancement black KE according to the formula shown. This formula sets upper and lower limits on the amount of enhancement black. These limits can be modified as a matter of design choice. After steps 410 or 404, the program loops back to step 395 (Fig. 3D).
- Fig. 5 illustrates GRAY COMPONENT REMOVAL module 500.
- typical black process coloring agents can be thought of as being composed of cyan, magenta and yellow.
- black can be substituted for respective portions of the cyan, magenta, and yellow coloring agents which may be desirable as a cost reduction technique since black coloring agents typically cost less.
- These replaced portions of cyan, magenta, and yellow together represent a gray component which is removed and replaced by the black.
- the program enters module 500 at step 502 which sets the variable "U" equal to the smallest of the CMY final densities. Since black can substitute for CMY, the smallest of the three represents the maximum level of black to used to replace the underlying cyan, magenta, and yellow.
- the program then moves to step 504 which asks whether U is less than .03. If yes, indicating that the level of black is too small to be effective, the program moves to step 504 to set U equal to zero or an extremely low number as illustrated. If the answer in step 504 is no, the program moves to step 508 to set the variables undercolor cyan (UC), undercolor yellow (UY), and undercolor magenta (UM) equal to respective factors CK, MK and
- the black is balanced, that is, includes substantially equal CMY densities. If not, as with MATCH PRINT black, the imbalance needs to be taken into account when calculating the gray component portions of the final densities. For example, if the black coloring agent presents relative densities of 92% cyan, 100% magenta, and 96% yellow, then it is not effective for replacing all of the gray component cyan and yellow. Accordingly, the relative portions of CMY are defined as respective factors CK (.92), MK (1.0), and YK (.96). These are multiplied by "U” for the undercolor cyan (UC), magenta (UM), and yellow (UY). The linearity failures as discussed above also come into play with black.
- the program takes the linearity failures into account.
- step 508 the program moves to step 510 to retrieve the contribution factors of the respective CMY steps having densities nearest the densities of UC, UM, and UY.
- step 512 the contribution amounts as indicated for the gray component densities of cyan, magenta, and yellow. This step is necessary because the densities do not vary linearly and so a mere substitution of black for corresponding densities of cyan, magenta, and yellow is not accurate.
- the calculations in step 512 are similar to those in steps 316 (Fig. 3A).
- the correction factors a, b, d, e, f, and g are preferably the same values as those in step 316 and are specific to the coloring agents being used.
- step 514 to calculate the final densities present in the black according to the formula as shown which are analogous to the formulas in steps 340 (Fig. 3B), 366 (Fig. 3C), and 392 (Fig. 3D).
- step 516 calculates the densities of the CMY coloring agents after gray component removal according to the formulas as shown. That is to say, step 516 calculates the new final densities for cyan, magenta, and yellow respected by CFU, MFU, and YFU respectively after the gray component portion has been removed. Step 516 also sets the black density KU equal to variable "U".
- step 516 or 506 the program loops back to steps 395 (Fig. 3D).
- the final color densities of the agent colors of cyan, magenta, an yellow as represented by the output signal may be converted to a form suitable for use by the particular reproduction unit 20 such as percentage dot sizes in increments of 1% from zero to 100.
- the lowest coverage density of a coloring agent might be expressed as a 0% dot and the maximum single impression density as a 100% dot.
- the term color density refers to density as typically measured by a densitometer to express cyan color density, for example, and the term "coverage density" refers to the coverage of a given image unit per unit area by the coloring agent.
- coverage density can be expressed in other units and can be expressed in fewer or greater increments. It is preferred that reproduction unit 20 produce an image with a resolution of at least 150 image units per inch such as 150 halftone lines per inch.
- the output signals are useful in the context of a film recorder.
- the RGB data corresponding to the final CMY color densities are represented by the output signals as retrieved from the RGB arrays.
- a continuous tone negative can be produced using the output signals which represent the cyan separation.
- continuous tone negatives can be produced from the magenta and yellow output signals representing the magenta and yellow separations respective ⁇ ly.
- the negatives are then enlarged or reduced on an enlarger to produce halftone line screens to produce respective halftone positives from which respective cyan, magenta, and yellow plates are produced for three color printing (and a black plate if four colors are used).
- a film recorder can be set up to produce variable dot sizes so that the line screen is generated directly from the film recorder.
- Film recorder technology also lends itself to laser use for a finer, sharper dot.
- the components of apparatus 10 can be incorporated into a single unit as part of a color xerographic copier.
- the data specific to the toners used in the copier would be stored in a replaceable ROM such that if a different type of toner is used, a replacement plug-in ROM module containing the program can be conveniently substituted to provide the new data for use in the color correction calculations.
- the data specific to the coloring agent includes the RGB arrays with the corresponding CMY densities, the contribution factors, the correction factors, and the multiplication and addition factors discussed in connection with Figs. 3B-D.
- this data includes data for a black toner if a four color process is used as discussed in connection with Figs. 4 and 5.
- the present invention contemplates many variations in the preferred embodiments described herein.
- the preferred computer program can be implemented in a variety of different types of computers other than the preferred microcomputer 12 such that any processing unit adequate to conduct the steps of the program would be acceptable.
- all of the logic functions illustrated in the program steps of Figs.2-5 could be implemented by dedicated hardware such as a custom-made semiconductor chip.
- Fig. 6 is a computer program flowchart illustrating the IMAGE
- SIMULATION module 600 which allows display of a simulation image on a color monitor (CRT) which realistically simulates the color appearance of an image created on the monitor when printed using coloring agents such as process inks.
- CRT color monitor
- IMAGE SIMULATION module 600 is used in conjunction with the modules described above in connection with Figs. 2-5.
- RGB signals are processed by those modules to produce CMY final ink density signals which are color corrected.
- the image represented by the input RGB signals is inherently confined into the color space allowable by the process ink data.
- the input RGB signals may represent color densities beyond the capability of the process inks that have been used.
- the modules of Figs. 2-3D take this into account and color correct the RGB signals into the allowable color space of the inks in producing the CMY final density signals. This allows printing of an image which presents color densities as close to the original as possible.
- the input RGB signals represent an original image displayable on a color monitor as created by an artist, for example.
- the modules of Figs. 2-3D produce the final density signals for the CMY inks to be used in printing the image in a manner to color correct and reproduce the image as faithfully as possible with these inks. As discussed above in connection with the prior art, the artist does not know what the color appearance of the printed image will be and may well be surprised.
- IMAGE SIMULATION module 600 enters at step 602 (Fig. 6A) which retrieves the final agent color density information CF, MF and YF for the first pixel of the image. Steps 604, 608 and 612 then asks whether the density data CF, MF and YF respectively are less than zero. If the answer of any of these steps is yes, the respective variable is set at a very low number close to zero in steps 606, 610 and 614.
- Step 616 then retrieves the respective contribution factors as a percentage for the contribution of each color to each of the other colors.
- Step 618 calculates the contribution amounts from each agent color to each of the other agent colors according to the equations as shown.
- the program steps of Fig.6B are concerned with cyan correction and enters at step 620 which asks whether CF is less than or equal to the yellow contribution to cyan times the factor 1.5. This step determines if the final cyan density is relatively small compared to the yellow contribution to cyan. If such is the case, then this density level of cyan is achievable with the process inks and cyan correction is not needed. Thus, if the answer in step
- step 620 If the answer in step 620 is no, the program moves to step 622 which asks whether the final cyan is less than or equal to the magenta contribution to cyan times the factor 1.5. If yes, then this density level of cyan is achievable with the process inks and again, no cyan correction is needed and the program moves to Fig. 6C.
- step 624 to initially test whether correction of yellow contribution to cyan (YCC) is needed. This is accomplished by asking whether the conditions of step 624 are satisfied. That is to say, step 624 seeks to determine whether cyan ink final density is much larger than the yellow contribution to cyan according to the conditions of step 624.
- the factor 33 as shown is empirically derived as is generally valid for SWOP inks.
- step 624 If the answer in step 624 is yes, then the interim variable XYCC is defined in step 626 as the ratio shown. This ratio cannot be less than one because step 624 was satisfied.
- Step 628 asks whether the variable XYCC is greater than two indicating that the cyan from the cyan ink is very much larger than the contribution from the yellow ink at the density YF. If the answer in step 628 is yes, then variable XYCC is set at a maximum allowable value of 2.
- step 632 recalculates the yellow contribution to cyan (YCC) according to the formula shown. It should be noted that if XYCC equals 2, then YCC is recalculated as two- thirds of its initial value. This means that if the yellow contribution to cyan is very small compared to final cyan density (CF), then YCC is only two- thirds effective due to linearity failures. If, however, XYCC is about equal to 1 , then the new value of YCC is virtually identical to the old value indicating that at a higher density level, the yellow contribution to cyan is almost entirely effective and very little changed by linearity failures.
- step 634 again asks whether the same conditions of step 620 are now satisfied. Step 634 is needed to retest this condition if YCC was recalculated in step 632. If the step in step 634 is yes, further cyan correction is unneeded and the program moves to magenta correction in Fig. 6C.
- step 634 If the answer in step 634 in no, then additional correction may be required for the magenta contribution to cyan (MCC). That is to say, the correction to YCC in step 632 is insufficient and further correction or recalculation of MCC may be required. This is tested in step 636 as shown.
- step 638 defines the interim variable XMCC according to the equation shown.
- Step 640 then asks whether XMCC is greater than 2 and if yes, step 642 sets XMCC equal to 2. If the answer in step 640 is no or after step 642, step 644 recalculates MCC as shown similar to step 632 for YCC. After step 644 or if the answer in step 636 is no indicating that MCC recalculation is not needed the program moves to magenta correction as illustrated in Fig. 6C.
- the magenta correction portion of the program determines whether recalculation is required of the cyan and yellow contributions to magenta in a manner structurally the same as the cyan correction portion of Fig. 6B.
- Steps 646 and 648 ask whether the magenta final density (MF) is less than or equal to the yellow or cyan contributions to magenta times the factor 1.5. If the answer to either question is yes, the program moves to yellow correction in Fig. 6D. If the answer to both steps 646 and 648 is no, step 650 determines whether recalculation of the cyan contribution to magenta needs to be recalculated, that is, whether the cyan contribution of magenta is sufficiently high as set forth in the conditions of step 650. This step is analogous to step 624 for cyan correction but is in a somewhat different form because of the typical characteristics of magenta inks. As with step 624, the factor .65 is empirically determined for the particular inks to be used. These factors are different for each type of coloring agent and may be different with different batches of the same type of coloring agent.
- step 652 defines the interim variable XCCM as shown and then step 654 asks whether this variable is greater than 2. If yes, step 656 sets XCCM equal to 2.
- step 658 recalculates the cyan contribution to magenta according to the formula shown.
- step 660 again tests magenta final density (MF) as in step 648. If yes, correction of yellow contribution magenta is unnecessary and the program moves to yellow correction. If the answer in step in 660 is no, step 662 tests the yellow contribution to magenta (YCM) according to the conditions shown to determine whether YCM is sufficiently large to require recalculation. If yes, step 664 defines interim variable XYCM as shown and then step 666 asks whether XYCM is greater than 2. If yes, step 668 sets this variable equal to
- step 670 recalculates YCM as illustrated.
- step 662 If the answer in step 662 is no, or after step 670 the program moves to yellow correction illustrated in Fig. 6D.
- the yellow correction portion of the program is analogous to the cyan and magenta correction portions.
- Steps 672 and 674 test yellow final density (YF) against cyan and magenta contributions to yellow respectively. If the yellow final density is sufficiently low, the answer to both steps 672 and 674 is yes indicating that recalcula ⁇ tion of MCY and CCY are unnecessary.
- step 676 determines whether recalculation of magenta contribution to yellow is necessary according to the criteria illustrated. If yes, step 678 defines the interim variable XMCY and step 680 then asks whether this variable is greater than 2. If yes, step 682 sets XMCY equal to 2. If the answer in step 654 is no, or after step 656, step 684 recalculates magenta contribution to yellow (MCY) as illustrated.
- step 686 again tests yellow final density in view of the recalculation of (MCY).
- a no answer in step 686 indicates that recalculation of cyan contribution yellow may still be necessary and this is determined in step 688 according to the criteria illustrated. If the cyan contribution to yellow is sufficiently high, the answer in step 688 is yes and step 690 defines the interim variable XCCY and the program then asks in step 691 whether this variable is greater than 2. If yes, step 692 sets XCCY equal to 2. If the answer in step 691 is no, or after step 692, step 693 recalculates cyan contribution to yellow (CCY).
- step 693 yellow correction along with cyan and magenta correction are complete and the program moves to the final portion illustrated in Fig. 6E.
- This final portion begins at step 694 which calculates the display density variables CD, MD, and YD.
- CD display density variables
- MD magenta ink
- YD the display density variables
- step 695 After determination of the display densities for cyan, magenta and yellow, step 695 performs a straight forward conversion to red, green and blue values (RGB) respectively by multiplying CD, MD, and YD each by 100 and then subtracting 255 from each, the results being respective RGB integers for display on a color monitor.
- Step 698 then asks whether all of the pixels in the image have been processed. If no, the program loops back to step 602 to perform the process for the next image pixel. After all of the pixels have been processed, the answer in step 698 is yes, and step 699 then outputs RGB signals to the color monitor to display the simulation image thereon which realistically simulates the color appearance of the original image if it were printed using the process inks. Figs.
- FIG. 7A-D represent a variation 700 of the program presented in Figs. 6A-E.
- This variation may be preferred on some applications because it operates much more quickly but with somewhat reduced accuracy.
- this variation is very analogous to the program illustrated in Figs. 6A-E.
- Variation 700 enters at 702 which retrieves cyan, magenta and yellow final densities (CF, MF, and YF) for pixel P.
- Step 704 then asks whether magenta final is less than or equal to 0. If yes, step 706 recalculates yellow and cyan final densities according to the formulas shown. If the answer in step 704 is no, or after step 706, step 708 asks whether cyan final density is less than zero. If yes, step 710 recalculates the magenta and yellow final densities as illustrated. If the answer in step 708 is no, or after step 710, the program performs the steps of 712-726 which are the same as steps 604- 618 respectively as illustrated in Fig. 6A and explained in connection therewith.
- step 706 and 710 present techniques for handling negative values for MF and CF when they occur.
- the final density values for inks can sometimes present a negative value which occurs because of the contaminant levels.
- the final values for CF, MF and again for YF are recalculated also in step 706 and 710.
- step 736 defines the interim variable XYCC according to the formula illustrated. Step 731 then asks whether XYCC is less than 1. If yes, step 732 sets this variable equal to 1. If no, step 733 asks whether variable XYCC is greater than 2, and, if yes, step 734 sets XYCC equal to 2. If the answer in step 733 is no or after step 734, step 735 recalculates the yellow contribution to cyan.
- Step 736 again asks whether cyan final density is less than or equal to yellow contribution to cyan (YCC) since recalculation of YCC in step 735. If the answer is no, step 737 defines interim variable XMCC as shown. Step 738 then asks whether this variable is less than 1 and if so, sets XMCC equal to 1 in step 739. If the answer in step 738 is no or after step 739, step 740 asks whether XMCC is greater than 2 and, if so, sets XMCC equal to 2 in step 741. If the answer in step 740 is no, or after step 741 , step 742 recalculates MCC as illustrated. If the answer in step 736 is yes, or after step 742, the program moves to magenta correction.
- YCC yellow contribution to cyan
- Steps 744-758 perform magenta correction in the same manner as steps 728-742 perform cyan correction except for the differences in the factors and variables illustrated.
- step 760- 774 also perform correction in the same manner except for the differences in factors and variables illustrated.
- variations 700 performs step 694-699 as illustrated in Fig. 6E in order to provide the RGB signals to the color monitor.
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Facsimile Image Signal Circuits (AREA)
- Image Processing (AREA)
Abstract
A system (10) processes primary color signals representative of an original image created on a color monitor (20) in order to produce a simulation image on a color monitor accurately simulating the color appearance of the original image if printed as a color corrected image using coloring agents such as dyes, pigments or toners.
Description
APPARATUS AND METHOD FOR PRODUCING COLOR CORRECTED REPRODUCTIONS OF COLORED ORIGINAL IMAGES
This application is a continuation-in-part of S/N 07/494,431, filed
3/16/90; which was a continuation of S/N 07/212,714, filed 6/28/88 now U.S. Patent No. 4,959,790.
Background of the Invention 1. Field of the Invention
The present invention concerns a system for providing output signals representative of color corrected color densities of coloring agents used in reproducing a colored original image. More particularly, the present invention automatically provides the output signals representative of the color corrected color densities in response to input signals representative of the primary color readings of the original image.
The present invention is also concerned with a system for producing images on a color monitor realistically simulative of how an original image created on the color monitor would appear if printed as a color corrected image using process inks or the like.
2. Description of the Prior Art
The art of color reproduction strives to faithfully reproduce the colors of the original image. More particularly, color reproduction strives to create a reproduced image which reflects the same spectral colors, typically measured in terms of red, green and blue, as the original. Instruments such as a densitometer allow quantified readings of the primary spectral colors and thereby enable the quality of the reproduction to be quantified in numerical terms. A densitometer produces the three primary color readings of red, green, and blue by separately sensing the light transmitted through separate red, green, and blue filters. That is to say, a red reading
corresponds to the amount of standardized light passing through a standardized red filter or transmitted through (transparency) after being reflected from a particular portion of the original image. Similarly, green and blue readings are produced by sensing the light transmitted through respective green and blue filters. The red, green, and blue filters are designed to respectively absorb one-third of the spectrum reflected from the image centered about the three primary colors red, green, and blue. As a result, primary color readings are a subtractive process which readings representthe remaining light transmitted through red, green, and blue filters. In principle, the objective of color reproduction is to impress transparent coloring agents on white paper such that the coloring agents act as ideal primary color filters. Color agents are typically identified by their process colors of cyan, magenta and yellow corresponding respectively to red, green and blue, ideally these process colors act as perfect red, green, and blue filters which absorb only their designated portion of the spectrum and reflect or transmit the rest.
Unfortunately, practically available commercial coloring agents do not act as perfect red, green, and blue filters. That is to say, typically coloring agents are not strongly absorbing in one-third of the spectrum and strongly reflecting or transmitting in the other two-thirds of the spectrum. For example, a typical cyan coloring agent which ideally would absorb light only in the red third of the spectrum, also absorbs light in the green portion and blue portion. Similarly, typical magenta coloring agents, while predominately absorbing light in the green part of the spectrum, also absorb in the red and blue portions, and yellow coloring agents absorb not only the blue portion of the spectrum but also in the green portion and the red portion. Hence, coloring agents are said to contain so-called "dirt" in reference to the fact that coloring agents do not perform as ideal red, green, and blue filters.
In order to quantify the non-ideal characteristics of coloring agents.e- ach process color for a particular type of coloring agent can be quantified as having a certain proportion or percentage of the other two colors. For
example, cyan ink at a given density can be said to include a density level or percentage of magenta and yellow. That is to say, the green filtering action in the cyan ink can be characterized as a certain percentage of magenta in the cyan and the blue filtering action can be characterized as a certain percentage of yellow. Analogously, a magenta ink at a given density level can be said to include a certain percentages of cyan and of yellow, and the yellow ink can be said to have a certain percentages of magenta and cyan therein at a given density. Thus, when used in combination, each coloring agent contributes color to the other agent colors and the amount of contribution is different at different densities. This contribution effect must be taken into account in the color correction process.
The color correction process is additionally complicated by the fact that typical coloring agents experience so-called "linearity" failures such as "proportionality" failure and "additivity" failure. Proportionality failure refers to the fact that the color density of an agent color as measured by a densitometer does not increase linearly as the printing density of the coloring agent increases. That is, when the printing or coverage density of a cyan ink is increased, the measured cyan color density does not increase linearly therewith. Additionally, as the cyan ink density increases the magenta and yellow contributions also do not increase linearly.
Additivity failure refers to the fact that when two or more coloring agents are combined, the contribution one makes to the other does not increase or add linearly. For example, a cyan ink at a given density level has a certain cyan color density. A magenta ink at a given density level also contains a certain cyan density. If the cyan from the cyan ink and the cyan from the magenta ink combined linearly, the total cyan density reading of the combination would be a simple sum of the cyan density from the cyan ink and the cyan density contributed by the magenta ink. However, the resulting combination typically produces a net cyan density reading less than the sum of the two cyan sources. Thus, the cyan densities fail to add linearly.
As can be appreciated from the discussion above, the problems of color correction are substantial. In lithography, color correction is typically achieved by masking techniques in which the lithographer produces color separation masks used for producing printing plates which are designed to produce the desired color correction. The masking techniques, while generally effective, are also time consuming and expensive and may be prohibitively expensive for short runs of printing material.
Another color correction technique concerns the use of a micro¬ computer and associated electronic memory in which primary color reading data is stored therein corresponding to color charts of the coloring agents to be used in the reproduction process. The color agent charts for a given type of coloring agents are composed of patches of various combinations of the three colors of coloring agents at various color densities. If fifteen density steps of the three agent colors are used to make the charts, 3,375 combinations are possible with each producing corresponding red, green, and blue readings. This data is typically arranged in the form of a table and the patch is selected having red, green, an blue readings which correspond most closely with the desired red, green, and blue readings.
As those skilled in the art will appreciate, a lookup table so construct- ed is limited in its color correction accuracy. For example, fifteen density steps for each process color produces increments of 6.67% for each step.
With this large a gap between steps, the color correction may be inaccurate by at least this amount. If a minimum 3% accuracy is required, data must be produced for about 33 steps of density for each process color. This increases the number of color patches to almost 36,000. If high accuracy is desired, data corresponding to nearly 1 ,000,000 patches must be stored.
Thus, to increase the color correction accuracy using such tables, the amount of memory space increases by the cube of the number of density steps. Additionally, six bytes of data must be stored for each patch corresponding to a byte of data for each process color in the combination and a byte of data for each primary color reading produced by that color
patch. Thus, for high accuracy, at least 8,000,000 bytes of data must be stored. As those skilled in the art will appreciate, this volume of data becomes unwieldy to produce and enter, expensive to store, and time consuming to retrieve. Furthermore, this data is usable only for a particular set of inks and must be re-entered for different inks. That is to say, a new look-up table is required if the inks are changed. As a result of these problems, electronic color correction is not in widespread use.
The prior art also presents another problem for artists creating colored art work on a colored monitor. As those in the art will appreciate, the phosphors on monitors produce pure red, green and blue colors which are not subject to the linearity failures encountered with process inks. Thus, an artist can create images on a color monitor which present colors cleaner than the reproduction capability of process inks. This creates a problem in that after the artist has created an original image on the monitor, the printed image using process inks may appear substantially different.
For example, an artist can create a "pure" cyan without any yellow or magenta. The same is true with reds and greens and the corresponding process colors of cyan, magenta and yellow. Printing inks, however, are not pure and when, for example, cyan ink is printed on paper, nearly 40% magenta color is also present. Thus, there is no way to print a "pure" cyan ink without printing some magenta and yellow as well. Because the printer cannot reproduce the "pure" clean colors that can be created on a color monitor, the colors of the printed image may appear substantially different than the originally generated color monitor image. It is an expensive and a time consuming process for the artist to wait until the original image is printed before knowing what the final product will look like. Accordingly, the prior art points out the need for a system which can present the artist with a rendition of a printed image without the time and expense of preparing printing plates and printing a three or four colored image.
Summarv of the Invention
The problems as outlined above are solved by the system of the present invention. That is to say, the system hereof allows for highly precise and automatic color correction without the need for unwieldy amounts of data stored in memory.
Broadly speaking, the preferred system uses a microcomputer to receive input signals representative of the primary color readings for each image unit, pixel, or line of the image to be reproduced. In response, the microcomputer calculates final agent color densities as a function of color densities corresponding to the desired primary color readings, . corre¬ sponding color contribution factors, and corresponding correction factors. The microcomputer then produces output signals representative of the final agent color densities for each agent color such as cyan, magenta and yellow. The output signals are preferably used in a reproduction unit capable of producing variable dot sizes of the coloring agent to produce the color densities of the coloring agents as represented by the output signals, or used with an output device exposing color print paper, transparencies or the like.
In particular forms, the system hereof also accounts for variations in the correction factors which occur at different density combinations of the coloring agents. Advantageously, the system also provides for gray component removal for four color reproduction using cyan, magenta, yellow, and black in which the black replaces portions of the other colors to achieve the same color density results. The invention hereof also provides for black enhancement used to emphasize shadows.
In another embodiment of the invention, red, green and blue (RGB) signals representative of an original image created on a color monitor or scanned in by a scanner are used as the primary color readings for processing into final agent color density signals for the agent colors. These final agent color density signals are then processed to produce RGB signals
for displaying a simulation image on the color monitor which accurately simulates what the original image will look like when printed.
Other preferred aspects of the invention will be explained hereinbe- low.
Brief Description of the Drawings
Figure 1 is a schematic representation of the preferred components of the present invention;
Fig.2 is a computer program flowchart illustrating the SIΞT-UP module of the computer program for operating the microcomputer of Fig. 1 ;
Fig. 3A is a computer program flowchart illustrating the first part of COLOR CORRECTION module of the computer program;
Fig. 3B is a computer program flowchart of the CYAN CORRECTION submodule of the computer program; Fig.3C is a computer program flowchart of the MAGENTA CORREC¬
TION submodule of the computer program;
Fig. 3D is a computer program flowchart illustrating the YELLOW CORRECTION submodule of the computer program;
Fig. 4 is a computer program flowchart illustrating the BLACK ENHANCEMENT module of the computer program;
Fig. 5 is a computer program flowchart of the GRAY COMPONENT REMOVAL module of the computer program;
Fig. 6A is a portion of a computer program flowchart of the IMAGE SIMULATION module of a second embodiment of the invention;
Fig. 6B is an additional portion of the computer program flowchart of the IMAGE SIMULATION module;
Fig. 6C is an additional portion of the computer program flowchart of the IMAGE SIMULATION module; Fig. 6D is an additional portion of the computer program flowchart of the IMAGE SIMULATION module;
Fig. 6E is the final portion of the computer program flowchart of the IMAGE SIMULATION module;
Fig. 7A is a portion of a computer program flowchart of a variation of the IMAGE SIMULATION module of Figs. 6A-E; Fig. 7B is an additional portion of the computer program flowchart of the IMAGE SIMULATION module variation;
Fig.7C is an additional portion of the computer program flowchart of the IMAGE SIMULATION module variation; and
Fig. 7D is the final portion of the computer program flowchart of the IMAGE SIMULATION module variation.
Detailed Description of the Preferred Embodiments
Fig. 1 illustrates preferred apparatus 10 including microcomputer 12 having associated data storage unit 14, scanner 16, auxiliary input device 18, and reproduction device 20.
Preferred microcomputer 12 is a WYSE 386 computer, model WY3216-01 having an INTEL 80387 math coprocessor, INTEL ABOVE BOARD 286 with 2048 K expanding memory, a general purpose interface board for interfacing with the scanner, and an AT&T TARGA 24 board. Microcomputer 12 also includes a conventional color monitor (not shown) such as Mitsubishi type 1371 and a conventional data entry keyboard (not shown).
Data storage unit 14 is conventionally interconnected with microcom¬ puter 12 and preferably includes a 40 megabyte hard drive and two 1.2 megabyte floppy disk drives.
Preferred scanner 16 is a HOWTEK SCANMASTER manufactured by Sharp Electronics (type JX 450). Scanner 16 is operable to scan a colored original image in order to produce corresponding red, green, and blue color density readings for each pixel which are presented as input signals representative of these RGB readings for reception and use by microcom¬ puter 12.
Auxiliary input device 18 is an auxiliary source such as a conventional MACINTOSH microcomputer of input signals representative of desired red, green and blue readings of an image to be produced by reproduction device 20. Scanner 16 and device 18 are both operable to provide input signals to microcomputer 12 representative of the desired RGB readings of the image to be reproduced. Scanner 18 develops these desired RGB readings by scanning a colored original image. Device 18, in contrast, provides output signals representative of the RGB readings as produced on the color monitor associated with the preferred MACINTOSH microcomput- er, for example. Those skilled in the art will appreciate that other devices may be used to supply input signals to microcomputer 12 such that the signals represent desired RGB readings or color density readings of the reproduced image.
Reproduction device 20 is preferably a three or four color reproduc- tion device operable to produce varying dot sizes of each coloring agent in response to output signals from microcomputer 12. Preferred reproduction device 20 is film recorder such as a QZR-Z MATRIX brand capable of continuated gray tone film negative production. Other suitable reproduction devices include thermal printers, ink jet printers, continuous tone printers and xerographic printers including laser printers operable for color printing and preferably for producing variable dot sizes as a function of desired color density.
Figs. 2-5 are computer program flowcharts illustrating the preferred method of operating apparatus 10 and, in particular, microcomputer 12 for producing output signals representative of the final agent color densities of the coloring agents used in reproduction device 20. In preferred forms, the computer program is written using Borland International Turbo Basic Version 1.1, 1987. Additionally, other software used in operating microcomputer 12 includes AT&T - Flamingo Graphics Soft Vision R10 Version 1.2, AT&T - Flamingo Graphics R10-PCS Version 1.33, and True Vision Image Process¬ ing Image Software from Island Graphics.
In implementing the method of the present invention, it is first desirable to set up data files particular to the coloring agents being used by reproduction unit 20 to reproduce a given image. These data files are set up for primary color readings, preferably and typically red, green, and blue (RGB), and the coloring agent colors, preferably and typically, cyan, magenta, and yellow (CMY).
In general, SET-UP module 200 produces respective lookup tables for 256 increments of RGB readings corresponding to respective CMY densities. CMY densities are typically read from color charts of coloring agents using a conventional densitometer with the CMY densities in 12 to
15 ink density increments or steps. The RGB readings from these CMY densities steps are matched with the corresponding RGB readings on the lookup table and other RGB readings are extrapolated to complete the lookup table. Additionally, SET-UP module 200 enters contribution factors as percent contribution of agent colors for each step of the CMY densities and also enters corresponding contribution correction factors explained further hereinbelow.
SET-UP module 200 enters at step 202 which allocates an array for 256 increments of RGB readings from zero to 255. Step 202 also allocates an array for the corresponding CMY density steps S and corresponding contribution factors at each agent color density step.
The program then moves to step 204 in which enters the CMY densities D for each step S from the color charts as CD(S), MD(S), and YD(S). The program then moves to step 206 in which, for each CMY density steps, the corresponding contribution factor to the other agent colors is entered. For example, for each cyan density step, the percent magenta in cyan (%MC) and the percent yellow in cyan (%YC) for that step are entered in association with that step. Similarly, for each magenta step, the percent cyan in magenta (%CM) and the percent yellow in magenta (%YM) at that density level is entered and for each yellow density step, the percent cyan
in the yellow (%CY) and the percent yellow in the magenta (%YM) are entered.
In step 208, the corresponding RGB readings are entered for each CMY density step S. This produces a red reading for each of the cyan step, a green reading for each magenta step, and a blue reading for each yellow step. Additionally, the RGB readings for the reproduction carrier such as white paper are also entered which represent the respective upper limits of reproducible RGB readings. The RGB readings for the carrier are necessary to define the upper RGB limits of the reproduced image. That is to say, the reproduced image cannot produce RGB readings greater than the RGB readings of the carrier without any coloring agent thereon.
The program then moves to step 210 in which the program retrieves the respective RGB readings for each CMY step as R(S), G(S), and B(S). For example, for cyan density step 3, the corresponding red reading is denoted as R(3). Step 210 also retrieves corresponding cyan, magenta and yellow densities for step S designated as CD(S), MD(S), and YD(S). in step 212, the variable J is initially set at 255. Additionally, for step S=0, the corresponding CMY densities are defined as zero such that CMY densities increase as steps S increase. Conversely, the corresponding RGB readings for step S = 0 are set at the respective RGB readings for the particular white paper or other carrier which were entered in step 208 which are the RGB readings when the coloring agent densities are zero.
The remaining portion of SET-UP module 200 extrapolates respective RGB readings to fill in the gaps between corresponding CMY density steps. That is to say, the RGB array is set for a maximum of 256 increments but the initial data entered for corresponding CMY densities and corresponding RGB readings typically spans only 15 steps from the color charts. Accordingly, it is necessary to extrapolate the RGB readings between the CMY density steps. This extrapolation process in the remaining portion of SIΞT-UP module 200 is done as a linear function between steps which, in the preferred embodiment, is sufficient to provide accurate results. As those
skilled in the art will appreciate, a least squares method or other mathemati¬ cal techniques could be used instead to produce a smooth curve through the data points from the color charts which might be desirable in some applications. The extrapolation process for red and cyan begins at step 214 which sets S = 1. The program then moves to step 216 which asks whether variable J is greater than the red reading at cyan step one minus one. During the first pass through these program steps, J = 255 and the red reading at step 1 might equal 225, for example. Thus, J at 255 is greater than 225 - 1 and the answer in step 216 is yes. The program then moves to step 218 to conduct a series of calculations in order to extrapolate the red readings between step S and step S - 1. In the initial step, with S - 1 , program step 218 extrapolates between density step 0 and density step 1. In step 218, the program first calculates the red span RP according to the formula shown. The program then calculates the red increment Rl between the next lowest step and the current value of J.
Next, the program calculates an incrementing factor F by dividing the red increment by the red span. The program then calculates the cyan span CP between step S and the previous step according to the formula shown and then calculates an extrapolated cyan amount as factor F times the cyan span. The program then calculates the cyan density at the J location in the RGB array as the density of the next lower step plus the cyan increment CE. In step 219 the program asks whether C(J) is less than zero which occurs when J is greater than the R reading when the cyan density is zero at density step zero. If yes, the program moves to step 220 to set C(J) at zero or a very low number, .0001 in the preferred program. After 220 or if the answer in step 219 is no, the program moves to step 221 in which the cyan density C(J) is then stored at location R(J) in the red array.
By way of example, the red reading at step 1 which is the first density step of cyan might equal 225 and R(O) might be 250 which is the red reading of the carrier. Thus, RP = 250 - 225 = 25. If J equals 235, for
example, Rl = 250 - 235 which equals 15, and incrementing factor F is 15 - /- 25 which equals .60. If the cyan density at step 1 is .11 , for example, then the cyan spa CP between step 0 and step 1 is also .11. Accordingly, the cyan extrapolated value CE is .60 X .11 or .066. Thus, the cyan density at location J equals the cyan density at step 0 which is zero plus .066 or rounded to .07. The cyan density value is then stored at location R(225) in the red array. Thus, input signals representing a red reading of 225 correspond to a cyan color density of .07. Input red readings greater than 250 would have a corresponding cyan density of zero (or .0001 as preferred from step 220).
If the answer in step 216 is no indicating that variable J has been decremented below the red reading value at cyan density step S, the program moves to step 222 which increments variable S and then moves to step 223 which asks whether variable S is greater than the maximum value of S. In the example above, the maximum value of S is 15 corre¬ sponding to the 15 steps on the cyan density color chart. If the answer in step 223 is no, the program loops back to step 216.
If the answer in step 223 is yes or after step 221 , the program moves to step 224 which again sets variable S equal to 1. Steps 224 through 231 perform the same calculations for the green and magenta as for red and cyan in order to extrapolate the magenta readings for the green array in the same manner as steps 214 - 223 for red and cyan.
Similarly, steps 232-241 perform the same steps and calculations for blue and yellow. If the answer in step 241 is yes or after step 239, the program moves to step 242 to decrement variable J and then moves to step 244 which asks whether variable J equals zero. If no, the program loops back to step 214 to complete steps 214-241 for the new value of J. In this way, the program fills in corresponding CMY extrapolated densities in respective RGB arrays for each value of J. When complete, each RGB array presents a complete set of corresponding CMY densities - up to 256 CMY density increments in
the preferred embodiment. In this way, rather than working with only 15 density increments for each agent color, up to 256 increments are available which allow calculation of final density readings within about 1% of the original. When the answer in step 244 is yes, the operation of SET-UP module
200 is complete.
As discussed above, SET-UP module 200 is executed once for each set or type of coloring agents being used in reproduction unit 20. Thus, once the corresponding CMY densities have been calculated for each RGB increment in the corresponding arrays, SET-UP module 200 need not be again executed. As a matter of design choice, the RGB arrays can be set up by the end user by physically taking' a set of RGB readings and corresponding CMY densities for each of the corresponding CMY densities from color charts of the coloring agents with which the reproduced image is to be printed which typically involves 15 measurements for each coloring agent for a total 45 measurements. In the alternative, the array and factors can be provided on a floppy disk or read-only-memory (ROM) chip from the manufacturer of the coloring agent.
Figs. 3A, B, C, and D illustrate the computer program flowchart for receiving input signals representative of RGB data and for producing output signals representative of color corrected CMY densities of the reproduced image in order to produce corresponding RGB readings.
Figs. 3A-D illustrate COLOR CORRECTION module 300 which includes a CYAN CORRECTION submodule (Fig. 3B), a MAGENTA CORRECTION submodule (Fig.3C), and YELLOW CORRECTION submod¬ ule (Fig. 3D).
Referring now to Fig. 3A, COLOR CORRECTION module 300 performs a set of initial calculations based on the input signals represen¬ tative of the RGB readings of the colored original, the contribution factors to each coloring agent from the others, and corresponding correction factors.
The correction factors to be entered in step 206 (Fig. 2) are specific to the particular coloring agents being used. J.A.C. Yule, in a book entitled "Principles of Color Reproduction" published by John Wiley & Sons, New York, which is hereby incorporated by reference, suggested that correction factors could be calculated using a series of simultaneous equations. These equations are identified as equations 10.24 on page 278 of the Yule book. Solving of these simultaneous equations is not usually practical because of the number of independent variables that must be factored into the attempted solution. When simplified, the equations may be represented as: Cτ = Cc + aMc + bYc
Mr = MM + dCM + eYM Yτ = Yγ + fCy + gMY wherein the total color density of an agent color is expressed in terms of the contribution from the coloring agent of that color plus the contribution to that agent color from the other agent colors. For example, the first equation recites that the total cyan color density C equals the sum of: the cyan contribution from the cyan coloring agent Cc, a correction factor "a" times the magenta coloring agent contribution to cyan Mc, and a correction factor "b" times the yellow contribution to cyan Yc. Similarly, the magenta total Mτ is expressed in terms of the magenta agent contribution to magenta MM plus correction factors "d" and "e" times the respective contributions to magenta from the cyan an yellow coloring agents. The total yellow density Yτ is expressed as a function of the yellow coloring agent contribution of the yellow Yγ plus correction factors T and "g" respectively times the cyan and magenta coloring agent contributions to yellow.
Yule and others made a concerted effort to quantify the linearity failures which occur when coloring agents are combined in practice by resorting to equations such as those referenced above. As pointed out though, usefulness of these equations requires knowledge of a significant number of independent variable correction factors including at least a, b, d, e, f, and g, all of which are different for different coloring agents. These
correction factors necessarily change as the density of combined coloring agents vary. This has heretofore prevented practical application of Yule-type equations in solving color correction problems.
On the other hand, if the independent variables, a to g inclusive, are first empirically determined by taking density readings at strategic locations on color charts of the coloring agents to ultimately be used, then it is possible to solve the simultaneous equations. For example, as an initial starting point, correction factors "a" can be determined by reading a previously prepared color chart patch having a known density of cyan and magenta and no yellow and solving the first equation above for "a" using these measured values. A color patch is then read using a densitometer of known densities of cyan and yellow with no magenta. These values may be used in the first equation to solve for "b". With these starting points for correction factors "a" and "b", color patches may then be read for a cyan density having known densities of all three colors - cyan, magenta, and yellow. If the equation does not balance, factors "a" and "b" are altered until the equation does balance. This process is repeated for the other two equations until values have been determined for factors d, e, f, and g. In a typical set of match print inks, these correction factors have been found to be .6, .6, .4, .4, .5, and .6 respectively for a-g inclusive and yield acceptable results.
It has further been found though that the values of the correction factors vary somewhat over a given range of densities. Within certain limits, as will be explained further hereinbelow, these variations are small enough so that they do not significantly affect the precision of the color correction process within certain density limits. That is to say, even with these slight variations, the precision of the color correction process is well within acceptable limits and significantly superior to known prior art techniques.
The three modified equations recited above can be rearranged as follows:
Cc = CT - aMc - bYc
MM = MT - dCM - eYM
In this form, these equations state that the color density of an agent color equals the total color density for that color less the contributions from the other colors. In other words, if an initial color density is known, and if the contributions to that density from the other colors are known, then the required color density of the corresponding coloring agent can be derived. In the preferred embodiment, Cy, Mτ, and Yτ correspond to the respective initial color densities CJ, MJ, and YJ from the RGB arrays and Cc, MM, and Yγ correspond to the final agent color densities CF, MF, and YF as will be explained further hereinbelow.
The program enters COLOR CORRECTION module 300 at step 302 which defines a set of files from each pixel P or image unit of the image to be reproduced. As will be explained further hereinbelow, the output signals from microcomputer 12 represents agent color densities for each image unit, pixel, or line of the reproduced image. For example, in lithographic art, halftone resolution is expressed in terms of so-called "lines per inch". Image resolution can also be expressed in terms of pixels per inch with the term "image unit" as used herein being a generic term for pixels, lines, or the like. The particular scanner 22 being used may be capable of resolving an original image with a resolution greater than that of the particular reproduc¬ tion unit 20 being used, or greater than that needed or desired.
In such a case, it may be desirable to average pixel subsets of the RGB data represented by the input signals to microcomputer 12 to provide correspondence with the resolution of the reproduced image. For example, if the final image is to have a resolution of 150 lines per inch and the input provides resolution of 300 per inch, the RGB data from four adjacent input pixels can be averaged to present the data corresponding to a single larger reproduction image unit. Step 302 set up files for input RGB data, final CMY density data, and a file K for black data corresponding to either GRAY COMPONENT
REMOVAL or BLACK ENHANCEMENT as will be explained in connection with Figs. 4 and 5.
The program then moves to step 304 to receive the input signals representative of the RGB data for the reproduced image. In the preferred environment, program step 304 corresponds to the physical operation of placing the colored original drawing in scanner 16 for scanning thereby and for generating and transmitting the input signals to microcomputer 12. Equivalent^, program step 304 corresponds to the reception of input signals representative of the RGB data from some auxiliary source such as a Macintosh computer or data already stored in memory, or some other input signal source such as a xerographic copier capable of supplying input signals representative of primary color readings or equivalent color densities. Step 306 sets variable P equal to 1 and retrieves the RGB data corresponding to pixel P. The program then moves to step 308 which retrieves the respective
CMY initial color densities corresponding to the input RGB data from the corresponding RGB arrays. The corresponding CMY initial color densities are represented as CJ, MJ, and CJ respectively.
The program then moves to step 310 which asks whether any of the corresponding CMY densities CJ, MJ, or YJ ar equal to zero. If such is the case, the program moves to step 312 which sets the density for that color at an extremely low number corresponding to zero. That is to say, in the particular programming language used in the equation used further hereinbelow, the variable CJ, MJ, or YJ are not set exactly equal to zero but set at a very low number to avoid computational problems.
If the answer in step 310 is no or after step 312, the program moves to step 314 to retrieve the contribution factors corresponding to the color densities retrieved in step 308. More particularly, the contribution factors are expressed as percent magenta in cyan %MC, and percent yellow in cyan %YC which preferably correspond to the cyan density step S nearest the cyan density CJ retrieved in step 308. Similarly, the percent cyan in
magenta %CM and the percent yellow in magenta %YM for the magenta density MJ are retrieved as the corresponding contribution factor of the magenta density step having a density value nearest retrieved density MJ. Similarly, the percent cyan in yellow %CY, and percent magenta in yellow %MY associated with the yellow density step having a density value nearest the density YJ are retrieved.
As those skilled in the art will appreciate, these contribution factors as measured from a color chart of the coloring agents also vary non-linearly. For example, the percent magenta in cyan may be lower at a low density cyan density step and higher at a high density cyan density step. Program step 314 retrieves the contribution factors associated with the density step nearest the density retrieved in step 308. Such a retrieval treats the variations in contribution factors between density steps as disjointed functions. In the preferred embodiment, this approximation is close enough to allow precise color correction. As a matter of design choice, however, the contribution factors can be extrapolated in a manner similar to the color density extrapolation performed in SET-UP module 200 if a closer approxi¬ mation is desired. Furthermore, if an even closer approximation is desired, the least squares method of calculating the contribution factors can also be performed such that a set of 256 contribution factors corresponding to each of the 256 densities is produced.
The program then moves to step 316 which calculates two contribu¬ tion amounts for each agent color as a function of the corresponding contribution factor, correction factor, and initial color density. As explained above, the contribution correction factors a, b, d, e, f and g are specific to the coloring agents being used in reproduction unit 20. Similarly, the contribution factors retrieved in steps 314 are also specific to the coloring agents being used as they are measured directly from the color charts of the coloring agents. The contribution amounts calculated in step 316 are expressed as cyan contribution to magenta CCM, cyan contribution to yellow CCY, magenta contribution to cyan MCC, magenta contribution to
yellow MCY, yellow contribution to cyan YCC, and yellow contribution to magenta YCM.
With the calculations complete in step 316, the program is ready to move on to the cyan, magenta, and yellow correction submodules in order to calculate final densities for each coloring agent.
The program enters the CYAN CORRECTION submodule (Fig. 3B) at step 318. This step is included to determine whether the contribution to cyan from the magenta coloring agent or the yellow coloring agent is greater than the initial cyan density CJ. If such is the case, then no cyan coloring agent need be included in the final combination. Accordingly, the final cyan density CF for the cyan coloring agent is set a zero or in the preferred case at an extremely low value in step 320.
If the answer in step 318 is no, the program moves to step 320 which asks whether the cyan contribution from the yellow coloring agent is greater than a predetermined factor (in this case 0.6) times the cyan contribution to the cyan without the magenta contribution to cyan. In other words, if the contribution to cyan from the yellow coloring agent is greater than a predetermined amount, then the actual yellow contribution to cyan (YCC) must be recalculated, recalling that the yellow contribution to cyan (YCC) was calculated in step 316 as a function of correction factor . As discussed above, this correction factor is generally acceptable except for coloring agent blends at high densities such that the yellow agent contrib¬ utes substantially to the percent of cyan. If such is the case, then correction factor does not produce precise color correction results and should be recalculated. Accordingly, the yellow contribution to cyan (YCC) must be recalculated because with this great of a cyan contribution from the yellow, the yellow contribution to cyan becomes more dominant and the resulting additivity failure is less. That is, for example, instead of a 60% correction, 80% may be more precise. Thus, if the answer in step 320 is yes, indicating that the yellow does contribute a substantial amount to the cyan as indicated by the formula in
step 320, the program moves to step 322 which calculates an interim variable "Z" according to the formula shown. Variable "Z" can be thought of as a ration between the yellow contribution to cyan and a percent of the cyan contribution to cyan without the effect of the magenta contribution to cyan.
The program then moves to step 324 which asks whether variable "Z" is greater than 2. If yes, the program moves to step 326 to set "Z" equal to 2 with this being a preferred upper limit for "Z".
If the answer to step 324 is no, or after step 326, the program moves to step 328 to calculate a new value for the yellow contribution to cyan YCC according to the formula shown in step 328. An inspection of this formula indicates that the term enclosed in brackets is a new calculation for correction factor T in the corresponding formula of step 316.
As those skilled in the art will appreciate, the multiplication factor 0.6 used in steps 320 and 322 and the addition factor .7 used in step 328 are specific to the coloring agents being used. In other words, by using sample patches on a set of color charts of the coloring agents, and by using formulas in steps 320, 322, and 328, one can determine the appropriate factors for use in steps 320, 322, and 328. The particular factors .6 and .7 are preferred for match print inks.
If the answer in step 320 is no, or after step 328, the program moves to step 330 which begins a series of steps similar to steps 320-328 in order to recalculate correction factor "d" from step 316 if necessary. In other words, if the magenta contribution to cyan is greater than .8 times the cyan contribution to cyan without the effects of the yellow contribution to cyan, then it is necessary to recalculate correction factor "d". With magenta in the use of match print inks, it has been found that the correction factor "d" needs to be recalculated if the magenta contribution to cyan is greater than 80% of the cyan contribution to cyan without the effects of yellow contribu- tion to cyan. This factor .8, is in contrast to the factor .6 used in step 320 and is, as explained, readily derived.
If the answer in step 330 is yes, the program moves to step 332 to again calculate interim factor "Z" accordingly to the formula shown and similar to step 322. Steps 334, 336, and 338 are similar to steps 324-328 as explained above except that step 328 recalculates the contribution of the magenta contribution to cyan (MCC) by recalculating correction factor "d" according to the term as shown in brackets in step 338.
If the answer in step 330 is no, or after step 338, the program moves to step 340 which calculates the final cyan color density CF according to the formula as shown. Basically this formula states that the final color density of the cyan coloring agent is equal to the initial cyan color density CJ corresponding to the desired red reading less the magenta contribution to cyan (MCC) and less the yellow contribution to cyan (YCC). This formula incorporates magenta and yellow contributions to cyan as originally calculated in step 316 or as recalculated in steps 328 or 338 as explained above. Also as explained above, if the magenta or yellow contribute sufficiently to the cyan such that no cyan coloring agent is needed, the final cyan density is set at a very low number in step 320 and step 340 is bypassed.
After step 340, the program moves to step 342 (Fig. 3C) which initiates the calculations for the MAGENTA CORRECTION submodule. This submodule includes steps 342-366 performs the same calculations for magenta as were performed for cyan in steps 318-340 resulting in a final density for the magenta coloring agent as calculated in step 366. Step 354 and 364 respectively recalculate the cyan contribution to magenta and the yellow contribution to magenta by recalculating contribution correction factor
"a" and correction factor "g".
After step 366, the program moves to step 368 (Fig. 3D) to initiate the calculations for the yellow correction in steps 368 through 392 in the same manner as for magenta and cyan. Note that in steps 372, 374, 380, and 384 that the preferred form of the formulas is slightly different than the corre¬ sponding steps for the cyan and magenta calculations. The difference in
the form of equations is primarily due to the fact that typical available yellow coloring agents such as process inks are not as "dirty" as magenta and cyan and thereby function more nearly like an ideal blue filter. As those skilled in the art may appreciate, however, with other process inks or toners or other types of coloring agents, such may not be the case and the more general form of the formulas as used for calculating cyan and magenta may be necessary.
After step 392, the program has completed the calculations for the final color density for each coloring agent and has stored these values for pixel P. After step 392, the program moves to step 393 which asks whether pixel P is to include enhancement black as will be explained in connection with Fig. 4. If yes, the program goes to BLACK ENHANCEMENT module 400 and executes that submodule and reenters the program at entry point "D". If the answer in step 393 is no, the program moves to step 394 which asks whether GRAY COMPONENT REMOVAL module 500 (Fig. 5) is to be executed as will be explained further hereinbelow. If yes, the program executes module 500 and then returns at entry point "D". As those skilled in the art will appreciate, both enhancement black and undercolor removal are typically not both used. Additionally, the particular reproduction unit 20 being used may not have the capability of a four color process incorporating black in which case the answers in steps 393 and 394 are both no.
If the answer in step 394 is no or after execution of modules 400 or 500, the program moves to step 395 which increments pixel variable P. The program then moves to step 396 which asks whether P exceeds the maximum number of pixels in the reproduced image. If no, the program loops back to step 308 (Fig. 3A) to reexecute steps 308-396 for the next pixel.
If the answer in step 396 is yes, the program moves to step 397 to send output signals to reproduction unit 20 representative of the CMY densities for each coloring agent for each pixel. In the alternative, the output
signals can be sent instead for conversion to data for storage in data storage unit 14. That is to say, the CMY data can be downloaded onto a floppy disk, for example, and stored thereon. As preferred, the output signals represent the CMY color densities which can be corrected to represent percent dot sizes as will be explained further hereinbelow.
Fig. 4 illustrates BLACK ENHANCEMENT module 400. As those skilled in the art will appreciate, if a four color process is desired or available, black is often added for enhancement shadows on the repro¬ duced image. Module 400 enters at step 402 which asks whether the final densities of the cyan, magenta, and yellow are all greater than .6. If no, indicating that this particular pixel is not densely colored, black enhancement is not appropriate and the program moves to step 404 to set the black enhance¬ ment level KE essentially at zero or as in the preferred case at a very low level as indicated.
The selection of the factor .6 in step 402 is a matter of design choice as to what level the operator wishes black enhancement to start. if the answer in step 402 is yes, the program moves to step 406 which asks whether the ratio between the final yellow density and the final magenta density is between .6 and 1.4. If the answer is no, indicating that the yellow density is low as compared to the magenta density, the program moves to step 404. If the answer in step 406 is yes, the program moves to step 408 which asks whether the ratio between the final magenta density and the final cyan density is between .7 and 1.5. As those skilled in the art will appreciate, the selection of the ranges for steps 406 and 408 is a matter of design choice. If the answer in step 408 is no, the program moves to step 404.
If the answer in step 408 is yes, the program moves to step 410 to calculate the amount of enhancement black KE according to the formula shown. This formula sets upper and lower limits on the amount of enhancement black. These limits can be modified as a matter of design
choice. After steps 410 or 404, the program loops back to step 395 (Fig. 3D).
Fig. 5 illustrates GRAY COMPONENT REMOVAL module 500. As those skilled in the art will understand, typical black process coloring agents can be thought of as being composed of cyan, magenta and yellow. Thus, black can be substituted for respective portions of the cyan, magenta, and yellow coloring agents which may be desirable as a cost reduction technique since black coloring agents typically cost less. These replaced portions of cyan, magenta, and yellow together represent a gray component which is removed and replaced by the black.
The program enters module 500 at step 502 which sets the variable "U" equal to the smallest of the CMY final densities. Since black can substitute for CMY, the smallest of the three represents the maximum level of black to used to replace the underlying cyan, magenta, and yellow. The program then moves to step 504 which asks whether U is less than .03. If yes, indicating that the level of black is too small to be effective, the program moves to step 504 to set U equal to zero or an extremely low number as illustrated. If the answer in step 504 is no, the program moves to step 508 to set the variables undercolor cyan (UC), undercolor yellow (UY), and undercolor magenta (UM) equal to respective factors CK, MK and
YK times "U".
With many black coloring agents, the black is balanced, that is, includes substantially equal CMY densities. If not, as with MATCH PRINT black, the imbalance needs to be taken into account when calculating the gray component portions of the final densities. For example, if the black coloring agent presents relative densities of 92% cyan, 100% magenta, and 96% yellow, then it is not effective for replacing all of the gray component cyan and yellow. Accordingly, the relative portions of CMY are defined as respective factors CK (.92), MK (1.0), and YK (.96). These are multiplied by "U" for the undercolor cyan (UC), magenta (UM), and yellow (UY).
The linearity failures as discussed above also come into play with black. Accordingly, for precise color correction using black, the program takes the linearity failures into account. After step 508, the program moves to step 510 to retrieve the contribution factors of the respective CMY steps having densities nearest the densities of UC, UM, and UY. The program then moves to step 512 to calculate the contribution amounts as indicated for the gray component densities of cyan, magenta, and yellow. This step is necessary because the densities do not vary linearly and so a mere substitution of black for corresponding densities of cyan, magenta, and yellow is not accurate. The calculations in step 512 are similar to those in steps 316 (Fig. 3A). The correction factors a, b, d, e, f, and g are preferably the same values as those in step 316 and are specific to the coloring agents being used.
The program then moves to step 514 to calculate the final densities present in the black according to the formula as shown which are analogous to the formulas in steps 340 (Fig. 3B), 366 (Fig. 3C), and 392 (Fig. 3D).
The program then moves to step 516 to calculate the densities of the CMY coloring agents after gray component removal according to the formulas as shown. That is to say, step 516 calculates the new final densities for cyan, magenta, and yellow respected by CFU, MFU, and YFU respectively after the gray component portion has been removed. Step 516 also sets the black density KU equal to variable "U".
As discussed above, if the black coloring agent is not balanced, it is not totally effective for replacing ail of the gray component portions of CMY. As a result, residual amounts must be added back in step 516 as residual cyan [(1.0 - CK).U], residual magenta [(1.0 - MK).U], and residual yellow
[(1.0 - YK).Uj\
After step 516 or 506, the program loops back to steps 395 (Fig. 3D).
In use, the final color densities of the agent colors of cyan, magenta, an yellow as represented by the output signal may be converted to a form suitable for use by the particular reproduction unit 20 such as percentage
dot sizes in increments of 1% from zero to 100. For example, the lowest coverage density of a coloring agent might be expressed as a 0% dot and the maximum single impression density as a 100% dot. As used herein, the term color density refers to density as typically measured by a densitometer to express cyan color density, for example, and the term "coverage density" refers to the coverage of a given image unit per unit area by the coloring agent. Those skilled in the art will appreciate that the coverage density can be expressed in other units and can be expressed in fewer or greater increments. It is preferred that reproduction unit 20 produce an image with a resolution of at least 150 image units per inch such as 150 halftone lines per inch.
The output signals are useful in the context of a film recorder. In such an application, the RGB data corresponding to the final CMY color densities are represented by the output signals as retrieved from the RGB arrays. Using a film recorder, a continuous tone negative can be produced using the output signals which represent the cyan separation. Similarly, continuous tone negatives can be produced from the magenta and yellow output signals representing the magenta and yellow separations respective¬ ly. The negatives are then enlarged or reduced on an enlarger to produce halftone line screens to produce respective halftone positives from which respective cyan, magenta, and yellow plates are produced for three color printing (and a black plate if four colors are used). Such use simplifies the entire lithographic process and eliminates the need for more expensive machines as those skilled in the art will appreciate. A film recorder can be set up to produce variable dot sizes so that the line screen is generated directly from the film recorder. Film recorder technology also lends itself to laser use for a finer, sharper dot.
As those skilled in the art will appreciate, the components of apparatus 10 can be incorporated into a single unit as part of a color xerographic copier. In such a configuration, it is preferred that the data specific to the toners used in the copier would be stored in a replaceable
ROM such that if a different type of toner is used, a replacement plug-in ROM module containing the program can be conveniently substituted to provide the new data for use in the color correction calculations. As explained above, the data specific to the coloring agent includes the RGB arrays with the corresponding CMY densities, the contribution factors, the correction factors, and the multiplication and addition factors discussed in connection with Figs. 3B-D. Additionally, this data includes data for a black toner if a four color process is used as discussed in connection with Figs. 4 and 5. The present invention contemplates many variations in the preferred embodiments described herein. For example, the preferred computer program can be implemented in a variety of different types of computers other than the preferred microcomputer 12 such that any processing unit adequate to conduct the steps of the program would be acceptable. Additionally, as those skilled in the art will appreciate, all of the logic functions illustrated in the program steps of Figs.2-5 could be implemented by dedicated hardware such as a custom-made semiconductor chip. That is to say, rather than implementing the method of the present invention in terms of software, a custom chip incorporating the appropriate gates, shift registers, counters, and so forth could be used although such is not preferred because of the relative difficulty and expense of making changes and modifications in the operating steps.
ADDITIONAL EMBODIMENT
Fig. 6 is a computer program flowchart illustrating the IMAGE
SIMULATION module 600 which allows display of a simulation image on a color monitor (CRT) which realistically simulates the color appearance of an image created on the monitor when printed using coloring agents such as process inks. In the preferred embodiment, IMAGE SIMULATION module
600 is used in conjunction with the modules described above in connection with Figs. 2-5.
As will be appreciated from the discussion of these modules, RGB signals are processed by those modules to produce CMY final ink density signals which are color corrected. In the process of producing the final ink density signals, the image represented by the input RGB signals is inherently confined into the color space allowable by the process ink data. In other words, the input RGB signals may represent color densities beyond the capability of the process inks that have been used. The modules of Figs. 2-3D take this into account and color correct the RGB signals into the allowable color space of the inks in producing the CMY final density signals. This allows printing of an image which presents color densities as close to the original as possible.
In this embodiment, the input RGB signals represent an original image displayable on a color monitor as created by an artist, for example.
The modules of Figs. 2-3D produce the final density signals for the CMY inks to be used in printing the image in a manner to color correct and reproduce the image as faithfully as possible with these inks. As discussed above in connection with the prior art, the artist does not know what the color appearance of the printed image will be and may well be surprised.
The second embodiment of the present invention allows the display of a simulation image which realistically shows the artist what the original image will look like when printed. The artist can then change the image as needed in order to take the limitations of the process inks into account. IMAGE SIMULATION module 600 enters at step 602 (Fig. 6A) which retrieves the final agent color density information CF, MF and YF for the first pixel of the image. Steps 604, 608 and 612 then asks whether the density data CF, MF and YF respectively are less than zero. If the answer of any of these steps is yes, the respective variable is set at a very low number close to zero in steps 606, 610 and 614.
Step 616 then retrieves the respective contribution factors as a percentage for the contribution of each color to each of the other colors. Step 618 calculates the contribution amounts from each agent color to each of the other agent colors according to the equations as shown. The program steps of Fig.6B are concerned with cyan correction and enters at step 620 which asks whether CF is less than or equal to the yellow contribution to cyan times the factor 1.5. This step determines if the final cyan density is relatively small compared to the yellow contribution to cyan. If such is the case, then this density level of cyan is achievable with the process inks and cyan correction is not needed. Thus, if the answer in step
620 is yes, the program moves to magenta correction in Fig. 6C.
If the answer in step 620 is no, the program moves to step 622 which asks whether the final cyan is less than or equal to the magenta contribution to cyan times the factor 1.5. If yes, then this density level of cyan is achievable with the process inks and again, no cyan correction is needed and the program moves to Fig. 6C.
If the answer in step 622 is no, then it is known that the final cyan density is not small compared to both the yellow and magenta contributions to cyan, and it is also known that color correction is required. Accordingly, the program moves to step 624 to initially test whether correction of yellow contribution to cyan (YCC) is needed. This is accomplished by asking whether the conditions of step 624 are satisfied. That is to say, step 624 seeks to determine whether cyan ink final density is much larger than the yellow contribution to cyan according to the conditions of step 624. The factor 33 as shown is empirically derived as is generally valid for SWOP inks.
If the answer in step 624 is yes, then the interim variable XYCC is defined in step 626 as the ratio shown. This ratio cannot be less than one because step 624 was satisfied. Step 628 asks whether the variable XYCC is greater than two indicating that the cyan from the cyan ink is very much larger than the contribution from the yellow ink at the density YF. If the
answer in step 628 is yes, then variable XYCC is set at a maximum allowable value of 2.
After step 630 or if the answer in step 628 is no, step 632 recalculates the yellow contribution to cyan (YCC) according to the formula shown. It should be noted that if XYCC equals 2, then YCC is recalculated as two- thirds of its initial value. This means that if the yellow contribution to cyan is very small compared to final cyan density (CF), then YCC is only two- thirds effective due to linearity failures. If, however, XYCC is about equal to 1 , then the new value of YCC is virtually identical to the old value indicating that at a higher density level, the yellow contribution to cyan is almost entirely effective and very little changed by linearity failures.
If the answer in step 624 is no, or after step 632, step 634 again asks whether the same conditions of step 620 are now satisfied. Step 634 is needed to retest this condition if YCC was recalculated in step 632. If the step in step 634 is yes, further cyan correction is unneeded and the program moves to magenta correction in Fig. 6C.
If the answer in step 634 in no, then additional correction may be required for the magenta contribution to cyan (MCC). That is to say, the correction to YCC in step 632 is insufficient and further correction or recalculation of MCC may be required. This is tested in step 636 as shown.
If the answer in step 636 is yes, step 638 defines the interim variable XMCC according to the equation shown. Step 640 then asks whether XMCC is greater than 2 and if yes, step 642 sets XMCC equal to 2. If the answer in step 640 is no or after step 642, step 644 recalculates MCC as shown similar to step 632 for YCC. After step 644 or if the answer in step 636 is no indicating that MCC recalculation is not needed the program moves to magenta correction as illustrated in Fig. 6C.
The magenta correction portion of the program determines whether recalculation is required of the cyan and yellow contributions to magenta in a manner structurally the same as the cyan correction portion of Fig. 6B.
Steps 646 and 648 ask whether the magenta final density (MF) is less than
or equal to the yellow or cyan contributions to magenta times the factor 1.5. If the answer to either question is yes, the program moves to yellow correction in Fig. 6D. If the answer to both steps 646 and 648 is no, step 650 determines whether recalculation of the cyan contribution to magenta needs to be recalculated, that is, whether the cyan contribution of magenta is sufficiently high as set forth in the conditions of step 650. This step is analogous to step 624 for cyan correction but is in a somewhat different form because of the typical characteristics of magenta inks. As with step 624, the factor .65 is empirically determined for the particular inks to be used. These factors are different for each type of coloring agent and may be different with different batches of the same type of coloring agent.
If the conditions in step 650 are satisfied indicating a high cyan contribution to magenta, step 652 defines the interim variable XCCM as shown and then step 654 asks whether this variable is greater than 2. If yes, step 656 sets XCCM equal to 2.
If the answer in step 654 is no or after step 656, step 658 recalculates the cyan contribution to magenta according to the formula shown.
If the answer in step 650 is no, or after step 658 step 660 again tests magenta final density (MF) as in step 648. If yes, correction of yellow contribution magenta is unnecessary and the program moves to yellow correction. If the answer in step in 660 is no, step 662 tests the yellow contribution to magenta (YCM) according to the conditions shown to determine whether YCM is sufficiently large to require recalculation. If yes, step 664 defines interim variable XYCM as shown and then step 666 asks whether XYCM is greater than 2. If yes, step 668 sets this variable equal to
2. If the answer in step 666 is no or after step 668, step 670 recalculates YCM as illustrated.
If the answer in step 662 is no, or after step 670 the program moves to yellow correction illustrated in Fig. 6D. The yellow correction portion of the program is analogous to the cyan and magenta correction portions.
Steps 672 and 674 test yellow final density (YF) against cyan and magenta
contributions to yellow respectively. If the yellow final density is sufficiently low, the answer to both steps 672 and 674 is yes indicating that recalcula¬ tion of MCY and CCY are unnecessary.
If the answer to both step 672 and 674 are no, step 676 determines whether recalculation of magenta contribution to yellow is necessary according to the criteria illustrated. If yes, step 678 defines the interim variable XMCY and step 680 then asks whether this variable is greater than 2. If yes, step 682 sets XMCY equal to 2. If the answer in step 654 is no, or after step 656, step 684 recalculates magenta contribution to yellow (MCY) as illustrated.
If the answer in step 676 is no, or after step 684, step 686 again tests yellow final density in view of the recalculation of (MCY). A no answer in step 686 indicates that recalculation of cyan contribution yellow may still be necessary and this is determined in step 688 according to the criteria illustrated. If the cyan contribution to yellow is sufficiently high, the answer in step 688 is yes and step 690 defines the interim variable XCCY and the program then asks in step 691 whether this variable is greater than 2. If yes, step 692 sets XCCY equal to 2. If the answer in step 691 is no, or after step 692, step 693 recalculates cyan contribution to yellow (CCY). After step 693, yellow correction along with cyan and magenta correction are complete and the program moves to the final portion illustrated in Fig. 6E. This final portion begins at step 694 which calculates the display density variables CD, MD, and YD. For example, the total cyan on the printed image is the sum of the cyan originating from the cyan ink (CF) plus the cyan contributed by the magenta ink (MCC) and the yellow ink
(YCC). As discussed above, the effectiveness of the magenta and the yellow contributions to cyan depends upon the relative densities of the three agent colors. Now that MCC and YCC have been recalculated, if necessary, to take linearity failures into account, a simple addition of the three sources of cyan color can be added to determine the level of cyan which needs to
be displayed on the color monitor in order to realistically and accurately present the cyan color. The same is true for magenta and yellow.
After determination of the display densities for cyan, magenta and yellow, step 695 performs a straight forward conversion to red, green and blue values (RGB) respectively by multiplying CD, MD, and YD each by 100 and then subtracting 255 from each, the results being respective RGB integers for display on a color monitor. Step 698 then asks whether all of the pixels in the image have been processed. If no, the program loops back to step 602 to perform the process for the next image pixel. After all of the pixels have been processed, the answer in step 698 is yes, and step 699 then outputs RGB signals to the color monitor to display the simulation image thereon which realistically simulates the color appearance of the original image if it were printed using the process inks. Figs. 7A-D represent a variation 700 of the program presented in Figs. 6A-E. This variation may be preferred on some applications because it operates much more quickly but with somewhat reduced accuracy. As will be appreciated from the discussion herein, this variation is very analogous to the program illustrated in Figs. 6A-E.
Variation 700 enters at 702 which retrieves cyan, magenta and yellow final densities (CF, MF, and YF) for pixel P. Step 704 then asks whether magenta final is less than or equal to 0. If yes, step 706 recalculates yellow and cyan final densities according to the formulas shown. If the answer in step 704 is no, or after step 706, step 708 asks whether cyan final density is less than zero. If yes, step 710 recalculates the magenta and yellow final densities as illustrated. If the answer in step 708 is no, or after step 710, the program performs the steps of 712-726 which are the same as steps 604- 618 respectively as illustrated in Fig. 6A and explained in connection therewith.
The factors .41, .10, .16 and .37 shown in steps 706 and 710 represent contaminant levels and thereby contribution factors of the SWOP inks shown further in the chart as follows:
YELLOW: 100%Y 6%M 3%C
MAGENTA: 41 %Y 100%M 10%C
CYAN: 16%Y 37%M 100%C
The equations in step 706 and 710 present techniques for handling negative values for MF and CF when they occur. As those skilled in the art will appreciate, the final density values for inks can sometimes present a negative value which occurs because of the contaminant levels. These equations present an effective way for dealing with this problem. For example, if MF = -0.25 in the step 706 equation for YF, then the value of YF is reduced by an amount correlated with the contaminant level of magenta in the yellow ink. Similarly, the final values for CF, MF and again for YF are recalculated also in step 706 and 710.
After completion of the set up steps illustrated in Fig. 7A the program then performs cyan, magenta and yellow correction steps illustrated in Figs.
7B-C. In steps 728 and 729 of Fig. 7D, the program determines whether cyan final density is sufficiently low to eliminate the need for recalculating yellow or magenta contributions to cyan. If the answer both step 728, 729 are yes, the program moves to magenta correction. If the answer to both these steps are no, step 736 defines the interim variable XYCC according to the formula illustrated. Step 731 then asks whether XYCC is less than 1. If yes, step 732 sets this variable equal to 1. If no, step 733 asks whether variable XYCC is greater than 2, and, if yes, step 734 sets XYCC equal to 2. If the answer in step 733 is no or after step 734, step 735 recalculates the yellow contribution to cyan.
Step 736 again asks whether cyan final density is less than or equal to yellow contribution to cyan (YCC) since recalculation of YCC in step 735. If the answer is no, step 737 defines interim variable XMCC as shown. Step 738 then asks whether this variable is less than 1 and if so, sets XMCC equal to 1 in step 739. If the answer in step 738 is no or after step 739, step 740 asks whether XMCC is greater than 2 and, if so, sets XMCC equal
to 2 in step 741. If the answer in step 740 is no, or after step 741 , step 742 recalculates MCC as illustrated. If the answer in step 736 is yes, or after step 742, the program moves to magenta correction.
Steps 744-758 perform magenta correction in the same manner as steps 728-742 perform cyan correction except for the differences in the factors and variables illustrated. Similarly, for yellow correction, step 760- 774 also perform correction in the same manner except for the differences in factors and variables illustrated. After completion of yellow correction in step 774, variations 700 performs step 694-699 as illustrated in Fig. 6E in order to provide the RGB signals to the color monitor.
Having thus described the preferred embodiment of the present invention, the following is claimed as new and desired to be secured by Letters Patent:
Claims
1. A method of displaying a simulation image on a color monitor accurately simulating the color appearance of an original image created on a color monitor if the original image were printed and color corrected using coloring agents such as process inks, pigments, or dyes, each coloring agent exhibiting an agent color such as cyan, magenta or yellow corre¬ sponding to respective primary colors such as red, green or blue, each coloring agent providing contribution amounts of color to the other coloring agents said method comprising the methods of: receiving primary color signals in a signal processor representative of the primary colors of an original image creatable and displayable on a color monitor; converting said primary color signals into color corrected agent color density signals representative of the color densities required of selected coloring agents for creating a printable image of the said original image within the printing capabilities of said coloring agents, said converting step including the step compressing said primary color signals into the color capabilities of said coloring agents; determining display density data for each agent color as a function of corresponding coloring agent density and of the contribu¬ tion amounts to each agent color from each of the other coloring agents, said determining step including the step of recalculating said contribution amounts when the relative densities of said coloring agents fall within predetermined limits; and converting said display density data into corresponding primary color signals for displaying a simulation image on a color monitor simulating said printable image.
2. The method as set forth in claim 1, said receiving step including the step of receiving red, green and blue signals as said primary color signals.
3. The method as set forth in claim 1, said converting step including the step of converting said primary color signals into cyan, magenta and yellow as said color density signals.
4. The method as set forth in claim 1, said determining step including the step of determining said display density data for each agent color by adding the agent color for the corresponding coloring agent density and the contribution amounts to that agent color from each of the other coloring agents.
5. The method as set forth in claim 1, said recalculating step including the step of proportioning the contribution amount to each agent color between predetermined limits.
6. The method as set forth in claim 5, said proportioning step including the step of setting said predetermined limits between about 0.67 and 1.0.
7. The method as set forth in claim 5, further including the step of performing said recalculating step only if said respective relative densities are less than the factor 1.5 times the respective contribution amounts for all of the other coloring agents.
8. The method as set forth in claim 5, said calculating step including the step of proportioning the contribution amount to each agent color by a factor of about 1.5.
9. The method as set forth in claim 1, said determining step including the step of reducing the density data for each agent color if the corresponding coloring agent densities of the other agent colors present negative numerical values.
10. The method as set forth in claim 1, said converting step including the step of displaying said simulation image simulative of a printable image on paper, cloth, or a transparency.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US62719990A | 1990-12-13 | 1990-12-13 | |
US627,199 | 1990-12-13 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO1992010791A1 true WO1992010791A1 (en) | 1992-06-25 |
Family
ID=24513649
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/US1991/005575 WO1992010791A1 (en) | 1990-12-13 | 1991-08-06 | Apparatus and method for producing color corrected reproductions of colored original images |
Country Status (2)
Country | Link |
---|---|
AU (1) | AU8411491A (en) |
WO (1) | WO1992010791A1 (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0680200A2 (en) * | 1994-04-28 | 1995-11-02 | Xerox Corporation | A method of image presentation |
EP1205880A2 (en) | 2000-06-16 | 2002-05-15 | Dainichiseika Color & Chemicals Mfg. Co. Ltd. | Computer colour matching system, method and recording medium |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4468692A (en) * | 1981-09-16 | 1984-08-28 | Dainippon Screen Seizo Kabushiki Kaisha | Method for varying colors of a picture image, displayed in a color display, for reproducing a color printed matter |
US4482917A (en) * | 1981-03-11 | 1984-11-13 | Dr. Ing. Rudolf Hell Gmbh | Method for a reproduction of colored masters in four-color printing using color reduction |
US4573071A (en) * | 1982-06-08 | 1986-02-25 | Dainippon Screen Mfg. Co., Ltd. | Method and system for displaying a color image simulating a multi-color printed matter on a screen |
US4639770A (en) * | 1983-12-24 | 1987-01-27 | Dr. Ing. Rudolf Hell Gmbh | Method and circuit arrangement for simulating a multi-colored reproduction on a color monitor |
US4691229A (en) * | 1983-09-10 | 1987-09-01 | Dr. Ing. Rudolf Hell Gmbh | Apparatus for checking color pictures on a color monitor |
-
1991
- 1991-08-06 WO PCT/US1991/005575 patent/WO1992010791A1/en unknown
- 1991-08-06 AU AU84114/91A patent/AU8411491A/en not_active Abandoned
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4482917A (en) * | 1981-03-11 | 1984-11-13 | Dr. Ing. Rudolf Hell Gmbh | Method for a reproduction of colored masters in four-color printing using color reduction |
US4468692A (en) * | 1981-09-16 | 1984-08-28 | Dainippon Screen Seizo Kabushiki Kaisha | Method for varying colors of a picture image, displayed in a color display, for reproducing a color printed matter |
US4573071A (en) * | 1982-06-08 | 1986-02-25 | Dainippon Screen Mfg. Co., Ltd. | Method and system for displaying a color image simulating a multi-color printed matter on a screen |
US4691229A (en) * | 1983-09-10 | 1987-09-01 | Dr. Ing. Rudolf Hell Gmbh | Apparatus for checking color pictures on a color monitor |
US4639770A (en) * | 1983-12-24 | 1987-01-27 | Dr. Ing. Rudolf Hell Gmbh | Method and circuit arrangement for simulating a multi-colored reproduction on a color monitor |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0680200A2 (en) * | 1994-04-28 | 1995-11-02 | Xerox Corporation | A method of image presentation |
EP0680200A3 (en) * | 1994-04-28 | 1996-06-05 | Xerox Corp | A method of image presentation. |
US6078936A (en) * | 1994-04-28 | 2000-06-20 | Xerox Corporation | Presenting an image on a display as it would be presented by another image output device or on printing circuitry |
EP1205880A2 (en) | 2000-06-16 | 2002-05-15 | Dainichiseika Color & Chemicals Mfg. Co. Ltd. | Computer colour matching system, method and recording medium |
EP1205880A3 (en) * | 2000-06-16 | 2004-12-15 | Dainichiseika Color & Chemicals Mfg. Co. Ltd. | Computer colour matching system, method and recording medium |
US7148900B2 (en) | 2000-06-16 | 2006-12-12 | Danichisekia Color And Chemicals Mfg. Co., Ltd. | CCM calculating system, CCM calculating method and recording medium |
Also Published As
Publication number | Publication date |
---|---|
AU8411491A (en) | 1992-07-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP0483132B1 (en) | Apparatus and method for producing color corrected reproduction of coloured original images | |
US5452111A (en) | Methods and associated apparatus for forming image data metrics which achieve media compatibility for subsequent imaging applications | |
US4979032A (en) | Color imaging apparatus producing on various image receptive materials a visually matched hard copy reproduction of a video image displayed | |
EP0401365B1 (en) | Colour monitor for producing displays that visually match images as will be reproduced | |
EP0475554B1 (en) | Apparatus and method for colour calibration | |
US4958221A (en) | Digital color copying machine comprising a test mode for making a color adjustment | |
EP0356328B1 (en) | Tonal conversion method for pictures | |
US5121198A (en) | Method of setting the contrast of a color video picture in a computer controlled photographic film analyzing system | |
US6377330B1 (en) | Method for calibrating a photofinishing system and components for use in such a method | |
US4979031A (en) | Digital color copying machine | |
JPS5846341A (en) | Converting method for reproduced color in displaying of reproduced color of multicolor printed matter | |
JPH0223346A (en) | Image simulator | |
GB2222341A (en) | Producing print of colour monitor display | |
EP0054313B1 (en) | Colour image duplicating device and method | |
US5119182A (en) | Image forming apparatus comprising sample image printing mode and image forming method therefor | |
US4978226A (en) | Digital color copying machine for composing and controlling the color of a composed image | |
US5585927A (en) | Digital image forming apparatus having gradation characteristic setting means | |
JPH06324410A (en) | Method for generation of intermediate color negative by digital printer | |
US5841897A (en) | Method for the tonal control or adjustment of reproduced color image and picture producing system making use of said method | |
JPH06500679A (en) | How to generate multicolor halftone reproductions from continuous tone monochrome originals | |
EP0460187B1 (en) | Methods and associated apparatus for forming image data metrics which achieve media compatibility for subsequent imaging applications | |
US5406325A (en) | Method and apparatus for forming a source-independent image data metric from second generation photographic films | |
US7034966B1 (en) | System and method for performing intermediate image processing | |
WO1992010791A1 (en) | Apparatus and method for producing color corrected reproductions of colored original images | |
GB2240897A (en) | Color correction and printing system for reproduction of computer-generated images |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AK | Designated states |
Kind code of ref document: A1 Designated state(s): AU CA JP |
|
AL | Designated countries for regional patents |
Kind code of ref document: A1 Designated state(s): AT BE CH DE DK ES FR GB GR IT LU NL SE |
|
NENP | Non-entry into the national phase |
Ref country code: CA |