Method and apparatus for generating recommendations using an external computing device

By integrating imaging components, processors, and memory into the data acquisition device, and combining it with object prediction applications, object identifier data is generated and transmitted, solving the problem that traditional systems cannot handle objects without easily decodeable information, and enabling fast and accurate object identification by the host device.

CN122249827APending Publication Date: 2026-06-19ZEBRA TECHNOLOGIES CORP

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
ZEBRA TECHNOLOGIES CORP
Filing Date
2024-11-19
Publication Date
2026-06-19

AI Technical Summary

Technical Problem

Traditional data capture systems cannot handle objects that do not contain easily decodeable information, forcing host device users to manually identify objects, rendering object identification applications ineffective.

Method used

The data capture device is equipped with an imaging component, processor, and memory. Combined with object prediction applications, it decodes image data and generates object candidate data, and transmits object identifier data through the scanner terminal of the host device.

Benefits of technology

It enables host devices to quickly and accurately identify objects without special configuration, overcoming the limitations of traditional systems.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN122249827A_ABST
    Figure CN122249827A_ABST
Patent Text Reader

Abstract

This document discloses a method and apparatus for product recommendation using an external computing device. A data capture apparatus may include an imaging component and a prediction controller connected to a host device. The data capture apparatus may be configured to: capture images of objects in one or more fields of view; provide the generated image data associated with the images to an object prediction application deployed on the prediction controller; identify one or more aspects of the objects via the object prediction application; generate object candidate data corresponding to the objects from the identification via the object prediction application; generate object identifier data for each object candidate in the object candidate data; and / or transmit the object candidate data and / or object identifier data to the host device via a scanner terminal of the host device.
Need to check novelty before this filing date? Find Prior Art

Description

Background Technology

[0001] Traditional data capture systems (e.g., combinations of data capture devices and host devices) are typically not bidirectional in terms of data streaming and processing. For example, in most traditional systems, the data capture device can capture an image, process the image (e.g., decode barcode data visible in the image), and then transmit the processed data to the host device. Once transmitted, the data capture device cannot process the data further. Therefore, traditional data capture systems often struggle to identify objects that do not contain easily decodeable information, such as barcodes.

[0002] For example, if an object does not include a label (e.g., a barcode)—such as produce or meat—it is typically processed using an object identification application before being transmitted to the host device. However, this traditional configuration has a common limitation: the host device is usually not configured to read the output of these object identification applications. Therefore, the output of the object identification application cannot inform the host device of the identity of the object placed in front of the data capture device. Consequently, the user of the host device must navigate through a complete product list to manually identify the object, rendering the object identification application ineffective. Summary of the Invention

[0003] In another embodiment, the present invention is a data capture device comprising: (1) an imaging component configured to capture images over one or more fields of view; (2) one or more processors connected to the imaging component; (3) one or more memories communicatively coupled to the one or more processors; and (4) computation instructions stored on the one or more memories, the computation instructions, when executed, causing the data capture device to: capture images of objects in one or more fields of view via the imaging component, wherein the data capture device decodes markers on the objects in the image data, and the data capture device transmits the decoded marker data to the host device via a scanner terminal of the host device, in response to Unable to identify a decodable marker on the object, the generated image data associated with the image is provided to an object prediction application deployed on one or more memories, the object prediction application identifies one or more aspects of the object, the object prediction application generates object candidate data corresponding to the object from the identifier, wherein the object prediction application is deployed on one or more memories and the object prediction application is configured to generate object candidate data corresponding to one or more objects detected within the captured image, generate object identifier data for each object candidate in the object candidate data, and transmit one or more of (i) the object candidate data or (ii) the object identifier data to the host device via the scanner terminal of the host device.

[0004] Additionally or alternatively, in some embodiments, the data capture device may further include an electronic weighing scale connected to the imaging assembly. The electronic weighing scale may be configured to detect weight changes in the display area via the electronic weighing scale. Additionally or alternatively, in some embodiments, the image is captured in response to the electronic weighing scale detecting the weight change, and the imaging assembly has a field of view of the display area.

[0005] Additionally or alternatively, in some embodiments, the object prediction application is further configured to: (1) generate a confidence score for each object candidate in the object candidate data, (2) determine that the highest confidence score is higher than the second highest confidence score by a threshold amount, and / or (3) generate determined object candidate data corresponding to the object candidate having the highest confidence score, wherein object identifier data of the determined object candidate data is generated and the object identifier data of the determined object candidate data is transmitted to the host device.

[0006] Additionally or alternatively, in some embodiments, the combination of the one or more processors and the one or more memories is separately disposed from the imaging component, and the imaging component is communicatively connected to the host device via the scanner terminal.

[0007] Additionally or alternatively, in some embodiments, the combination of the one or more processors and the one or more memories is separately disposed from the imaging component, and the combination of the one or more processors and the one or more memories is communicatively connected to the host device via the scanner terminal.

[0008] Additionally or alternatively, in some embodiments, the imaging component is housed in the same housing as the one or more processors and the one or more memories, and the data capture device is communicatively connected to the host device via the scanner terminal.

[0009] In a further embodiment, the present invention may be a machine-readable method comprising: (1) capturing an image of an object in one or more fields of view via an imaging component, wherein a data capture device decodes a marker on the object in image data, and the data capture device transmits the decoded marker data to the host device via a scanner terminal of a host device; (2) in response to the data capture device being unable to identify a decodeable marker on the object, providing generated image data associated with the image to an object prediction application deployed on one or more memories of the data capture device via one or more processors of the data capture device; (3) identifying one or more aspects of the object via the object prediction application; (4) generating object candidate data corresponding to the object from the identification via the object prediction application, wherein the object prediction application is configured to generate object candidate data corresponding to one or more objects detected within the captured image; (5) generating object identifier data for each object candidate in the object candidate data via the data capture device; and / or (6) transmitting one or more of (i) the object candidate data or (ii) the object identifier data to the host device via the scanner terminal of the host device via the data capture device.

[0010] Additionally or alternatively, in some embodiments, the method further includes detecting a weight change in a display area via an electronic weighing scale connected to the imaging component. In some embodiments, the image is captured in response to the electronic weighing scale detecting the weight change, and the imaging component has a field of view of the display area.

[0011] Additionally or alternatively, in some embodiments, the object prediction application is further configured to: (1) generate a confidence score for each object candidate in the object candidate data, (2) determine that the highest confidence score is higher than the second highest confidence score by a threshold amount, and / or (3) generate determined object candidate data corresponding to the object candidate having the highest confidence score, wherein an object identifier of the determined object candidate data is generated and the object identifier of the determined object candidate data is transmitted to the host device.

[0012] Additionally or alternatively, in some embodiments, the one or more memories are communicatively coupled to the one or more processors, the one or more processors are connected to the imaging component, the combination of the one or more processors and the one or more memories is separately disposed from the imaging component, and the imaging component is communicatively connected to the host device via the scanner terminal.

[0013] Additionally or alternatively, in some embodiments, the one or more memories are communicatively coupled to the one or more processors, the one or more processors are connected to the imaging component, the combination of the one or more processors and the one or more memories is separately disposed from the imaging component, and the combination of the one or more processors and the one or more memories is communicatively connected to the host device via the scanner terminal.

[0014] Additionally or alternatively, in some embodiments, the one or more memories are communicatively coupled to the one or more processors, the one or more processors are connected to the imaging component, the data capture device includes a combination of the one or more memories, the one or more processors and the imaging component, the imaging component is disposed in the same housing as the one or more processors and the one or more memories, and the data capture device is communicatively connected to the host device via the scanner terminal.

