Preventing artifacts that may be produced when bottling PDL files converted from raster images
The present invention eliminates undesirable image defects caused during the preparation of pages for printing and folding, known as the bottling process. This is achieved by analyzing image characteristics, sorting out the image according to its characteristics, where necessary vectoring and editing the vectored characteristics, and finally completing the file conversion from a raster image to a Page Description Language (PDL) image. A first embodiment of the invention divides an image into small segments. A second embodiment of the invention enlarges existing image segments. A third embodiment of the invention enlarges existing image segments and sorts image segments according to their color attribute of transparency. A fourth embodiment of the invention divides a part of an image segment to small segments.
Latest Ether Visuals LLC Patents:
This patent application is a Continuation of U.S. application Ser. No. 11/468,890, filed on Aug. 31, 2006, now U.S. Patent No. 7,522,310, which is a Continuation of U.S. application Ser. No. 11/274,369, filed on Nov. 14, 2005, now U.S. Pat. No. 7,221,481, which is a Continuation of U.S. application Ser. No. 09/635,244, filed on Aug. 9, 2000, now U.S. Pat. No. 6,987,584, all of which are incorporated by reference herein in their entireties.
FIELD AND BACKGROUND OF THE INVENTIONThe invention relates to the field of Pre-Press or Graphic Arts that involves the preparation of images for print. This industry nowadays usually employs digital computers and it processes images coded as files of digital data. These image files usually fall into two categories, raster files and vector files. Raster files describe an image as a two dimensional array of picture elements called pixels. A pixel contains the attribute of image color at its particular location within the image. Usually all pixel comprising an image are assumed to be rectangular, and of the same dimensions. Vector files describe an image in terms of various geometrical shapes such as a line segment or a polygon. The specification of these shapes contains the attributes of color of each shape, and its dimensions. A well-known page description language (PDL) language comprising vector description of images is Postscript.
It is a common practice in the industry to convert images between raster and vector formats. The process of conversion of a file from Postscript to a raster format is often called RIP (Raster Image Processing). The process of conversion from raster to Postscript is herein called Ceps2Ps.
The target of a Pre-Press image processing activity is, by definition, the conversion of the image from digital form to an analogue form of ink or toner on paper or other substrate. A printing press is a common device for printing ink on paper, and so it is often stands at the end of a Pre-Press activity. The press often produces large sheets of paper on each of which several distinct images are printed. Post-press activity is then often required to cut, fold and bind these sheets of paper to form printed booklets. One such large sheet of paper can be turned by this Post-press activity to a booklet of several pages each containing one of these distinct images as the printed content of the page.
It is a known by-product of the Post-press process that the distinct images get rotated one in respect to the other by a small angle. When a press produces a sheet of paper with several distinct images that are not rotated one in respect to the other, they will appear rotated in the resulting booklet. This byproduct of the Post-press process is sometimes and herein called ‘bottling’. It is a common practice to correct the image orientation using the Pre-press process to correct for bottling that is expected to occur at Post-press, so that correct orientation would be observed for the booklets. The image processing function of rotation is generally well known and commonly used in the art.
It, thus, may happen that an image coded in some raster format needs to be passed through the following Pre-press process. At a first step, the raster image is converted to Postscript format. Then, at a second step, the Postscript coded image is rotated by a small angle. Finally, at a third step, a RIP operation produces raster pixels for printing.
It is common for an image to contain straight line segment elements that are either precisely horizontal or precisely vertical, i.e. line segments that exactly parallel to either horizontal or vertical edges of the page on which the are printed. Thus its is common for the second step of rotation to produce line segments that form a small angle to either vertical or horizontal direction. These segments are called typical bottling segments' herein.
An inherent and common behavior of the RIP has been observed when it converts typical bottling segments to raster format as follows. Undesirable artifacts are produced that appear as cracks within the image and between typical bottling segments.
It is not desirable to prevent the appearance of the undesirable artifacts by introducing changes in the behavior of the RIP, because a corrected RIP would behave differently than other RIP products in the industry, and it is required that all RIP products within the industry behave in a similar fashion. Otherwise the industry will prefer to avoid using the Postscript format altogether.
The present invention seeks to prevent the appearance of the undesirable artifacts by introducing changes to the Ceps2Ps operation.
The invention is suitable for a particular Ceps2Ps method of operation as follows. Ceps2 ps divides a raster image into segments of like color. Each segment is then described as a geometrical shape such as a polygon in the syntax of Postscript. The invention seeks to eliminate the undesirable effect of the appearance of cracks, or gaps between these segments.
Appendix A lists sample Postscript code generated by a Ceps2Ps function. This code contains examples of some polygon image segments, and in this sample they are rectangular.
A full description of the language is given, for example, in “PostScript Language Reference Manual”, Second Edition, by Adobe System Incorporated, Addison-Wesley Publishing Company, ISBN 0-210-18127-4, herein named The Red Book.
Note that lines begin with the character ‘%’ are comments in the language. Such lines do not translate to any image elements. Some comment lines are used herein to mark areas of interest within the Postscript code. Comments are described in Page 27 in Section 3.2.2 in The Red Book.
Under the line “% item 1” there is listed a first example of an image element composed of three rectangles. Note the use of the “setcmyktcolor” command explained in Page 496 in The Red Book, and the use of the “rectfill” command explained in Page 473 in The Red Book. Roughly explained, “setcmykcolor” specifies a color composed of cyan, magenta, yellow and black ink, and “rectfill” fills a rectangular shape with that color. Note that the first rectangle has no transparent colors at all, the second rectangle has one transparent color, and the third has two transparent colors.
Under the line “% item 2” there is listed a second example of an image element composed of two rectangles. Note that they are smaller in size relative to the rectangles described above.
SUMMARY OF THE INVENTIONA first preferred embodiment of the invention sets the size of the segments of like color in a given Ceps2ps operation to a minimum such as the size of one pixel in each of the two image dimensions. Therefore the image is made to be described as composed of a large number of segments, and each segment is small in size.
A second preferred embodiment of the invention increases the size of the segments of like color in a given Ceps2ps operation by a small amount such as the size of one in each of the two image dimensions. Therefore the number of segments describing an image does not change, but some segments are made to be a little larger.
A third preferred embodiment of the invention comprises two steps. The first step of the third preferred embodiment of the invention increases the size of the segments of like color in a given Ceps2ps operation by a small amount such as the size of one in each of the two image dimensions. The second step of the third preferred embodiment of the invention sorts the segments according to their color content. This step produces a list of segments in which the segments having a larger number of transparent separations are rendered before segments having a smaller number of transparent separations. Therefore the segments having a larger number of transparent separations are listed before segments having a smaller number of transparent separations, assuming that the PDL renders segments in the order in which they are listed.
A fourth preferred embodiment of the invention decompose segments of like color in a given Ceps2ps operation to core parts and border parts, and divides the border parts into segments of a small size such as the size of one pixel in each of the two image dimensions
Small shapes 730, 740, 750, 760, 770, 780 and 790 are depicted at the border between shapes 310 and 320.
There are four embodiments of the invention presented here. They represent four possible solutions to the problem of the appearance of the undesirable artifacts by introducing changes to the Ceps2Ps operation. These embodiments are described below in reference to Appendix B. This appendix lists sample Postscript code for an image. It describes the image of Appendix A after processing according to the various embodiments of the present invention.
To explain the terms “OneDevicePixWidth” and “OneDevicePixHeight” in Appendix B, reference is first made to the code under the line “% item 0” therein. The two terms are defined as equivalent to one image pixel in the resolution of the target printing device. The size of one such pixel is used herein as the preferred small amount. In some embodiments it is used as the size of a small element, and in some embodiments it is used as the amount of change in a size of an element. It is appreciated that other similar sizes can serve for the same purpose. For example, the size of two pixels may be good enough for many practical purposes.
The four embodiments are also described in reference to figures. The first embodiment is described in reference to
The first preferred embodiment of the invention sets the size of the segments of like color in a given Ceps2ps operation to a minimum such as the size of one pixel in each of the two image dimensions. Where, for example, three rectangular segments are enough to express the image, as shown in
The two rectangle that are described under “% item 2” in Appendix A, are partially divided in Appendix B into small rectangles of a small size of one pixel in each dimension.
This embodiment avoids some problems that arise in the other embodiments, but it is costly in terms of computational resources. This may be the embodiment of choice in the future, as these resources become very cheap.
A second preferred embodiment of the invention increases the size of the segments of like color in a given Ceps2ps operation by a small amount such as the size of one in each of the two image dimensions.
Referring to Appendix B, the effects of the second preferred embodiment of the present invention can be observed in the image segments under the line “% item 1”. The three rectangles that are described under “% item 1” in Appendix A, are enlarged by a small amount of one pixel in each dimension. This is achieved using the Postscript commands “add” and “sub” for adding and subtracting an amount to and from the coordinates or size of a segment.
Also in the example described in
Also in the example described in
Finally, in
The second preferred embodiment is less computationally expensive than the first, but it is not suitable to cases including much transparent color. The enlargement of segment does not remove the undesirable effect of cracks if the enlarged area is transparent.
A third preferred embodiment of the invention comprises of two steps. A first step of the third preferred embodiment of the invention increases the size of the segments of like color in a given Ceps2ps operation by a small amount such as the size of one pixel in each of the two image dimensions. A second step of the third preferred embodiment of the invention sorts the segments according to their color content. The second step produces a list of segments in which the segments having a larger number of transparent separations are listed before segments having a smaller number of transparent separations.
The first and second steps comprise necessary steps in the embodiment, but they need not be taken in any particular order.
According to a first variant of the third embodiment, the first is taken before the second step, so sorting according to color occurs only after all segments have been increased in size.
According to a second variant of the third embodiment, the first is taken after the second step, so sorting all segments according to color occurs before any segment has been increased in size
According to a third variant of the third embodiment, the first and second steps are taken in parallel, so size enlargement occurs during sorting.
The first step of the third embodiment has been explained herein above in reference to
The second step is explained in reference to
For example, and in reference to
For example, and in reference to
The third embodiment of the invention seeks to record image segments in some preferred order so that they are rendered in some preferred order.
A preferred order for rendering of image segments is any order that reduces the effect of the drawback of the second embodiment as explained herein above in reference to
Referring to Appendix B, the effects of the third preferred embodiment of the present invention can be observed in the image segments under the line “% item 1”.
The three rectangles that are described under “% item 1” in Appendix A, are enlarged by a small amount of one pixel in each dimension. The three rectangles appear in Appendix B in a particular order in which the rectangle having two transparent inks is listed first, and the rectangle having none is last. This is not their original order as in Appendix A, and so they have been sorted according to number of transparent inks.
By sorting image segments according to transparency, the third embodiment prevents most undesirable artifacts that are sometimes present with the second embodiment of the invention. The first embodiment prevents them all.
A fourth preferred embodiment of the invention decompose segments of like color in a given Ceps2ps operation to core parts and border parts, and divides the border parts into segments of a small size such as the size of one pixel in each of the two image dimensions.
Reference is now made to
A second step of the fourth embodiment of the present invention is the enlargement of the shapes. There is no need to enlarge the shapes at the borders between them. Therefore enlarged shapes 710 and 720 in
A third step of the fourth embodiment of the present invention is the addition of small image segments along the boarders identified at the first step. For example, seven shapes: 730, 740 . . . 790 are added in
Referring to Appendix B, the effects of the fourth preferred embodiment of the present invention can be observed in the image segments under the line “% item 2”.
To explain the terms “OneDevicePixWidth” and “OneDevicePixHeight” therein, reference is first made to the code under the line “% item 0” therein. The two terms are defined as equivalent to one image pixel in the resolution of the target printing device.
The two rectangle that are described under “% item 2” in Appendix A, are partially divided in Appendix B into small rectangles of a small size of one pixel in each dimension.
The small rectangles of Appendix B are marked only at the boarder between the two rectangles of Appendix A.
This embodiment avoids some problems that arise in the other embodiments, and it is not costly in terms of computational resources. This embodiment comprises a step of identification of boarders between shapes.
It is appreciated that an optimized Ceps2ps converter can be constructed that employs the fourth preferred embodiment of the present invention. This converter is a method or apparatus for the conversion of raster image to a vector image comprising the steps of detection of image segments among raster pixels of like color, detection of boarders between segments, and addition of small image segments along the detected boarders. It is depicted in
- % !PS
- % Rectangles before anti-bottling artifacts treatment
- true setoverprint
- % item 1%
- %Three adjacent rectangles set down in arbitrary order
- % 0.0 color value is considered transparent
- 0.1 0.2 0.3 0.4 setcmykcolor
- 100 100 100 100 rectfill
- 0.0 0.1 0.2 0.3 setcmykcolor
- 100 200 100 100 rectfill
- 0.0 0.0 0.1 0.2 setcmykcolor
- 100 300 100 100 rectfill
- % item 2%
- %Two adjacent rectangles set down in arbitrary order
- % 0.0 color value is considered transparent
- 0.0 0.1 0.2 0.3 setcmykcolor
- 300 100 4 4 rectfill
- 0.1 0.0 0.2 0.3 setcmykcolor
- 300 104 4 4 rectfill
- showpage
- % !PS
- % Rectangles after anti-bottling artifacts treatment
- % item 0%
- %Calculation of 1 device space pixel (=1 output pixel)
- /OneDevicePixWidth 1 1 idtransform pop def
- /OneDevicePixHeight 1 1 idtransform exch pop def
- true setoverprint
- % item 1%
- %The three adjacent rectangles set down by the pre-defined order
- % end extended on all four sides by one output pixel
- % 0.0 color value is considered transparent
- 0.0 0.0 0.1 0.2 setcmykcolor
- 100 OneDevicePixWidth sub 300 OneDevicePixHeight sub
- 100 OneDevicePixWidth add 100 OneDevicePixHeight add rectfill
- 0.0 0.1 0.2 0.3 setcmykcolor
- 100 OneDevicePixWidth sub 200 OneDevicePixHeight sub
- 100 OneDevicePixWidth add 100 OneDevicePixHeight add rectfill
- 0.1 0.2 0.3 0.4 setcmykcolor
- 100 OneDevicePixWidth sub 100 OneDevicePixHeight sub
- 100 OneDevicePixWidth add 100 OneDevicePixHeight add rectfill
- % item 2%
- %The two rectangles after adjacent edges split into 1.times.1 rectangles
- % and the two cores extended on all four sides by one output pixel
- % 0.0 color value is considered transparent
- % rectangle 1
- 0.0 0.1 0.2 0.3 setcmykcolor
- 300 OneDevicePixWidth sub 100 OneDevicePixHeight sub
- 4 OneDevicePixWidth add 4 rectfill
- 300 OneDevicePixWidth sub 104 OneDevicePixHeight sub
- OneDevicePixWidth OneDevicePixHeight rectfill
- 301 OneDevicePixWidth sub 104 OneDevicePixHeight sub
- OneDevicePixWidth One DevicePixHeight rectfill
- 302 OneDevicePixWidth sub 104 OneDevicePixHeight sub
- OneDevicePixWidth OneDevicePixHeight rectfill
- 303 OneDevicePixWidth sub 104 OneDevicePixHeight sub
- OneDevicePixWidth OneDevicePixHeight rectfill
- 304 OneDevicePixWidth sub 104 OneDevicePixHeight sub
- OneDevicePixWidth OneDevicePixHeight rectfill
- % rectangle 2
- 0.1 0.0 0.2 0.3 setcmykcolor
- 300 OneDevicePixWidth sub 104
- 4 OneDevicePixWidth add 4 OneDevicePixHeight add rectfill
- 300 OneDevicePixWidth sub 104
- OneDevicePixWidth OneDevicePixHeight rectfill
- 301 OneDevicePixWidth sub 104
- OneDevicePixWidth OneDevicePixHeight rectfill
- 302 OneDevicePixWidth sub 104
- OneDevicePixWidth OneDevicePixHeight rectfill
- 303 OneDevicePixWidth sub 104
- OneDevicePixWidth OneDevicePixHeight rectfill
- 304 OneDevicePixWidth sub 104
- OneDevicePixWidth OneDevicePixHeight rectfill
- showpage
Claims
1. A method comprising:
- a computing device identifying segments of like color in a first raster image corresponding to a raster file accessible by the computing device; and
- the computing device creating a vector image from the identified segments of like color.
2. The method of claim 1, further comprising:
- the computing device rotating the vector image by a predetermined angle; and
- the computing device converting the rotated vector image into a second raster image;
- wherein a printed version of the second raster image is usable to reduce bottling artifacts.
3. The method of claim 2, further comprising printing the second raster image.
4. The method of claim 1, wherein the vector image is a Postscript image.
5. The method of claim 1, wherein each of the identified segments is smaller than a predetermined threshold.
6. The method of claim 2, wherein each of the identified segments is one pixel in size.
7. An article of manufacture including a computer-readable medium having instructions stored thereon that, if executed by a computing device, cause the computing device to perform a method comprising:
- identifying segments of like color in a first raster image;
- enlarging one or more of the identified segments by a predetermined amount; and
- creating a vector image from the identified segments including the one or more enlarged segments.
8. The article of manufacture of claim 7, wherein the method further comprises:
- rotating the vector image by a predetermined angle; and
- converting the rotated vector image into a second raster image.
9. The article of manufacture of claim 8, wherein the method further comprises printing the second raster image.
10. The article of manufacture of claim 7, wherein the enlarged one or more segments are enlarged by a size of one pixel in height or width.
11. The article of manufacture of claim 7, wherein said creating includes storing information corresponding to each of the enlarged identified segments in a manner that determines the order in which the enlarged identified segments are to be rendered.
12. The article of manufacture of claim 11, wherein the information corresponding to each of the enlarged identified segments is stored in a manner that is based, at least in part, on a color content of each enlarged identified segment.
13. The article of manufacture of claim 11, wherein the information corresponding to each of the enlarged identified segments is stored in a manner that is based, at least in part, on a transparency of each enlarged identified segment.
14. The article of manufacture of claim 11, wherein the information corresponding to each of the enlarged identified segments is stored such that enlarged identified segments having a greater transparency are rendered prior to segments having a lesser transparency.
15. The article of manufacture of claim 7, wherein two or more of the enlarged identified segments overlap one another.
16. A method comprising:
- a computing device identifying segments of like color in a first raster image;
- the computing device decomposing at least one of the segments into a core segment and one or more border portions;
- the computing device dividing the one or more border portions into a plurality of smaller border segments; and
- the computing device creating a vector image that includes the core segment and the plurality of smaller border segments.
17. The method of claim 16, further comprising:
- the computing device rotating the vector image by a predetermined angle; and
- the computing device converting the rotated vector image into a second raster image.
18. The method of claim 16, further comprising printing the second raster image, and wherein the vector image is a page description language (PDL) image.
19. The method of claim 16, wherein each of the plurality of smaller border segments is a pixel in size.
20. The method of claim 16, further comprising the computing device enlarging the core segment, and wherein the vector image includes the enlarged core segment.
21. The method of claim 16, further comprising:
- the computing device identifying a border between two or more of the identified segments; and
- the computing device adding one or more smaller border segments along the border between the two or more segments.
5790708 | August 4, 1998 | Delean |
5930385 | July 27, 1999 | Fujimoto et al. |
6055064 | April 25, 2000 | Lifshitz et al. |
6295133 | September 25, 2001 | Bloomquist et al. |
6594034 | July 15, 2003 | Bloomquist et al. |
6661919 | December 9, 2003 | Nicholson et al. |
7317543 | January 8, 2008 | Gnutzmann |
20020054398 | May 9, 2002 | Bloomquist et al. |
Type: Grant
Filed: Apr 20, 2009
Date of Patent: Jul 5, 2011
Patent Publication Number: 20100171969
Assignee: Ether Visuals LLC (Las Vegas, NV)
Inventor: Raphael Wiesenberg (Ramat Gan)
Primary Examiner: Scott A Rogers
Application Number: 12/426,881
International Classification: H04N 1/56 (20060101); H04N 1/58 (20060101); G06K 15/00 (20060101);