US20200401792A1 - Automated vending machine with customer and identification authentication - Google Patents
Automated vending machine with customer and identification authentication Download PDFInfo
- Publication number
- US20200401792A1 US20200401792A1 US16/907,611 US202016907611A US2020401792A1 US 20200401792 A1 US20200401792 A1 US 20200401792A1 US 202016907611 A US202016907611 A US 202016907611A US 2020401792 A1 US2020401792 A1 US 2020401792A1
- Authority
- US
- United States
- Prior art keywords
- identification
- consumer
- determining
- authentic
- vending machine
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/08—Payment architectures
- G06Q20/18—Payment architectures involving self-service terminals [SST], vending machines, kiosks or multimedia terminals
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/10—Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
- G06V40/16—Human faces, e.g. facial parts, sketches or expressions
- G06V40/172—Classification, e.g. identification
- G06V40/173—Classification, e.g. identification face re-identification, e.g. recognising unknown faces across different face tracks
-
- G06K9/00295—
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B67—OPENING, CLOSING OR CLEANING BOTTLES, JARS OR SIMILAR CONTAINERS; LIQUID HANDLING
- B67D—DISPENSING, DELIVERING OR TRANSFERRING LIQUIDS, NOT OTHERWISE PROVIDED FOR
- B67D1/00—Apparatus or devices for dispensing beverages on draught
- B67D1/0015—Apparatus or devices for dispensing beverages on draught the beverage being prepared by mixing at least two liquid components
- B67D1/0021—Apparatus or devices for dispensing beverages on draught the beverage being prepared by mixing at least two liquid components the components being mixed at the time of dispensing, i.e. post-mix dispensers
- B67D1/0022—Apparatus or devices for dispensing beverages on draught the beverage being prepared by mixing at least two liquid components the components being mixed at the time of dispensing, i.e. post-mix dispensers the apparatus comprising means for automatically controlling the amount to be dispensed
-
- G06K9/00255—
-
- G06K9/00335—
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/40—Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
- G06Q20/401—Transaction verification
- G06Q20/4014—Identity check for transactions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/40—Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
- G06Q20/401—Transaction verification
- G06Q20/4014—Identity check for transactions
- G06Q20/40145—Biometric identity checks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/40—Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
- G06Q20/409—Device specific authentication in transaction processing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/10—Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
- G06V40/16—Human faces, e.g. facial parts, sketches or expressions
- G06V40/161—Detection; Localisation; Normalisation
- G06V40/166—Detection; Localisation; Normalisation using acquisition arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/10—Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
- G06V40/16—Human faces, e.g. facial parts, sketches or expressions
- G06V40/172—Classification, e.g. identification
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/20—Movements or behaviour, e.g. gesture recognition
-
- G—PHYSICS
- G07—CHECKING-DEVICES
- G07F—COIN-FREED OR LIKE APPARATUS
- G07F7/00—Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus
- G07F7/08—Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means
- G07F7/12—Card verification
-
- G—PHYSICS
- G07—CHECKING-DEVICES
- G07F—COIN-FREED OR LIKE APPARATUS
- G07F9/00—Details other than those peculiar to special kinds or types of apparatus
- G07F9/002—Vending machines being part of a centrally controlled network of vending machines
-
- G—PHYSICS
- G07—CHECKING-DEVICES
- G07F—COIN-FREED OR LIKE APPARATUS
- G07F9/00—Details other than those peculiar to special kinds or types of apparatus
- G07F9/02—Devices for alarm or indication, e.g. when empty; Advertising arrangements in coin-freed apparatus
- G07F9/026—Devices for alarm or indication, e.g. when empty; Advertising arrangements in coin-freed apparatus for alarm, monitoring and auditing in vending machines or means for indication, e.g. when empty
-
- G06K2009/00322—
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/10—Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
- G06V40/16—Human faces, e.g. facial parts, sketches or expressions
- G06V40/178—Human faces, e.g. facial parts, sketches or expressions estimating age from face image; using age information for improving recognition
Definitions
- Vending machines enable provisioning of goods and/or services to customers.
- goods and/or services requested by customers can be restricted.
- a customer may be required to be of a minimum age and/or have appropriate licensing, credentials, or other approval (e.g., prescription) to obtain particular goods and/or services.
- alcohol as a non-limiting example, a customer may be required to be at least 21 years of age to purchase and consume alcoholic beverages.
- tobacco Using tobacco as another non-limiting example, a customer may be required to be at least 18 years of age to purchase tobacco products.
- rental vehicles as still another non-limiting example, access to a rental vehicle can be limited to customers having a valid driver license and being of at least a certain age (e.g., 18 years old, 24 years old).
- vending machines provide numerous advantages, provisioning of restricted goods and/or services requires particular functionality in order to be fully-automated.
- the vending machine itself is required to authenticate documentation provided by the customer (e.g., license, identification, prescription) as well as the customer (e.g., verify that the customer requesting the goods/services matches the person associated with the documentation).
- documentation e.g., license, identification, prescription
- systems have been developed to perform such functionality, traditional systems can suffer from disadvantages.
- Example disadvantages is inconsistently discerning between authentic documentation and forged documentation, and not accurately determining that the customer requesting the goods/services matches the person associated with the documentation.
- Implementations of the present disclosure are generally directed to vending machines. More particularly, implementations of the present disclosure are directed to a vending machine that verifies characteristics (e.g., an age of a customer, an identity of a customer) before dispensing a product.
- characteristics e.g., an age of a customer, an identity of a customer
- actions include receiving consumer-specific data and ID-specific data from an identification presented by a consumer to a vending machine, processing at least a portion of the ID-specific data to determine one or more of whether the identification is unexpired and whether the identification is authentic, and serving the consumer from the vending machine at least partially in response to determining that the identification is unexpired and that the identification is authentic and determining that the consumer is authentic relative to the identification.
- Other implementations of this aspect include corresponding systems, apparatus, and computer programs, configured to perform the actions of the methods, encoded on computer storage devices.
- determining whether the identification is authentic includes comparing features of the identification to known features of a type of the identification; determining whether the identification is authentic includes providing an image of the identification to a machine learning (ML) model and receiving an indication from the ML model indicating whether the identification is authentic; determining whether the consumer is authentic relative to the identification includes providing image data and/or video data depicting the consumer and an image from the identification to a facial recognition system that processes the data to determine whether the consumer matches the image provided with the identification; actions further include determining a state of the consumer, serving the consumer being further in response to the state of the user; the state includes sober; actions further include determining that a person is physically present at the vending machine, serving the consumer being further in response to determining that a person is physically present at the vending machine; and determining that a person is physically present is at least partially based on a depth determined using one or more images generated by at least one camera of the vending machine.
- ML machine learning
- the present disclosure also provides a computer-readable storage medium coupled to one or more processors and having instructions stored thereon which, when executed by the one or more processors, cause the one or more processors to perform operations in accordance with implementations of the methods provided herein.
- the present disclosure further provides a system for implementing the methods provided herein.
- the system includes one or more processors, and a computer-readable storage medium coupled to the one or more processors having instructions stored thereon which, when executed by the one or more processors, cause the one or more processors to perform operations in accordance with implementations of the methods provided herein.
- FIGS. 1A and 1B depict a beverage vending machine in accordance with implementations of the present disclosure.
- FIGS. 2A and 2B depict example architectures in accordance with implementations of the present disclosure.
- FIG. 3 depicts an example conceptual diagram in accordance with implementations of the present disclosure.
- FIGS. 4A-4F depict example user interfaces in accordance with implementations of the present disclosure.
- FIG. 5 depicts an example process in accordance with implementations of the present disclosure.
- Implementations of the present disclosure are generally directed to vending machines. More particularly, implementations of the present disclosure are directed to a vending machine that verifies characteristics of a customer (e.g., an age of a customer, an identity of a customer) before dispensing a product. Implementations include actions of receiving consumer-specific data and ID-specific data from an identification presented by a consumer to a vending machine, processing at least a portion of the ID-specific data to determine one or more of whether the identification is unexpired and whether the identification is authentic, and serving the consumer from the vending machine at least partially in response to determining that the identification is unexpired and that the identification is authentic and determining that the consumer is authentic relative to the identification.
- characteristics of a customer e.g., an age of a customer, an identity of a customer
- Implementations include actions of receiving consumer-specific data and ID-specific data from an identification presented by a consumer to a vending machine, processing at least a portion of the ID-specific data to determine one or more of whether the
- the example vending machine includes a vending machine that dispenses restricted products (e.g., age restricted).
- the vending machine is a beverage vending machine that dispenses alcoholic beverages (e.g., beverages restricted to persons aged 21 and above).
- alcoholic beverages e.g., beverages restricted to persons aged 21 and above.
- vending machines in accordance with implementations of the present disclosure can be used to provision rental cars, cannabis, ammunition, medications, airline tickets, utility services, and the like to persons. Further, implementations of the present disclosure can be realized based on any appropriate restriction.
- implementations of the present disclosure are described herein with reference to age restriction.
- Other example restrictions can include, without limitation, licensing restriction (e.g., consumer must have and present valid license relevant to particular goods/services), and prescription (e.g., consumer must have and present a valid prescription from a licensed healthcare practitioner).
- FIGS. 1A and 1B depict a beverage vending machine 100 in accordance with implementations of the present disclosure.
- the vending machine 100 includes a housing 102 , an interface 104 , and a beverage dispenser 106 .
- the housing 102 houses devices, systems, and beverages that can be dispensed to consumers through the beverage dispenser.
- the housing 102 can house, without limitation, one or more computing devices, a refrigeration system, one or more beverage reservoirs (e.g., kegs, boxes, bottles), and a beverage dispensing system (e.g., lines, taps, pressure source).
- the interface 104 includes a display screen 108 and one or more cameras 110 .
- the display screen 108 displays one or more user interfaces (UIs) that enable a consumer to interact with the vending machine 100 .
- UIs user interfaces
- the display screen 108 is provided as a touchscreen that displays one or more UIs and that is responsive to user input (e.g., the consumer touching the display screen 108 ). In this manner, the consumer can provide touch input to the vending machine 100 through the display screen 108 to, among other things, make a selection, input information, and review beverage options.
- each of the one or more cameras 110 is a digital camera that generates digital images.
- a camera 110 can include, without limitation, a still camera, a video camera, an infra-red (IR) camera, or any appropriate camera.
- the single camera 110 includes combined capabilities (e.g., combined still, video, and IR camera).
- multiple cameras 110 are provided.
- a first camera 110 can include first capabilities (e.g., still, video), and a second camera 110 can include second capabilities (e.g., IR).
- data generated using multiple cameras can be used to provide stereoscopic imaging and/or video (e.g., multi-dimensional).
- the vending machine 100 can include one or more microphones for generating audio data.
- the interface 104 can include one or more microphones.
- at least one camera 110 of the one or more cameras 110 can include a microphone.
- the vending machine 100 includes an identification (ID) scanner 112 and a card reader 114 .
- the ID scanner 112 scans a form of identification (e.g., a residence card, a driver's license, a passport) that records consumer-specific information.
- a form of identification e.g., a residence card, a driver's license, a passport
- Example consumer-specific information can include, without limitation, one or more identification images (e.g., facial image, fingerprint image), name, address, date-of-birth (DOB), age, address, unique identifier (e.g., resident number, license number, passport number), and gender.
- the identification records the consumer-specific information in analog form (e.g., printed on the identification) and/or digital form (e.g., digitally recorded in memory on the identification).
- the ID scanner 112 scans the identification to determine at least a portion of the consumer-specific information.
- the ID scanner 112 can record an image of the identification and can process the image (e.g., using optical character recognition, and/or image recognition) to determine one or more of the identification image(s), the name, the address, the DOB, the age, the address, the unique identifier, and the gender recorded on the identification.
- the ID scanner 112 can read a memory of the identification to retrieve one or more of the identification image(s), the name, the address, the DOB, the age, the address, the unique identifier, and the gender recorded on the identification.
- the card reader 114 reads payment information to remit payment for a beverage that is to be served by the vending machine 100 .
- the card reader 114 is a traditional card reader that ingests a payment card (e.g., credit card, debit card, gift card) having payment information recorded thereon. Payment is facilitated as described in further detail herein.
- a card reader 114 is provided, it is contemplated that the vending machine 100 can use any appropriate payment technique.
- Example payment techniques include, without limitation, card payment (e.g., credit card, debit card, gift card), near-field communication (NFC) payment (e.g., touch-to-pay), and machine-readable code payment (e.g., bar code, QR code scanning).
- the vending machine 100 enables consumers to select a payment technique from a set of payment techniques.
- the card reader 114 is not included in the vending machine 100 (e.g., the vending machine 100 accepts only non-card payments (e.g., NFC payment, machine-readable code payment).
- the vending machine 100 enables use of government issued currency and/or currency representation (e.g., tokens, coupons) as payment options.
- the beverage dispenser 106 includes an opening 116 for receiving a vessel 118 .
- the opening 106 enables access to one or more taps that dispense a beverage into the vessel 118 .
- the vessel 118 is provided as a glass. It is contemplated, however, that any appropriate vessel can be used for receiving a dispensed beverage.
- FIG. 2A depicts an example architecture 200 in accordance with implementations of the present disclosure.
- the example architecture 200 includes a vending machine 202 (e.g., the vending machine 100 of FIGS. 1A and 1B ), a network 204 , an administrator system 206 , a payment processing system 208 , and a facial recognition system 210 .
- the network 204 is provided as a large computer network, such as a local area network (LAN), a wide area network (WAN), the Internet, a cellular network, a telephone network (e.g., PSTN) or an appropriate combination thereof connecting any number of vending machines 202 , communication devices, mobile computing devices, fixed computing devices and server systems.
- LAN local area network
- WAN wide area network
- PSTN public switched telephone network
- each of the administrator system 206 , the payment processing system 208 , and the facial recognition system 210 is hosted on one or more servers and are accessible by the vending machine 202 over the network 204 .
- the administrator system 206 is operated by or on behalf of the enterprise that operates the vending machine 202 .
- the enterprise 206 can remotely interact with the vending machine 202 through the administrator system 206 to perform one or more functionalities of a plurality of functionalities (e.g., update software, set configuration parameters, perform diagnostics, receive sales data, receive consumption data), as described in further detail herein.
- the payment processing system 208 is operated by a third-party payment processing service, as described in further detail herein.
- the facial recognition system 210 is operated by a third-party facial recognition service, as described in further detail herein.
- the vending machine 202 includes a computing device 220 , one or more cameras 222 (e.g., the cameras 110 of FIG. 1 ), a card reader 224 (e.g., the card reader 114 of FIG. 1 ), an ID scanner 226 (e.g., the ID scanner 112 of FIG. 1 ), a beverage dispensing system 228 , and in input/output (I/O) acquisition system 230 (e.g., LabJack T7).
- a computing device 220 e.g., one or more cameras 222 (e.g., the cameras 110 of FIG. 1 ), a card reader 224 (e.g., the card reader 114 of FIG. 1 ), an ID scanner 226 (e.g., the ID scanner 112 of FIG. 1 ), a beverage dispensing system 228 , and in input/output (I/O) acquisition system 230 (e.g., LabJack T7).
- I/O input/output
- the computing device 220 includes any appropriate type of computing device such as, and without limitation, a desktop computer, a laptop computer, a handheld computer, and a tablet computer.
- the computing device 220 can be provided as an industrial personal computer (PC) that executes an operating system (e.g., Windows 10 provided by Microsoft Corp.).
- the computing device 220 executes a kiosk application 240 , a payment application 242 , and a scanner service 244 .
- each of the kiosk application 240 , the payment application 242 , and the scanner service 244 is provided as one or more computer-executable programs executed by the computing device 220 .
- the computing device 220 is in communication (e.g., wired, wireless) with the one or more cameras 222 to receive image data and/or audio data (e.g., the kiosk application 240 ingests at least a portion of image data and/or audio data provided from the one or more cameras).
- image data and/or audio data e.g., the kiosk application 240 ingests at least a portion of image data and/or audio data provided from the one or more cameras.
- the computing device 220 is in communication (e.g., wired, wireless) with the beverage dispensing system 228 .
- the computing device 220 is in communication with the beverage dispensing system 228 through the I/O acquisition system 230 .
- the kiosk application 240 issues commands to and/or receives data from the beverage dispensing system 228 .
- the kiosk application 240 can issue commands to the beverage dispensing system 228 to dispense a particular beverage selected by a consumer.
- the kiosk application 240 can receive data from the beverage dispensing system 228 , the data indicating a status of the beverage dispensing system 228 and/or one or more beverages within the vending machine 202 .
- Example data can include, without limitation, beverage quantity, beverage temperature, hardware faults, software faults.
- the computing device 220 is in communication (e.g., wired, wireless) with each of the card reader 224 and the ID scanner.
- the card reader 224 reads payment information (e.g., from a credit/debit/gift card) and provides the payment information to the payment application.
- the payment application 242 provides at least a portion of the payment information to the payment processing system 208 , which processes the at least a portion of the payment information to provide a payment approval or payment denial decision (e.g., the payment submitted by the consumer has been approved/denied).
- the payment application 242 receives the payment decision from the payment processing system 208 and provides the payment decision to the kiosk application 240 , which determines whether to serve a beverage to the consumer at least partially based on the payment decision (e.g., if the payment is approved and the consumer is authenticated and is of the required age, serve the beverage; if the payment is approved, but the consumer is either not authenticated or is not of the required age, do not serve the beverage; if the payment is not approved, do not serve the beverage).
- the payment decision e.g., if the payment is approved and the consumer is authenticated and is of the required age, serve the beverage; if the payment is approved, but the consumer is either not authenticated or is not of the required age, do not serve the beverage; if the payment is not approved, do not serve the beverage.
- the ID scanner 226 scans an identification presented by a consumer to determine at least a portion of the consumer-specific information.
- the ID scanner 226 can record an image of the identification and can process the image (e.g., using optical character recognition, and/or image recognition) to determine one or more of the identification image(s), the name, the address, the DOB, the age, the address, the unique identifier, and the gender recorded on the identification.
- the ID scanner 226 can read a memory of the identification to retrieve one or more of the identification image(s), the name, the address, the DOB, the age, the address, the unique identifier, and the gender recorded on the identification.
- the ID scanner 226 reads a barcode (and/or QR code), magnetic strip, and takes full front and back images of the identification for OCR.
- the scanner service 244 validates the identification by cross-referencing the data and checking for security.
- the kiosk application 240 reads only the information necessary to check the results of the ID validation, validate the consumer's DOB, and first name for a personalized experience (e.g., display the user's name in the UI).
- no personally identifiable information (PII) is stored in the vending machine 202 .
- the only personal consumer information that is transmitted from the vending machine 202 is the image from the identification and the image, video, and/or audio that is captured by the vending machine 202 (e.g., sent to the facial recognition service 210 ). However, this data is not persisted at either the vending machine 202 or by the facial recognition service 210 .
- the kiosk application 240 receives data representative of a consumer requesting beverage service and determines whether to serve the consumer at least partially based on the data.
- the kiosk application 240 receives at least a portion of the consumer-specific data provided from the identification, as described herein.
- Example consumer-specific information can include, without limitation, image data (e.g., picture provide with the identification), gender, height, age, name, and address.
- the kiosk application 204 receives at least a portion of ID-specific data provided for the identification.
- Example ID-specific data can include, without limitation, one or more patterns, an expiration date, and one or more watermarks (e.g., visible, invisible, ultra-violet (UV)).
- the kiosk application 240 receives current consumer data representative of the consumer, who is present at the vending machine 202 and is requesting service.
- Example current consumer data can include, without limitation, image data, video data, and audio data (e.g., provided from the one or more cameras 222 ).
- the kiosk application 240 determines whether the identification is expired. In some examples, determining whether the identification is expired can be executed by processing at least a portion of the ID-specific data. For example, the kiosk application 240 can compare an expiration date of the identification to a current date to determine whether the identification has expired. If the identification is expired, no further processing is required, as it can be determined that the consumer cannot be served without an unexpired identification. If the identification is not expired, further processing can be performed to determine whether the consumer can be served.
- the kiosk application 240 determines whether the age indicated on the identification is of a legal age for consumption of the beverage. For example, the kiosk application 240 can compare the age indicated on the identification (e.g., by comparing a current date to the DOB provided on the identification) to a legal age (e.g., a statutorily-defined legal age for the particular location). If the age is not of the legal age, no further processing is required, as it can be determined that the consumer cannot be served. If the age is of the legal age, further processing can be performed to determine whether the consumer can be served.
- a legal age e.g., a statutorily-defined legal age for the particular location
- the kiosk application 240 determines whether the presented identification is authentic. That is, the kiosk application 240 determines whether the identification is real, a forgery, or damaged such that authenticity cannot be determined. If it is determined that the identification is not authentic, no further processing is required, as it can be determined that the consumer cannot be served without an authentic identification. If it is determined that the identification is authentic, further processing can be performed to determine whether the consumer can be served.
- the kiosk application 240 can process at least a portion of the ID-specific data to determine whether the identification is authentic.
- features of the presented identification can be compared to known features of the particular type of identification.
- Example features can include, without limitation, one or more patterns, one or more watermarks, one or more images, and locations of each on the identification.
- Example features can also include, without limitation, locations and/or format of text depicted on the identification.
- features of the presented identification can be compared to known features based on a set of rules, each rule defining whether a feature conforms to a respective known feature.
- multiple sets of rules can be provided, each rule corresponding to a respective type (e.g., residence card, driver's license, passport) and/or issuing authority (e.g., city, state, national government) of the identification.
- the identification is a driver's license from the State of Texas (e.g., text on the license can be processed using optical character recognition (OCR) to determine a type of identification and the issuing authority; an image of the identification can be processed through a machine learning (ML) model that is trained to classify identifications into types and/or issuing authorities based on images of the identifications; that is, the ML model outputs a type and an authority).
- OCR optical character recognition
- ML machine learning
- a set of rules corresponding to Texas driver's licenses can be used.
- the image of the identification can be processed through a ML model that is trained to classify identifications as authentic or as inauthentic.
- the ML model can be trained based on known, authentic identifications to be able to discern between inauthentic identifications and authentic identifications.
- the ML model outputs one or more classifications, each classification having a confidence score.
- the ML model can output a classification of authentic with a confidence score of 0.98.
- the confidence score represents a relative confidence in the accuracy of the classification.
- the confidence score can be compared to a threshold confidence score. If the confidence score exceeds the threshold confidence score, the classification is determined to be correct. If the confidence score does not exceed the threshold confidence score, the classification is determined to be incorrect. If the classification is determined to be correct, the identification is, in the example above, determined to be authentic. If the classification is determined to be incorrect, the identification is, in the example above, determined to be inauthentic.
- At least a portion of the current consumer data can be processed to determine whether the consumer, who presented the identification is authentic. That is, it is determined whether the consumer, who presented the identification is the person represented by the identification (e.g., to determine whether the consumer is using someone else's identification).
- current consumer data can include image data and/or video data depicting the consumer that is present at the vending machine 202 .
- the image data and/or the video data can be processed to determine whether the consumer matches the image provided with the identification.
- the image data and/or the video data, and the image from the identification can be provided to the facial recognition system 210 , which can process the data to determine whether the consumer matches the image provided with the identification. If the consumer does not match the image provided from the identification, it can be determined that the consumer is not authentic and cannot be served. If the consumer does match the image provided from the identification, it can be determined that the consumer is authentic and can be served.
- the facial recognition system 210 can employ one or more facial recognition models (e.g., ML models) that can compare images to determine whether faces depicted in the images match.
- the facial recognition system 210 receives the image from the identification and the image from the vending machine, each image depicting a face.
- the facial recognition system 210 processes the images to determine whether the faces are the same.
- a ML model can process the images and outputs one or more classifications, each classification having a confidence score.
- the ML model can output a classification of match with a confidence score of 0.98.
- the confidence score represents a relative confidence in the accuracy of the classification.
- the confidence score can be compared to a threshold confidence score.
- the classification is determined to be correct. If the confidence score does not exceed the threshold confidence score, the classification is determined to be incorrect. If the classification is determined to be correct, the faces depicted in the images, in the example above, are determined to match. If the classification is determined to be incorrect, the faces depicted in the images, in the example above, are determined to not match.
- the image data and/or the video data can be processed to determine demographic features of the consumer.
- Example demographic features can include, without limitation, age, gender, and height.
- the image data and/or the video data can be provided to a demographic feature system, which can process the data to determine demographic features of the consumer.
- the demographic features can be compared to respective demographic features of the consumer-specific information provided from the identification. In some examples, if at least a portion of the demographic features of the consumer do not match the respective demographic features of the consumer-specific information provided from the identification, and/or the consumer does not match the image provided from the identification, it can be determined that the consumer is not authentic and cannot be served.
- the demographic feature system can employ one or more demographic feature recognition models (e.g., ML models) that can analyze images to determine demographic features of a person depicted therein.
- the demographic feature system receives the image from the vending machine (an image generated by the vending machine) and processes the image to determine one or more demographic features.
- a ML model can process the image and outputs one or more classifications, each classification having a confidence score.
- the ML model can output a classification of an age with a confidence score of 0.98.
- the confidence score represents a relative confidence in the accuracy of the classification.
- the confidence score can be compared to a threshold confidence score.
- the classification is determined to be correct. If the confidence score does not exceed the threshold confidence score, the classification is determined to be incorrect. If the classification is determined to be correct, the demographic feature (e.g., age) determined from the image, in the example above, is determined to be correct. If the classification is determined to be incorrect, the demographic feature (e.g., age) determined from the image, in the example above, is determined to be incorrect.
- the demographic feature e.g., age
- one or more other conditions can be evaluated to determine whether the consumer is to be served.
- Example other conditions can include, without limitation, a service history for the consumer, a state of the user, venue constraints, and legal constraints.
- the service history for the consumer includes a history of beverages served to the user within a particular time period. For example, if the consumer has been served a threshold number of beverages (e.g., X beverages) within a threshold time period (e.g., Y minutes), it can be determined that the user is not to be served. In this manner, over-serving of the consumer can be avoided, and/or the consumer purchasing beverages for others can be mitigated.
- a threshold number of beverages e.g., X beverages
- a threshold time period e.g., Y minutes
- the service history is determined based on data provided from the vending machine 202 . That is, for each consumer, the vending machine 202 can record each transaction (e.g., each time the consumer purchases a beverage). In some examples, a transaction record is provided that includes a time, a date, a location (e.g., unique identifier of the vending machine 202 ), a beverage purchased, and the like. In some examples, a consumer record can be provided that includes a set of transaction records.
- the service history is determined at least partially based on data provided from other vending machines 202 .
- a set of vending machines 202 can be located within a facility (e.g., a stadium), and consumers can purchase beverages from multiple vending machines 202 .
- a consumer record includes transactions from any vending machine 202 within the facility.
- the consumer records can be stored on each of the vending machines 202 .
- the consumer records can be stored in a central repository that each vending machine 202 can access to determine whether a particular consumer is to be served.
- the service history is determined at least partially based on additional data representative of transactions.
- the additional data can represent transactions that occurred remotely from (or otherwise external to) the facility, at which the vending machine 202 is located.
- the computing device 220 can receive additional data indicating that the consumer purchased alcoholic one or more alcoholic beverages at a bar and/or restaurant prior to a currently requested purchase at the vending machine 202 .
- a state of the consumer can be determined and can be compared to one or more known states.
- the state of the consumer can represent a behavior of the consumer at the vending machine.
- image data and/or video data can be processed to determine one or more characteristics that are representative of a state of the consumer.
- Example characteristics can include, without limitation, bloodshot eyes, slurred speech, motion, and the like.
- the one or more characteristics can be determined for the consumer and can be used to provide a consumer profile.
- the consumer profile is evaluated to determine a state of the user.
- Example states can include, without limitation, sober, tipsy, drunk.
- service can be denied based on state. For example, if it is determined that the state of the consumer is drunk, service to the consumer can be declined.
- a state recognition system can employ one or more state recognition models (e.g., ML models) that can analyze images, video, and/or audio to determine a state of a person depicted therein.
- the state recognition system receives the images, video, and/or audio from the vending machine (as generated by the vending machine) and processes the images, video, and/or audio to determine one or more states.
- a ML model can process the image and outputs one or more classifications, each classification having a confidence score.
- the ML model can output a classification of a state—sober with a confidence score of 0.98.
- the confidence score represents a relative confidence in the accuracy of the classification.
- the confidence score can be compared to a threshold confidence score. If the confidence score exceeds the threshold confidence score, the classification is determined to be correct. If the confidence score does not exceed the threshold confidence score, the classification is determined to be incorrect. If the classification is determined to be correct, the state (e.g., sober) determined from the images, video, and/or audio, in the example above, is determined to be correct. If the classification is determined to be incorrect, the state (e.g., sober) determined from the images, video, and/or audio, in the example above, is determined to be incorrect.
- the state e.g., sober
- a number of times that the consumer has been served within a period of time can be used to determine a state of the user.
- a blood-alcohol content (BAC) value can be calculated based on the gender, weight (e.g., data available to us from their ID document scan) and the number and types of beverages served.
- the BAC value can be compared to a threshold BAC value. If the BAC value exceeds the threshold BAC value, service can be denied.
- one or more venue constraints, one or more legal constraints, and one or more schedule constraints can be evaluated to determine whether consumers are to be served.
- An example venue constraint can include, without limitation, a time period during which the venue is offering beverages for sale. In some examples, if a consumer requests a beverage outside of the time period, it can be determined that service of the beverage is to be declined.
- An example legal constraint can include, without limitation, a time period during which sale of beverages are legally prohibited. In some examples, if a consumer requests a beverage during the time period, it can be determined that service of the beverage is to be declined.
- An example schedule constraint can include, without limitation, a time period during which an event is occurring (e.g., a collegiate athletic event, a religious ceremony), and sales of beverages are legally and/or contractually prohibited.
- a time period during which an event is occurring e.g., a collegiate athletic event, a religious ceremony
- sales of beverages are legally and/or contractually prohibited.
- a consumer requests a beverage during the time period, it can be determined that service of the beverage is to be declined.
- FIG. 2B another example architecture 200 ′ is provided, in which verification of characteristics of a customer (e.g., an age of a customer, an identity of a customer) is performed at a first location, and retrieval of a good/service is performed at a second location.
- a point-of-verification device 260 is provided, which includes components of the vending machine 202 except for the beverage dispensing system 228 , and the I/O acquisition system 230 .
- one or more beverages dispensing systems 228 are provided as components of respective dispensing systems 262 .
- the point-of-verification device 260 is at a first location and executes verification of characteristics of a customer, as described herein. In some examples, payment can be made at the first location using the point-of-verification device 260 .
- the customer can retrieve from one of the dispensing systems 262 , each located at respective second locations.
- the point-of-verification device 260 informs the customer as to the specific dispensing system 262 that is to be used (e.g., Pick-up your beverage at Machine No. 456). This can occur when, for example, a particular good is only available at one or more particular dispensing systems 262 (e.g., Machine 123 dispenses lagers, Machine 456 dispenses stouts, Machine 789 dispenses wheat beers).
- the customer can select any dispensing system 262 of multiple dispensing systems 262 .
- the dispensing system 262 dispenses the good (e.g., beverage) in response to verifying the identity of the customer at the dispensing machine 262 .
- the dispensing machine 262 can include one or more cameras (not depicted) that capture an image of the customer.
- the image of the customer captured by the dispensing machine 262 can be compared to one or more images provided through the point-of-verification device 260 to confirm that the customer attempting to retrieve the good at the dispensing machine 262 had been verified at the point-of-verification device.
- the dispensing system 262 can provide the images that are to be compared to the facial recognition system 210 , which can employ one or more facial recognition models (e.g., ML models) that can compare images to determine whether faces depicted in the images match, as described herein.
- the facial recognition system 210 can employ one or more facial recognition models (e.g., ML models) that can compare images to determine whether faces depicted in the images match, as described herein.
- the point-of-verification device 260 in the case where the point-of-verification device 260 informs the customer as to the specific dispensing system 262 that is to be used, the point-of-verification device 260 can provide a transaction record including an image of the customer to the specific dispensing system 262 . In this manner, the identity of the customer can be verified for retrieval of the good at the dispensing system 262 based on the image provided in the transaction record and the image captured by the dispensing system 262 .
- the point-of-verification device 260 informs the customer as to the specific dispensing system 262 that is to be used
- the image captured by the dispensing system 262 is provided to the point-of-verification device 260 , which provides a confirmation as to whether the good should be provided to the customer.
- the point-of-verification device 260 can determine (e.g., using the facial recognition system) whether the customer attempting to retrieve the good is the customer that was verified at the point-of-verification device 260 .
- the point-of-verification device 260 can provide a transaction record including an image of the customer to each of the dispensing systems 262 . In this manner, the identity of the customer can be verified for retrieval of the good at the dispensing system 262 based on the image provided in the transaction record and the image captured by the dispensing system 262 the customer chooses to use.
- the image captured by the dispensing system 262 is provided to the point-of-verification device 260 , which provides a confirmation as to whether the good should be provided to the customer.
- the point-of-verification device 260 can determine (e.g., using the facial recognition system) whether the customer attempting to retrieve the good is a customer that was verified at the point-of-verification device 260 .
- a good can be preemptively prepared for retrieval by a customer based on the customer's proximity to the retrieval location.
- the good can be prepared for retrieval in response to determining that the customer is proximate to a dispensing system 262 .
- images of faces of customers in line to retrieve goods from the dispensing system 262 can be captured and it can be determined that a customer has already been verified by the point-of-verification device 260 .
- the good e.g., beverage
- the good can be prepared (e.g., poured), such that, when the customer arrives at the dispensing system 262 , the good is available for immediate pick-up (e.g., the customer does not have to wait, or only has to wait a relatively short time to take the good).
- the dispensing system 262 can evaluate customers Y deep in a line (e.g., 3 customers deep in a line of customers) to continuously update a dispensing queue for the goods.
- the good for the particular customer is either already prepared for pick-up (e.g., the beverage is already poured), or preparation for pick-up is already underway (e.g., pouring of the beverage has already begun).
- a customer can place an order remotely before verification of characteristics of the customer.
- a customer can use a device (e.g., tablet, smartphone) that executes an application (e.g., mobile application (mobile app)) that enables the customer to place an order for a good that is to be retrieved.
- the customer is also able to pay for the order using the application.
- the customer can approach a vending machine 202 of FIG. 2A , or a point-of-verification system 260 of FIG. 2B for characteristic verification to be performed, as described herein.
- Example evidence can include, without limitation, a machine-readable code (e.g., a bar code, a QR code) that can be generated by the application of the device of the customer and displayed to a camera and/or scanner of the vending machine 202 , or the point-of-verification system 260 .
- the vending machine 202 , or the point-of-verification system 260 can decode the machine-readable code to determine the details of the order, and commence verification of the customer, as described herein.
- FIG. 3 depicts an example conceptual diagram 300 in accordance with implementations of the present disclosure.
- the example conceptual diagram 300 represents a so-called web of proof to determine whether a consumer is to be served.
- the example conceptual diagram 300 includes circles indicating devices and/or data (e.g., IR camera still camera, video camera (which can be individual or combined cameras), ID scanner, know-your-client (KYC) data (e.g., answers providing personally identifiable information (PII)), and sets of rules to be applied) on the vending machine (e.g., the vending machine 100 of FIG. 1 , the vending machine 202 of FIG. 2 A).
- the example conceptual diagram 300 includes ovals indicating data and/or sources of data that can be processed, as described herein.
- the example conceptual diagram 300 includes diamonds indicating one or more determinations that are to be made to ultimately determine whether a consumer is to be served.
- an example determination can be whether the consumer is actually present at the vending machine (diamond ⁇ There?). In some examples, this can be determined based on images and/or video from the still camera and the video camera, respectively (e.g., images depicting liveliness, such as movement of a consumer present at the vending machine). Another example determination can be whether the consumer as presented at the vending machine is real (diamond ⁇ Real?). In some examples, this can be determined based on one or more depths (including a projected matrix depth (PMD) and liveliness. In this manner, the vending machine cannot be spoofed by a consumer holding up a picture of another in front of the vending machine. In some examples, multiple depths are determined, and it is determined whether the depths correlate to one another (diamond ⁇ Corr'n (correlation)).
- PMD projected matrix depth
- each of devices and/or data can be used in accordance with implementations of the present disclosure.
- all can be used. For example, whether a consumer is to be served can be determined based on the identification being unexpired, the age indicated on the identification being of the legal age, and the consumer matching the identification.
- whether a consumer is to be served can be determined based on an observed consumer at the vending machine being real (e.g., not spoofed using an image of a person; liveliness), the identification being unexpired, the age indicated on the identification being of the legal age, and the consumer matching the identification.
- whether a consumer is to be served can be determined based on a state of the consumer at the vending machine (e.g., sober, drunk), the identification being unexpired, the age indicated on the identification being of the legal age, and the consumer matching the identification.
- whether a consumer is to be served can be determined based on any venue constraints, the identification being unexpired, the age indicated on the identification being of the legal age, and the consumer matching the identification.
- whether a consumer is to be served can be determined based on authenticity of the identification, the identification being unexpired, the age indicated on the identification being of the legal age, and the consumer matching the identification. In general, any appropriate combination of the above criteria for determining whether a consumer is to be served can be used.
- FIGS. 4A-4F depict example user interfaces (UIs) in accordance with implementations of the present disclosure.
- the example UIs can be displayed in the display screen 108 of the vending machine 100 .
- FIG. 4A depicts an example UI 400 depicting instructions for a consumer to insert an identification.
- the example UI 400 includes a partial image of the vending machine (e.g., the vending machine 100 of FIG. 1 ), which enables the consumer to orient themselves with respect to the vending machine.
- the example UI 400 also includes an arrow pointing to the ID scanner that is to be used to scan the identification. In this manner, the consumer is aware of which device to use to scan the identification.
- FIG. 1 depicts example user interfaces
- the example UI 402 depicts an example UI 402 depicting instructions for a consumer to have a photo (e.g., digital image) taken.
- the example UI 402 includes an image of the vending machine (e.g., the vending machine 100 of FIG. 1 ), which enables the consumer to orient themselves with respect to the vending machine.
- the example UI 402 also includes an arrow pointing to the camera that is to be used to capture the photo.
- the UI 400 is displayed before the UI 402 .
- the UI 402 is displayed before the UI 400 .
- one or more initial UIs are displayed prior to display of either the UI 400 or the UI 402 .
- an introduction UI and/or beverages selection UIs can be displayed prior to display of either the UI 400 or the UI 402 .
- FIG. 4C depicts an example UI 404 that provides a wait icon.
- the UI 404 functions as a wait screen, while it is being determined whether the consumer is to be served.
- FIG. 4D depicts an example UI 406 that provides a result.
- the UI 406 informs the user that their identification has been accepted and the beverage will be served.
- the UI 406 is temporarily displayed and automatically changes to one or more UIs instructing on the service process (e.g., when and where to insert vessel).
- FIG. 4E depicts an example UI 408 to inform the consumer that they cannot be served.
- the UI 408 reflects a denial of service based on either an invalid identification or an age that is not of the legal age.
- FIG. 4F depicts an example UI 410 to inform the consumer that they cannot be served.
- the UI 410 reflects a denial of service based on the consumer not matching the identification (e.g., a determination that the consumer is not authentic).
- one or more UIs can present personalized menus based on one or more of demographics of the customer and preferences of the customer. For example, and as described above, a demographic of the customer can be determined. In some examples, a menu displayed to the customer can be tailored based on the demographic. For example, for a first demographic a first set of products is displayed, and, for a second demographic, a second set of products is displayed. In some examples, for the first demographic, the first set of products and the second set of products are both displayed, but the first set of products is displayed more prominently than the second set of products (e.g., toward the top of the UI with larger graphical representations). In some examples, for the second demographic, the first set of products and the second set of products are both displayed, but the second set of products is displayed more prominently than the first set of products (e.g., toward the top of the UI with larger graphical representations).
- the service history for a particular customer can be provided, as described herein, a menu displayed to the customer can be tailored based on the service history. For example, frequencies of purchases of respective goods can be determined, and more frequently purchased goods can be displayed more prominently than less frequently purchased goods. In some examples, if a frequency of purchase of a good is below a threshold frequency, the good is not initially displayed to the customer. For example, if the customer frequently purchases lagers, less frequently purchases stouts, and has never purchased a wheat beer, available lagers can be displayed more prominently in the UI than available stouts, and available wheat beers are not initially displayed.
- FIG. 5 depicts an example process 500 that can be executed in implementations of the present disclosure.
- the example process 500 is provided using one or more computer-executable programs executed by one or more computing devices.
- Data is received ( 502 ).
- data representative of the consumer who is present at the vending machine and is requesting service can be received from the one or more cameras.
- consumer-specific information and ID-specific information can be received from an identification (e.g., scanned by an ID scanner). It is determined whether the identification is expired ( 504 ). For example, an expiration data provided on the identification is compared to a current date. If the identification is expired, an error is displayed ( 506 ). For example, the error can indicate that the identification is expired, and the consumer will not be served.
- age provided by the identification is of legal age ( 508 ). For example, the DOB provided on the identification is compared to a current data. If the age provided by the identification is not of legal age, an error is displayed ( 506 ). For example, the error can indicate that the consumer is not of legal age for service. If the age provided by the identification is of legal age, it is determined whether the identification is authentic ( 510 ). If the identification is not authentic, an error is displayed ( 506 ). For example, the error can indicate that the identification is not acceptable, and the consumer will not be served.
- the identification is authentic, it is determined whether the consumer is authentic ( 512 ). If the consumer is not authentic, an error is displayed ( 506 ). For example, the error can indicate that the consumer does not match the identification, and the consumer will not be served. If the consumer is authentic, it is determined whether any other condition is present that would prohibit service of the beverage ( 514 ). For example, any schedule constraints, any venue constraints, and/or any legal constraints can be evaluated to determine whether any other condition is present that would prohibit service of the beverage. If another condition is present that would prohibit service of the beverage, an error is displayed ( 506 ).
- the error can indicate the reason that service is declined (e.g., “There is currently a collegiate sporting event taking place at the stadium, during which we are unable to serve alcohol.” or “It is Sunday morning, and we are unable to serve alcohol until 12 Noon.”).
- the reason that service is declined e.g., “There is currently a collegiate sporting event taking place at the stadium, during which we are unable to serve alcohol.” or “It is Sunday morning, and we are unable to serve alcohol until 12 Noon.”.
- payment information is processed ( 516 ). It is determined whether the payment is approved ( 518 ). If the payment is not approved, an error is displayed ( 506 ). If the payment is approved, the beverage serving system is activated to serve the beverage ( 520 ).
- any appropriate sub-set of determinations of the example process 500 can be executed (e.g., whether a consumer is to be served can be determined based on the identification being unexpired, the age indicated on the identification being of the legal age, and the consumer matching the identification).
- Implementations and all of the functional operations described in this specification may be realized in digital electronic circuitry, or in computer software, firmware, or hardware, including the structures disclosed in this specification and their structural equivalents, or in combinations of one or more of them. Implementations may be realized as one or more computer program products, i.e., one or more modules of computer program instructions encoded on a computer readable medium for execution by, or to control the operation of, data processing apparatus.
- the computer readable medium may be a machine-readable storage device, a machine-readable storage substrate, a memory device, a composition of matter effecting a machine-readable propagated signal, or a combination of one or more of them.
- the term “computing system” encompasses all apparatus, devices, and machines for processing data, including by way of example a programmable processor, a computer, or multiple processors or computers.
- the apparatus may include, in addition to hardware, code that creates an execution environment for the computer program in question (e.g., code that constitutes processor firmware, a protocol stack, a database management system, an operating system, or any appropriate combination of one or more thereof).
- a propagated signal is an artificially generated signal (e.g., a machine-generated electrical, optical, or electromagnetic signal) that is generated to encode information for transmission to suitable receiver apparatus.
- a computer program (also known as a program, software, software application, script, or code) may be written in any appropriate form of programming language, including compiled or interpreted languages, and it may be deployed in any appropriate form, including as a stand alone program or as a module, component, subroutine, or other unit suitable for use in a computing environment.
- a computer program does not necessarily correspond to a file in a file system.
- a program may be stored in a portion of a file that holds other programs or data (e.g., one or more scripts stored in a markup language document), in a single file dedicated to the program in question, or in multiple coordinated files (e.g., files that store one or more modules, sub programs, or portions of code).
- a computer program may be deployed to be executed on one computer or on multiple computers that are located at one site or distributed across multiple sites and interconnected by a communication network.
- the processes and logic flows described in this specification may be performed by one or more programmable processors executing one or more computer programs to perform functions by operating on input data and generating output.
- the processes and logic flows may also be performed by, and apparatus may also be implemented as, special purpose logic circuitry (e.g., an FPGA (field programmable gate array) or an ASIC (application specific integrated circuit)).
- special purpose logic circuitry e.g., an FPGA (field programmable gate array) or an ASIC (application specific integrated circuit)
- processors suitable for the execution of a computer program include, by way of example, both general and special purpose microprocessors, and any one or more processors of any appropriate kind of digital computer.
- a processor will receive instructions and data from a read only memory or a random access memory or both.
- Elements of a computer can include a processor for performing instructions and one or more memory devices for storing instructions and data.
- a computer will also include, or be operatively coupled to receive data from or transfer data to, or both, one or more mass storage devices for storing data (e.g., magnetic, magneto optical disks, or optical disks).
- mass storage devices for storing data (e.g., magnetic, magneto optical disks, or optical disks).
- a computer need not have such devices.
- a computer may be embedded in another device (e.g., a mobile telephone, a personal digital assistant (PDA), a mobile audio player, a Global Positioning System (GPS) receiver).
- Computer readable media suitable for storing computer program instructions and data include all forms of non-volatile memory, media and memory devices, including by way of example semiconductor memory devices (e.g., EPROM, EEPROM, and flash memory devices); magnetic disks (e.g., internal hard disks or removable disks); magneto optical disks; and CD ROM and DVD-ROM disks.
- semiconductor memory devices e.g., EPROM, EEPROM, and flash memory devices
- magnetic disks e.g., internal hard disks or removable disks
- magneto optical disks e.g., CD ROM and DVD-ROM disks.
- the processor and the memory may be supplemented by, or incorporated in, special purpose logic circuitry.
- implementations may be realized on a computer having a display device (e.g., a CRT (cathode ray tube), LCD (liquid crystal display) monitor) for displaying information to the user and a keyboard and a pointing device (e.g., a mouse, a trackball, a touch-pad), by which the user may provide input to the computer.
- a display device e.g., a CRT (cathode ray tube), LCD (liquid crystal display) monitor
- a keyboard and a pointing device e.g., a mouse, a trackball, a touch-pad
- Other kinds of devices may be used to provide for interaction with a user as well; for example, feedback provided to the user may be any appropriate form of sensory feedback (e.g., visual feedback, auditory feedback, tactile feedback); and input from the user may be received in any appropriate form, including acoustic, speech, or tactile input.
- Implementations may be realized in a computing system that includes a back end component (e.g., as a data server), a middleware component (e.g., an application server), and/or a front end component (e.g., a client computer having a graphical user interface or a Web browser, through which a user may interact with an implementation), or any appropriate combination of one or more such back end, middleware, or front end components.
- the components of the system may be interconnected by any appropriate form or medium of digital data communication (e.g., a communication network). Examples of communication networks include a local area network (“LAN”) and a wide area network (“WAN”), e.g., the Internet.
- LAN local area network
- WAN wide area network
- the computing system may include clients and servers.
- a client and server are generally remote from each other and typically interact through a communication network.
- the relationship of client and server arises by virtue of computer programs running on the respective computers and having a client-server relationship to each other.
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Business, Economics & Management (AREA)
- Theoretical Computer Science (AREA)
- Accounting & Taxation (AREA)
- General Health & Medical Sciences (AREA)
- Human Computer Interaction (AREA)
- Health & Medical Sciences (AREA)
- Multimedia (AREA)
- Strategic Management (AREA)
- Finance (AREA)
- General Business, Economics & Management (AREA)
- Oral & Maxillofacial Surgery (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Artificial Intelligence (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Medical Informatics (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- Social Psychology (AREA)
- Psychiatry (AREA)
- Control Of Vending Devices And Auxiliary Devices For Vending Devices (AREA)
Abstract
Description
- This application is a continuation U.S. Ser. No. 16/785,872, filed on Feb. 10, 2020, and entitled AUTOMATED VENDING MACHINE WITH CUSTOMER AND IDENTIFICATION AUTHENTICATION, which claims the benefit of and priority to U.S. 62/865,420, filed on Jun. 24, 2019, and entitled AUTOMATED VENDING MACHINE WITH CUSTOMER AND IDENTIFICATION AUTHENTICATION, the disclosure of which are expressly incorporated herein by reference in their entirety.
- Vending machines enable provisioning of goods and/or services to customers. In some instances, goods and/or services requested by customers can be restricted. For example, a customer may be required to be of a minimum age and/or have appropriate licensing, credentials, or other approval (e.g., prescription) to obtain particular goods and/or services. Using alcohol as a non-limiting example, a customer may be required to be at least 21 years of age to purchase and consume alcoholic beverages. Using tobacco as another non-limiting example, a customer may be required to be at least 18 years of age to purchase tobacco products. Using rental vehicles as still another non-limiting example, access to a rental vehicle can be limited to customers having a valid driver license and being of at least a certain age (e.g., 18 years old, 24 years old).
- While vending machines provide numerous advantages, provisioning of restricted goods and/or services requires particular functionality in order to be fully-automated. For example, the vending machine itself is required to authenticate documentation provided by the customer (e.g., license, identification, prescription) as well as the customer (e.g., verify that the customer requesting the goods/services matches the person associated with the documentation). Although systems have been developed to perform such functionality, traditional systems can suffer from disadvantages. Example disadvantages is inconsistently discerning between authentic documentation and forged documentation, and not accurately determining that the customer requesting the goods/services matches the person associated with the documentation.
- Implementations of the present disclosure are generally directed to vending machines. More particularly, implementations of the present disclosure are directed to a vending machine that verifies characteristics (e.g., an age of a customer, an identity of a customer) before dispensing a product.
- In some implementations, actions include receiving consumer-specific data and ID-specific data from an identification presented by a consumer to a vending machine, processing at least a portion of the ID-specific data to determine one or more of whether the identification is unexpired and whether the identification is authentic, and serving the consumer from the vending machine at least partially in response to determining that the identification is unexpired and that the identification is authentic and determining that the consumer is authentic relative to the identification. Other implementations of this aspect include corresponding systems, apparatus, and computer programs, configured to perform the actions of the methods, encoded on computer storage devices.
- These and other implementations can each optionally include one or more of the following features: determining whether the identification is authentic includes comparing features of the identification to known features of a type of the identification; determining whether the identification is authentic includes providing an image of the identification to a machine learning (ML) model and receiving an indication from the ML model indicating whether the identification is authentic; determining whether the consumer is authentic relative to the identification includes providing image data and/or video data depicting the consumer and an image from the identification to a facial recognition system that processes the data to determine whether the consumer matches the image provided with the identification; actions further include determining a state of the consumer, serving the consumer being further in response to the state of the user; the state includes sober; actions further include determining that a person is physically present at the vending machine, serving the consumer being further in response to determining that a person is physically present at the vending machine; and determining that a person is physically present is at least partially based on a depth determined using one or more images generated by at least one camera of the vending machine.
- The present disclosure also provides a computer-readable storage medium coupled to one or more processors and having instructions stored thereon which, when executed by the one or more processors, cause the one or more processors to perform operations in accordance with implementations of the methods provided herein.
- The present disclosure further provides a system for implementing the methods provided herein. The system includes one or more processors, and a computer-readable storage medium coupled to the one or more processors having instructions stored thereon which, when executed by the one or more processors, cause the one or more processors to perform operations in accordance with implementations of the methods provided herein.
- It is appreciated that methods in accordance with the present disclosure can include any combination of the aspects and features described herein. That is, methods in accordance with the present disclosure are not limited to the combinations of aspects and features specifically described herein, but also include any combination of the aspects and features provided.
- The details of one or more implementations of the present disclosure are set forth in the accompanying drawings and the description below. Other features and advantages of the present disclosure will be apparent from the description and drawings, and from the claims.
-
FIGS. 1A and 1B depict a beverage vending machine in accordance with implementations of the present disclosure. -
FIGS. 2A and 2B depict example architectures in accordance with implementations of the present disclosure. -
FIG. 3 depicts an example conceptual diagram in accordance with implementations of the present disclosure. -
FIGS. 4A-4F depict example user interfaces in accordance with implementations of the present disclosure. -
FIG. 5 depicts an example process in accordance with implementations of the present disclosure. - Like reference numbers and designations in the various drawings indicate like elements.
- Implementations of the present disclosure are generally directed to vending machines. More particularly, implementations of the present disclosure are directed to a vending machine that verifies characteristics of a customer (e.g., an age of a customer, an identity of a customer) before dispensing a product. Implementations include actions of receiving consumer-specific data and ID-specific data from an identification presented by a consumer to a vending machine, processing at least a portion of the ID-specific data to determine one or more of whether the identification is unexpired and whether the identification is authentic, and serving the consumer from the vending machine at least partially in response to determining that the identification is unexpired and that the identification is authentic and determining that the consumer is authentic relative to the identification.
- Implementations of the present disclosure are described in further detail herein with reference to an example vending machine. The example vending machine includes a vending machine that dispenses restricted products (e.g., age restricted). In the example described herein, the vending machine is a beverage vending machine that dispenses alcoholic beverages (e.g., beverages restricted to persons aged 21 and above). It is contemplated, however, that implementations of the present disclosure can be realized with any appropriate vending machines that dispense restricted goods and/or services. For example, and without limitation, vending machines in accordance with implementations of the present disclosure can be used to provision rental cars, cannabis, ammunition, medications, airline tickets, utility services, and the like to persons. Further, implementations of the present disclosure can be realized based on any appropriate restriction. For example, implementations of the present disclosure are described herein with reference to age restriction. Other example restrictions can include, without limitation, licensing restriction (e.g., consumer must have and present valid license relevant to particular goods/services), and prescription (e.g., consumer must have and present a valid prescription from a licensed healthcare practitioner).
-
FIGS. 1A and 1B depict abeverage vending machine 100 in accordance with implementations of the present disclosure. Thevending machine 100 includes ahousing 102, aninterface 104, and abeverage dispenser 106. As described in further detail herein, thehousing 102 houses devices, systems, and beverages that can be dispensed to consumers through the beverage dispenser. For example, thehousing 102 can house, without limitation, one or more computing devices, a refrigeration system, one or more beverage reservoirs (e.g., kegs, boxes, bottles), and a beverage dispensing system (e.g., lines, taps, pressure source). - In the example of
FIGS. 1A and 1B , theinterface 104 includes adisplay screen 108 and one ormore cameras 110. In some implementations, thedisplay screen 108 displays one or more user interfaces (UIs) that enable a consumer to interact with thevending machine 100. In some examples, thedisplay screen 108 is provided as a touchscreen that displays one or more UIs and that is responsive to user input (e.g., the consumer touching the display screen 108). In this manner, the consumer can provide touch input to thevending machine 100 through thedisplay screen 108 to, among other things, make a selection, input information, and review beverage options. In some examples, each of the one ormore cameras 110 is a digital camera that generates digital images. Althoughmultiple cameras 110 are depicted in the example ofFIGS. 1A and 1B , implementations of thevending machine 100 can be realized with asingle camera 110. In some examples, acamera 110 can include, without limitation, a still camera, a video camera, an infra-red (IR) camera, or any appropriate camera. In some examples, thesingle camera 110 includes combined capabilities (e.g., combined still, video, and IR camera). In some examples,multiple cameras 110 are provided. For example, afirst camera 110 can include first capabilities (e.g., still, video), and asecond camera 110 can include second capabilities (e.g., IR). In some examples, data generated using multiple cameras can be used to provide stereoscopic imaging and/or video (e.g., multi-dimensional). - Although not depicted in
FIGS. 1A and 1B , thevending machine 100 can include one or more microphones for generating audio data. In some examples, theinterface 104 can include one or more microphones. For example, at least onecamera 110 of the one ormore cameras 110 can include a microphone. - In the example of
FIGS. 1A and 1B , thevending machine 100 includes an identification (ID)scanner 112 and acard reader 114. In some examples, theID scanner 112 scans a form of identification (e.g., a residence card, a driver's license, a passport) that records consumer-specific information. Example consumer-specific information can include, without limitation, one or more identification images (e.g., facial image, fingerprint image), name, address, date-of-birth (DOB), age, address, unique identifier (e.g., resident number, license number, passport number), and gender. In some examples, the identification records the consumer-specific information in analog form (e.g., printed on the identification) and/or digital form (e.g., digitally recorded in memory on the identification). In some examples, theID scanner 112 scans the identification to determine at least a portion of the consumer-specific information. For example, theID scanner 112 can record an image of the identification and can process the image (e.g., using optical character recognition, and/or image recognition) to determine one or more of the identification image(s), the name, the address, the DOB, the age, the address, the unique identifier, and the gender recorded on the identification. As another example, theID scanner 112 can read a memory of the identification to retrieve one or more of the identification image(s), the name, the address, the DOB, the age, the address, the unique identifier, and the gender recorded on the identification. - In some examples, the
card reader 114 reads payment information to remit payment for a beverage that is to be served by thevending machine 100. In some examples, thecard reader 114 is a traditional card reader that ingests a payment card (e.g., credit card, debit card, gift card) having payment information recorded thereon. Payment is facilitated as described in further detail herein. Although acard reader 114 is provided, it is contemplated that thevending machine 100 can use any appropriate payment technique. Example payment techniques include, without limitation, card payment (e.g., credit card, debit card, gift card), near-field communication (NFC) payment (e.g., touch-to-pay), and machine-readable code payment (e.g., bar code, QR code scanning). In some examples, thevending machine 100 enables consumers to select a payment technique from a set of payment techniques. In some examples, thecard reader 114 is not included in the vending machine 100 (e.g., thevending machine 100 accepts only non-card payments (e.g., NFC payment, machine-readable code payment). In some examples, thevending machine 100 enables use of government issued currency and/or currency representation (e.g., tokens, coupons) as payment options. - In the example of
FIGS. 1A and 1B , thebeverage dispenser 106 includes anopening 116 for receiving avessel 118. In some examples, theopening 106 enables access to one or more taps that dispense a beverage into thevessel 118. In the depicted example, thevessel 118 is provided as a glass. It is contemplated, however, that any appropriate vessel can be used for receiving a dispensed beverage. -
FIG. 2A depicts anexample architecture 200 in accordance with implementations of the present disclosure. Theexample architecture 200 includes a vending machine 202 (e.g., thevending machine 100 ofFIGS. 1A and 1B ), anetwork 204, anadministrator system 206, apayment processing system 208, and afacial recognition system 210. In some examples, thenetwork 204 is provided as a large computer network, such as a local area network (LAN), a wide area network (WAN), the Internet, a cellular network, a telephone network (e.g., PSTN) or an appropriate combination thereof connecting any number ofvending machines 202, communication devices, mobile computing devices, fixed computing devices and server systems. - In some examples, each of the
administrator system 206, thepayment processing system 208, and thefacial recognition system 210 is hosted on one or more servers and are accessible by thevending machine 202 over thenetwork 204. In some examples, theadministrator system 206 is operated by or on behalf of the enterprise that operates thevending machine 202. For example, theenterprise 206 can remotely interact with thevending machine 202 through theadministrator system 206 to perform one or more functionalities of a plurality of functionalities (e.g., update software, set configuration parameters, perform diagnostics, receive sales data, receive consumption data), as described in further detail herein. In some examples, thepayment processing system 208 is operated by a third-party payment processing service, as described in further detail herein. In some examples, thefacial recognition system 210 is operated by a third-party facial recognition service, as described in further detail herein. - In the example of
FIG. 2A , thevending machine 202 includes acomputing device 220, one or more cameras 222 (e.g., thecameras 110 ofFIG. 1 ), a card reader 224 (e.g., thecard reader 114 ofFIG. 1 ), an ID scanner 226 (e.g., theID scanner 112 ofFIG. 1 ), abeverage dispensing system 228, and in input/output (I/O) acquisition system 230 (e.g., LabJack T7). - In some examples, the
computing device 220 includes any appropriate type of computing device such as, and without limitation, a desktop computer, a laptop computer, a handheld computer, and a tablet computer. For example, thecomputing device 220 can be provided as an industrial personal computer (PC) that executes an operating system (e.g., Windows 10 provided by Microsoft Corp.). Thecomputing device 220 executes akiosk application 240, apayment application 242, and ascanner service 244. In some examples, each of thekiosk application 240, thepayment application 242, and thescanner service 244 is provided as one or more computer-executable programs executed by thecomputing device 220. In some examples, thecomputing device 220 is in communication (e.g., wired, wireless) with the one ormore cameras 222 to receive image data and/or audio data (e.g., thekiosk application 240 ingests at least a portion of image data and/or audio data provided from the one or more cameras). - In some examples, the
computing device 220 is in communication (e.g., wired, wireless) with thebeverage dispensing system 228. In the depicted example, thecomputing device 220 is in communication with thebeverage dispensing system 228 through the I/O acquisition system 230. In some examples, thekiosk application 240 issues commands to and/or receives data from thebeverage dispensing system 228. For example, thekiosk application 240 can issue commands to thebeverage dispensing system 228 to dispense a particular beverage selected by a consumer. As another example, thekiosk application 240 can receive data from thebeverage dispensing system 228, the data indicating a status of thebeverage dispensing system 228 and/or one or more beverages within thevending machine 202. Example data can include, without limitation, beverage quantity, beverage temperature, hardware faults, software faults. - In some examples, the
computing device 220 is in communication (e.g., wired, wireless) with each of thecard reader 224 and the ID scanner. In some examples, thecard reader 224 reads payment information (e.g., from a credit/debit/gift card) and provides the payment information to the payment application. In some examples, thepayment application 242 provides at least a portion of the payment information to thepayment processing system 208, which processes the at least a portion of the payment information to provide a payment approval or payment denial decision (e.g., the payment submitted by the consumer has been approved/denied). In some examples, thepayment application 242 receives the payment decision from thepayment processing system 208 and provides the payment decision to thekiosk application 240, which determines whether to serve a beverage to the consumer at least partially based on the payment decision (e.g., if the payment is approved and the consumer is authenticated and is of the required age, serve the beverage; if the payment is approved, but the consumer is either not authenticated or is not of the required age, do not serve the beverage; if the payment is not approved, do not serve the beverage). - In some examples, the
ID scanner 226 scans an identification presented by a consumer to determine at least a portion of the consumer-specific information. For example, theID scanner 226 can record an image of the identification and can process the image (e.g., using optical character recognition, and/or image recognition) to determine one or more of the identification image(s), the name, the address, the DOB, the age, the address, the unique identifier, and the gender recorded on the identification. As another example, theID scanner 226 can read a memory of the identification to retrieve one or more of the identification image(s), the name, the address, the DOB, the age, the address, the unique identifier, and the gender recorded on the identification. - In some implementations, the
ID scanner 226 reads a barcode (and/or QR code), magnetic strip, and takes full front and back images of the identification for OCR. In some examples, thescanner service 244 validates the identification by cross-referencing the data and checking for security. In some implementations, thekiosk application 240 reads only the information necessary to check the results of the ID validation, validate the consumer's DOB, and first name for a personalized experience (e.g., display the user's name in the UI). In some examples, no personally identifiable information (PII) is stored in thevending machine 202. In some examples, the only personal consumer information that is transmitted from thevending machine 202 is the image from the identification and the image, video, and/or audio that is captured by the vending machine 202 (e.g., sent to the facial recognition service 210). However, this data is not persisted at either thevending machine 202 or by thefacial recognition service 210. - In some implementations, and as described in further detail herein, the
kiosk application 240 receives data representative of a consumer requesting beverage service and determines whether to serve the consumer at least partially based on the data. In some implementations, thekiosk application 240 receives at least a portion of the consumer-specific data provided from the identification, as described herein. Example consumer-specific information can include, without limitation, image data (e.g., picture provide with the identification), gender, height, age, name, and address. In some examples, thekiosk application 204 receives at least a portion of ID-specific data provided for the identification. Example ID-specific data can include, without limitation, one or more patterns, an expiration date, and one or more watermarks (e.g., visible, invisible, ultra-violet (UV)). In some examples, thekiosk application 240 receives current consumer data representative of the consumer, who is present at thevending machine 202 and is requesting service. Example current consumer data can include, without limitation, image data, video data, and audio data (e.g., provided from the one or more cameras 222). - In accordance with implementations of the present disclosure, the
kiosk application 240 determines whether the identification is expired. In some examples, determining whether the identification is expired can be executed by processing at least a portion of the ID-specific data. For example, thekiosk application 240 can compare an expiration date of the identification to a current date to determine whether the identification has expired. If the identification is expired, no further processing is required, as it can be determined that the consumer cannot be served without an unexpired identification. If the identification is not expired, further processing can be performed to determine whether the consumer can be served. - In some implementations, the
kiosk application 240 determines whether the age indicated on the identification is of a legal age for consumption of the beverage. For example, thekiosk application 240 can compare the age indicated on the identification (e.g., by comparing a current date to the DOB provided on the identification) to a legal age (e.g., a statutorily-defined legal age for the particular location). If the age is not of the legal age, no further processing is required, as it can be determined that the consumer cannot be served. If the age is of the legal age, further processing can be performed to determine whether the consumer can be served. - In some implementations, the
kiosk application 240 determines whether the presented identification is authentic. That is, thekiosk application 240 determines whether the identification is real, a forgery, or damaged such that authenticity cannot be determined. If it is determined that the identification is not authentic, no further processing is required, as it can be determined that the consumer cannot be served without an authentic identification. If it is determined that the identification is authentic, further processing can be performed to determine whether the consumer can be served. - In some examples, the
kiosk application 240 can process at least a portion of the ID-specific data to determine whether the identification is authentic. In some examples, features of the presented identification can be compared to known features of the particular type of identification. Example features can include, without limitation, one or more patterns, one or more watermarks, one or more images, and locations of each on the identification. Example features can also include, without limitation, locations and/or format of text depicted on the identification. - In some examples, features of the presented identification can be compared to known features based on a set of rules, each rule defining whether a feature conforms to a respective known feature. In some examples, multiple sets of rules can be provided, each rule corresponding to a respective type (e.g., residence card, driver's license, passport) and/or issuing authority (e.g., city, state, national government) of the identification. For example, it can be determined that the identification is a driver's license from the State of Texas (e.g., text on the license can be processed using optical character recognition (OCR) to determine a type of identification and the issuing authority; an image of the identification can be processed through a machine learning (ML) model that is trained to classify identifications into types and/or issuing authorities based on images of the identifications; that is, the ML model outputs a type and an authority). In response to determining that the identification is a driver's license from the State of Texas, a set of rules corresponding to Texas driver's licenses can be used.
- In some examples, the image of the identification can be processed through a ML model that is trained to classify identifications as authentic or as inauthentic. For example, the ML model can be trained based on known, authentic identifications to be able to discern between inauthentic identifications and authentic identifications. In some examples, the ML model outputs one or more classifications, each classification having a confidence score. For example, the ML model can output a classification of authentic with a confidence score of 0.98. The confidence score represents a relative confidence in the accuracy of the classification. In some examples, the confidence score can be compared to a threshold confidence score. If the confidence score exceeds the threshold confidence score, the classification is determined to be correct. If the confidence score does not exceed the threshold confidence score, the classification is determined to be incorrect. If the classification is determined to be correct, the identification is, in the example above, determined to be authentic. If the classification is determined to be incorrect, the identification is, in the example above, determined to be inauthentic.
- In some implementations, at least a portion of the current consumer data can be processed to determine whether the consumer, who presented the identification is authentic. That is, it is determined whether the consumer, who presented the identification is the person represented by the identification (e.g., to determine whether the consumer is using someone else's identification). For example, current consumer data can include image data and/or video data depicting the consumer that is present at the
vending machine 202. In some examples, the image data and/or the video data can be processed to determine whether the consumer matches the image provided with the identification. For example, the image data and/or the video data, and the image from the identification can be provided to thefacial recognition system 210, which can process the data to determine whether the consumer matches the image provided with the identification. If the consumer does not match the image provided from the identification, it can be determined that the consumer is not authentic and cannot be served. If the consumer does match the image provided from the identification, it can be determined that the consumer is authentic and can be served. - For example, the
facial recognition system 210 can employ one or more facial recognition models (e.g., ML models) that can compare images to determine whether faces depicted in the images match. In some examples, thefacial recognition system 210 receives the image from the identification and the image from the vending machine, each image depicting a face. Thefacial recognition system 210 processes the images to determine whether the faces are the same. For example, a ML model can process the images and outputs one or more classifications, each classification having a confidence score. For example, the ML model can output a classification of match with a confidence score of 0.98. The confidence score represents a relative confidence in the accuracy of the classification. In some examples, the confidence score can be compared to a threshold confidence score. If the confidence score exceeds the threshold confidence score, the classification is determined to be correct. If the confidence score does not exceed the threshold confidence score, the classification is determined to be incorrect. If the classification is determined to be correct, the faces depicted in the images, in the example above, are determined to match. If the classification is determined to be incorrect, the faces depicted in the images, in the example above, are determined to not match. - In some implementations, the image data and/or the video data can be processed to determine demographic features of the consumer. Example demographic features can include, without limitation, age, gender, and height. For example, the image data and/or the video data can be provided to a demographic feature system, which can process the data to determine demographic features of the consumer. In some examples, the demographic features can be compared to respective demographic features of the consumer-specific information provided from the identification. In some examples, if at least a portion of the demographic features of the consumer do not match the respective demographic features of the consumer-specific information provided from the identification, and/or the consumer does not match the image provided from the identification, it can be determined that the consumer is not authentic and cannot be served.
- For example, the demographic feature system (e.g., which can be a system also provided with the facial recognition system 210) can employ one or more demographic feature recognition models (e.g., ML models) that can analyze images to determine demographic features of a person depicted therein. In some examples, the demographic feature system receives the image from the vending machine (an image generated by the vending machine) and processes the image to determine one or more demographic features. For example, a ML model can process the image and outputs one or more classifications, each classification having a confidence score. For example, the ML model can output a classification of an age with a confidence score of 0.98. The confidence score represents a relative confidence in the accuracy of the classification. In some examples, the confidence score can be compared to a threshold confidence score. If the confidence score exceeds the threshold confidence score, the classification is determined to be correct. If the confidence score does not exceed the threshold confidence score, the classification is determined to be incorrect. If the classification is determined to be correct, the demographic feature (e.g., age) determined from the image, in the example above, is determined to be correct. If the classification is determined to be incorrect, the demographic feature (e.g., age) determined from the image, in the example above, is determined to be incorrect.
- In some implementations, one or more other conditions can be evaluated to determine whether the consumer is to be served. Example other conditions can include, without limitation, a service history for the consumer, a state of the user, venue constraints, and legal constraints.
- In some examples, the service history for the consumer includes a history of beverages served to the user within a particular time period. For example, if the consumer has been served a threshold number of beverages (e.g., X beverages) within a threshold time period (e.g., Y minutes), it can be determined that the user is not to be served. In this manner, over-serving of the consumer can be avoided, and/or the consumer purchasing beverages for others can be mitigated.
- In some implementations, the service history is determined based on data provided from the
vending machine 202. That is, for each consumer, thevending machine 202 can record each transaction (e.g., each time the consumer purchases a beverage). In some examples, a transaction record is provided that includes a time, a date, a location (e.g., unique identifier of the vending machine 202), a beverage purchased, and the like. In some examples, a consumer record can be provided that includes a set of transaction records. - In some implementations, the service history is determined at least partially based on data provided from
other vending machines 202. For example, a set ofvending machines 202 can be located within a facility (e.g., a stadium), and consumers can purchase beverages frommultiple vending machines 202. In some examples, a consumer record includes transactions from anyvending machine 202 within the facility. In some examples, the consumer records can be stored on each of thevending machines 202. In some examples, the consumer records can be stored in a central repository that eachvending machine 202 can access to determine whether a particular consumer is to be served. - In some implementations, the service history is determined at least partially based on additional data representative of transactions. In some examples, the additional data can represent transactions that occurred remotely from (or otherwise external to) the facility, at which the
vending machine 202 is located. For example, thecomputing device 220 can receive additional data indicating that the consumer purchased alcoholic one or more alcoholic beverages at a bar and/or restaurant prior to a currently requested purchase at thevending machine 202. - In some implementations, a state of the consumer can be determined and can be compared to one or more known states. In some examples, the state of the consumer can represent a behavior of the consumer at the vending machine. For example, image data and/or video data can be processed to determine one or more characteristics that are representative of a state of the consumer. Example characteristics can include, without limitation, bloodshot eyes, slurred speech, motion, and the like. In some examples, the one or more characteristics can be determined for the consumer and can be used to provide a consumer profile. In some examples, the consumer profile is evaluated to determine a state of the user. Example states can include, without limitation, sober, tipsy, drunk. In some examples, service can be denied based on state. For example, if it is determined that the state of the consumer is drunk, service to the consumer can be declined.
- For example, a state recognition system (e.g., which can be a system also provided with the facial recognition system 210) can employ one or more state recognition models (e.g., ML models) that can analyze images, video, and/or audio to determine a state of a person depicted therein. In some examples, the state recognition system receives the images, video, and/or audio from the vending machine (as generated by the vending machine) and processes the images, video, and/or audio to determine one or more states. For example, a ML model can process the image and outputs one or more classifications, each classification having a confidence score. For example, the ML model can output a classification of a state—sober with a confidence score of 0.98. The confidence score represents a relative confidence in the accuracy of the classification. In some examples, the confidence score can be compared to a threshold confidence score. If the confidence score exceeds the threshold confidence score, the classification is determined to be correct. If the confidence score does not exceed the threshold confidence score, the classification is determined to be incorrect. If the classification is determined to be correct, the state (e.g., sober) determined from the images, video, and/or audio, in the example above, is determined to be correct. If the classification is determined to be incorrect, the state (e.g., sober) determined from the images, video, and/or audio, in the example above, is determined to be incorrect.
- As another example, a number of times that the consumer has been served within a period of time (e.g., determined from the service history) can be used to determine a state of the user. For example, a blood-alcohol content (BAC) value can be calculated based on the gender, weight (e.g., data available to us from their ID document scan) and the number and types of beverages served. The BAC value can be compared to a threshold BAC value. If the BAC value exceeds the threshold BAC value, service can be denied.
- In some implementations, one or more venue constraints, one or more legal constraints, and one or more schedule constraints can be evaluated to determine whether consumers are to be served. An example venue constraint can include, without limitation, a time period during which the venue is offering beverages for sale. In some examples, if a consumer requests a beverage outside of the time period, it can be determined that service of the beverage is to be declined. An example legal constraint can include, without limitation, a time period during which sale of beverages are legally prohibited. In some examples, if a consumer requests a beverage during the time period, it can be determined that service of the beverage is to be declined. An example schedule constraint can include, without limitation, a time period during which an event is occurring (e.g., a collegiate athletic event, a religious ceremony), and sales of beverages are legally and/or contractually prohibited. In some examples, if a consumer requests a beverage during the time period, it can be determined that service of the beverage is to be declined.
- With reference to
FIG. 2B , anotherexample architecture 200′ is provided, in which verification of characteristics of a customer (e.g., an age of a customer, an identity of a customer) is performed at a first location, and retrieval of a good/service is performed at a second location. In the example ofFIG. 2B , a point-of-verification device 260 is provided, which includes components of thevending machine 202 except for thebeverage dispensing system 228, and the I/O acquisition system 230. Instead, in theexample architecture 200′ ofFIG. 2B , one or morebeverages dispensing systems 228 are provided as components ofrespective dispensing systems 262. In some examples, the point-of-verification device 260 is at a first location and executes verification of characteristics of a customer, as described herein. In some examples, payment can be made at the first location using the point-of-verification device 260. - After verification (e.g., age and identity of the customer have been verified), the customer can retrieve from one of the dispensing
systems 262, each located at respective second locations. In some examples, the point-of-verification device 260 informs the customer as to thespecific dispensing system 262 that is to be used (e.g., Pick-up your beverage at Machine No. 456). This can occur when, for example, a particular good is only available at one or more particular dispensing systems 262 (e.g., Machine 123 dispenses lagers, Machine 456 dispenses stouts, Machine 789 dispenses wheat beers). In some examples, the customer can select anydispensing system 262 of multiple dispensingsystems 262. - In some implementations, the
dispensing system 262 dispenses the good (e.g., beverage) in response to verifying the identity of the customer at the dispensingmachine 262. For example, the dispensingmachine 262 can include one or more cameras (not depicted) that capture an image of the customer. In some examples, the image of the customer captured by the dispensingmachine 262 can be compared to one or more images provided through the point-of-verification device 260 to confirm that the customer attempting to retrieve the good at the dispensingmachine 262 had been verified at the point-of-verification device. In some examples, thedispensing system 262 can provide the images that are to be compared to thefacial recognition system 210, which can employ one or more facial recognition models (e.g., ML models) that can compare images to determine whether faces depicted in the images match, as described herein. In the case where the - In some examples, in the case where the point-of-
verification device 260 informs the customer as to thespecific dispensing system 262 that is to be used, the point-of-verification device 260 can provide a transaction record including an image of the customer to thespecific dispensing system 262. In this manner, the identity of the customer can be verified for retrieval of the good at thedispensing system 262 based on the image provided in the transaction record and the image captured by thedispensing system 262. In some examples, in the case where the point-of-verification device 260 informs the customer as to thespecific dispensing system 262 that is to be used, the image captured by thedispensing system 262 is provided to the point-of-verification device 260, which provides a confirmation as to whether the good should be provided to the customer. For example, the point-of-verification device 260 can determine (e.g., using the facial recognition system) whether the customer attempting to retrieve the good is the customer that was verified at the point-of-verification device 260. - In some examples, in the case where, the customer can select any
dispensing system 262 of multiple dispensingsystems 262, the point-of-verification device 260 can provide a transaction record including an image of the customer to each of the dispensingsystems 262. In this manner, the identity of the customer can be verified for retrieval of the good at thedispensing system 262 based on the image provided in the transaction record and the image captured by thedispensing system 262 the customer chooses to use. In some examples, in the case where, the customer can select anydispensing system 262 of multiple dispensingsystems 262, the image captured by thedispensing system 262 is provided to the point-of-verification device 260, which provides a confirmation as to whether the good should be provided to the customer. For example, the point-of-verification device 260 can determine (e.g., using the facial recognition system) whether the customer attempting to retrieve the good is a customer that was verified at the point-of-verification device 260. - In some implementations, a good can be preemptively prepared for retrieval by a customer based on the customer's proximity to the retrieval location. For example, in the case of the
example architecture 200′ ofFIG. 2B , which includes the point-of-verification device 260 and one ormore dispensing systems 262, the good can be prepared for retrieval in response to determining that the customer is proximate to adispensing system 262. For example, images of faces of customers in line to retrieve goods from thedispensing system 262 can be captured and it can be determined that a customer has already been verified by the point-of-verification device 260. In response, the good (e.g., beverage) can be prepared (e.g., poured), such that, when the customer arrives at thedispensing system 262, the good is available for immediate pick-up (e.g., the customer does not have to wait, or only has to wait a relatively short time to take the good). For example, thedispensing system 262 can evaluate customers Y deep in a line (e.g., 3 customers deep in a line of customers) to continuously update a dispensing queue for the goods. By the time the Yth customer is at thedispensing system 262, the good for the particular customer is either already prepared for pick-up (e.g., the beverage is already poured), or preparation for pick-up is already underway (e.g., pouring of the beverage has already begun). - In some implementations, a customer can place an order remotely before verification of characteristics of the customer. In some examples, a customer can use a device (e.g., tablet, smartphone) that executes an application (e.g., mobile application (mobile app)) that enables the customer to place an order for a good that is to be retrieved. In some examples, the customer is also able to pay for the order using the application. After ordering remotely, the customer can approach a
vending machine 202 ofFIG. 2A , or a point-of-verification system 260 ofFIG. 2B for characteristic verification to be performed, as described herein. In some examples, upon arriving at thevending machine 202 ofFIG. 2A , or the point-of-verification system 260 ofFIG. 2B the customer can present evidence of the order, and thevending machine 202, or the point-of-verification system 260 can retrieve details of the order based on the evidence. Example evidence can include, without limitation, a machine-readable code (e.g., a bar code, a QR code) that can be generated by the application of the device of the customer and displayed to a camera and/or scanner of thevending machine 202, or the point-of-verification system 260. Thevending machine 202, or the point-of-verification system 260 can decode the machine-readable code to determine the details of the order, and commence verification of the customer, as described herein. -
FIG. 3 depicts an example conceptual diagram 300 in accordance with implementations of the present disclosure. The example conceptual diagram 300 represents a so-called web of proof to determine whether a consumer is to be served. The example conceptual diagram 300 includes circles indicating devices and/or data (e.g., IR camera still camera, video camera (which can be individual or combined cameras), ID scanner, know-your-client (KYC) data (e.g., answers providing personally identifiable information (PII)), and sets of rules to be applied) on the vending machine (e.g., thevending machine 100 ofFIG. 1 , thevending machine 202 of FIG. 2A). The example conceptual diagram 300 includes ovals indicating data and/or sources of data that can be processed, as described herein. The example conceptual diagram 300 includes diamonds indicating one or more determinations that are to be made to ultimately determine whether a consumer is to be served. - In the example of
FIG. 3 , an example determination can be whether the consumer is actually present at the vending machine (diamond→There?). In some examples, this can be determined based on images and/or video from the still camera and the video camera, respectively (e.g., images depicting liveliness, such as movement of a consumer present at the vending machine). Another example determination can be whether the consumer as presented at the vending machine is real (diamond→Real?). In some examples, this can be determined based on one or more depths (including a projected matrix depth (PMD) and liveliness. In this manner, the vending machine cannot be spoofed by a consumer holding up a picture of another in front of the vending machine. In some examples, multiple depths are determined, and it is determined whether the depths correlate to one another (diamond→Corr'n (correlation)). - Although there is a multiplicity of each of devices and/or data (circles), data and/or sources of data (ovals), and determinations (diamonds), it is contemplated that sub-sets of each can be used in accordance with implementations of the present disclosure. In some implementations, all can be used. For example, whether a consumer is to be served can be determined based on the identification being unexpired, the age indicated on the identification being of the legal age, and the consumer matching the identification. As another example, whether a consumer is to be served can be determined based on an observed consumer at the vending machine being real (e.g., not spoofed using an image of a person; liveliness), the identification being unexpired, the age indicated on the identification being of the legal age, and the consumer matching the identification. As another example, whether a consumer is to be served can be determined based on a state of the consumer at the vending machine (e.g., sober, drunk), the identification being unexpired, the age indicated on the identification being of the legal age, and the consumer matching the identification. As another example, whether a consumer is to be served can be determined based on any venue constraints, the identification being unexpired, the age indicated on the identification being of the legal age, and the consumer matching the identification. As another example, whether a consumer is to be served can be determined based on authenticity of the identification, the identification being unexpired, the age indicated on the identification being of the legal age, and the consumer matching the identification. In general, any appropriate combination of the above criteria for determining whether a consumer is to be served can be used.
-
FIGS. 4A-4F depict example user interfaces (UIs) in accordance with implementations of the present disclosure. The example UIs can be displayed in thedisplay screen 108 of thevending machine 100.FIG. 4A depicts anexample UI 400 depicting instructions for a consumer to insert an identification. Theexample UI 400 includes a partial image of the vending machine (e.g., thevending machine 100 ofFIG. 1 ), which enables the consumer to orient themselves with respect to the vending machine. Theexample UI 400 also includes an arrow pointing to the ID scanner that is to be used to scan the identification. In this manner, the consumer is aware of which device to use to scan the identification.FIG. 4B depicts anexample UI 402 depicting instructions for a consumer to have a photo (e.g., digital image) taken. Theexample UI 402 includes an image of the vending machine (e.g., thevending machine 100 ofFIG. 1 ), which enables the consumer to orient themselves with respect to the vending machine. Theexample UI 402 also includes an arrow pointing to the camera that is to be used to capture the photo. In some examples, theUI 400 is displayed before theUI 402. In some examples, theUI 402 is displayed before theUI 400. In some examples, one or more initial UIs are displayed prior to display of either theUI 400 or theUI 402. For example, an introduction UI and/or beverages selection UIs can be displayed prior to display of either theUI 400 or theUI 402. -
FIG. 4C depicts anexample UI 404 that provides a wait icon. TheUI 404 functions as a wait screen, while it is being determined whether the consumer is to be served. -
FIG. 4D depicts an example UI 406 that provides a result. In some examples, the UI 406 informs the user that their identification has been accepted and the beverage will be served. In some examples, the UI 406 is temporarily displayed and automatically changes to one or more UIs instructing on the service process (e.g., when and where to insert vessel). -
FIG. 4E depicts anexample UI 408 to inform the consumer that they cannot be served. TheUI 408 reflects a denial of service based on either an invalid identification or an age that is not of the legal age.FIG. 4F depicts anexample UI 410 to inform the consumer that they cannot be served. TheUI 410 reflects a denial of service based on the consumer not matching the identification (e.g., a determination that the consumer is not authentic). - In some implementations, one or more UIs can present personalized menus based on one or more of demographics of the customer and preferences of the customer. For example, and as described above, a demographic of the customer can be determined. In some examples, a menu displayed to the customer can be tailored based on the demographic. For example, for a first demographic a first set of products is displayed, and, for a second demographic, a second set of products is displayed. In some examples, for the first demographic, the first set of products and the second set of products are both displayed, but the first set of products is displayed more prominently than the second set of products (e.g., toward the top of the UI with larger graphical representations). In some examples, for the second demographic, the first set of products and the second set of products are both displayed, but the second set of products is displayed more prominently than the first set of products (e.g., toward the top of the UI with larger graphical representations).
- In some examples, the service history for a particular customer can be provided, as described herein, a menu displayed to the customer can be tailored based on the service history. For example, frequencies of purchases of respective goods can be determined, and more frequently purchased goods can be displayed more prominently than less frequently purchased goods. In some examples, if a frequency of purchase of a good is below a threshold frequency, the good is not initially displayed to the customer. For example, if the customer frequently purchases lagers, less frequently purchases stouts, and has never purchased a wheat beer, available lagers can be displayed more prominently in the UI than available stouts, and available wheat beers are not initially displayed.
-
FIG. 5 depicts an example process 500 that can be executed in implementations of the present disclosure. In some examples, the example process 500 is provided using one or more computer-executable programs executed by one or more computing devices. - Data is received (502). For example, data representative of the consumer, who is present at the vending machine and is requesting service can be received from the one or more cameras. As another example, consumer-specific information and ID-specific information can be received from an identification (e.g., scanned by an ID scanner). It is determined whether the identification is expired (504). For example, an expiration data provided on the identification is compared to a current date. If the identification is expired, an error is displayed (506). For example, the error can indicate that the identification is expired, and the consumer will not be served.
- If the identification is not expired, it is determined whether age provided by the identification is of legal age (508). For example, the DOB provided on the identification is compared to a current data. If the age provided by the identification is not of legal age, an error is displayed (506). For example, the error can indicate that the consumer is not of legal age for service. If the age provided by the identification is of legal age, it is determined whether the identification is authentic (510). If the identification is not authentic, an error is displayed (506). For example, the error can indicate that the identification is not acceptable, and the consumer will not be served.
- If the identification is authentic, it is determined whether the consumer is authentic (512). If the consumer is not authentic, an error is displayed (506). For example, the error can indicate that the consumer does not match the identification, and the consumer will not be served. If the consumer is authentic, it is determined whether any other condition is present that would prohibit service of the beverage (514). For example, any schedule constraints, any venue constraints, and/or any legal constraints can be evaluated to determine whether any other condition is present that would prohibit service of the beverage. If another condition is present that would prohibit service of the beverage, an error is displayed (506). For example, the error can indicate the reason that service is declined (e.g., “There is currently a collegiate sporting event taking place at the stadium, during which we are unable to serve alcohol.” or “It is Sunday morning, and we are unable to serve alcohol until 12 Noon.”).
- If no other condition is present that would prohibit service of the beverage, payment information is processed (516). It is determined whether the payment is approved (518). If the payment is not approved, an error is displayed (506). If the payment is approved, the beverage serving system is activated to serve the beverage (520).
- While the example process 500 of
FIG. 5 is comprehensive, it is contemplated that the entirety of the example process 500 need not be performed to determine whether to serve a consumer. For example, and as described herein, any appropriate sub-set of determinations of the example process 500 can be executed (e.g., whether a consumer is to be served can be determined based on the identification being unexpired, the age indicated on the identification being of the legal age, and the consumer matching the identification). - Implementations and all of the functional operations described in this specification may be realized in digital electronic circuitry, or in computer software, firmware, or hardware, including the structures disclosed in this specification and their structural equivalents, or in combinations of one or more of them. Implementations may be realized as one or more computer program products, i.e., one or more modules of computer program instructions encoded on a computer readable medium for execution by, or to control the operation of, data processing apparatus. The computer readable medium may be a machine-readable storage device, a machine-readable storage substrate, a memory device, a composition of matter effecting a machine-readable propagated signal, or a combination of one or more of them. The term “computing system” encompasses all apparatus, devices, and machines for processing data, including by way of example a programmable processor, a computer, or multiple processors or computers. The apparatus may include, in addition to hardware, code that creates an execution environment for the computer program in question (e.g., code that constitutes processor firmware, a protocol stack, a database management system, an operating system, or any appropriate combination of one or more thereof). A propagated signal is an artificially generated signal (e.g., a machine-generated electrical, optical, or electromagnetic signal) that is generated to encode information for transmission to suitable receiver apparatus.
- A computer program (also known as a program, software, software application, script, or code) may be written in any appropriate form of programming language, including compiled or interpreted languages, and it may be deployed in any appropriate form, including as a stand alone program or as a module, component, subroutine, or other unit suitable for use in a computing environment. A computer program does not necessarily correspond to a file in a file system. A program may be stored in a portion of a file that holds other programs or data (e.g., one or more scripts stored in a markup language document), in a single file dedicated to the program in question, or in multiple coordinated files (e.g., files that store one or more modules, sub programs, or portions of code). A computer program may be deployed to be executed on one computer or on multiple computers that are located at one site or distributed across multiple sites and interconnected by a communication network.
- The processes and logic flows described in this specification may be performed by one or more programmable processors executing one or more computer programs to perform functions by operating on input data and generating output. The processes and logic flows may also be performed by, and apparatus may also be implemented as, special purpose logic circuitry (e.g., an FPGA (field programmable gate array) or an ASIC (application specific integrated circuit)).
- Processors suitable for the execution of a computer program include, by way of example, both general and special purpose microprocessors, and any one or more processors of any appropriate kind of digital computer. Generally, a processor will receive instructions and data from a read only memory or a random access memory or both. Elements of a computer can include a processor for performing instructions and one or more memory devices for storing instructions and data. Generally, a computer will also include, or be operatively coupled to receive data from or transfer data to, or both, one or more mass storage devices for storing data (e.g., magnetic, magneto optical disks, or optical disks). However, a computer need not have such devices. Moreover, a computer may be embedded in another device (e.g., a mobile telephone, a personal digital assistant (PDA), a mobile audio player, a Global Positioning System (GPS) receiver). Computer readable media suitable for storing computer program instructions and data include all forms of non-volatile memory, media and memory devices, including by way of example semiconductor memory devices (e.g., EPROM, EEPROM, and flash memory devices); magnetic disks (e.g., internal hard disks or removable disks); magneto optical disks; and CD ROM and DVD-ROM disks. The processor and the memory may be supplemented by, or incorporated in, special purpose logic circuitry.
- To provide for interaction with a user, implementations may be realized on a computer having a display device (e.g., a CRT (cathode ray tube), LCD (liquid crystal display) monitor) for displaying information to the user and a keyboard and a pointing device (e.g., a mouse, a trackball, a touch-pad), by which the user may provide input to the computer. Other kinds of devices may be used to provide for interaction with a user as well; for example, feedback provided to the user may be any appropriate form of sensory feedback (e.g., visual feedback, auditory feedback, tactile feedback); and input from the user may be received in any appropriate form, including acoustic, speech, or tactile input.
- Implementations may be realized in a computing system that includes a back end component (e.g., as a data server), a middleware component (e.g., an application server), and/or a front end component (e.g., a client computer having a graphical user interface or a Web browser, through which a user may interact with an implementation), or any appropriate combination of one or more such back end, middleware, or front end components. The components of the system may be interconnected by any appropriate form or medium of digital data communication (e.g., a communication network). Examples of communication networks include a local area network (“LAN”) and a wide area network (“WAN”), e.g., the Internet.
- The computing system may include clients and servers. A client and server are generally remote from each other and typically interact through a communication network. The relationship of client and server arises by virtue of computer programs running on the respective computers and having a client-server relationship to each other.
- While this specification contains many specifics, these should not be construed as limitations on the scope of the disclosure or of what may be claimed, but rather as descriptions of features specific to particular implementations. Certain features that are described in this specification in the context of separate implementations may also be implemented in combination in a single implementation. Conversely, various features that are described in the context of a single implementation may also be implemented in multiple implementations separately or in any suitable sub-combination. Moreover, although features may be described above as acting in certain combinations and even initially claimed as such, one or more features from a claimed combination may in some cases be excised from the combination, and the claimed combination may be directed to a sub-combination or variation of a sub-combination.
- Similarly, while operations are depicted in the drawings in a particular order, this should not be understood as requiring that such operations be performed in the particular order shown or in sequential order, or that all illustrated operations be performed, to achieve desirable results. In certain circumstances, multitasking and parallel processing may be advantageous. Moreover, the separation of various system components in the implementations described above should not be understood as requiring such separation in all implementations, and it should be understood that the described program components and systems may generally be integrated together in a single software product or packaged into multiple software products.
- A number of implementations have been described. Nevertheless, it will be understood that various modifications may be made without departing from the spirit and scope of the disclosure. For example, various forms of the flows shown above may be used, with steps re-ordered, added, or removed. Accordingly, other implementations are within the scope of the following claims.
Claims (21)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US16/907,611 US11321962B2 (en) | 2019-06-24 | 2020-06-22 | Automated vending machine with customer and identification authentication |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201962865420P | 2019-06-24 | 2019-06-24 | |
US16/785,872 US10726246B1 (en) | 2019-06-24 | 2020-02-10 | Automated vending machine with customer and identification authentication |
US16/907,611 US11321962B2 (en) | 2019-06-24 | 2020-06-22 | Automated vending machine with customer and identification authentication |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US16/785,872 Continuation US10726246B1 (en) | 2019-06-24 | 2020-02-10 | Automated vending machine with customer and identification authentication |
Publications (2)
Publication Number | Publication Date |
---|---|
US20200401792A1 true US20200401792A1 (en) | 2020-12-24 |
US11321962B2 US11321962B2 (en) | 2022-05-03 |
Family
ID=71783406
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US16/785,872 Active US10726246B1 (en) | 2019-06-24 | 2020-02-10 | Automated vending machine with customer and identification authentication |
US16/907,611 Active US11321962B2 (en) | 2019-06-24 | 2020-06-22 | Automated vending machine with customer and identification authentication |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US16/785,872 Active US10726246B1 (en) | 2019-06-24 | 2020-02-10 | Automated vending machine with customer and identification authentication |
Country Status (3)
Country | Link |
---|---|
US (2) | US10726246B1 (en) |
EP (1) | EP3757923A1 (en) |
AU (2) | AU2020204204A1 (en) |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10947103B2 (en) | 2019-06-24 | 2021-03-16 | Accenture Global Solutions Limited | Beverage dispensing machine for achieving target pours for different beverages |
US20210407243A1 (en) * | 2020-03-05 | 2021-12-30 | PayRange Inc. | Controlled dispensing system and method |
US20210403239A1 (en) * | 2020-03-05 | 2021-12-30 | PayRange Inc. | Controlled dispensing system and method |
US20210405602A1 (en) * | 2020-03-05 | 2021-12-30 | PayRange Inc. | Controlled dispensing system and method |
US20220284354A1 (en) * | 2021-03-02 | 2022-09-08 | Amie ST. ARNAUD | Event administration system |
USD963407S1 (en) | 2019-06-24 | 2022-09-13 | Accenture Global Solutions Limited | Beverage dispensing machine |
US11488419B2 (en) | 2020-02-21 | 2022-11-01 | Accenture Global Solutions Limited | Identity and liveness verification |
WO2023163691A1 (en) * | 2022-02-22 | 2023-08-31 | Zdoroviak Ihor | A vending system for selling controlled items and an automated sales method using the same |
US20240002152A1 (en) * | 2020-03-05 | 2024-01-04 | PayRange Inc. | Remote clerk-assisted dispensing system and method |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10726246B1 (en) | 2019-06-24 | 2020-07-28 | Accenture Global Solutions Limited | Automated vending machine with customer and identification authentication |
US20220253846A1 (en) * | 2021-02-11 | 2022-08-11 | Ronald Eric Tobb | Age verification system, method and apparatus |
USD983588S1 (en) * | 2021-03-01 | 2023-04-18 | INVI WATER GmbH | Drinking water purifier |
Family Cites Families (95)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5086817A (en) | 1990-10-01 | 1992-02-11 | Murphy David J | Foam-suppressing apparatus for filling beer pitcher |
US5797515A (en) * | 1995-10-18 | 1998-08-25 | Adds, Inc. | Method for controlling a drug dispensing system |
US5722526A (en) | 1995-11-13 | 1998-03-03 | Sharrard; Robert C. | Dispensing security system for a vending machine |
US6173068B1 (en) | 1996-07-29 | 2001-01-09 | Mikos, Ltd. | Method and apparatus for recognizing and classifying individuals based on minutiae |
WO1998004969A1 (en) * | 1996-07-31 | 1998-02-05 | Nippon T.M.I. Co., Ltd. | Automatic commodity handling apparatus utilizing ic card |
US6783459B2 (en) | 1997-08-22 | 2004-08-31 | Blake Cumbers | Passive biometric customer identification and tracking system |
WO1999022318A1 (en) | 1997-10-27 | 1999-05-06 | Massachusetts Institute Of Technology | Image search and retrieval system |
US8123130B2 (en) | 1998-04-17 | 2012-02-28 | Remote Inc. | Remote ordering device |
GB2355054A (en) | 1999-08-21 | 2001-04-11 | Paul Andrew Reed | Liquid dispenser with automatic shut-off |
US20020087413A1 (en) * | 2000-09-08 | 2002-07-04 | Agent Ai, Inc. | Vending machine adapted to vend age-restricted items |
US6742644B1 (en) * | 2000-11-27 | 2004-06-01 | Jcm American Corporation | Note acceptor-dispenser validator |
US6920236B2 (en) | 2001-03-26 | 2005-07-19 | Mikos, Ltd. | Dual band biometric identification system |
GB0124780D0 (en) | 2001-10-16 | 2001-12-05 | Imi Cornelius Uk Ltd | Beverage dispense apparatus |
CA2359269A1 (en) | 2001-10-17 | 2003-04-17 | Biodentity Systems Corporation | Face imaging system for recordal and automated identity confirmation |
US6854642B2 (en) * | 2001-10-19 | 2005-02-15 | Chesterfield Holdings, L.L.C. | System for vending products and services using an identification card and associated methods |
US6711465B2 (en) | 2002-01-07 | 2004-03-23 | Robert Tomassi | Vending machine having a biometric verification system for authorizing the sales of regulated products |
JP3885593B2 (en) | 2002-01-30 | 2007-02-21 | 富士電機リテイルシステムズ株式会社 | Beverage dispenser |
JP3829729B2 (en) | 2002-02-14 | 2006-10-04 | オムロン株式会社 | Personal authentication device |
JP2004128584A (en) | 2002-09-30 | 2004-04-22 | Minolta Co Ltd | Photographing apparatus |
US7263220B2 (en) | 2003-02-28 | 2007-08-28 | Eastman Kodak Company | Method for detecting color objects in digital images |
US7545963B2 (en) | 2003-04-04 | 2009-06-09 | Lumidigm, Inc. | Texture-biometrics sensor |
US7266229B2 (en) | 2003-07-24 | 2007-09-04 | Carestream Health, Inc. | Method for rendering digital radiographic images for display based on independent control of fundamental image quality parameters |
US7697026B2 (en) | 2004-03-16 | 2010-04-13 | 3Vr Security, Inc. | Pipeline architecture for analyzing multiple video streams |
WO2006023046A1 (en) | 2004-06-21 | 2006-03-02 | Nevengineering, Inc. | Single image based multi-biometric system and method |
US20060157152A1 (en) | 2004-08-13 | 2006-07-20 | Wolski Peter F | Beverage dispenser with game controller |
WO2006034256A2 (en) | 2004-09-17 | 2006-03-30 | Cyberextruder.Com, Inc. | System, method, and apparatus for generating a three-dimensional representation from one or more two-dimensional images |
US20060204107A1 (en) | 2005-03-04 | 2006-09-14 | Lockheed Martin Corporation | Object recognition system using dynamic length genetic training |
US7657126B2 (en) | 2005-05-09 | 2010-02-02 | Like.Com | System and method for search portions of objects in images and features thereof |
US7587070B2 (en) | 2005-09-28 | 2009-09-08 | Facedouble, Inc. | Image classification and information retrieval over wireless digital networks and the internet |
US20070127787A1 (en) | 2005-10-24 | 2007-06-07 | Castleman Kenneth R | Face recognition system and method |
US20070098303A1 (en) | 2005-10-31 | 2007-05-03 | Eastman Kodak Company | Determining a particular person from a collection |
BE1016910A3 (en) | 2006-01-03 | 2007-09-04 | Daluwein Dirk | A HOUSEHOLD AUTOMATIC MULTI BEER DISPENSING DEVICE WITH AN AIR PRESSURE RESERVOIR AND A TILT SYSTEM THAT ADAPTS AUTOMATIC SPEED AND INCLINATION ANGLE OF THE BEER GLASS DURING TAPPING. |
US8290220B2 (en) | 2006-03-01 | 2012-10-16 | Nec Corporation | Face authenticating apparatus, face authenticating method, and program |
MX2008011021A (en) | 2006-03-02 | 2008-09-10 | Visa Int Service Ass | Method and system for performing two factor authentication in mail order and telephone order transactions. |
JP4899551B2 (en) | 2006-03-15 | 2012-03-21 | オムロン株式会社 | Authentication device, authentication method, authentication program, and computer-readable recording medium |
US7715598B2 (en) | 2006-07-25 | 2010-05-11 | Arsoft, Inc. | Method for detecting facial expressions of a portrait photo by an image capturing electronic device |
US8121356B2 (en) | 2006-09-15 | 2012-02-21 | Identix Incorporated | Long distance multimodal biometric system and method |
US8280120B2 (en) | 2006-10-02 | 2012-10-02 | Eyelock Inc. | Fraud resistant biometric financial transaction system and method |
KR101323735B1 (en) | 2007-01-17 | 2013-10-30 | 삼성전자주식회사 | Digital photographing apparatus, method for controlling the same, and recording medium storing program to implement the method |
KR100851981B1 (en) | 2007-02-14 | 2008-08-12 | 삼성전자주식회사 | Liveness detection method and apparatus in video image |
US7783379B2 (en) * | 2007-04-25 | 2010-08-24 | Asteres, Inc. | Automated vending of products containing controlled substances |
US8331632B1 (en) | 2007-08-06 | 2012-12-11 | University Of South Florida | Indexing face templates using linear models |
JP5080944B2 (en) | 2007-11-08 | 2012-11-21 | 興和株式会社 | Panorama fundus image synthesis apparatus and method |
CN100514353C (en) | 2007-11-26 | 2009-07-15 | 清华大学 | Living body detecting method and system based on human face physiologic moving |
US20090210240A1 (en) * | 2008-02-15 | 2009-08-20 | Hollandse Exploitatie Maatschappij B.V. | System and method of age verification for purchasing age-restricted items |
JP5055166B2 (en) | 2008-02-29 | 2012-10-24 | キヤノン株式会社 | Eye open / closed degree determination device, method and program, and imaging device |
US7748417B2 (en) | 2008-03-12 | 2010-07-06 | Julie Arcuri | Beer tender |
US20100078290A1 (en) * | 2008-09-26 | 2010-04-01 | International Currency Technologies Corporation | Automatic vending machine with user's identity recognition funciton |
US10319173B2 (en) * | 2008-10-22 | 2019-06-11 | Newzoom, Inc. | Vending store inventory management and reporting system |
KR20100073191A (en) | 2008-12-22 | 2010-07-01 | 한국전자통신연구원 | Method and apparatus for face liveness using range data |
US20100249994A1 (en) * | 2009-03-30 | 2010-09-30 | Craig Sinclair | Express checkout method and apparatus |
JP2010245607A (en) | 2009-04-01 | 2010-10-28 | Nikon Corp | Image recording device and electronic camera |
CN102447837A (en) | 2009-06-16 | 2012-05-09 | 英特尔公司 | Camera applications in a handheld device |
JP5398408B2 (en) | 2009-08-07 | 2014-01-29 | オリンパスイメージング株式会社 | CAMERA, CAMERA CONTROL METHOD, DISPLAY CONTROL DEVICE, AND DISPLAY CONTROL METHOD |
JP5431083B2 (en) | 2009-09-16 | 2014-03-05 | オリンパスイメージング株式会社 | Image capturing apparatus and method for controlling image capturing apparatus |
KR101599886B1 (en) | 2009-09-29 | 2016-03-04 | 삼성전자주식회사 | Apparatus and method for processing image according to display scene mode |
US8290281B2 (en) | 2009-10-02 | 2012-10-16 | Hewlett-Packard Development Company, L.P. | Selective presentation of images |
US8655732B1 (en) | 2009-10-28 | 2014-02-18 | Mark Edward Wilinski | Liquid dispensation |
US8631355B2 (en) | 2010-01-08 | 2014-01-14 | Microsoft Corporation | Assigning gesture dictionaries |
US10242394B2 (en) | 2010-01-19 | 2019-03-26 | Amir Dabiri | Vending machine with user id/age verification system and associated method |
US11017395B2 (en) * | 2010-01-19 | 2021-05-25 | Amir Dabiri | Vending machine with user ID/age verification system and associated method |
US8515124B2 (en) | 2010-02-04 | 2013-08-20 | Electronics And Telecommunications Research Institute | Method and apparatus for determining fake image |
US9539510B2 (en) | 2010-04-30 | 2017-01-10 | Microsoft Technology Licensing, Llc | Reshapable connector with variable rigidity |
US8610536B2 (en) | 2010-06-04 | 2013-12-17 | Table Tap, L.L.C. | Beverage dispensing control |
US20110320037A1 (en) * | 2010-06-25 | 2011-12-29 | Jose Frugone | Biometric payment and identification system and method |
JP5814557B2 (en) | 2011-02-07 | 2015-11-17 | キヤノン株式会社 | Image display control device, imaging device, display control method, and control program |
CN103210332B (en) | 2011-04-18 | 2015-09-30 | 松下电器(美国)知识产权公司 | The focusing control method of camera head, camera head and integrated circuit |
CN103004179B (en) | 2011-06-29 | 2015-11-25 | 奥林巴斯映像株式会社 | Tracking means and tracking |
EP2546782B1 (en) | 2011-07-11 | 2014-06-25 | Accenture Global Services Limited | Liveness detection |
EP2713307B1 (en) | 2012-09-28 | 2018-05-16 | Accenture Global Services Limited | Liveness detection |
JP5952782B2 (en) | 2013-06-12 | 2016-07-13 | キヤノン株式会社 | Image processing apparatus, control method therefor, program, and storage medium |
JP6184189B2 (en) | 2013-06-19 | 2017-08-23 | キヤノン株式会社 | SUBJECT DETECTING DEVICE AND ITS CONTROL METHOD, IMAGING DEVICE, SUBJECT DETECTING DEVICE CONTROL PROGRAM, AND STORAGE MEDIUM |
US9380224B2 (en) | 2014-02-28 | 2016-06-28 | Microsoft Technology Licensing, Llc | Depth sensing using an infrared camera |
US20150253845A1 (en) | 2014-03-05 | 2015-09-10 | Umoove Services Ltd. | System and method for altering a perspective of a figure presented on an electronic display |
DE102014106249A1 (en) | 2014-05-05 | 2015-11-05 | Clemens GOTTINGER | Draft equipment |
US20160098882A1 (en) * | 2014-10-07 | 2016-04-07 | Captech Ventures, Inc. | System and method to enable rules-restricted vending machine purchases |
US20160155127A1 (en) * | 2014-12-01 | 2016-06-02 | Alexander Lee Hartman | Smart vending apparatus with automated regulatory compliance verification and method of use |
US20170092150A1 (en) | 2015-09-30 | 2017-03-30 | Sultan Hamadi Aljahdali | System and method for intelligently interacting with users by identifying their gender and age details |
WO2017098289A1 (en) | 2015-12-07 | 2017-06-15 | Marczali Tamás | Method for enhancing commercial efficiency of a filling station and fuel dispensing system comprising a filling station |
GB2548546A (en) | 2016-02-18 | 2017-09-27 | Checkprint Ltd | Method and apparatus for detection of document tampering |
US9881209B2 (en) | 2016-03-28 | 2018-01-30 | Wipro Limited | Methods and systems for detecting tampering in a document image |
US10464800B2 (en) | 2016-07-27 | 2019-11-05 | DraftServ Technologies, LLC | Systems and methods for dispensing and tracking multiple categories of beverages |
US10252900B2 (en) | 2016-12-07 | 2019-04-09 | Cornelius Beverage Technologies Limited | Apparatuses, systems, and methods for dispensing beverages using alcoholic concentrates |
EP3642150B1 (en) | 2017-06-21 | 2022-11-23 | Pubinno, Inc. | Smart beer tap |
WO2019032538A1 (en) * | 2017-08-08 | 2019-02-14 | Walmart Apollo, Llc | Validating identification of a user for purchase of age-restricted items |
WO2019056310A1 (en) | 2017-09-22 | 2019-03-28 | Qualcomm Incorporated | Systems and methods for facial liveness detection |
US20190206174A1 (en) * | 2017-12-29 | 2019-07-04 | Idemia Identity & Security USA LLC | Automated dispensing machine with improved security |
US11682232B2 (en) | 2018-02-12 | 2023-06-20 | Samsung Electronics Co., Ltd. | Device and method with image matching |
US10691926B2 (en) * | 2018-05-03 | 2020-06-23 | Analog Devices, Inc. | Single-pixel sensor |
CA3125586A1 (en) | 2018-06-11 | 2019-12-11 | Laurence Hamid | Liveness detection |
CA3039555A1 (en) * | 2019-04-09 | 2020-10-09 | 2654184 Ontario Inc. d/b/a Popcann Corporation | Secured customer access arrangement for a container business |
US10947103B2 (en) | 2019-06-24 | 2021-03-16 | Accenture Global Solutions Limited | Beverage dispensing machine for achieving target pours for different beverages |
US10726246B1 (en) | 2019-06-24 | 2020-07-28 | Accenture Global Solutions Limited | Automated vending machine with customer and identification authentication |
EP3869472A1 (en) | 2020-02-21 | 2021-08-25 | Accenture Global Solutions Limited | Detecting identification tampering using ultra-violet imaging |
EP3869395A1 (en) | 2020-02-21 | 2021-08-25 | Accenture Global Solutions Limited | Identity and liveness verification |
-
2020
- 2020-02-10 US US16/785,872 patent/US10726246B1/en active Active
- 2020-06-22 US US16/907,611 patent/US11321962B2/en active Active
- 2020-06-24 AU AU2020204204A patent/AU2020204204A1/en not_active Abandoned
- 2020-06-24 EP EP20182070.1A patent/EP3757923A1/en active Pending
-
2021
- 2021-08-20 AU AU2021218189A patent/AU2021218189A1/en not_active Abandoned
Cited By (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11214475B2 (en) | 2019-06-24 | 2022-01-04 | Accenture Global Solutions Limited | Beverage dispensing machine for achieving target pours for different beverages |
US10988365B2 (en) | 2019-06-24 | 2021-04-27 | Accenture Global Solutions Limited | Beverage dispensing machine for achieving target pours for different beverages |
US10947103B2 (en) | 2019-06-24 | 2021-03-16 | Accenture Global Solutions Limited | Beverage dispensing machine for achieving target pours for different beverages |
USD963407S1 (en) | 2019-06-24 | 2022-09-13 | Accenture Global Solutions Limited | Beverage dispensing machine |
US11488419B2 (en) | 2020-02-21 | 2022-11-01 | Accenture Global Solutions Limited | Identity and liveness verification |
US11657667B2 (en) * | 2020-03-05 | 2023-05-23 | PayRange Inc. | Controlled dispensing system and method |
US20210405602A1 (en) * | 2020-03-05 | 2021-12-30 | PayRange Inc. | Controlled dispensing system and method |
US20210403239A1 (en) * | 2020-03-05 | 2021-12-30 | PayRange Inc. | Controlled dispensing system and method |
US20210407243A1 (en) * | 2020-03-05 | 2021-12-30 | PayRange Inc. | Controlled dispensing system and method |
US11663875B2 (en) | 2020-03-05 | 2023-05-30 | PayRange Inc. | Controlled dispensing system and method |
US20230298427A1 (en) * | 2020-03-05 | 2023-09-21 | PayRange Inc. | Controlled dispensing system and method |
US20240002152A1 (en) * | 2020-03-05 | 2024-01-04 | PayRange Inc. | Remote clerk-assisted dispensing system and method |
US20220284354A1 (en) * | 2021-03-02 | 2022-09-08 | Amie ST. ARNAUD | Event administration system |
WO2023163691A1 (en) * | 2022-02-22 | 2023-08-31 | Zdoroviak Ihor | A vending system for selling controlled items and an automated sales method using the same |
Also Published As
Publication number | Publication date |
---|---|
AU2021218189A1 (en) | 2021-09-09 |
US11321962B2 (en) | 2022-05-03 |
AU2020204204A1 (en) | 2021-01-14 |
EP3757923A1 (en) | 2020-12-30 |
US10726246B1 (en) | 2020-07-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11321962B2 (en) | Automated vending machine with customer and identification authentication | |
US11610179B2 (en) | Intelligent pre-processing and fulfillment of mixed orders | |
US11823196B2 (en) | Voice recognition to authenticate a mobile payment | |
US20180349900A1 (en) | Systems and Methods for Tokenizing Financial Information | |
US10044697B2 (en) | Multi-level authentication for onboard systems | |
US11763304B1 (en) | User and entity authentication through an information storage and communication system | |
CN108122333B (en) | Remote control system for dispensing goods or services and method of operating the same | |
CN107615798B (en) | Method and system for personal data sharing applications | |
US11488419B2 (en) | Identity and liveness verification | |
US20160232609A1 (en) | Mobile system for exchanging gift cards | |
US10217108B1 (en) | Systems and methods for assisted transactions using an information wallet | |
US20080283594A1 (en) | Systems and methods for implementing debit card account restrictions | |
US20200311703A1 (en) | Methods and systems for kiosk device | |
KR20140003274A (en) | A method and an apparatus providing banking service by fingerprint | |
US11922472B1 (en) | Systems and methods for transferring a gift using an information storage and communication system | |
KR20190025431A (en) | Financial service supply system and method using augmented reality | |
US20200219108A1 (en) | Systems and methods for online payments | |
US20230058572A1 (en) | Systems and methods for providing a virtual safety deposit box for remote access to stored digital and virtual content |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
FEPP | Fee payment procedure |
Free format text: ENTITY STATUS SET TO UNDISCOUNTED (ORIGINAL EVENT CODE: BIG.); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY |
|
AS | Assignment |
Owner name: ACCENTURE GLOBAL SOLUTIONS LIMITED, IRELAND Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:MCCLELLAN, CHRISTOPHER J.;CARDER, JON C.;MCCANN, KEVIN D.;AND OTHERS;SIGNING DATES FROM 20200127 TO 20200206;REEL/FRAME:053075/0498 |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: DOCKETED NEW CASE - READY FOR EXAMINATION |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: NON FINAL ACTION MAILED |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: RESPONSE TO NON-FINAL OFFICE ACTION ENTERED AND FORWARDED TO EXAMINER |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: FINAL REJECTION MAILED |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: DOCKETED NEW CASE - READY FOR EXAMINATION |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: NOTICE OF ALLOWANCE MAILED -- APPLICATION RECEIVED IN OFFICE OF PUBLICATIONS |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: PUBLICATIONS -- ISSUE FEE PAYMENT VERIFIED |
|
STCF | Information on status: patent grant |
Free format text: PATENTED CASE |