The present disclosure relates generally to image processing systems, and more specifically to an image processing system and method for detecting errors in an ATM terminal.
Typically, automatic teller machines (ATMs) include a set of cassettes to hold currency denominations. When a user requests to withdraw cash from an ATM terminal, a processor of the ATM terminal calculates an expected cash to be withdrawn from the cassettes to fulfill the user's request. The existing ATM terminals, however, do not have a mechanism to detect whether the actual dispensed cash from the cassettes matches the expected cash dispensed from the cassettes of the ATM terminal. Discrepancies between the actual dispensed cash and the expected dispensed cash may occur if, for example, a cassette is loaded with inconsistent currency denominations and/or a cassette is placed in the wrong place inside the ATM terminal.
In one embodiment, an automated teller machine (ATM) includes a plurality of cassettes. Each cassette is configured to be loaded with a specific currency denomination, such that a first cassette is associated with a first currency denomination and a second cassette is associated with a second currency denomination. The ATM also includes a processor configured to receive a withdrawal request from a user operating a user interface of the ATM to receive cash from a cash dispenser of the ATM. The processor determines currency denominations and a number of bills for each currency denomination needed to fulfill the withdrawal request. The expected cash to be dispensed from the ATM is a sum of multiplications of each currency denomination with its number of bills. The processor sends signal commands to the plurality of cassettes to dispense bills based on the determined currency denominations and the number of bills for each currency denomination to fulfill the withdrawal request. The ATM also includes a camera positioned in a pathway of the bills being dispensed from the plurality of cassettes to the cash dispenser. The camera is configured to capture images of bills being dispensed from the plurality of cassettes and send the images of the bills to the processor. The processor is further configured to determine the actual dispensed cash from the plurality of cassettes based on received images from the camera, and whether the actual dispensed cash matches the expected cash to be dispensed from the ATM. The processor generates an alert if the actual dispensed cash does not match the expected cash.
In another embodiment, an ATM includes a plurality of cassettes. Each cassette is configured to be loaded with a specific currency denomination, such that a first cassette is associated with a first currency denomination and a second cassette is associated with a second currency denomination. The ATM also includes a processor configured to receive a withdrawal request from a user operating a user interface of the ATM to receive cash from a cash dispenser of the ATM. The processor determines a first expected number of bills from the first cassette and a second expected number of bills from the second cassette. The expected cash to be dispensed from the ATM to fulfill the withdrawal request is a sum of the first expected number of bills from the first cassette multiplied by the first currency denomination and the second expected number of bills from the second cassette multiplied by the second currency denomination. The processor sends signal commands to the first cassette and the second cassette to dispense the first expected number of bills and the second expected number of bills, respectively. The ATM also includes a camera positioned in a pathway of the bills being dispensed from the plurality of cassettes to the cash dispenser. The camera is configured to capture images of bills being dispensed from the first cassette and the second cassette, and send the images of the bills to the processor. The processor determines a first actual number of bills dispensed from the first cassette and a second actual number of bills dispensed from the second cassette, and whether the first actual number of bills matches the first expected number of bills. The processor generates an alert if the first actual number of bills does not match the first expected number of bills. The processor determines whether the second actual number of bills matches the second expected number of bills. The processor generates an alert if the second actual number of bills does not match the second expected number of bills.
Existing automated dispensing devices, such as ATM terminals, lack capabilities to detect errors in the internal dispensing side of the dispensing devices. For example, the existing ATM terminals do not have a mechanism to determine whether an expected amount of cash requested by a user matches an actual amount of cash dispensed from the cassettes of the ATM terminal. In another example, the existing ATM terminals do not have a mechanism to determine whether, for each cassette, an expected number of bills from a cassette matches an actual number of bills dispensed from the cassette. Certain embodiments of this disclosure provide unique solutions to technical problems of the dispensing devices, e.g., ATM terminals, to detect errors in the internal dispensing side of the dispensing devices. For example, the disclosed system provides several technical advantages which include: 1) determining whether an actual amount of cash dispensed from the cassettes of the ATM terminal matches an expected amount of cash requested by a user; 2) determining whether, for each cassette of the ATM terminal, an actual number of bills dispensed from a cassette matches an expected number of bills from the cassette; and 3) preventing to dispense a wrong amount and/or denomination of cash to users. As such, this disclosure may improve the function of the ATM terminals technology by reducing errors in the dispensing side of the ATM terminals and consequently increasing the accuracy of ATM terminals' operation.
Accordingly, the system described herein provides a practical application of managing the dispensing side of the ATM terminals. This, in turn, provides the additional practical application of improving the accuracy of the ATM terminals' operation which consequently improves the underlying computer of the ATM terminals.
Certain embodiments of this disclosure may include some, all, or none of these advantages. These advantages and other features will be more clearly understood from the following detailed description taken in conjunction with the accompanying drawings and claims.
For a more complete understanding of this disclosure, reference is now made to the following brief description, taken in connection with the accompanying drawings and detailed description, wherein like reference numerals represent like parts.
In general, the system 100 improves the operation of an ATM terminal 102 by detecting errors in the dispensing of cash from an ATM terminal 102 in response to a withdrawal request. The system 100 can help prevent the wrong amount or denominations of cash being dispensed to users. Therefore, the system 100 improves the operation of the ATM terminal 102.
ATM terminal 102 is generally any automated dispensing device configured to dispense items when users interact with the dispensing device. For example, the ATM terminal 102 may include or be provided with a terminal device for dispensing cash, tickets, scrip, travelers' checks, airline tickets, gaming materials, other items of value, etc. In a particular embodiment, ATM terminal 102 is an automated teller machine that allows users to withdraw cash, check balances, and/or make deposits interactively using, for example, a magnetically encoded card, to perform transactions.
Typically, the ATM terminal 102 includes cassettes 140 to hold different currency denominations 142. Some vendors of the ATM terminals 102 may produce an ATM terminal 102 that has dedicated places for different cassettes 140. Some vendors of the ATM terminals 102 may produce an ATM terminal 102 in which the cassettes 140 can be placed interchangeably in different places. Each of the cassettes 140 is associated with a specific currency denomination 142. For example, a first cassette 140-1 is associated with a first currency denomination 142-1, e.g., 10 USD; a second cassette 140-2 is associated with a second currency denomination 142-2, e.g., 20 USD; and an n-th cassette 140-n is associated with an n-th currency denomination 142-n. The ATM terminal 102 includes one or more cameras 170 positioned in a pathway of the bills being dispensed from the cassettes 140 to the cash dispenser 108 to capture images 132 of the bills being dispensed from the cassettes 140. The cameras 170 are configured to send the images 132 of the bills being dispensed from the cassettes 140 to the image processing engine 122. The image processing engine 122 determines whether the actual dispensed cash 136 from the cassettes 140 matches the expected cash 134 which was requested by the user 150. Details of the operation of determining the actual dispensed cash 136 is described in conjunction with the image processing engine 122 in
Processor 120 comprises one or more processors operably coupled to the user interface 104, network interface 106, cash dispenser 108, memory 130, and cassettes 140. The processor 120 is any electronic circuitry including, but not limited to, state machines, one or more central processing unit (CPU) chips, logic units, cores (e.g. a multi-core processor), field-programmable gate array (FPGAs), application-specific integrated circuits (ASICs), or digital signal processors (DSPs). The processor 120 may be a programmable logic device, a microcontroller, a microprocessor, or any suitable combination of the preceding. The one or more processors are configured to process data and may be implemented in hardware or software. For example, the processor 120 may be 8-bit, 16-bit, 32-bit, 64-bit, or of any other suitable architecture. The processor 120 may include an arithmetic logic unit (ALU) for performing arithmetic and logic operations, processor registers that supply operands to the ALU and store the results of ALU operations, and a control unit that fetches instructions from memory and executes them by directing the coordinated operations of the ALU, registers and other components. The one or more processors are configured to implement various instructions (e.g., software instructions 124). For example, the one or more processors are configured to execute instructions to implement image processing engine 122. In this way, processor 120 may be a special purpose computer designed to implement the functions disclosed herein. In an embodiment, the processor 120 is implemented using logic units, FPGAs, ASICs, DSPs, or any other suitable hardware. The image processing engine 122 is configured to operate as described in
Network interface 106 is configured to enable wired and/or wireless communications (e.g., to other computing devices). The network interface 106 is configured to communicate data between the ATM terminal 102 and other devices, systems, or domain(s). For example, the network interface 106 may comprise a WIFI interface, a local area network (LAN) interface, a wide area network (WAN) interface, a modem, a switch, or a router. The processor 120 is configured to send and receive data using the network interface 106. The network interface 106 may be configured to use any suitable type of communication protocol as would be appreciated by one of ordinary skill in the art.
Memory 130 may be volatile or non-volatile and may comprise read-only memory (ROM), random-access memory (RAM), ternary content-addressable memory (TCAM), dynamic random-access memory (DRAM), and static random-access memory (SRAM). Memory 130 may be implemented using one or more disks, tape drives, solid state drives, or the like. Memory 130 stores images 132, expected cash 134, actual dispensed cash 136, software instructions 124, and/or any other data or instructions. The software instructions 124 may comprise any suitable set of instructions, logic, rules, or code operable to perform the functions of the image processing engine 122 when executed by processor 120. The stored images 132, expected cash 134, actual dispensed cash 136, and software instructions 124 are described in more detail below.
Image Processing Engine
Image processing engine 122 may be implemented using software instructions 124 executed by the processor 120, and is configured to detect errors in the dispensing side of the ATM terminal 102. In some cases, an error in the dispensing side of the ATM terminal 102 may be a case where the actual dispensed cash 136 does not match the expected cash 134 (e.g., requested from a user 150). In such cases, one or more errors such as where a cassette 140 is loaded with a currency denomination 142 not associated with the cassette 140 and/or a cassette 140 is misplaced in a slot not dedicated for the cassette 140 may have led to discrepancies between the actual dispensed cash 136 and the expected cash 134.
For example, consider a case where the user 150 requests to withdraw 110 USD. The processor 120 may send a first signal command to a first cassette 140-1 associated with a 10 USD denomination 142-1 to dispense one 10 USD bill. The processor 120 may also send a second signal command to a second cassette 140-2 associated with a 20 USD denomination 142-2 to dispense five 20 USD bills. For this particular example, assume that (due to an error) the first cassette 140-1 is loaded with a currency denomination 142 not associated with the first cassette 140-1, such as 20 USD denomination 142-2, and dispenses one 20 USD bill instead of one 10 USD bill. Also assume that the second cassette 140-2 is correctly loaded with 20 USD bills, and dispenses five 20 USD bills. Thus, the actual dispensed cash 136 is 120 USD which does not match the expected cash 134 of 110 USD requested by the user 150.
In another example for the case above, assume that the first cassette 140-1 is misplaced in a slot dedicated to the second cassette 140-2 and the second cassette 140-2 is misplaced in a slot dedicated to the first cassette 140-1. Thus, the first signal command which was meant for the first cassette 140-1 goes to the second cassette 140-2 and the second signal command which was meant for the second cassette 140-2 goes to the first cassette 140-1. Therefore, the first cassette 140-1 which was supposed to dispense one 10 USD bill, dispenses five 10 USD bills; and the second cassette 140-2 which was supposed to dispense five 20 USD bills, dispenses one 20 USD bill. This leads to the total actual dispensed cash 136 of 70 USD which does not match the expected cash 134 of 110 USD requested by the user 150. In some cases, an error in the dispensing side of the ATM terminal 102 may be a case where for at least one cassette 140, an expected number of bills being dispensed from the cassette 140 does not match an actual number of bills dispensed from the cassette 140. For example, consider a case where the user 150 requests to withdraw 110 USD. For this particular example, assume that the first cassette 140-1 dispenses three 10 USD bills; and that the second cassette 140-2 dispenses four 20 USD bills. Thus, the total actual dispensed cash 136 will be 110 USD which matches the expected cash 134. However, the first actual number of bills dispensed from the first cassette 140-1 (i.e., three 10 USD bills) does not match a first expected number of bills with 10 USD currency denomination 142-1 (one 10 USD bill). Also, the second actual number of bills dispensed from the second cassette 140-2 (i.e., four 20 USD bills) does not match a second expected number of bills with 20 USD currency denomination 142-1 (five 20 USD bills).
In one embodiment, the image processing engine 122 is configured to receive images 132 of bills being dispensed from the cassettes 140 from the camera 170. The image processing engine 122 determines a currency denomination 142 of each bill by comparing its specific characteristics to specific characteristics of bills with known denominations 142. The image processing engine 122 may use an image recognition algorithm that is previously trained using a training dataset to determine the currency denominations 142 of bills. This training dataset may include bills from different currency denominations 142 labeled with their currency denominations. In some examples, several characteristics of the bills are considered in the training dataset, such as a bar code, colors, sizes, graphics, texts, hologram signatures, and digits representing a denomination 142 of each bill on both sides. In some embodiments, the image processing engine 122 is configured to detect the denomination 142 of each bill even when they are not in a new condition. As such, the training dataset may include images of bills in different conditions, such as new, wrinkled, taped, written on, torn, etc. For example, TABLE 1 illustrates an exemplary training dataset of currency denominations 142 for two bills. TABLE 1 described here is illustrative only and is not meant to limit the scope of the invention or its embodiments.
As illustrated in TABLE 1, images of three 10 USD bills and three 20 USD bills in different conditions are used to train the image processing engine 122. Once the image processing engine 122 is trained with the training dataset, the image processing engine 122 may be validated and tested to determine denominations 142 of bills in which images were not among the training dataset.
As discussed above, some ATM terminal 102 vendors produce cassettes 140 that may be placed interchangeably in different slots inside the ATM terminal 102. Thus, it is important to determine whether each cassette 140 is placed in the right slot.
When the processor 120 determines that a bill will be dispensed from a cassette 140, the camera 170 may also take images 132 of the cassette 140 and send them to the image processing engine 122. The image processing engine 122 may then determine whether the cassette 140 is placed in its dedicated slot by comparing the detected currency denomination 142 of cassette 140 (by the image processing engine 122) by the expected currency denomination 142 of cassette 140 known to the processor 120 based on its location (e.g., stored in memory 130). For example, consider a case where a 20-dollar cassette 140-2 is misplaced in a 10-dollar cassette 140-1. In this case, when a user 150 requests to withdraw 10 USD, a 20 USD is incorrectly dispensed from the 20-dollar cassette 140-2. The image processing engine 122 compares currency denomination of the 10 USD bill which was expected with the currency denomination 142 of the second cassette 140-2 (i.e., 20 USD) which was dispensed, and determines that the dispensed cash denomination (e.g., 20 USD) does not match the expected cash denomination (e.g., 10 USD), and thereby concludes that second cassette 140-2 is placed in a wrong slot and generates an alert indicating that the second cassette 140-2 is placed in a wrong slot.
In some embodiments, a cassette 140 may be loaded with a wrong currency denomination 142 (e.g., by an employee of a vendor of the ATM terminal 102). As such, it is important to determine whether each cassette 140 is loaded with its associated currency denomination 142. Thus, the image processing engine 122 may also be configured to determine whether a cassette 140 is loaded with its expected currency denomination 142 by comparing the dispensed currency denomination from the cassette 140 and the expected currency denomination 142 of the cassette 140. For example, consider a case where a 20-dollar cassette 140-2 is loaded with one or more 10 USD bills (assuming that the image processing engine 122 has already determined that the 20-dollar cassette 140-2 is placed in its correct slot). In this case, when a user 150 requests to withdraw 20 USD, a 10 USD may be incorrectly dispensed from the 20-dollar cassette 140-2. In this case, image processing engine 122 compares the currency denomination of the dispensed cash (e.g., 10 USD) with the expected cash denomination of the 20-dollar cassette 140-2 (e.g., 20 USD), determines that they don't match and concludes that the 20-dollar cassette 140-2 is loaded with at least one 10 USD bill. Image processing engine 122 then generates an alert indicating that the 20-dollar cassette 140-2 includes at least some bills of a denomination that is not associated with the 20-dollar cassette 140-2.
A First Example of a Method for Detecting Errors in an ATM Terminal
The method 300 begins at step 302 where the ATM terminal 102 receives a withdrawal request 160 from the user 150, such as via the user interface 104, to dispense cash from the cash dispenser 108. At step 304, processor 120 determines the currency denominations and a number of each denomination needed to fulfill the withdrawal request 160 in order to determine the expected cash 134 to be dispensed from the ATM terminal 102. The expected cash 134 is a sum of multiplications of each currency denomination with its number of bills. In one example, assuming that the user 150 has requested to withdraw 100 USD, the processor 120 determines that, based on available bills in the cassettes 140, five 20 USD bills are needed to be dispensed from the cassettes 140 to fulfill the user's request. In another example, assuming that the user 150 has requested to withdraw 110 USD, the processor 120 determines that, based on available bills in the cassettes 140, one 10 USD from the first cassette 140-1 (which is associated with 10 USD denomination) and five 20 USD bills from the second cassette 140-2 (which is associated with 20 USD denomination) are needed to be dispensed to fulfill the user's request.
At step 306, the processor 120 sends signal commands to the cassettes 140 to dispense the expected cash 134 based on the determined currency denominations and their number of bills to fulfill the withdrawal request 160. For example, assuming that the user 150 has requested to withdraw 110 USD from the ATM terminal 102, the processor 120 sends a first signal command to the first cassette 140-1 to dispense one 10 USD bill; and sends a second signal command to the second cassette 140-2 to dispense five 20 USD bills.
In step 308, the image processing engine 122 receives the images 132 of the bills being dispensed from the cassettes 140 captured by the camera 170. In some embodiments, the image processing engine 122 receives the images 132 in real-time when each bill is dispensed from its corresponding cassette 140. In some embodiments, a plurality of cameras 170 may be positioned in the pathway of the bills being dispensed from the cassettes 140 to the cash dispenser 108. For example, a first camera 170 may be positioned with respect to the first cassette 140-1 and capture images 132 of bills being dispensed from it; and a second camera 170 may be positioned with respect to the second cassette 140-2 and capture images 132 of bills being dispensed from it; and so on. In this example, each of the cameras 170 sends its captured images 132 to the processor 120.
In step 310, the image processing engine 122 determines the total actual dispensed cash 136 from the cassettes 140 based on the received images 132 by using an image recognition algorithm as described in
In step 312, the image processing engine 122 determines whether the actual dispensed cash 136 from the cassettes 140 matches the expected cash 134 requested by the user 150 by using an image recognition algorithm as described in
If, however, the actual dispensed cash 136 does not match the expected cash 134, the method 300 proceeds to the step 316 where, the processor 120 generates an alert followed by one or more actions, such as displaying a failed transaction message using the user interface 104 of the ATM terminal 102, initiating a service request to a vendor of the ATM terminal 102, or some other appropriate action. Continuing the second example described in step 310 where the actual dispensed cash 136 is 120 USD and the expected cash 134 is 110 USD, the processor 120 generates an alert indicating that the actual dispensed cash 136 is not equal to the expected cash 134. Similarly, continuing the third example described in step 310 where the actual dispensed cash 136 is 70 USD and the expected cash 134 is 110 USD, the processor 120 generates an alert indicating that the actual dispensed cash 136 is not equal to the expected cash 134.
A Second Example of a Method for Detecting Errors in an ATM Terminal
In some embodiments, the system 100 and method 300 may be configured to determine whether an actual number of bills dispensed from each cassette 140 matches an expected number of bills to be dispensed from each corresponding cassette 140.
As such, referring back to step 304, in some embodiments, the processor 120 may determine a different expected number of bills from different cassettes 140 to be dispensed to fulfill the withdrawal request 160. For example, the processor 120 may determine a first expected number of bills from the first cassette 140-1; and a second expected number of bills from the second cassette 140-2 to be dispensed to fulfill the withdrawal request 160. In this example, the expected cash 134 to be dispensed from the ATM terminal 102 to fulfill the withdrawal request 160 is a sum of the first expected number of bills from the first cassette 140-1 multiplied by the first currency denomination 142-1 and the second expected number of bills from the second cassette 140-2 multiplied by the second currency denomination 142-2. For example, assume that the user 150 has requested to withdraw 110 USD. In this particular example, the processor 120 determines that, based on available bills in the cassettes 140, the first expected number of bills from the first cassette 140-1 (which is associated with 10 USD denomination 142-1) is one; and the second expected number of bills from the second cassette 140-2 (which is associated with 20 USD denomination 142-2) is five. Thus, the processor 120 determines that one 10 USD bill and five 20 USD bills are needed to be dispensed to fulfill the user's request.
The camera 170 captures the images 132 of the actual dispensed bills and sends them to the image processing engine 122. The image processing engine 122 may then determine separate actual number of bills being dispensed from different cassettes 140 based on the received images 132. For example, the image processing engine 122 may determine a first actual number of bills being dispensed from the first cassette 140-1; and a second actual number of bills being dispensed from the second cassette 140-2. For example, assume that the user 150 has requested to withdraw 110 USD. Also assume that one 10 USD bill from the first cassette 140-1; and five 20 USD bills from the second cassette 140-2 are being dispensed, respectively. Thus, the image processing engine 122 determines the first actual number of 10 USD bills being dispensed from the first cassette 140-1 is one; and the second actual number of 20 USD bills being dispensed from the second cassette 140-2 is five. The image processing engine 122 may also determine whether the first actual number of bills matches the first expected number of bills; and whether the second actual number of bills matches the second expected number of bills. Thus, if the first actual number of bills does not match the first expected number of bills, the processor 120 generates an alert indicating that the first cassette 140-1 is faulty; and if the second actual number of bills does not match the second expected number of bills, the processor 120 generates an alert indicating that the second cassette 140-2 is faulty. For example, assume that the user 150 has requested to withdraw 110 USD. For this particular example, assume that (due to an error) the first cassette 140-1 is misplaced in a slot dedicated to the second cassette 140-2; and the second cassette 140-2 is misplaced in a slot dedicated to the first cassette 140-1. Also, assume that the first cassette 140-1 is correctly loaded with 10 USD denomination 142-1; and the second cassette 140-2 is correctly loaded with 20 USD denomination 142-2. Thus, the first signal command which was meant for the first cassette 140-1 to dispense one 10 USD bill (corresponding to the first expected number of bills) goes to the second cassette 140-2. The second signal command which was meant for the second cassette 140-2 to dispense five 20 USD bills (corresponding to the second expected number of bills) goes to the first cassette 140-1. Therefore, the first cassette 140-1 dispenses five 10 USD bills; and the second cassette dispenses one 20 USD bill. The camera 170 captures the images 132 of these six bills and sends it to the image processing engine 122. The image processing engine 122 determines that the first actual number of bills is five 10 USD bills from the first cassette 140-1; and the second actual number of bills is one 20 USD bill from the second cassette 140-2.
In this particular example, the image processing engine 122 determines that the first actual number of bills (i.e., five 10 USD bills) does not match the first expected number of bills (i.e., one 10 USD bill). The image processing engine 122 also determines that the second actual number of bills (i.e., one 20 USD bill) does not match the second expected number of bills (i.e., five 20 USD bills). Therefore, the image processing engine 122 generates an alert indicating that the first cassette 140-1 and the second cassette 140-2 are faulty.
In some embodiments, the processor 120 may determine the order of dispensing bills from different cassettes 140 and in that order determine whether any of the cassettes 140 is dispensing a currency denomination 142 not associated with its currency denomination 142 and/or whether a cassette 140 is misplaced with another cassette 140 as described in
Then, the camera 170 captures a second set of images 132 of bills being dispensed from the second cassette 140-2 and sends those images 132 to the processor 120. The image processing engine 122 may determine whether the currency denominations 142 of bills from the second cassette 140-2 matches the second currency denomination 142-2 and/or the second cassette 140-2 is misplaced with another cassette 140 by using the image recognition algorithm as described in
For example, consider a case where the user 150 requests to withdraw 110 USD. For this particular example, assume that (due to an error) the first cassette 140-1 is loaded with a currency denominations 142 that is not associated with the first cassette 140-1, such as 20 USD denomination 142-2. Also, assume that the second cassette 140-2 is correctly loaded with 20 USD denominations 142-2. Thus, after receiving the signal commands from the processor 120, the first cassette 140-1 dispenses one 20 USD bill; and the second cassette 140-2 dispenses five 20 USD bills. The camera 170 captures the first set of images 132 of the one 20 USD bill being dispensed from the first cassette 140-1 and sends them to the image processing engine 122. The image processing engine 122 determines that the currency denomination 142 of the 20 USD dispensed from the first cassette 140-1 does not match the first currency denomination 142-1 associated with the first cassette 140-1 (i.e., 10 USD denomination 142-1) using the image recognition algorithm described in
Then, the camera 170 captures the second set of images 132 of the five 20 USD bills and sends them to the image processing engine 122. The image processing engine 122 determines that the currency denomination 142 of the five 20 USD bills dispensed from the second cassette 140-2 matches the second currency denomination 142-2 associated with the second cassette 140-2 (i.e., 20 USD denomination 142-2) using the image recognition algorithm described in
Then, the camera 170 captures the second set of images 132 of the five 20 USD bills and sends them to the image processing engine 122. The image processing engine 122 determines that the currency denomination 142 of the five 20 USD bills dispensed from the second cassette 140-2 matches the second currency denomination 142-2 associated with the second cassette 140-2 (i.e., 20 USD denomination 142-2) using the image recognition algorithm described in
In some embodiments where a cassette 140 is flagged as faulty, the processor 120 may be configured to use another cassette 140 to fulfill the user's request. For example, if the second cassette 140-2 (associated with the 20 USD denomination 142-2) is flagged as faulty, the processor 120 may be configured to calculate a new number of bills form another cassette 140 (e.g., use two 10 USD bills from the first cassette 140-1) to fulfill the user's 150 withdrawal request.
While several embodiments have been provided in the present disclosure, it should be understood that the disclosed systems and methods might be embodied in many other specific forms without departing from the spirit or scope of the present disclosure. The present examples are to be considered as illustrative and not restrictive, and the intention is not to be limited to the details given herein. For example, the various elements or components may be combined or integrated in another system or certain features may be omitted, or not implemented.
In addition, techniques, systems, subsystems, and methods described and illustrated in the various embodiments as discrete or separate may be combined or integrated with other systems, modules, techniques, or methods without departing from the scope of the present disclosure. Other items shown or discussed as coupled or directly coupled or communicating with each other may be indirectly coupled or communicating through some interface, device, or intermediate component whether electrically, mechanically, or otherwise. Other examples of changes, substitutions, and alterations are ascertainable by one skilled in the art and could be made without departing from the spirit and scope disclosed herein.
To aid the Patent Office, and any readers of any patent issued on this application in interpreting the claims appended hereto, applicants note that they do not intend any of the appended claims to invoke 35 U.S.C. § 112(f) as it exists on the date of filing hereof unless the words “means for” or “step for” are explicitly used in the particular claim.
Number | Name | Date | Kind |
---|---|---|---|
2950799 | Timms | Aug 1960 | A |
2967452 | Patzer | Jan 1961 | A |
3090485 | Moore | May 1963 | A |
3122227 | Bookout et al. | Feb 1964 | A |
3256968 | Riddle et al. | Jun 1966 | A |
3340978 | Haville | Sep 1967 | A |
4253016 | Hirose | Feb 1981 | A |
4442541 | Finkel et al. | Apr 1984 | A |
5014325 | Moritomo | May 1991 | A |
5199543 | Kamagami et al. | Apr 1993 | A |
5216502 | Katz | Jun 1993 | A |
5253167 | Yoshida et al. | Oct 1993 | A |
5260582 | Danek et al. | Nov 1993 | A |
5563393 | Coutts | Oct 1996 | A |
5607040 | Mathurin, Sr. | Mar 1997 | A |
5666157 | Aviv | Sep 1997 | A |
6131718 | Witschorik | Oct 2000 | A |
6550671 | Brown et al. | Apr 2003 | B1 |
7093750 | Block et al. | Aug 2006 | B1 |
7230223 | Jespersen et al. | Jun 2007 | B2 |
7595816 | Enright et al. | Sep 2009 | B1 |
7724938 | Pareskevakos | May 2010 | B2 |
7748615 | VanKirk et al. | Jul 2010 | B2 |
7801330 | Zhang et al. | Sep 2010 | B2 |
7984847 | Knouff et al. | Jul 2011 | B1 |
8078518 | Goertz et al. | Dec 2011 | B2 |
8210426 | Steinbach et al. | Jul 2012 | B1 |
8630950 | Saegert et al. | Jan 2014 | B2 |
8944317 | Lewis et al. | Feb 2015 | B2 |
9911104 | Magee et al. | Mar 2018 | B2 |
10176466 | Block et al. | Jan 2019 | B2 |
10290052 | Quesenberry et al. | May 2019 | B1 |
10353689 | Mishra et al. | Jul 2019 | B2 |
10395199 | Gibson et al. | Aug 2019 | B1 |
20040024709 | Yu et al. | Feb 2004 | A1 |
20040141059 | Enright et al. | Jul 2004 | A1 |
20040215566 | Meurer | Oct 2004 | A1 |
20070131757 | Hamilton et al. | Jun 2007 | A1 |
20100042541 | Kang et al. | Feb 2010 | A1 |
20150076223 | Graef | Mar 2015 | A1 |
20150363755 | Walden et al. | Dec 2015 | A1 |
20150379489 | Gopalakrishnan et al. | Dec 2015 | A1 |
20170221295 | Pont et al. | Aug 2017 | A1 |
20190304232 | Nicol | Oct 2019 | A1 |
20200342704 | Pechinko | Oct 2020 | A1 |
Number | Date | Country |
---|---|---|
2 304 281 | Feb 2000 | CA |
2 244 838 | Dec 1991 | GB |
2015-21152 | Mar 2015 | JP |
20 0357713 | Jul 2004 | KR |
101002722 | Jul 2007 | KR |
100883558 | Mar 2008 | KR |
101016217 | Aug 2010 | KR |