Vision-based frictionless self-checkouts for small baskets

Information

  • Patent Grant
  • 11134798
  • Patent Number
    11,134,798
  • Date Filed
    Monday, June 29, 2020
    4 years ago
  • Date Issued
    Tuesday, October 5, 2021
    2 years ago
Abstract
A vison-based self-checkout terminal is provided. Purchased items are placed on a base and multiple cameras take multiple images of each item placed on the base. A location for each item placed on the base is determined along with a depth and the dimensions of each item at its given location on the base. Each item's images are then cropped, and item recognition is performed for each item on that item's cropped images with that item's corresponding depth and dimension attributes. An item identifier for each item is obtained along with a corresponding price and a transaction associated with items are completed.
Description
BACKGROUND

Currently, retailers and customers obtain a Universal Product Code (UPC) for an item during a checkout by scanning item barcodes placed on items. However, scanning a barcode is sometimes inconvenient and not every item is suitable for putting paper labels on.


Convenience stores usually have small baskets and checkouts involve store assistants available to assist shoppers to enter or scan item codes (UPC) at Point-Of-Sale (POS) terminals operated by the store assistants. Unfortunately, convenience stores lack the physical space to install Self-Service Terminals (SSTs), which would allow the shoppers to perform self-checkouts with their items.


As a result, convenience stores can become really busy with shoppers queued in one or two queues to checkout with store assistants. Some shoppers who are buying only a few items that are not really needed may elected to put the item down and exit the store without making a purchase. These situations can be problematic for small community-based convenience stores that rely on a large quantity of transactions having a small number of purchased items on average for each transaction.


SUMMARY

In various embodiments, a system, a method, and a terminal for vision-based frictionless self-checkouts for small baskets of items are presented.


According to an embodiment, a method for vison-based transaction processing is provided. Three images are obtained within a scan zone of a vision-based transaction terminal. An item location is determined for each item present within scan zone from the three images. Pixels associated with each item are cropped out from each of the three images creating three cropped images for each item present within the scan zone. Each item is categorized into an item category based on each item's three cropped images. Each item is recognized with a unique item identifier based on the corresponding item category and the corresponding item's three cropped images. Each item identifier is provided to a transaction manager of the vision-based transaction terminal to process a transaction at the vision-based transaction terminal.





BRIEF DESCRIPTION OF THE DRAWINGS


FIG. 1A is a diagram of a vison-based transaction terminal, according to an example embodiment.



FIG. 1B is a diagram of a side view of the vision-based transaction terminal, according to an example embodiment.



FIG. 1C is a diagram of a vision-based transaction terminal and a system for vision-based transaction processing, according to an example embodiment.



FIG. 2 is a diagram of a method for transaction processing by a vision-based transaction terminal, according to an example embodiment.





DETAILED DESCRIPTION


FIG. 1A is a diagram of a vision-based transaction terminal 100, according to an example embodiment.


The vision-based transaction terminal 100 comprises an elevated first center camera 101A, an elevated right camera 101B, an elevated left camera 101C, an optional elevated right speaker 102A, an optional elevated left speaker 102B, a center horizontal brace (bar) 103A, a right horizontal brace (bar) 104B, a left horizontal brace (bar) 103C, a center vertical brace (bar) 104A, a right vertical brace (bar) 104B, a left vertical brace (bar) 104C, and a horizontal base 105 (base 105 may optionally include an integrated weigh scale 105).


It is noted that other components of the vision-based transaction terminal 100 are discussed below with the FIGS. 1B and 1C.


The area comprised inside of bars 103A-103C and 104A-104C above base 105 represents a target zone for which cameras 101A-101C are focused for purposes of each three cameras 101A-101C to capture thee images for anything placed on base 105 within the target zone.


Right vertical bar 104B is attached to a right side of base 105 and extends vertically upward at an obtuse angle to the top horizontal surface of base 105. Similarly, left vertical bar 104C is attached to a left side of base 105 and extends vertically upward at the obtuse angle to the the top horizontal surface of base 105. Center bar 104A is attached to a rear side of base 105 and extends upward at an obtuse angle to the horizontal surface of the base 105 or at a substantially right angle to the horizontal surface of base 105.


Right horizontal bar 103B, center horizontal bar 103A, and left horizontal bar 103C form a U-shape, with a first outer end of right bar 103B attached to a top of right vertical bar 104B. Center horizontal bar 103A is attached to a top of center/back vertical bar 104A on an underside of center horizontal bar 103A. Left horizontal bar 103C is attached on the underside of left horizontal bar 103C to a top of left vertical bar 104C.