[0015] In another embodiment, the invention may be a tangible, non-transitory, computer-readable medium storing instructions that, when executed by one or more processors of a data capture device, cause the data capture device to: (1) capture an image of an object in one or more fields of view via an imaging component, wherein the data capture device decodes a marker on the object in the image data, and the data capture device transmits the decoded marker data to the host device via a scanner terminal of a host device; (2) in response to the inability to identify a decodeable marker on the object, provide generated image data associated with the image to an object prediction application deployed on the one or more memories; (3) identify one or more aspects of the object via the object prediction application; (4) generate object candidate data corresponding to the object from the identification via the object prediction application, wherein the object prediction application is configured to generate object candidate data corresponding to one or more objects detected within the captured image; (5) generate object identifier data for each object candidate in the object candidate data; and / or (6) transmit one or more of (i) the object candidate data or (ii) the object identifier data to the host device via the scanner terminal of the host device.

[0016] Additionally or alternatively, in some embodiments, the electronic weighing scale may be connected to a data capture device, and the stored instructions further cause the electronic weighing scale to detect weight changes in a display area, wherein the image is captured in response to the electronic weighing scale detecting the weight change, and the imaging component has a field of view of the display area. Additionally or alternatively, in some embodiments, the image is captured in response to the electronic weighing scale detecting the weight change, and the imaging component has a field of view of the display area.

[0017] Additionally or alternatively, in some embodiments, the object prediction application is further configured to: (1) generate a confidence score for each object candidate in the object candidate data, (2) determine that the highest confidence score is higher than the second highest confidence score by a threshold amount, and / or (3) generate determined object candidate data corresponding to the object candidate having the highest confidence score, wherein an object identifier of the determined object candidate data is generated and the object identifier of the determined object candidate data is transmitted to the host device.

[0018] Additionally or alternatively, in some embodiments, the one or more processors are connected to the imaging component, the combination of the one or more processors and the tangible non-transitory computer-readable medium is separately disposed from the imaging component, and the imaging component is communicatively connected to the host device via the scanner terminal.

[0019] Additionally or alternatively, in some embodiments, the one or more processors are connected to the imaging component, the combination of the one or more processors and the tangible non-transitory computer-readable medium is separately disposed from the imaging component, and the combination of the one or more processors and the tangible non-transitory computer-readable medium is communicatively connected to the host device via the scanner terminal.

[0020] Additionally or alternatively, in some embodiments, the one or more processors are connected to the imaging component, the data capture device includes a combination of the tangible non-transitory computer-readable medium, the one or more processors, and the imaging component, the imaging component being disposed in the same housing as the one or more processors and the tangible non-transitory computer-readable medium, and the data capture device being communicatively connected to the host device via the scanner terminal.

[0021] The advantages of the invention will become more apparent to those skilled in the art through the following examples, which are shown and described in conjunction with the accompanying drawings. As will be appreciated, other different implementations are possible with the following examples, and their details can be modified in various ways. Therefore, the drawings and description are to be regarded as exemplary rather than limiting in nature. Attached Figure Description

[0022] The accompanying drawings (in which the same reference numerals denote the same or functionally similar elements throughout the different views) together with the following detailed description are incorporated into and form part of the specification, and serve to further illustrate embodiments including the concepts of the claimed invention, and to explain the various principles and advantages of those embodiments.

[0023] Figure 1 An example computing environment for implementing the systems, devices and methods described herein is shown;

[0024] Figure 2 Example implementations of the computing systems, devices, and methods described herein are shown; Figure 3A This is a sample graphical user interface for a cashier log application; Figure 3B This is another example of a graphical user interface for a POS log application; Figure 3C This is yet another example of a graphical user interface for a POS log application; and Figure 4 This is a block diagram of an example flowchart used for the example methods and / or operations described in this document.

[0025] Those skilled in the art will understand that the elements in the accompanying drawings are shown for simplicity and clarity and are not necessarily drawn to scale. For example, the dimensions of some elements in the drawings may be exaggerated relative to other elements to aid in understanding embodiments of the invention.

[0026] The apparatus and method configurations have been indicated in appropriate places in the accompanying drawings by conventional symbols, which show only those specific details relevant to understanding embodiments of the invention, so as not to obscure this disclosure with details that would be obvious to those skilled in the art who benefit from the description herein. Detailed Implementation

[0027] Traditional image-based data capture devices may include imaging devices (such as scanners) connected to a host device (such as a point-of-sale (POS) terminal). The imaging device scans markings (such as barcodes) located on an object and transmits decoded information from the markings identifying the object to the host device. Once the decoded information is received, the host device can accurately identify the object and use that information in a POS transaction. As mentioned earlier, while these traditional configurations work for marked objects, they are prone to failure when the object is unmarked because the host device is typically not configured to read the output of object identification applications.

[0028] This disclosure generally relates to an imaging-based data capture device that can be connected to a host device processing POS transactions. Specifically, the methods and systems described herein overcome the limitations of conventional operations by allowing the host device to read the output of an object identification application (e.g., in scenarios where objects do not have barcodes) without requiring special configuration to read this output. In this way, software associated with the data capture device can subsequently process the data transmitted to the host device to allow for fast and accurate object identification even without easily decodable tags.

[0029] The data capture device may include an imaging component and / or a prediction controller. In some embodiments, the imaging component and the prediction controller may be housed in a single housing and / or share components (e.g., processing elements, memory, etc.). A user may place an object within the field of view of the imaging component, and the imaging component may capture one or more images of the object. In some embodiments, the images may then be processed, analyzed, and / or embedded to generate image data associated with the captured images. For example, the image data may include a high-contrast version of the image and / or the image data may include metadata accompanying the image (e.g., decoded tag data). The images and / or image data may then be fed into an object prediction application, where one or more object candidates are generated. The data capture device converts one or more object candidates into one or more object identifiers (e.g., item lookup (PLU) codes) readable by the host device. The data capture device may then pass one or more object candidates to the host device.

[0030] In this way, the system described in this paper overcomes the limitations of traditional object identification systems because the host device is able to identify objects from the application’s output without having to read the specialized configuration of those outputs.

[0031] As used herein, the term "mark" should be understood to refer to any kind of visual mark that can be associated with an object. For example, a mark can be a 1D barcode, a 2D barcode, or a 3D barcode, a graphic, a logo, etc. Additionally, a mark may include encoded payload data, such as in a 1D or 2D barcode, where the barcode encodes a payload consisting of, for example, alphanumeric or special characters that can form a string.

[0032] Computing environment

[0033] Figure 1 An example computing environment for implementing the systems, apparatus, and methods described herein is shown. The example computing environment may include data capture device 101 and / or host device 151.

[0034] The data acquisition device 101 may include an imaging device 111 and / or a prediction controller 121.

[0035] Imaging device 111 may include one or more processors 112, one or more memories 114, one or more I / O ports 115, one or more image sensors 116, and / or one or more optics 118. Any of these components of imaging device 111 may be communicatively coupled to each other via a dedicated communication bus. In one example, imaging device 111 may be a camera device. In another example, imaging device 111 may be a scanning device (such as a single-view scanner, a dual-view scanner, etc.).

[0036] One or more processors 112 may be one or more central processing units (CPUs), one or more coprocessors, one or more microprocessors, one or more graphics processing units (GPUs), one or more digital signal processors (DSPs), one or more application-specific integrated circuits (ASICs), one or more programmable logic devices (PLDs), one or more field-programmable gate arrays (FPGAs), one or more field-programmable logic devices (FPLDs), one or more microcontroller units (MCUs), one or more hardware accelerators, one or more application-specific computer chips, and one or more system-on-a-chip (SoC) devices.

