SYSTEMS AND METHODS FOR USING GENERATIVE AI FOR SIMPLE CONFIGURATION OF ADVANCED FUNCTIONS IN MV / FIS CAMERAS AND ASSOCIATED JOB CREATION APPLICATION

A machine learning model automates the adjustment of barcode scan job configurations in image processing and fixed-industry scanners, addressing the complexity of manual settings and enhancing accuracy and efficiency in barcode scanning.

DE102025150536A1Pending Publication Date: 2026-06-11ZEBRA TECHNOLOGIES CORP
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
DE102025150536
Authority / Receiving Office
DE · DE
Patent Type
Applications
Current Assignee / Owner
Priority Date
2024-12-04
Filing Date
2025-12-04
Publication Date
2026-06-11

AI Technical Summary

Technical Problem

The complexity of adjusting image processing or fixed-industry scanner job settings for barcode scanning makes it difficult to achieve a desired output string, requiring manual interaction with graphical user interfaces and resource-intensive trial-and-error configurations.

Method used

A machine learning model is used to receive system instructions, current job configurations, and natural language queries to generate and update barcode scan job configurations efficiently, reducing the need for manual adjustments and resource consumption.

Benefits of technology

The machine learning model enhances accuracy and efficiency by determining optimal settings automatically, minimizing resource usage and improving the functionality of computing devices in barcode scanning tasks.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 00000000_0000_ABST
    Figure 00000000_0000_ABST
Patent Text Reader

Abstract

A procedure comprises receiving a system instruction file to a trained machine learning model of a computer application based on an image processing (IP) or fixed industrial scanner (FIS) graphical user interface (GUI); receiving a current IP or FIS barcode scan job configuration to the trained machine learning model of the IP or FIS GUI-based computer application; receiving a prompt containing a natural language query regarding the current IP or FIS barcode scan job configuration; generating a new barcode scan job configuration that corresponds to the prompt and a response to the prompt by processing the prompt and the system instruction file and using the trained machine learning model; and updating the current IP or FIS barcode scan job configuration based on the new barcode scan job configuration.and causing the response to the request to be displayed in a GUI of the computer application based on MV or FIS GUI.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL AREA

[0001] The present disclosure is generally directed to methods and systems for using generative artificial intelligence (AI) to generate an image processing (IM) or fixed industrial scanner (FIS) barcode scan job configuration. BACKGROUND

[0002] The background description provided herein serves the purpose of generally outlining the context of the disclosure. The work of the inventor currently named, to the extent described in this background section, as well as aspects of the description that were not otherwise considered prior art at the time of filing, are neither expressly nor implicitly regarded as prior art with respect to the present disclosure.

[0003] Image processing or fixed-industry scanner applications can include many settings that can be adjusted to meet the requirements of a specific image processing or fixed-industry scanner job. For example, a job to scan a barcode might include settings that specify how the barcode should be interpreted and the format of any output string generated by scanning the barcode. Such settings can include the barcode format, the length of the output string, the number of characters to be included in the decoded barcode, the order in which decoded barcode strings are output, a format for the output string, and other filters and formats. However, the sheer number of settings makes it difficult to adjust the job settings to achieve a desired output string.This provides a possibility to generate image processing or fixed industrial scanner job configurations using machine learning and generative artificial intelligence. SHORT DESCRIPTION

[0004] In one aspect, a procedure comprises receiving a system instruction file to a trained machine learning model of a computer application based on a machine vision (MV) or fixed industrial scanner (FIS) graphical user interface (GUI); receiving a current MV or FIS barcode scan job configuration to the trained machine learning model of the MV or FIS GUI-based computer application; receiving a request containing a natural language query regarding the current MV or FIS barcode scan job configuration; and generating a new barcode scan job configuration that corresponds to the request and a response to the request by processing the request and the system instruction file and using the trained machine learning model.Updating the current MV or FIS barcode scan job configuration based on the new barcode scan job configuration; and causing the response to the request to be displayed in a GUI of the computer application based on the MV or FIS GUI. BRIEF DESCRIPTION OF THE FIGURES

[0005] The figures described below represent different implementations of the system and method disclosed therein. It is understood that each figure represents an implementation of a specific implementation of the disclosed system and method, and that each figure is intended to correspond to one possible implementation thereof. Furthermore, the following description refers, wherever possible, to the reference symbols contained in the figures below, whereby features depicted in multiple figures are designated by corresponding reference symbols.

[0006] The figures represent preferred implementations for illustrative purposes only. A person skilled in the art will readily recognize from the following discussion that alternative implementations of the systems and methods illustrated here can be used without deviating from the principles of the invention described herein. Fig. Figure 1 represents an exemplary environment in which systems and imaging devices can be used according to the embodiments described herein. Fig. Figure 2 shows a block diagram of an exemplary logic circuit for implementing the exemplary procedures and / or operations described here. Fig. Figure 3 represents an exemplary imaging device according to the embodiments described herein. Fig. Figure 4 presents a flowchart for an exemplary machine learning model training and an exemplary machine learning model operation according to the embodiments described herein. Fig. Figure 5 presents an exemplary artificial intelligence / machine learning assistant and sections of an exemplary graphical user interface according to the embodiments described herein. Fig. Figure 6 presents a flowchart of an exemplary method for controlling an imaging device with generative artificial intelligence according to embodiments described herein. DETAILED DESCRIPTION Overview

