Printing system may include fluid applicators and image pipeline modules. The image pipeline module may process image data to transform continuous tone image data to halftone image data. The fluid applicator device may apply printing fluid to a substrate to form an image based on the halftone image data.
Non-limiting examples are described in the following description, read with reference to the figures attached hereto and do not limit the scope of the claims. Dimensions of components and features illustrated in the figures are chosen primarily for convenience and clarity of presentation and are not necessarily to scale. Referring to the attached figures:
A printing system may include an image pipeline module to process image data and a fluid applicator to apply printing fluid to a substrate to form an image thereon. The image may be based on the image data processed by the image pipeline module of the printing system. The image pipeline module, for example, may transform continuous tone image data to halftone image data. The image pipeline module, however, may process the image data with a same halftoning algorithm such as an error diffusion algorithm or a array-based algorithm. However, application of the same halftoning algorithm to different image types may not provide enhancement to the various image types. For example, the halftoning algorithm may produce enhanced graphic image types, but not produce enhanced line renderings. That is, error diffusion algorithms may tend to lose and confuse lines. Also, array-based algorithms may tend to produce noisy, lower quality lines. Thus, certain image types may not be enhanced by application of the same halftoning algorithm.
In examples, a printing system includes an identification module and an image pipeline module. The identification module identifies line regions of an image corresponding to lines based on image data. The identification module also identifies non-line regions of the image corresponding to image portions without lines based on the image data. The image pipeline module includes a linear threshold array algorithm and a halftoning algorithm to process the image data. The image pipeline module applies the linear threshold array algorithm to the line regions and the halftoning algorithm to the non-line regions to form filtered image data. Accordingly, different algorithms applied to the different image types provide enhancement to the various image types. Thus, lines as well as graphics of the image may be enhanced.
Referring to
In some examples, the identification module 10 and the image pipeline module 12 may be implemented in hardware, software including firmware, or combinations thereof. The firmware, for example, may be stored in memory and executed by a suitable instruction-execution system. If implemented in hardware, as in an alternative example, the identification module 10 and the image pipeline module 12 may be implemented with any or a combination of technologies which are well known in the art (for example, discrete-logic circuits, application-specific integrated circuits (ASICs), programmable-gate arrays (PGAs), field-programmable gate arrays (FPGAs)), and/or other later developed technologies. In other examples, the identification module 10 and the image pipeline module 12 may be implemented in a combination of software and data executed and stored under the control of a computing device.
Referring to
The Laplacian is a two dimensional (2-D) isotropic measure of a 2nd spatial derivative of an image 30. That is, the Laplacian is an example of a second order or second derivative method of enhancement. For example, the Laplacian of an image with pixel intensity values I(x,y) is given by: Equation 1 below:
The Laplacian of the image 30 may be used to highlight regions of rapid intensity change thereof. The Laplacian may be implemented as a convolution between a respective image 30 and a Laplacian array. Convolution is a mathematical operation to multiply together two arrays of numbers to produce a third array of numbers. The convolution is performed by shifting the respective Laplacian array over the image 30.
The respective Laplacian array may move through all, the positions where the Laplacian array fits within the boundaries of the image 30. Each array position (e.g., cell) may correspond to a single output pixel having a value which is calculated by multiplying the array value and the underlying image pixel value. In other words, during convolution, the respective Laplacian array is centered on a respective pixel of the image 30 to replace a corresponding pixel value with a sum of the Laplacian array multiplied by the pixel value. In some examples, negative values may be replaced with zeros. After convolution, only respective cells in a threshold value range may be identified as a line. For example, the threshold value range may be 0.4 to 0.7. Subsequently, each, of the resultant calculated numbers of the cells may be added together.
Referring to
Referring to
Referring to
In block S514, a linear threshold array algorithm is applied to the line regions by an image pipeline module. The image pipeline module may halftone the line regions independently from the non-line regions of the image. For example, the linear threshold array algorithm is applied to the vertical line regions of the image to form filtered vertical line regions to be vertically placed on the image. Additionally, the linear threshold array algorithm is applied to the horizontal line regions of the image to form filtered horizontal line regions to be horizontally placed on the image. In block S516, a halftoning algorithm different than the linear threshold array algorithm is applied to the non-line regions by the image pipeline module. In some examples, the halftoning algorithm includes at least one of an error diffusion algorithm and an array-based algorithm.
A computing device such as a printing system can include a processor and a non-transitory, computer-readable storage medium to store instructions to operate the printing system according to an example. In some examples, the non-transitory, computer-readable storage medium may be included in a computing device such as a printing system. In some examples, the non-transitory, computer-readable storage medium may be implemented in whole or in part as instructions such as computer-implemented instructions stored in the computing device locally or remotely, for example, in a server or a host computing device considered herein to be part of the printing system.
In some examples, the non-transitory, computer-readable storage medium may correspond to a storage device that stores instructions, such as computer-implemented instructions and/or programming code, and the like. For example, the non-transitory, computer-readable storage medium may include a non-volatile memory, a volatile memory, and/or a storage device. Examples of non-volatile memory include, but are not limited to, electrically erasable programmable read only memory (EEPROM) and read only memory (ROM). Examples of volatile memory include, but are not limited to, static random access memory (SRAM), and dynamic random access memory (DRAM).
Examples of storage devices include, but are not limited to, hard disk drives, compact disc drives, digital versatile disc drives, optical drives, and flash memory devices. In some examples, the non-transitory, computer-readable storage medium may even be paper or another suitable medium upon which the instructions are printed, as the instructions can be electronically captured, via, for instance, optical scanning of the paper or other medium, then compiled, interpreted or otherwise processed in a single manner, if necessary, and then stored therein. A processor generally retrieves and executes the instructions stored in the non-transitory, computer-readable storage medium, for example, to operate a computing device such as the printing system. In an example, the non-transitory, computer-readable storage medium can be accessed by the processor.
It is to be understood that the flowchart of
The present disclosure has been described using non-limiting detailed descriptions of examples thereof that are not intended to limit the scope of the general inventive concept. It should be understood that features and/or operations described with respect to one example may be used with other examples and that not all examples have all of the features and/or operations illustrated in a particular figure or described with respect to one of the examples. Variations of examples described will occur to persons of the art. Furthermore, the terms “comprise,” “include,” “have” and their conjugates, shall mean, when used in the disclosure and/or claims, “including but not necessarily limited to.”
It is noted that some of the above described examples may include structure, acts or details of structures and acts that may not be essential to the general inventive concept and which are described for illustrative purposes. Structure and acts described herein are replaceable by equivalents, which perform the same function, even if the structure or acts are different, as known in the art. Therefore, the scope of the general inventive concept is limited only by the elements and limitations as used in the claims.
Filing Document | Filing Date | Country | Kind |
---|---|---|---|
PCT/US2014/032353 | 3/31/2014 | WO | 00 |
Publishing Document | Publishing Date | Country | Kind |
---|---|---|---|
WO2015/152870 | 10/8/2015 | WO | A |
Number | Name | Date | Kind |
---|---|---|---|
5189528 | Takashima | Feb 1993 | A |
5375197 | Kang | Dec 1994 | A |
5767978 | Revankar et al. | Jun 1998 | A |
7564585 | Berkner | Jul 2009 | B2 |
9706358 | Sen | Jul 2017 | B2 |
20020067509 | Roylance | Jun 2002 | A1 |
20040027614 | Li | Feb 2004 | A1 |
20070139714 | McElvain | Jun 2007 | A1 |
20080018938 | Lee | Jan 2008 | A1 |
20080111681 | Rathbone | May 2008 | A1 |
20080260273 | Ito | Oct 2008 | A1 |
20090161165 | Fujimoto | Jun 2009 | A1 |
20090208126 | Matsumoto | Aug 2009 | A1 |
20100182621 | Yamada | Jul 2010 | A1 |
20110181035 | Kiuchi | Jul 2011 | A1 |
20110193334 | Kiuchi | Aug 2011 | A1 |
20110222124 | Kuno | Sep 2011 | A1 |
20120106835 | Bernal | May 2012 | A1 |
20120170849 | Saka | Jul 2012 | A1 |
20130069968 | Lee et al. | Mar 2013 | A1 |
20130135637 | Ohira | May 2013 | A1 |
20130155466 | Shiraishi | Jun 2013 | A1 |
20130168138 | Yamazaki | Jul 2013 | A1 |
20130182028 | Kuiper | Jul 2013 | A1 |
20150062233 | Ueshima | Mar 2015 | A1 |
20160004942 | Sumi | Jan 2016 | A1 |
20160072982 | Muraishi | Mar 2016 | A1 |
20160255240 | Morovic | Sep 2016 | A1 |
20160266512 | Haruta | Sep 2016 | A1 |
Number | Date | Country |
---|---|---|
2001157056 | Jun 2001 | JP |
20040106406 | Dec 2004 | KR |
20080043265 | May 2008 | KR |
Entry |
---|
Bukhari, et al. Improved Document Image Segmentation Algorithm using Multiresolution Morphology. Technical University of Kaiserslautern. Nov. 12, 2010. |
Number | Date | Country | |
---|---|---|---|
20170111546 A1 | Apr 2017 | US |