.: Click here to download :.
Optical character recognition (OCR) is the translation of optically scanned bitmaps of printed or written text characters into character codes, such as ASCII.
This is an efficient way to turn hard-copy materials into data files that can be edited and otherwise manipulated on a computer. This is the technology long
used by libraries and government agencies to make lengthy documents quickly available electronically. Advances in OCR technology have spurred its increasing
use by enterprises. For many document-input tasks, OCR is the most cost-effective and speedy method available. And each year, the technology frees
acres of storage space once given over to file cabinets and boxes full of paper documents. Before OCR can be used, the source material must be scanned using an
optical scanner (and sometimes a specialized circuit board in the PC) to read in the page as a bitmap (a pattern of dots). Software to recognize the images is also
required.
The OCR software then processes these scans to differentiate between images and text and determine what letters are represented in the light and dark areas.
Older OCR systems match these images against stored bitmaps based on specific fonts. The hit-or-miss results of such pattern-recognition systems helped
establish OCR's reputation for inaccuracy. Today's OCR engines add the multiple algorithms of neural network technology to analyze the stroke edge, the line of
discontinuity between the text characters, and the background. Allowing for irregularities of printed ink on paper, each algorithm averages the light and dark
along the side of a stroke, matches it to known characters and makes a best guess as to which character it is. The OCR software then averages or polls the results
from all the algorithms to obtain a single reading.
Our software package proposes to solve the classification of isolated handwritten characters and digits
of the UJI Pen Characters Data Set using Neural Networks. The data consists of
samples of 26 characters and 10 digits written by 11 writers on a tablet PC. The characters
(in standard UNIPEN format) are written both in upper and lower case and there is a
whole two set of characters per writer. So the output should be in one of the 35 classes.
The ultimate objective is building a writer independent model for each character.
The selection of valuable features is crucial in character
recognition, therefore a new and meaningful set of features, the Uniform
Differential Normalized Coordinates (UDNC), introduced by C. Agell, is adopted. These features
are shown to improve the recognition rate using simple classification
algorithms so they are used to train a Neural Network and test its
performance on UJI Pen Characters Data Set.
Index Terms: Matlab, source, code, ocr, optical character recognition, scanned text, written text, ascii, isolated character.
Figure 1. Written text |
|||||||||||||||
A simple and effective source code for Optical Character Recognition. |
|||||||||||||||
Demo code (protected
P-files) available for performance evaluation. Matlab Image Processing Toolbox and Matlab Neural Network Toolbox are required. |
|||||||||||||||
Release |
Date |
Major features |
|||||||||||||
1.0 |
2010.01.25 |
|
|||||||||||||
We recommend to check the secure connection to PayPal, in order to avoid any fraud. This donation has to be considered an encouragement to improve the code itself. |
|||||||||||||||
Optical Character Recognition System - Click here for
your donation. In order to obtain the source code you
have to pay a little sum of money: 200 EUROS (less
than 280 U.S. Dollars). |
|||||||||||||||
Once you have done this, please email us luigi.rosa@tiscali.it As soon as possible (in a few days) you will receive our new release of Optical Character Recognition System. Alternatively, you can bestow using our banking coordinates:
|
The authors have no relationship or partnership
with The Mathworks. All the code provided is written in Matlab
language (M-files and/or M-functions), with no dll or other
protected parts of code (P-files or executables). The code was
developed with Matlab 2006a. Matlab Image Processing Toolbox and Matlab Neural Network Toolbox are required.
The code provided has to be considered "as is" and it is without any kind of warranty. The
authors deny any kind of warranty concerning the code as well
as any kind of responsibility for problems and damages which may
be caused by the use of the code itself including all parts of
the source code.