[0007] The techniques presented here provide systems and methods that use machine learning to control, among other things, an imaging device. The methods and systems include, for example, receiving a system instruction file at a trained machine learning model of a computer application based on an image processing (IM) or fixed industrial scanner (FIS) graphical user interface (GUI); receiving a current IM or FIS barcode scan job configuration at the trained machine learning model of the IM or FIS GUI-based computer application; and receiving a prompt containing a natural language query regarding the current IM or FIS barcode scan job configuration.Generating a new barcode scan job configuration that corresponds to the request and a response to the request by processing the request and the system instruction file and using the trained machine learning model; updating the current MV or FIS barcode scan job configuration based on the new barcode scan job configuration; and causing the response to the request to be displayed in a GUI of the computer application based on the MV or FIS GUI.

[0008] As described above, a barcode scan job can involve a large number of settings, making it difficult to select which settings to choose to achieve a desired output string. Currently, a user must manually adjust the settings by interacting with the GUI of a computer application based on MV or FIS GUI.

[0009] To overcome these technical hurdles, the present application describes systems and methods that use machine learning to update a barcode scanning job configuration. The techniques of this disclosure provide a technical improvement over conventional techniques by at least enhancing the functionality of a computing device (e.g., a server that executes the machine learning model).

[0010] In particular, the machine learning model can update a barcode scan configuration by directly modifying user interface controls in an MV- or FIS-GUI-based application. This improves accuracy by preventing the machine learning model from generating an invalid configuration. Efficiency is improved because the machine learning model can determine and learn which combination of settings constitutes a desired configuration, thus reducing the resource consumption of repeatedly generating and executing barcode scan jobs to test configurations. Efficiency is further enhanced because the amount of resources used is reduced, as the machine learning model always has access to and can update a configuration instead of starting from scratch, and the user doesn't have to describe the current configuration to the machine learning model each time.Thus, the present disclosure describes improvements in the functioning of the computer itself, as the computing device generates more efficient and accurate barcode scanning job configurations. Exemplary environment

[0011] Fig. Figure 1 represents an exemplary environment 100 in which imaging devices according to the embodiments described herein can be used. The exemplary environment 100 can generally be an industrial environment comprising various sets of imaging devices 102 / 104 positioned above or around a conveyor belt 106. The imaging devices 102a-d can be machine vision cameras, each positioned at a different location along the conveyor belt 106 and each having a different orientation relative to the conveyor belt 106, the machine vision cameras 102a-d being configured to acquire image data over a corresponding field of view.

[0012] The imaging devices 104a-d can be fixed industrial scanners configured to capture image data of a corresponding field of view. The imaging devices 104a-d can be configured to capture image data, such as a barcode of a target object 108 on a conveyor belt 106. The conveyor belt 106 can carry a target object 108 via an entry point 110, at which a set of initial imaging devices 102a-d and 104a-d is located. The imaging devices 102a-d and 104a-d capture images of the object 108 along the conveyor belt 106. A computing device 112 can be communicatively coupled to each of the imaging devices 102a-d and 104a-d via a network 114, so that the computing device 112 can receive and analyze the images from the imaging devices 102a-d and 104a-d.In some embodiments, the computing device 112 can configure and control the imaging devices 102a-d and 104a-d to acquire images.

[0013] The set of imaging devices 102a-d and 104a-d can be organized in an arrangement or other manner that enables the acquisition of images along the entire working length of a belt 106 and can be arranged in a ladder / follower configuration with a ladder device (not shown) that can be configured to trigger the fixed industrial scanners 104a-d to acquire image data of the target object 108, organize the results from the image acquisition / inspection of each image processing camera, and transmit the results and / or the acquired images to the computing device 112. Each image transmitter of the imaging devices 102 and 104 stores a program for execution (e.g.,a “command”, “executable code”) that includes information relating to the respective image sensor image acquisition parameters, such as focus, exposure, gain, details about the type of symbology targeted for decoding, or specific steps of image processing inspection.

[0014] It is understood that, although four image processing cameras 102a-d and four fixed industrial scanners 104a-d are shown, any suitable number of devices can be used to capture all images of the target object 108, to take multiple image captures of the target object 108 and / or to otherwise acquire sufficient image data of the target object 108. Exemplary processing platform