Moreover, right vertical bar 104B is angled forward and away from center horizontal bar 103A. Similarly, left vertical bar 104C is angled forward and away from center horizontal bar 103A. Each vertical bar 104A-104C includes a bend at the ends which attach to sides of base 105 before the remaining portions of bars 104A-104C are angled at the obtuse angles from a top surface of base 105.


In an embodiment, base 105 includes an integrated weight scale 105 to weight items requiring weights for item pricing.


Center camera 101A is integrated into or affixed to a substantial center of center horizontal bar 103A. Right camera 101B is integrated into or affixed to right horizontal bar 103B at the end affixed to right vertical bar 104B. Left camera 101C is integrated into or affixed to left horizontal bar 104C at the end affixed to left vertical bar 104C. Wiring and hardware associated with cameras 101A-101C are passed inside a housing of bars 103A-103C and 104A-104C. Power and a Universal Serial Bus (USB) port for vison-based terminal 100 is located on a bottom rear side of center vertical bar 104A. Similarly, wiring and hardware for an integrated weigh scale 105 is enclosed in a housing of base/scale 105.


When one or more items 120 are placed on the top surface of terminal 100, cameras 101A-101C capture images of the one or more items. Three images are taken and processed in the manners discussed herein and below for item recognition and for item processing during a transaction.



FIG. 1B is a diagram of a side view of the vision-based transaction terminal 100, according to an example embodiment.


In FIG. 1B terminal 100 includes a connected touch display 106. Touch display 106 can also server as the processing core for terminal 100. Touch display 106 may be a modified and enhanced version of existing network-based and voice-enabled Internet-Of-Things (IoTs) devices, such as Google Home®, Amazon Echo®, etc.


In an embodiment, touch display 106 is a modified or enhanced version of an existing tablet computer.


The entire terminal 100 with connected touch display and/or processing core 106 is compact enough to side on a countertop 130, such that terminal 100 occupies substantially less space than a conventional SST and is well suited for deployment in retail environments where physical space is at a premium, such as convenience stores.


In an embodiment, other peripheral devices, such as receipt printers, cash drawers, card readers, etc. may be interfaced to terminal 100 through the connected touch display and/or processing core 106. Such connections may be wireless and/or wired.


Terminal 100 may be operated in a self-service mode by customers with assistance or placed in an assistant mode of operation for which an assistant assist a customer with a checkout at terminal 100. In the self-service mode, the terminal 100 is an SST. In the assistant mode, the terminal is a POS terminal and may include an interfaced cash drawer.


The manager in which terminal 100 utilizes cameras 101A-101C and any integrated weigh scale 105 with the connected touch display and/or processing core 105 is now discussed with reference to FIG. 1C.



FIG. 1C is a diagram of a vision-based transaction terminal 100 and a system 150 for vision-based transaction processing, according to an example embodiment. It is to be noted that the components are shown schematically in greatly simplified form, with only those components relevant to understanding of the embodiments being illustrated.


Furthermore, the various components (that are identified in the FIG. 1) are illustrated and the arrangement of the components is presented for purposes of illustration only. It is to be noted that other arrangements with more or less components are possible without departing from the teachings of vision-based transaction processing, presented herein and below.


The system 150 comprises the vision-based transaction terminal 100 and a server 140. The vision-based transaction terminal 100 comprises three cameras 101A-101C, a right speaker 102A, a left speaker 1028, a touch display peripheral 106, a processor 107, and a non-transitory computer-readable storage medium 108 comprising executable instructions representing an image manager 109, an item recognizer 110, and a transaction manager 111. The server 140 comprises a processor 141 and a non-transitory computer-readable storage medium 141 comprising executable instructions representing a transaction manager 142.


In an embodiment and as was discussed above, processor 107 and non-transitory computer-readable storage medium 108 having image manager 108, item recognizer 110, and transaction manager 111 may physical reside within a housing associated with touch display 106 and connected to a communication port to a rear bottom portion of center vertical bar 104A.


When a weight is detected on base/scale 105 and/or when cameras 101A-101C detect one or more items within the target zone residing between vertical bars 104A-104C and on top of base/scale 105, cameras 101A-101C capture an image of the target zone. Each camera 101A-101C captures and provides its own independent and separate image of the target zone.


Assuming touch display 106 was not previously interacted with by a customer to start a transaction with transaction manager 111, the presence of one or more items in the target zone initiates a start of transaction with transaction manager 111.


