US20230281413A1 - Drop size monitoring mechanism - Google Patents
Drop size monitoring mechanism Download PDFInfo
- Publication number
- US20230281413A1 US20230281413A1 US17/684,252 US202217684252A US2023281413A1 US 20230281413 A1 US20230281413 A1 US 20230281413A1 US 202217684252 A US202217684252 A US 202217684252A US 2023281413 A1 US2023281413 A1 US 2023281413A1
- Authority
- US
- United States
- Prior art keywords
- data
- ink
- drop
- drop size
- fraction
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B41—PRINTING; LINING MACHINES; TYPEWRITERS; STAMPS
- B41J—TYPEWRITERS; SELECTIVE PRINTING MECHANISMS, i.e. MECHANISMS PRINTING OTHERWISE THAN FROM A FORME; CORRECTION OF TYPOGRAPHICAL ERRORS
- B41J2/00—Typewriters or selective printing mechanisms characterised by the printing or marking process for which they are designed
- B41J2/005—Typewriters or selective printing mechanisms characterised by the printing or marking process for which they are designed characterised by bringing liquid or particles selectively into contact with a printing material
- B41J2/01—Ink jet
- B41J2/015—Ink jet characterised by the jet generation process
- B41J2/04—Ink jet characterised by the jet generation process generating single droplets or particles on demand
- B41J2/045—Ink jet characterised by the jet generation process generating single droplets or particles on demand by pressure, e.g. electromechanical transducers
- B41J2/04501—Control methods or devices therefor, e.g. driver circuits, control circuits
- B41J2/0456—Control methods or devices therefor, e.g. driver circuits, control circuits detecting drop size, volume or weight
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K15/00—Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers
- G06K15/02—Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers using printers
- G06K15/18—Conditioning data for presenting it to the physical printing elements
- G06K15/1867—Post-processing of the composed and rasterized print image
- G06K15/1872—Image enhancement
- G06K15/1881—Halftoning
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B41—PRINTING; LINING MACHINES; TYPEWRITERS; STAMPS
- B41J—TYPEWRITERS; SELECTIVE PRINTING MECHANISMS, i.e. MECHANISMS PRINTING OTHERWISE THAN FROM A FORME; CORRECTION OF TYPOGRAPHICAL ERRORS
- B41J2/00—Typewriters or selective printing mechanisms characterised by the printing or marking process for which they are designed
- B41J2/005—Typewriters or selective printing mechanisms characterised by the printing or marking process for which they are designed characterised by bringing liquid or particles selectively into contact with a printing material
- B41J2/01—Ink jet
- B41J2/21—Ink jet for multi-colour printing
- B41J2/2121—Ink jet for multi-colour printing characterised by dot size, e.g. combinations of printed dots of different diameter
Definitions
- the invention relates to the field of image reproduction, and in particular, to performing ink drop size monitoring for a printing system.
- ink estimation methods may be implemented to estimate an amount of ink used to print a print job (e.g., ink usage) without needing to print the print job.
- This estimation typically uses ink drop sizes, along with the number of drops associated with each different ink drop size for the print job.
- the print system must typically be calibrated to maintain a factory-set response for the printer used to print the job data.
- the ink drop sizes may change.
- Current knowledge or control of ink drop sizes is needed so that other processes that use ink drop sizes remain accurate.
- a system in one embodiment, includes at least one physical memory device to store drop size logic and one or more processors coupled with the at least one physical memory device to execute the drop size logic to receive first ink usage drop fraction data for each of a plurality of color planes associated with a first halftone design, a first transfer function, and print job data, wherein ink usage drop fraction data represents the fraction of ink drops for each instructed drop size corresponding to each input digital count for a halftoning module, receive first ink drop size data for each of a plurality of color planes associated with the first halftone design and the first transfer function, receive second ink usage drop fraction data for each of the plurality of color planes associated with the first halftone design, a second transfer function and the print job data and generate second ink drop size data for each of the plurality of color planes based on the first ink usage drop fraction data, the first ink drop size data and the second ink usage drop fraction data.
- FIG. 1 is a block diagram of one embodiment of a printing system
- FIGS. 2 A& 2 B are block diagrams illustrating embodiment of a print controller
- FIG. 3 illustrates one embodiment of drop size monitor
- FIGS. 4 A & 4 B is a flow diagram illustrating one embodiment for performing a drop size monitoring process
- FIG. 5 illustrates one embodiment of drop size correction logic
- FIG. 6 is a flow diagram illustrating one embodiment of a process 600 for performing drop size correction.
- FIG. 7 illustrates one embodiment of a drop size monitor and drop size correction logic implemented in a network
- FIG. 8 illustrates one embodiment of a computer system.
- FIG. 1 is a block diagram illustrating one embodiment of a printing system 130 .
- a host system 110 is in communication with the printing system 130 to print a sheet image 120 onto a print medium 180 via a printer 160 (e.g., print engine).
- Print medium 180 may include paper, card stock, paper board, corrugated fiberboard, film, plastic, synthetic, textile, glass, composite or any other tangible medium suitable for printing.
- the format of print medium 180 may be continuous form or cut sheet or any other format suitable for printing.
- Printer 160 may be an ink jet, or another suitable printer type.
- printer 160 comprises one or more print heads 162 , each including one or more pel forming elements 165 that directly or indirectly (e.g., by transfer of marking material through an intermediary) forms the representation of picture elements (pels) on the print medium 180 with marking material applied to the print medium.
- the pel forming element 165 is a tangible device that ejects the ink onto the print medium 180 (e.g., an ink jet nozzle).
- pel forming elements may be grouped onto one or more printheads (e.g., printhead array).
- the pel forming elements 165 may be stationary (e.g., as part of a stationary printhead) or moving (e.g., as part of a printhead that moves across the print medium 180 ) as a matter of design choice.
- pel forming elements 165 may be assigned to one of one or more color planes that correspond to types of marking materials (e.g., Cyan, Magenta, Yellow, and blacK (CMYK)). These types of marking materials may be referred to as primary colors.
- Printer 160 may be a multi-pass printer (e.g., dual pass, 3 pass, 4 pass, etc.) wherein multiple sets of pel forming elements 165 print the same region of the print image on the print medium 180 .
- the set of pel forming elements 165 may be located on the same physical structure (e.g., an array of nozzles on an ink jet print head) or separate physical structures.
- the resulting print medium 180 may be printed in color and/or in any of a number of gray shades, including black and white (e.g., Cyan, Magenta, Yellow, and blacK, (CMYK) and secondary colors (e.g., Red, Green and Blue), obtained using a combination of two primary colors).
- the host system 110 may include any computing device, such as a personal computer, a server, or even a digital imaging device, such as a digital camera or a scanner.
- the sheet image 120 may be any file or data that describes how an image on a sheet of print medium 180 should be printed.
- the sheet image 120 may include PostScript data, Printer Command Language (PCL) data, and/or any other printer language data.
- the print controller 140 processes the sheet image to generate a bitmap 150 for transmission.
- the bitmap 150 contains the instructions (e.g., instructed ink drop size and/or location) for the one or more printheads 162 and pel forming elements 165 .
- Bitmap 150 may be a halftoned bitmap (e.g., a compensated halftone bit map generated from compensated halftones, or un-compensated halftone bit map generated from un-compensated halftones) for printing to the print medium 180 .
- the printing system 130 may be a high-speed printer operable to print relatively high volumes (e.g., greater than 100 pages per minute).
- the print medium 180 may be continuous form paper, cut sheet paper, and/or any other tangible medium suitable for printing.
- the printing system 130 in one generalized form, includes the printer 160 that presents the bitmap 150 onto the print medium 180 (e.g., via ink, etc.) based on the sheet image 120 .
- printer 160 may feature printer 160 as an independent device communicably coupled to print controller 140 .
- the print controller 140 may be any system, device, software, circuitry and/or other suitable component operable to transform the sheet image 120 for generating the bitmap 150 in accordance with printing onto the print medium 180 .
- the print controller 140 may include processing and data storage capabilities.
- measurement module 190 is implemented as part of a measurement system to obtain measurements of the printed medium 180 . The measured results are communicated to print controller 140 to be used in a compensation process (e.g., halftone calibration, uniformity, etc.).
- the measurement system may be a stand-alone process or be integrated into the printing system 130 .
- measurement module 190 may include a sensor to take optical measurements of printed images on print medium 180 .
- Measurement module 190 may generate and transmit measurement data.
- Measurement data may be OD (e.g., optical density), perceptual lightness (e.g., L* in the CIELAB color space L*a*b*) and/or scanned image (e.g., RGB) data corresponding to a printed image.
- measurement module 190 may comprise one or more sensors that individually or in total take measurements for printed markings produced for some or all pel forming elements 165 .
- measurement module 190 may be a camera system, in-line scanner, densitometer or spectrophotometer.
- measurement data may include map information to correlate portions of the measurement data (e.g., OD data) to the corresponding pel forming elements 165 that contributed to the portions of the measurement data.
- the print instructions for a test pattern e.g., step chart, test print job
- FIGS. 2 A& 2 B illustrate embodiments implementing print controllers 140 .
- FIG. 2 A illustrates a print controller 140 (e.g., DFE or digital front end), in its generalized form, including interpreter module 212 , halftoning module 214 , drop size monitor 230 and drop size correction logic 240
- FIG. 2 B illustrates an embodiment having print controllers 140 A& 140 B.
- print controller 140 A includes interpreter module 212 and halftoning module 214
- print controller 140 B includes drop size monitor 230 and drop size correction logic 240 .
- Print controllers 140 A and 140 B may be implemented in the same printing system 130 (as shown) or may be implemented separately.
- the interpreter module 212 is operable to interpret, render, rasterize, or otherwise convert images (e.g., raw sheetside images such as sheet image 120 ) of a print job into sheetside bitmaps.
- the sheetside bitmaps generated by the interpreter module 212 for each primary color are each a 2-dimensional array of pels representing an image of the print job (e.g., a Continuous Tone Image (CTI)), also referred to as full sheetside bitmaps.
- CTI Continuous Tone Image
- the 2-dimensional pel arrays are considered “full” sheetside bitmaps because the bitmaps include the entire set of pels for the image.
- the interpreter module 212 is operable to interpret or render multiple raw sheetsides concurrently so that the rate of rendering substantially matches the rate of imaging of production print engines.
- transfer functions may be implemented by print controller 140 and applied directly to image data as a part of the image processing prior to printing. In that case, the contone image data (CTI) is transformed by the transfer functions prior to halft
- Halftoning module 214 is operable to represent the sheetside bitmaps as halftone patterns of ink.
- halftoning module 214 may convert the pels (also known as pixels) to halftone patterns of CMYK ink for application to the paper.
- a halftone design may comprise a pre-defined mapping of input pel gray levels to output drop sizes (e.g., instructed ink drop sizes transmitted to printheads) based on pel location.
- the halftone design may include a finite set of transition thresholds between a finite collection of successively larger drop sizes, beginning with zero and ending with a maximum drop size.
- the halftone design may be implemented as threshold arrays (e.g., halftone threshold arrays) such as single bit threshold arrays or multibit threshold arrays.
- the halftone design may be implemented as a three-dimensional look-up table with all included gray level values.
- halftoning module 214 performs the multi-bit halftoning using the halftone design including a set of threshold values for each pel in the sheetside bitmap, where there is one threshold for each non-zero ink drop size.
- the pel is halftoned with the drop size corresponding to threshold values for that pel.
- the set of thresholds for a halftone design is referred to as a multi-bit threshold array (MTA).
- MTA multi-bit threshold array
- Multi-bit halftoning is a halftone screening operation in which the final result is a selection of a specific drop size available from an entire set of drop sizes that the print engine is capable of employing for printing.
- Drop size selection based on the contone value of a single pel is referred to as “Point Operation” halftoning.
- the drop size selection is based on the contone levels for each pel in the sheetside bitmap. This contrasts with “Neighborhood Operation” halftoning, where multiple pels in the vicinity of the pel being printed are used to determine the drop size.
- neighborhood operation halftoning include the well-known error diffusion method.
- Multi-bit halftoning is an extension of binary halftoning, where binary halftoning may use a single threshold array combined with a logical operation to decide if a drop is printed based on the contone level for a pel.
- Binary halftoning uses one non-zero drop size plus a zero drop size (e.g., a drop size of none where no ink is ejected).
- Multi-bit halftoning extends the binary threshold array concept to more than one non-zero drop size.
- Multi-bit halftoning may use multiple threshold arrays (e.g., multi-bit threshold arrays), one threshold array for each non-zero drop size.
- the point operation logic is also extended to a set of greater than and less than or equal to operations to determine the drop size by comparing the threshold and image contone data for each pel.
- Multi-bit defines a power of two set of drop sizes (e.g., two-bit halftone designs have four total drops, including a zero drop size). While power of two may be employed to define the number of drops, systems not following this such as a three total drop system may be used and are still considered multi-bit.
- the MTA is a three-dimensional array including one two-dimensional array for each drop size (e.g., instructed ink drop size) transition.
- an MTA includes a set of two-dimensional arrays of thresholds for transition between drop sizes: a first plane (or plane 1) provides the threshold for the Large output level, while a second plane (or plane 2) and third plane (or plane 3) provide thresholds for the Medium and Small output levels respectively for a system having three drop sizes, not including zero drop size (none or Off).
- each multibit threshold array is tiled across contone image data provided by the sheetside bitmap, which provides a set of threshold values for each pixel in the sheetmap.
- the contone image data e.g., digital count, gray level data
- the contone image data is logically compared to the threshold data on a pixel basis. In the case of Large drops, they are produced by the halftoning when the image contone data is greater than the respective large threshold values in plane 1.
- this set of four logical equations, used with thresholds from each plane of the multibit threshold array permit each printing drop size to be defined based on the contone values.
- the number of planes of threshold data can be extended to handle any number of drop sizes.
- the data of these two-dimensional arrays may be segmented into separate memory regions and stored in any convenient order.
- the thresholds for each drop size transition may be stored contiguously in memory, and it is often advantageous to do so.
- Drop size monitor 230 is implemented to determine monitored ink drop size data.
- drop size monitor 230 receives initial (or first) ink usage drop fraction data associated with a halftone design (or first halftone design), an initial (or first) transfer function and print job data; and initial (or first) ink drop size data for each of a plurality of color planes associated with a halftone design (or first halftone design) and an initial (or first) transfer function, receives monitored (or second) ink usage drop fraction data for each of the plurality of color planes associated with the halftone design (or first halftone design), an adjusted (or second) transfer function and the print job data and generates monitored (or second) ink drop size data for each of the plurality of color planes based on the first ink usage drop fraction data, the first ink drop size data and the second ink usage drop fraction data.
- ink usage drop fraction data represents the fraction of ink drops for each instructed drop size corresponding to each input digital count for a halftoning module.
- the first and second ink usage drop fraction data is generated for each of a plurality of digital count (DC) levels (e.g., gray levels) using the halftone design, corresponding transfer function and the print job data.
- drop size monitor 230 receives a message indicating one or more regions of interest to generate the monitored ink drop size data and generates the monitored ink drop size data for each of the one or more regions of interest.
- a region of interest may comprise a printhead, a printhead array or a pel forming element.
- a technical advantage of monitoring ink drop size for a region of interest rather than the entire print system is to identify the specific print system element (e.g., printhead, a printhead array or a pel forming element) that needs corrective action.
- drop size monitor 230 detects a difference between the initial (or first) drop size data and the monitored drop size data and determines whether the difference between the initial drop size data and the monitored drop size data exceeds a predetermined threshold.
- a technical advantage for detecting that a difference between drop size data exceeds a threshold is that this detection information indicates that corrective actions should be taken on the systems related to the ink drop sizes.
- FIG. 3 illustrates one embodiment of drop size monitor 230 .
- drop size monitor 230 includes a drop fraction generation engine 310 that is implemented to generate the initial ink usage drop fraction data.
- drop fraction generation engine 310 receives print job data 300 , halftone data 301 , initial ink drop size data 302 that represents quantitative ink drop amounts corresponding to each instructed ink drop size, initial ink drop fraction data 303 (e.g., first ink usage drop fraction data) and/or an initial transfer function 304 . Additionally, drop fraction generation engine 310 receives region of interest data 305 (e.g., via GUI 250 ).
- ink drop size data may comprise a volume or a mass expressed in quantities of standardized units (e.g., metric system units such as grams or liters).
- the total number of drops of a specific drop size X at DC dropFraction_X(DC) * total number of pels in the region of interest.
- a transfer function comprises a mapping of an input digital count to an output digital count for a system.
- Drop fraction generation engine 310 uses halftone data 301 , initial transfer function 304 and print job data to generate the initial ink usage drop fraction data for a region of interest indicated in the region of interest data 305 .
- the region of interest may comprise a region associated with a single printhead 162 , an array of printheads 162 , a single pel forming element 165 or a set of pel forming elements 165 .
- drop fraction generation engine 310 generates the initial ink usage drop fraction data by processing a synthetic job (e.g., print job or test print job data) using halftone data 301 and initial transfer function 304 .
- the synthetic job comprises a constant tint level for each gray level available in the halftone design with the un-calibrated halftone design to count the number of drops of each instructed size (e.g., None, Small, Medium or Large), for each different tint level in the synthetic job.
- the synthetic job used for the drop fraction analysis has the same tint levels for each pel of the image and includes images for each gray level, where the size of the images in the job matches the print size of the region of interest (e.g., if the region of interest is a printhead, the image is sized to print the pel forming elements of the printhead).
- the synthetic job may consist of 256 images, each image having the same gray level for all the pels in the image, where each different image is generated using a different gray level.
- the gray levels range from zero to level 255 .
- the size of each image is the same as the region of interest.
- the region of interest relates physical elements such as nozzle, printhead or printhead array.
- the drop fractions are determined for the pel forming elements corresponding to the region of interest, specifically the columns in the threshold array that are employed when printing the region of interest.
- the synthetic image is aligned such that the pel forming elements comprising the region of interest are used.
- the initial ink usage drop fraction data comprises an initial ink usage drop fraction matrix (Z 0 ) for an initial halftone threshold array and an initial ink drop size vector (v 0 ) (note that this may alternatively be called a matrix), as represented by:
- Z 0 z 0 0 , 0 ⁇ z 0 0 , D ⁇ 1 ⁇ ⁇ ⁇ z 0 P ⁇ 1 , 0 ⁇ z 0 P ⁇ 1 , D ⁇ 1 ;
- the initial ink usage drop fraction matrix comprises a set of Z 0 p,d matrix elements, each corresponding to a digital count level (p) and instructed ink drop size (d).
- each element is associated with a digital count level (p) and an instructed drop size d.
- digital count e.g., is the gray level or color value for the different images in the synthetic image job.
- Bitdepth defines the number of available levels as a power of two. In the previously cited example, the bitdepth is 8, producing 256 total images in the synthetic image job used to determine drop fractions.
- Index p ranges from zero to P-1, where P is the total number of digital count levels.
- Index d ranges from zero to D-1, where D is the total number of instructed ink drop sizes, not including the ink drop size none.
- the ink drop size column vector v 0 comprises ink amount values (e.g., ⁇ 0 - ⁇ D-1 ) associated with each of the plurality of instructed ink drop sizes in the initial drop size matrix.
- the drop amounts ⁇ 0 - ⁇ D-1 are known (e.g., experimentally pre-determined).
- Drop fraction generation engine 310 also generates the monitored ink usage drop fraction data based on the halftone data 301 , an adjusted transfer functions 306 and the print job data (e.g., test job, synthetic job).
- drop fraction generation engine 310 counts the number of drops and determines drop fractions of each instructed drop size (e.g., at each digital count) for one or more specified regions of interest by processing the print job data (e.g., test job, synthetic job data) with the halftone data 301 and the adjusted (e.g., compensated) transfer functions represented by adjusted transfer function 306 (e.g., second transfer function or compensated transfer function).
- the adjusted transfer function is used to restore a target factory-set response as printer 160 is used to print the print job data.
- a target linear optical density (OD) response may be maintained. Therefore, the initial transfer functions and the adjusted transfer functions have been determined using a calibration process to achieve the same linear optical density response using the same Dmax value.
- Dmax represents the OD at level (2 ⁇ bitdepth)-1.
- the monitored ink usage drop fraction data comprises monitored ink usage drop fraction matrix (Z) for the initial threshold array with the adjusted transfer function 306 applied to the levels in the synthetic image, generated by calibrating the initial threshold array to the same calibrated response as the initial threshold array .
- the monitored ink usage drop size vector (v) is to be determined. (Z) and (v) are represented by:
- the monitored ink usage drop fraction matrix is comprised of a set of Z p,d elements, each corresponding to a different digital count level (p) and different instructed ink drop size (d), where P is the total number of digital count levels in the synthetic image job and D is the total number of instructed ink drop sizes, not including the none drop size.
- the monitored ink drop size column vector, v comprises unknown ink drop size values (e.g., v 0 - v D-1 ) associated with each of the plurality of drop sizes in the monitored ink usage drop fraction matrix. Therefore, each individual new estimate for the unknown ink usage drop fraction vector elements will have a corresponding value in the original column vector.
- the vector of new drop sizes v reflects the impact of the recalibration that was performed to achieve the same calibrated printer response associated with v 0 .
- changes to drop fraction are due to changes in halftone design and/or changes to the calibration Transfer Functions (TF).
- TF calibration Transfer Functions
- the impact of the calibration TFs in this case will modify synthetic image print job data and consequently modify the ink drop fractions.
- the initial and the drop size monitored threshold arrays are both calibrated and each one has an associated adjusted transfer function.
- the synthetic job drop fractions are determined with the respective transfer functions applied to the image data and using the two different threshold arrays.
- the described method applies to systems that are calibrated (e.g., employing calibrated halftones or halftones with transfer functions or calibrated halftones and transfer functions).
- the requirement is that the drop fractions reflect the impact of halftone design changes and transfer functions.
- the transfer function in this case would be applied to all of the pels in the image data for the synthetic image job that is analyzed.
- the analysis is performed using the initial threshold array and its respective transfer function to determine the Z 0 drop fractions and the drop fractions for the Z matrix are determined using the drop size monitored threshold array and its respective transfer function.
- the different digital count levels p refer to the digital count levels in the synthetic job prior to applying the transfer functions. Therefore, we have a matching set of synthetic images to analyze having the same number of levels and drop sizes in the Z 0 and Z drop fraction matrices.
- Drop size monitor also includes drop size generation logic 320 that is implemented to determine monitored ink drop size data (e.g., current ink drop size data or second ink drop size data) for one or more specified regions of interest based on the initial ink usage drop fraction data and monitored ink usage drop fraction data generated at drop fraction generation engine 310 , as well as initial ink drop size data 302 . Since constant ink deposition (ink amount per unit area) in a calibrated printer is known to produce the same printed OD, and ink deposition for each digital count level is constant for the same printed job, drop size generation logic 320 may generate the monitored ink drop size data from the monitored ink usage drop fraction data, initial ink usage drop fraction data and initial ink drop size data 302 .
- monitored ink drop size data e.g., current ink drop size data or second ink drop size data
- a # (A T A) -1 A T for a rectangular matrix A)
- v ⁇ denotes the estimated value of the drop size column vector v.
- the digital count levels are the initial synthetic chart levels prior to applying transfer functions if transfer functions are used.
- This provides an estimate for a new set of monitored drop sizes v ⁇ . Since v ⁇ is a vector, this provides an estimate for each one of the individual drop sizes in a multibit system.
- the determined drop sizes are specific to the region of interest.
- the sizes of the images of the synthetic job to match the size of the region of interest.
- the size of both the initial ink usage drop fraction matrix and the monitored ink usage drop fraction matrix match the size of the region of interest.
- the location of the regions of interest are selected to match the pel forming elements that are to be considered for drop size determination.
- the synthetic image can be padded (e.g., insert zero level values for pels beyond the size of the region of interest) and the drop fraction are effectively the same size as the region of interest for these calculations. The pels in the unpadded region are then used to determine drop fractions with this method.
- Drop size monitor 230 also includes drop size difference determination logic 330 that determines a difference between the initial ink drop size data and the generated monitored ink drop size data. Drop size difference determination logic 330 may also determine whether the difference between the initial ink drop size data and the generated monitored ink drop size data is greater than a threshold 306 . The drop size differences may be determined for each of the instructed drop sizes (the instructed size none may be ignored) using the drop size data that corresponds to the instructed drop sizes. In one embodiment, a message may be transmitted upon a determination that the difference between the initial ink drop size data and the generated monitored ink drop size data is greater than threshold 306 .
- FIGS. 4 A & 4 B is a flow diagram illustrating one embodiment of a process 400 for performing a drop size monitoring process.
- Process 400 may be performed by processing logic that may include hardware (e.g., circuitry, dedicated logic, programmable logic, microcode, etc.), software such as instructions run on a processing device, or a combination thereof.
- processing logic may include hardware (e.g., circuitry, dedicated logic, programmable logic, microcode, etc.), software such as instructions run on a processing device, or a combination thereof.
- process 400 is performed by drop size monitor 230 .
- the halftone data 301 is received.
- the initial transfer function 304 are received.
- initial drop fraction data 303 is received which includes the impact of initial transfer function 304 .
- region of interest data 305 is received.
- initial ink drop size data 302 is received.
- initial ink usage drop fraction data is generated for each digital count level using the halftone data 301 , the initial transfer functions 304 and the print job data. As discussed above, the initial ink drop size data may be generated for one or more regions of interest specified in the region of interest data 305 .
- the adjusted transfer functions 306 are received.
- the monitored ink usage drop fraction data is generated for each digital count level using the halftone data 301 or a calibrated version of 301 , the adjusted transfer functions 306 and the print job data (e.g., for the one or more regions of interest).
- the monitored ink drop size data is generated for the one or more regions of interest based on the initial ink usage drop fraction data, initial ink drop size data and the monitored ink usage drop fraction data.
- a difference is determined between the initial ink drop size data and the monitored ink drop size data.
- decision block 485 a determination is made as to whether the difference between the initial ink drop size data and the monitored ink drop size data is greater than the threshold 307 . Threshold 307 may be received (e.g., via GUI 250 ). If the difference is greater than the threshold, a message is generated (processing block 490 ) prior to transmitting the message (processing block 495 ) and the monitored drop size data. Otherwise, only the monitored ink drop size data is transmitted. Printer 160 may receive the message and in response perform corrective actions.
- the message and monitored ink drop size data is transmitted to drop size correction logic 240 that is implemented to perform an ink drop size correction process.
- drop size correction logic 240 performs an ink drop size correction process to adjust drop sizes upon receiving the message and data from drop size correction logic 240 indicating that the difference between the initial drop size data and the monitored drop size data exceeds the predetermined threshold.
- a technical advantage of process 400 is computationally efficiency and avoidance of iterations versus conventional means.
- FIG. 5 illustrates one embodiment of drop size correction logic 240 , including drop size adjustment engine 510 .
- drop size adjustment engine 510 receives drop size difference data 501 generated at drop size difference determination logic 330 , as well as printhead voltage data 502 (e.g., received via GUI 250 ) and computes a printhead voltage adjustment based on the drop size difference data 501 and printhead voltage data 502 for the regions of interest.
- drop size adjustment engine 510 performs adjustments that are driven by a drop size difference ( ⁇ v) between the new drop size (e.g., indicated by the monitored drop size data) and original drop size (e.g., indicated by the initial drop size data).
- a voltage difference ( ⁇ u) e.g., printhead voltage adjustment data
- ⁇ printhead driver voltage gain
- the Bang-bang control law may be implemented to compute perform an adjustment.
- FIG. 6 is a flow diagram illustrating one embodiment of a process 600 for performing drop size correction.
- Process 600 may be performed by processing logic that may include hardware (e.g., circuitry, dedicated logic, programmable logic, microcode, etc.), software such as instructions run on a processing device, or a combination thereof.
- processing logic may include hardware (e.g., circuitry, dedicated logic, programmable logic, microcode, etc.), software such as instructions run on a processing device, or a combination thereof.
- process 600 is performed by drop size adjustment engine.
- drop size difference data 501 is received (e.g., from drop size correction logic 240 ).
- printhead voltage data 502 is received.
- printhead voltage adjustment data are computed based on the printhead voltage data and the drop size difference data.
- printhead voltage adjustment data are transmitted.
- Print system 130 may receive the transmitted printhead voltage adjustment data and apply them to the pel forming elements (e.g., via the printhead drivers that control the corresponding pel forming elements) in the regions of interest.
- a technical advantage of process 600 is computationally efficiency and the avoidance of iterations versus conventional means.
- FIG. 7 illustrates one embodiment of a drop size monitor 230 and drop size correction logic 240 implemented in a network 900 .
- drop size monitor 230 and drop size correction logic 240 are included within a computing system 910 and communicates with printing system 130 via a cloud network 950 .
- Printing system 130 receives monitored ink drop size data and message(s).
- FIG. 8 illustrates a computer system 1700 on which printing system 130 , print controller 140 , drop size monitor 230 and/or drop size correction logic 240 may be implemented.
- Computer system 1700 includes a system bus 1720 for communicating information, and a processor 1710 coupled to bus 1720 for processing information.
- Computer system 1700 further comprises a random-access memory (RAM) or other dynamic storage device 1725 (referred to herein as main memory), coupled to bus 1720 for storing information and instructions to be executed by processor 1710 .
- Main memory 1725 also may be used for storing temporary variables or other intermediate information during execution of instructions by processor 1710 .
- Computer system 1700 also may include a read only memory (ROM) and or other static storage device 1726 coupled to bus 1720 for storing static information and instructions used by processor 1710 .
- ROM read only memory
- a data storage device 1727 such as a magnetic disk or optical disc and its corresponding drive may also be coupled to computer system 1700 for storing information and instructions.
- Computer system 1700 can also be coupled to a second I/O bus 1750 via an I/O interface 1730 .
- a plurality of I/O devices may be coupled to I/O bus 1750 , including a display device 1724 , an input device (e.g., an alphanumeric input device 1723 and or a cursor control device 1722 ).
- the communication device 1721 is for accessing other computers (servers or clients).
- the communication device 1721 may comprise a modem, a network interface card, or other well-known interface device, such as those used for coupling to Ethernet, token ring, or other types of networks.
- Embodiments of the invention may include various steps as set forth above.
- the steps may be embodied in machine-executable instructions.
- the instructions can be used to cause a general-purpose or special-purpose processor to perform certain steps.
- these steps may be performed by specific hardware components that contain hardwired logic for performing the steps, or by any combination of programmed computer components and custom hardware components.
- Elements of the present invention may also be provided as a machine-readable medium for storing the machine-executable instructions.
- the machine-readable medium may include, but is not limited to, floppy diskettes, optical disks, CD-ROMs, and magneto-optical disks, ROMs, RAMs, EPROMs, EEPROMs, magnetic or optical cards, propagation media or other type of media/machine-readable medium suitable for storing electronic instructions.
- the present invention may be downloaded as a computer program which may be transferred from a remote computer (e.g., a server) to a requesting computer (e.g., a client) by way of data signals embodied in a carrier wave or other propagation medium via a communication link (e.g., a modem or network connection).
- a remote computer e.g., a server
- a requesting computer e.g., a client
- a communication link e.g., a modem or network connection
- Example 1 includes a system comprising at least one physical memory device to store drop size logic and one or more processors coupled with the at least one physical memory device, to execute the drop size logic to receive first ink usage drop fraction data for each of a plurality of color planes associated with a first halftone design, a first transfer function, and print job data, wherein ink usage drop fraction data represents the fraction of ink drops for each instructed drop size corresponding to each input digital count for a halftoning module, receive first ink drop size data for each of a plurality of color planes associated with the first halftone design and the first transfer function, receive second ink usage drop fraction data for each of the plurality of color planes associated with the first halftone design, a second transfer function and the print job data and generate second ink drop size data for each of the plurality of color planes based on the first ink usage drop fraction data, the first ink drop size data and the second ink usage drop fraction data
- Example 2 includes the subject matter of Example 1, wherein the second ink usage drop fraction data is generated for each of a plurality of digital count levels based on the first halftone design, the second transfer function and the print job data.
- Example 3 includes the subject matter of Examples 1 and 2, wherein the first ink usage drop fraction data is generated based on the first halftone design, the first transfer function, and the print job data.
- Example 4 includes the subject matter of Examples 1-3, wherein the transfer functions transform the input digital counts to achieve a target output response.
- Example 5 includes the subject matter of Examples 1-4, wherein the drop size logic generates the second ink drop size data for a region of interest based on the first ink usage drop fraction data for the region of interest, the first ink drop size data for the region of interest and the second ink usage drop fraction data for the region of interest.
- Example 6 includes the subject matter of Examples 1-5, wherein a region of interest comprises at least one of a printhead, a printhead array and a pel forming element.
- Example 7 includes the subject matter of Examples 1-6, wherein the ink drop size logic detects a difference between the first ink drop size data and the second ink drop size data and determines whether the difference between the first ink drop size data and the second ink drop size data exceeds a predetermined threshold.
- Example 8 includes the subject matter of Examples 1-7, wherein the ink drop size logic initiates an ink drop size correction process upon determining that the difference between the first drop size data and the second ink drop size data exceeds the predetermined threshold.
- Example 9 includes the subject matter of Examples 1-8, wherein the ink drop size correction process adjusts instructed ink drop sizes by adjusting an associated printhead driver voltage.
- Example 10 includes the subject matter of Examples 1-9, further comprising a printer.
- Example 11 includes a method comprising receiving first ink usage drop fraction data for each of a plurality of color planes associated with a first halftone design, a first transfer function, and print job data, wherein ink usage drop fraction data represents the fraction of ink drops for each instructed drop size corresponding to each input digital count for a halftoning module, receiving first ink drop size data for each of a plurality of color planes associated with the first halftone design and the first transfer function, receiving second ink usage drop fraction data for each of the plurality of color planes associated with the first halftone design, a second transfer function and the print job data and generating second ink drop size data for each of the plurality of color planes based on the first ink usage drop fraction data, the first ink drop size data and the second ink usage drop fraction data.
- Example 13 includes the subject matter of Examples 11 and 12, wherein the first ink usage drop fraction data is generated based on the first halftone design, the first transfer function, and the print job data.
- Example 14 includes the subject matter of Examples 11-13, further comprising generating the second ink drop size data for a region of interest based on the first ink usage drop fraction data for the region of interest, the first ink drop size data for the region of interest and the second ink usage drop fraction data for the region of interest.
- Example 15 includes the subject matter of Examples 11-14, wherein a region of interest comprises at least one of a printhead, a printhead array and a pel forming element.
- Example 16 includes at least one computer readable medium having instructions stored thereon, which when executed by one or more processors, cause the processors to receive first ink usage drop fraction data for each of a plurality of color planes associated with a first halftone design, a first transfer function, and print job data, wherein ink usage drop fraction data represents the fraction of ink drops for each instructed drop size corresponding to each input digital count for a halftoning module, receive first ink drop size data for each of a plurality of color planes associated with the first halftone design and the first transfer function, receive second ink usage drop fraction data for each of the plurality of color planes associated with the first halftone design, a second transfer function and the print job data and generate second ink drop size data for each of the plurality of color planes based on the first ink usage drop fraction data, the first ink drop size data and the second ink usage drop fraction data.
- Example 17 includes the subject matter of Example 16, wherein the second ink usage drop fraction data is generated for each of a plurality of digital count levels based on the first halftone design, the second transfer function and the print job data.
- Example 18 includes the subject matter of Examples 16 and 17, wherein the first ink usage drop fraction data is generated based on the first halftone design, the first transfer function, and the print job data.
- Example 19 includes the subject matter of Examples 16-18, having instructions stored thereon, which when executed by one or more processors, further cause the processors to generate the second ink drop size data for a region of interest based on the first ink usage drop fraction data for the region of interest, the first ink drop size data for the region of interest and the second ink usage drop fraction data for the region of interest.
- Example 20 includes the subject matter of Examples 16-19, wherein a region of interest comprises at least one of a printhead, a printhead array and a pel forming element.
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Ink Jet (AREA)
Abstract
A system is disclosed. The system includes at least one physical memory device to store drop size logic and one or more processors coupled with the at least one physical memory device to execute the drop size logic to receive first ink usage drop fraction data for each of a plurality of color planes associated with a first halftone design, a first transfer function, and print job data, wherein ink usage drop fraction data represents the fraction of ink drops for each instructed drop size corresponding to each input digital count for a halftoning module, receive first ink drop size data for each of a plurality of color planes associated with the first halftone design and the first transfer function, receive second ink usage drop fraction data for each of the plurality of color planes associated with the first halftone design, a second transfer function and the print job data and generate second ink drop size data for each of the plurality of color planes based on the first ink usage drop fraction data, the first ink drop size data and the second ink usage drop fraction data.
Description
- The invention relates to the field of image reproduction, and in particular, to performing ink drop size monitoring for a printing system.
- In commercial and transactional printers, it is common to estimate ink usage to determine one of the major components of the cost to print a job with an ink jet printer. Currently, ink estimation methods may be implemented to estimate an amount of ink used to print a print job (e.g., ink usage) without needing to print the print job. This estimation typically uses ink drop sizes, along with the number of drops associated with each different ink drop size for the print job.
- However, over time the print system must typically be calibrated to maintain a factory-set response for the printer used to print the job data. As a result of calibration, the ink drop sizes may change. Current knowledge or control of ink drop sizes is needed so that other processes that use ink drop sizes remain accurate.
- Accordingly, a mechanism to monitor and adjust ink drop sizes is desired.
- In one embodiment, a system is disclosed. The system includes at least one physical memory device to store drop size logic and one or more processors coupled with the at least one physical memory device to execute the drop size logic to receive first ink usage drop fraction data for each of a plurality of color planes associated with a first halftone design, a first transfer function, and print job data, wherein ink usage drop fraction data represents the fraction of ink drops for each instructed drop size corresponding to each input digital count for a halftoning module, receive first ink drop size data for each of a plurality of color planes associated with the first halftone design and the first transfer function, receive second ink usage drop fraction data for each of the plurality of color planes associated with the first halftone design, a second transfer function and the print job data and generate second ink drop size data for each of the plurality of color planes based on the first ink usage drop fraction data, the first ink drop size data and the second ink usage drop fraction data.
- A better understanding of the present invention can be obtained from the following detailed description in conjunction with the following drawings, in which:
-
FIG. 1 is a block diagram of one embodiment of a printing system; -
FIGS. 2A&2B are block diagrams illustrating embodiment of a print controller; -
FIG. 3 illustrates one embodiment of drop size monitor; -
FIGS. 4A & 4B is a flow diagram illustrating one embodiment for performing a drop size monitoring process; -
FIG. 5 illustrates one embodiment of drop size correction logic; -
FIG. 6 is a flow diagram illustrating one embodiment of aprocess 600 for performing drop size correction. -
FIG. 7 illustrates one embodiment of a drop size monitor and drop size correction logic implemented in a network; and -
FIG. 8 illustrates one embodiment of a computer system. - An ink drop size monitoring and adjustment mechanism is described. In the following description, for the purposes of explanation, numerous specific details are set forth to provide a thorough understanding of the present invention. It will be apparent, however, to one skilled in the art that the present invention may be practiced without some of these specific details. In other instances, well-known structures and devices are shown in block diagram form to avoid obscuring the underlying principles of the present invention.
- Reference in the specification to “one embodiment” or “an embodiment” means that a particular feature, structure, or characteristic described in connection with the embodiment is included in at least one embodiment of the invention. The appearances of the phrase “in one embodiment” in various places in the specification are not necessarily all referring to the same embodiment.
-
FIG. 1 is a block diagram illustrating one embodiment of aprinting system 130. Ahost system 110 is in communication with theprinting system 130 to print asheet image 120 onto aprint medium 180 via a printer 160 (e.g., print engine).Print medium 180 may include paper, card stock, paper board, corrugated fiberboard, film, plastic, synthetic, textile, glass, composite or any other tangible medium suitable for printing. The format ofprint medium 180 may be continuous form or cut sheet or any other format suitable for printing.Printer 160 may be an ink jet, or another suitable printer type. - In one embodiment,
printer 160 comprises one ormore print heads 162, each including one or morepel forming elements 165 that directly or indirectly (e.g., by transfer of marking material through an intermediary) forms the representation of picture elements (pels) on theprint medium 180 with marking material applied to the print medium. In an ink jet printer, thepel forming element 165 is a tangible device that ejects the ink onto the print medium 180 (e.g., an ink jet nozzle). - According to one embodiment, pel forming elements may be grouped onto one or more printheads (e.g., printhead array). The
pel forming elements 165 may be stationary (e.g., as part of a stationary printhead) or moving (e.g., as part of a printhead that moves across the print medium 180) as a matter of design choice. In a further embodiment,pel forming elements 165 may be assigned to one of one or more color planes that correspond to types of marking materials (e.g., Cyan, Magenta, Yellow, and blacK (CMYK)). These types of marking materials may be referred to as primary colors. -
Printer 160 may be a multi-pass printer (e.g., dual pass, 3 pass, 4 pass, etc.) wherein multiple sets ofpel forming elements 165 print the same region of the print image on theprint medium 180. In such an embodiment, the set ofpel forming elements 165 may be located on the same physical structure (e.g., an array of nozzles on an ink jet print head) or separate physical structures. Theresulting print medium 180 may be printed in color and/or in any of a number of gray shades, including black and white (e.g., Cyan, Magenta, Yellow, and blacK, (CMYK) and secondary colors (e.g., Red, Green and Blue), obtained using a combination of two primary colors). Thehost system 110 may include any computing device, such as a personal computer, a server, or even a digital imaging device, such as a digital camera or a scanner. - The
sheet image 120 may be any file or data that describes how an image on a sheet ofprint medium 180 should be printed. For example, thesheet image 120 may include PostScript data, Printer Command Language (PCL) data, and/or any other printer language data. Theprint controller 140 processes the sheet image to generate abitmap 150 for transmission. Thebitmap 150 contains the instructions (e.g., instructed ink drop size and/or location) for the one ormore printheads 162 andpel forming elements 165. Bitmap 150 may be a halftoned bitmap (e.g., a compensated halftone bit map generated from compensated halftones, or un-compensated halftone bit map generated from un-compensated halftones) for printing to theprint medium 180. Theprinting system 130 may be a high-speed printer operable to print relatively high volumes (e.g., greater than 100 pages per minute). - The
print medium 180 may be continuous form paper, cut sheet paper, and/or any other tangible medium suitable for printing. Theprinting system 130, in one generalized form, includes theprinter 160 that presents thebitmap 150 onto the print medium 180 (e.g., via ink, etc.) based on thesheet image 120. Although shown as a component ofprinting system 130, other embodiments may featureprinter 160 as an independent device communicably coupled toprint controller 140. - The
print controller 140 may be any system, device, software, circuitry and/or other suitable component operable to transform thesheet image 120 for generating thebitmap 150 in accordance with printing onto theprint medium 180. In this regard, theprint controller 140 may include processing and data storage capabilities. In one embodiment,measurement module 190 is implemented as part of a measurement system to obtain measurements of the printedmedium 180. The measured results are communicated to printcontroller 140 to be used in a compensation process (e.g., halftone calibration, uniformity, etc.). The measurement system may be a stand-alone process or be integrated into theprinting system 130. - According to one embodiment,
measurement module 190 may include a sensor to take optical measurements of printed images onprint medium 180.Measurement module 190 may generate and transmit measurement data. Measurement data may be OD (e.g., optical density), perceptual lightness (e.g., L* in the CIELAB color space L*a*b*) and/or scanned image (e.g., RGB) data corresponding to a printed image. In one embodiment,measurement module 190 may comprise one or more sensors that individually or in total take measurements for printed markings produced for some or allpel forming elements 165. In another embodiment,measurement module 190 may be a camera system, in-line scanner, densitometer or spectrophotometer. - In a further embodiment, measurement data may include map information to correlate portions of the measurement data (e.g., OD data) to the corresponding
pel forming elements 165 that contributed to the portions of the measurement data. In another embodiment, the print instructions for a test pattern (e.g., step chart, test print job) provides the correlation of the portions of the measurement data to the corresponding pel forming elements that contributed to the portions of the measurement data. -
FIGS. 2A&2B illustrate embodiments implementingprint controllers 140.FIG. 2A illustrates a print controller 140 (e.g., DFE or digital front end), in its generalized form, includinginterpreter module 212,halftoning module 214,drop size monitor 230 and dropsize correction logic 240, whileFIG. 2B illustrates an embodiment having print controllers 140A&140B. In this embodiment,print controller 140A includesinterpreter module 212 andhalftoning module 214, andprint controller 140B includesdrop size monitor 230 and dropsize correction logic 240.Print controllers - The
interpreter module 212 is operable to interpret, render, rasterize, or otherwise convert images (e.g., raw sheetside images such as sheet image 120) of a print job into sheetside bitmaps. The sheetside bitmaps generated by theinterpreter module 212 for each primary color are each a 2-dimensional array of pels representing an image of the print job (e.g., a Continuous Tone Image (CTI)), also referred to as full sheetside bitmaps. The 2-dimensional pel arrays are considered “full” sheetside bitmaps because the bitmaps include the entire set of pels for the image. Theinterpreter module 212 is operable to interpret or render multiple raw sheetsides concurrently so that the rate of rendering substantially matches the rate of imaging of production print engines. In one embodiment, transfer functions may be implemented byprint controller 140 and applied directly to image data as a part of the image processing prior to printing. In that case, the contone image data (CTI) is transformed by the transfer functions prior to halftoning. -
Halftoning module 214 is operable to represent the sheetside bitmaps as halftone patterns of ink. For example,halftoning module 214 may convert the pels (also known as pixels) to halftone patterns of CMYK ink for application to the paper. A halftone design may comprise a pre-defined mapping of input pel gray levels to output drop sizes (e.g., instructed ink drop sizes transmitted to printheads) based on pel location. - In one embodiment, the halftone design may include a finite set of transition thresholds between a finite collection of successively larger drop sizes, beginning with zero and ending with a maximum drop size. The halftone design may be implemented as threshold arrays (e.g., halftone threshold arrays) such as single bit threshold arrays or multibit threshold arrays. In another embodiment, the halftone design may be implemented as a three-dimensional look-up table with all included gray level values.
- In a further embodiment,
halftoning module 214 performs the multi-bit halftoning using the halftone design including a set of threshold values for each pel in the sheetside bitmap, where there is one threshold for each non-zero ink drop size. The pel is halftoned with the drop size corresponding to threshold values for that pel. The set of thresholds for a halftone design is referred to as a multi-bit threshold array (MTA). - Multi-bit halftoning is a halftone screening operation in which the final result is a selection of a specific drop size available from an entire set of drop sizes that the print engine is capable of employing for printing. Drop size selection based on the contone value of a single pel is referred to as “Point Operation” halftoning. The drop size selection is based on the contone levels for each pel in the sheetside bitmap. This contrasts with “Neighborhood Operation” halftoning, where multiple pels in the vicinity of the pel being printed are used to determine the drop size. Examples of neighborhood operation halftoning include the well-known error diffusion method.
- Multi-bit halftoning is an extension of binary halftoning, where binary halftoning may use a single threshold array combined with a logical operation to decide if a drop is printed based on the contone level for a pel. Binary halftoning uses one non-zero drop size plus a zero drop size (e.g., a drop size of none where no ink is ejected). Multi-bit halftoning extends the binary threshold array concept to more than one non-zero drop size.
- Multi-bit halftoning may use multiple threshold arrays (e.g., multi-bit threshold arrays), one threshold array for each non-zero drop size. The point operation logic is also extended to a set of greater than and less than or equal to operations to determine the drop size by comparing the threshold and image contone data for each pel. Multi-bit defines a power of two set of drop sizes (e.g., two-bit halftone designs have four total drops, including a zero drop size). While power of two may be employed to define the number of drops, systems not following this such as a three total drop system may be used and are still considered multi-bit.
- For multi-bit halftones, the MTA is a three-dimensional array including one two-dimensional array for each drop size (e.g., instructed ink drop size) transition. Thus, an MTA includes a set of two-dimensional arrays of thresholds for transition between drop sizes: a first plane (or plane 1) provides the threshold for the Large output level, while a second plane (or plane 2) and third plane (or plane 3) provide thresholds for the Medium and Small output levels respectively for a system having three drop sizes, not including zero drop size (none or Off).
- To use these threshold arrays for halftoning, each multibit threshold array is tiled across contone image data provided by the sheetside bitmap, which provides a set of threshold values for each pixel in the sheetmap. The contone image data (e.g., digital count, gray level data) is logically compared to the threshold data on a pixel basis. In the case of Large drops, they are produced by the halftoning when the image contone data is greater than the respective large threshold values in plane 1.
- Medium drops are produced when the image contone data is greater than the medium drop plane 2 thresholds and the image contone data is less than or equal to the large drop thresholds in plane 1. Small drops are produced when the image contone data is greater than the small drop thresholds in plane 3 and the image contone data is less than or equal to the medium drop thresholds in plane 2.
- Finally, the off/none drop size occurs for cases when the contone image data is less than or equal to the small drop thresholds in plane 3. In this embodiment of a two-bit multibit printing system, this set of four logical equations, used with thresholds from each plane of the multibit threshold array permit each printing drop size to be defined based on the contone values.
- In other embodiments, the number of planes of threshold data can be extended to handle any number of drop sizes. The data of these two-dimensional arrays may be segmented into separate memory regions and stored in any convenient order. For example, the thresholds for each drop size transition may be stored contiguously in memory, and it is often advantageous to do so.
- Drop size monitor 230 is implemented to determine monitored ink drop size data. In one embodiment,
drop size monitor 230 receives initial (or first) ink usage drop fraction data associated with a halftone design (or first halftone design), an initial (or first) transfer function and print job data; and initial (or first) ink drop size data for each of a plurality of color planes associated with a halftone design (or first halftone design) and an initial (or first) transfer function, receives monitored (or second) ink usage drop fraction data for each of the plurality of color planes associated with the halftone design (or first halftone design), an adjusted (or second) transfer function and the print job data and generates monitored (or second) ink drop size data for each of the plurality of color planes based on the first ink usage drop fraction data, the first ink drop size data and the second ink usage drop fraction data. In such an embodiment, ink usage drop fraction data represents the fraction of ink drops for each instructed drop size corresponding to each input digital count for a halftoning module. - In a further embodiment, the first and second ink usage drop fraction data is generated for each of a plurality of digital count (DC) levels (e.g., gray levels) using the halftone design, corresponding transfer function and the print job data. In yet a further embodiment,
drop size monitor 230 receives a message indicating one or more regions of interest to generate the monitored ink drop size data and generates the monitored ink drop size data for each of the one or more regions of interest. In such an embodiment, a region of interest may comprise a printhead, a printhead array or a pel forming element. A technical advantage of monitoring ink drop size for a region of interest rather than the entire print system is to identify the specific print system element (e.g., printhead, a printhead array or a pel forming element) that needs corrective action. In still a further embodiment,drop size monitor 230 detects a difference between the initial (or first) drop size data and the monitored drop size data and determines whether the difference between the initial drop size data and the monitored drop size data exceeds a predetermined threshold. A technical advantage for detecting that a difference between drop size data exceeds a threshold is that this detection information indicates that corrective actions should be taken on the systems related to the ink drop sizes. -
FIG. 3 illustrates one embodiment ofdrop size monitor 230. As shown inFIG. 3 ,drop size monitor 230 includes a dropfraction generation engine 310 that is implemented to generate the initial ink usage drop fraction data. In one embodiment, dropfraction generation engine 310 receivesprint job data 300,halftone data 301, initial ink drop size data 302 that represents quantitative ink drop amounts corresponding to each instructed ink drop size, initial ink drop fraction data 303 (e.g., first ink usage drop fraction data) and/or an initial transfer function 304. Additionally, dropfraction generation engine 310 receives region of interest data 305 (e.g., via GUI 250). - In embodiments, ink drop size data may comprise a volume or a mass expressed in quantities of standardized units (e.g., metric system units such as grams or liters). Ink drop fractions indicate a percentage of drops for each drop size at each gray level, such that a the total number of drops of a specific drop size X at DC = dropFraction_X(DC) * total number of pels in halftone array. Alternately for the region of interest drop fraction, the total number of drops of a specific drop size X at DC = dropFraction_X(DC) * total number of pels in the region of interest. Additionally, a transfer function comprises a mapping of an input digital count to an output digital count for a system.
- Drop
fraction generation engine 310 useshalftone data 301, initial transfer function 304 and print job data to generate the initial ink usage drop fraction data for a region of interest indicated in the region of interest data 305. As discussed above, the region of interest may comprise a region associated with asingle printhead 162, an array ofprintheads 162, a singlepel forming element 165 or a set ofpel forming elements 165. - In one embodiment, drop
fraction generation engine 310 generates the initial ink usage drop fraction data by processing a synthetic job (e.g., print job or test print job data) usinghalftone data 301 and initial transfer function 304. In this embodiment, the synthetic job comprises a constant tint level for each gray level available in the halftone design with the un-calibrated halftone design to count the number of drops of each instructed size (e.g., None, Small, Medium or Large), for each different tint level in the synthetic job. The synthetic job used for the drop fraction analysis has the same tint levels for each pel of the image and includes images for each gray level, where the size of the images in the job matches the print size of the region of interest (e.g., if the region of interest is a printhead, the image is sized to print the pel forming elements of the printhead). For example, the synthetic job may consist of 256 images, each image having the same gray level for all the pels in the image, where each different image is generated using a different gray level. The gray levels range from zero to level 255. Furthermore, the size of each image is the same as the region of interest. The region of interest relates physical elements such as nozzle, printhead or printhead array. Using the synthetic image approach, the drop fractions are determined for the pel forming elements corresponding to the region of interest, specifically the columns in the threshold array that are employed when printing the region of interest. The synthetic image is aligned such that the pel forming elements comprising the region of interest are used. - According to one embodiment, the initial ink usage drop fraction data comprises an initial ink usage drop fraction matrix (Z0) for an initial halftone threshold array and an initial ink drop size vector (v0) (note that this may alternatively be called a matrix), as represented by:
-
-
- As shown above, the initial ink usage drop fraction matrix comprises a set of Z0 p,d matrix elements, each corresponding to a digital count level (p) and instructed ink drop size (d). In one embodiment, each element is associated with a digital count level (p) and an instructed drop size d. In such an embodiment, digital count (e.g., is the gray level or color value for the different images in the synthetic image job. Bitdepth defines the number of available levels as a power of two. In the previously cited example, the bitdepth is 8, producing 256 total images in the synthetic image job used to determine drop fractions.
- Index p ranges from zero to P-1, where P is the total number of digital count levels. Index d ranges from zero to D-1, where D is the total number of instructed ink drop sizes, not including the ink drop size none. The ink drop size column vector v0 comprises ink amount values (e.g., ν0- νD-1) associated with each of the plurality of instructed ink drop sizes in the initial drop size matrix. In a further embodiment, the drop amounts ν0-νD-1 are known (e.g., experimentally pre-determined).
- Drop
fraction generation engine 310 also generates the monitored ink usage drop fraction data based on thehalftone data 301, an adjusted transfer functions 306 and the print job data (e.g., test job, synthetic job). In one embodiment, dropfraction generation engine 310 counts the number of drops and determines drop fractions of each instructed drop size (e.g., at each digital count) for one or more specified regions of interest by processing the print job data (e.g., test job, synthetic job data) with thehalftone data 301 and the adjusted (e.g., compensated) transfer functions represented by adjusted transfer function 306 (e.g., second transfer function or compensated transfer function). In such an embodiment, the adjusted transfer function is used to restore a target factory-set response asprinter 160 is used to print the print job data. For example, a target linear optical density (OD) response may be maintained. Therefore, the initial transfer functions and the adjusted transfer functions have been determined using a calibration process to achieve the same linear optical density response using the same Dmax value. Where Dmax represents the OD at level (2^bitdepth)-1. - It is well known that to achieve the same calibrated response the same ink deposition values for each individual color are required. Therefore, at each level the same amount of ink deposition or ink amount is required to produce the same optical density at that level for the initial and adjusted printhead designs. Achieving the same ink amount is equivalent to achieving the same ink deposition since the threshold array areas or area of the synthetic images are the same for the two different ink usage drop fraction data (e.g., initial usage drop fraction data and monitored ink usage drop fraction data).
- The monitored ink usage drop fraction data comprises monitored ink usage drop fraction matrix (Z) for the initial threshold array with the adjusted transfer function 306 applied to the levels in the synthetic image, generated by calibrating the initial threshold array to the same calibrated response as the initial threshold array . The monitored ink usage drop size vector (v) is to be determined. (Z) and (v) are represented by:
-
-
- Similar to the discussion above with reference to the initial ink usage drop fraction matrix, the monitored ink usage drop fraction matrix is comprised of a set of Zp,d elements, each corresponding to a different digital count level (p) and different instructed ink drop size (d), where P is the total number of digital count levels in the synthetic image job and D is the total number of instructed ink drop sizes, not including the none drop size. The monitored ink drop size column vector, v comprises unknown ink drop size values (e.g., v0 - vD-1) associated with each of the plurality of drop sizes in the monitored ink usage drop fraction matrix. Therefore, each individual new estimate for the unknown ink usage drop fraction vector elements will have a corresponding value in the original column vector. The vector of new drop sizes v reflects the impact of the recalibration that was performed to achieve the same calibrated printer response associated with v0.
- In another embodiment, changes to drop fraction are due to changes in halftone design and/or changes to the calibration Transfer Functions (TF). In this case we have two adjusted transfer functions, one used for the initial threshold array and a second one used for the drop size monitored threshold array. The impact of the calibration TFs in this case will modify synthetic image print job data and consequently modify the ink drop fractions. Furthermore we can have a case where the initial and the drop size monitored threshold arrays are both calibrated and each one has an associated adjusted transfer function. In this case the synthetic job drop fractions are determined with the respective transfer functions applied to the image data and using the two different threshold arrays. Therefore, the described method applies to systems that are calibrated (e.g., employing calibrated halftones or halftones with transfer functions or calibrated halftones and transfer functions). The requirement is that the drop fractions reflect the impact of halftone design changes and transfer functions. The transfer function in this case would be applied to all of the pels in the image data for the synthetic image job that is analyzed. The analysis is performed using the initial threshold array and its respective transfer function to determine the Z0 drop fractions and the drop fractions for the Z matrix are determined using the drop size monitored threshold array and its respective transfer function. In this case the different digital count levels p refer to the digital count levels in the synthetic job prior to applying the transfer functions. Therefore, we have a matching set of synthetic images to analyze having the same number of levels and drop sizes in the Z0 and Z drop fraction matrices.
- Drop size monitor also includes drop
size generation logic 320 that is implemented to determine monitored ink drop size data (e.g., current ink drop size data or second ink drop size data) for one or more specified regions of interest based on the initial ink usage drop fraction data and monitored ink usage drop fraction data generated at dropfraction generation engine 310, as well as initial ink drop size data 302. Since constant ink deposition (ink amount per unit area) in a calibrated printer is known to produce the same printed OD, and ink deposition for each digital count level is constant for the same printed job, dropsize generation logic 320 may generate the monitored ink drop size data from the monitored ink usage drop fraction data, initial ink usage drop fraction data and initial ink drop size data 302. - Also, since the ink amounts at each DC level are approximately equivalent to the monitored ink amounts for each digital count level, described by the matrix product of drop fraction matrix and drop size column vectors (Zv ≈ Z0v0). As a result:
-
- where # is the pseudo-inverse operator, (e.g., A# = (ATA)-1AT for a rectangular matrix A), where v̂ denotes the estimated value of the drop size column vector v. This assumes that the same synthetic image print job is processed by
drop fraction engine 310 to produce the pairs of the ink drop fraction data (e.g., initial ink drop fraction data and monitored ink drop fraction data or first and second ink drop fraction data, etc.) for each digital count level. Where the digital count levels are the initial synthetic chart levels prior to applying transfer functions if transfer functions are used. This provides an estimate for a new set of monitored drop sizes v̂. Since v̂ is a vector, this provides an estimate for each one of the individual drop sizes in a multibit system. - By association in the described methods, the determined drop sizes are specific to the region of interest. As explained above, by specifying the sizes of the images of the synthetic job to match the size of the region of interest, the size of both the initial ink usage drop fraction matrix and the monitored ink usage drop fraction matrix match the size of the region of interest. Furthermore, the location of the regions of interest are selected to match the pel forming elements that are to be considered for drop size determination. Alternately, if the images of the synthetic job did not match the size of the region of interest, then the synthetic image can be padded (e.g., insert zero level values for pels beyond the size of the region of interest) and the drop fraction are effectively the same size as the region of interest for these calculations. The pels in the unpadded region are then used to determine drop fractions with this method.
- Drop size monitor 230 also includes drop size
difference determination logic 330 that determines a difference between the initial ink drop size data and the generated monitored ink drop size data. Drop sizedifference determination logic 330 may also determine whether the difference between the initial ink drop size data and the generated monitored ink drop size data is greater than a threshold 306. The drop size differences may be determined for each of the instructed drop sizes (the instructed size none may be ignored) using the drop size data that corresponds to the instructed drop sizes. In one embodiment, a message may be transmitted upon a determination that the difference between the initial ink drop size data and the generated monitored ink drop size data is greater than threshold 306. -
FIGS. 4A & 4B is a flow diagram illustrating one embodiment of aprocess 400 for performing a drop size monitoring process.Process 400 may be performed by processing logic that may include hardware (e.g., circuitry, dedicated logic, programmable logic, microcode, etc.), software such as instructions run on a processing device, or a combination thereof. In one embodiment,process 400 is performed bydrop size monitor 230. - At processing block 405 (
FIG. 4A ), thehalftone data 301 is received. Atprocessing block 410, the initial transfer function 304 are received. Atprocessing block 415, initial drop fraction data 303 is received which includes the impact of initial transfer function 304. Atprocessing block 420, region of interest data 305 is received. Atprocessing block 430, initial ink drop size data 302 is received. In one embodiment, instead of receiving initial drop fraction data 303 from outside the drop size monitor 230 as instep 415, atprocessing block 440, initial ink usage drop fraction data is generated for each digital count level using thehalftone data 301, the initial transfer functions 304 and the print job data. As discussed above, the initial ink drop size data may be generated for one or more regions of interest specified in the region of interest data 305. - At
processing block 450, the adjusted transfer functions 306 are received. Atprocessing block 460, the monitored ink usage drop fraction data is generated for each digital count level using thehalftone data 301 or a calibrated version of 301, the adjusted transfer functions 306 and the print job data (e.g., for the one or more regions of interest). Atprocessing block 470, the monitored ink drop size data is generated for the one or more regions of interest based on the initial ink usage drop fraction data, initial ink drop size data and the monitored ink usage drop fraction data. - At processing block 480 (
FIG. 4B ), a difference is determined between the initial ink drop size data and the monitored ink drop size data. Atdecision block 485, a determination is made as to whether the difference between the initial ink drop size data and the monitored ink drop size data is greater than thethreshold 307.Threshold 307 may be received (e.g., via GUI 250). If the difference is greater than the threshold, a message is generated (processing block 490) prior to transmitting the message (processing block 495) and the monitored drop size data. Otherwise, only the monitored ink drop size data is transmitted.Printer 160 may receive the message and in response perform corrective actions. - In a further embodiment, the message and monitored ink drop size data is transmitted to drop
size correction logic 240 that is implemented to perform an ink drop size correction process. In this embodiment, dropsize correction logic 240 performs an ink drop size correction process to adjust drop sizes upon receiving the message and data from dropsize correction logic 240 indicating that the difference between the initial drop size data and the monitored drop size data exceeds the predetermined threshold. A technical advantage ofprocess 400 is computationally efficiency and avoidance of iterations versus conventional means. -
FIG. 5 illustrates one embodiment of dropsize correction logic 240, including dropsize adjustment engine 510. In this embodiment, dropsize adjustment engine 510 receives dropsize difference data 501 generated at drop sizedifference determination logic 330, as well as printhead voltage data 502 (e.g., received via GUI 250) and computes a printhead voltage adjustment based on the dropsize difference data 501 andprinthead voltage data 502 for the regions of interest. - According to one embodiment, drop
size adjustment engine 510 performs adjustments that are driven by a drop size difference (δv) between the new drop size (e.g., indicated by the monitored drop size data) and original drop size (e.g., indicated by the initial drop size data). In this embodiment, a voltage difference (δu) (e.g., printhead voltage adjustment data) is computed using a known printhead driver voltage gain (γ), based on: -
- In one embodiment, the Bang-bang control law may be implemented to compute perform an adjustment. In this embodiment, there are no adjustment for printheads in instances in which: |δu| < UDB, where DB is the dead band. However, for the other printheads that do not meet that criteria, printhead adjustments are made using ú = u + δu. In an alternative embodiment, a linear control law may be implemented to perform the adjustment. In this embodiment, a gain α ∋ 0 < α < 1 is used, and all printheads are adjusted using ú = u + α × δu.
-
FIG. 6 is a flow diagram illustrating one embodiment of aprocess 600 for performing drop size correction.Process 600 may be performed by processing logic that may include hardware (e.g., circuitry, dedicated logic, programmable logic, microcode, etc.), software such as instructions run on a processing device, or a combination thereof. In one embodiment,process 600 is performed by drop size adjustment engine. - At
processing block 610, dropsize difference data 501 is received (e.g., from drop size correction logic 240). Atprocessing block 620,printhead voltage data 502 is received. Atprocessing block 630, printhead voltage adjustment data are computed based on the printhead voltage data and the drop size difference data. Atprocessing block 640, printhead voltage adjustment data are transmitted. -
Print system 130 may receive the transmitted printhead voltage adjustment data and apply them to the pel forming elements (e.g., via the printhead drivers that control the corresponding pel forming elements) in the regions of interest. A technical advantage ofprocess 600 is computationally efficiency and the avoidance of iterations versus conventional means. - Although shown as a component of
print controller 140, other embodiments may featuredrop size monitor 230 and/or dropsize correction logic 240 included within an independent device, or combination of devices, communicably coupled toprint controller 140. For instance,FIG. 7 illustrates one embodiment of adrop size monitor 230 and dropsize correction logic 240 implemented in anetwork 900. As shown inFIG. 7 ,drop size monitor 230 and dropsize correction logic 240 are included within acomputing system 910 and communicates withprinting system 130 via acloud network 950.Printing system 130 receives monitored ink drop size data and message(s). -
FIG. 8 illustrates acomputer system 1700 on whichprinting system 130,print controller 140,drop size monitor 230 and/or dropsize correction logic 240 may be implemented.Computer system 1700 includes a system bus 1720 for communicating information, and aprocessor 1710 coupled to bus 1720 for processing information. -
Computer system 1700 further comprises a random-access memory (RAM) or other dynamic storage device 1725 (referred to herein as main memory), coupled to bus 1720 for storing information and instructions to be executed byprocessor 1710.Main memory 1725 also may be used for storing temporary variables or other intermediate information during execution of instructions byprocessor 1710.Computer system 1700 also may include a read only memory (ROM) and or otherstatic storage device 1726 coupled to bus 1720 for storing static information and instructions used byprocessor 1710. - A
data storage device 1727 such as a magnetic disk or optical disc and its corresponding drive may also be coupled tocomputer system 1700 for storing information and instructions.Computer system 1700 can also be coupled to a second I/O bus 1750 via an I/O interface 1730. A plurality of I/O devices may be coupled to I/O bus 1750, including adisplay device 1724, an input device (e.g., analphanumeric input device 1723 and or a cursor control device 1722). Thecommunication device 1721 is for accessing other computers (servers or clients). Thecommunication device 1721 may comprise a modem, a network interface card, or other well-known interface device, such as those used for coupling to Ethernet, token ring, or other types of networks. - Embodiments of the invention may include various steps as set forth above. The steps may be embodied in machine-executable instructions. The instructions can be used to cause a general-purpose or special-purpose processor to perform certain steps. Alternatively, these steps may be performed by specific hardware components that contain hardwired logic for performing the steps, or by any combination of programmed computer components and custom hardware components.
- Elements of the present invention may also be provided as a machine-readable medium for storing the machine-executable instructions. The machine-readable medium may include, but is not limited to, floppy diskettes, optical disks, CD-ROMs, and magneto-optical disks, ROMs, RAMs, EPROMs, EEPROMs, magnetic or optical cards, propagation media or other type of media/machine-readable medium suitable for storing electronic instructions. For example, the present invention may be downloaded as a computer program which may be transferred from a remote computer (e.g., a server) to a requesting computer (e.g., a client) by way of data signals embodied in a carrier wave or other propagation medium via a communication link (e.g., a modem or network connection).
- The following clauses and/or examples pertain to further embodiments or examples. Specifics in the examples may be used anywhere in one or more embodiments. The various features of the different embodiments or examples may be variously combined with some features included and others excluded to suit a variety of different applications. Examples may include subject matter such as a method, means for performing acts of the method, at least one machine-readable medium including instructions that, when performed by a machine cause the machine to perform acts of the method, or of an apparatus or system according to embodiments and examples described herein.
- Some embodiments pertain to Example 1 that includes a system comprising at least one physical memory device to store drop size logic and one or more processors coupled with the at least one physical memory device, to execute the drop size logic to receive first ink usage drop fraction data for each of a plurality of color planes associated with a first halftone design, a first transfer function, and print job data, wherein ink usage drop fraction data represents the fraction of ink drops for each instructed drop size corresponding to each input digital count for a halftoning module, receive first ink drop size data for each of a plurality of color planes associated with the first halftone design and the first transfer function, receive second ink usage drop fraction data for each of the plurality of color planes associated with the first halftone design, a second transfer function and the print job data and generate second ink drop size data for each of the plurality of color planes based on the first ink usage drop fraction data, the first ink drop size data and the second ink usage drop fraction data
- Example 2 includes the subject matter of Example 1, wherein the second ink usage drop fraction data is generated for each of a plurality of digital count levels based on the first halftone design, the second transfer function and the print job data.
- Example 3 includes the subject matter of Examples 1 and 2, wherein the first ink usage drop fraction data is generated based on the first halftone design, the first transfer function, and the print job data.
- Example 4 includes the subject matter of Examples 1-3, wherein the transfer functions transform the input digital counts to achieve a target output response.
- Example 5 includes the subject matter of Examples 1-4, wherein the drop size logic generates the second ink drop size data for a region of interest based on the first ink usage drop fraction data for the region of interest, the first ink drop size data for the region of interest and the second ink usage drop fraction data for the region of interest.
- Example 6 includes the subject matter of Examples 1-5, wherein a region of interest comprises at least one of a printhead, a printhead array and a pel forming element.
- Example 7 includes the subject matter of Examples 1-6, wherein the ink drop size logic detects a difference between the first ink drop size data and the second ink drop size data and determines whether the difference between the first ink drop size data and the second ink drop size data exceeds a predetermined threshold.
- Example 8 includes the subject matter of Examples 1-7, wherein the ink drop size logic initiates an ink drop size correction process upon determining that the difference between the first drop size data and the second ink drop size data exceeds the predetermined threshold.
- Example 9 includes the subject matter of Examples 1-8, wherein the ink drop size correction process adjusts instructed ink drop sizes by adjusting an associated printhead driver voltage.
- Example 10 includes the subject matter of Examples 1-9, further comprising a printer.
- Some embodiments pertain to Example 11 that includes a method comprising receiving first ink usage drop fraction data for each of a plurality of color planes associated with a first halftone design, a first transfer function, and print job data, wherein ink usage drop fraction data represents the fraction of ink drops for each instructed drop size corresponding to each input digital count for a halftoning module, receiving first ink drop size data for each of a plurality of color planes associated with the first halftone design and the first transfer function, receiving second ink usage drop fraction data for each of the plurality of color planes associated with the first halftone design, a second transfer function and the print job data and generating second ink drop size data for each of the plurality of color planes based on the first ink usage drop fraction data, the first ink drop size data and the second ink usage drop fraction data.
- Example 12 includes the subject matter of Example 11, wherein the second ink usage drop fraction data is generated for each of a plurality of digital count levels based on the first halftone design, the second transfer function and the print job data.
- Example 13 includes the subject matter of Examples 11 and 12, wherein the first ink usage drop fraction data is generated based on the first halftone design, the first transfer function, and the print job data.
- Example 14 includes the subject matter of Examples 11-13, further comprising generating the second ink drop size data for a region of interest based on the first ink usage drop fraction data for the region of interest, the first ink drop size data for the region of interest and the second ink usage drop fraction data for the region of interest.
- Example 15 includes the subject matter of Examples 11-14, wherein a region of interest comprises at least one of a printhead, a printhead array and a pel forming element.
- Some embodiments pertain to Example 16 that includes at least one computer readable medium having instructions stored thereon, which when executed by one or more processors, cause the processors to receive first ink usage drop fraction data for each of a plurality of color planes associated with a first halftone design, a first transfer function, and print job data, wherein ink usage drop fraction data represents the fraction of ink drops for each instructed drop size corresponding to each input digital count for a halftoning module, receive first ink drop size data for each of a plurality of color planes associated with the first halftone design and the first transfer function, receive second ink usage drop fraction data for each of the plurality of color planes associated with the first halftone design, a second transfer function and the print job data and generate second ink drop size data for each of the plurality of color planes based on the first ink usage drop fraction data, the first ink drop size data and the second ink usage drop fraction data.
- Example 17 includes the subject matter of Example 16, wherein the second ink usage drop fraction data is generated for each of a plurality of digital count levels based on the first halftone design, the second transfer function and the print job data.
- Example 18 includes the subject matter of Examples 16 and 17, wherein the first ink usage drop fraction data is generated based on the first halftone design, the first transfer function, and the print job data.
- Example 19 includes the subject matter of Examples 16-18, having instructions stored thereon, which when executed by one or more processors, further cause the processors to generate the second ink drop size data for a region of interest based on the first ink usage drop fraction data for the region of interest, the first ink drop size data for the region of interest and the second ink usage drop fraction data for the region of interest.
- Example 20 includes the subject matter of Examples 16-19, wherein a region of interest comprises at least one of a printhead, a printhead array and a pel forming element.
- Whereas many alterations and modifications of the present invention will no doubt become apparent to a person of ordinary skill in the art after having read the foregoing description, it is to be understood that any particular embodiment shown and described by way of illustration is in no way intended to be considered limiting. Therefore, references to details of various embodiments are not intended to limit the scope of the claims, which in themselves recite only those features regarded as essential to the invention.
Claims (20)
1. A system comprising:
at least one physical memory device to store drop size logic; and
one or more processors coupled with the at least one physical memory device, to execute the drop size logic to:
receive first ink usage drop fraction data for each of a plurality of color planes associated with a first halftone design, a first transfer function, and print job data, wherein ink usage drop fraction data represents the fraction of ink drops for each instructed drop size corresponding to each input digital count for a halftoning module;
receive first ink drop size data for each of the plurality of color planes associated with the first halftone design and the first transfer function;
receive second ink usage drop fraction data for each of the plurality of color planes associated with the first halftone design, a second transfer function and the print job data; and
generate second ink drop size data for each of the plurality of color planes based on the first ink usage drop fraction data, the first ink drop size data and the second ink usage drop fraction data.
2. The system of claim 1 , wherein the second ink usage drop fraction data is generated for each of a plurality of digital count levels based on the first halftone design, the second transfer function and the print job data.
3. The system of claim 2 , wherein the first ink usage drop fraction data is generated based on the first halftone design, the first transfer function, and the print job data.
4. The system of claim 2 , wherein the transfer functions transform the input digital counts to achieve a target output response.
5. The system of claim 1 , wherein the drop size logic generates the second ink drop size data for a region of interest based on the first ink usage drop fraction data for the region of interest, the first ink drop size data for the region of interest and the second ink usage drop fraction data for the region of interest.
6. The system of claim 5 , wherein the region of interest comprises at least one of a printhead, a printhead array and a pel forming element.
7. The system of claim 1 , wherein the ink drop size logic detects a difference between the first ink drop size data and the second ink drop size data and determines whether the difference between the first ink drop size data and the second ink drop size data exceeds a predetermined threshold.
8. The system of claim 7 , wherein the ink drop size logic initiates an ink drop size correction process upon determining that the difference between the first drop size data and the second ink drop size data exceeds the predetermined threshold.
9. The system of claim 8 , wherein the ink drop size correction process adjusts instructed ink drop sizes by adjusting an associated printhead driver voltage.
10. The system of claim 1 , further comprising a printer.
11. A method comprising:
receiving first ink usage drop fraction data for each of a plurality of color planes associated with a first halftone design, a first transfer function, and print job data, wherein ink usage drop fraction data represents the fraction of ink drops for each instructed drop size corresponding to each input digital count for a halftoning module;
receiving first ink drop size data for each of the plurality of color planes associated with the first halftone design and the first transfer function;
receiving second ink usage drop fraction data for each of the plurality of color planes associated with the first halftone design, a second transfer function and the print job data; and
generating second ink drop size data for each of the plurality of color planes based on the first ink usage drop fraction data, the first ink drop size data and the second ink usage drop fraction data.
12. The method of claim 11 , wherein the second ink usage drop fraction data is generated for each of a plurality of digital count levels based on the first halftone design, the second transfer function and the print job data.
13. The method of claim 12 , wherein the first ink usage drop fraction data is generated based on the first halftone design, the first transfer function, and the print job data.
14. The method of claim 11 , further comprising generating the second ink drop size data for a region of interest based on the first ink usage drop fraction data for the region of interest, the first ink drop size data for the region of interest and the second ink usage drop fraction data for the region of interest.
15. The method of claim 14 , wherein the region of interest comprises at least one of a printhead, a printhead array and a pel forming element.
16. At least one non-transitory computer readable medium having instructions stored thereon, which when executed by one or more processors, cause the processors to:
receive first ink usage drop fraction data for each of a plurality of color planes associated with a first halftone design, a first transfer function, and print job data, wherein ink usage drop fraction data represents the fraction of ink drops for each instructed drop size corresponding to each input digital count for a halftoning module;
receive first ink drop size data for each of the plurality of color planes associated with the first halftone design and the first transfer function;
receive second ink usage drop fraction data for each of the plurality of color planes associated with the first halftone design, a second transfer function and the print job data; and
generate second ink drop size data for each of the plurality of color planes based on the first ink usage drop fraction data, the first ink drop size data and the second ink usage drop fraction data.
17. The computer readable medium of claim 16 , wherein the second ink usage drop fraction data is generated for each of a plurality of digital count levels based on the first halftone design, the second transfer function and the print job data.
18. The computer readable medium of claim 17 , wherein the first ink usage drop fraction data is generated based on the first halftone design, the first transfer function, and the print job data.
19. The computer readable medium of claim 16 , having instructions stored thereon, which when executed by one or more processors, further cause the processors to generate the second ink drop size data for a region of interest based on the first ink usage drop fraction data for the region of interest, the first ink drop size data for the region of interest and the second ink usage drop fraction data for the region of interest.
20. The computer readable medium of claim 19 , wherein the region of interest comprises at least one of a printhead, a printhead array and a pel forming element.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US17/684,252 US11755865B1 (en) | 2022-03-01 | 2022-03-01 | Drop size monitoring mechanism |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US17/684,252 US11755865B1 (en) | 2022-03-01 | 2022-03-01 | Drop size monitoring mechanism |
Publications (2)
Publication Number | Publication Date |
---|---|
US20230281413A1 true US20230281413A1 (en) | 2023-09-07 |
US11755865B1 US11755865B1 (en) | 2023-09-12 |
Family
ID=87850624
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US17/684,252 Active US11755865B1 (en) | 2022-03-01 | 2022-03-01 | Drop size monitoring mechanism |
Country Status (1)
Country | Link |
---|---|
US (1) | US11755865B1 (en) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9656463B1 (en) * | 2016-06-30 | 2017-05-23 | Ricoh Company, Ltd. | Adjusting ink drop size estimates for improved ink use estimates |
US11283936B1 (en) * | 2020-12-18 | 2022-03-22 | Ricoh Company, Ltd. | Ink usage estimation for each drop size based on histogram and calibrated drop fraction |
Family Cites Families (45)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS5553068Y2 (en) | 1974-10-31 | 1980-12-09 | ||
US5111302A (en) | 1988-12-02 | 1992-05-05 | Hewlett-Packard Company | Method and system for enhancing the quality of both color and black and white images produced by ink jet and electrophotographic printers |
FR2801836B1 (en) | 1999-12-03 | 2002-02-01 | Imaje Sa | SIMPLIFIED MANUFACTURING PRINTER AND METHOD OF MAKING |
US6956673B2 (en) | 2000-03-02 | 2005-10-18 | Minolta Co., Ltd. | Image processing apparatus and method to reduce gray levels of image |
CN1192896C (en) | 2000-06-30 | 2005-03-16 | 西尔弗布鲁克研究有限公司 | Print engine/controller to work in multiples and a printhead driven by multiple print engine/controllers |
US6554388B1 (en) | 2001-10-15 | 2003-04-29 | Eastman Kodak Company | Method for improving printer uniformity |
US20030179410A1 (en) | 2002-03-21 | 2003-09-25 | Velde Koen Van De | Multilevel colour error-diffusion providing reduced sensitivity to printing process variability errors |
US7423778B2 (en) | 2003-08-01 | 2008-09-09 | Ecole Polytechnique Federale De Lausanne (Epfl) | Prediction model for color separation, calibration and control of printers |
US7425061B2 (en) | 2005-06-09 | 2008-09-16 | Xerox Corporation | Ink consumption determination |
US7296882B2 (en) | 2005-06-09 | 2007-11-20 | Xerox Corporation | Ink jet printer performance adjustment |
JP2007030507A (en) | 2005-07-26 | 2007-02-08 | Oce Technol Bv | Method for deciding liquid droplet size of ink liquid droplet emitted by inkjet printer |
JP5157578B2 (en) | 2008-03-27 | 2013-03-06 | セイコーエプソン株式会社 | Printer system, printing system, and recording method in printer system |
DE102008041430B4 (en) | 2008-08-21 | 2011-12-08 | Koenig & Bauer Aktiengesellschaft | Method for checking at least one measured value determined in a running printing process of a printing machine for its plausibility |
DE102008041429B4 (en) | 2008-08-21 | 2013-09-12 | Koenig & Bauer Aktiengesellschaft | Method for checking at least one measured value determined in a running printing process of a printing machine for its plausibility |
WO2010044765A1 (en) | 2008-10-15 | 2010-04-22 | Hewlett-Packard Development Company, L. P. | Method of detecting drops |
FR2954216B1 (en) | 2009-12-23 | 2013-02-08 | Markem Imaje | SYSTEM FOR MEASURING IN A FLUID CIRCUIT OF A CONTINUOUS INK JET PRINTER, ASSOCIATED FLUID CIRCUIT AND BLOCK FOR IMPLEMENTING SUCH A MEASURING SYSTEM |
US9056485B2 (en) | 2010-11-23 | 2015-06-16 | Carestream Health, Inc. | Color medical imaging on film |
US9096056B2 (en) | 2011-05-19 | 2015-08-04 | Xerox Corporation | Apparatus and method for measuring drop volume |
US8576450B2 (en) | 2011-06-23 | 2013-11-05 | Hewlett-Packard Development Company, L.P. | Replacing a defective colorant |
JP2013025219A (en) | 2011-07-25 | 2013-02-04 | Ricoh Co Ltd | Image forming apparatus, image forming method, and image forming program |
US8734034B2 (en) | 2011-10-19 | 2014-05-27 | Hewlett-Packard Development Company, L.P. | System and method for pre-print ink use estimation |
GB2534186A (en) | 2015-01-15 | 2016-07-20 | Landa Corp Ltd | Printing system and method |
JP5773532B2 (en) | 2012-06-19 | 2015-09-02 | 株式会社Screenホールディングス | Image data generation method, image recording method, image data generation device, and image recording device |
US9832428B2 (en) | 2012-12-27 | 2017-11-28 | Kateeva, Inc. | Fast measurement of droplet parameters in industrial printing system |
KR101733904B1 (en) | 2012-12-27 | 2017-05-08 | 카티바, 인크. | Techniques for print ink volume control to deposit fluids within precise tolerances |
US8807695B1 (en) | 2013-01-30 | 2014-08-19 | Xerox Corporation | System and method for estimating ink usage in an inkjet printer |
WO2015185102A1 (en) | 2014-06-02 | 2015-12-10 | Hewlett-Packard Development Company L.P. | Print calibration |
JP6217681B2 (en) | 2015-03-26 | 2017-10-25 | コニカミノルタ株式会社 | Image forming system and image forming method |
JP6639247B2 (en) | 2016-01-19 | 2020-02-05 | キヤノン株式会社 | Image processing apparatus, image processing method, and program |
US9785873B2 (en) | 2016-02-16 | 2017-10-10 | Ricoh Company, Ltd. | Halftone calibration mechanism |
US10336062B2 (en) | 2016-03-14 | 2019-07-02 | Board Of Regents, The University Of Texas System | Systems and methods for precision inkjet printing |
US20200320357A1 (en) | 2016-07-29 | 2020-10-08 | Hewlett-Packard Development Company, L.P. | Converting calibration data |
WO2018080454A1 (en) | 2016-10-25 | 2018-05-03 | Hewlett-Packard Development Company, L.P. | Maintaining a print quality parameter in a printer |
US11184504B2 (en) | 2017-02-16 | 2021-11-23 | Ricoh Company, Ltd. | Dynamic printing system compensation mechanism |
US10338496B2 (en) | 2017-10-27 | 2019-07-02 | Lexmark International, Inc. | System and methods for adjusting toner density in an imaging device |
CN108031573A (en) | 2018-01-28 | 2018-05-15 | 北京工业大学 | The regulation and control method of single drop electrostatic spraying system steady operation |
US10757270B2 (en) | 2018-02-23 | 2020-08-25 | Ricoh Company, Ltd. | Ink estimation mechanism |
US10549523B2 (en) | 2018-03-01 | 2020-02-04 | Ricoh Company, Ltd. | Ink deposition curve computation mechanism |
JP2020010146A (en) | 2018-07-05 | 2020-01-16 | キヤノン株式会社 | Image processing system, image processing method, and program |
US10500849B1 (en) | 2018-08-31 | 2019-12-10 | Ricoh Company, Ltd. | Printhead waveform adjustment |
US10723133B2 (en) | 2018-10-04 | 2020-07-28 | Ricoh Company, Ltd. | Ink estimation mechanism |
US10643115B1 (en) | 2019-06-28 | 2020-05-05 | Ricoh Company, Ltd. | Ink estimation adjustment mechanism |
US11072166B2 (en) | 2019-12-18 | 2021-07-27 | Ricoh Company, Ltd. | System and method of monitoring usage of a recording material in an image forming apparatus |
US10990863B1 (en) | 2020-02-28 | 2021-04-27 | Ricoh Company, Ltd. | Direct deposit ink estimation mechanism |
US10902304B1 (en) | 2020-02-28 | 2021-01-26 | Ricoh Company, Ltd. | Optical density monitoring mechanism |
-
2022
- 2022-03-01 US US17/684,252 patent/US11755865B1/en active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9656463B1 (en) * | 2016-06-30 | 2017-05-23 | Ricoh Company, Ltd. | Adjusting ink drop size estimates for improved ink use estimates |
US11283936B1 (en) * | 2020-12-18 | 2022-03-22 | Ricoh Company, Ltd. | Ink usage estimation for each drop size based on histogram and calibrated drop fraction |
Also Published As
Publication number | Publication date |
---|---|
US11755865B1 (en) | 2023-09-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11477343B2 (en) | Dynamic printing system compensation mechanism | |
US11637946B2 (en) | Iterative uniformity compensation mechanism | |
US11443152B1 (en) | Secondary color uniformity compensation mechanism | |
US11338591B1 (en) | Defective nozzle correction mechanism | |
US11368592B1 (en) | Defective nozzle compensation mechanism | |
US11632487B1 (en) | Secondary color uniformity compensation mechanism | |
US11630975B1 (en) | Secondary color uniformity compensation mechanism | |
US20220286578A1 (en) | Secondary color uniformity compensation mechanism | |
US11758074B2 (en) | Color uniformity compensation mechanism | |
US11570311B2 (en) | Defective nozzle correction mechanism using missing neighbor threshold lowering function | |
US11283936B1 (en) | Ink usage estimation for each drop size based on histogram and calibrated drop fraction | |
US11734536B2 (en) | Color uniformity compensation mechanism | |
WO2022186325A1 (en) | Defective nozzle compensation mechanism | |
US20230281413A1 (en) | Drop size monitoring mechanism | |
US11731420B1 (en) | Drop size monitoring mechanism | |
US11745501B1 (en) | Drop size monitoring mechanism | |
US11922241B1 (en) | Printer calibration mechanism | |
US11900189B1 (en) | Automatic tuning compensation system that determines optimal compensation target values for each of plurality of tint levels | |
US11157786B1 (en) | Uniformity compensation refinement mechanism | |
US20240278585A1 (en) | Automatic tuning compensation mechanism | |
US11962737B1 (en) | Edge enhancement with compensation mechanism | |
US11956403B1 (en) | Edge enhancement with compensation mechanism | |
US20220272230A1 (en) | Color space ink model generation mechanism | |
US11973919B2 (en) | Color space ink model generation mechanism | |
US11675991B1 (en) | Color space ink model generation mechanism |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
FEPP | Fee payment procedure |
Free format text: ENTITY STATUS SET TO UNDISCOUNTED (ORIGINAL EVENT CODE: BIG.); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY |
|
AS | Assignment |
Owner name: RICOH COMPANY, LTD., JAPAN Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:STANICH, MIKEL;KAILEY, WALTER F.;ZHANG, ZILING;AND OTHERS;SIGNING DATES FROM 20220222 TO 20220223;REEL/FRAME:059192/0744 |
|
STCF | Information on status: patent grant |
Free format text: PATENTED CASE |