[0015] Fig. Figure 2 is a block diagram illustrating an exemplary processing platform 200 for implementing exemplary methods and / or operations described herein according to embodiments. The exemplary processing platform 200 includes a network 210 (e.g., network 114), a computing device 220 (e.g., computing device 112), and an imaging device 230 (e.g., an image processing camera 102a-d, a fixed industrial scanner 104a-d). Although the processing platform 200 is shown to include a network 210, a computing device 220, and an imaging device 230, it is understood that the processing platform 200 may include additional, fewer, and / or alternative components and may be configured to perform additional, fewer, or alternative actions, including those described herein.It is understood that the computing device 220 and / or the imaging device 230 may include additional, fewer, and / or alternative components and may also be configured to perform additional, fewer, and / or alternative actions, including those described herein. For example, the processing platform 200 may include a variety of imaging devices 230, all of which may be interconnected via the network 210. Likewise, the computing device 220 may include multiple processors 214 and may not include an output device 228. Furthermore, it is understood that additional and / or alternative connections between the components and / or the imaging device 230 may be included. Fig. The two components shown can be implemented. As just one example, the computing device 220 and the imaging device 230 can be connected via a direct communication link (in Fig. (2 not shown) instead of or in addition to the network 210.

[0016] The network 210 can include at least one communication and / or data network to communicatively couple components of the processing platform 200, such as enabling bidirectional communication between the computing device 220 (e.g., via the network interface 212) and the imaging device 230 and / or any other suitable device. The network 210 can include any suitable network or networks, including a local area network (LAN), a wide area network (WAN), the internet, or a combination thereof. For example, the network 210 can include a wireless cellular service (e.g., 4G, 5G, etc.).In one aspect, the Network 210 may include a cellular base station, such as one or more cell towers, that communicates with one or more components of the Processing Platform 200 via wired / wireless communication based on one or more of various mobile communication standards, including NMT, GSM, CDMA, UMMTS, LTE, 5G, or the like. Additionally or alternatively, the Network 210 may include one or more wired and / or wireless data buses, modems, routers, switches, or other such connection points that communicate with the components of the Processing Platform 200, which may involve wired and / or wireless communication based on one or more of various standards, including, but not limited to, IEEE standards (e.g., 802.3, 802.11b / g / n / ac / ax, etc.), Bluetooth, and / or the like.

[0017] The computing device 220 can include the network interface 212, a processor 214, an input / output (I / O) interface 216, a memory 218 and an output device 228, any and / or all of which can be interconnected via an address / data bus or otherwise communicatively connected.

[0018] The network interface 212 can enable communication by the computing device 220 over the network 210. The exemplary network interface 212 can include any suitable type of communication interface(s) (e.g., wired and / or wireless interfaces) and be configured to operate according to any suitable protocol(s). For example, in some embodiments, the network interface 212 can transmit data or information (e.g., image data, payloads, etc.) between one or more remote processors, the imaging device 230, and / or other components.

[0019] The processor 214 can include one or more processors, such as a microprocessor (µP), a microcontroller, a central processing unit (CPU), and / or a graphics processing unit (GPU), and / or any suitable type of processor. The processor 214 can include one or more logical processors (e.g., virtual execution unit(s) with one or more threads) and / or physical processors (e.g., hardware execution units with one or more cores) and can include multitasking and / or parallel processing. The processor 214 can control the overall operations of the computing device 220. For example, the processor 214 can interact with the memory 218 to access data and / or instructions (e.g.,to obtain, execute, and / or store machine-executable instructions relating to a computer application 222 based on an image processing (MV) or fixed industrial scanner (FIS) graphic user interface (GUI), a machine learning model 224, the output device 228, and / or other component(s) of the computing device 220. Additionally or alternatively, machine-readable instructions corresponding to the exemplary operations described herein may be stored on one or more removable media (e.g., a compact disc, a digital versatile disc, removable flash memory, etc.) which may be communicatively coupled to the computing device 220 to provide access to the machine-readable instructions stored thereon.In particular, the instructions stored in memory 218, when executed by processor 214, can cause processor 214 to create a barcode scan job configuration and respond to a request received via I / O 216.

[0020] The I / O interface 216 can enable the reception of inputs (e.g., via a user interface) and / or the communication of output data (e.g., to an output device). For example, the user can provide inputs to the computing device 220 using an interface device (e.g., a mouse, a keyboard, a touchscreen, etc.) via the I / O interface 216.

[0021] The processor 214 (e.g., via a memory controller) and / or other components of the computing device 220 and / or the processing platform 200 can access the memory 218. The memory 218 can include one or more suitable storage media, such as a magnetic storage device, a solid-state drive, random-access memory, volatile memory, non-volatile memory, a database, and / or any other suitable memory. The memory 218 can be local memory contained within the housing of the computing device 220, or memory that is communicatively coupled to the computing device 220 (e.g., a database coupled via an address / data bus and / or the network 210). The memory 218 can contain instructions that can be executed by the processor 214.Such instructions can include one or more software applications, algorithms, modules, decoders, models, images for updating models, and / or other suitable instructions. Memory 218 can store an MV- or FIS-GUI-based computer application, a machine learning model 226, and a job configuration 228.

[0022] The MV- or FIS-GUI-based computer application 222, also referred to herein as the MV- or FIS-GUI-based application, can perform one or more imaging tasks, such as creating jobs (e.g., creating instructions) for machine vision or stationary industrial scanner imaging devices, via the computing device 220. The MV- or FIS-GUI-based application 222 can include one or more settings, such as settings associated with performing an imaging task. For example, the MV- or FIS-GUI-based application 222 can display a GUI on a display (e.g., the output device 228 via the I / O interface 216) and / or another communicatively coupled device.A user can interact with the GUI to view and / or edit various settings in the MV- or FIS-GUI-based application 222, view images, enter data, generate a barcode scan job configuration 226, etc. The MV- or FIS-GUI-based application 222 can generate the barcode scan job configuration 226 to configure one or more settings of the MV- or FIS-GUI-based application 222, such as an input format of a scanned barcode, an output format of data contained in the scanned barcode, rules, actions, filters, and / or other suitable settings. The MV or FIS-GUI-based application 222 can include a GUI generation module 224 that generates and updates a GUI that displays barcode scan job configuration settings and other aspects of the MV or FIS-GUI-based application 222 in graphical format on the output device 228.

[0023] Memory 218 can store a machine learning model 226. The machine learning model 226 can be and / or include one or more machine learning models (e.g., a neural network), algorithms, and the like. In some aspects, the machine learning methods and algorithms can include, among others, linear or logistic regression, instance-based algorithms, regularization algorithms, decision trees, Bayesian networks, cluster analysis, association rule learning, artificial neural networks, deep learning, combined learning, augmentation learning, dimensionality reduction, and support vector machines. In various embodiments, the implemented machine learning methods and algorithms are directed toward at least one of a multitude of categorizations of machine learning, such as supervised learning, unsupervised learning, and augmentation learning.In some aspects, the machine learning model 226 can be a generative model, a large language (e.g., a large language model), and / or a multimodal machine learning model. In at least some implementations, the machine learning model 226 can be configured to receive a system instruction file, a current MV or FIS barcode scan job configuration, and a prompt input to generate a new barcode scan job configuration that corresponds to the prompt and a response to the prompt. The system instruction file provides the machine learning model 224 with information such as company data, MV or FIS application data, or a description of tasks to be performed by the machine learning model. It is understood that, although the model 224 is described as having certain functionalities, such functionalities can be performed by additional models.

[0024] The machine learning model 224 can be trained, retrained, and / or fine-tuned. In some embodiments, a base model can be configured to generate a response to a prompt. The base model can be fine-tuned to generate the model 224. Fine-tuning can cause the model 224 to perform a specific task, such as generating a barcode scan job configuration that corresponds to a prompt and a response to a prompt, and / or to achieve better performance (e.g., generating output data faster, using fewer computational resources, etc.), thereby generating a new barcode scan job configuration and a response to a prompt. One or more devices of the processing platform 200 can store, configure, update, and / or operate the model 224.For example, in some implementations, a server can train, fine-tune, or otherwise configure the Model 224. The computing device 220 can receive the configured Model 224, store the Model 224 in memory 218, and execute the Model 224 (e.g., via the MV- or FIS-GUI-based application 222, etc.). In other implementations, the computing device 220 can configure, store, and / or operate the Model 224.

[0025] The output device 228 can be configured to receive (e.g., via the I / O interface 216) and / or output data, such as images, image data, a GUI-MV or FIS-GUI-based application 222, audio, video, text, and / or other suitable data. The output device 228 can include one or more displays (e.g., LCD, LED, OLED), lighting devices / components (e.g., lamps, LEDs), computing devices (e.g., mobile computing device, POS), and / or other suitable components for outputting data. It is understood that, although the output device 228 is depicted as a component of the computing device 220, the output device 228 can be communicatively coupled to the processing platform and / or the computing device 220 in other ways.

[0026] The imaging device 230 can include a network interface 232 (e.g., the network interface 212), a processor 234 (e.g., the processor 214), an I / O interface 236 (e.g., the I / O interface 216), a memory 238 (e.g., the memory 218), and an imaging assembly 240, any and / or all of which can be interconnected via an address / data bus or otherwise communicatively connected.

[0027] The network interface 212 enables communication between the imaging device 230 and the computing device 220 and / or components of the processing platform 200. The processor 234 can be configured to control the imaging assembly 240, execute applications, and / or control the overall operation of the imaging device 230. For example, the processor 234 can interact with the memory 238 to receive, execute, and / or store data and / or instructions (e.g., machine-executable instructions) relating to the imaging assembly 240, such as causing the imaging assembly 240 to acquire images. The I / O interface 236 can enable the reception of input data (e.g., device configuration data) and / or output data (e.g., image data) to, for example, the computing device 220 via the network 210.

[0028] The processor 234 (e.g., via a memory controller), the imaging assembly 240 (e.g., via a controller), and / or other components of the imaging device 230 and / or the processing platform 200 can access memory 238. Memory 238 can store image data applications and / or other suitable data.

[0029] Memory 238 can store an imaging application 244 which, when executed, causes the imaging device 230 to perform one or more imaging tasks, such as acquiring image data, storing and / or transferring (e.g., to the computing device 220) the image data, etc. For example, the imaging application 244 can contain instructions for acquiring an image of a barcode.

[0030] The imaging device 230 can load or otherwise implement the barcode scan job configuration 242 (e.g., via the processor 234, the imaging application 244) to configure the imaging device 230. In some embodiments, the imaging device 230 can be configured to scan and decode barcodes. The barcode scan job configuration can be stored as and / or include one or more XML files, JSON files, Python code, and / or any other suitable data (e.g., in memory 238). The MV- or FIS-GUI-based application 222, the model 224, or otherwise the computing device 220 can generate the barcode scan job configuration 242 to perform a barcode scanning task.

[0031] The imaging assembly 240 can include at least one image sensor and a controller. In particular, the at least one image sensor can be configured to acquire image data comprising one or more images of the field of view (FOV) of the imaging device 230, e.g., an FOV that includes the object 108 on the conveyor belt 106. The image sensor can be and / or include a CCD sensor (CCD = charge-coupled device), a CMOS sensor (CMOS = complementary metal-oxide semiconductor), a one-dimensional array of addressable image sensors, a two-dimensional array of addressable image sensors, a monochrome sensor, a color sensor, and / or any other suitable image sensor. Depending on the implementation, the image sensor can include a color sensor, such as a machine vision camera, in addition to and / or as an alternative to the monochrome sensor.The imaging assembly 240 can include one or more subcomponents, such as one or more controllers, and / or one or more imaging shutters (e.g., electronic and / or mechanical shutters configured to expose / shield the imaging sensor from the external environment). The one or more controllers can control and / or perform operations of the imaging assembly 240. The controller, the processor 234, and / or another suitable component can be configured to control the imaging assembly 240. The imaging assembly can include and / or be communicatively coupled to an illumination source (e.g., the light source) configured to emit illumination for a (predetermined) period corresponding to the acquisition of image data by the imaging assembly 240, such as white light illumination, specific wavelengths (e.g.,red wavelengths (IR) to meet the requirements of the imaging assemblies, etc. The imaging device 230 may have one or more operating parameters associated with illumination, focus setting (e.g., focus distance to the object 108), image sensor setting (e.g., contrast, resolution), image processing (e.g., image OCR, cropping, merging), and / or other operating parameters. Adjustments or other modifications to one or more of the operating parameters of the imaging device 230 can be made via the image sensor configuration data.

[0032] The imaging assembly 240 can be configured with the barcode scan job configuration 242 to capture image data that may include one or more images of a target object within the field of view (FOV), including, for example, packages, items, labels, and / or other target objects, some examples being merchandise available in a retail / wholesale store, facility, or the like. The target objects may or may not contain characters, such as a barcode, a QR code, a digital watermark, and / or other such characters. The processor 234, the imaging application 244, the computing device 220, and / or other suitable component(s) of the processing platform 200 can analyze the captured image data of target objects and / or characters passing through the FOV of the imaging assembly 240. For example, a barcode can be decoded and output in a specific format.

[0033] During operation, a computing device 220 can receive a system instruction file and a current barcode scan job configuration 242. A user can interact with the computing device 220 via an I / O interface 216 to input a request to the computing device 220. The MV- or FIS-GUI-based application 222 can process the system instruction file, the request, and the current barcode scan job configuration 242 using the machine learning model 226 to generate a response to the request and / or a new barcode scan job configuration, and to update the barcode scan job configuration 242 based on the new barcode scan job configuration.The response to the request can be displayed in an output device 228 and the barcode scan job configuration can be transferred to the imaging device 230 to configure and control the imaging device 230. Example imaging device

[0034] Fig. Figure 3 is a perspective view of an exemplary imaging device 300, which is any of the imaging devices 102a-102d, 104a-104d of Fig. 1. The machine vision image processing device can be implemented as an image transmitter for image processing applications according to the embodiments described herein. The machine vision image processing device 300 comprises a housing 302, an imaging aperture 304, a user interface label 307, a dome switch / button 308, and one or more mounting points 312. In some embodiments, the imaging device 300 can be a fixed industrial scanner. Exemplary machine learning model

[0035] Fig. Figure 4 illustrates a flowchart for an exemplary training and operation of a machine learning model 410 (e.g., of the machine learning model 224) according to some embodiments. The exemplary training and / or operation of the machine learning model 410 can be performed by the computing device 112. Fig. 1 and / or the calculating device 220 from Fig. 2 will be carried out.

[0036] A machine learning machine 420 can include one or more hardware and / or software components to obtain, create, (re)train, fine-tune, and / or store one or more machine learning models, such as the machine learning model 410. To train the machine learning model 410, the machine learning machine 420 can use training data 430. A computing device 112 or 220 can obtain and / or have available one or more types of training data 430 (e.g., training data stored in memory 224 or in an external database). In one aspect, at least some of the training data 430 can be labeled to assist in (re)training and / or fine-tuning the machine learning model 410.During the training of the machine learning model 410 by the machine learning machine 420, the machine learning model 410 can be configured to process the training data 430 in order to learn associations and relationships in the training data 430.

[0037] In some embodiments, the machine learning machine 420 updates the training data 430 as needed, for example, to include new data. Such data can be stored as updated training data 430. Subsequently, the machine learning model 410 can be retrained based on the updated training data 430 or the new sections thereof, which can lead to improvements in the machine learning model 410 over time. For example, the machine learning model 410 can improve in generating barcode scan job configurations.

[0038] In some embodiments, the machine learning model 410 may be a generative model and / or include generative functionality that enables the machine learning model 410 to generate new content, such as images, text, or other forms of data, that resembles or is inspired by existing examples.

[0039] In at least some aspects, the machine learning model 410 can generate responses to requests using natural language. In some embodiments, a natural language prompt 440 can be a question about an existing and / or current MV or FIS barcode scan job configuration and / or a request to generate a new MV or FIS barcode scan job configuration. The machine learning model 410 can answer questions about the existing and / or current MV or FIS barcode scan job configuration and / or generate a new MV or FIS barcode scan job configuration in response to the natural language prompt 440. For example, a natural language prompt can be a question such as "What is my current configuration?" or a request such as "Change the configuration to output only the first 4 characters of each decoding."

[0040] In some embodiments, a system instruction file may be included with prompt 440. The system instruction file 442 may contain information to guide the MV- or FIS-GUI-based application. The system instruction file may be an immutable document. In some embodiments, the system instruction file may include company data (e.g., a company name), MV- or FIS application data (e.g., a name of the FIS / MV application, a feature of the MV- or FIS application, a description of a graphical user interface (GUI) layout and controls of the MV- or FIS application), and / or a description of tasks to be performed by the machine learning model.In some embodiments, the prompt 440 may contain exemplary natural language prompts and exemplary sections of executable code and / or data formats corresponding to the exemplary natural language prompts to guide the machine learning model 410 in generating MV or FIS barcode scan job configurations.

[0041] The techniques presented here can involve language modeling via one or more LLMs, where one or more models (e.g., deep learning models) are trained by processing token sequences using an LLM architecture. For example, a transformer architecture can be used to process a sequence of tokens. The transformer model can include a variety of layers, incorporating neural self-attention and feedforward feedback networks. The transformer architecture can enable the model to learn contextual relationships between the tokens and predict the next token in a sequence based on the preceding tokens. During training, the model is provided with the sequence of tokens and learns to predict a probability distribution over the next token in the sequence. The training process can involve updating one or more model parameters (e.g.,weights or biases) using an objective function that minimizes the difference between the predicted distribution and a true nearest token in the training data.

[0042] Alternatives to the transformer architecture can include recurrent neural networks, long short-term storage networks, gated recurrent networks, convolutional neural networks, recursive neural networks, and other modeling architectures.

[0043] In some embodiments, the machine learning machine 420 trains the machine learning model 410 using the training data 430 to generate the output 450 based on receiving the input prompt 440. In some embodiments, the input prompt 440 may be a natural language prompt and / or a natural language query. In some embodiments, the input prompt 440 may be received by a computing device (e.g., computing device 112, 220) that implements the machine learning model 410. Once trained, the machine learning model 410 can perform operations on the input prompt 440 to generate a desired output 450, as discussed above. In one aspect, the machine learning model 410 is loaded at runtime from memory or an external database (e.g., the model 410 being loaded by the machine learning machine 420 from memory 218 or an external database).The server and / or the machine learning machine 420 can receive the input prompt 440 (e.g. from an I / O interface 216 in . Fig. 2), and the machine learning machine 420 can provide the prompt 440 to the trained machine learning model 410 as an input so that the machine learning model 410 can produce the output 450.

[0044] The machine learning model 410 can generate an MV or FIS barcode scan job configuration that includes output 450. For example, in response to a prompt "Output all decodings in the same order they are output, with a comma between each decoding," the machine learning model 410 can generate an instruction for an MV or FIS GUI-based application to decode a barcode scanned by the imaging devices 102a-d, 104a-d, and output the barcode information in a format that matches the prompt. The machine learning model 410 can generate data that updates the GUI of the MV or FIS GUI-based application to match the barcode scan job.For example, in response to a prompt "Output all decodings in the same order they are output, with a comma between each decoding", the machine learning model 410 can generate data in a JSON format that updates the UI control for setting the output order of decodings and the UI control for including a comma between each decoding, such as the one in . Fig. 5 UI controls shown. In some embodiments, the machine learning model 410 can generate a difference between the current MV or FIS barcode scan job configuration and the new MV or FIS barcode scan job configuration, which can be displayed in an output device (e.g., output device 228). Exemplary GUI components and AI / ML assistant

[0045] Fig. Figure 5 presents an example of a GUI component and an example artificial intelligence assistant for a GUI of a computer application based on MV or FIS-GUI. The GUI of an application based on MV or FIS-GUI may include an advanced filtering and formatting area 502, which can be used to filter and format the output of a barcode scanning job and an artificial intelligence assistant 504.

[0046] Instead of directly adjusting the settings in the Advanced Filtering and Formatting pane 502, a user can use the Artificial Intelligence Assistant 504 to adjust the settings in the Advanced Filtering and Formatting pane 502. A user can interact with an I / O component (e.g., I / O Interface 216) to enter a prompt (e.g., Prompts 510a-510c) in the input field 506 of the Artificial Intelligence Assistant 504. The Artificial Intelligence Assistant can use a machine learning model, such as the machine learning models 224 and 410, to generate an output response (e.g., Responses 512a-510c). The prompt can be a request for information about the current MV or FIS barcode scan job configuration. For example, a user can type "Explain my current configuration" as a command prompt (command prompt 510a).The Artificial Intelligence Assistant 504 can generate an output response: “The current configuration will output all decodings in the same order in which they are output by the tool, with a comma between each decoding. A tab character will be added after each decoding” (response 512a).

[0047] In some implementations, the prompt may contain instructions for modifying a barcode scan job configuration or creating a new one. For example, the 510b prompt requests, "Output only the first 4 characters of each decoding." The 504 AI Assistant may return a 512b response. The 504 AI Assistant may also create a new barcode scan job configuration and / or update the current barcode scan job configuration. The 504 AI Assistant may generate data reflecting the updated settings corresponding to the new barcode scan job configuration in the GUI of the MV- or FIS-GUI-based application.For example, in response to the prompt 510b "Output only the first 4 characters of each decoding," the artificial intelligence assistant 504 can generate a new barcode scanning job configuration that outputs only the first 4 characters of each decoding as a JSON object. This object can then be used (e.g., via a GUI generation module 224) to reflect the changes in the advanced filtering and formatting area 502 in the GUI of the MV- or FIS-GUI-based application. The changes can be reflected in the GUI immediately (e.g., in real time or near real time).

[0048] In some implementations, the AI ​​504 assistant can validate the updated barcode scan job configuration. For example, the 510c prompt asks, "Based on the last job execution result, is the overall configuration and ManyCode output working correctly? Give me an example that shows whether it works or doesn't work." The AI ​​504 assistant can validate that the barcode scan job configuration output matches the updated barcode scan job configuration. For example, the AI ​​504 assistant generates the 512c response, "Yes, the configuration is working correctly," with an example and an explanation of why it is correct.In some implementations, if the output of the barcode scan job configuration is incorrectly formatted and does not match the updated barcode scan job configuration, the Artificial Intelligence Assistant 504 can generate a corrected barcode scan job configuration. The corrected barcode scan job configuration can be displayed in the GUI of the application based on MV or FIS GUI. For example, changes to filtering and formatting options may appear in the Advanced Filtering and Formatting area 502.

[0049] In some embodiments, the Artificial Intelligence Assistant 504 can generate a difference between the current MV or FIS barcode scan job configuration and the new MV or FIS barcode scan job configuration. The difference can be displayed in the GUI and / or on an output device (e.g., output device 228).

[0050] It goes without saying that, while an advanced filtering and formatting area 502 in Fig. As shown in Figure 5, the GUI of an application based on MV or FIS GUI can include any suitable settings (e.g., user interface controls) for an MV or FIS barcode scan job. For example, settings can include symbologies (e.g., barcode formats such as I25, D25, QR, UPC / EAN, Code 93, DotCode, Code 128, Code 39, Data Matrix, PDF-417, etc.), output string formatting, and other rules. Various settings can be selected to configure a barcode scan job. Exemplary procedure

[0051] Fig.Figure 6 presents a flowchart of an exemplary computer-implemented method for controlling an imaging device according to some embodiments. One or more blocks of the method 600 may be implemented as a set of instructions stored in computer-readable memory and executable on one or more processors. The method 600 may be implemented via one or more local or remote processors, such as the processor 214, computing devices, such as the 112 or 220, systems, such as the environment 100, and / or other electronic or electrical components, which may be communicatively coupled to one another.

[0052] Method 600 may involve receiving a system instruction file at block 602 on a trained machine learning model of a computer application based on an image processing (IM) or fixed industrial scanner (FIS) graphic user interface (GUI). In some embodiments, the system instruction file may include company data, IM or FIS application data, or a description of tasks to be performed by the machine learning model. In some embodiments, the IM or FIS application data may include a name of the IM or FIS application, a feature of the IM or FIS application, or a description of a graphic user interface (GUI) layout of the IM or FIS application.

[0053] In block 604, procedure 600 may involve receiving a current MV or FIS barcode scan job configuration at the trained machine learning model of the MV or FIS GUI-based computer application. In some embodiments, the trained machine learning model may be a large language model (LLM) or a multimodal machine learning model. In some embodiments, the trained machine learning model may be fine-tuned according to the system instruction file.

[0054] In block 606, method 600 may involve receiving a prompt containing a natural language query regarding the current MV or FIS barcode scan job configuration. In some embodiments, the natural language query may include a query to evaluate one or more proposed changes to a barcode scan job configuration and / or a query to modify the current MV or FIS barcode scan job configuration. In some embodiments, method 600 may involve uploading one or more images to the MV or FIS GUI-based application. The prompt may reference the one or more uploaded images, which may contain a barcode, optical character recognition (OCR) text, and / or an image processing portion.

[0055] In block 608, procedure 600 may involve generating a new barcode scan job configuration that corresponds to the request and a response to the request by processing the request and the system instruction file and using the trained machine learning model. In some embodiments, the new MV or FIS barcode scan job configuration may be in JavaScript Object Notation (JSON) format.

[0056] In some embodiments, Method 600 may involve generating a difference between the current MV or FIS barcode scan job configuration and the new MV or FIS barcode scan job configuration using the trained machine learning model. The difference may be displayed in the GUI of the computer application based on the MV or FIS GUI or in the output device.

[0057] For block 610, procedure 600 may involve updating the current MV or FIS barcode scan job configuration based on the new barcode scan job configuration. For block 612, procedure 600 may involve causing the response to the request to be displayed in a GUI of the computer application based on the MV or FIS GUI.

[0058] In some embodiments, Method 600 may involve receiving previous natural language queries and previous responses to the trained machine learning model. The previous natural language queries and previous responses can be used by the trained machine learning model to generate an additional response.

[0059] In some embodiments, Method 600 may further include updating one or more settings displayed in the GUI of the MV- or FIS-GUI-based computer application. The new barcode scan job configuration can be updated immediately to reflect the updated settings displayed in the GUI of the MV- or FIS-GUI-based computer application.

[0060] In some embodiments, Method 600 may involve receiving a barcode image and executing the updated barcode scan job to process the barcode image and generate result data. The trained machine learning model can validate that the result data responds to the updated barcode scan job configuration. In some embodiments, if the result data does not respond to the updated barcode scan job configuration, the trained machine learning model can generate a corrected MV or FIS barcode scan job configuration file.The MV or FIS barcode scan job configuration can be updated based on the corrected MV or FIS barcode scan job configuration file, and the GUI of the computer application based on the MV or FIS GUI can be updated immediately to match the corrected MV or FIS barcode scan job configuration file. Additional considerations

[0061] The various embodiments described above can be combined to provide further embodiments. All U.S. patents, U.S. patent application publications, U.S. patent applications, foreign patents, foreign patent applications, and non-patent publications referenced in this specification and / or listed in the application data sheet are incorporated herein by reference in their entirety for all purposes. Aspects of the embodiments may be modified as needed to incorporate concepts from the various patents, applications, and publications to provide yet more embodiments.

[0062] These and other modifications may be made to the embodiments in light of the detailed description above. In general, the terms used in the following claims should not be interpreted as limiting the claims to the specific embodiments disclosed in the specification and the claims, but rather as encompassing all possible embodiments together with the full scope of equivalents covered by such claims. Accordingly, the claims are not limited by the disclosure.

[0063] The following considerations also apply to the preceding discussion. In this specification, multiple instances can implement operations or structures described as a single instance. Although individual operations of one or more procedures are illustrated and described as separate operations, one or more of the individual operations can be performed concurrently, and nothing requires that the operations be performed in the illustrated order. These and other variations, modifications, additions, and improvements fall within the scope of the subject matter described herein.

[0064] It is also understood that, unless a term is expressly defined in this patent using the phrase "As used herein, the term is hereby defined to mean..." or a similar phrase, it is not intended, either expressly or implicitly, to limit the meaning of that term beyond its simple or ordinary meaning, and that term should not be interpreted as being limited in scope based on any statement made in any section of this patent (other than the language of the claims).To the extent that each term mentioned in the claims at the end of this patent is mentioned in this patent in a manner consistent with a single meaning, this is done only for clarity, so as not to confuse the reader, and it is not intended that any such claim term be implicitly or otherwise limited to that single meaning. Finally, it is not intended that the scope of a claim element be interpreted based on the application of 35 USC § 112(f), unless a claim element is defined by the statement of the word "means" and a function without specifying a structure.

[0065] Unless expressly stated otherwise, discussions herein using words such as "processing", "calculating", "calculating", "determining", "presenting", "displaying" or the like may refer to actions or processes of a machine (e.g., a computer) that manipulates or transforms data represented as physical (e.g., electronic, magnetic, or optical) quantities within one or more memories (e.g., volatile memory, non-volatile memory, or a combination thereof), registers, or other machine components that receive, store, transmit, or display information.

[0066] As used herein, any reference to “an embodiment” means that a particular element, feature, structure, or property described in connection with the embodiment is included in at least one embodiment. The appearance of the phrase “in an embodiment” at different locations in the specification does not necessarily all refer to the same embodiment.

[0067] As used herein, the terms “includes,” “comprehensive,” “includes,” “containing,” “has,” “exhibiting,” or any other variation thereof are intended to cover non-exclusive inclusion. For example, a process, procedure, article, or device that includes a list of elements is not necessarily limited to only those elements but may include other elements not expressly listed or inherent in such process, procedure, article, or device. Furthermore, “or” refers to an inclusive or and not an exclusive or unless expressly stated otherwise. For example, a condition A or B is satisfied by any of the following: A is true (or present) and B is false (or not present), A is false (or not present) and B is true (or present), and both A and B are true (or present).

[0068] Furthermore, the use of "a" or "an" is employed to describe elements and components of the implementations described herein. This is done solely for the sake of simplicity and to provide a general sense of the invention. This description should be read as including one or at least one, and the singular also includes the plural unless it is obvious otherwise.

[0069] Upon reading this disclosure, the person skilled in the art will recognize additional alternative structural and functional designs for implementing the concepts disclosed herein by means of the principles disclosed herein. While certain embodiments and applications have been illustrated and described, it is therefore understood that the disclosed embodiments are not limited to the exact construction and components disclosed herein. Various modifications, changes, and variations, which are obvious to the person skilled in the art, can be made to the arrangement, operation, and details of the method and apparatus disclosed herein without deviating from the core idea and scope defined in the appended claims.

Claims

[1] Method for controlling an imaging device, comprising: Receiving a system instruction file to a trained machine learning model of a computer application based on an image processing (IP) or fixed industrial scanner (FIS) graphical user interface (GUI); Receiving a current MV or FIS barcode scan job configuration to the trained machine learning model of the MV or FIS GUI-based computer application; Receiving a request containing a natural language query regarding the current MV or FIS barcode scan job configuration by one or more processors; Generating a new barcode scan job configuration that matches the request and a response to the request by processing the request and the system instruction file and using the trained machine learning model; Updating the current MV or FIS barcode scan job configuration based on the new barcode scan job configuration by one or more processors; and To cause the response to the request to be displayed in a GUI of the computer application based on MV or FIS GUI, by one or more processors. [2] Method according to claim 1, wherein the natural language query includes at least one query to evaluate one or more proposed changes to a barcode scan job configuration or a query to modify the current FIS / MV barcode scan job configuration. [3] Method according to claim 1, wherein the trained machine learning model is one of a large language model (LLM) or a multimodal machine learning model. [4] Method according to claim 1, wherein the new MV or FIS barcode scan job configuration is in JavaScript Object Notation (JSON) format. [5] The method of claim 1, further comprising: Generating a difference between the current MV or FIS barcode scan job configuration and the new MV or FIS barcode scan job configuration using one or more processors and the trained machine learning model; and To cause the difference to be displayed in the GUI of the computer application based on MV or FIS GUI, or in the output device, by one or more processors. [6] Method according to claim 1, wherein the system instruction file includes one or more company data, MV or FIS application data or a description of tasks to be performed by the machine learning model. [7] Method according to claim 6, wherein the MV or FIS application data includes one or more of a name of an MV or FIS application, a feature of the MV or FIS application or a description of a graphic user interface layout (GUI layout) of the MV or FIS application. [8] Method according to claim 1, further comprising: Receiving one or more previous natural language queries and one or more previous responses to the trained machine learning model, wherein the one or more previous natural language queries and the one or more previous responses are to be used by the trained machine learning model to generate an additional response. [9] Method according to claim 1, wherein the trained machine learning model is fine-tuned according to the system instruction file. [10] Method according to claim 1, further comprising: Receiving a barcode image from an imaging device by one or more processors; Execution of the updated barcode scan job by one or more processors to process the barcode image in order to generate result data; and Validate by one or more processors and using the trained machine learning model of the result data that the result data is responsive to the new barcode scan job configuration. [11] The method of claim 10, wherein the result data do not respond to the new barcode scan job configuration description, further comprising: Generating a corrected MV or FIS barcode scan job configuration file using one or more processors and the trained machine learning model; and Updating the MV or FIS barcode scan job configuration based on the corrected MV or FIS barcode scan job configuration file by one or more processors; and Immediate updating of the GUI of the computer application based on MV or FIS GUI by the one or more processors to match the corrected MV or FIS barcode scan job configuration file. [12] Method according to claim 1, wherein updating the current MV or FIS barcode scan job configuration comprises: Immediate updating of the GUI of a computer application based on MV or FIS GUI by one or more processors to match the new MV or FIS barcode scan job configuration. [13] Method according to claim 1, further comprising: Updating one or more settings displayed in the GUI of a computer application based on MV or FIS GUI by one or more processors; and Immediate updating of the new barcode scan job configuration by the one or more processors to match the updated settings displayed in the GUI of the computer application based on MV or FIS GUI. [14] The method of claim 1, further comprising: Uploading one or more images to the MV or FIS GUI-based computer application, where the prompt references the one or more images. [15] Method according to claim 14, wherein the one or more images include one or more of a barcode, optical character recognition (OCR) text or an image processing part.