The vision-based self checkout terminal 100 uses three cameras 101A-101C to process for depth information from multi-views of the one or more items within the target zone to solve occlusions of multiple items, which may have been placed in the target zone (may also be referred to herein as “scan zone”). Real-time object/item detection and classification models are processed by item recognizer 110 to recognize the items placed in the scan zone. An Application Programming Interface (API) consumes the image data provided by image manager 109, load recognition models obtained by image recognizer 110, and add item identifiers for the items within the scan zone are added to the customer's transaction (may also be referred to as a customer's cart”). The cart is updated and connected to other endpoints via a web socket to transaction manager 143 of server 140 for purposes of obtaining pricing details of the items and obtaining/confirming payment at terminal 100 for the transaction/cart.


Cameras 101A-101C capture two-dimensional (2D) Red-Green-Blue and depth-sensitive images of the scan zone to image manager 109. Image manager 109 transforms the images from different views into a common view. Item recognizer 110 performs real-time item detection and classification to recognize each item placed within the scan zone. A three-dimensional (3D) mapper maps pixels from the images to specific locations within the scan zone. Item recognizer 110 utilizes an API for multi-view matching to identify each unique item within a combination of items presented within the scan zone and a web socket-based update by transaction manager 111 permits cart updating with transaction manager 143.


Image manager 109 obtains the three images taken by cameras 101A-101C of the items within the scan zone. The location in the pixels of each image is then mapped to physical locations within the scan zone using depth-based image processing. The location is relative to the cameras 101A-101C and mapped to the corresponding item within the scan zone.


Image manager 109 then obtains three separate images for each item present within the scan zone and crops the pixels associated with each item in the three images based on the location determined for that item within the scan zone. At a result, each item present within the scan zone is associated with its own separate cropped image comprise those pixels associated with that specific item. Moreover, each of the three images for a single item are taken at different angles (because each camera 101A-101C is positioned to capture its images at a different angle from that which is associated with the remaining cameras 101A-101C).


The cropped 3 images for each item present for the items in the scan zone are then passed by image manager 109 to item recognizer 110. Item recognizer then utilizes item recognition models for purposes of classifying each item based on that item's three cropped images taken at the different angles and identifies each item providing a corresponding item identifier to transaction manager 111. In an embodiment, item recognizer 110 utilizes a trained machine learning algorithm by passing the cropped images for each item and item classifications to the algorithm and obtaining as output an item identifier for each item.


By using location information for known locations of items placed in the scan zone, three separate images for a single item can be obtained through cropping from the original three images taken by cameras 101A-101C. So, for 2 items there are three original images taken by the three cameras 101A-101C. Image manager 109 uses depth processing and known locations and for each lens of each camera 101A-101C to distinctly identify the unique pixels in each of the three original images for each of the 2 items and crops each item's pixels, such that each item is associated with three images and there are six total images (each image associated with its own three-cropped images. This substantially reduces the item recognition processing needed by item recognizer 110 and further makes item recognition more accurate for item recognizer 110.


Item recognizer 110 can then uses models, pixel features, edge detection, color attributes, dimensions, etc. to classify the three images for each item into item categories and perform item recognition on the item. An item identifier is then provided to transaction manager 111 and transaction manager 111 interacts with transaction manager 143 to obtain item details and item pricing allowing the cart/transaction to be updated and subsequently paid for by the customer at terminal 100.


It is noted that the terminal 100 is presented for illustration and the recited dimensions and configuration of components for terminal 100 provide one embodiment of terminal 100. More or less components arranged in other dimensions and configurations that utilize the 3 cameras 101A-101C for performing vision-based self-checkouts are intended to also fall within the scope of the teachings presented herein.


These embodiments and other embodiments are now discussed with reference to the FIG. 2.



FIG. 2 is a diagram of a method 200 for transaction processing by a vision-based transaction terminal, according to an example embodiment. The software module(s) that implements the method 200 is referred to as a “vison-based transaction manager.” The vison-based transaction manager is implemented as executable instructions programmed and residing within memory and/or a non-transitory computer-readable (processor-readable) storage medium and executed by one or more processors of a device. The processor(s) of the device that executes the vison-based transaction manager are specifically configured and programmed to process the vison-based transaction manager. The vison-based transaction manager has access to one or more network connections during its processing. The network connections can be wired, wireless, or a combination of wired and wireless.


In an embodiment, the vison-based transaction terminal 100 executes the vison-based transaction manager. In an embodiment, the terminal 110 is an SST operated by a customer during a transaction or a POS terminal operated by an attendant on behalf of a customer during a transaction.