[0037] One or more memories 114 may include any local short-term memory (e.g., random access memory (RAM), read-only memory (ROM), cache, etc.) and / or long-term memory (e.g., hard disk drive (HDD), solid-state drive (SSD), etc.). One or more memories 114 may also store machine-readable instructions, including any one or more applications and / or one or more software components, which may be implemented to facilitate or perform the features, functions, or other disclosures described herein, such as any methods, processes, elements, or limitations illustrated, depicted, or described in connection with the various flowcharts, diagrams, figures, and / or other disclosures herein.

[0038] As an example, the machine-readable instructions of imaging device 111 may instruct, guide, and / or cause imaging device 111 to capture images in one or more fields of view. As an example, the machine-readable instructions of imaging device 111 may instruct, guide, and / or cause any processor of imaging device 111 and / or data capture device 101 to decode encrypted information in the image and / or image data, such as tags (e.g., barcodes, quick response (QR) codes, etc.).

[0039] One or more processors 112 may include one or more registers capable of temporarily storing data, and one or more processors 112 may include additional storage capacity in the form of integrated memory slots. One or more processors 112 may interact with any of the above (e.g., registers, integrated memory slots, one or more memories 114, etc.) to obtain machine-readable instructions, for example, corresponding to the operations represented by the flowcharts of this disclosure.

[0040] One or more I / O ports 115 may be or include various different types of I / O units, I / O interfaces, and / or I / O circuitry, enabling one or more processors 112 of the imaging device 111 to communicate with external devices (e.g., one or more I / O ports 125 of the prediction controller 121 and / or one or more I / O ports 155 of the host device 151). In some embodiments, one or more I / O ports 115 of the imaging device 111 may be directly connected to one or more I / O ports 125 of the prediction controller 121 (e.g., via a communication bus, wired connection, wireless connection, etc. via dedicated coupling) to allow the imaging device 111 to receive digital signals, object candidate data, and / or object identifier data from the prediction controller 121, and to transmit images and / or image data to the prediction controller 121. Additionally or alternatively, in some embodiments, one or more I / O ports 115 of the imaging device 111 may also be directly connected (e.g., via a dedicated scanner terminal, wireless connection, etc.) to one or more I / O ports 155 of the host device 151 to allow the imaging device 111 to transmit object candidate data generated by the prediction controller 121 to the host device 151. In some embodiments, the imaging device 111 may also transmit object identifier data to the host device 151.

[0041] One or more image sensors 116 may be any image capture unit(s), components(s), and / or sensors(s) capable of capturing images. For example, image sensor 116 may be a CMOS image sensor, a CCD image sensor, and / or other types of image sensor architecture. Image sensor 116 may be configured to convert values ​​from component sensors into a file format associated with the image.

[0042] One or more optical devices 118 may be any optical element that can be attached to or detached from the housing of the imaging device 111, such as a collimator, lens, aperture, partition wall, etc.

[0043] In operation, imaging device 111 may be configured to capture images and / or decode marker data in images and / or image data. In embodiments employing two or more imaging devices 111, the two or more imaging devices may be arranged such that the field of view (FOV) of each imaging device 111 has a different angle of view than the FOV of other imaging devices 111. In some embodiments, imaging device 111 may capture images upon receiving a digital communication signal (e.g., a signal flag triggered by an electronic sensor communicatively coupled to imaging device 111). In some embodiments, imaging device 111 may be configured to continuously capture images over a period of time (e.g., video recording, video streaming, etc.). In these embodiments, a single frame image may be selected. In some embodiments, a single frame may be selected based on the quality of the image frame (e.g., using the focus measurement operators and / or algorithms described herein). In these embodiments, the frame with the highest relative quality among the captured frames may be selected.

[0044] One or more dedicated processors of imaging device 111 and / or data capture device 101 can decode one or more markers in the image and / or image data. For example, when an object has markers visible in the object image and / or image data, one or more dedicated processors of imaging device 111 and / or data capture device 101 can decode the markers to generate decoded marker data, and then transmit the decoded marker data to host device 151. Conversely, in embodiments where the object does not have markers, the markers are not visible in the image and / or image data, and / or prediction controller 121 is unable to decode the markers in the image and / or image data, one or more dedicated processors of imaging device 111 and / or data capture device 101 can transmit the image and / or image data to prediction controller 121.

[0045] In an embodiment where the imaging device 111 continuously captures images over a period of time, the imaging device 111 may simultaneously decode images and / or image data, transmit images, image data, and / or decoded tag data (e.g., transmit 24 image frames per second, transmit the image stream immediately after it is captured, etc.).

[0046] The prediction controller 121 may include one or more processors 122, one or more memories 124, one or more input / output (I / O) ports 125, and / or one or more network adapters 128. Any of these components of the prediction controller 121 may be communicatively coupled to each other via a dedicated communication bus.

[0047] One or more processors 122 may be one or more central processing units (CPUs), one or more coprocessors, one or more microprocessors, one or more graphics processing units (GPUs), one or more digital signal processors (DSPs), one or more application-specific integrated circuits (ASICs), one or more programmable logic devices (PLDs), one or more field-programmable gate arrays (FPGAs), one or more field-programmable logic devices (FPLDs), one or more microcontroller units (MCUs), one or more hardware accelerators, one or more application-specific computer chips, and one or more system-on-a-chip (SoC) devices.

[0048] One or more memories 124 may include any local short-term memory (e.g., random access memory (RAM), read-only memory (ROM), cache, etc.) and / or long-term memory (e.g., hard disk drive (HDD), solid-state drive (SSD), etc.). One or more memories 124 may also store machine-readable instructions, including any one or more applications and / or one or more software components, which may be implemented to facilitate or perform the features, functions, or other disclosures described herein, such as any methods, processes, elements, or limitations illustrated, depicted, or described in connection with the various flowcharts, diagrams, figures, and / or other disclosures herein.

[0049] As another example, the machine-readable instructions of the prediction controller 121 may include an object prediction application 126 configured to: (i) receive images and / or image data captured by the imaging device 111; (ii) identify one or more aspects of objects in the images and / or image data; and / or (iii) generate object candidate data corresponding to the objects from the identification. In some embodiments, the object candidate data includes classification, category, designation, or other determination results regarding the identity of the object (e.g., the object is designated as a banana). Additionally, in some embodiments, the object candidate data may include one or more Product Lookup (PLU) codes.

[0050] As yet another example, machine-readable instructions of the prediction controller 121 may instruct, guide, and / or cause the prediction controller 121 to convert the generated object candidate data into object identifier data. In these embodiments, the conversion may involve converting the PLU code of the object candidate data (assigned by the data capture device 101) into the PLU code of the POS log application 161 and / or the host device 151.

[0051] As a further example, machine-readable instructions of the prediction controller 121 may instruct, direct, and / or cause the prediction controller 121 to transmit object identifier data to the host device 151. In some embodiments, the prediction controller 121 may also transmit object identifier data to the host device 151. The machine-readable instructions of the prediction controller 121 may also instruct, direct, and / or cause the host device 121 to facilitate and / or perform the features, functions, or other disclosures described herein.

[0052] One or more processors 122 may include one or more registers capable of temporarily storing data, and one or more processors 122 may include additional storage capacity in the form of integrated memory slots. One or more processors 122 may interact with any of the above (e.g., registers, integrated memory slots, one or more memories 124, etc.) to obtain machine-readable instructions, for example, corresponding to the operations represented by the flowcharts of this disclosure.

