About Us Contact Us Help


Archives

Contribute

 

Technology - Check Processing

Amar Gupta
02/03/2003

Here's a surprise for those who assume that the use of handwritten checks to pay bills has gone the way of typewriters and telegrams: The use of paper checks is still on the rise, despite the rapid growth of credit and debit cards and electronic methods for bill payment.

More than 50 billion checks are processed in the United States alone every year, according to the Federal Reserve Bank and other research and adds significant costs across the economy, even if the individuals writing the checks aren't directly aware of those added costs to business.

Various research has found that it costs from $1 to $5 to process a single check and there are on average five different transactions between the time one writes a check and one gets it back. If you and I had to pay $1-$5 per check, we'd have stopped using checks a long time ago.

Check processing involves identifying handwritten characters at a very high speed and level of accuracy. It utilizes neural networks and a suite of character processing algorithms. It offers high performance.

Check Processing Technology

Check processing requires developing Intelligent Character Recognition technology for automating recognition of handwritten numerals on bank checks.

It can be divided into three stages: preprocessing, recognition, and postprocessing.

A typical bank check contains several components (e.g. name and address, date, handwritten legal amount, etc.) One of the most important components is the courtesy amount block (CAB) containing the dollar amount of the check. For each check, a scanner generates a pixel image of the courtesy amount block. The image then undergoes preprocessing.

The first step in preprocessing is segmentation. Segmentation divides each numeral into its individual digits. Punctuation such as commas and periods are identified based on their location, alignment, and size within the segment image. Once these symbols are established, each segmented digit is then passed to the recognition stage.

The next step in preprocessing normalizes each digit to a standard size of 16x16 pixels. This is followed by a process of slant correction in which the character is rotated to an upright, vertical position. Next, the character is thinned and thickened. Thinning involves turning the numeral into a bare skeleton of one pixel thickness. A good skeleton retains the connectivity and structural features of the original pattern. Once defined, it is thickened to a width of two pixels.

After preprocessing, each 16x16 segment is passed to a neural network based recognizer to read the characters. The network has been trained over a large number of feature vectors and histograms. The first layer of the network consists of 256 input nodes, one for each element in the 16x16 matrix. Furthermore, these input nodes are connected to 40 hidden nodes that actually perform the computational recognition. These hidden nodes are connected to 10 output nodes, each corresponding to the digits 0-9.

Each segment is also sent through a second neural network trained with "negative templates" of the same set of histograms as the primary network. Following recognition, the output from the two networks are compared and if they conflict, the courtesy amount image is resegmented. For example, an image that the first network recognized as a "4" is, in reality, not a "4" but falls within the acceptable parameters for a "4". Since the result from the "negative" network would indicate that the input image could not be a "4", the courtesy amount image would be resegmented and processed again.

The neural network provides a high level of accuracy and to gauge its ability to correctly identify digits, confidence measures of the recognized digit are produced by postprocessing. Below a certain confidence, the digit is rejected and either the entire courtesy amount is resegmented and processed again or the user intervenes to recognize the digit.

Amar Gupta is the Co-Director, Productivity from Information Technology (PROFIT) Initiative at the MIT Sloan School of Management. He received his B. Tech in Electrical Engineering from I.I.T., Kanpur, S.M. in Management from M.I.T., Cambridge and Ph.D. in Computer Science from I.I.T., Delhi.

(Amar Gupta can be reached at agupta@mit.edu )

Bookmark and Share |

You may also access this article through our web-site http://www.lokvani.com/


Dr. Amar Gupta

Home | About Us | Contact Us | Copyrights Help