Machine-learning for enhanced machine reading of non-ideal capture conditions
View Patent ↗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.
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 . The method of claim 1 , wherein the image is a scanned image of a document to be used in executing a transaction.
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 . The method of claim 1 , further comprising: executing a transaction with the determined text data from the filtered image.
5 . The method of claim 1 , wherein determining text data is performed by optical character recognition (OCR) of the filtered image.
6 . The method of claim 1 , wherein the image hash pattern comprises a binary string.
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 . The system of claim 7 , wherein the image hash pattern comprises a binary string.
9 . The system of claim 7 , wherein the operations further comprise: executing a transaction with the determined text data from the filtered image.
10 . The system of claim 7 , wherein determining text data is performed by optical character recognition (OCR) of the filtered image.
11 . The system of claim 7 , wherein the image is a scanned image of a document to be used in executing a transaction.
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 . 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 . The non-transitory computer-readable storage medium of claim 13 , wherein the image hash pattern comprises a binary string.
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 . The non-transitory computer-readable storage medium of claim 15 , wherein the transaction is to deposit a negotiable instrument at a financial institution.
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.