[0053] One or more I / O ports 125 may be or include various different types of I / O units, I / O interfaces, and / or I / O circuitry, enabling one or more processors 122 of the prediction controller 121 to communicate with external devices (e.g., one or more I / O ports 115 of the imaging device 111 and / or one or more I / O ports 155 of the host device 151). In some embodiments, one or more I / O ports 125 of the prediction controller 121 may be directly connected to one or more I / O ports 115 of the imaging device 111 (e.g., via a communication bus, wired connection, wireless connection, etc. via dedicated coupling) to allow the prediction controller 121 to receive images and / or image data from the imaging device 111 and / or transmit object candidate data and / or object identifier data to the imaging device 111. Additionally or alternatively, in some embodiments, one or more I / O ports 125 of the prediction controller 121 may be directly connected to one or more I / O ports 155 of the host device 151 via, for example, a wired connection (such as a Universal Serial Bus (USB) or Ethernet connection), a wireless connection, etc., to allow the prediction controller 121 to transmit object identifier data to the host device 151.

[0054] One or more network adapters 128 may include one or more communication components configured to communicate (e.g., send and receive) data via one or more external / network ports of one or more communication networks. For example, one or more network adapters 128 may be or include wired network adapters, connectors, interfaces, etc. (e.g., Ethernet network connectors, Asynchronous Transfer Mode (ATM) network connectors, Digital Subscriber Line (DSL) modems, cable modems) and / or wireless network adapters, connectors, interfaces, etc. (e.g., Wi-Fi connectors, Bluetooth connectors, infrared connectors, cellular connectors, etc.), configured to communicate via one or more communication networks. Additionally or alternatively, in various aspects, one or more network adapters 128 may include or interact with one or more transceivers (e.g., WWAN, WLAN, and / or WPAN transceivers) that operate according to IEEE standards, 3GPP standards, or other standards and can be used to receive and transmit data via external / network ports connected to network 106.

[0055] In operation, in some embodiments, the prediction controller 121 may be configured to: (i) receive images and / or image data from the imaging device 111; (ii) provide the images and / or image data to the object prediction application 126 to generate object candidate data; (iii) convert the object candidate data into object identifier data; (iv) transmit the object candidate data and / or object identifier data to the imaging device 111; and / or (v) transmit the object identifier data to the host device 151.

[0056] For example, when an object has a marker visible in an image and / or image data, the prediction controller 121 may not be able to receive the image and / or image data from the imaging device 111 because the marker can be decoded to generate decoded marker data. The generated decoded marker data can be transmitted from the data capture device 101 (e.g., via one or more ports 115 of the imaging device 111) to the host device 151. As another example, when an object does not have a marker, the marker is not visible in the image and / or image data, and / or one or more dedicated processors of the data capture device 101 are unable to decode the marker in the image and / or image data, the prediction controller 121 may receive the image and / or image data from the imaging device 111, provide the image and / or image data to the object prediction application 126 to generate object candidate data (e.g., based on one or more identifying features of the object), and subsequently transmit the object candidate data to the imaging device 111 or the host device 151. In some embodiments, prediction controller 121 may be configured to convert object candidate data into object identifier data (e.g., when the system of data capture device 101 and host device 151 is configured to present only a certain number of object candidates to the host device 151 user).

[0057] The host device 151 may include one or more processors 152, one or more memories 154, one or more I / O ports 154, an interactive display 156, and / or one or more network adapters 158. Any of these components of the host device 151 may be communicatively coupled to each other via a dedicated communication bus.

[0058] One or more processors 152 may be one or more central processing units (CPUs), one or more coprocessors, one or more microprocessors, one or more graphics processing units (GPUs), one or more digital signal processors (DSPs), one or more application-specific integrated circuits (ASICs), one or more programmable logic devices (PLDs), one or more field-programmable gate arrays (FPGAs), one or more field-programmable logic devices (FPLDs), one or more microcontroller units (MCUs), one or more hardware accelerators, one or more application-specific computer chips, and one or more system-on-a-chip (SoC) devices.

[0059] One or more memories 154 may include any local short-term memory (e.g., random access memory (RAM), read-only memory (ROM), cache, etc.) and / or long-term memory (e.g., hard disk drive (HDD), solid-state drive (SSD), etc.). One or more memories 154 may also store machine-readable instructions, including any one or more applications and / or one or more software components, which may be implemented to facilitate or perform the features, functions, or other disclosures described herein, such as any methods, processes, elements, or limitations illustrated, depicted, or described in connection with the various flowcharts, diagrams, figures, and / or other disclosures herein.

[0060] As an example, machine-readable instructions from the host device can instruct, guide, and / or cause the host device 151 to receive images, image data, decoded tag data, and / or object identifier data from the data receiving device 101.

[0061] As another example, machine-readable instructions of host device 151 may instruct, direct, and / or cause host device 151 to execute one or more applications, such as a POS log application 161. In these examples, POS log application 161 may be initially displayed on an interactive display 156 of host device 151. POS log application 161 may be configured (e.g., via the interactive display 156 of host device 151) to receive, process, and / or display object identifier data.

[0062] One or more processors 152 may include one or more registers capable of temporarily storing data, and one or more processors 152 may include additional storage capacity in the form of integrated memory slots. One or more processors 152 may interact with any of the above (e.g., registers, integrated memory slots, one or more memories 154, etc.) to obtain machine-readable instructions, for example, corresponding to the operations represented by the flowcharts of this disclosure.

[0063] One or more I / O ports 155 may be or include various different types of I / O units, I / O interfaces, and / or I / O circuitry, enabling one or more processors 152 of host device 151 to communicate with external devices (e.g., one or more I / O ports 115 of imaging device 111 and / or one or more I / O ports 125 of host device 121). Specifically, one or more I / O ports 155 of host device 151 may be directly connected to one or more I / O ports 115 of imaging device 111 (e.g., via USB connection, wireless connection, etc.) to allow host device 151 to receive data from imaging device 111. Similarly, one or more I / O ports 155 of host device 151 may be directly connected to one or more I / O ports 125 of prediction controller 121 (e.g., via USB connection, Ethernet, wireless connection, etc.) to allow host device 151 to receive data from prediction controller 121.

[0064] The interactive display 156 of the host device can be any suitable display unit (e.g., a monitor, etc.) capable of outputting visual data to the user and / or capable of receiving user input alone (e.g., via a touchscreen) and / or in combination with one or more input devices (e.g., a mouse and / or a keyboard).

[0065] One or more network adapters 158 may include one or more communication components configured to communicate (e.g., send and receive) data via one or more external / network ports of one or more communication networks. For example, one or more network adapters 158 may be or include wired network adapters, connectors, interfaces, etc. (e.g., Ethernet network connectors, Asynchronous Transfer Mode (ATM) network connectors, Digital Subscriber Line (DSL) modems, cable modems) and / or wireless network adapters, connectors, interfaces, etc. (e.g., Wi-Fi connectors, Bluetooth connectors, infrared connectors, cellular connectors, etc.), configured to communicate via one or more communication networks. Additionally or alternatively, in various aspects, one or more network adapters 158 may include or interact with one or more transceivers (e.g., WWAN, WLAN, and / or WPAN transceivers) that operate according to IEEE standards, 3GPP standards, or other standards and can be used to receive and transmit data via external / network ports connected to network 106.

[0066] Machine learning and machine vision examples

[0067] This embodiment may involve machine vision, image recognition, object identification, and / or other image processing techniques and / or algorithms, collectively referred to herein as machine vision (MV). Specifically, images and / or image data may be input into one or more machine vision programs described herein, which are capable of recognizing, tracking, and / or identifying objects and / or specific features of objects in images and / or image data (e.g., the curvature of a banana, the color of an orange, the outline of an apple, etc.). Additionally, such machine vision programs may also analyze the images and / or image data themselves to determine image and / or image data quality, select one or more images from multiple images and / or image data, etc.

