Search

US-12626322-B1 - Machine-learning for enhanced machine reading of non-ideal capture conditions

US12626322B1US 12626322 B1US12626322 B1US 12626322B1US-12626322-B1

Abstract

Implementations of the present disclosure include receiving a training image, providing a hash pattern that is representative of the training image, applying a plurality of filters to the training image to provide a respective plurality of filtered training images, identifying a filter to be associated with the hash pattern based on the plurality of filtered training images, and storing a mapping of the filter to the hash pattern within a set of mapping in a data store.

Inventors

  • Reynaldo Medina, III

Assignees

  • UNITED SERVICES AUTOMOBILE ASSOCIATION (USAA)

Dates

Publication Date
20260512
Application Date
20230606

Claims (17)

  1. 1 . A computer-implemented method executed by at least one processor, the method comprising: receiving an image captured by a computing device; processing the image to generate an image hash pattern for the image, comprising: scaling the image to generate a micro-image of the image, applying an edge detection process to the micro-image generated by scaling the image to generate a filtered micro-image, wherein the edge detection process comprises using a convolutional neural network to generate the filtered micro-image, wherein the filtered micro-image includes one or more edges of one or more objects within the micro-image, and wherein at least one of the one or more objects include text, generating the image hash pattern based on the filtered micro-image; filtering the image using a first filter selected based on the image hash pattern to obtain a filtered image; determining text data from the filtered image; and before filtering the image using the first filter, identifying the first filter based on a mapping of filters to hash patterns stored in a data store, wherein identifying the first filter based on the mapping comprises determining that the image hash pattern sufficiently matches a first hash pattern mapped to the first filter, wherein determining that the image hash pattern sufficiently matches the first hash pattern mapped to the first filter comprises calculating a Hamming distance between the image hash pattern and the first hash pattern, and comparing the Hamming distance to a threshold Hamming distance.
  2. 2 . The method of claim 1 , wherein the image is a scanned image of a document to be used in executing a transaction.
  3. 3 . The method of claim 2 , wherein the document is a negotiable instrument and the transaction is to deposit the negotiable instrument at a financial institution.
  4. 4 . The method of claim 1 , further comprising: executing a transaction with the determined text data from the filtered image.
  5. 5 . The method of claim 1 , wherein determining text data is performed by optical character recognition (OCR) of the filtered image.
  6. 6 . The method of claim 1 , wherein the image hash pattern comprises a binary string.
  7. 7 . A system comprising: a data store for storing data; and at least one processor configured to interact with the data store, the at least one processor being further configured to execute computer-readable instructions to perform operations comprising: receiving an image captured by a computing device; processing the image to generate an image hash pattern for the image, comprising: scaling the image to generate a micro-image of the image, applying an edge detection process to the micro-image generated by scaling the image to generate a filtered micro-image, wherein the edge detection process comprises using a convolutional neural network to generate the filtered micro-image, wherein the filtered micro-image includes one or more edges of one or more objects within the micro-image, and wherein at least one of the one or more objects include text, generating the image hash pattern based on the filtered micro-image; filtering the image using a first filter selected based on the image hash pattern to obtain a filtered image; determining text data from the filtered image; and before filtering the image using the first filter, identifying the first filter based on a mapping of filters to hash patterns stored in a data store, wherein identifying the first filter based on the mapping comprises determining that the image hash pattern sufficiently matches a first hash pattern mapped to the first filter, wherein determining that the image hash pattern sufficiently matches the first hash pattern mapped to the first filter comprises calculating a Hamming distance between the image hash pattern and the first hash pattern, and comparing the Hamming distance to a threshold Hamming distance.
  8. 8 . The system of claim 7 , wherein the image hash pattern comprises a binary string.
  9. 9 . The system of claim 7 , wherein the operations further comprise: executing a transaction with the determined text data from the filtered image.
  10. 10 . The system of claim 7 , wherein determining text data is performed by optical character recognition (OCR) of the filtered image.
  11. 11 . The system of claim 7 , wherein the image is a scanned image of a document to be used in executing a transaction.
  12. 12 . The system of claim 11 , wherein the document is a negotiable instrument and the transaction is to deposit the negotiable instrument at a financial institution.
  13. 13 . A non-transitory 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 comprising: receiving an image captured by a computing device; processing the image to generate an image hash pattern for the image, comprising: scaling the image to generate a micro-image of the image, applying an edge detection process to the micro-image generated by scaling the image to generate a filtered micro-image, wherein the edge detection process comprises using a convolutional neural network to generate the filtered micro-image, wherein the filtered micro-image includes one or more edges of one or more objects within the micro-image, and wherein at least one of the one or more objects include text, generating the image hash pattern based on the filtered micro-image; filtering the image using a first filter selected based on the image hash pattern to obtain a filtered image; determining text data from the filtered image; and before filtering the image using the first filter, identifying the first filter based on a mapping of filters to hash patterns stored in a data store, wherein identifying the first filter based on the mapping comprises determining that the image hash pattern sufficiently matches a first hash pattern mapped to the first filter, wherein determining that the image hash pattern sufficiently matches the first hash pattern mapped to the first filter comprises calculating a Hamming distance between the image hash pattern and the first hash pattern, and comparing the Hamming distance to a threshold Hamming distance.
  14. 14 . The non-transitory computer-readable storage medium of claim 13 , wherein the image hash pattern comprises a binary string.
  15. 15 . The non-transitory computer-readable storage medium of claim 13 , wherein the operations further comprise: executing a transaction with the determined text data from the filtered image.
  16. 16 . The non-transitory computer-readable storage medium of claim 15 , wherein the transaction is to deposit a negotiable instrument at a financial institution.
  17. 17 . The non-transitory computer-readable storage medium of claim 13 , wherein determining text data is performed by optical character recognition (OCR) of the filtered image.

