Abstract: A system (110), a printer (500), and a method (200) of analyzing and verifying print data for detecting errors are disclosed. The method (200) comprises selecting (202), by a processor (112), a print data, wherein the print data indicates an image to be printed by a printer (150); converting (204, 206), by the processor (112), the image to cyan, magenta, yellow, and black or key (CMYK) domain; breaking (208), by the processor (112), the image in CMYK domain into smaller swathes of information; converting (222), by the processor (112) or the printer (150), the swathe information into individual pixels; and passing (222), by the printer (150) the individual pixels to a print head for printing the print data onto a media, wherein the print data is analyzed and verified at each of the steps of selecting (202), converting (204, 206), breaking (208), and converting (222) for detecting errors in the print data. [To be published with FIG 3]
TECHNICAL FIELD
[01] The present disclosure relates to the field of printers. More particularly, the present disclosure relates to a system, a printer and a method of analyzing and verifying integrity of print data for detecting errors before printing the print data onto a media.
BACKGROUND
[02] It is known that printers are commonly used for printing text or images onto a media such as a paper or plastic or any other substrates. The printers may include, but not limited to, laser printers, solid ink printers, led printers, inkjet printers, dot matrix printers, 3d printers and so on. The inkjet printers are widely used as they are inexpensive and produce high quality of text or images onto the media.
[03] The inkjet printers typically consist of sub modules, each sub module configured to perform a specific role. In order to operate the inkjet printer for printing text or image, thesub modules and technologies such as fluid dynamics, mechanical and electronics should interact and interplay with each other. Before the data is sent for printing, the data to be printed onto the media goes through several processing blocks. It is desirable to have a mechanism using which data at the output of each sub-module can be rendered in a human readable format for verification. A human user can then glance at the rendered output to check for errors. [04] Currently, several techniques are used for verifying the print data. One such technique includes visual verification of the final print output that facilitates to verify the correctness of data. However, in case the print data is not as desired, then there is no way of knowing which stage of the printing dataflow introduced the error. Another technique used for verifying the print data is data checksum verification technique. In this technique, the print data is verified when it is transmitted as such from one stage to another, but when the print data undergoes transformation the checksum cannot be used to verify the print data.
[05] Current known techniques are not desirable for verifying the print data. This is because, in the data checksum verification technique, for example, it is not possible for verifying the print data as the data undergoes some transformation at each level thus making
it difficult to compare the input data checksum with the output data checksum. Further, output size of the print data in binary form in the inkjet printers may run into hundreds of Mega-Bytes. Due to which byte by byte verification is very tedious, laborious and next to impossible. It also doesn't allow for detection of errors at a glance.
[06] Therefore, there is a need to analyze and verify the print data that is to be transferred to a print head that helps in locating the root cause for printing defects/errors.
SUMMARY
[07] Embodiments of the present invention provide a system, a printer, and a method of analyzing and localizing print defects. The present disclosure also helps in avoiding the drawbacks of known techniques that are involved in analyzing and localizing print defects. [08] In order to achieve the object, the present invention discloses a system that is configured to analyze and verify print data that is to be printed using a printer onto a media. In order to analyse and verify, at first, a user selects an image to be printed by the printer. The image may include a Red, Green and Blue (RGB) colour domain image. Further, the RGB colour domain image is converted to CMYK domain. In one example, the RGB colour domain image is converted to CMYK domain using a Raster Image processing technique or software. The Raster Image processing technique gives a visual perception of a large colour palette while using a much smaller colour palette. The output of the conversion of the image in RGB colour domain to CMYK domain will result in a binary file i.e., PRT file that represents the image in CMYK colour domain.
[09] The print data i.e., the binary file is further processed before the print data can be sent to the printer for printing the data on the media. In order to further process, width and height from the raw CMYK binary data is calculated. Subsequently, the PRT file, which is an output from the Raster Image processing technique is broken down into smaller swathes of information and passed to the printer. Subsequently, the printer converts the linear swathe information into individual pixels. The user may use the system for zooming or focusing into the images to visualize the pixel level details. Further, the individual pixels might be passed
on to a print head of the printer for printing the image onto the media. Further, the user may manually tap, visualize and validate the print data that is transferred to the print head and rendering it into an image file. As the print data flows one from stage to another, the print data is analyzed and verified before the print data is sent for printing by the print head. [010] The present invention renders the binary print data in human understandable format. Thus, the present invention enables the user to tap the data that is about to be transferred to the print head and rendering it into an image file that can be visualized and validated. Further, the data that needs to be printed goes through several layers of processing is analyzed and verified before appearing as ink drops on the final media.
[Oil] Features and advantages of the subject matter hereof will become more apparent in light of the following detailed description of selected embodiments, as illustrated in the accompanying FIGURES. As will be realized, the subject matter disclosed is capable of modifications in various respects, all without departing from the scope of the subject matter. Accordingly, the drawings and the description are to be regarded as illustrative in nature.
BRIEF DESCRIPTION OF ACCOMPANYING DRAWINGS
[012] Further features and advantages of the present invention will become apparent from
the following detailed description, taken in combination with the appended drawings, in
which:
[013] FIGURE 1 illustrates an environment 100 in which a system 110 for analyzing and
verifying print data for detecting errors is implemented, in accordance with one embodiment
of present invention;
[014] FIGURE 2 illustrates a diagrammatic representation of the system 110, in accordance
with one embodiment of present invention;
[015] FIGURE 3 illustrates a flow diagram of a method 200 of analysing and verifying
print data for detecting errors, in accordance with one embodiment of the invention;
[016] FIGURE 4 illustrate a screenshot 300 illustrating calculating image width and height
from the raw CMYK binary data, in accordance with one exemplary embodiment of the
invention;
[017] FIGURES 5A and 5B illustrate a portion of the image 400, 450 from which the
smaller swathes of information is broken down, in accordance with one exemplary
embodiment of present invention; and
[018] FIGURE 6 illustrates a block diagram of a printer 500 configured to analyse and
verify the print data for reducing errors, in accordance with another embodiment of present
invention.
[019] It will be noted that throughout the appended drawings, like features are identified by
like reference numerals.
DETAILED DESCRIPTION
[020] Before the present features and working principal of a system, a printer, and a method for analysing and verifying print data for detecting errors is described, it is to be understood that this invention is not limited to the particular system or a printer as described, since it may vary within the specification indicated. Various features for analysing and verifying print data for detecting errors might be provided by introducing variations within the components/subcomponents disclosed herein. It is also to be understood that the terminology used in the description is for the purpose of describing the particular versions or embodiments only, and is not intended to limit the scope of the present invention, which will be limited only by the appended claims. The words "comprising," "having," "containing," and "including," and other forms thereof, are intended to be equivalent in meaning and be open ended in that an item or items following any one of these words is not meant to be an exhaustive listing of such item or items, or meant to be limited to only the listed item or items.
[021] It should be understood that the present invention describes a system, a printer, and a method of analysing and verifying print data for detecting errors. Various features and
embodiments of the system for analysing and verifying print data for detecting errors are explained in conjunction with the description of FIGS 1-6.
[022] In one embodiment, the present invention discloses a system for analysing and verifying print data for identifying or elimination of root cause of printing defects. Detecting errors before printing the print data onto a media. FIG. 1 shows an environment 100 in which a system 110 is implemented. The environment 100 comprises the system 110, and a printer 200. The system 110 might include a server or a computer or a laptop, a smartphone or any electronic device comprising an application to execute functions for analysing and verifying print data for detecting errors. In alternative embodiments, the system 110 operates as a standalone device or may be connected (e.g., networked) to other systems. Further, it should be understood that the system 110 might be implemented in any different computing systems, environments, and/or configurations such as a workstation, an electronic device, a mainframe computer, a laptop, and so on.
[023] Referring to FIG. 2, a diagrammatic representation of the system 110 is shown, in accordance with one embodiment of present invention. The system 110 comprises a processor 112 (e.g., a central processing unit (CPU), a graphics processing unit (GPU) or both), a main memory 114 and a static memory 116, which communicate with at least one other via a bus 118. The system 110 may further include a video display unit 120 (e.g., a Liquid Crystal Display (LCD) or a cathode ray tube (CRT)). The system 110 further includes an alphanumeric input device (e.g., a keyboard) and/or a touch screen 122, a user interface (UI) navigation device 124 (e.g., a mouse), a disk drive unit 126, a signal generation device 128 (e.g., a speaker) and a network interface device 130.
[024] The disk drive unit 126 includes a machine-readable medial32 on which is stored one or more sets of instructions and data structures (e.g., software 134) embodying or utilized by any one or more of the methodologies or functions described herein. It should be understood that the term "machine-readable media" might be taken to include a single media or multiple media (e.g., a centralized or distributed database, and/or associated caches and servers) that store the one or more sets of instructions. The term "machine-readable media" may also be
taken to include any media that is capable of storing, encoding or carrying a set of instructions for execution by the machine and that cause the machine to perform any one or more of the methodologies of the present invention, or that is capable of storing, encoding or carrying data structures utilized by or associated with such a set of instructions. The term "machine-readable media" may accordingly be taken to include, but not be limited to, solid-state memories, optical and magnetic media, and carrier wave signals.
[025] The instructions 134 may also reside, completely or at least partially, within the main memory 114 and/or within the processor 112 during execution thereof by the system 110, the main memory 114 and the processor 112 also constituting machine-readable media. The instructions 134 may further be transmitted or received over the network 145 via the network interface device 130 utilizing any one of a number of well-known transfer protocols. The network 145 may be a wireless network, a wired network or a combination thereof. The network 145 can be implemented as one of the different types of networks, such as intranet, local area network (LAN), wide area network (WAN), the internet, and the like. The network 145 may either be a dedicated network or a shared network. The shared network represents an association of the different types of networks that use a variety of protocols, for example, Hypertext Transfer Protocol (HTTP), Transmission Control Protocol/Internet Protocol (TCP/IP), Wireless Application Protocol (WAP), and the like, to communicate with one another. Further the network 145 may include a variety of network devices, including routers, bridges, servers, computing devices, storage devices, and the like.
[026] Further, the system 110 is communicatively connected to a printer 150via the network 145. The printer 150 may include an inkjet printer or any other known printer. [027] As specified above, the system 110 might be used for analysing and verifying print data for detecting the root cause of printing defects and / or any errors before printing the print data onto a media. The print data might indicate data such as text or an image that is to be printed on to a media. The media may include a paper or plastic or any other substrates. The system 110 might be used to analyse the print data as it flows through various subsystems of the system 110.
[028] Now referring to FIG. 3, 4, 5A and 5B, a flow diagram illustrating a method 200for analysing and verifying the print data for any errors is explained, in accordance with one embodiment of the present invention. In order to analyse and verify the print data, at first, a user may select an image to be printed by the printer 150, as shown in step 202. As known, the continuous tone image may include a Red, Green and Blue (RGB) colour domain image. Each pixel in the image might be represented by up to a 24-bit value resulting in 16.8 million colour combinations. Further, as known, the printer 150 might use cyan, magenta, yellow, and Black or Key (CMYK) half tone image as the primary colours with a much reduced colour palette. As such, the system 110 might be configured to convert the image in RGB colour domain to continuous tone image CMYK domain. In accordance one exemplary embodiment, the system 110 might use a Raster Image processing technique or software to convert the image in RGB colour domain to CMYK domain, as half tone image shown at step 204. The Raster Image processing technique is used to convert the continuous tone image to half tone image to give a visual perception of a large colour palette while using a much smaller colour palette. The output of the conversion of the image in RGB colour domain to CMYK domain may result in a binary file i.e., PRT file that represents the halftone image in CMYK colour domain, as shown in step 206.
[029] As known, the printer 150 may only be able to print a band or swathe in one sweep. This is because; the height of the band is determined by the height of the final print element, typically a piezo inkjet head. As such, the print data i.e., the binary file might require further processing before the print data can be sent to printer 150 for printing the data on the media. Subsequently, the PRT file, which is an output from the Raster Image processing technique might need to be broken down into smaller swathes of information and passed to the printer 150. In order to break the PRT file into smaller swathes of information (step 210), a swathe generator might be used (step 208). Subsequently, the smaller swathes of information might be sent to the printer 150 from the system 110.lt should be understood that the CMYK data might be further converted into RGB encoded image file for further analysis. It does a reverse conversion of half tone CMYK swathe data to a half tone RGB data. FIG. 5A and 5B
provides the output of the present disclosure. The swathe (raw binary CMYK print head) is converted into an RGB image so that it can be visually verified by the user. [030] Subsequently, the printer 150 converts the linear swathe information into individual pixels as shown at step 220. The user may use the system 110 for zooming or focusing into the images to visualize the pixel level details. Further, the individual pixel data is transferred to a print head (not shown) of the printer 150 for printing the image onto the media, as shown in step 222. Further, the user may manually tap, visualize and validate the print data that is transferred to the print head and rendering it into an image file, as shown at step 230. [031] The print data is logged internally by the printer. The users can then use the aspects of the present disclosure and the logged data to render this data into a RGB halftone image so that it can be analyzed and inspected for defects.
[032] Although the above embodiments are explained considering the print data is analysed and verified using the system 110, it is possible to implement the invention using a standalone printer configured to analyse and verify the print data for reducing errors. Referring to FIG. 6, a block diagram of a printer 500 configured to analyse and verify the print data for reducing errors is shown, in accordance with one exemplary embodiment of the present disclosure. The printer 500 might comprise a microcontroller 502, a stepper motor 504, a tray 506 for receiving media such as a paper, a drive belt 508, an ink cartridge 510 and a print head 512. The microcontroller 502 may indicate a processor capable of executing program instructions that is known in the art. In the current embodiment, the microcontroller 502 might include an in-built memory (not shown) to store the one or more sets of instructions.
[033] In the current embodiment, the printer 500 might be configured to receive an image to be printed by the print head 512. The image may include a Red, Green and Blue (RGB) colour domain image. Each pixel in the image might be represented by a 24-bit value resulting in 16.8 million colour combinations. As known, the printer 500 might use cyan, magenta, yellow, and key (CMYK) as the primary colours with a much reduced colour palette. As such, the microcontroller 502 might be configured to convert the image in RGB
colour domain to CMYK domain. This is done on a PC by the Raster Image Processor. In accordance one exemplary embodiment, the microcontroller 502 might use a Raster Image processing technique or software to convert the image in RGB colour domain to CMYK domain. The Raster Image Processor runs on the PC. The Raster Image processing technique might give a visual perception of a large colour palette while using a much smaller colour palette. The output of the conversion of the image in RGB colour domain to CMYK domain may result in a binary file i.e., PRT file that represents the image in CMYK colour domain. [034] The binary file might require further processing before the print data can be sent to print head 512 for printing the data on the media. Subsequently, the PRT file, which is an output from the Raster Image processing technique might be broken down into smaller swathes of information and passed to the print head 512 by the microcontroller 502. Breaking down of the image into swathes is also performed on the PC, which are then passed one by one to the print head by the microcontroller. Subsequently, the smaller swathes of information might be sent to the print head 512 by the microcontroller 502. It should be understood that the CMYK data might be further converted into RGB encoded image file for further analysis. Subsequently, the microcontroller 502 might convert the linear swathe information into individual pixels. Further, the individual pixels might be passed on to a print head 512 by for printing the image onto the media.
[035] Based on the above, it is evident that the user could use the present disclosure to convert raw binary data logged by various stages of the printer electronics into a render-able format, visualize and validate the print data that is transferred to the print head and rendering it into an image file. As the print data flows one from stage to another, the print data is analyzed and verified before the print data is sent for printing by the print head. [036] The present invention converts the binary print data into a renderable format which can be visualized and inspected by the user thus rendering the binary print data in human understandable format. Thus, the present invention enables the user to tap the data that is about to be transferred to the print head and rendering it into an image file that can be visualized and validated. Further, the data that needs to be printed goes through several layers
of processing is analyzed and verified before it appears as ink drops on the final media, can be tapped, converted, visualized and analyzed
[037] The foregoing embodiments are merely intended to describe the technical solutions of the present invention, but not to limit the present invention. Although the present invention is described in detail with reference to the foregoing embodiments, persons of ordinary skill in the art should understand that they may still make modifications to the technical solutions described in the foregoing embodiments or make equivalent replacements to some technical features thereof, without departing from the spirit and scope of the technical solutions of the embodiments of the present invention.
We Claim:
1. A method (200) of analyzing and verifying print data for detecting errors, the method
(200) comprising:
selecting (202), by a processor (112), a print data, wherein the print data indicates an image to be printed by a printer (150);
converting (204, 206), by the processor (112), the image to cyan, magenta, yellow, and black or key (CMYK) domain;
breaking (208), by the processor (112), the image in CMYK domain into smaller swathes of information;
converting (222), by the processor (112) or the printer (150), the swathe information into individual pixels; and
passing (222), by the printer (150) the individual pixels to a print head for printing the print data onto a media, wherein the print data is analyzed and verified at each of the steps of selecting (202), converting (204, 206), breaking (208), and converting (222) for detecting errors in the print data.
2. The method (200) as claimed in claim 1, wherein the image is in a Red, Green and Blue (RGB) colour domain image.
3. The method (200) as claimed in claim 2, wherein the step of converting (204, 206) comprises:
converting the image into the CMYK domain using a Raster Image processing technique.
4. The method (200) as claimed in claim 1, wherein the step of converting (204, 206) results in creation of a binary file representing the image in CMYK colour domain.
5. The method as claimed in claim 1, wherein the step of breaking (208) comprises:
calculating width and height from the CMYK domain to break down the CMYK domain into swathes of information.
6. A system (110) for analyzing and verifying print data for detecting errors, the system
(110) comprising:
a processor(112); and
a memory (114) connected to the processor (112), wherein the processor (112) is configured to execute program instructions (134) stored in the memory (114), to
select print data indicating an image to be printed by a printer (150);
convert the image to cyan, magenta, yellow, and key (CMYK) domain;
break the image in CMYK domain into smaller swathes of information;
convert the swathe information into individual pixels; and
pass the individual pixels to a print head of the printer for printing the print data onto a media such that the print data is analyzed and verified at each step of selecting, converting, breaking, and converting for detecting errors in the print data.
7. The system (110) as claimed in claim 6, wherein the image is in a Red, Green and Blue (RGB) colour domain image.
8. The system (110) as claimed in claim 7, wherein the processor (112) is configured to convert the image into the CMYK domain using a Raster Image processing technique.
9. The system (110) as claimed in claim 1, wherein the processor (112) is configured to calculate width and height from the CMYK domain to break down the CMYK domain into swathes of information.
10. A printer (500) for analyzing and verifying print data for detecting errors, the printer (500) comprising:
a microcontroller (502) configured to execute program instructions, to
select print data indicating an image to be printed by a print head (512);
convert the image to cyan, magenta, yellow, and key (CMYK) domain;
break the image in CMYK domain into smaller swathes of information;
convert the swathe information into individual pixels; and
pass the individual pixels to the print head (512) for printing the print data onto a media such that the print data is analyzed and verified at each of selecting, converting, breaking, and converting for detecting errors in the print data.
| # | Name | Date |
|---|---|---|
| 1 | 201911054597-STATEMENT OF UNDERTAKING (FORM 3) [31-12-2019(online)].pdf | 2019-12-31 |
| 2 | 201911054597-REQUEST FOR EXAMINATION (FORM-18) [31-12-2019(online)].pdf | 2019-12-31 |
| 3 | 201911054597-REQUEST FOR EARLY PUBLICATION(FORM-9) [31-12-2019(online)].pdf | 2019-12-31 |
| 4 | 201911054597-POWER OF AUTHORITY [31-12-2019(online)].pdf | 2019-12-31 |
| 5 | 201911054597-FORM-9 [31-12-2019(online)].pdf | 2019-12-31 |
| 6 | 201911054597-FORM 18 [31-12-2019(online)].pdf | 2019-12-31 |
| 7 | 201911054597-FORM 1 [31-12-2019(online)].pdf | 2019-12-31 |
| 8 | 201911054597-DRAWINGS [31-12-2019(online)].pdf | 2019-12-31 |
| 9 | 201911054597-DECLARATION OF INVENTORSHIP (FORM 5) [31-12-2019(online)].pdf | 2019-12-31 |
| 10 | 201911054597-COMPLETE SPECIFICATION [31-12-2019(online)].pdf | 2019-12-31 |
| 11 | 201911054597-Proof of Right (MANDATORY) [09-01-2020(online)].pdf | 2020-01-09 |
| 12 | 201911054597-Power of Attorney-060120.pdf | 2020-01-09 |
| 13 | 201911054597-Correspondence-060120.pdf | 2020-01-09 |
| 14 | abstract.jpg | 2020-01-18 |
| 15 | 201911054597-FER_SER_REPLY [06-10-2021(online)].pdf | 2021-10-06 |
| 16 | 201911054597-CLAIMS [06-10-2021(online)].pdf | 2021-10-06 |
| 17 | 201911054597-FER.pdf | 2021-10-18 |
| 18 | 201911054597-FORM-26 [27-07-2023(online)].pdf | 2023-07-27 |
| 19 | 201911054597-FORM 13 [27-07-2023(online)].pdf | 2023-07-27 |
| 20 | 201911054597-US(14)-HearingNotice-(HearingDate-11-12-2024).pdf | 2024-11-11 |
| 21 | 201911054597-Correspondence to notify the Controller [09-12-2024(online)].pdf | 2024-12-09 |
| 22 | 201911054597-Written submissions and relevant documents [23-12-2024(online)].pdf | 2024-12-23 |
| 1 | 2021-05-2807-10-21E_28-05-2021.pdf |