[0068] In some embodiments, machine vision techniques and / or algorithms may utilize image classification, image recognition, and / or image labeling techniques and / or algorithms (e.g., Quantitative Image Content Query (QBIC), optical character recognition, pattern and / or shape recognition, histogram of orientation gradients (HOG), and / or other object detection methods), 2D image scanning, 3D image scanning, etc. Similarly, machine vision techniques and / or algorithms may utilize focus measurement operators and / or accompanying algorithms (e.g., gradient-based operators, Laplacian-based operators, wavelet-based operators, statistical operators, discrete cosine transform-based operators, etc.) to determine the focus result of images and / or image data. Such operators and / or algorithms may be applied holistically to images and / or image data, or to a portion of images and / or image data. The resulting focus result may represent the quality of the images and / or image data. If the focus result (i.e., quality) of the images and / or image data is below a threshold, subsequent images and / or image data may be captured.

[0069] In some embodiments, machine vision techniques and / or algorithms may utilize machine learning (ML) techniques and / or algorithms. For example, processors and / or processing elements (e.g., one or more processors 112 of imaging device 111, one or more processors 122 of prediction controller 121, and / or one or more processors 152 of host device 151) may be trained, validated, and / or otherwise developed using supervised machine learning to determine one or more object candidate identifiers of objects within images and / or image data.

[0070] Furthermore, in some embodiments, the ML procedure may employ one or more artificial neural networks, which may be (multiple) convolutional neural networks (CNNs), (multiple) fully convolutional neural networks (FCNs), (multiple) deep learning neural networks, and / or a combination of learning modules or procedures that learn in two or more regions of interest. Machine learning may involve identifying and / or recognizing patterns in existing data in order to make predictions, estimates, and / or recommendations for subsequent data.

[0071] In supervised machine learning (ML), a processing element identifies patterns in existing data to predict and classify subsequently received data. Specifically, the processing element is trained to use training data including example inputs, which consist of features and associated labels. The training data is formatted such that features are interpreted or otherwise statistically associated with labels, causing the machine learning model to output a prediction or classification corresponding to the labels. Based on the training data, the processing element can generate a prediction function that maps the output to the inputs and can use this prediction function to generate outputs based on the data inputs. In this way, the applied ML procedures and / or techniques can determine and / or discover rules, relationships, and / or patterns between exemplary inputs and exemplary outputs. Exemplary inputs and exemplary outputs of the training data can include any of the data inputs or outputs described herein. In some embodiments, the processing element can be trained by providing it with a large sample of data having known characteristics. For example, as used herein, features can be characteristics of an object (e.g., color, shape, classification, etc.). Label data can include object designations (e.g., banana, orange, pork tenderloin, etc.). In such embodiments, the characteristics of objects can be used to train an ML model to classify, categorize, identify, and / or label objects.

[0072] Supervised ML may also include retraining, relearning, or otherwise updating the model with new or different information, which may include information received, ingested, generated, or otherwise used over time.

[0073] In some embodiments, the ML model can generate multiple outputs. In these embodiments, the ML model can generate a confidence score for each generated output, where the ML model is trained to assign values ​​to one or more features that classify the output into a specific category. For example, when a new image of an apple is shown to the ML model, the model can give a confidence score of 90 indicating the object in the image is an apple, 50 indicating the object is a tomato, 10 indicating the object is a cherry, etc. In some embodiments, the ML model can then select the output with the highest confidence score and make a single definitive result. In some embodiments, if two or more confidence scores are numerically too close (e.g., the difference between the confidence scores does not exceed a threshold), the ML model can not make a selection and present all generated outputs. For example, if the ML model generates a score of 90 indicating the object in the image is a lime and 85 indicating the object is a lemon, and a confidence value difference of 10 or greater is required for a definitive result, the ML model can present both outputs and their corresponding confidence values ​​to the user simultaneously.

[0074] Example implementation