Description

CROSS-REFERENCE TO RELATED APPLICATIONS This application is a continuation application of and claims priority under 35 U.S.C. § 120 to U.S. application Ser. No. 17/983,931, filed on Nov. 9, 2022, which is a continuation application of and claims priority to U.S. application Ser. No. 16/679,833, filed on Nov. 11, 2019, now U.S. Pat. No. 11,514,548, which is a continuation application of and claims priority to U.S. application Ser. No. 15/716,806, filed on Sep. 27, 2017, now U.S. Pat. No. 10,521,878, the entire contents of each of which are incorporated herein by reference. BACKGROUND Technological advancement has enabled physical documents to be converted to digital files, and data recorded in the physical documents to be captured as digital data. Such digital files can be used to facilitate transactions. For example, remote deposit capture (RDC) enables a user to capture an image of a negotiable instrument, such as a check, to provide a digital file (e.g., image file), which can be used to deposit the negotiable instrument at a financial institution. Transaction data can be determined from the digital file, which can be used to provide information required to complete the deposit. Capture of the physical document to a digital file can be imperfect, which can frustrate subsequent handling of the digital file. For example, a user can use a device (e.g., a smartphone) to capture an image (recorded in a digital file) of a negotiable instrument. If the negotiable instrument is not properly aligned, the image is blurry, and/or the lighting insufficient, it may not be possible to accurately and/or efficiently determine transaction data. Consequently, the digital image may be rejected, and another image required. This is not only detrimental to the user's experience (e.g., frustrating users), it results in inefficiencies with respect to the underlying resources (e.g., processors, memory, communication bandwidth), as processes need be repeated. SUMMARY This specification relates to automatically applying a filter of a plurality of filters to an image to enable processing of the image for determining data captured in the image. In general, innovative aspects of the subject matter described in this specification can be embodied in methods that include actions of receiving a training image, providing a hash pattern that is representative of the training image, applying a plurality of filters to the training image to provide a respective plurality of filtered training images, identifying a filter to be associated with the hash pattern based on the plurality of filtered training images, and storing a mapping of the filter to the hash pattern within a set of mapping in a data store. 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: the hash pattern includes a binary string; the hash pattern is at least partially provided by one or more of providing a micro-image, applying a convolution edge filter to the micro-image, and applying bi-level encoding to the micro-image; identifying a filter to be associated with the hash pattern includes determining respective accuracies of data read from each of the filtered images, identifying a filtered image as having the highest accuracy of data read, the filtered image having been provided from the training image, and associating the filter used to provide the filtered image to the hash pattern of the training image; actions further include receiving a transaction image captured by a computing device, the transaction image representing a document to be used in executing a transaction, providing a transaction hash pattern for the transaction image, identifying the filter as to be applied to the transaction image based on the mapping, providing a filtered transaction image using the filter, and determining data from the filtered transaction image, the data being used to execute the transaction; identifying the filter as to be applied to the transaction image based on the mapping includes determining that the transaction hash pattern sufficiently matches the hash pattern mapped to the filter; determining that the transaction hash pattern sufficiently matches the hash pattern mapped to the filter includes calculating a Hamming distance between the transaction hash pattern and the hash pattern, and comparing the Hamming distance to a threshold Hamming distance; determining data is performed by optical character recognition (OCR) of the filtered transaction image; the document includes a negotiable instrument; actions further include receiving a transaction image captured by a computing device, the transaction image representing a document to be used in executing a transaction, providing a transaction hash pattern for the transaction image, and determining t