Method, system and apparatus for verifying embedded graphical indicia
By generating and comparing the characteristic data objects and identification characteristic data objects in the printing device, the problem of embedded graphic label verification is solved, the accurate detection and classification of embedded barcode is realized, and the accuracy and efficiency of verification are improved.
Patent Information
- Application Number
- CN202410754599.1
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Priority Date
- 2023-07-26
- Filing Date
- 2024-06-12
- Publication Date
- 2025-01-28
AI Technical Summary
The prior art is difficult to effectively verify embedded graphic marks, especially the problem that barcodes embedded in graphic images cannot be recognized and verified by the printing device.
Provide a printing device, including a processor and memory. By generating the matching of predictive characteristic data objects and identifier characteristic data objects, determine the matching of the predicted characteristic data object and identifier characteristic data object, and generate the characteristic loss warning data object when not matching the characteristics of the characteristic loss warning data object. , To perform verification operations.
实现了对嵌入式图形标记的有效验证,确保图形图像中所有嵌入式条形码被检测到并分级,避免了手动检查的耗时和错误,提高了验证的准确性和效率。
Smart Images

Figure CN119376660A_ABST
Abstract
Description
Technical Field
[0001] Exemplary embodiments of the present disclosure relate generally to printing devices and, more particularly, to methods, systems, and devices for authenticating embedded graphic indicia. Background Art
[0002] Applicants have recognized the many technical challenges and difficulties associated with printing devices. Summary of the invention
[0003] Various embodiments described herein are provided that relate to methods, apparatus, and systems for authenticating embedded graphic indicia.
[0004] According to some embodiments of the present disclosure, an exemplary printing apparatus for authenticating embedded graphic indicia in printed media is provided.
[0005] In some embodiments, an exemplary printing device includes at least one processor and at least one memory including program code. In some embodiments, the at least one memory and the program code are configured to, using the at least one processor, cause the printing device to: generate a predicted characteristic data object associated with one or more embedded graphic marks based on one or more graphic image data objects from an image buffer; generate an identification characteristic data object associated with the one or more embedded graphic marks based on one or more graphic mark characteristic user input data objects; determine whether the predicted characteristic data object matches the identification characteristic data object; and in response to determining that the predicted characteristic data object matches the identification characteristic data object, perform one or more verification operations associated with the printed medium.
[0006] In some embodiments of the exemplary printing device, before generating the predictive characteristic data object, the at least one memory and the program code are configured to utilize the at least one processor to cause the exemplary printing device to: receive one or more print script data objects; generate the one or more graphics image data objects based at least in part on the one or more print script data objects; and store the one or more graphics image data objects in the image buffer.
[0007] In some embodiments of the exemplary printing device, the at least one memory and the program code are configured to utilize the at least one processor to enable the exemplary printing device to: generate the predictive characteristic data object based at least in part on inputting the one or more graphic image data objects into an embedded graphic marker prediction machine learning model.
[0008] In some embodiments of the exemplary printing apparatus, the at least one memory and the program code are configured to, with the at least one processor, cause the exemplary printing apparatus to: receive the one or more graphic mark characteristic user input data objects from a graphic mark characteristic identification user interface.
[0009] In some embodiments of the exemplary printing apparatus, the predicted characteristic data object indicates a predicted quantity associated with the one or more embedded graphic indicia. In some embodiments of the exemplary printing apparatus, the identification characteristic data object indicates an actual quantity associated with the one or more embedded graphic indicia.
[0010] In some embodiments of the exemplary printing apparatus, the predicted characteristic data object indicates one or more predicted symbology types associated with the one or more embedded graphic marks. In some embodiments of the exemplary printing apparatus, the identification characteristic data object indicates one or more actual symbology types associated with the one or more embedded graphic marks.
[0011] In some embodiments of the exemplary printing device, the predicted characteristic data object indicates one or more predicted positions associated with the one or more embedded graphic marks. In some embodiments of the exemplary printing device, the identified characteristic data object indicates one or more actual positions associated with the one or more embedded graphic marks.
[0012] In some embodiments of the exemplary printing apparatus, the predicted characteristic data object indicates one or more predicted sizes associated with the one or more embedded graphic marks. In some embodiments of the exemplary printing apparatus, the identified characteristic data object indicates one or more actual sizes associated with the one or more embedded graphic marks.
[0013] In some embodiments of the exemplary printing device, the at least one memory and the program code are configured to, with the at least one processor, cause the printing device to: generate a characteristic mismatch warning data object in response to determining that the predicted characteristic data object does not match the identified characteristic data object.
[0014] In some embodiments of the exemplary printing device, the characteristic mismatch warning data object indicates an incomplete authentication operation associated with the printed medium.
[0015] According to some embodiments of the present disclosure, an exemplary computer program product for verifying an embedded image indicia in a printed indicia is provided.
[0016] In some embodiments, an exemplary computer program product includes at least one non-transitory computer-readable storage medium having computer-readable program code portions stored therein. In some embodiments, the computer-readable program code portions include executable portions configured to: generate a predicted characteristic data object associated with one or more embedded graphic indicia based on one or more graphic image data objects from an image buffer; generate an identification characteristic data object associated with the one or more embedded graphic indicia based on one or more graphic indicia characteristic user input data objects; determine whether the predicted characteristic data object matches the identification characteristic data object; and in response to determining that the predicted characteristic data object matches the identification characteristic data object, perform one or more verification operations associated with the printed medium.
[0017] In some embodiments of an exemplary computer program product, the computer-readable program code portions include executable portions configured to: receive one or more print script data objects; generate the one or more graphics image data objects based at least in part on the one or more print script data objects; and store the one or more graphics image data objects in the image buffer.
[0018] In some embodiments of the exemplary computer program product, the computer readable program code portions include executable portions configured to generate the predictive characteristic data object based at least in part on inputting the one or more graphic image data objects into an embedded graphic marker predictive machine learning model.
[0019] In some embodiments of the exemplary computer program product, the computer readable program code portions include executable portions configured to receive the one or more graphical marker characteristic user input data objects from a graphical marker characteristic identification user interface.
[0020] In some embodiments of the exemplary computer program product, the predicted property data object indicates a predicted quantity associated with the one or more embedded graphical indicia. In some embodiments of the exemplary computer program product, the identified property data object indicates an actual quantity associated with the one or more embedded graphical indicia.
[0021] In some embodiments of the exemplary computer program product, the predicted property data object indicates one or more predicted symbology types associated with the one or more embedded graphic marks. In some embodiments of the exemplary computer program product, the identification property data object indicates one or more actual symbology types associated with the one or more embedded graphic marks.
[0022] In some embodiments of the exemplary computer program product, the predicted characteristic data object indicates one or more predicted positions associated with the one or more embedded graphic marks. In some embodiments of the exemplary computer program product, the identified characteristic data object indicates one or more actual positions associated with the one or more embedded graphic marks.
[0023] In some embodiments of the exemplary computer program product, the predicted property data object indicates one or more predicted sizes associated with the one or more embedded graphic marks. In some embodiments of the exemplary computer program product, the identified property data object indicates one or more actual sizes associated with the one or more embedded graphic marks.
[0024] In some embodiments of the exemplary computer program product, the computer readable program code portions include executable portions configured to: generate a characteristic mismatch warning data object in response to determining that the predicted characteristic data object does not match the identified characteristic data object.
[0025] In some implementations of the exemplary computer program product, the characteristic mismatch warning data object indicates an incomplete authentication operation associated with the printed media.
[0026] According to some embodiments of the present disclosure, an exemplary computer-implemented method for verifying an embedded image indicia in a printed indicia is provided.
[0027] In some embodiments, an exemplary computer-implemented method includes: generating, by a processor, a predicted characteristic data object associated with one or more embedded graphic marks based on one or more graphic image data objects from an image buffer; generating, by the processor, an identification characteristic data object associated with the one or more embedded graphic marks based on one or more graphic mark characteristic user input data objects; determining, by the processor, whether the predicted characteristic data object matches the identification characteristic data object; and in response to determining that the predicted characteristic data object matches the identification characteristic data object, performing, by the processor, one or more verification operations associated with the printed medium.
[0028] In some embodiments, the exemplary computer-implemented method also includes: receiving one or more print script data objects; generating the one or more graphics image data objects based at least in part on the one or more print script data objects; and storing the one or more graphics image data objects in the image buffer.
[0029] In some embodiments, the exemplary computer-implemented method further includes generating the predictive characteristic data object based at least in part on inputting the one or more graphic image data objects into an embedded graphic marker predictive machine learning model.
[0030] In some embodiments, the exemplary computer-implemented method further includes receiving the one or more graphical marker characteristic user input data objects from a graphical marker characteristic identification user interface.
[0031] In some embodiments of the exemplary computer-implemented method, the predicted property data object indicates a predicted quantity associated with the one or more embedded graphic indicia. In some embodiments of the exemplary computer-implemented method, the identified property data object indicates an actual quantity associated with the one or more embedded graphic indicia.
[0032] In some embodiments of the exemplary computer-implemented method, the predicted property data object indicates one or more predicted symbology types associated with the one or more embedded graphic marks. In some embodiments of the exemplary computer-implemented method, the identification property data object indicates one or more actual symbology types associated with the one or more embedded graphic marks.
[0033] In some embodiments of the exemplary computer-implemented method, the predicted characteristic data object indicates one or more predicted positions associated with the one or more embedded graphic marks. In some embodiments of the exemplary computer-implemented method, the identified characteristic data object indicates one or more actual positions associated with the one or more embedded graphic marks.
[0034] In some embodiments of the exemplary computer-implemented method, the predicted property data object indicates one or more predicted sizes associated with the one or more embedded graphic marks. In some embodiments of the exemplary computer-implemented method, the identified property data object indicates one or more actual sizes associated with the one or more embedded graphic marks.
[0035] In some embodiments, the exemplary computer-implemented method further includes generating a characteristic mismatch warning data object in response to determining that the predicted characteristic data object does not match the identified characteristic data object.
[0036] In some embodiments of the exemplary computer-implemented method, the characteristic mismatch warning data object indicates an incomplete authentication operation associated with the printed media.
[0037] The above exemplary invention content and other exemplary objects and / or advantages of the present disclosure and the manner of achieving these objects and / or advantages are further explained in the following detailed description and the accompanying drawings. BRIEF DESCRIPTION OF THE DRAWINGS
[0038] The description of the exemplary embodiments may be read in conjunction with the accompanying drawings. It will be appreciated that, for simplicity and clarity of illustration, the elements shown in the figures are not necessarily drawn to scale unless otherwise described. For example, the dimensions of some of the elements may be exaggerated relative to other elements unless otherwise described. Embodiments incorporating the teachings of the present disclosure are shown and described with respect to the drawings presented herein, in which:
[0039] Figure 1A Provides an exemplary perspective view of an exemplary printing apparatus according to some embodiments of the present disclosure;
[0040] Figure 1B According to some embodiments of the present disclosure, Figure 1A an exemplary perspective view of an exemplary portion of an exemplary printing apparatus shown;
[0041] Figure 1C According to some embodiments of the present disclosure, Figure 1A An exemplary top view of an exemplary portion of an exemplary printing apparatus is shown;
[0042] Figure 2 An exemplary schematic block diagram illustrating exemplary components associated with an exemplary printing apparatus according to some embodiments of the present disclosure is provided;
[0043] Figure 3 An exemplary schematic block diagram of exemplary components associated with an exemplary printing apparatus according to some embodiments of the present disclosure is provided;
[0044] Figure 4 An exemplary flow chart illustrating an exemplary method according to some embodiments of the present disclosure is provided;
[0045] Figure 5 An exemplary process diagram illustrating an exemplary method according to some embodiments of the present disclosure is provided;
[0046] Figure 6 An exemplary graphical indicia property identification user interface according to some embodiments of the present disclosure is shown;
[0047] Figure 7 An exemplary graphical indicia property identification user interface according to some embodiments of the present disclosure is shown;
[0048] Figure 8An exemplary graphical indicia property identification user interface according to some embodiments of the present disclosure is shown; and
[0049] Fig. 9 Exemplary process diagrams illustrating exemplary methods according to some embodiments of the present disclosure are provided. DETAILED DESCRIPTION
[0050] Various embodiments of the present disclosure are described more fully below with reference to the accompanying drawings, in which some but not all embodiments of the present disclosure are shown. In fact, the present disclosure can be embodied in many different forms and should not be construed as being limited to the embodiments set forth herein; on the contrary, these embodiments are provided to enable the present disclosure to meet applicable legal requirements. Unless otherwise indicated, the term "or" is used herein in both alternative and combined senses. The terms "illustrative" and "exemplary" are examples for which there is no indication of a quality level. Terms such as "calculate", "determine", "generate" and / or similar words are used interchangeably herein to refer to the creation, modification or identification of data. In addition, "based on", "at least based on", "at least partially based on", "based upon" and / or similar words are used interchangeably herein in an open manner, so that they do not necessarily indicate only based on or only based on one or more elements mentioned, unless so indicated. Throughout the content, similar reference numerals refer to similar elements.
[0051] As used herein, terms such as "front," "rear," "top," and the like are used for illustrative purposes in the examples provided below to describe the relative positions of certain components or portions of components. Additionally, as will be apparent to one of ordinary skill in the art from this disclosure, the terms "substantially" and "approximately" indicate that the referenced element or associated description is accurate within an applicable engineering tolerance.
[0052] As used herein, the term "comprising" means including but not limited to, and should be interpreted in the manner commonly used in the patent context. It should be understood that the use of broad terms such as "comprising," "including," and "having" provides support for narrower terms such as "consisting of," "consisting essentially of," and "consisting essentially of."
[0053] The phrases "in one embodiment," "according to one embodiment," and the like generally mean that the particular feature, structure, or characteristic following the phrase may be included in at least one embodiment of the present disclosure, and may be included in more than one embodiment of the present disclosure (importantly, such phrases are not necessarily referring to the same embodiment).
[0054] The word “example” or “exemplary” is used herein to mean “serving as an example, instance, or illustration.” Any implementation described herein as “exemplary” is not necessarily to be construed as preferred or advantageous over other implementations.
[0055] If the specification states that a component or feature "may", "can", "could", "should", "will", "preferably", "likely", "usually", "optionally", "for example", "often", or "might" (or other such language) be included or have a property, the specific component or feature is not required to be included or have that property. Such components or features may optionally be included in some embodiments, or may be excluded.
[0056] In various exemplary embodiments, the term "print medium" is used herein to refer to a printable medium (such as a page or paper) on which a printed image (such as a graphic, text, and / or visual image) can be printed. The print medium may correspond to a continuous medium that can be loaded into a printing device in the form of a roll or stack. In some embodiments, the scope of the present disclosure is not limited to having a continuous medium. In some embodiments, the print medium can be divided into one or more parts by perforations defined along the width of the print medium. In an alternative embodiment, the print medium can be divided into one or more parts by one or more marks, which are defined at a predetermined distance from each other along the length of the print medium. In an exemplary embodiment, the continuous stretching of the print medium between two consecutive marks or two consecutive perforations corresponds to a portion of the print medium. In some embodiments, the print medium may correspond to a thermal medium on which content is printed by applying heat to the print medium itself. In an alternative embodiment, the print medium may correspond to a liner medium, a linerless medium, and the like.
[0057] In various exemplary embodiments, the term "print image" is used herein to refer to an image to be printed on a print medium. The print image may include one or more image components in a specified layout, such as but not limited to decodable marks (such as a barcode or QR code), text content, etc.
[0058] In this disclosure, the term "data object" refers to a data structure that represents one or more functionalities and / or characteristics associated with data and / or information. In some embodiments, a data object may be associated with one or more software (e.g., one or more computer programs) and / or one or more hardware (e.g., one or more processors or one or more memories). For example, a data object may provide a functional unit for one or more computer programs.
[0059] In this disclosure, the term "graphic image data object" refers to a type of data object that includes, indicates and / or describes data and / or information associated with a printed image. In some embodiments, an exemplary graphic image data object may be rendered and stored in an image buffer of an exemplary printing device.
[0060] In various exemplary embodiments, the term "image buffer" refers to a storage area reserved in a memory of a printing device. In some embodiments, the image buffer may store one or more graphics image data objects that include or define one or more print images to be printed on a print medium. Based on the print image from the graphics image data object in the image buffer, the printing device may be configured to control the print head of the printing device to print the print image on the print medium at an appropriate time and in an appropriate manner.
[0061] In various exemplary embodiments, the term "print head" is used herein to refer to an assembly that includes one or more burn lines to print a print image (retrieved from an image buffer) on a print medium. In various exemplary embodiments, the term "burn line" is used herein to refer to a print head component that includes a plurality of heating elements disposed thereon that are activated under the control of a control device in a mode that causes an image corresponding to the print image stored in the image buffer to be copied / imprinted on a print medium.
[0062] For example, an exemplary print head of an exemplary printing device may include multiple heating elements in each heating line, which are energized (or heated) and pressed against a ribbon or a print medium (such as thermal paper) to perform a printing operation. In some embodiments, during a printing operation, only one set of heating elements is energized to perform a printing operation. The set of heating elements may be selected based on the positions of various image components included in a printed image to be printed on the print medium.
[0063] See now Figure 1A , Figure 1B and Figure 1C , illustrating exemplary views associated with an exemplary printing device 100 according to some embodiments of the present disclosure.
[0064] Figure 1A An exemplary perspective view of an exemplary printing device 100 is provided. In some embodiments, the exemplary printing device 100 includes: a housing 101, a user interface component 103 (including one or more user input components 105 and one or more user output components 107), a viewing window 109, and a print media output opening 111.
[0065] In some embodiments, the exemplary printing device 100 includes a printing mechanism configured to perform a printing operation on the print medium 113. For example, the printing mechanism may include, but is not limited to, one or more print heads as described above. Figure 1B Additional details associated with the printing mechanism are described.
[0066] In some embodiments, after the printing operation is completed, the print medium 113 exits from the print medium output opening 111 of the exemplary printing device 100, such as Figure 1A In some embodiments, the print medium output opening 111 corresponds to a slot in the housing 101 of the printing device 100 through which the print medium (eg, a printed label) exits.
[0067] In some embodiments, the exemplary printing device 100 includes a marking verifier positioned within the interior of the housing 101. Figure 1B , showing exemplary internal components of an exemplary printing device 100. In some embodiments, these internal components may be integrally integrated into Figure 1A Within the housing 101 of the exemplary printing device 100.
[0068] exist Figure 1A and / or Figure 1B In the example shown, the mark verifier 125 may be positioned at or about the print media output opening 111. In some embodiments, the mark verifier 125 may be part of the exemplary printing device 100 and configured to perform verification operations before and / or after the print media 113 has left the exemplary printing device 100. In some embodiments, the mark verifier 125 associated with the exemplary printing device 100 may be configured to analyze the print quality of an image printed onto a print medium (such as, but not limited to, a label having a decodable mark). In some embodiments, the mark verifier 125 may further perform one or more verification operations, including, but not limited to, comparing the analyzed print quality to certain quality standards (such as ISO / IEC 15415, ISO / IEC 15416, ISO / IEC 15426-1, ISO / IEC 15426-2, ANSI X3.182, etc.). In some embodiments, if the print quality does not meet the standard or contains parameters that are below a minimum acceptable threshold (e.g., as defined by the quality standard), the mark verifier 125 may print diagnostic information onto the print medium. Exemplary diagnostic information may include, but is not limited to, grayscale level, ANSI grade level, numeric ANSI grade, and / or bar width growth percentage. Additional details associated with the mark verifier 125 are described herein, including but not limited to incorporating at least Figure 2 and Figure 3 Those described.
[0069] In some embodiments, the exemplary printing device 100 includes a media roller that provides a print medium 113. In an exemplary embodiment, the media roller may correspond to a roll of print medium 113, which may be a continuous medium, or in some exemplary embodiments, the medium may include a plurality of labels defined (in or on the print medium 113) by means of one or more perforations or one or more marks. In an exemplary embodiment, the plurality of labels in or on the print medium 113 may correspond to portions on which the printing device 100 may be configured to print content. In some examples, the one or more perforations and / or the one or more marks may define an edge between two adjacent labels.
[0070] In an exemplary embodiment, the media roller is received by a media hub, which in turn is coupled to a first electric drive (eg, a motor) that actuates the media hub. When actuated, the media hub rotates the media roller, which further causes the media roller to supply print media 113 to the print mechanism 115.
[0071] In some embodiments, the print mechanism 115 utilizes an ink ribbon 117 and thermally transfers ink from the ink ribbon 117 to the print medium 113 as the print medium 113 passes through the print mechanism 115 .
[0072] In some embodiments, the exemplary printing device 100 includes a ribbon roll that provides an ink ribbon 117. In an exemplary embodiment, the ink ribbon 117 may correspond to an ink medium that can place ink on the print medium 113 to print content on the print medium 113.
[0073] In an exemplary embodiment, the tape roll is received by a tape drive assembly, which can be coupled to a second electrical drive (e.g., a motor) that can be configured to actuate the tape drive assembly. When the tape drive assembly is actuated, the tape drive assembly rotates, which rotates the tape roll and supplies the ink ribbon 117 along a tape path. Along the tape path, the ink ribbon 117 traverses from the tape roll to the print mechanism 115.
[0074] In some embodiments, the printing mechanism 115 includes a thermal print head. For example, the printing mechanism 115 may correspond to a component configured to print content on the print medium 113. In an exemplary embodiment, the printing mechanism 115 may include a plurality of heating elements that are energized and pressed against the ink ribbon 117 to perform a printing operation. In operation, the printing mechanism 115 applies heat to a portion of the ink ribbon 117 and simultaneously presses the ink ribbon 117 against the print medium 113 to transfer the ink onto the print medium 113. In order to press the ink ribbon 117 against the print medium 113, the printing mechanism 115 travels in a downward direction (or vertical downward direction) to push the ink ribbon 117 against the print medium 113. In an embodiment in which the print medium 113 includes thermal paper, the printing mechanism 115 may be directly pressed against the thermal paper to perform one or more printing operations to produce a printed medium. In the present disclosure, the term "printed medium" refers to a print medium on which one or more printed images have been printed.
[0075] In some embodiments, one or more of the plurality of heating elements are energized to perform a printing operation. In some embodiments, one or more heating elements may be selected based on data in a print job (e.g., based on a printed image of a graphic image data object). For example, if a bar code is to be printed, the (energized) one or more heating elements are positioned on the print mechanism 115 in such a way that when the print mechanism 115 is pressed against the ink ribbon 117 and the print medium 113, the bar code is printed on the print medium 113.
[0076] In some embodiments, the example printing device 100 includes a platen roller 119 configured to move the print medium 113 through the example printing device 100. In some embodiments, the platen roller 119 provides a surface for supporting the print medium 113 as the print mechanism 115 applies ink from the ink ribbon 117 to the print medium 113.
[0077] In an exemplary embodiment, after a printing operation, the print medium 113 and the ink ribbon 117 travel along a media path and a ribbon path, respectively. In some embodiments, the print medium 113 traverses along the media path below the mark verifier 125 after a printing operation. In some embodiments, the mark verifier 125 may include an image capture device that is configured to capture an image of the printed content (e.g., printed marks on the print medium 113). Based on the image of the printed content, the printing device 100 (e.g., the mark verifier 125 of the printing device 100) may perform one or more verification operations to verify the printed media (i.e., determine whether the printed content on the printed media is acceptable). In some examples, the results of the verification operations from the printed content may enable the printing device 100 to perform various additional operations, such as, but not limited to, correcting the printed content and / or detecting errors in the printed content.
[0078] In some embodiments, indicia verifier 125 may determine information regarding the ANSI grade associated with the printed media (e.g., by evaluating a grayscale image according to standards such as ISO / IEC 15415 and 15416). In some embodiments, information regarding the ANSI grade may be stored in a digital file for later retrieval, or temporarily displayed on a computer screen. Figure 1B In the example shown (where the indicia verifier 125 is located near the print mechanism 115), the indicia verifier 125 can instruct the print mechanism 115 to immediately print the diagnostic information onto the same label being printed. In some embodiments, the indicia verifier 125 can instruct the platen roller 119 to retract the print medium 113 to print the diagnostic information.
[0079] In the present disclosure, detailed print quality information and / or diagnostic information may be printed directly on the failed label. Examples of useful information that may be printed on the label may include: ANSI rating levels (e.g., "A" to "F"), numeric ANSI grade levels (e.g., from 0.0 to 4.0), pass / fail grades, etc.
[0080] Thus, according to some embodiments, a printer (e.g., exemplary printing device 100) may include a printing mechanism 115 configured to print an image onto a print medium 113. The printer (e.g., exemplary printing device 100) may also include a mark verifier 125 configured to monitor the print quality of the image printed onto the print medium. The mark verifier 125 may be configured to analyze the print quality to determine whether the print quality meets a predetermined quality standard. In some embodiments, when the mark verifier 125 determines that the print quality does not meet the predetermined quality standard, the mark verifier 125 may instruct the printing mechanism 115 to print diagnostic information onto the print medium.
[0081] See now Figure 1C , which is an exemplary block diagram illustrating an embodiment of exemplary components of an exemplary printing device 100.
[0082] Figure 1C The exemplary printing device 100 shown in FIG. 1 includes a printing mechanism 115 and a mark verifier 125 . It should be noted that these elements may be completely or partially placed inside the housing 101 of the exemplary printing device 100 .
[0083] In some embodiments, during operation, print media 113 is fed through exemplary printing device 100 in the direction of arrow 127, as shown in FIG. Figure 1C In some embodiments, the print medium 113 may include a blank label 129 onto which the print mechanism 115 prints an image to produce printed indicia 131 , and the blank label is fed through a print media output opening of the exemplary printing device 100 .
[0084] In some embodiments, the mark verifier 125 can be incorporated into the structure of the housing 101 itself, or positioned at or near the print media output opening of the exemplary printing device 100. In some embodiments, the mark verifier 125 can be a contact image sensor (CIS) device, a one-dimensional image scanner, a two-dimensional image sensor, a scanner, and / or other device for capturing an image printed on the print medium 113 (e.g., the printed mark 131 printed on the print medium 113).
[0085] As described above, the exemplary printing device 100 can be configured so that the print mechanism 115 and the indicia verifier 125 (including the CIS device) are positioned adjacent to or close to each other. In this way, the sensing or scanning of the print quality can occur immediately after the print mechanism 115 prints the image onto the print medium 113. In some embodiments, after the printed indicia 131 is verified, the printed medium (along with the printed indicia 131) exits through the print medium output opening of the housing 101 of the exemplary printing device 100.
[0086] Although Figures 1A to 1C The illustrated printing device 100 illustrates an exemplary thermal transfer printing device, but it should be understood that various embodiments of the present invention may be used in other types of printing devices, such as, but not limited to, ink droplet printing devices, laser toner printing devices, etc.
[0087] See now Figure 2 , shows an exemplary block diagram of a printing device 200. In some embodiments, the printing device 200 may include the above-mentioned Figures 1A to 1CIn some embodiments, printing device 200 may include: a processor 202, a memory 204 communicatively coupled to processor 202, and a power source. Printing device 200 may also include a communication module 206 that is communicatively coupled to one or more of the other printing device components.
[0088] In some embodiments, the processor 202 includes the following electronic circuits, which implement the instructions of the computer program by performing the basic arithmetic, logic, control and input / output (I / O) operations specified by the instructions as described herein. In some embodiments, the processor 202 can be embodied in a variety of different ways. For example, the processor 202 can be embodied as one or more central processing units (CPUs), microcontrollers, microprocessors, controllers, multi-core processors, complex programmable logic devices (CPLDs), co-processing entities, application-specific instruction set processors (ASIPs), etc. Additionally or alternatively, the processor 202 can be embodied as one or more other forms of processing devices or circuits. In the present disclosure, the term "circuit" can refer to a combination of a complete hardware implementation or a hardware and computer program product. In some embodiments, the processor 202 can be embodied as an integrated circuit, an application-specific integrated circuit (ASIC), a field programmable gate array (FPGA), a programmable logic array (PLA), a hardware accelerator, other circuits, etc. In some embodiments, the processor 202 may be configured for a specific purpose, or configured to execute instructions stored in a memory (including a volatile data storage medium and / or a non-volatile data storage medium) or otherwise accessible by the processor 202. Therefore, whether configured by hardware or by a computer program product, or by a combination thereof, when configured accordingly, the processor 202 is capable of performing steps or operations according to embodiments of the present disclosure.
[0089] In some embodiments, printing device 200 may be communicatively connected to network 208 and / or one or more computers via a wired or wireless data link using communications module 206 . In one or more exemplary wireless configurations, the communication module 206 can communicate with one or more computing entities through the network 208 via multiple communication protocols, including but not limited to General Packet Radio Service (GPRS), Universal Mobile Telecommunications System (UMTS), Code Division Multiple Access 4000 (CDMA4000), CDMA4000 1X (1xRTT), Wideband Code Division Multiple Access (WCDMA), Global System for Mobile Communications (GSM), Enhanced Data Rates for GSM Evolution (EDGE), Time Division Synchronous Code Division Multiple Access (TD-SCDMA), Long Term Evolution (LTE), Evolved Universal Terrestrial Radio Access Network (E-UTRAN), Evolution Data Optimized (EVDO), High Speed Packet Access (HSPA), High Speed Downlink Packet Access (HSDPA), IEEE 802.11 (Wi-Fi), Wi-Fi Direct, 802.16 (WiMAX), Ultra Wideband (UWB), Infrared (IR) protocol, Near Field Communication (NFC) protocol, Wibree, Bluetooth protocol, Wireless USB protocol and / or any other wireless protocol. In one or more exemplary wired configurations, the printing device 200 may be communicatively connected to the network 208 and / or one or more computers using the communication module 206 according to one or more wired data transmission protocols, such as, but not limited to, double data rate (DDR), peripheral component interconnect (PCI), PCI Express, serial advanced technology attachment (serial ATA), fiber distributed data interface (FDDI), digital subscriber line (DSL), Ethernet, asynchronous transfer mode (ATM), non-volatile memory express (NVMe), small computer system interface (SCSI), inter-integrated circuit (I2C), serial peripheral interface (SPI), universal serial bus (USB), frame relay, cable data service interface specification (DOCSIS), and / or any other wired transmission protocol. Additionally or alternatively, in some embodiments, the communication module 206 may be configured to communicate via one or more additional and / or alternative communication protocols.
[0090] In some embodiments, the terms "host device", "computing device", "computing entity", "computer" and / or similar terms that can be used interchangeably herein refer to, for example, one or more computers, desktop computers, mobile phones, tablet computers, tablet phones, notebook computers, laptop computers, distributed systems, information kiosks, input terminals, servers, server networks, blade servers, gateways, switches, processing devices, processing entities, set-top boxes, relays, routers, network access points, base stations, etc., and / or any combination of devices or entities suitable for performing the functions, operations and / or processes described herein. Such functions, operations and / or processes may include, for example, transmitting, receiving, operating, processing, displaying, storing, determining, creating, generating, monitoring, evaluating, comparing and / or similar terms that can be used interchangeably herein. In some embodiments, these functions, operations and / or processes may be performed on data, content, information and / or similar terms that can be used interchangeably herein.
[0091] In some embodiments, the exemplary printing device 200 includes or communicates with a memory 204, which may include, but is not limited to, non-volatile data storage media (also referred to as non-volatile memory, non-volatile storage devices, non-volatile media, non-volatile memory storage devices, non-volatile memory circuits and / or similar terms that may be used interchangeably herein) and / or volatile data storage media (also referred to as volatile memory, volatile storage devices, volatile media, volatile memory storage devices, volatile memory circuits and / or similar terms that may be used interchangeably herein).
[0092] In some embodiments, the non-volatile data storage medium may include, but is not limited to, a hard disk, a read-only memory (ROM), a programmable read-only memory (PROM), an erasable programmable read-only memory (EPROM), an electrically erasable programmable read-only memory (EEPROM), etc. Additionally or alternatively, in some embodiments, the non-volatile data storage medium may include, but is not limited to, a hard disk drive (HDD), a solid-state drive (SSD), a flash memory (such as, but not limited to, a serial flash memory, a NAND flash memory, a NOR flash memory, etc.), a multimedia memory card (MMC), a secure digital (SD) memory card, a smart media card, a compact flash (CF) card, a memory stick, etc. Additionally or alternatively, the non-volatile data storage medium may include, but is not limited to, a conductive bridging random access memory (CBRAM), a phase change RAM (PRAM), a ferroelectric RAM (FeRAM), a non-volatile RAM (NVRAM), a magnetic RAM (MRAM), a resistive RAM (RRAM), silicon-oxide-nitride-oxide-silicon (SONOS), a floating junction gate RAM (FJG RAM), a millipede memory, a racetrack memory, etc.
[0093] In some embodiments, the volatile storage device or memory may include, but is not limited to, random access memory (RAM), dynamic random access memory (DRAM), static random access memory (SRAM), fast page mode dynamic random access memory (FPM DRAM), extended data output dynamic random access memory (EDO DRAM), synchronous dynamic random access memory (SDRAM), double data rate synchronous dynamic random access memory (DDR SDRAM), second generation double data rate type synchronous dynamic random access memory (DDR2 SDRAM), third generation double data rate type synchronous dynamic random access memory (DDR3 SDRAM), Rambus dynamic random access memory (RDRAM), two-transistor RAM (TTRAM), semiconductor thyristor RAM (T-RAM), zero capacitor (Z-RAM), Rambus embedded memory module (RIMM), dual in-line memory module (DIMM), single in-line memory module (SIMM), video random access memory (VRAM), cache memory (including various levels), etc.
[0094] In some embodiments, memory 204 may store a database, a database instance, a database management system, data, an application, a program, a program module, a script, a source code, an object code, a byte code, a compiled code, an interpreted code, a machine code, an executable instruction, etc. The terms "database," "database instance," "database management system," and / or similar terms used interchangeably herein may refer to a collection of records or data stored in a computer-readable storage medium using one or more database models, such as a hierarchical database model, a network model, a relational model, an entity-relationship model, an object model, a document model, a semantic model, a graph model, etc.
[0095] In some embodiments, memory 204 may be used to store at least a portion of a database, a database instance, a database management system, data, an application, a program, a program module, a script, a source code, an object code, a byte code, a compiled code, an interpreted code, a machine code, executable instructions, and the like that is executed by, for example, processor 202. Thus, a database, a database instance, a database management system, data, an application, a program, a program module, a script, a source code, an object code, a byte code, a compiled code, an interpreted code, a machine code, executable instructions, and the like may be used to control certain aspects of the operation of example printing device 200 with the assistance of processor 202.
[0096] According to various embodiments of the present invention, memory 204 is configured to store, for example, but not limited to, printer firmware 210 and print quality verification program 212. In some embodiments, printer firmware 210 includes code and / or programs embedded in memory 204 of printing device 200 to provide basic printing functions for printing device 200. In some embodiments, print quality verification program 212 may include and / or define one or more verification operations to be performed by exemplary printing device 200.
[0097] Additionally or alternatively, the memory 204 may include an image buffer 214 that stores one or more graphics image data objects 216. Similar to the examples described above, the image buffer 214 includes a dedicated memory area or storage system for storing image data prior to using the image data for a print operation. For example, the image buffer 214 may store one or more graphics image data objects 216 that include data and / or information associated with a print image to be printed on a print medium, as described above.
[0098] In some embodiments, a graphical user interface (GUI) 230 is operatively / communicatively coupled to the processor 202 to control the operation of the printing device 200, among other functions. In some embodiments, the GUI 230 may include a display (e.g., but not limited to, a touch screen) that may present one or more user interfaces according to some embodiments of the present disclosure, such as, but not limited to, one or more graphical indicia characteristic identification user interfaces. Additional details associated with one or more graphical indicia characteristic identification user interfaces are described herein.
[0099] exist Figure 2 In the example shown, the mark verifier 218 is disposed in the printing device 200 and is configured to capture a representation of the printed medium (e.g., but not limited to, the image sensor of the mark verifier 218) using an image sensor 226 (e.g., but not limited to, the image sensor of the mark verifier 218) to obtain a captured image. In some embodiments, the image sensor 226 includes a light source 228 for illuminating the field of view. In some embodiments, the image sensor 226 uses an imaging lens (or multiple lenses) to form a true image of the field of view 224 on a light sensor array (e.g., a linear or two-dimensional (2D) array charge-coupled device (CCD), a complementary metal oxide semiconductor (CMOS) sensor, etc.). In some embodiments, the electronic signal from the light sensor is used to form a grayscale or color image, which will result in a digital image similar to a digital image that can be obtained by a digital camera. In some embodiments, the processor 202 is also configured to implement the steps of the method described above according to various embodiments of the present invention.
[0100] See now Figure 3 , illustrates an exemplary printing device 301 (eg, a printing mechanism) that is communicatively coupled to an indicia verifier 303 in a system 300 for printing an image and verifying print quality of a printed medium.
[0101] In some embodiments, the printing device 301 may be similar to Figures 1A to 1C The printing device 100 is depicted, except that the indicia verifier 303 is separate from the printing device 301 in the system 300, such as Figure 3 shown.
[0102] In some embodiments, the printing device 301 may include the above Figures 1A to 1C In some embodiments, printing device 301 may include: a processor, a memory communicatively coupled to the processor, and a power supply. In some embodiments, printing device 301 may include a communication module that is communicatively coupled to one or more of the other components. In some embodiments, printing device 301 may have fewer or greater numbers of the components described above.
[0103] In some embodiments, the badge verifier 303 includes an imaging module 305, a memory (e.g., but not limited to, a verifier memory 307) communicatively coupled to the imaging module 305, and a verifier processor 309 (e.g., but not limited to, a central processing unit (CPU)) communicatively coupled to the verifier memory 307 and the imaging module 305. In some embodiments, the badge verifier 303 may also include an I / O module 311 and a verifier communication module 313.
[0104] In some embodiments, the validator processor 309 includes the following electronic circuits that implement the instructions of the computer program by performing basic arithmetic, logic, control, and input / output (I / O) operations specified by the instructions as described herein. In some embodiments, the validator processor 309 can be embodied in a variety of different ways. For example, the validator processor 309 can be embodied as one or more central processing units (CPUs), microcontrollers, microprocessors, controllers, multi-core processors, complex programmable logic devices (CPLDs), co-processing entities, application-specific instruction set processors (ASIPs), etc. Additionally or alternatively, the validator processor 309 can be embodied as one or more other forms of processing devices or circuits. In the present disclosure, the term "circuit" may refer to a combination of a complete hardware implementation or a hardware and computer program product. In some embodiments, the validator processor 309 can be embodied as an integrated circuit, an application-specific integrated circuit (ASIC), a field programmable gate array (FPGA), a programmable logic array (PLA), a hardware accelerator, other circuits, etc. In some embodiments, the validator processor 309 may be configured for a specific purpose, or configured to execute instructions stored in a memory (including a volatile data storage medium and / or a non-volatile data storage medium) or otherwise accessible by the validator processor 309. Therefore, whether configured by hardware or by a computer program product, or by a combination thereof, when configured accordingly, the validator processor 309 is capable of performing steps or operations according to embodiments of the present disclosure.
[0105] In some embodiments, the validator memory 307 may include, but is not limited to, non-volatile data storage media (also referred to as non-volatile memory, non-volatile storage devices, non-volatile media, non-volatile memory storage devices, non-volatile memory circuits and / or similar terms that may be used interchangeably herein) and / or volatile data storage media (also referred to as volatile memory, volatile storage devices, volatile media, volatile memory storage devices, volatile memory circuits and / or similar terms that may be used interchangeably herein).
[0106] In some embodiments, the non-volatile data storage medium may include, but is not limited to, a hard disk, a read-only memory (ROM), a programmable read-only memory (PROM), an erasable programmable read-only memory (EPROM), an electrically erasable programmable read-only memory (EEPROM), etc. Additionally or alternatively, in some embodiments, the non-volatile data storage medium may include, but is not limited to, a hard disk drive (HDD), a solid-state drive (SSD), a flash memory (such as, but not limited to, a serial flash memory, a NAND flash memory, a NOR flash memory, etc.), a multimedia memory card (MMC), a secure digital (SD) memory card, a smart media card, a compact flash (CF) card, a memory stick, etc. Additionally or alternatively, the non-volatile data storage medium may include, but is not limited to, a conductive bridging random access memory (CBRAM), a phase change RAM (PRAM), a ferroelectric RAM (FeRAM), a non-volatile RAM (NVRAM), a magnetic RAM (MRAM), a resistive RAM (RRAM), silicon-oxide-nitride-oxide-silicon (SONOS), a floating junction gate RAM (FJG RAM), a millipede memory, a racetrack memory, etc.
[0107] In some embodiments, the volatile storage device or memory may include, but is not limited to, random access memory (RAM), dynamic random access memory (DRAM), static random access memory (SRAM), fast page mode dynamic random access memory (FPM DRAM), extended data output dynamic random access memory (EDO DRAM), synchronous dynamic random access memory (SDRAM), double data rate synchronous dynamic random access memory (DDR SDRAM), second generation double data rate type synchronous dynamic random access memory (DDR2 SDRAM), third generation double data rate type synchronous dynamic random access memory (DDR3 SDRAM), Rambus dynamic random access memory (RDRAM), two-transistor RAM (TTRAM), semiconductor thyristor RAM (T-RAM), zero capacitor (Z-RAM), Rambus embedded memory module (RIMM), dual in-line memory module (DIMM), single in-line memory module (SIMM), video random access memory (VRAM), cache memory (including various levels), etc.
[0108] In some embodiments, the validator memory 307 may store a database, a database instance, a database management system, data, an application, a program, a program module, a script, a source code, an object code, a byte code, a compiled code, an interpreted code, a machine code, an executable instruction, etc. The terms "database", "database instance", "database management system" and / or similar terms used interchangeably herein may refer to a collection of records or data stored in a computer-readable storage medium using one or more database models (such as a hierarchical database model, a network model, a relational model, an entity-relationship model, an object model, a document model, a semantic model, a graph model, etc.).
[0109] In some embodiments, the validator memory 307 may be used to store at least a portion of a database, a database instance, a database management system, data, an application, a program, a program module, a script, a source code, an object code, a byte code, a compiled code, an interpreted code, a machine code, executable instructions, etc., which is executed by, for example, the validation processor 202. Thus, the database, the database instance, the database management system, data, the application, the program, the program module, a script, a source code, an object code, a byte code, a compiled code, an interpreted code, a machine code, executable instructions, etc. may be used to control certain aspects of the validation operation with the assistance of the validator processor 309.
[0110] According to various embodiments of the invention, the verifier memory 307 is configured to store, for example, but not limited to, verifier firmware 317 and print quality verification program 319. In some embodiments, the verifier firmware 317 includes code and / or programs embedded in the verifier memory 307 to provide verification operations for the exemplary indicia verifier 303. In some embodiments, the print quality verification program 319 may include and / or define one or more verification operations to be performed by the exemplary indicia verifier 303.
[0111] Additionally or alternatively, the verifier memory 307 may include an image buffer 321 storing one or more graphic image data objects 323. Similar to those examples described above, the image buffer 321 includes a dedicated memory area or storage system of the verifier memory 307 for storing one or more print images used in printing operations and / or verification operations. For example, the image buffer 321 may store one or more graphic image data objects 323, which, as described above, include data and / or information associated with one or more print images to be printed on a print medium. In some embodiments, the one or more graphic image data objects 323 may be used in one or more verification operations described herein.
[0112] In some embodiments, Figure 3The subsystems in the tag verifier 303 are electrically connected via couplers (e.g., wires, traces, etc.) to form an interconnected subsystem. In some embodiments, the interconnected system may include a power bus or line, a data bus, a command bus, an address bus, etc., which allows the operation of the modules / subsystems and the interaction between them.
[0113] Although Figure 3 The example shown depicts a validator memory 307 and a validator processor 309 in a tag validator 303, but it should be noted that the scope of the present disclosure is not limited to Figure 3 Example shown. In some embodiments, only the printing device 301, only the mark verifier 303, or both the printing device 301 and the mark verifier 303 communicatively coupled thereto may include a memory and a processor for performing the steps described above (for example, at least one of the mark verifier and the printing device includes: a memory communicatively coupled to the imaging module, and a processor communicatively coupled to the imaging module and the memory). In some embodiments, the mark verifier 303 attached to the printing device may rely on the memory and processor of the printing device to perform the steps as described herein, and / or the mark verifier 303 is a stand-alone device having its own verifier memory 307 and verifier processor 309 for performing the steps as described herein. Additionally or alternatively, the printing device may rely on the verifier memory 307 and verifier processor 309 of the mark verifier 303 attached to the printing device to perform the steps as described herein.
[0114] In some embodiments, imaging module 305 disposed in indicia verifier 303 is configured to use image sensor 331 (i.e., an image sensor from imaging module 305) to capture a printed image within field of view 329 (e.g., Figure 3 In some embodiments, the image sensor 331 includes a light source 333 for illuminating the field of view 329. In some embodiments, the image sensor 331 uses an imaging lens (or multiple imaging lenses) to form a real image of the field of view 329 on a light sensor array (such as, but not limited to, a linear or two-dimensional (2D) array charge-coupled device (CCD), a complementary metal oxide semiconductor (CMOS) sensor, a contact image sensor (CIS) device, etc.). In some embodiments, the electronic signal from the light sensor is used to form a grayscale or color image (which will result in a digital image that can be obtained by a digital camera).
[0115] In some embodiments, indicia verifier 303 may include a verifier communication module 313 for communicating with one or more computers or networks 315 via a wired or wireless data link. In one or more exemplary wireless configurations, the authenticator communication module 313 can communicate with one or more computing entities through the network 315 via a variety of communication protocols, including but not limited to General Packet Radio Service (GPRS), Universal Mobile Telecommunications System (UMTS), Code Division Multiple Access 4000 (CDMA4000), CDMA4000 1X (1xRTT), Wideband Code Division Multiple Access (WCDMA), Global System for Mobile Communications (GSM), Enhanced Data Rates for GSM Evolution (EDGE), Time Division Synchronous Code Division Multiple Access (TD-SCDMA), Long Term Evolution (LTE), Evolved Universal Terrestrial Radio Access Network (E-UTRAN), Evolution Data Optimized (EVDO), High Speed Packet Access (HSPA), High Speed Downlink Packet Access (HSDPA), IEEE 802.11 (Wi-Fi), Wi-Fi Direct, 802.16 (WiMAX), Ultra Wideband (UWB), Infrared (IR) protocol, Near Field Communication (NFC) protocol, Wibree, Bluetooth protocol, Wireless USB protocol and / or any other wireless protocol. In one or more exemplary wired configurations, the tag verifier 303 may be communicatively connected to the network 315 and / or one or more computers using the verifier communication module 313 according to one or more wired data transmission protocols, such as but not limited to double data rate (DDR), peripheral component interconnect (PCI), PCI Express, serial advanced technology attachment (serial ATA), fiber distributed data interface (FDDI), digital subscriber line (DSL), Ethernet, asynchronous transfer mode (ATM), non-volatile memory express (NVMe), small computer system interface (SCSI), inter-integrated circuit (I2C), serial peripheral interface (SPI), universal serial bus (USB), frame relay, cable data service interface specification (DOCSIS), and / or any other wired transmission protocol. Additionally or alternatively, in some embodiments, the verifier communication module 313 may be configured to communicate via one or more additional and / or alternative communication protocols.
[0116] In some embodiments, the terms "host device", "computing device", "computing entity", "computer" and / or similar terms that can be used interchangeably herein refer to, for example, one or more computers, desktop computers, mobile phones, tablet computers, tablet phones, notebook computers, laptop computers, distributed systems, information kiosks, input terminals, servers, server networks, blade servers, gateways, switches, processing devices, processing entities, set-top boxes, relays, routers, network access points, base stations, etc., and / or any combination of devices or entities suitable for performing the functions, operations and / or processes described herein. Such functions, operations and / or processes may include, for example, transmitting, receiving, operating, processing, displaying, storing, determining, creating, generating, monitoring, evaluating, comparing and / or similar terms that can be used interchangeably herein. In some embodiments, these functions, operations and / or processes may be performed on data, content, information and / or similar terms that can be used interchangeably herein.
[0117] In some embodiments, the I / O module 311 may include a validator graphical user interface. In some embodiments, the I / O module 311 may include a display (e.g., but not limited to, a touch screen) that may present one or more user interfaces according to some embodiments of the present disclosure, such as, but not limited to, one or more graphical marker characteristic identification user interfaces. Additional details associated with one or more graphical marker characteristic identification user interfaces are described herein.
[0118] Although the above combination Figure 2 and Figure 3 The description provides exemplary components of an exemplary printing device according to some embodiments of the present disclosure, but it should be noted that the scope of the present disclosure is not limited to the above description. In some examples, the exemplary printing device may include one or more additional and / or alternative components. For example, the exemplary printing device may include one or more input elements (such as keyboard input, mouse input, touch screen / display input, motion input, mobile input, audio input, pointing device input, joystick input, keypad input, etc.) or communicate with the one or more input elements. Additionally or alternatively, the exemplary printing device may include one or more output components (such as but not limited to audio output, video output, screen / display output, motion output, mobile output, etc.) or communicate with the one or more output components. Additionally or alternatively, the exemplary printing device may include one or more other components or communicate with the one or more other components.
[0119] As mentioned above, there are many technical challenges and difficulties associated with printing devices. For example, there are many technical challenges and difficulties associated with verifying embedded graphic marks.
[0120] In the present disclosure, the term "mark" or "decodable mark" refers to one or more encoded symbols and / or symbol collections used for purposes such as, but not limited to, identification, data storage, communication, etc. Exemplary marks according to some embodiments of the present disclosure may include, but are not limited to, one or more bar codes, one or more QR codes, etc.
[0121] In some embodiments, the exemplary printed image may be in the form of a graphic image. In the present disclosure, the term "embedded graphic mark" refers to a type of mark embedded in a printed image in the form of a graphic image. For example, the exemplary graphic image may be in a format such as, but not limited to, JPG, GIF, and / or PNG to provide a printed image for printing by an exemplary printing device. In such examples, the embedded graphic mark may be one or more components or parts of the exemplary graphic image / printed image.
[0122] As an example, a user may use one or more computing devices and / or one or more image capture devices to generate a graphical image (e.g., a PNG image) that shows a label to be printed by an exemplary printing device. In such an example, image elements of the graphical image (e.g., pixels of the graphical image) may embed and / or show one or more graphical marks (e.g., one or more barcodes, one or more QR codes, etc.) such that the one or more graphical marks are part of the label in the graphical image. Continuing with this example, a user may upload the graphical image (e.g., a PNG image) to the exemplary printing device as a print image for printing, and the exemplary printing device may print out a label on a print medium based on the graphical image including the one or more embedded graphical marks (e.g., one or more barcodes, one or more QR codes, etc.).
[0123] As described above, an exemplary printing device according to some embodiments of the present disclosure may include or communicate with a mark verifier. In such an example, the mark verifier may perform one or more verification operations to verify the quality of the mark of the printed medium. For example, the mark verifier may determine whether the print quality of the mark meets the quality standard. Additionally or alternatively, the mark verifier may analyze the image of the printed medium to determine whether any mark is missing from the printed medium and / or is incorrectly printed on the printed medium.
[0124] However, there are many technical challenges and difficulties associated with authenticating printed media where one or more indicia are in the form of embedded graphic indicia. For example, when one or more bar codes are embedded in a graphic image, an exemplary printing device may not be able to recognize the presence of such embedded graphic indicia in the graphic image and may not be able to perform proper authentication operations with respect to the embedded graphic indicia.
[0125] As an example, an exemplary printing device may utilize a mark verifier to grade barcodes on labels when printing labels through a print job. In such an example, when the barcodes in the print job are defined through a barcode command, characteristics associated with the barcode (such as, but not limited to, the number of barcodes, the type of barcode, the position of the barcode, the size of the barcode, etc.) may be included in the barcode command, and the exemplary printing device may perform a verification operation based on the barcode command. However, when the barcode is embedded in a graphic image, the characteristics associated with the barcode (e.g., the number of barcodes, the type of barcode, the position of the barcode, the size of the barcode, etc.) are not provided to the exemplary printing device. In such an example, the exemplary printing device may erroneously determine that there is no barcode to be printed, and may erroneously determine that the printed medium meets the applicable quality standards, even though a verification operation associated with the printed barcode (e.g., verification of whether the printing device actually printed the correct number of barcodes on the printed medium, whether the position of the printed barcode is correct, etc.) has not yet been performed. Other reasons why the exemplary printing device may not recognize the embedded graphic mark may include, but are not limited to, the bar code type is not supported, the size is too small, the graphic image is corrupted, etc.
[0126] Some methods can try to solve such technical problems by requiring users to manually check that the mark verifier has verified each bar code that has been printed on the print medium. However, such methods are time-consuming and user-unfriendly, and are often prone to errors due to manual counting.
[0127] Some approaches may attempt to address such technical issues by storing templates (e.g., in XML format) in an exemplary printing device that define the barcodes included in the graphic image and the location of the barcodes on the label. However, such approaches require that the label be printed out first to extract the data that will form the basis for the information keyed into the template. In addition, the printing device can only have one template active at any one time, which increases operational overhead by replacing templates when transferring jobs with different layouts.
[0128] The inability of many methods to verify embedded graphic marks can create a number of technical issues. For example, in certain industries, there may be severe penalties for companies that produce barcodes that are not scannable and / or do not meet certain quality / grading standards.
[0129] Various embodiments of the present disclosure overcome these technical challenges and difficulties and provide technical improvements and advantages. For example, various embodiments of the present disclosure provide the following exemplary mechanisms for confirming that all bar codes have been identified by the printing device at run time and ensuring that all embedded bar codes in the graphic image are detected and graded without having to manually check each printed label individually. In various embodiments of the present disclosure, the user may not need to print the label before providing the characteristic data associated with the bar code to the printing device, and multiple bar codes may be embedded (e.g., in the print script itself), thereby enabling the continuous printing of labels containing images with different numbers of bar codes.
[0130] Various embodiments of the present disclosure may provide a simplified user interface (e.g., a graphic mark characteristic identification user interface) for a user to enter the number of a barcode in a graphic image for verification without using a template and without requiring the prior action of printing a label. In some embodiments, the exemplary graphic mark characteristic identification user interface provides various technical benefits and advantages, including but not limited to providing the flexibility to send continuous jobs with varying content without any loss of performance / throughput.
[0131] For example, various embodiments of the present disclosure may add one or more configurable data fields that may be entered and / or updated via one or more commands from an image tag characteristic identification user interface (e.g., a user interface of a printing device (e.g., a printer equipped with a touch screen / LCD screen) a web page user interface, a mobile application user interface, etc.) in which a user may enter information such as, but not limited to, the number of barcodes expected on a label when graphic barcode detection is enabled.
[0132] Various embodiments of the present disclosure may store information entered by a user and compare the information to bar codes identified by the printer based on a graphic image data object that is from an image buffer and generated when processing a print job. For example, an exemplary printing device according to some embodiments of the present disclosure may compare predicted characteristics associated with an embedded graphic mark in a graphic image with characteristics associated with the embedded graphic mark identified by a user, and may warn the user if not all bar codes are identified and / or no bar codes can be graded. In other words, when the number of bar codes identified by the printing device mismatches the number defined by the user, the printing device may trigger a mismatch warning to the user.
[0133] Thus, various embodiments of the present disclosure provide the user with a means for ensuring that all barcodes on a label are detected and triggering a mismatch warning to the user if the count does not match the input from the user / system. As illustrated by the various examples herein, templates are no longer required and the user will no longer need to individually compare the results from the printing device to the label design.
[0134] Embodiments of the present disclosure can be implemented in various ways, including being implemented as a computer program product including a product. Such computer program products may include one or more software components, including, for example, software objects, methods, data structures, etc. The software components may be encoded in any of a variety of programming languages. Exemplary programming languages may be low-level programming languages, such as assembly languages associated with a specific hardware architecture and / or operating system platform. Software components including assembly language instructions may need to be converted into executable machine code by an assembler before being executed by the hardware architecture and / or platform. Another exemplary programming language may be a higher-level programming language that can be transplanted across multiple architectures. Software components including higher-level programming language instructions may need to be converted into intermediate representations by an interpreter or compiler before execution.
[0135] Other examples of programming languages include, but are not limited to, macro languages, shell or command languages, job control languages, scripting languages, database query or search languages, and / or report writing languages. In one or more exemplary embodiments, a software component comprising an instruction in one of the aforementioned examples of a programming language can be directly executed by an operating system or other software component without first converting to another form. A software component can be stored as a file or other data storage structure. Software components of similar type or functional relevance can be stored together such as, for example, in a specific directory, folder, or library. A software component can be static (e.g., pre-established or fixed) or dynamic (e.g., created or modified when executed).
[0136] A computer program product may include a non-transitory computer-readable storage medium that stores an application, program, program module, script, source code, program code, object code, byte code, compiled code, interpreted code, machine code, executable instructions, etc. (also referred to herein as executable instructions, instructions for execution, computer program product, program code, and / or similar terms used interchangeably herein). Such non-transitory computer-readable storage media include all computer-readable media (including volatile and non-volatile media).
[0137] In some embodiments, the non-volatile computer-readable storage medium may include a floppy disk, a floppy disk, a hard disk, a solid-state storage (SSS) (e.g., SSD, solid-state card (SSC), solid-state module (SSM)), an enterprise flash drive, a magnetic tape, or any other non-transitory magnetic medium, etc. The non-volatile computer-readable storage medium may also include a punch card, a paper tape, an optical marker sheet (or any other physical medium with a hole pattern or other optically recognizable marker), a CD-ROM, a compact disc rewritable (CD-RW), a digital versatile disc (DVD), a Blu-ray disc (BD), any other non-transitory optical medium, etc. Such non-volatile computer-readable storage medium may also include ROM, PROM, EPROM, EEPROM, flash memory (e.g., serial, NAND, NOR, etc.), a multimedia memory card (MMC), a secure digital (SD) memory card, a smart media card, a CF card, a memory stick, etc. In addition, the non-volatile computer-readable storage medium may also include CBRAM, PRAM, FeRAM, NVRAM, MRAM, RRAM, SONOS, FJG RAM, millipede memory, racetrack memory, etc.
[0138] In some embodiments, volatile computer-readable storage media may include RAM, DRAM, SRAM, FPMDRAM, EDO DRAM, SDRAM, DDR SDRAM, DDR2 SDRAM, DDR3 SDRAM, RDRAM, TTRAM, T-RAM, Z-RAM, RIMM, DIMM, SIMM, VRAM, cache memory (including various levels), flash memory, register memory, etc. It will be appreciated that where embodiments are described as using computer-readable storage media, other types of computer-readable storage media may be used in place of or in addition to the computer-readable storage media described above.
[0139] It should be understood that various embodiments of the present disclosure may also be implemented as methods, apparatuses, systems, computing devices, computing entities, etc. Therefore, the embodiments of the present disclosure may take the form of apparatuses, systems, computing devices, computing entities, etc. that execute instructions stored on a computer-readable storage medium to perform certain steps or operations. Therefore, the embodiments of the present disclosure may also take the form of an entirely hardware embodiment, an entirely computer program product embodiment, and / or an embodiment including a combination of a computer program product and hardware that performs certain steps or operations.
[0140] The embodiments of the present disclosure are described below with reference to block diagrams and flowchart illustrations. Therefore, it should be understood that each box in the block diagram and flowchart illustrations can be implemented in the following forms: a computer program product, a complete hardware implementation, a combination of hardware and computer program products and / or an apparatus, system, computing device, computing entity, etc. for executing instructions, operations, steps and interchangeable similar words (e.g., executable instructions, instructions for execution, program codes, etc.) on a computer-readable storage medium. For example, the retrieval, loading and execution of the code can be performed in sequence so that one instruction is retrieved, loaded and executed at a time. In some exemplary embodiments, retrieval, loading and / or execution can be performed in parallel so that multiple instructions are retrieved, loaded and / or executed together. Therefore, such embodiments can produce a machine of a specific configuration for executing the steps or operations specified in the block diagram and flowchart illustrations. Therefore, the block diagram and flowchart illustrations support various combinations of embodiments for executing specified instructions, operations or steps.
[0141] Various exemplary methods described herein (including, for example, Figures 4 to 9 Those shown) can provide the various technical advantages and / or improvements described above.
[0142] It should be noted that each block in the flowchart and the combination of blocks in the flowchart can be implemented by various components (such as hardware, firmware, circuits and / or other devices associated with the execution of software including one or more computer program instructions). Figures 4 to 9 One or more of the methods described may be embodied by computer program instructions, which may be stored in a non-transitory memory of a device using an embodiment of the present disclosure and executed by a processor in the device. These computer program instructions may instruct a computer or other programmable device to operate in a specific manner, so that the instructions stored in the computer-readable storage memory produce an article, the execution of which implements the functions specified in the flowchart block.
[0143] As described above and based on the present disclosure, it should be understood that the embodiments of the present disclosure can be configured as methods, mobile devices, back-end network devices, etc. Therefore, the embodiments may include various components, which include complete hardware or any combination of software and hardware. In addition, the embodiments may take the form of a computer program product on at least one non-transient computer-readable storage medium, and the computer program product has computer-readable program instructions (e.g., computer software) embodied in the storage medium. Similarly, the embodiments may take the form of a computer program code stored on at least one non-transient computer-readable storage medium. Any suitable computer-readable storage medium may be used, including a non-transient hard disk, a CD-ROM, a flash memory, an optical storage device, or a magnetic storage device.
[0144] See now Figure 4 , exemplary flowchart 400 illustrates an exemplary method according to some embodiments of the present disclosure. For example, exemplary flowchart 400 illustrates an exemplary method for verifying embedded graphic marks in printed media according to some embodiments of the present disclosure.
[0145] As described above, there are technical challenges, deficiencies, and problems associated with printing devices, such as, but not limited to, verifying embedded graphic marks. Various embodiments of the present disclosure overcome such technical challenges and difficulties, and provide various technical improvements and advantages.
[0146] For example, if combined Figure 4 The illustrated exemplary method may generate a predicted characteristic data object associated with one or more embedded graphic marks, generate an identification characteristic data object associated with the one or more embedded graphic marks, and determine whether the predicted characteristic data object matches the identification characteristic data object. Figure 4 The exemplary methods may provide various technical benefits and advantages, including, but not limited to, improving the accuracy of detecting embedded graphic marks from graphic images, and ensuring that verification operations associated with embedded graphic marks are performed correctly.
[0147] See now Figure 4 , the exemplary method according to some embodiments of the present disclosure begins at step / operation 402. After step / operation 402 and / or in response to the step / operation, some exemplary methods according to some embodiments of the present disclosure proceed to step / operation 404. In some embodiments, at step / operation 404, an exemplary processor (such as but not limited to the above combined Figure 2 The processor 202 of the exemplary printing device 200 described above is combined with Figure 3 The example tag verifier 303 (eg, the verifier processor 309, etc.) may generate a predicted characteristic data object.
[0148] In this disclosure, the term "predicted property data object" refers to a type of data object that indicates, describes, and / or includes one or more predictions regarding one or more properties associated with one or more embedded graphic indicia in a graphic image data object.
[0149] For example, an exemplary predictive characteristic data object according to some embodiments of the present disclosure may indicate a predicted quantity associated with the one or more embedded graphic indicia. As an example, an exemplary predictive characteristic data object may indicate that a total of one (1) barcode is predicted to be embedded in a graphic image from a graphic image data object.
[0150] Additionally or alternatively, an exemplary predicted characteristic data object according to some embodiments of the present disclosure may indicate one or more predicted symbology types associated with the one or more embedded graphic marks. As an example, an exemplary predicted characteristic data object may indicate that the type of barcode embedded in a graphic image from a graphic image data object is predicted to be CODE 39.
[0151] Additionally or alternatively, the exemplary predictive characteristic data object may indicate one or more predicted positions associated with the one or more embedded graphic marks. As an example, the exemplary predictive characteristic data object may indicate that a barcode embedded in a graphic image from a graphic image data object is predicted to be at the top of the label.
[0152] Additionally or alternatively, the exemplary predicted characteristic data object may indicate one or more predicted sizes associated with the one or more embedded graphic marks. As an example, the exemplary predicted characteristic data object may indicate a predicted width and / or predicted length associated with a barcode embedded in a graphic image from a graphic image data object.
[0153] Although the above description illustrates exemplary data and / or information associated with an exemplary predictive characteristic data object, it is noted that the scope of the present disclosure is not limited to the above description. In some embodiments, the exemplary predictive characteristic data object may indicate data and / or information, which may include, but is not limited to, a predicted grayscale level associated with one or more embedded graphic marks, a predicted ANSI grade level associated with one or more embedded graphic marks, a predicted numeric ANSI grade associated with one or more embedded graphic marks, a predicted bar width growth percentage associated with one or more embedded graphic marks, and the like.
[0154] In some embodiments, an exemplary processor according to some embodiments of the present disclosure may generate a predictive characteristic data object associated with one or more embedded graphic indicia based on one or more graphic image data objects from an image buffer. Additional details associated with generating predictive characteristic data objects are described herein, including but not limited to combining at least Figure 5 Those described.
[0155] After step / operation 402 and / or step / operation 404 and / or in response to these steps / operations, some exemplary methods according to some embodiments of the present disclosure proceed to step / operation 406. In some embodiments, at step / operation 406, an exemplary processor (such as but not limited to the above combined Figure 2 The processor 202 of the exemplary printing device 200 described above is combined with Figure 3The example tag verifier 303 (eg, the verifier processor 309, etc.) may generate an identification characteristic data object.
[0156] In the present disclosure, the term "identification property data object" refers to a type of data object that indicates, describes and / or includes actual properties of one or more user identifications associated with one or more embedded graphic indicia in a graphic image data object.
[0157] For example, an exemplary identification characteristic data object according to some embodiments of the present disclosure may indicate an actual quantity associated with one or more embedded graphic marks. As an example, an exemplary identification characteristic data object may indicate that a user has identified a total of one (1) barcode embedded in a graphic image from a graphic image data object.
[0158] Additionally or alternatively, an exemplary identification characteristic data object according to some embodiments of the present disclosure may indicate one or more actual symbology types associated with one or more embedded graphic marks. As an example, an exemplary identification characteristic data object may indicate that a user has identified the type of barcode embedded in a graphic image from a graphic image data object as CODE 39.
[0159] Additionally or alternatively, the exemplary identification characteristic data object may indicate one or more actual locations associated with one or more embedded graphic marks. As an example, the exemplary identification characteristic data object may indicate that the user has identified that a barcode embedded in a graphic image from a graphic image data object is located at the top of the label.
[0160] Additionally or alternatively, the exemplary identification characteristics data object may indicate one or more actual sizes associated with one or more embedded graphic marks. As an example, the exemplary identification characteristics data object may indicate a width and / or length that a user has identified as being associated with a barcode embedded in a graphic image from a graphic image data object.
[0161] Although the above description illustrates exemplary data and / or information associated with exemplary identification characteristic data objects, it is noted that the scope of the present disclosure is not limited to the above description. In some embodiments, the exemplary identification characteristic data objects may indicate data and / or information, which may include, but are not limited to, an actual grayscale level associated with one or more embedded graphic marks, an actual ANSI grade level associated with one or more embedded graphic marks, an actual numeric ANSI grade associated with one or more embedded graphic marks, an actual bar width growth percentage associated with one or more embedded graphic marks, and the like.
[0162] In some embodiments, the exemplary processor generates an identification characteristic data object associated with one or more embedded graphical marks based on the one or more graphical mark characteristic user input data objects. In some embodiments, the exemplary processor receives the one or more graphical mark characteristic user input data objects from a graphical mark characteristic identification user interface. Additional details associated with the graphical mark characteristic user input data objects and the graphical mark characteristic identification user interface are described herein, including but not limited to incorporating Figures 6 to 8 Those described.
[0163] After step / operation 404 and / or step / operation 406 and / or in response to these steps / operations, some exemplary methods according to some embodiments of the present disclosure proceed to step / operation 408. In some embodiments, at step / operation 408, an exemplary processor (such as but not limited to the above combined Figure 2 The processor 202 of the exemplary printing device 200 described above is combined with Figure 3 The validator processor 309 of the exemplary tag validator 303 (or the like) may determine whether the predicted characteristic data object matches the identified characteristic data object.
[0164] For example, the exemplary processor may determine whether a predicted quantity associated with one or more embedded graphic markers based on the predicted characteristic data object generated at step / operation 404 matches an actual quantity associated with one or more embedded graphic markers based on the identified characteristic data object generated at step / operation 406.
[0165] Additionally or alternatively, the exemplary processor may determine whether a predicted symbology type associated with one or more embedded graphic marks based on the predicted characteristic data object generated at step / operation 404 matches an actual symbology type associated with one or more embedded graphic marks based on the identification characteristic data object generated at step / operation 406.
[0166] Additionally or alternatively, the exemplary processor may determine whether one or more predicted positions associated with one or more embedded graphic markers based on the predicted characteristic data object generated at step / operation 404 match one or more actual positions associated with one or more embedded graphic markers based on the identified characteristic data object generated at step / operation 406.
[0167] Additionally or alternatively, the exemplary processor may determine whether one or more predicted sizes associated with one or more embedded graphic marks based on the predicted characteristic data object generated at step / operation 404 match one or more actual sizes associated with one or more embedded graphic marks based on the identification characteristic data object generated at step / operation 406.
[0168] Although the above description provides some exemplary comparison operations performed by an exemplary processor, it should be noted that the scope of the present disclosure is not limited to the above examples.
[0169] If at step / operation 408, the example processor determines that the predicted characteristic data object matches the identified characteristic data object, some example methods of the present disclosure proceed to step / operation 410. At step / operation 410, at step / operation 410, an example processor (such as, but not limited to, the above combination) Figure 2 The processor 202 of the exemplary printing device 200 described above is combined with Figure 3 The example tag verifier 303 (eg, the verifier processor 309, etc.) may perform one or more verification operations.
[0170] For example, in response to determining that the predicted characteristic data object matches the identified characteristic data object, the exemplary processor may perform one or more verification operations associated with the printed medium, which may include, but are not limited to: causing a printing device to print a print image on the print medium, capturing an image of the printed medium, and determining whether the captured image of the print medium matches the print image from the graphic image data object in the image buffer. Additional details associated with the verification operations may include, but are not limited to, combining at least Fig. 9 Those described.
[0171] If at step / operation 408, the example processor determines that the predicted characteristic data object does not match the identified characteristic data object, some example methods of the present disclosure proceed to step / operation 412. At step / operation 412, at step / operation 412, the example processor (such as, but not limited to, the above combination) Figure 2 The processor 202 of the exemplary printing device 200 described above is combined with Figure 3 The example tag verifier 303 (eg, the verifier processor 309 ) may generate a property mismatch warning data object.
[0172] In the present disclosure, the term "property mismatch warning data object" refers to a type of data object that indicates that a mismatch exists between predicted characteristics associated with one or more embedded graphical indicia and actual characteristics associated with the one or more embedded graphical indicia.
[0173] For example, in response to determining that the predicted characteristic data object does not match the identified characteristic data object, an exemplary processor according to some embodiments of the present disclosure may generate a characteristic mismatch warning data object indicating an incomplete verification operation associated with the printed medium. In such an example, the printing device may present the characteristic mismatch warning data object on a user interface (such as, but not limited to, a user interface of a printer) so that a user is notified that the exemplary printing device cannot perform a complete verification of the printed medium due to the inability to verify the embedded graphic mark (e.g., the image file is corrupted, the embedded graphic mark is not supported, etc.).
[0174] Although the above description provides some exemplary operations when the predicted characteristic data object does not match the identification characteristic data object, it should be noted that the scope of the present disclosure is not limited to the above description. In some examples, the exemplary method may perform one or more operations. For example, the exemplary method according to some embodiments of the present disclosure may abandon printing a graphic image in response to determining that the predicted characteristic data object does not match the identification characteristic data object. Additionally or alternatively, the exemplary method according to some embodiments of the present disclosure may perform a verification operation based on the characteristics defined by the identification characteristic data object (rather than based on the characteristics defined by the predicted characteristic data object) in response to determining that the predicted characteristic data object does not match the identification characteristic data object.
[0175] See again Figure 4 After and / or in response to step / operation 410 and / or step / operation 412, some exemplary methods of the present disclosure proceed to step / operation 414 and end.
[0176] See now Figure 5 , exemplary process diagram 500 illustrates an exemplary method according to some embodiments of the present disclosure. For example, exemplary process diagram 500 illustrates exemplary operations associated with generating a predictive property data object according to some embodiments of the present disclosure.
[0177] exist Figure 5 In the example shown, some exemplary methods of the present disclosure may include: receiving one or more print script data objects 501. For example, the one or more print script data objects may be processed by one or more processors associated with the exemplary printing device (such as but not limited to the above combination Figure 2 The processor 202 of the exemplary printing device 200 described above is combined with Figure 3 The exemplary tag verifier 303 may be received by the verifier processor 309, etc.
[0178] In the present disclosure, the term "print script data object" refers to a class of data objects that include one or more processor-executable instructions and / or commands that define the printing operation of an exemplary printing device. For example, an exemplary print script data object may include, describe and / or indicate data and / or information, such as, but not limited to, a print layout, a number of printed media, a size of the printed media, etc. Additionally or alternatively, an exemplary print script data object may include one or more print images (e.g., in the form of graphical images).
[0179] In some embodiments, according to Figure 5 Some example methods may include generating one or more graphic image data objects 503 based at least in part on one or more print script data objects 501 .
[0180] For example, an exemplary processor associated with an exemplary printing device (such as, but not limited to, the above combination Figure 2 The processor 202 of the exemplary printing device 200 described above is combined with Figure 3 The example processor 309 of the example marking verifier 303 (e.g., the example processor 309 of the example marking verifier 303) may generate one or more graphic image data objects 503 based at least in part on extracting data and / or information associated with one or more graphic images from the print script data object. For example, one or more processor executable instructions and / or commands from the print script data object may define or indicate one or more memory addresses where one or more print images in the form of graphic images are stored in a memory. In such an example, the example processor may retrieve the one or more graphic images based on the memory addresses, and may generate one or more graphic image data objects 503 based on the one or more graphic images.
[0181] In some embodiments, according to Figure 5 Some exemplary methods may include storing one or more graphics image data objects 503 in an image buffer. For example, the exemplary processor may store one or more graphics image data objects 503 in the above combined Figure 2 Additionally or alternatively, the exemplary processor may store one or more graphics image data objects 503 in the above combined Figure 3 The image buffer 321.
[0182] In some embodiments, according to Figure 5 Some exemplary methods may include generating a predictive characteristic data object 507 based at least in part on inputting one or more graphic image data objects 503 into an embedded graphic marker prediction machine learning model 505.
[0183] In the present disclosure, the term "embedded graphic mark prediction machine learning model" refers to a type of machine learning model that has been trained to generate predictions about characteristics associated with embedded graphic marks in a graphic image data object. For example, the embedded graphic mark prediction machine learning model 505 may be trained to generate one or more prediction characteristics data objects, which may include, for example, but not limited to, a predicted number associated with one or more embedded graphic marks in the graphic image data object, one or more predicted symbology types associated with one or more embedded graphic marks in the graphic image data object, one or more predicted positions associated with one or more embedded graphic marks in the graphic image data object, one or more predicted sizes associated with one or more embedded graphic marks in the graphic image data object, and the like. For example, the exemplary embedded graphic mark prediction machine learning model may be trained based on inputting a graphic image data object associated with: a predetermined number of embedded graphic marks, a predetermined symbology type for the embedded graphic marks, a predetermined position for the embedded graphic marks, a predetermined size for the embedded graphic marks, and the like. In such an example, the exemplary embedded graphic mark prediction machine learning model may adjust its parameters to produce a predicted number of embedded graphic marks that is the same as a predetermined number of embedded graphic marks, a predicted symbology type of the embedded graphic mark that is the same as a predetermined symbology type of the embedded graphic mark, a predicted position of the embedded graphic mark that is the same as a predetermined position of the embedded graphic mark, a predicted size of the embedded graphic mark that is the same as a predetermined size of the embedded graphic mark, and the like.
[0184] Exemplary embedded graphic marker prediction machine learning models according to some embodiments of the present disclosure may include, but are not limited to, convolutional neural networks (CNNs), support vector machines (SVMs), and the like.
[0185] See now Figure 6 , Figure 7 and Figure 8 , provides an exemplary graphical marker feature identification user interface according to some embodiments of the present disclosure. In particular, Figure 6 An exemplary graphical indicia property identification user interface 600 that may be presented on a display associated with an exemplary printing device is shown. Figure 7 An exemplary graphical indicia property identification user interface 700 that may be presented on a web page interface is shown. Figure 8 An exemplary graphical indicia property identification user interface 800 that may be presented on a display associated with a mobile device is shown. Figure 6 , Figure 7 and Figure 8In each of the illustrated examples, one or more graphical mark characteristic user input data objects may be generated based on user input via the example graphical mark characteristic identification user interface.
[0186] exist Figure 6 In the example shown, the exemplary graphical indicia property identification user interface 600 includes various user interface elements, such as, but not limited to, a back button 602, a home button 604, an acknowledgement button 608, and a cancel button 610. In some embodiments, the exemplary graphical indicia property identification user interface 600 also includes data fields, such as, but not limited to, a barcode quantity data field 606A, a barcode type data field 606B, a barcode position data field 606C, and a barcode size data field 606D.
[0187] For example, in response to a user selection of the barcode quantity data field 606A, the example graphical indicia characteristic identification user interface 600 may be updated to include one or more user input interface elements (e.g., one or more input boxes) that allow the user to enter the number of barcodes embedded in the graphic image. In some embodiments, the example processor may generate one or more graphical indicia characteristic user input data objects based on the one or more user inputs.
[0188] Additionally or alternatively, in response to the user's selection of the barcode type data field 606B, the example graphic mark characteristic identification user interface 600 may be updated to provide one or more user input interface elements (e.g., one or more input boxes) that allow the user to input the type of the barcode embedded in the graphic image. In some embodiments, the example processor may generate one or more graphic mark characteristic user input data objects based on the one or more user inputs.
[0189] Additionally or alternatively, in response to the user's selection of the barcode location data field 606C, the example graphical mark characteristic identification user interface 600 may be updated to provide one or more user input interface elements (e.g., one or more input boxes) that allow the user to enter a barcode location associated with a barcode embedded in the graphic image. In some embodiments, the example processor may generate one or more graphical mark characteristic user input data objects based on the one or more user inputs.
[0190] Additionally or alternatively, in response to the user's selection of barcode size data field 606D, the example graphical indicia characteristics identification user interface 600 may be updated to provide one or more user input interface elements (e.g., one or more input boxes) that allow the user to input a barcode size associated with a barcode embedded in the graphical image. In some embodiments, the example processor may generate one or more graphical indicia characteristics user input data objects based on the one or more user inputs.
[0191] In some embodiments, the example processor may generate one or more identification property data objects including one or more of the above-mentioned graphical marking property user input data objects.
[0192] exist Figure 7 In the example shown, the exemplary graphical marker characteristic identification user interface 700 includes various user interface elements, such as, but not limited to, a title portion 703, a confirmation button 717, and a cancel button 719. In some embodiments, the exemplary graphical marker characteristic identification user interface 700 also includes an input data field 705 in which a user may provide one or more inputs.
[0193] For example, in response to user input in the barcode quantity input data field 707, the example processor may generate a graphical indicia characteristic user input data object that indicates and / or includes the barcode quantity data received from the barcode quantity input data field 707. As an example, the graphical indicia characteristic user input data object may indicate that the number of barcodes embedded in the graphic image is one (1).
[0194] Additionally or alternatively, in response to user input in the barcode type input data field 709, the example processor may generate a graphic indicia characteristics user input data object that indicates and / or includes the barcode type data received from the barcode type input data field 709. As an example, the graphic indicia characteristics user input data object may indicate that the barcode type of the barcode embedded in the graphic image is CODE 39.
[0195] Additionally or alternatively, in response to user input in the barcode position input data field 711, the example processor may generate a graphic mark characteristic user input data object indicating and / or including the barcode position data received from the barcode position input data field 711. As an example, the graphic mark characteristic user input data object may indicate that the barcode position of a barcode embedded in the graphic image is center top.
[0196] Additionally or alternatively, in response to user input in the barcode width input data field 713, the example processor may generate a graphic indicia characteristics user input data object that indicates and / or includes the barcode width data received from the barcode width input data field 713. As an example, the graphic indicia characteristics user input data object may indicate that the barcode width of a barcode embedded in the graphic image is 1.46 inches.
[0197] Additionally or alternatively, in response to user input in barcode height input data field 715, the example processor may generate a graphic mark characteristics user input data object indicating and / or including barcode height data received from barcode height input data field 715. As an example, the graphic mark characteristics user input data object may indicate that the barcode height of a barcode embedded in the graphic image is 1.02 inches.
[0198] In some embodiments, the example processor may generate one or more identification property data objects including one or more of the above-mentioned graphical marking property user input data objects.
[0199] exist Figure 8 In the example shown, the example graphical indicia property identification user interface 800 includes various user interface elements such as, but not limited to, a touch screen keyboard 806, a plurality of bar code portions 802, and a plurality of bar code input data fields 804. For example, in response to user input in the bar code quantity input data field 804 via the touch screen keyboard 806, the example processor may generate a graphical indicia property user input data object indicating the bar code quantity data received from the bar code quantity input data field 804.
[0200] Although Figures 6 to 8 Exemplary graphical marker characteristic identification user interfaces according to some embodiments of the present disclosure are shown, but it should be noted that the scope of the present disclosure is not limited to the above examples. For example, exemplary graphical marker characteristic identification user interfaces according to some embodiments of the present disclosure may include one or more additional and / or alternative user interface elements.
[0201] See now Fig. 9 , exemplary process diagram 900 illustrates an exemplary method according to some embodiments of the present disclosure. For example, exemplary process diagram 900 illustrates exemplary operations associated with performing one or more authentication operations associated with a printed medium.
[0202] exist Fig. 9 In the example shown, the exemplary printing device may be based on a print script data object 901 (similar to the above combined with at least Figure 5In some embodiments, the exemplary printing device may generate a graphic image data object 903 based on printing a print image (in the form of a graphic image) from the graphic image data object 903 on the print medium to produce a printed medium 905. In some embodiments, in response to determining that the predicted characteristic data object matches the identified characteristic data object (similar to those described above), the exemplary printing device according to some embodiments of the present disclosure may perform one or more verification operations associated with the printed medium 905.
[0203] For example, a marking verifier 907 (e.g., similar to the one described above in conjunction with the exemplary printing device) associated with the exemplary printing device may be used to verify the authenticity of the printed device. Figures 1A to 1C The tag verifier 125, above combined Figure 2 The tag verifier 218, above combined Figure 3 The indicia verifier 303, etc., described above, can capture an image of the printed medium 905 and generate a verification result 909. In some embodiments, the verification result 909 can indicate whether the printed indicia on the printed medium 905 meets one or more applicable standards, similar to the various examples described above.
[0204] Those skilled in the art to which the present disclosure belongs will think of many modifications and other embodiments, which have the benefit of the teachings presented in the foregoing description and the related drawings. Therefore, it should be understood that the present disclosure is not limited to the specific embodiments disclosed, and modifications and other embodiments are intended to be included within the scope of the appended claims. Although specific terms are employed herein, they are used only in a general and descriptive sense, not for the purpose of limitation. It should be understood that the examples and embodiments in the appendix are also for illustrative purposes and are non-limiting in nature. The contents of the appendix are incorporated herein by reference in their entirety.
Claims
1. A printing device for authenticating an embedded graphic indicia in a printed medium, the printing device comprising at least one processor and at least one memory including program code, the at least one memory and the program code being configured to, using the at least one processor, cause the printing device to: generating a predictive characteristic data object associated with one or more embedded graphical indicia based on the one or more graphical image data objects from the image buffer; generating, based on the one or more graphic mark characteristic user input data objects, an identification characteristic data object associated with the one or more embedded graphic marks; determining whether the predicted characteristic data object matches the identified characteristic data object; as well as In response to determining that the predicted characteristic data object matches the identifying characteristic data object, one or more authentication operations associated with the printed media are performed.
2. The printing device of claim 1 , wherein prior to generating the predicted characteristic data object, the at least one memory and the program code are configured to, with the at least one processor, cause the printing device to: Receive one or more print script data objects; generating the one or more graphics image data objects based at least in part on the one or more print script data objects; as well as The one or more graphics image data objects are stored in the image buffer.
3. A printing device according to claim 1, wherein the at least one memory and the program code are configured to utilize the at least one processor to enable the printing device to: generate the predictive characteristic data object at least in part based on inputting the one or more graphic image data objects into an embedded graphic marker prediction machine learning model.
4. The printing device according to claim 1, wherein the at least one memory and the program code are configured to use the at least one processor to cause the printing device to: The one or more graphical marker characteristic user input data objects are received from a graphical marker characteristic identification user interface.
5. A printing device according to claim 1, wherein the predicted characteristic data object indicates a predicted quantity associated with the one or more embedded graphic marks, and wherein the identification characteristic data object indicates an actual quantity associated with the one or more embedded graphic marks.
6. A printing device according to claim 1, wherein the predicted characteristic data object indicates one or more predicted symbology types associated with the one or more embedded graphic marks, and wherein the identification characteristic data object indicates one or more actual symbology types associated with the one or more embedded graphic marks.
7. A printing device according to claim 1, wherein the predicted characteristic data object indicates one or more predicted positions associated with the one or more embedded graphic marks, and wherein the identified characteristic data object indicates one or more actual positions associated with the one or more embedded graphic marks.
8. A printing device according to claim 1, wherein the predicted characteristic data object indicates one or more predicted sizes associated with the one or more embedded graphic marks, and wherein the identified characteristic data object indicates one or more actual sizes associated with the one or more embedded graphic marks.
9. The printing device according to claim 1, wherein the at least one memory and the program code are configured to use the at least one processor to cause the printing device to: In response to determining that the predicted characteristic data object does not match the identified characteristic data object, a characteristic mismatch warning data object is generated.
10. The printing device of claim 9, wherein the characteristic mismatch warning data object indicates an incomplete verification operation associated with the printed medium.