[0075] Figure 2An example data capture system 200 for implementing the computing systems, devices, and / or methods described herein is illustrated. Specifically, the data capture system 200 may include a data capture device 201 (e.g., such as...). Figure 1 The data capture device 101 shown), product display area 281 and / or host device 251 (e.g., Figure 1 The host device 151 shown.

[0076] In the illustrated example, the data capture system 200 is part of a POS system arrangement, and the data capture device 201 is located within a workstation counter. Typically, the data capture device 201 includes an enclosed housing area (also referred to as an upper housing, upper housing area, upper housing portion, upper and / or tower portion) and a product display area 281 (also referred to as a lower housing, lower housing area, lower housing portion, lower and / or tray portion). The enclosed housing area is characterized by an optical transmission window disposed along its inner edge in a generally vertical plane, and a horizontally extending field of view through the window. The product display area 281 is characterized by an electronic weighing scale tray, which includes an optical transmission window disposed along its inner edge in a generally horizontal (also referred to as a transverse) plane, and a vertically extending field of view through the window. The electronic weighing scale tray is part of a weighing tray assembly, which typically includes a weighing tray and a scale (or weighing unit) configured to measure the weight of an object placed on the top surface of the weighing scale tray. Therefore, the top surface of the electronic weighing scale tray can be considered the top surface of the product display area 281, which faces the product scanning area above it.

[0077] In operation, the user typically slides an object across the product scanning area of ​​the data capture device 201 in a general direction relative to the window of the data capture device 201 (e.g., from right to left). The product scanning area can generally be considered as an area extending above the product display area 281 and / or in front of the window of the data capture device 201, where the data capture device 201 is operable to capture image data of sufficient quality to perform imaging-based operations, such as decoding barcodes appearing in the acquired image data. It should be understood that while an object can slide across the data capture device 201 in either direction, the object can be presented to the product scanning area by means other than sliding across the window(s). When an object enters any field of view of the data capture device 201, markings on the object can be captured and decoded, and the corresponding data can be transmitted to the communication-coupled host device 151.

[0078] Data capture device 201 may utilize various imaging and optical components (collectively referred to as imaging subsystems or imaging assemblies) to achieve a desired field of view (FOV) on which an image is captured and to transmit exported data to host device 151 (such as a decoder (i.e., decoder subsystem), processor, or ASIC, which may be located within data capture device 201) to decode the tags and further use the decoded payload data. For example, the imaging assembly may include image sensors (also referred to as imagers or imaging sensors), such as two-dimensional CCD or CMOS sensors, which may be, for example, monochrome or color sensors with 1.2 megapixels arranged in a 1200x960 pixel configuration. It should be understood that sensors with other pixel counts (both lower and higher) are within the scope of this disclosure. These two-dimensional sensors typically comprise mutually orthogonal rows and columns of photosensitive pixel elements arranged to form a substantially flat square or rectangular surface. Such imagers are operable to detect light captured by an imaging lens assembly along a corresponding optical path or optical axis that passes generally through a window of the reader. In instances using multiple imaging components, each corresponding imager paired with an imaging lens assembly is designed to work collaboratively, capturing light scattered, reflected, or emitted from the marker as pixel data at its respective FOV. In other instances, a single imaging sensor can generate a single FOV, which can be split, divided, and / or folded by a beam splitter and / or folding mirror to generate multiple FOVs. In such cases, data collected from different parts of the imaging sensor can be considered as acquired by, but individually, the imaging components / sensors.

[0079] Host device 251 may include computing components (such as desktop computers, laptop computers, self-service terminals, tablet computers, smart devices, etc.) with interactive displays. The computing components may work with transceivers, network adapters, Ethernet and / or one or more connectivity ports (e.g., scanner terminals, USB ports, etc.) to communicate with data capture device 201.

[0080] Graphical User Interface

[0081] Combination Figures 3A-3C Provide detailed information on the operation of the systems, devices, and methods described herein. Figures 3A-3C It describes what can be displayed on a POS device (e.g., such as Figure 1 The host device 151 and / or shown Figure 2 An exemplary graphical user interface (GUI) on the host device 251 shown. Specifically, Figures 3A-3C A POS log application according to various embodiments is shown (e.g., such as...). Figure 1 The example GUI for the POS log application (161) is shown. Figures 3A-3CThe GUI can be displayed on the POS device based on non-transitory computer-executable instructions included in one or more digital applications stored on the POS device.

[0082] Figure 3A A sample POS log GUI 300a is depicted, which allows the POS device to access data from a scanning device (e.g., such as...). Figure 1 The data capture device 101 shown and / or such as Figure 2 The data capture device 201 shown receives decoded tags and / or item lookup codes (e.g., object candidate data and / or object identifier data) and input from the user. In one embodiment, such as Figure 3A As shown, the POS log GUI 300a can be displayed in a dedicated POS log window 362a, and the POS log GUI 300a may include non-interactive text (e.g., "STOP & SHOP Supermarket," "Total," and the corresponding total value of the scanned items, etc.) and / or interactive elements 364a (e.g., interactive buttons with the text "Quick Search," interactive buttons with the text "Enter Item Number," interactive buttons with the text "Enter Phone Number / Forgot Membership Card," etc.). Figure 3A As shown, the POS log GUI 300a with additional GUI elements can also be interactive or non-interactive (for example, interactive element 364a shows an illustration and accompanying text on how to scan an object and put it into a shopping bag).

[0083] User interaction with the interactive element 364a can cause other GUI and / or parts of the GUI to be displayed (e.g., interacting with an interactive element button with the text "Quick Search" can cause the display of...). Figure 3B The POS log GUI 300b shown can allow users to input data (e.g., interacting with an interactive element button with the text "Quick Search" can cause an interactive text box to appear, allowing users to enter numbers corresponding to their mobile phone number), and / or can obtain different functions of the POS log GUI 300a (e.g., interacting with an interactive element button with the text "Spanish" can switch the language of the POS log GUI 300a from English to Spanish).

[0084] Figure 3B An example POS log GUI 300b is depicted, through which a POS device can receive input data from a user. In one embodiment, such as Figure 3BAs shown, the POS log GUI 300b can be displayed in a dedicated POS log window 362b, and the POS log GUI 300b may include non-interactive text (e.g., text such as "Please select item", "lb", and the corresponding weight value of an object placed on an electronic weighing scale in the product display area 281, etc.) and / or interactive elements 364b (e.g., interactive buttons with images of objects (such as apples) and the text "Honey Crisp Apples", interactive buttons with images of object categories and the text "Fruit", and interactive buttons with numeric text). Figure 3B As shown, the POS log GUI 300a may also include additional GUI elements that may be interactive or non-interactive (e.g., illustrations of the scanning device and POS device in the upper left corner of the POS log GUI 300b).

[0085] User interaction with the interactive element 364b can result in the display of one or more other GUIs and / or portions of the GUI (e.g., interaction with an interactive element button with the text "Back" (not shown) can display something like...). Figure 3A The Cashier Log GUI 300a shown can allow users to type in input data (e.g., interacting with an interactive element button with the text "Vegetables" can allow users to type in the number corresponding to the number being interacted with), and / or can obtain different functions of the Cashier Log GUI 300b (e.g., interacting with an interactive element button with the text "Vegetables" can display different groups of interactive element buttons with different objects).

[0086] In operation, the POS device can receive decoded tags and / or PLU codes from the scanning device. When the scanning device scans a tag on an object, it decodes the tag and transmits the decoded tag to the POS device. If the scanning device cannot locate, identify, and / or decode a tag associated with an object, it can utilize an object prediction application (e.g., object prediction application 126 described herein) to generate one or more PLU codes that can identify the object and / or provide possible candidates for the object. Additionally or alternatively, a user can manually enter data to identify an object (e.g., via user interaction with interactive input element 364b of the POS log GUI 300b). Once the decoded tag data, PLU codes, and / or user-input data are received, the POS log application can add a value corresponding to the identified object to the point-of-sale transaction.

[0087] Figure 3C An example POS log GUI 300c is depicted, through which a POS device can display one or more object identifiers generated from a scanning device to a user. In one embodiment, such as Figure 3CAs shown, the POS log GUI 300c can be displayed in a dedicated POS log window 362c, and selecting GUI 300c can include one or more interactive elements 364c (e.g., interactive buttons with different apple images and accompanying text). Figure 3C As shown, GUI 300a can also include additional GUI elements that may be interactive or non-interactive (e.g., illustrations of the scanning device and POS device in the upper left corner of the POS log GUI 300c).

[0088] The user and interactive input element 364c can select one or more object identifiers to identify objects scanned by the scanning device. In some embodiments, once one of the object candidates is selected, the cash register window 362c can display another window, a GUI, and / or a portion of the GUI (e.g., such as...). Figure 3A (See the POS log GUI 300a shown). Additionally or alternatively, in some embodiments, selecting one or more object identifiers may result in a confirmation prompt, allowing the user to confirm whether the selected item accurately identifies the object.

[0089] In operation, as described herein, in embodiments where it is impossible to locate, identify, and / or decode markings associated with objects placed on the product display area, a scanning device utilizing object prediction application 126 can generate one or more object candidates. The scanning device converts one or more object candidates into one or more object identifiers (e.g., by converting PLU codes into codes understandable by the POS device), which are then transmitted to the POS device via the scanner terminal. In some embodiments, a scan driver may be mounted on the POS device, managing the POS device's receiving capabilities via the scanner terminal. Once it is detected that one or more object identifiers have been received by the scanner terminal, the scan driver may subsequently pass one or more object identifiers to a POS log application 162 running on the POS device. In this way, the POS device receives readable PLU codes that can be read and / or processed (e.g., used to determine values ​​to be included in the transaction total) without requiring configuration of the POS log application 162 or the POS device.

[0090] Figures 3A-3C The GUI depicted is not limited to the exemplary embodiments described above. For example, although... Figures 3A-3C The GUI format shown is designed for electronic devices used in self-service terminals, but it can also be adapted to other devices (e.g., desktop / laptop computers, mobile phones, smart devices, tablets, etc.). Additionally, Figures 3A-3C The layout and / or elements of the GUI described herein may include more or less detail, different languages, alternative placement of elements, different orders, etc. Furthermore, the GUI layout and / or elements described herein... Figures 3A-3CThe GUI described herein is not exhaustive and should not be construed as having necessary or unnecessary functionality for the techniques, methods, and systems disclosed herein.

[0091] Methods and Operations

[0092] Figure 4 This is a block diagram of an example flowchart used for the example methods and / or operations 400 described herein. Methods and / or operations 400 can be implemented using the methods described herein. Figure 1 Any component, device, equipment and / or system described herein.

[0093] Method and / or operation 400 may begin at block 402, capturing images in one or more fields of view. The capture of image data may be performed via an imaging component (e.g., imaging device 111). The imaging component may be a part of a data capture device (e.g., data capture device 101 described herein), which may decode markers on objects in image data associated with the image, and which may transmit the decoded markers to a host device (e.g., host device 151 shown herein) via a scanner terminal of a host device.

[0094] In some embodiments, the imaging component may be communicatively connected to a prediction controller (e.g., prediction controller 121 as described herein) and / or a host device (e.g., via a scanner terminal). The prediction controller may be another component of the data capture device. In some embodiments, the imaging component and the prediction controller may be combined in a single housing. In these embodiments, the imaging component and the prediction controller may be communicatively coupled via a direct communication bus. Alternatively, in some embodiments, some components of the imaging component and the prediction controller may be the same (e.g., one or more processors 112 of the imaging device 111 and one or more processors 122 of the prediction controller 121), such that the combination of the imaging component and the prediction controller can be considered as a single device. Any of the above-described combinations of the imaging component and the prediction controller can be considered as a data capture device. In some embodiments, the data capture device may be connected to a host device via a scanner terminal.

[0095] In some embodiments, image data capture is continuous. In alternative embodiments, image data is captured in response to the imaging device 111 receiving a capture signal triggered by a sensor (e.g., a motion sensor, weight sensor, lidar) and / or by a manual trigger (e.g., via a mechanical trigger, button, switch, etc.) of the imaging device 111.

[0096] Method and / or operation 400 may proceed to block 404 by providing generated image data associated with the image to an object prediction application (e.g., object prediction application 126 described herein) deployed on one or more memories of the data capture device via one or more processors of the data capture device. This step may be performed in response to the data capture device being unable to locate, identify, and / or decode a decodable mark on an object. In embodiments where the data capture device identifies and / or decodes a mark on an object, the data capture device does not require the output of the object prediction application to identify the object (e.g., a barcode scan from an imaging component can identify the object).

[0097] Method and / or operation 400 may continue to block 406 by identifying one or more aspects of an object via an object prediction application. In some embodiments, the object prediction application may include one or more imaging processing algorithms, techniques, and / or models as described herein. Additionally or alternatively, the object prediction application may include one or more imaging processing algorithms, techniques, and / or models as described herein.

[0098] Method and / or operation 400 may continue to box 408 by generating object candidate data corresponding to objects from the identifiers via an object prediction application. The object prediction application is configured to generate object candidate data corresponding to one or more objects detected within the captured image. In some embodiments, the object candidate data may be one or more product lookup (PLU) codes (e.g., corresponding to objects that are not typically labeled, such as agricultural products, meat, etc.).

[0099] Method and / or operation 400 may proceed to block 410 by generating object identifier data for each object candidate in the object candidate data via a data capture device. In some embodiments, the object identifier data may be decoded tag data and / or a Product Lookup (PLU) code associated with and / or readable by a POS log application executed on host device 151. In some embodiments, the PLU code of the object candidate data is converted into a PLU code readable by the POS log application to generate the object identifier data.

[0100] Method and / or operation 400 may transmit one or more of (i) object candidate data or (ii) object identifier data to the host device via the data capture device through the scanner terminal of the host device, to proceed to box 412. The POS log application may then receive, process, and / or display the object identifier data (e.g., via a user interface).

[0101] Methods and / or operations 400 may have more or fewer or different steps and / or may be performed in a different order.

[0102] Other precautions

[0103] In some examples, at least one of the components represented by the boxes is implemented by logic circuitry. As used herein, the term "logic circuitry" is explicitly defined as a physical device comprising at least one hardware component configured (e.g., via operations based on a predetermined configuration and / or via the execution of stored machine-readable instructions) to control one or more machines and / or perform operations of one or more machines. Examples of logic circuitry may include one or more processors 102. Some example logic circuitry (such as ASICs or FPGAs) is specially configured hardware for performing operations (e.g., one or more of the operations described herein and represented by flowcharts of this disclosure, if present). Some example logic circuitry is hardware that executes machine-readable instructions to perform operations (e.g., one or more of the operations described herein and represented by flowcharts of this disclosure, if present). Some example logic circuitry includes a combination of specially configured hardware and hardware that executes machine-readable instructions. The foregoing description relates to the various operations described herein and flowcharts that may be appended herein to illustrate those operations. Any such flowcharts represent example methods disclosed herein. In some examples, the methods represented by flowcharts implement apparatus represented by block diagrams. Alternative implementations of the example methods disclosed herein may include additional or alternative operations. Furthermore, alternative implementations of the methods disclosed herein may be combined, partitioned, rearranged, or omitted. In some examples, the operations described herein are implemented by machine-readable instructions (e.g., software and / or firmware) stored on a medium (e.g., a tangible machine-readable medium) for execution by one or more logic circuits (e.g., one or more processors). In some examples, the operations described herein are implemented by one or more configurations of one or more specially designed logic circuits (e.g., one or more ASICs). In some examples, the operations described herein are implemented by a combination of one or more specially designed logic circuits and machine-readable instructions stored on a medium (e.g., a tangible machine-readable medium) for execution by one or more logic circuits.

[0104] As used herein, each of the terms “tangible machine-readable medium,” “non-transient machine-readable medium,” and “machine-readable storage device” is explicitly defined as a storage medium (e.g., a disk of a hard disk drive, digital multifunction disk, optical disk, flash memory, read-only memory, random access memory, etc.) on which machine-readable instructions are stored (e.g., program code in the form of software and / or firmware) for any suitable duration (e.g., permanently, for extended periods of time (e.g., while a program associated with the machine-readable instructions is being executed), and / or for short periods of time (e.g., while the machine-readable instructions are cached and / or during buffering)). Furthermore, as used herein, each of the terms “tangible machine-readable medium,” “non-transient machine-readable medium,” and “machine-readable storage device” is explicitly defined to exclude propagation signals. That is, as used in any claim of this patent, none of the terms “tangible machine-readable medium,” “non-transient machine-readable medium,” and “machine-readable storage device” should be construed as being implemented by propagation signals.

[0105] Specific embodiments have been described in the foregoing specification. However, those skilled in the art will understand that various modifications and changes can be made without departing from the scope of the invention as set forth in the appended claims. Therefore, the specification and drawings are to be considered illustrative rather than restrictive, and all such modifications are intended to be included within the scope of this teaching. Additionally, the described embodiments / examples / implementations should not be construed as mutually exclusive, but rather as potentially composable if such combinations are permitted in any way. In other words, any feature disclosed in any of the foregoing embodiments / examples / implementations may be included in any of the other foregoing embodiments / examples / implementations.

[0106] These benefits, advantages, solutions to problems, and any one or more elements that may make any benefit, advantage, or solution occur or become more prominent are not to be construed as key, essential, or necessary features or elements of any or all claims. The invention is defined solely by the appended claims, including any amendments made during the pending period of this application and all equivalents of these claims in the patent announcement.

[0107] Furthermore, in this document, relational terms such as first and second, top and bottom, etc., may be used individually to distinguish one entity or action from another entity or action, without necessarily requiring or implying any actual such relationship or order between such entities or actions. The terms “comprises,” “comprising,” “has,” “having,” “includes,” “including,” “contains,” “containing,” or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that includes, has, includes, or contains a list of elements includes not only those elements but may also include other elements not expressly listed or inherent to such process, method, article, or apparatus. Elements beginning with "comprises," "has," "includes," or "contains" do not exclude the presence of additional identical elements in the process, method, article, or apparatus that includes, has, includes, or contains that element, unless otherwise expressly stated herein. The term "a / an" is defined as one or more unless otherwise expressly stated herein. The terms "substantially," "essentially," "approximately," "about," or any other version of these terms are defined as being as close as understood by one of ordinary skill in the art, and in one non-limiting embodiment, these terms are defined as within 10%, in another within 5%, in yet another within 1%, and in yet another within 0.5%. The term "coupled" as used herein is defined as connected, although not necessarily directly connected or mechanically connected. A device or structure that is “configured” in a certain way is configured at least in that way, but may also be configured in ways not listed.

[0108] This abstract is provided to allow the reader to quickly determine the nature of the disclosure. This abstract is submitted with the understanding that it is not intended to interpret or limit the scope or meaning of the claims. Furthermore, in the above detailed description, it can be seen that various features are grouped together in various embodiments for the purpose of making the disclosure coherent. This method of disclosure should not be construed as reflecting an intention that the claimed embodiments require more features than expressly recited in the claims. Rather, as reflected in the appended claims, the inventive subject matter may lie in fewer than all the features of a single disclosed embodiment. Therefore, the appended claims are thus incorporated into the detailed description, wherein each claim represents itself as a separately claimed subject matter.

Claims

1. A data capture device, comprising: An imaging component configured to capture images over one or more fields of view; One or more processors, the one or more processors being connected to the imaging component; One or more memories, the one or more memories being communicatively coupled to the one or more processors; as well as Calculation instructions, stored in the one or more memories, which, when executed, cause the data capture device to: The imaging component captures images of objects in one or more fields of view. The data capture device decodes markers on objects in the image data, and the data capture device transmits the decoded marker data to the host device via the scanner terminal of the host device. In response to the inability to identify a decodable tag on the object, the generated image data associated with the image is provided to the object prediction application deployed on the one or more memories. The application identifies one or more aspects of the object via the object prediction method. The object prediction application generates object candidate data corresponding to the object from the identifier. The object prediction application is deployed on the one or more memories, and is configured to generate object candidate data corresponding to one or more objects detected within the captured image. For each object candidate in the object candidate data, generate object identifier data, and The scanner terminal of the host device transmits one or more of (i) the object candidate data or (ii) the object identifier data to the host device.

2. The data acquisition device of claim 1, further comprising an electronic weighing scale connected to the imaging component, and wherein the calculation instructions further cause the data acquisition device to: The electronic weighing scale detects weight changes in the display area, wherein the image is captured in response to the electronic weighing scale detecting the weight change, and the imaging component has a field of view of the display area.

3. The data capture device of claim 1, wherein the object prediction application is further configured to: Generate a confidence score for each object candidate in the object candidate data. Determine the amount by which the highest confidence score exceeds the second-highest confidence score by a threshold, and The determined object candidate data corresponding to the object candidate with the highest confidence score is generated, wherein object identifier data of the determined object candidate data is generated and the object identifier data of the determined object candidate data is transmitted to the host device.

4. The data capture device as claimed in claim 1, wherein: The combination of the one or more processors and the one or more memories is separately configured from the imaging component, and The imaging component is connected to the host device via the scanner terminal.

5. The data capture device as claimed in claim 1, wherein: The combination of the one or more processors and the one or more memories is separately configured from the imaging component, and The combination of the one or more processors and the one or more memories is communicatively connected to the host device via the scanner terminal.

6. The data capture device as claimed in claim 1, wherein: The imaging component is housed in the same housing as the one or more processors and the one or more memories, and The data capture device is connected to the host device via the scanner terminal.

7. A computer-readable method comprising: Images of objects in one or more fields of view are captured via an imaging component. The data capture device decodes the markers on objects in the image data, and the data capture device transmits the decoded marker data to the host device through the scanner terminal of the host device; In response to the data capture device being unable to identify a decodable tag on the object, the generated image data associated with the image is provided, via one or more processors of the data capture device, to an object prediction application deployed on one or more memories of the data capture device; The object is used to predict one or more aspects of the object that are identified by the application. The object prediction application generates object candidate data corresponding to the object from the identifier. The object prediction application is configured to generate object candidate data corresponding to one or more objects detected within the captured image; The data capture device generates object identifier data for each object candidate in the object candidate data; as well as One or more of the object candidate data or the object identifier data are transmitted to the host device via the scanner terminal of the host device through the data capture device.

8. The computer-readable method of claim 7, further comprising: Weight changes in the display area are detected via an electronic weighing scale connected to the imaging component, wherein the image is captured in response to the electronic weighing scale detecting the weight change, and the imaging component has a field of view of the display area.

9. The computer-readable method of claim 7, wherein the object prediction application is further configured to: Generate a confidence score for each object candidate in the object candidate data. Determine the amount by which the highest confidence score exceeds the second-highest confidence score by a threshold, and The determined object candidate data corresponding to the object candidate with the highest confidence score is generated, wherein an object identifier of the determined object candidate data is generated and the object identifier of the determined object candidate data is transmitted to the host device.

10. The computer-readable method of claim 7, wherein: The one or more memory communications are coupled to the one or more processors. The one or more processors are connected to the imaging component. The combination of the one or more processors and the one or more memories is separately configured from the imaging component, and The imaging component is connected to the host device via the scanner terminal.

11. The computer-readable method of claim 7, wherein: The one or more memory communications are coupled to the one or more processors. The one or more processors are connected to the imaging component. The combination of the one or more processors and the one or more memories is separately configured from the imaging component, and The combination of the one or more processors and the one or more memories is communicatively connected to the host device via the scanner terminal.

12. The computer-readable method of claim 7, wherein: The one or more memory communications are coupled to the one or more processors. The one or more processors are connected to the imaging component. The data acquisition device includes a combination of the one or more memories, the one or more processors, and the imaging component. The imaging component is housed in the same housing as the one or more processors and the one or more memories, and The data capture device is connected to the host device via the scanner terminal.

13. A tangible, non-transitory, computer-readable medium storing instructions, which, when executed by one or more processors of a data capture device, cause the data capture device to: The imaging component captures images of objects in one or more fields of view. The data capture device decodes markers on objects in the image data, and the data capture device transmits the decoded marker data to the host device via the scanner terminal of the host device; In response to the inability to identify a decodable tag on the object, the generated image data associated with the image is provided to an object prediction application deployed on the one or more memories; The object is used to predict one or more aspects of the object that are identified by the application. The object prediction application generates object candidate data corresponding to the object from the identifier. The object prediction application is deployed on the one or more memories, and the object prediction application is configured to generate object candidate data corresponding to one or more objects detected within the captured image; Generate object identifier data for each object candidate in the object candidate data; as well as The scanner terminal of the host device transmits one or more of (i) the object candidate data or (ii) the object identifier data to the host device.

14. The tangible non-transitory computer-readable medium of claim 13, wherein the stored instructions further cause the data capture device to: Weight changes in the display area are detected via an electronic weighing scale connected to the imaging component, wherein the image is captured in response to the electronic weighing scale detecting the weight change, and the imaging component has a field of view of the display area.

15. The tangible non-transitory computer-readable medium of claim 13, wherein the object prediction application is further configured to: Generate a confidence score for each object candidate in the object candidate data. Determine the amount by which the highest confidence score exceeds the second-highest confidence score by a threshold, and The determined object candidate data corresponding to the object candidate with the highest confidence score is generated, wherein an object identifier of the determined object candidate data is generated and the object identifier of the determined object candidate data is transmitted to the host device.

16. The tangible non-transitory computer-readable medium of claim 13, wherein: The one or more processors are connected to the imaging component. The combination of the one or more processors and the tangible non-transitory computer-readable medium is separately disposed from the imaging component, and The imaging component is connected to the host device via the scanner terminal.

17. The tangible non-transitory computer-readable medium of claim 13, wherein: The one or more processors are connected to the imaging component. The combination of the one or more processors and the tangible non-transitory computer-readable medium is separately disposed from the imaging component, and The combination of the one or more processors and the tangible non-transitory computer-readable medium is communicatively connected to the host device via the scanner terminal.

18. The tangible non-transitory computer-readable medium of claim 13, wherein: The one or more processors are connected to the imaging component. The data acquisition device includes a combination of the tangible non-transitory computer-readable medium, the one or more processors, and the imaging component. The imaging component is housed in the same housing as the one or more processors and the tangible non-transitory computer-readable medium, and The data capture device is connected to the host device via the scanner terminal.