In an embodiment, the vison-based transaction manager is all or some combination of image manager 109, item recognizer 110, and/or transaction manager 111.


At 210, the vison-based transaction manager obtains three images within a scan zone of a vision-based transaction terminal.


In an embodiment, at 211, the vison-based transaction manager obtains the three images from three separately situated cameras of the vision-based transaction terminal when one or more of the items are placed on a base of the vision-based transaction terminal.


At 220, the vison-based transaction manager determines an item location for each item present within scan zone from the three images.


In an embodiment, at 221, the vision-based transaction manager determines the item location for each item from the three images based on known locations and orientations of the three cameras.


At 230, the vison-based transaction manager crops out pixels associated with each item from each of the three images creating three cropped images for each item present within the scan zone.


At 240, the vison-based transaction manager categorizes each item into an item category based on each item's three cropped images.


In an embodiment, at 241, the vision-based transaction manager extracts dimensions, depth features, size features, line features, edge features, packaging features, and color features from each item's three cropped images.


In an embodiment of 241 and at 242, the vision-based transaction manager matches an item category model to the dimensions, the depth features, the size features, the line features, the edge features, the packaging features, and the color features for each item's three cropped images to obtain the corresponding item's item category.


At 250, the vison-based transaction manager recognizes each item with a unique item identifier based on the corresponding item category and the corresponding item's three cropped images.


In an embodiment, at 251, the vision-based transaction manager obtains each unique item identifier for each item from a trained machine learning algorithm.


In an embodiment, at 252, the vision-based transaction manager recognizes a single item as being present within the scan zone or recognizing more than one item as being present within the scan zone.


At 260, the vison-based transaction manager provides each item identifier to a transaction manager of the vision-based transaction terminal to process a transaction at the vision-based transaction terminal.


In an embodiment of 252 and 260, at 261, the vision-based transaction manager provides an item weight for the single item, wherein the item weight is received from an integrated scale of the vision-based transaction terminal.


In an embodiment, at 270, the vison-based transaction manager receives payment details for the transaction at the vision-based transaction terminal.


In an embodiment of 270 and at 271, the vison-based transaction manager provides the payment details to a payment service over a network connection to complete the transaction.


It should be appreciated that where software is described in a particular form (such as a component or module) this is merely to aid understanding and is not intended to limit how software that implements those functions may be architected or structured. For example, modules are illustrated as separate modules, but may be implemented as homogenous code, as individual components, some, but not all of these modules may be combined, or the functions may be implemented in software structured in any other convenient manner.


Furthermore, although the software modules are illustrated as executing on one piece of hardware, the software may be distributed over multiple processors or in any other convenient manner.


The above description is illustrative, and not restrictive. Many other embodiments will be apparent to those of skill in the art upon reviewing the above description. The scope of embodiments should therefore be determined with reference to the appended claims, along with the full scope of equivalents to which such claims are entitled.


In the foregoing description of the embodiments, various features are grouped together in a single embodiment for the purpose of streamlining the disclosure. This method of disclosure is not to be interpreted as reflecting that the claimed embodiments have more features than are expressly recited in each claim. Rather, as the following claims reflect, inventive subject matter lies in less than all features of a single disclosed embodiment. Thus, the following claims are hereby incorporated into the Description of the Embodiments, with each claim standing on its own as a separate exemplary embodiment.

