Method of stitching overlapping printhead segments
10625518 ยท 2020-04-21
Assignee
Inventors
Cpc classification
H04N1/58
ELECTRICITY
G06K15/1223
PHYSICS
B41J2/2132
PERFORMING OPERATIONS; TRANSPORTING
B41J3/543
PERFORMING OPERATIONS; TRANSPORTING
H04N1/4078
ELECTRICITY
G06T3/04
PHYSICS
International classification
B41J3/54
PERFORMING OPERATIONS; TRANSPORTING
B41J19/14
PERFORMING OPERATIONS; TRANSPORTING
B41J2/045
PERFORMING OPERATIONS; TRANSPORTING
H04N1/58
ELECTRICITY
H04N1/407
ELECTRICITY
Abstract
A method of printing an image using a printing system having first and second overlapping printhead segments. The method includes the steps of: (i) identifying a strip of the image to be printed in an overlap region of the first and second printhead segments; (ii) determining a stitching technique for the first and second printhead segments; and (iii) printing the image using the first and second printhead segments, the printing including stitching the first and second printhead segments in the overlap region using the determined stitching technique. The stitching technique may be a butt stitch or a feathered stitch, dependent on image content in the strip.
Claims
1. A method of printing an image using a printing system comprising at least first and second overlapping printhead segments, the method comprising the steps of: (i) identifying a strip of the image to be printed in an overlap region of the first and second printhead segments; (ii) determining a stitching technique for the first and second printhead segments, the stitching technique being selected from the group consisting of: (a) printing using only nozzles from the first printhead segment at one side of a seam and printing using only nozzles from the second printhead segment at the other side of the seam; and (b) printing using nozzles from both the first and second printhead segments at either side of the seam, and (iii) printing the image using the first and second printhead segments, the printing comprising stitching the first and second printhead segments in the overlap region using the determined stitching technique, wherein the stitching technique is dependent on image content in the strip.
2. The method of claim 1, wherein the image content contains one or more of: text and line work, and wherein the stitching technique (a) is used for printing in the overlap region.
3. The method of claim 2, wherein the seam is a continuous seam passing through at least some of regions of relatively lower ink density.
4. The method of claim 2, further comprising the steps of: determining a continuous seam in the strip based on a cost function, the cost function including at least one parameter selected from the group consisting of: (a) minimizing a density of printed ink along the seam; and (b) maximizing a luminance along the seam; and wherein: the strip contains variable image content and the seam has a varying position within the strip; the seam is determined from a row-by-row analysis of the image content contained in the strip, each row having a stitch point determined by the cost function; the cost function includes a parameter defining a maximum threshold distance between contiguous stitch points in the strip; and the threshold distance is 1, 2, 3, 4 or 5 horizontal pixel or dot positions between contiguous stitch points.
5. The method of claim 4, wherein the threshold distance is one horizontal pixel or dot position between contiguous stitch points.
6. The method of claim 4, wherein the cost function includes a parameter weighting the seam towards edges in the image content.
7. The method of claim 4, wherein the seam is determined using a seam carving algorithm.
8. The method of claim 1, wherein the image content contains contone graphics, and wherein the stitching technique (b) is used for printing in the overlap region.
9. The method of claim 1, further comprising the step of separating image content in the strip into a foreground image and a background image, and wherein stitching technique (a) is used for the foreground image and stitching technique (b) is used for the background image.
10. The method of claim 9, wherein stitching technique (b) employs a fade transition from the first printhead segment to the second printhead segment across the overlap region.
11. The method of claim 1, wherein the first and second printhead segments print the image using uncorrelated dithers.
12. The method of claim 1, wherein the first and second printhead segments are individual printhead chips of a printhead.
13. The method of claim 1, wherein the first and second printhead segments are individual printheads, each printhead comprising a plurality of printhead chips.
14. The method of claim 1, wherein the printer comprises one or more sets of n overlapping printhead segments, each set having n-1 overlap regions, wherein n is an integer from 2 to 50.
15. The method of claim 1, wherein the overlap region has a width in the range of 1 to 20 mm.
Description
BRIEF DESCRIPTION OF THE DRAWINGS
(1) One or more embodiments of the present invention will now be described with reference to the drawings, in which:
(2)
(3)
(4)
(5)
(6)
(7)
(8)
(9)
(10)
(11)
(12)
(13)
(14)
(15)
(16)
(17)
(18)
(19)
(20)
DETAILED DESCRIPTION
(21) Referring to
(22) Neighbouring overlapping printheads 10 have an overlap region 12 whereby nozzles from either of the overlapping printheads may be used to print a strip of an image corresponding to the overlap region. In these overlap regions 12, the neighbouring printheads 10 must be stitched together to avoid discontinuities in the printed image.
(23) One prior art stitching method (known in the art as butt joins) simply sets a fixed stitch point in the overlap region 12 and allocates printing to printheads at either side of the fixed stitch point. Butt joins often produce adequate results for plain text, but typically produce relatively poor results for contone images.
(24)
(25) As foreshadowed above, such stitching methods do not always provide acceptable print quality. Without wishing to be bound by theory, it is understood by the present inventor that unpredictable dot-on-dot printing in the overlap region 12 caused by slight misalignments of the printheads 10 is, to a large extent, responsible for the poor outputs observed from conventional stitching methods.
(26) The stitching method described above in connection with
(27) Information on print quality of test prints may be collected either using a downstream scanner detecting print artifacts or, more usually, from a subjective analysis of test prints by the user. However, this type of empirical feedback to adjust overlap dithers is generally unsatisfactory. Different image content will typically require a different optimization of the overlap dither, and dither optimization on an empirical basis is time-consuming and impractical for individual print jobs. Even with optimization of the overlap dither, streaks may still be visible due to unpredictable interference effects resulting from the image content, the overlap dither and the relative positions of the printhead segments. For example, Moire interference effects typically produce highly visible streaks when one printhead 10 is slightly rotated relative to its neighbouring printhead. These intrinsic interference effects cannot usually be eliminated simply by adjusting the dot density in the overlap dither.
(28) What is required is a technique for stitching overlapping printhead segments together, which is robust enough to deal with misaligned printhead segments, does not rely on empirical feedback from test prints and is optimized for any printed image.
(29) Surprisingly, the present inventor has found that a technique used for digitally re-sizing images, known in the art as seam-carving, can be modified to produce excellent results in stitching overlapping printhead segments together. The technique of seam-carving is described in detail in Shai Avidan, Ariel Shamir, Seam carving for content-aware image resizing, ACM Transactions on Graphics (TOG), v.26 n.3, July 2007, the contents of which are incorporated herein by reference. Briefly, the seam-carving technique generates a continuous path of pixels (a seam) across an image, from top to bottom or left to right, based on a cost function, such as an image energy function. Thus, the resizing of the image is content-aware rather than simply cropping the image to size. For example, in order to change the aspect ratio of an image, the seam-carving technique identifies continuous seams of relatively unnoticeable pixels which blend with their surroundings. These so-called low energy seams may be either carved out or duplicated in the original image to change its aspect ratio, whilst preserving the more visually important components of the image. The person skilled in the art of image processing will be readily aware of various algorithms used in seam-carving.
(30) In the methods described herein, seam-carving is used to determine a set of stitch points in a continuous seam within a strip of an image printed by the overlap region 12. The position of a particular stitch point for a respective row of print is based on a first requirement of minimizing a density of printed ink and/or maximizing luminance. However, in order to avoid the stitch point jumping across each side of the overlap region 12 for contiguous rows of print, a second requirement is that the successive stitch points should be contiguous so as to form a continuous seam or path along the strip.
(31) The first requirement advantageously minimizes a probability of dot-on-dot printing in the overlap region by making stitch points content-dependent. However, if successive stitch points are allowed to jump across the overlap region, then visible print artifacts can still occur by virtue of the neighbouring printheads alternately printing high density portions of the image.
(32) The result is a poor quality output, which is particularly visible in text regions. For example, in the letter v of the large-type word oLive, stitching artifacts are caused by switching successive stitch points from the right side of the letter to the left side and back again. Therefore, although the selection of stitch points based on a minimum ink density in the image might appear to be a viable method of hiding stitching artifacts, the results shown in
(33) In
(34) In order to produce the continuous seam 15 shown in
y[r, c]=x[r, c]+min{y[r1, c1], y[r1, c], y[r1, c+1]}
where y[r1, c1] is the output pixel from the previously processed row and one pixel to the left of the current pixel, y[r1, c] is the output pixel from the previously processed row directly above the current pixel, and y[r1, c+1] is the output pixel from the previously processed row and one pixel to the right of the current pixel.
(35) Working from top to bottom, the output pixel y[r, c] in the last row corresponds to a continuous path through the image that cuts through the image. So starting with this pixel as the seam or path through the image, the pixel selected from y[r1, c1], y[r1, c] or y[r1, c+1] having the minimum value is added to the seam. The seam is then extended iteratively by adding pixels using the same criteria until the top of the image has been reached and there is a complete, continuous seam through the image.
(36) Although one simple seam carving algorithm has been described above, it will be appreciated that the seam carving algorithm may be modified, as appropriate. For example, a number of different seams may be generated and an optimal seam selected based on one or more additional parameters. For example, it may be desirable to select the seam having the lowest average ink density for some types of image content. For other image content, it may be desirable to select the seam having the lowest of number of contiguous stitch points with a high ink density. Typically, less visible stitching is achieved when the seam follow edges in the image content. Therefore, the seam-carving algorithm may include a parameter weighting the seam towards edges (e.g. edges of text, boxes, lines etc). These and other criteria for selecting the optimum seam will be readily apparent to the person skilled in the art.
(37) In the seam carving algorithm described above, the maximum allowable horizontal distance between contiguous stitch points is set at one pixel of the digital image. This ensures a smooth continuous path of the seam. However, the maximum distance between contiguous stitch points may alternatively be defined in terms of printed dot positions, which may be different than digital pixel positions depending on when seam carving is performed in the image processing pipeline. Further, the maximum distance between contiguous stitch points may be varied depending on image content, print speed, print resolution etc. provided that the seam is continuous. For example, the seam carving algorithm may allow a distance of 1, 2, 3, 4 or 5 horizontal pixel or dot positions between contiguous stitch points. Typically, seam carving is performed on a digital bitmap image at a same resolution as the printed image; hence digital pixel positions correspond with printed dot positions.
(38) From the foregoing, it will be appreciated that the seam carving algorithm may be weighted by any suitable cost function in order to optimize stitching for a particular print job.
(39) Seam carving is typically performed on a raster graphics image prior. The raster graphics image may be represented in any suitable color space, such as CMYK, RGB or Lab color space. If seam carving is based on minimizing a printed ink density, then CMYK and RGB color spaces may be used to represent the image. However, optimal seam carving results may be achieved by maximizing luminance along the seam, in which case seam carving of an image represented in Lab color space is more appropriate. Maximizing luminance typically produces superior results, because the human eye is more sensitive to, for example, magenta than yellow. In other words, the seam carving algorithm may weight the seam towards yellow regions of the image, even if those regions have a relatively high ink density, because those regions are less visible to the human eye. In one embodiment, the image may be converted from RGB or CMYK color space into Lab space for seam carving, and then converted back into CMYK color space for further image processing after the seam has been defined.
(40) Alternatively, seam carving may be performed separately on monochrome halftone images and applied to each color channel of the printer separately. For example, the printer may comprise a plurality of aligned monochrome print bars (e.g. CMYK). For each halftone bitmap image, the seam carving algorithm may be used to determine a seam for each overlapping pair of printheads in each monochrome print bar. Hence, different print bars may use different seams for corresponding overlap regions depending on the image content. In this instance, the parameters of minimizing ink density and maximizing luminance will be one of the same.
(41) Having determined a path of the seam through an image using a suitable seam carving algorithm, the method of stitching the overlapping printhead segments across the seam is not particularly limited. For example, butt joins may be used to stitch across the seam, whereby one printhead is allocated to print all image content to the left of the seam and another printhead is allocated to print all image content to the right of the seam. Butt joins may be appropriate for printing images having distinct light and dark regions (e.g. plain text, line art etc) in the overlap region.
(42) For printing contone images, more sophisticated stitching techniques may be appropriate. For example, an overlap dither may be used to fade printing from one printhead to an overlapping neighbouring printhead. Each stitch point typically defines a midway point of the overlap dither with an equal number of nozzles at either side of the stitch point fading from one side to the other. In some embodiments, combinations of butt joins and overlap dithers may be used, depending on the image content. Likewise, different color channels may use different stitching techniques depending on the image content. In some embodiments, overlap dithers may be optimized using empirical feedback from test-printouts of the image.
(43) It will be appreciated that, although the seam carving method may be applied to any width of overlap region, relatively wider overlap regions are generally preferred so as to provide a higher probability of defining a seam having the least stitching artifacts. Where overlap dithers are used to fade from one printhead to another, it may be preferable for the width of an envelope containing the seam to be limited to less than the width of the overlap region 12. Accordingly, some nozzles at the extremities of the overlap region 12 may be reserved to allow an overlap dither across each stitch point.
(44)
(45) Still referring to
(46) As shown in
(47)
(48) In a first step, the image content shown in
(49) Having identified the foreground image containing text, the foreground image is processed in the same way as described in connection with
(50) Turning now to
(51) The combined results for the foreground and background images are shown in
(52) Seam carving is typically performed in image processing hardware, such as a raster image processor (RIP) upstream of a printer in an image processing pipeline.
(53) The RIP 20 receives image data and generates halftone bitmaps for each color channel of the printer 2, as is well known in the art. The RIP additionally performs seam carving, as described herein, to determine a stitch point for each row of print in overlap regions 12. Print data is allocated to each printhead 10 of each print bar 1 in accordance with the stitch points determined from seam carving and a suitable stitching technique (e.g. butt join, overlap dither etc). The print data generated by the RIP 20 for each color channel is supplied to the print bars 1 for printing. Typically, additional processing of the print data (e.g. dead nozzle compensation, keep-wet spitting etc) is performed before the image is printed by one or more intervening processors. Further, a supervisor controller communicates with each of the print bars 1 to control timing etc. Various image processing and printing system architectures will be well known to the person skilled in the art, and the methods described herein are not limited to any particular type of architecture.
(54) It is an advantage of the methods described herein that the additional processing requirements of seam carving can be readily accommodated in a typical RIP, and is especially suitable for print runs involving repeated printouts of the same image. It will be appreciated that, with the growth of digital inkjet presses, the stitching techniques described herein provide a powerful tool for improving print quality without compromising print speeds.
(55) The foregoing describes only some embodiments of the present invention, and modifications of detail may be made thereto without departing from the scope of the invention, the embodiments being illustrative and not restrictive.