Method and apparatus for predicting print quality
Patent Information
- Application Number
- CN202480087322.6
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Priority Date
- 2023-12-21
- Filing Date
- 2024-12-18
- Publication Date
- 2026-09-22
AI Technical Summary
用户可能难以知道应该使用哪种打印机设置组合来实现期望的打印结果
Smart Images

Figure CN122804213A_ABST
Abstract
Description
Technical Field
[0001] This disclosure relates to using machine learning models to predict the print quality of markings to be applied by a printing apparatus. Background Technology
[0002] Industrial printers are printers found in industrial environments, such as those used on production lines, packaging lines, and filling lines. For example, an industrial printer can be used to mark products moving along a conveyor. Of course, a conveyor may not be used, and products can be presented manually to the industrial printer in another way. For example, the product may include a continuous film or foil moving along a path adjacent to the industrial printer. Examples of industrial printers are thermal transfer printers, laser encoders, continuous inkjet printers, on-demand inkjet printers, etc.
[0003] Industrial printers are highly complex machines and typically have multiple adjustable printer settings. Users may find it difficult to determine which combination of printer settings should be used to achieve the desired printing results. Therefore, users may incorrectly set up the industrial printer, potentially leading to waste of marking media (such as ink) and a shortened lifespan for the printer. Summary of the Invention
[0004] In a first aspect, a method is provided that includes acquiring print data indicating a mark to be applied to a substrate by a printing apparatus, and determining predicted print quality data indicating a predicted print quality of one or more prints of the mark when the mark is applied to the substrate using a printing apparatus having one or more printer settings, wherein determining the predicted print quality data includes processing the print data using a machine learning model.
[0005] Printer settings of a printing device affect the print quality of applied markings. In some cases, high print quality may be important. For example, if the marking is a dosage schedule for a drug, the legibility of the marking must be good enough for the user to read without difficulty. Therefore, high print quality will be required. In other cases, some markings may not require high print quality for legibility. For example, batch numbers can be printed at low quality and still be legible. However, operators of printing devices may find it difficult to select a specific set of printer settings that will result in the desired print quality. This is especially true for industrial printers with a large number of printer settings. Often, operators of industrial printers will not know which printer settings will necessarily affect print quality, nor how changing printer settings will affect the overall operation of the industrial printer. Therefore, operators may use industrial printers in a suboptimal manner. The first aspect of the approach advantageously provides a way in which machine learning models can be used to predict the print quality of applied markings. Predicting print quality eliminates the need for operators to experiment with different printer settings to achieve the desired print quality, which is wasteful and can damage the printing device. For example, based on predicted print quality data that meets one or more criteria, printer settings associated with the predicted print quality data can be identified and used.
[0006] Print data can be a digital representation of the markings. Print data can be data that will be sent to a printing device to print the markings. Alternatively, print data can include image data. For example, print data can be a digital image of the markings. Print data can be a physical representation of the content to be printed. Print data can be displayed on a display device for user viewing.
[0007] Predicted print quality data can include image data. When printing using a printing device with one or more printer settings, the predicted print quality data can include one or more marked predicted print images. The image data can be output to the user's device display so that the user can view the marked one or more predicted prints. The user can then select one of the images that meets their quality requirements. A set of printer settings associated with the selected image can then be automatically determined. That is, the set of printer settings on which the prediction is based can be determined.
[0008] This method can be computer-implemented. The steps of obtaining print data and determining predicted print quality data, as well as the steps described below, can be performed using any suitable computer hardware. The computer hardware may include one or more processors capable of executing computer-readable instructions. The one or more processors may be located remotely from the printing device. For example, the one or more processors may be located at a server. Alternatively, the one or more processors may be located on a local computer, co-located with the printing device. Alternatively or additionally, the one or more processors may be located at a technical support site.
[0009] The printing device can be an industrial printer. Industrial printers are the type commonly found in warehouses and production lines, and are typically used to mark products moving along conveyors. Examples of industrial printers are thermal transfer printers, laser encoders, continuous inkjet printers, on-demand inkjet printers, etc.
[0010] The method may also include determining a set of printer settings based on predicted print quality data.
[0011] For example, a user can view predicted print quality data associated with a set of printer settings and, based on this data, select a set of printer settings that meets their requirements. When the predicted print quality data includes image data, as described above, the image data can be output as an image on the user's device display. If a single image with marked predicted prints is displayed, predictions are made using a specific set of printer settings, allowing the user to select an image of sufficient quality, and thus automatically selecting the specific set of printer settings. When multiple images are displayed to the user, each image displays marked predicted prints using different specific sets of printer settings, and the user can then select one of the images that meets their print quality requirements. The printer settings associated with the selected image can then be determined.
[0012] Alternatively, a set of printer settings can be determined automatically based on predicted print quality data. For example, given that the user's print quality requirements are known, a second machine learning model can process the predicted print quality data to determine a set of printer settings. For instance, when the predicted print quality data includes image data as described above, the second machine learning model can process labeled images of the predicted print and classify the images as acceptable or unacceptable.
[0013] Determining a set of printer settings based on predicted print quality data may include: generating image data based on the predicted print quality data, the image data including predicted images marked when printing with a set of printer settings; and determining a set of printer settings based on the image data.
[0014] For example, predicted print quality data can be used to generate image data, such as image files for output to a user's device display. The predicted print quality data can be a vector, where each element of the vector corresponds to a pixel, and each value in each element corresponds to an intensity value. The predicted print quality data can then be converted into an image file for display on a user's device display, such as a computer screen, smartphone, tablet, etc.
[0015] The method may also include outputting image data to a display of a user device, receiving input from the user, and determining a set of printer settings based on that input.
[0016] For example, a user can view a marked predicted image (based on predicted print quality data) on their device's display and determine if the predicted print quality is sufficient. The user can then provide input to the device to indicate their satisfaction with the predicted print quality. Upon receiving this input, a set of printer settings associated with the predicted image (e.g., associated with the predicted print quality data) can be automatically determined.
[0017] The display that outputs image data to the user device may include generating one or more user-selectable options using predicted print quality data, each of the one or more user-selectable options being associated with a marked predicted image, each of the one or more predicted images being associated with a set of printer settings of the printing device, and outputting one or more user-selectable options to the display, wherein receiving input from the user includes receiving a selection of one or more user-selectable options.
[0018] Selecting a set of printer settings based on predicted print quality data may include: comparing the predicted print quality data with predefined print quality thresholds, identifying one or more sets of printer settings that meet the print quality thresholds, and selecting one printer setting from the set of printer settings that meet the print quality thresholds.
[0019] Predefined print quality thresholds can be user-defined. Predicted print quality data (such as the predicted image mentioned above) can be compared to these predefined thresholds to identify the predicted print quality data that meets them. Once the predicted print quality data (such as the predicted image) that meets the predefined thresholds is identified, an associated set of printer settings is obtained. If multiple predicted images meet the predefined print quality thresholds, multiple sets of printer settings can be obtained. A specific set of printer settings can then be selected from these multiple sets that meet the thresholds using any suitable method, such as selecting the set that uses the least amount of ink. Machine learning models can be used to perform the comparison and / or selection.
[0020] The method may also include configuring the printing device using a set of printer settings.
[0021] Once printer settings are determined, for example, when a user selects a specific set of printer settings that provides an acceptable predicted print quality, the printing device can be automatically configured with that set of printer settings. This set of printer settings can be sent to the printing device. For example, a control signal can be sent to the printing device, and when the printing device receives the control signal, it causes the printing device to automatically configure itself using the set of printer settings. Alternatively, the set of printer settings can be provided to the user for manual input into the printing device. The user equipment can send the set of printer settings to the printing device. Alternatively, a server can send the set of printer settings to the printing device.
[0022] Processing print data using machine learning models includes: feeding print data as input to a machine learning model, obtaining output data from the machine learning model based on the print data, and determining predicted print quality data based on the output data.
[0023] Printed data can be a labeled numerical representation. Printed data can be preprocessed before being input into a machine learning model. For example, when printed data includes image data, the image data can be converted into vectors, where each element of the vector indicates the intensity value of a specific pixel in the image. The image size can be reduced to match the input size of the machine learning model. Feature maps can be generated based on the printed data, and these feature maps can be used as input to the machine learning model.
[0024] The output data can be predicted print quality data, or it can be data that can be used to determine the predicted print quality. For example, the output data can be a predicted image that marks how it will look when printed using a printing device. The output data can be a vector, where each element of the vector indicates the intensity value of a specific pixel in the predicted image.
[0025] The method may further include providing a set of printer settings as input to a machine learning model, and wherein obtaining output data from the machine learning model includes obtaining output data from the machine learning model based on print data and a set of printer settings.
[0026] In other words, a machine learning model can take both print data and a set of printer settings as input and output data. The output data from the machine learning model can be a predicted image of how the markings (represented by the print data) will look when printed using a printing device with the set of printer settings. The set of printer settings can be preprocessed into a vector for processing by the machine learning model. The print data and the set of printer settings can be cascaded into a single input (e.g., a vector) to be processed by the machine learning model.
[0027] The method may further include providing substrate data as input to a machine learning model, the substrate data indicating the characteristics of the substrate, and wherein obtaining output data from the machine learning model includes obtaining output data from the machine learning model based on printing data, a set of printer settings, and the substrate data.
[0028] In other words, a machine learning model can take print data, a set of printer settings, and substrate data as input and output data. This characteristic can be any one or more of the substrate material, substrate physical dimensions, substrate color, and graphic data indicating any pre-applied patterns on the substrate. Substrate data can be cascaded with print data and a set of printer settings for use as input into the machine learning model.
[0029] Machine learning models can include neural networks, such as artificial neural networks.
[0030] A neural network can include an input layer, one or more hidden layers, and an output layer. Neural networks can be implemented in software or hardware.
[0031] Neural networks can include deep neural networks, convolutional neural networks, generative neural networks, etc. Examples of generative neural networks are transducers, conditional generative adversarial networks, and diffusion models. Neural networks can be conditional on printed data and a set of printer settings.
[0032] The method may also include using a training dataset to train a machine learning model.
[0033] The training dataset may include training print data and associated training print quality data. For example, training print data may include multiple example digital representations of the markers, each with an associated set of printer settings. The associated training print quality data may be actual data recorded when the printing apparatus performs a printing operation to apply the markers represented by the training print data using the associated set of printer settings. For example, training print quality data may be one or more captured images of the markers after they have been applied to a substrate. Therefore, the associated training print quality data represents target data or ground-based data.
[0034] Training a machine learning model using a training dataset can include inputting training print data into the machine learning model to obtain training output, comparing the training output with associated training print quality data, and updating the machine learning model based on the comparison.
[0035] For example, comparing training outputs with associated training print quality data may include calculating a loss function. The loss function can be used to update the machine learning model, for example, by minimizing the loss function using backpropagation.
[0036] This method may also include using training print data to input a training set of printer settings into a machine learning model to obtain output. In other words, during training, the input to the machine learning model can be both training print data and a training set of printer settings.
[0037] Printed data may include a numerical representation of the markings.
[0038] The marking can be any one or more of a barcode, QR code, batch number, date, graphic, or text.
[0039] The tag can include any alphanumeric character.
[0040] This set of printer settings can include any one or more of the following: printhead distance, printhead angle and rotation, encoder settings, ink, mark / label position (HW settings), optical configuration / settings, laser wavelength, dependence on the marked object, vibration, ribbon type / color, raster, bold, character spacing, inverse, mirror, invert, print mode, print resolution, jump speed, marking speed, jump delay, marking delay, stroke delay, marking intensity, pulse frequency, on delay, off delay, x / y print position, iAssure baseline, print speed, print density (heated), print force, printhead position (continuous mode only), font, horizontal dpi, vertical dpi, print density, barcode fine-tuning, label feed speed, pixel trimming / pixel reduction (1D / 2D code fine-tuning), graphics / logo, 1D / 2D code parameter set.
[0041] Configuring a printing device using this set of printer settings may include sending the set of printer settings to the printing device.
[0042] For example, the printer settings can be sent from computer hardware (such as a server or computer (e.g., user equipment)) to the printing device via a suitable network (such as the Internet).
[0043] The method may also include performing a printing operation on a printing device to apply markings on a substrate using a determined set of printer settings.
[0044] In a second aspect, a method is provided, comprising: acquiring print data indicating a mark to be applied to a substrate by a printing device; acquiring data indicating an acceptable print quality; and processing the print data and the data indicating the acceptable print quality through a machine learning model to obtain a set of predicted printer settings, the set of predicted printer settings being predictions of the printer settings required to achieve the acceptable print quality when the printing device applies the mark to the substrate.
[0045] Where appropriate, the optional aspects of the first aspect can be combined with the second aspect.
[0046] In a third aspect, a computing device is provided, including one or more processors and a memory, the memory storing instructions thereon, which, when executed by the one or more processors, cause the one or more processors to perform the method of either the first or second aspect.
[0047] In a fourth aspect, a system is provided that includes an industrial printer, a user equipment, and a computing device, the computing device including one or more processors and a memory, the memory storing instructions thereon that, when executed by one or more processors, cause the one or more processors to perform the method of either the first or second aspect.
[0048] Industrial printers, user equipment, and computing devices can be placed side-by-side or spaced far apart. User equipment may include a display (e.g., a computer monitor for displaying image files). User equipment may be controlled by a computing device or may have its own computing hardware. Attached Figure Description
[0049] This disclosure will now be further described by way of example only with reference to the accompanying drawings, in which:
[0050] Figure 1 A schematic diagram of a machine learning model is shown;
[0051] Figure 2 A schematic diagram of another machine learning model is shown;
[0052] Figure 3 This is a flowchart of the method disclosed in this paper;
[0053] Figure 4 This is a flowchart of another method disclosed in this paper; and
[0054] Figure 5 It is a schematic diagram of a computing device capable of performing the disclosed methods. Detailed Implementation
[0055] refer to Figure 1 This will describe methods for predicting print quality. Figure 1 In this process, print data 101 and a set of printer settings 102 are input into a machine learning model 103. The machine learning model 103 processes the print data 101 and the set of printer settings 102 and outputs a predicted image 104.
[0056] Print data 101 includes a digital representation of the mark. For example, a user or computer can generate the mark in the form of a digital image, which will be applied to the substrate of the product. Therefore, print data 1 includes an ideal representation of the mark without any errors, artifacts, blurring, etc., produced by the industrial printer during the printing process. For example, the mark can be a barcode, QR code, batch number, date, graphic, or text.
[0057] A set of printer settings 102 includes a set of values for different printer settings. Each individual industrial printer will have its own specific adjustable printer settings. However, by way of example only, such printer settings can be any one or more of the following: printhead distance, printhead angle and rotation, encoder settings, ink, mark / label position (HW settings), optical configuration / settings, laser wavelength, dependence on the marked object, vibration, ribbon type / color, raster, bold, character spacing, reverse, mirror, invert, print mode, print resolution, jump speed, marking speed, jump delay, marking delay, stroke delay, marking intensity, pulse frequency, on-delay, off-delay, x / y print position, iAssure reference, print speed, print density (heated), print force, printhead position (continuous mode only), font, dpi horizontal, dpi vertical, print density, barcode fine-tuning, label feed speed, pixel trimming / pixel reduction (1D / 2D code fine-tuning), graphics / logo, 1D / 2D code parameter set.
[0058] Predicted image 104 is an example of predicted print quality data. For example, predicted image 104 is a predicted numerical representation of how the mark will look when it is applied to the substrate of a product using a set of printer settings 102 (e.g., when an industrial printer is configured based on this set of printer settings and printed onto the product by an industrial printer). Predicted image 104 may differ from the ideal representation of the mark represented by print data 1. For example, a particular set of printer settings 102 may cause the mark to be blurry when compared to the ideal representation. In this case, predicted image 104 output by machine learning model 103 will include the predicted blur caused by using that particular set of printer settings 102. Although predicted image 104 output by machine learning model 103 has been described, it should be understood that predicted image 4 can be data representing predicted image 4. That is, data that can be used to generate and display predicted image 4 on a user device's display.
[0059] The predicted image 104 can be provided to the user, such as by displaying it on the user's device monitor. This allows the user to determine whether the printer settings 102 used to generate the predicted image 104 are appropriate. For example, the user may need a specific quality level associated with their printing. Slight blurring or streaking of markings may not be a problem for the user, especially if the markings are still clear. That is, the quality of the markings may be relatively low, but may be sufficient for the user to consider acceptable. For example, a set of printer settings 102 may be more efficient than a set of printer settings that will produce higher quality prints. Just as an example, a set of printer settings 102 may use less ink than a set of printer settings that will produce higher quality prints. Alternatively or additionally, a set of printer settings 102 may reduce the risk of mechanical service problems compared to a set of printer settings that will produce higher quality prints.
[0060] A set of printer settings 102 can be selected by the user or obtained from a database of predetermined printer settings 102. For example, the database may include multiple sets of printer settings for industrial printers. These multiple sets of printer settings can be categorized. For example, multiple sets of printer settings can be categorized as high quality, medium quality, and low quality. The user can decide that medium quality is required and can select a set of printer settings associated with medium quality. The user can then test the selected set of printer settings by processing it with a machine learning model 103 to determine whether the predicted image 104 meets the desired criteria.
[0061] If the user is satisfied with the predicted image 104, a set of printer settings 102 associated with generating the predicted image 104 can be identified and used to configure the industrial printer. For example, the user can select a set of printer settings labeled "low quality". Then, when using the low quality settings, the predicted image 104 will provide the user with an indication of the quality of the predicted markings (e.g., their visual appearance once printed). The user can decide that the quality is acceptable. Alternatively, the user can decide that the quality is unacceptable and can alternatively select a different set of printer settings 102 to be input into the machine learning model 103 along with the print data 1. In this case, the user can select a different set of printer settings labeled "medium quality", and then when using a different set of printer settings, the predicted image 104 will provide the user with an indication of the quality of the predicted markings. Of course, the user can decide the printer settings themselves instead of using predefined settings for classification.
[0062] While it has been described that the user can determine whether the print quality is acceptable, this can be done automatically. For example, a predicted image 104 can be compared to a predefined quality threshold. If the predicted image 104 meets the quality threshold, a set of printer settings 102 associated with the predicted image 104 is selected. Otherwise, that set of printer settings 102 is rejected. Another set of printer settings 102 can be obtained and processed by a machine learning model 103. A separate machine learning model can be used to perform the comparison and / or selection.
[0063] As described above, once the user is satisfied with the predicted image 104, a set of printer settings 102 associated with generating the predicted image 104 is identified and can be used to configure the industrial printer. For example, this set of printer settings 102 can be provided to the user, such as by displaying it on a monitor, for the user to manually configure their industrial printer. Alternatively, the set of printer settings 102 can be sent to the industrial printer for automatic configuration. For example, a control signal can be sent to the industrial printer, which, upon receipt by the industrial printer, causes the industrial printer to automatically configure itself using the set of printer settings 102.
[0064] The data input into the machine learning model (e.g., print data 101 and a set of printer settings 102) can be preprocessed in any suitable manner. For example, when print data 101 includes image data (e.g., an image of a marker to be printed), the image data can be converted into a vector, where each element of the vector indicates the intensity value of a specific pixel in the image. The image size can be reduced to match the input size of the machine learning model. The vector can be directly input into the machine learning model. Alternatively, feature maps can be generated based on the print data, where the feature maps are used as input to the machine learning model. Feature maps can be generated using a separate machine learning model, such as a separate convolutional neural network.
[0065] A set of printer settings 102 can be converted into a vector for processing by a machine learning model 103. For example, each element of the vector may correspond to a specific printer setting, and each value of each element may represent a specific value associated with that specific printer setting.
[0066] Print data 101 and a set of printer settings 102 can be cascaded for processing by machine learning model 103. For example, if print data 101 and a set of printer settings 102 are each converted into vectors, the vectors can be cascaded to provide a single vector for processing by machine learning model 103. Predicted image 104 may include vectors, where each element of the vector indicates the intensity value of a specific pixel in the predicted image. However, any suitable form of output can be used.
[0067] In addition to processing print data 101 and a set of printer settings 102, the machine learning model 103 can also take substrate data as part of its input. Substrate data indicates the characteristics of the substrate on which the marking is to be applied. For example, characteristics can be any one or more of the substrate material, physical dimensions, color, and graphic data indicating any pre-applied graphics to the substrate. Substrate data can be cascaded with print data 101 and a set of printer settings 102 to be input into the machine learning model 103.
[0068] The machine learning model 103 can take any suitable form. For example, the machine learning model 103 can be a neural network comprising an input layer, one or more hidden layers, and an output layer. The neural network can include deep neural networks, convolutional neural networks, generative neural networks, etc. Examples of generative neural networks are transformers, conditional generative adversarial networks, and diffusion models.
[0069] The machine learning model 103 can be trained using any suitable method. For example, it can be trained using a training dataset. The training dataset may include training print data, a training set of printer settings, and ground-based data. For example, specific entries in the training dataset may include examples of training print data, training sets of printer settings, and ground-based data, which may include actual data recorded when the printing device performs a printing operation to apply marks represented by the training print data using the training set of printer settings. For example, ground-based data may be one or more captured images of marks applied after the marks have been applied to the printing substrate.
[0070] Training the machine learning model 103 may include selecting individual training print data and an associated set of printer settings from the training dataset, processing the training print data and the associated set of printer settings using the machine learning model to obtain output data from the machine learning model, and comparing the output data with ground-based data associated with the selected training print data. For example, in the case where the ground-based data includes images marked at the time of printing, the output from the machine learning model is a predicted image of the printed marks (or data representing the predicted image). Comparing the output data with the ground-based data may include calculating a loss function. The loss function may be used to update the machine learning model 103, for example, by minimizing the loss function during the optimization step using backpropagation. That is, the weights or parameters of the machine learning model may be updated to minimize the loss function. Any suitable loss function, such as mean squared error, may be used.
[0071] The machine learning model 103 can be trained continuously. For example, print data 101 and a set of printer settings 102 can be input into the machine learning model 103 to obtain a predicted image 104 as described above. The user can be satisfied with the print quality indicated in the predicted image 104, and the industrial printer can be configured with this set of printer settings 102. An image of the actual markings applied to the printing substrate can be captured and compared with the predicted image 4. The image can be captured by the vision capture system of the industrial printer. This comparison can allow the machine learning model 4 to be further trained, for example, by minimizing a loss function.
[0072] While it has been described that the machine learning model 103 takes a single set of printer settings along with the print data 101 as input, in some implementations, the machine learning model 103 may take multiple sets of printer settings 102 along with the print data 101 as input and output multiple predicted images 104, where each predicted image corresponds to one of the multiple sets of printer settings 102. In this way, the predictive impact of multiple printer settings on the print data 101 can be determined during the execution of the machine learning model.
[0073] In alternative implementations, such as Figure 2 As shown, print data 201 (which may correspond to print data 101) and data indicating acceptable print quality 202 are input into machine learning model 203. Machine learning model 203 outputs a predicted set of printer settings 204, which, if used by an industrial printer, would result in printing corresponding to the data indicating acceptable print quality 202. Therefore, the predicted set of printer settings 204 is a prediction of the printer settings required to achieve the desired acceptable print quality, represented by the data indicating acceptable print quality 202. For example, the data indicating acceptable print quality 202 may include an image labeled with acceptable print quality. For example, the image may be computer-generated and based on print data 201. Alternatively, the data indicating acceptable print quality 202 may include specific categories, such as low quality, medium quality, or high quality.
[0074] refer to Figure 3 This demonstrates a method based on the disclosed subject matter.
[0075] In step S1, print data is obtained. The print data indicates the markings to be applied to the substrate by the printing device. An example of print data has been described above.
[0076] In step S2, predicted print quality data is determined. Predicted print quality data indicates the predicted print quality of one or more prints of the mark when it is applied to a substrate using a printing apparatus having one or more printer settings. The predicted print quality data may be the predicted image 104 described above. Determining the predicted print quality data includes processing the print data using a machine learning model. For example, a machine learning model is used to process the print data and an associated set of printer settings to obtain the predicted print quality data, as described above regarding… Figure 1 As described.
[0077] refer to Figure 4 This demonstrates another approach based on the disclosed subject matter.
[0078] In step S3, print data is obtained. The print data indicates the markings to be applied to the substrate by the printing device. An example of print data has been described above.
[0079] In step S4, data indicating acceptable print quality is obtained. An example of data indicating acceptable print quality has been described above.
[0080] In step S5, the machine learning model processes the print data and data indicating acceptable print quality to obtain a set of predicted printer settings. These predicted printer settings are predictions of the printer settings required to achieve acceptable print quality when the printing device applies markings to the substrate. (The above refers to...) Figure 2 An example is described.
[0081] Figure 5 A computing device 501 configured to perform the methods disclosed herein is shown. The computing device 501 includes a processor 502 configured to read and execute instructions stored in volatile memory 503, which is in the form of random access memory. The volatile memory 503 stores instructions for execution by the processor 502 and data used by those instructions.
[0082] The computing device 500 also includes non-volatile memory in the form of a hard disk drive 504. The computing device 500 also includes an I / O interface 505, to which data capture and peripheral devices used in conjunction with the computing device 505 are optionally connected. In the example shown, a display 506 is connected to the I / O interface 505 to display output from the computing device 505. The display 506 may be provided locally to the computing device 500 (e.g., as a screen) or remotely from the computing device 500. For example, a display associated with a separate device (e.g., a mobile computing device) may be used as a display for the computing device 500. Additionally or alternatively, a touchscreen associated with the display 506 may operate as a user input device to allow a user to interact with the computing device 500. Alternatively or additionally, a separate input device, such as a mouse and / or keyboard, may also be connected to the I / O interface 505. A network interface 507 allows the computing device 500 to connect to a suitable computer network to receive and send data to other computing devices, such as an industrial printer. The processor 502, volatile memory 503, hard disk drive 504, I / O interface 505, and network interface 507 are connected together via bus 508. The computing device 500 can be connected to an external computer / server via the network interface 507.
[0083] The computing device 500 can be integrated into any one or all of an industrial printer, user equipment, and / or a remote server.
[0084] It should be understood that the embodiments disclosed herein can be implemented in any convenient form. For example, the embodiments disclosed herein can be implemented by a suitable computer program that can be carried on a suitable carrier medium, which can be a tangible carrier medium (e.g., a disk) or an intangible carrier medium (e.g., a communication signal). The embodiments disclosed herein can also be implemented using suitable means, which can take the form of a programmable computer running a computer program arranged to implement the embodiments disclosed herein.
[0085] Embodiments of the subject matter and operations described in this specification can be implemented in digital electronic circuits or in computer software, firmware, or hardware. Embodiments of the subject matter described in this specification can be implemented as one or more computer programs encoded on a computer storage medium, i.e., one or more modules of computer program instructions for execution by or control of the operation of a data processing device. Alternatively or additionally, program instructions may be encoded on artificially generated propagating signals, such as machine-generated electrical, optical, or electromagnetic signals, which are generated to encode information for transmission to a suitable receiver device for execution by the data processing device. The computer storage medium may be or is included in a computer-readable storage device, a computer-readable storage substrate, a random or serial access memory array or device, or a combination of one or more of these. Furthermore, although the computer storage medium is not a propagating signal, it may be a source or destination of computer program instructions encoded in artificially generated propagating signals. The computer storage medium may also be or be included in one or more separate physical components or media (e.g., multiple CDs, disks, or other storage devices).
[0086] The operations described in this specification can be implemented as operations performed by a processor on data stored on one or more computer-readable storage devices or received from other sources.
[0087] The term "processor" encompasses all kinds of devices, apparatuses, and machines used for processing data, including, for example, programmable processors, computers, systems-on-a-chip, or a combination of the foregoing. The device may include dedicated, reprogrammable logic circuitry, such as FPGAs (Field-Programmable Gate Arrays) or ASICs (Application-Specific Integrated Circuits). In addition to hardware, the device may also include code that creates an execution environment for the computer program in question, such as code constituting processor firmware, protocol stacks, database management systems, operating systems, cross-platform runtime environments, virtual machines, or combinations thereof. The device and execution environment can implement a variety of different computing model infrastructures, such as web services, distributed computing, and grid computing infrastructures.
[0088] As an example, processors suitable for executing computer programs include both general-purpose and special-purpose microprocessors, as well as any one or more processors in any kind of digital computer. Typically, the processor receives instructions and data from read-only memory or random access memory, or both. Devices suitable for storing computer program instructions and data include all forms of computer-readable media and memory devices, including, for example, semiconductor memory devices such as EPROM, EEPROM, and flash memory devices; disks such as internal hard disks or removable disks; magneto-optical disks; and CD-ROM and DVD-ROM disks. Processors and memory can be supplemented or incorporated into dedicated logic circuitry and fiber optic platforms to enable faster long-distance data transfer.
[0089] To provide interaction with the user, embodiments of the subject matter described in this specification can be implemented on a computer having a display device (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor that includes audio) for displaying information (e.g., indicators and / or alarms) to the user. Other types of devices can also be used to provide interaction with the user; for example, the feedback provided to the user can be any form of sensory feedback, such as visual feedback, auditory feedback, or tactile feedback.
[0090] Although this disclosure has been described with reference to preferred embodiments as described above, it should be understood that these embodiments are merely illustrative and the claims are not limited to those embodiments. Modifications and substitutions will be able to be made to this disclosure by those skilled in the art, and such modifications and substitutions are considered to fall within the scope of the appended claims. Each feature disclosed or shown in this specification may be incorporated into this disclosure, either individually or in any suitable combination with any other feature disclosed or shown herein.
Claims
1. A method, the method comprising: Obtain printing data, which instructs the printing apparatus to apply markings to the substrate; Determine predicted print quality data, which indicates the predicted print quality of one or more prints of the mark when the mark is applied to the substrate using the printing apparatus having one or more printer settings, wherein determining the predicted print quality data includes processing the print data using a machine learning model.
2. The method of claim 1, further comprising determining a set of printer settings based on the predicted print quality data.
3. The method according to claim 2, wherein, Determining the set of printer settings based on the predicted print quality data includes: Image data is generated based on the predicted print quality data, the image data including a predicted image of the mark when printed using the set of printer settings; The set of printer settings is determined based on the image data.
4. The method according to claim 3, further comprising: The image data is output to the display of the user device. Receive input from the user; The set of printer settings is determined based on the input.
5. The method according to claim 4, wherein, The image data is output to the display of the user equipment, including: One or more user-selectable options are generated using the predicted print quality data, each of the one or more user-selectable options being associated with a predicted image of the marker, and each of the one or more predicted images being associated with a set of printer settings of the printing device; and Output one or more user-selectable options to the display; Receiving the input from the user includes: Receive a selection of one of the one or more user-selectable options.
6. The method according to claims 2 and 3, wherein, Selecting the set of printer settings based on the predicted print quality data includes: The predicted print quality data is compared with a predefined print quality threshold. Identify one or more sets of printer settings that meet the stated print quality threshold; and Select one of the set of printer settings that meets the print quality threshold.
7. The method according to any one of claims 2 to 6, further comprising configuring the printing device using the set of printer settings.
8. The method according to any one of the preceding claims, wherein, Processing the printed data using the machine learning model includes: The printed data is provided as input to the machine learning model; Output data is obtained from the machine learning model based on the printed data; and The predicted print quality data is determined based on the output data.
9. The method according to claim 8, further comprising: A set of printer settings is provided as input to the machine learning model; and Obtaining output data from the machine learning model includes obtaining output data from the machine learning model based on the printed data and the set of printer settings.
10. The method of claim 8 or 9, further comprising providing substrate data as input to the machine learning model, the substrate data indicating characteristics of the substrate, and wherein obtaining output data from the machine learning model includes obtaining output data from the machine learning model based on the printing data, the set of printer settings, and the substrate data.
11. The method according to any one of the preceding claims, wherein, The machine learning model includes neural networks.
12. The method according to any one of the preceding claims further comprises: The machine learning model is trained using the training dataset.
13. The method according to claim 12, wherein, The training dataset includes training print data and associated training print quality data.
14. The method according to claim 13, wherein, Training the machine learning model using the training dataset includes: The training printed data is input into the machine learning model to obtain the training output; The training output is compared with the associated training print quality data; The machine learning model is updated based on the comparison.
15. The method according to any one of the preceding claims, wherein, The printed data includes the numerical representation of the mark.
16. The method according to any one of the preceding claims, wherein, The marking can be any one or more of a barcode, QR code, batch number, date, graphic, or text.
17. The method according to any one of the preceding claims, wherein, The set of printer settings includes any one or more of the following: printhead distance, printhead angle and rotation, encoder settings, ink, mark / label position (HW settings), optical configuration / settings, laser wavelength, dependence on the marked object, vibration, ribbon type / color, raster, bold, character spacing, reverse, mirror, invert, print mode, print resolution, jump speed, marking speed, jump delay, marking delay, stroke delay, marking intensity, pulse frequency, on delay, off delay, x / y print position, iAssure reference, print speed, print density (heated), print force, printhead position (continuous mode only), font, dpi horizontal, dpi vertical, print density, barcode fine-tuning, label feed speed, pixel trimming / pixel reduction (1D / 2D code fine-tuning), graphics / logo, 1D / 2D code parameter set.
18. The method according to any one of claims 7 to 17, wherein, Configuring the printing device using the set of printer settings includes sending the set of printer settings to the printing device.
19. The method according to any one of the preceding claims, the method comprising: A printing operation is performed on the printing device to apply markings to a substrate using a determined set of printer settings.
20. A method, the method comprising: Obtain printing data, which instructs the printing apparatus to apply markings to the substrate; Obtain data indicating acceptable print quality; The printing data and data indicating the acceptable print quality are processed by a machine learning model to obtain a predicted set of printer settings, which are predictions of the printer settings required to achieve the acceptable print quality when the printing device applies the mark to the substrate.
21. A computing device, comprising: One or more processors, A memory having instructions stored thereon that, when executed by the one or more processors, cause the one or more processors to perform the method according to any one of the preceding claims.
22. A system comprising: Industrial printers; User equipment; Computing device, comprising: One or more processors, A memory having instructions stored thereon that, when executed by the one or more processors, cause the one or more processors to perform the method according to any one of claims 1 to 20.