Claims
  • 1. A method, comprising: obtaining three images within a scan zone of a vision-based transaction terminal;determining an item location for each item present within scan zone from the three images;cropping out pixels associated with each item from each of the three images creating three cropped images for each item present within the scan zone;categorizing each item into an item category based on each item's three cropped images;recognizing each item with a unique item identifier based on the corresponding item category and the corresponding item's three cropped images;providing each item identifier to a transaction manager of the vision-based transaction terminal to process a transaction at the vision-based transaction terminal;wherein the vision-based transaction terminal comprises: a scan area representing the scan zone;a touch display;a processor;a non-transitory computer-readable storage medium comprising executable instructions for the obtaining, the determining, the cropping, the categorizing, the recognizing, the providing, and the transaction manager;a base situated at the bottom of the scan area, wherein the base comprises an integrated weigh scale to record item weights for any single item present on the base within the scan area;three vertically situated bars attached to three sides of the base and extending upward from the base at an obtuse angle, wherein the three vertically situated bars comprise a right bar attached to a right side of the base, a left bar attached to a left side of the base, and a center bar attached to a rear-center side of the base;three horizontal bars forming a U-shape and attached to tops of the three vertically situated bars; andthree cameras are integrated or attached to the tops of the three vertically situated bars and focused downward onto the scan area to provide the three images.
  • 2. The method of claim 1 further comprising, receiving, by the transaction manager, payment details for the transaction at the vision-based transaction terminal.
  • 3. The method of claim 2 further comprising, providing, by the transaction manager, the payment details to a payment service over a network connection to complete the transaction.
  • 4. The method of claim 1, wherein obtaining further includes obtaining the three images from the three cameras of the vision-based transaction terminal when one or more of the items are placed on a base of the vision-based transaction terminal.
  • 5. The method of claim 1, wherein determining further includes determining the item location for each item from the three images based on known locations and orientations of the three cameras.
  • 6. The method of claim 1, wherein categorizing further includes extracting dimensions, depth features, size features, line features, edge features, packaging features, and color features from each item's three cropped images.
  • 7. The method of claim 6, wherein extracting further includes matching an item category model to the dimensions, the depth features, the size features, the line features, the edge features, the packaging features, and the color features for each item's three cropped images to obtain the corresponding item's item category.
  • 8. The method of claim 1, wherein recognizing further includes obtaining each unique item identifier for each item from a trained machine learning algorithm.
  • 9. The method of claim 1, wherein recognizing further includes recognizing a single item as being present within the scan zone or recognizing more than one item as being present within the scan zone.
  • 10. The method of claim 9, wherein providing further includes providing an item weight for the single item by the integrated weigh scale.
  • 11. A vision-based transaction terminal, comprising: a scan area;three cameras situated above the scan area;a touch display;a processor;a non-transitory computer-readable storage medium comprising executable instructions; andthe executable instructions when executed by the processor from the non-transitory computer-readable storage medium cause the processor to perform processing comprising; receiving three images of the scan area when one or more items are placed within the scan area;cropping the three images into a set of cropped images for each item that was present within the scan area;extracting specific item features from that item's set of cropped images;classifying each item present within the scan area bases on that item's cropped images and the corresponding specific item features;providing an item identifier for each item present within the scan area;obtaining item pricing and item details for each item present within the scan area based on the corresponding item identifier; andprocessing a transaction from the vision-based transaction terminal based on the item pricing and the item details;a base situated at the bottom of the scan area, wherein the base comprises an integrated weigh scale to record item weights for any single item present on the base within the scan area;three vertically situated bars attached to three sides of the base and extending upward from the base at an obtuse angle, wherein the three vertically situated bars comprise a right bar attached to a right side of the base, a left bar attached to a left side of the base, and a center bar attached to a rear-center side of the base;three horizontal bars forming a U-shape and attached to tops of the three vertically situated bars;wherein the three cameras are integrated or attached to the tops of the three vertically situated bars and focused downward onto the scan area.
  • 12. A system, comprising: a server; anda vision-based transaction terminal comprising a scan area, three overhead cameras situated above the scan area and on three sides of the scan area, an a touch display;wherein the vision-based transaction terminal is configured to use three images captured by the three overhead cameras to determine how many items are placed in the scan area, identify each of the items present within the scan area, provide item identifiers to the server for each of the items present within the scan area, obtain item details and item pricing from the server, display item details and item pricing on the touch display, and complete a payment for a transaction associated with each of the items present within the scan area based on input received from the touch display and interaction with the server;wherein the vision-based transaction terminal further comprising: a base situated at the bottom of the scan area, wherein the base comprises an integrated weigh scale to record item weights for any single item present on the base within the scan area;three vertically situated bars attached to three sides of the base and extending upward from the base at an obtuse angle, wherein the three vertically situated bars comprise a right bar attached to a right side of the base, a left bar attached to a left side of the base, and a center bar attached to a rear-center side of the base; andthree horizontal bars forming a U-shape and attached to tops of the three vertically situated bars;wherein the three overhead cameras are integrated or attached to the tops of the three vertically situated bars and focused downward onto the scan area.
US Referenced Citations (10)
Number Name Date Kind
7481360 Ramachandran Jan 2009 B1
20100166294 Marrion Jul 2010 A1
20100217678 Goncalves Aug 2010 A1
20100232681 Fujieda Sep 2010 A1
20140224554 Drzymala Aug 2014 A1
20180225646 Miyakoshi Aug 2018 A1
20180314877 Srivastava Nov 2018 A1
20190005343 Srivastava Jan 2019 A1
20190065823 Srivastava Feb 2019 A1
20210019725 Xiao Jan 2021 A1