handwriting recognition system
DESCRIPTION
By Tulan Kansagara-7207222508,8866683805https://www.facebook.com/tulan.kansagaraTRANSCRIPT
R.C.P.I.T. Department of Electronics & Telecommunication
1. Introduction
The ultimate goal of handwriting recognition should be to have systems able to
understand any handwritten text. They must be able to read and understand any
handwriting and the training phase should be minimum to automatically adapt them to a
new user. They must be able to deal with a large size vocabulary, many different
handwriting styles and they need to be multilingual. Moreover, such systems must not
impose any kind of constraint to the user, (i.e. they must accept spontaneous cursive
handwriting). Besides, they must have a high degree of efficiency in the case of good
quality handwriting and must be able to interpret difficult handwriting by making use of
the maximum of available knowledge. Over the last forty years Human Handwriting
Processing (HHP) has most often been investigated within the framework of Character
(OCR) and Pattern Recognition. This situation has recently changed and, according to us,
HHP can be seen as an automatic Handwriting Reading (HR) task for the machine. We
guess that in the 3rd millennium, it is likely that HHP will be seen as a perceptual and
interpretation task closely connected with research into Human Language.
Handwriting recognition is the ability of a computer to receive and interpret
intelligible handwritten input from sources such as paper documents, photographs, touch-
screens and other devices. The image of the written text may be sensed "off line" from a
piece of paper by optical scanning (optical character recognition) or intelligent word
recognition. Alternatively, the movements of the pen tip may be sensed "on line", for
example by a pen-based computer screen surface.
Handwriting recognition principally entails optical character recognition.
However, a complete handwriting recognition system also handles formatting, performs
correct segmentation into characters and finds the most plausible words.
In studying methods of handwritten character recognition, what better system to
investigate and model than one which is already very successful at such a task the human
brain. The visual cortex contains 10 billion neurons, each with at least a thousand
synapses. Indeed, such a fantastic network is made up of smaller, modular networks
which have developed over time to perform specific tasks. These multiple regions
function in parallel and interact to form a robust system for pattern recognition.
Accidental malfunction or destruction of certain sections of this area will result in
Handwriting Recognition System Page 1 of 41
R.C.P.I.T. Department of Electronics & Telecommunication
unevenly impaired visual recognition. People with damaged regions of their visual cortex
may find that they can recognize letters but not entire words, or specific objects but not an
entire scene full of objects. Many character recognition systems appear to suffer from
similar maladies in that they can perform one segment of the overall task well but are
unable to fully duplicate the richness of the human’s character recognition ability. Newer
models exploit the same feedback and interaction between independent systems as is
present within the visual cortex and provide the diversified processing power needed in
order to function in a more robust manner.
Performance of single-algorithm systems drops precipitously as the quality of
input decreases. In such situations, a human subject can continue to perform accurate
recognition, showing only a gradual decrease in reliability. Collaboration between
separate algorithms proves beneficial, in that such systems will allow a gradation of
recognition levels expressed as probabilities or loose guesses to be passed from one level
to the next. More specifically, a front-end system will perform some useful first-order
basic processing. Then a second level of processing will be engaged which will judge
whether to assimilate the results of the first process, extend them and proceed to the next
stage with a positive recognition, or to dismiss them and reinvade the first level again
while asking for modifications.
The multiple-layered system which makes up any robust handwriting recognizer
has progressed greatly from the days when character recognition meant reading printed
numerals of a fixed-size OCR-A font. However, only recently have the successes within
the field approached the level of a truly practical handwriting recognizer. Various
accepted methods will be outlined and compared to one of the first commercially viable
general handwriting recognition products.
1.1 Optical character recognition:
It is usually abbreviated to OCR, is the mechanical or electronic translation of
scanned images of handwritten, typewritten or printed text into machine-encoded text. It
is widely used to convert books and documents into electronic files, to computerize a
record-keeping system in an office, or to publish the text on a website. OCR makes it
possible to edit the text, search for a word or phrase, store it more compactly, display or
print a copy free of scanning artifacts, and apply techniques such as machine translation,
Handwriting Recognition System Page 2 of 41
R.C.P.I.T. Department of Electronics & Telecommunication
text-to-speech and text mining to it. OCR is a field of research in pattern recognition,
artificial intelligence and computer vision.
OCR systems require calibration to read a specific font; early versions needed to
be programmed with images of each character, and worked on one font at a time.
"Intelligent" systems with a high degree of recognition accuracy for most fonts are now
common. Some systems are capable of reproducing formatted output that closely
approximates the original scanned page including images, columns and other non-textual
components.
Handwriting Recognition System Page 3 of 41
R.C.P.I.T. Department of Electronics & Telecommunication
2. Basic Concepts & Literature Survey
2.1 Literature Survey:
In 1929, G. Tauschek obtained a patent on OCR in Germany, followed by Handel
who obtained a US patent on OCR in USA in 1933 (U.S. Patent 1,915,993). Tauschek
was in 1935 also granted a US patent on his method (U.S. Patent 2,026,329). Tauschek's
machine was a mechanical device that used templates. A photodetector was placed so that
when the template and the character to be recognised was lined up for an exact match,
and a light was directed towards it, no light would reach the photodetector.
In 1950, David Shepard, a cryptanalyst at the Armed Forces Security Agency in
the United States, was asked by Frank Rowlett, who had broken the Japanese PURPLE
diplomatic code, to work with Dr. Louis Tordella to recommend data automation
procedures for the Agency. This included the problem of converting printed messages
into machine language for computer processing. Shepard decided it must be possible to
build a machine to do this, and, with the help of Harvey Cook, a friend, built "Gismo" in
his attic during evenings and weekends. This was reported in the Washington Daily News
on April 27, 1951 and in the New York Times on December 26, 1953 after his U.S.
Patent Number 2,663,758 was issued. Shepard then founded Intelligent Machines
Research Corporation (IMR), which went on to deliver the world's first several OCR
systems used in commercial operation. While both Gismo and the later IMR systems used
image analysis, as opposed to character matching, and could accept some font variation,
Gismo was limited to reasonably close vertical registration, whereas the following
commercial IMR scanners analyzed characters anywhere in the scanned field, a practical
necessity on real world documents.
The first commercial system was installed at the Readers Digest in 1955, which,
many years later, was donated by Readers Digest to the Smithsonian, where it was put on
display. The second system was sold to the Standard Oil Company of California for
reading credit card imprints for billing purposes, with many more systems sold to other
oil companies. Other systems sold by IMR during the late 1950s included a bill stub
reader to the Ohio Bell Telephone Company and a page scanner to the United States Air
Force for reading and transmitting by teletype typewritten messages. IBM and others
were later licensed on Shepard's OCR patents.
Handwriting Recognition System Page 4 of 41
R.C.P.I.T. Department of Electronics & Telecommunication
The United States Postal Service has been using OCR machines to sort mail since
1965 based on technology devised primarily by the prolific inventor Jacob Rabinow. The
first use of OCR in Europe was by the British General Post Office or GPO. In 1965 it
began planning an entire banking system, the National Giro, using OCR technology, a
process that revolutionized bill payment systems in the UK. Canada Post has been using
OCR systems since 1971. OCR systems read the name and address of the addressee at the
first mechanized sorting center, and print a routing bar code on the envelope based on the
postal code. After that the letters need only be sorted at later centers by less expensive
sorters which need only read the bar code. To avoid interference with the human-readable
address field which can be located anywhere on the letter, special ink is used that is
clearly visible under ultraviolet light. This ink looks orange in normal lighting conditions.
Envelopes marked with the machine readable bar code may then be processed.
Commercial products incorporating handwriting recognition as a replacement for
keyboard input were introduced in the early 1980s. Examples include handwriting
terminals such as the Pencept Penpad and the Inforite point-of-sale terminal. With the
advent of the large consumer market for personal computers, several commercial products
were introduced to replace the keyboard and mouse on a personal computer with a single
pointing/handwriting system, such as those from PenCept, CIC and others. The first
commercially available tablet-type portable computer was the GRiDPad from GRiD
Systems, released in September 1989. Its operating system was based on MS-DOS.
In the early 1990s, hardware makers including NCR, IBM and EO released tablet
computers running the PenPoint operating system developed by GO Corp. Pen Point used
handwriting recognition and gestures throughout and provided the facilities to third-party
software. IBM's tablet computer was the first to use the ThinkPad name and used IBM's
handwriting recognition. This recognition system was later ported to Microsoft Windows
for Pen Computing and IBM's Pen for OS/2. None of these were commercially
successful.
In recent years, several attempts were made to produce ink pens that include
digital elements, such that a person could write on paper, and have the resulting text
stored digitally. The best known of these use technology developed by Anoto which has
had some success in the education market. The general success of these products is yet to
be determined.
Handwriting Recognition System Page 5 of 41
R.C.P.I.T. Department of Electronics & Telecommunication
Although handwriting recognition is an input form that the public has become
accustomed to, it has not achieved widespread use in either desktop computers or laptops.
It is still generally accepted that keyboard input is both faster and more reliable. As of
2006, many PDAs offer handwriting input, sometimes even accepting natural cursive
handwriting, but accuracy is still a problem, and some people still find even a simple on-
screen keyboard more efficient.
2.2 Basic Concepts:
Handwriting recognition is the ability of a computer to receive and interpret
intelligible handwritten input from sources such as paper documents, photographs, touch-
screens and other devices. The image of the written text may be sensed "off line" from a
piece of paper by optical scanning (optical character recognition) or intelligent word
recognition. Alternatively, the movements of the pen tip may be sensed "on line", for
example by a pen-based computer screen surface.
Figure 2.1: Basic Block Diagram
2.2.1 On-line recognition:
On-line handwriting recognition involves the automatic conversion of text as it is
written on a special digitizer or PDA, where a sensor picks up the pen-tip movements as
well as pen-up/pen-down switching. That kind of data is known as digital ink and can be
Handwriting Recognition System Page 6 of 41
R.C.P.I.T. Department of Electronics & Telecommunication
regarded as a dynamic representation of handwriting. The obtained signal is converted
into letter codes which are usable within computer and text-processing applications.
The elements of an on-line handwriting recognition interface typically include:
A pen or stylus for the user to write with.
A touch sensitive surface, which may be integrated with, or adjacent to, an
output display.
A software application which interprets the movements of the stylus across
the writing surface, translating the resulting strokes into digital text.
2.2.2 Off-line recognition:
Off-line handwriting recognition involves the automatic conversion of text in an
image into letter codes which are usable within computer and text-processing
applications. The data obtained by this form is regarded as a static representation of
handwriting. Off-line handwriting recognition is comparatively difficult, as different
people have different handwriting styles. And, as of today, OCR engines are primarily
focused on machine printed text and ICR for hand "printed" text. There is no OCR/ICR
engine that supports handwriting recognition as of today.
Off-line character recognition often involves scanning a form or document written
sometime in the past. This means the individual characters contained in the scanned
image will need to be extracted. Tools exist that are capable of performing this step .
However, several common imperfections in this step. The most common being characters
that are connected together are returned as a single sub-image containing both characters.
This causes a major problem in the recognition stage.
Yet many algorithms are available that reduce the risk of connected characters.
Off-line handwriting recognition involves the automatic conversion of text in an image
I(x,y) into letter codes which are usable within computer and text-processing applications.
The data obtained by this form is regarded as a static representation of handwriting. The
technology is successfully used by businesses which process lots of handwritten
documents, like insurance companies. The quality of recognition can be substantially
increased by structuring the document (by using forms). The off-line handwriting
recognition is comparatively difficult, as different people have different handwriting
Handwriting Recognition System Page 7 of 41
R.C.P.I.T. Department of Electronics & Telecommunication
styles. Nevertheless, limiting the range of input can allow recognition to improve. For
example, the ZIP code digits are generally read by computer to sort the incoming mail.
Handwriting Recognition System Page 8 of 41
R.C.P.I.T. Department of Electronics & Telecommunication
3. Theory
3.1 Block Diagram:
This project is highly adaptive. With sophisticated algorithm, it should be able
detect any patterns. In our project, however, we choose to use a simple algorithm, Nearest
Neighborhood Algorithm, as we have very limited amount of time. Thus far it can only
recognize simple characters but it is easily extensible. There is no fundamental difference
between recognizing a character and any other kind of patterns using our algorithm.
We have designed and implemented a Handwriting Recognition System using a
touch pad from a Palm Pilot m125, LCD and a 89C52 microcontroller. The following is the
overall layout of our design.
Figure: 3.1 Block diagram
Our electronic drawing board integrates an easy human interface with a standard
electronic display; specifically a touchpad and a screen. We will design and implement a
Handwriting Recognition System using a touch screen/touch pad from a LCD screen and a
AT89C52 microcontroller. This project is highly adaptive. With sophisticated algorithm, it
should be able detect any patterns. In our project, however, we choose to use a simple
algorithm, Nearest Neighborhood Algorithm, as we have very limited amount of time.
Thus far it can only recognize simple characters but it is easily extensible. There is no
fundamental difference between recognizing a character and any other kind of patterns
using our algorithm.
The rationale behind the drawing board is to be able to create a free hand sketch
using the touchpad and have a real time display on a screen which can later be sent to the
computer once finalized. This idea came about after making countless reports that required
Handwriting Recognition System Page 9 of 41
R.C.P.I.T. Department of Electronics & Telecommunication
drawings that take hours to perfect on a computer when in fact with a pencil it would only
be a matter of minutes. In the market, tablets are gaining popularity but they are so
expensive. Thus we settled for using a touchpad to draw to LCD.
The original idea was to draw to a 5” TV screen using a pen input touchpad. We
had originally ordered but unfortunately it was too complex and poorly documented. We
couldn’t retrieve any signals from the pad. Thus, we decided to use a regular touchpad.
This makes our design robust due to the inaccuracy of using a finger touch as opposed to a
pen point. However, the concept remains the same to draw to a screen.
The microcontroller acts as a translator between the touchpad and the oscilloscope.
Its job is to communicate with the touchpad using any of the 4 standard protocols: serial,
ADB, PS/2, or USB and to send appropriate signals to represent the coordinates on the
oscilloscope. Our touchpad uses the ADB protocol which is MAC compatible. Also, since
the oscilloscope requires analog input signals, DACs are needed to translate the digital
output from the MCU to a form that can be recognized.
3.2 Operations and Background Math:
There are essential two three parts to this project, data acquisition via touch pad,
Recognition Algorithm.
3.2.1 Data Acquisition:
After reading through the Palm-PPP project, we realized that touch pad was not that
hard to use. The device driver, therefore, should be an easy thing to write. However, it is
not the case as they stated. As mentioned in Palm-PPP project, the touch screen has four
pins; each connected to top, right, bottom, and left side of the pad. It is also correctly stated
as a purely analog device that detects position by varying resistance between two pairs of
pins (top and bottom, left and right).
3.2.2 Background Math:
There are a lot of choices concerning the algorithm we can use to recognize
patterns. Recognition algorithms fall under two categories. We can track the motions of the
stylus for feature extraction for each pattern; or we can record positions for feature
extraction. We choose the latter since the former will involve a lot more complicated
Handwriting Recognition System Page 10 of 41
R.C.P.I.T. Department of Electronics & Telecommunication
implementations at the software level and will surely require more computational power as
offered by our microcontroller.
The mathematical fundamentals for our Nearest Neighbor algorithm are very
simple. Imagine our bit map of each pattern lives in N-dimensional space. Each pattern is a
vector in that space. As you can see, character A is the red vector in our 3d space; B is the
yellow vector and W the green. It is reasonable to expect that A is closer than B than it is to
W because A appears more similar to B than it is to W. Let A¡¯, the brown vector, be the
pattern rewritten by someone else using a stylus on a touch screen. It is closer to A than any
other vector, supposedly.
To see how close one vector is to another, we need to find the dot product between
two vectors. This would give us information on the angle between two vectors. It is also
very easy to do dot product between two vectors. It naturally brings us to the question on
how we vectorize each character. This will be explained in the software section.
3.3 Hardware/software tradeoffs:
There are no hardware and software tradeoffs in our project because we do not have
sections of the project where hardware can be substituted by software or vice versa. For
example, to have exact timing, as required by character generation, we have to use
hardware interrupt instead of any other kind of software timing scheme.
3.3.1 Recognition Algorithm:
The basic mathematical theory is explained in the High Level Design section of this
report. writeMap() essentially vectorizes 40x40 bitmap into map, a one-dimensional array,
which can be seen as a long string of zeros and ones if you serialize each byte of the array.
testChars() will then go through each character in the library and uses testLine() to perform
line by line dot product on each character. The results will be stored in rank, which
specifies the results of dot product and letter, which stores the corresponding character
ranked by their results. The following is a example of a vectorized letter E in a 21x21 array.
Handwriting Recognition System Page 11 of 41
R.C.P.I.T. Department of Electronics & Telecommunication
3.4 Circuit Diagram:
Figure: 3.2 Circuit Diagram
3.5 Working:
The initial cursor location is at the LCD screen. Thereafter, the MCU controls the
movement of the cursor according to the motion packets received from the touchpad. The
MCU maintains a cumulative sum of the relative motion packets in registers currX and
currY to convert to absolute mode. Such a conversion was necessary as we were unable to
change the touchpad mode of operation from relative to absolute.
First task: draw points to the screen. The touchpad is polled every 1/60 of a second
at line 231 and proper mapping of the packet to a point on the screen is computed. The
mapping is done by using the sign bit of x and y bytes (which were sent by the
touchpad in response to the talk register 0 command). The direction of the point is
Handwriting Recognition System Page 12 of 41
R.C.P.I.T. Department of Electronics & Telecommunication
determined by interpreting the sign bit as follow: If sign of x is 1, then draw point to the
right of current location
Second task: add special features. The MSB of Register0’s byte2 contains
information about the button press. It is cleared when button is pressed. Thus, we
manipulated this feature in order to implement three modes of operation. By default, you
enter mode1. The switches for port A are used to select any other modes. Switch0 selects
mode 1, switch1 selects mode2, and switch3 clears the screen.
Mode 1: relocate cursor:
As you move your finger on the touchpad, points are drawn to the screen in real
time. However, if you want to show discontinuity you can move the cursor to a different
area by hold down any button and moving your finger to the desired location. Release the
button to resume drawing. If the MCU interprets the button press bit as cleared, then it
draws the point in that frame and erases that point in the next frame.
Mode 2: draw a line:
We had mentioned the fact that drawing with your finger is more inaccurate than
with a pen. Hence, drawing straight lines is facilitated with this mode. Here we ran into a
synchronization problem. Between line 231 and line 30 we have a total of 60 lines to finish
any computation before the next frame is drawn. This is approximately 3.881 ms (63.625
s *61). The problem is that the total execution time taken to send the Talk Register 0
command and to receive a response is 3.764 ms in the worst case scenario. Drawing a line
in the same frame was not possible. On an even count frame, the new points are appended
to the screen buffer. The tradeoff is that due to updating at half the original rate (now
30Hz), the display seems sluggish. We attempted to compensate this by mapping each
packet to twice as many points. We have less control of curvature. Maybe with a bigger
screen and better resolution, this would be a good modification.
Mode 3: Clearing the screen:
Note that clearing the screen involves zeroing out the complete 1600 byte screen
buffer. Thus, this step was also performed in 2 frames in order to maintain proper
synchronization.
Handwriting Recognition System Page 13 of 41
R.C.P.I.T. Department of Electronics & Telecommunication
How does a touchpad work?
ADB Protocol: The protocol requires a single ADB data signal line for the two-way
communication between MCU and touchpad. This protocol is time sensitive. Essentially,
the MCU needs to know precisely when to can send the commands and when to listen for
responses.
Upon power on, the touchpad requires 200ms for calibration and self-testing. After
this, the MCU can begin sending its command packet and receive data packets. Most touch
pads have 4 commands and 4 registers. Our specific touchpad, Alps Glide point, has only 2
active registers: register0 and register3.
An ADB command is a 1-byte value that specifies the 4 bit ADB device address,
the desired action the touchpad should perform and to what register. By default the device
address is 3 and the handler ID. In order to ensure a two way communication, the
“LISTEN” and “TALK” commands need to be implemented.
Figure 3.3: ADB commands.
The TALK command requests to read the data stored in the specified register.
Register 0 is used to hold motion packet data. The MCU polls the touchpad by sending a
Talk Register 0 command. The device responds to a Talk Register 0 command only if it
has new data to send. (If more devices were used as inputs, the MCU would have to resolve
device address conflicts, collisions and the device would need to issue a service request to
signal it has new data to send.).
Handwriting Recognition System Page 14 of 41
R.C.P.I.T. Department of Electronics & Telecommunication
The LISTEN command instructs the touchpad to prepare to. receive additional data.
The device must overwrite the existing contents of the specified register with the new data.
Figure3.4: Send Command Logic.
Once the MCU sends the stop bit, it releases the data line to wait for the touchpad to
begin sending its data. If the time between the stop bit till the data start bit exceeds its
maximum range, then the MCU resumes control and resends the TALK to Register0
command. If not, the device sends the motion data stored in its Register0 which by default
consists of 2 bytes, y and x , in relative mode.
Figure 3.5: ADB Register 0
Once, the motion packet is received by the MCU, is can store the data and send
appropriate signals to the DAC to output the point onto the oscilloscope.
Initially, we had tried to overwrite register 2, in order to change the relative mode to
absolute mode. This could have been done with the LISTEN register 2 command.
Unfortunately, with this touchpad, Register 2 couldn’t even be read so a LISTEN command
Handwriting Recognition System Page 15 of 41
R.C.P.I.T. Department of Electronics & Telecommunication
would have been pointless. Due to lack of documentation, we have made several
assumptions based on the Synaptic touchpad documentation, an Apple book, and an article
we found online implementing a sample ADB manager. Since, relative mode was the only
output from this touchpad; we decided to use the oscilloscope as the display device as
opposed to the LCD since it relies on incremental values as its input.
Subsequently we also succeeded in using the LCD as the display device. In order to
use the TV with relative mode inputs, we store the current position for x and y (with a
default starting point at the centre of the screen) and update x and y with the received data
(up=-1, down=1, left=-1, right=1). Finally, the point is drawn using the video subroutine.
We are currently carrying out further tests to perfect the implementation.
3.6 Interfacing:
3.6.1 LCD Interfacing:
This is an example how to interface to the standard LCD using an AT89S52
microcontroller. I use a standard 16-character by 2-line LCD module, see schematic below.
Here, I use 4-bit interfacing.
Figure 3.6: LCD interfacing with AT89S52 microcontroller
Handwriting Recognition System Page 16 of 41
R.C.P.I.T. Department of Electronics & Telecommunication
Vcc, Vss, and Vee: While Vcc and Vss provide +5V and ground, respectively,
Vee is used for controlling LCD contrast.
RS - register select: There are two very important registers inside the LCD.
The RS pin is used for their selection as follows. If RS = 0, the instruction
command code register is selected, allowing the user to send a command such
as clear display, cursor at home, etc. If RS = 1 the data register is selected,
allowing the user to send data to be displayed on the LCD.
R/W – read/write: R/W input allows the user to write information to the LCD
or read information from it. R/W = 1 when reading; R/W =0 when writing.
E – Enable: The enable pin is used by the LCD to latch information presented
to its data pins. When data is supplied to data pins, a high to low pulse must be
applied to this pin in order for the LCD to latch in the data present at the data
pins. This pulse must be a minimum of 450 ns wide.
D0 – D7: The 8 bit data pins, D0 – D7, are used to send information to the
LCD or read the contents of the LCD’s internal registers.
To display letters and numbers, we send ASCII codes for the letters A – Z, a – z,
and numbers 0 – 9 to these pins while making RS = 1. There are also instructions command
codes that can be sent to the LCD to clear the display or force the cursor to the home
position or blink the cursor. Table below lists the instruction command codes.
We also use RS = 0 to check the busy flag bit to see if the LCD is ready to receive
information. The busy flag is D7 and can be read when R/W =1 and RS = 0, as follows: if
R/W =1, RS =0. When D7 = 1(busy flag = 1), the LCD busy taking care of internal
operations and will not accept any new information. When D7 = 0, the LCD is ready to
receive new information. Recommended to check the busy flag before writing any data to
the LCD screen.
There are also instructions command codes that can be sent to the LCD to clear the
display or force the cursor to the home position or blink the cursor. It is recommended to
check the busy flag before writing any data to the LCD.
Handwriting Recognition System Page 17 of 41
R.C.P.I.T. Department of Electronics & Telecommunication
Figure 3.7: Circuit diagram of LCD interfacing with AT89S52 microcontroller
3.7 Advantages and Disadvantages:
3.7.1 Advantages:
Handwriting Recognition System Page 18 of 41
R.C.P.I.T. Department of Electronics & Telecommunication
The device does not require a keyboard therefore the device could be
smaller.
Handwriting recognition system performs fast and accurate detection of
different human handwriting.
No use of any external software and hardware.
Easy to construct.
Cost effective and time efficient.
Consumes less energy and it is more efficient.
Work at higher speed.
3.7.2 Disadvantages:
The microcontroller might struggle to recognise characters due to your
writing technique.
Sometime does have a hard time recognizing some symbols because some
symbols look a lot alike. For example, the colon and semicolon.
Rough use of touchpad occur many problems.
Without stylus character is not plotted on touchpad,
3.8 Applications:
Now a days it is used in touch screen mobile phones.
By Implementations it is also used as language translator.
It is also used in projection.
it is also used to store as digitally.
3.9 Component List:
Components Quantity
Microcontroller IC AT89C52 1
LCD Display 16*2 character display 1
Capacitors 470µf/35v, 1
Handwriting Recognition System Page 19 of 41
R.C.P.I.T. Department of Electronics & Telecommunication
100µf/25v 1
33pf Disk type 2
1µf/50v 1
Resistors 8.2k 1
100k variable type 1
A103J(pull up resister) 1
Voltage regulator LM7805 1
Diode 1N4007 4
USB port Female port 1
Switch Push button 1
Crystal Oscillator 12MHZ 1
Table 1: Component List
Handwriting Recognition System Page 20 of 41
R.C.P.I.T. Department of Electronics & Telecommunication
4. PCB Designing
4.1 Printed circuit board:
A printed circuit board, or PCB, is used to mechanically support and electrically
connect electronic components using conductive pathways, tracks or signal traces etched
from copper sheets laminated onto a non-conductive substrate. It is also referred to as
printed wiring board (PWB) or etched wiring board. A PCB populated with electronic
components is a printed circuit assembly (PCA), also known as a printed circuit board
assembly (PCBA). Printed circuit boards are used in virtually all but the simplest
commercially-produced electronic devices. PCBs are inexpensive, and can be highly
reliable. They require much more layout effort and higher initial cost than either wire
wrap or point-to-point construction, but are much cheaper and faster for high-volume
production; the production and soldering of PCBs can be done by totally automated
equipment. Much of the electronics industry's PCB design, assembly, and quality control
needs are set by standards that are published by the IPC organization.
4.1.1 History:
The inventor of the printed circuit was the Austrian engineer Paul Eisler who,
while working in England, made one circa 1936 as part of a radio set. Around 1943 the
USA began to use the technology on a large scale to make rugged radios for use in World
War II. After the war, in 1948, the USA released the invention for commercial use.
Printed circuits did not become commonplace in consumer electronics until the mid-
1950s, after the Auto-Sembly process was developed by the United States Army. Before
printed circuits (and for a while after their invention), point-to-point construction was
used. For prototypes, or small production runs, wire wrap or turret board can be more
efficient. Predating the printed circuit invention, and similar in spirit, was John Sargrove's
1936-1947 Electronic Circuit Making Equipment (ECME) which sprayed metal onto a
Bakelite plastic board. The ECME could produce 3 radios per minute.
During World War II, the development of the anti-aircraft proximity fuse required
an electronic circuit that could withstand being fired from a gun, and could be produced
in quantity. The Centralab Division of Globe Union submitted a proposal which met the
requirements: a ceramic plate would be screenprinted with metallic paint for conductors
Handwriting Recognition System Page 21 of 41
R.C.P.I.T. Department of Electronics & Telecommunication
and carbon material for resistors, with ceramic disc capacitors and subminiature vacuum
tubes soldered in place.
Originally, every electronic component had wire leads, and the PCB had holes
drilled for each wire of each component. The components' leads were then passed through
the holes and soldered to the PCB trace. This method of assembly is called through-hole
construction. In 1949, Moe Abramson and Stanislaus F. Danko of the United States Army
Signal Corps developed the Auto-Sembly process in which component leads were
inserted into a copper foil interconnection pattern and dip soldered. With the development
of board lamination and etching techniques, this concept evolved into the standard printed
circuit board fabrication process in use today. Soldering could be done automatically by
passing the board over a ripple, or wave, of molten solder in a wave-soldering machine.
However, the wires and holes are wasteful since drilling holes is expensive and the
protruding wires are merely cut off.
In recent years, the use of surface mount parts has gained popularity as the
demand for smaller electronics packaging and greater functionality has grown.
4.1.2 Materials used in PCB:
Conducting layers are typically made of thin copper foil. Insulating layers
dielectric are typically laminated together with epoxy resin prepreg. The board is
typically coated with a solder mask that is green in color. Other colors that are normally
available are blue, black, white and red. There are quite a few different dielectrics that can
be chosen to provide different insulating values depending on the requirements of the
circuit. Some of these dielectrics are polytetrafluoroethylene (Teflon), FR-4, FR-1, CEM-
1 or CEM-3. Well known prepreg materials used in the PCB industry are FR-2 (Phenolic
cotton paper), FR-3 (Cotton paper and epoxy), FR-4 (Woven glass and epoxy), FR-5
(Woven glass and epoxy), FR-6 (Matte glass and polyester), G-10 (Woven glass and
epoxy), CEM-1 (Cotton paper and epoxy), CEM-2 (Cotton paper and epoxy), CEM-3
(Woven glass and epoxy), CEM-4 (Woven glass and epoxy), CEM-5 (Woven glass and
polyester). Thermal expansion is an important consideration especially with BGA and
naked die technologies, and glass fiber offers the best dimensional stability.
FR-4 is by far the most common material used today. The board with copper on it
is called "copper-clad laminate".
Handwriting Recognition System Page 22 of 41
R.C.P.I.T. Department of Electronics & Telecommunication
Copper foil thickness can be specified in ounces per square foot or micrometres.
One ounce per square foot is 1.344 mils or 34 micrometres.
4.2 Layout Designing:
Figure 4.1: PCB Layout
Before etching the board, you need to have a layout pattern. For this, you use a
layout editor. A layout editor is a program that allows you to draw out all of the traces
and place all of the parts onto the board. It's a lot like a drawing program specifically for
circuit boards. Most have 'libraries' that have common parts' layouts (like integrated
circuits, resistors, capacitors...). You can use parts from those libraries or make up your
own for specialized applications. They also allow you to draw out all of the traces and
move things around until you get it exactly as you want it. I personally use ‘Express
PCB’. The freeware version of the software is somewhat limited but it is sufficient for
most simple circuits. The image below shows what it looked like in the editor. I was using
a 4"x6" board which was more than I needed. That's why there's a lot of blank space at
the top. I let the polygon that covers all of the unused areas of the board extend to the full
size of the board. This allows the unused copper to be covered by the mask and not dilute
the etching solution.
Handwriting Recognition System Page 23 of 41
R.C.P.I.T. Department of Electronics & Telecommunication
4.3 Screen printing on PCB:
Screen printing is a printing technique that uses a woven mesh to support an ink-
blocking stencil. The attached stencil forms open areas of mesh that transfer ink or other
printable materials which can be pressed through the mesh as a sharp-edged image onto a
substrate. A roller or squeegee is moved across the screen stencil, forcing or pumping ink
past the threads of the woven mesh in the open areas.
Screen printing is also a stencil method of print making in which a design is
imposed on a screen of silk or other fine mesh, with blank areas coated with an
impermeable substance, and ink is forced through the mesh onto the printing surface. It is
also known as silkscreen, stereography and serigraph.
There is considerable and semantic discussion about the process, and the various
terms for what is essentially the same technique. Much of the current confusion is based
on the popular traditional reference to the process of screen printing as silkscreen
printing. Traditionally silk was used for screen-printing, hence the name silk screening.
Currently, synthetic threads are commonly used in the screen printing process. The most
popular mesh in general use is made of polyester. There are special-use mesh materials of
nylon and stainless steel available to the screen printer.
Encyclopedia references, encyclopedias and trade publications also use an array of
spellings for this process with the two most often encountered English spellings as, screen
printing spelled as a single undivided word, and the more popular two word title of screen
printing without hyphenation.
4.4 PCB Etching:
The developed PCB is etched with a 220 gram solution of ammonium
peroxydisulfate (NH4)2S2O8 a.k.a. ammonium persulfate, 220 gram added to 1 liter of
water and mix it until everything is dissolved. Theoretically it should be possible to etch
slightly more than 60 grams of copper with 1 liter etching solution. Assume an 50%
efficiency, about 30 grams of copper. With a thickness of 35 µm copper on your PCB this
covers a copper area of about 1000 cm2. Unfortunately the efficiency of the etching
solution degrades, dissolved ammonium peroxydisulfate decomposes slowly. You better
make just enough etching solution you need to etch. For an etching tray of about 20 x 25
Handwriting Recognition System Page 24 of 41
R.C.P.I.T. Department of Electronics & Telecommunication
cm a minimum practical amount is 200-250 ml solution. So you dissolve about 44 grams
ammonium peroxydisulfate into 200 ml or 55 grams into 250 ml water.
Etching at ambient temperature might take over an hour, it is better to heat up the
etching solvent to about 35-45 degrees Celcius. The etching solution heating up could be
done in a magnetron, this takes about 40 to 60 seconds in a 850W magnetron depending
on the initial temperature of the etching solution (hint: first try this with just water to
determine the timer setting of the magnetron). The etching - rocking the etching tray -
takes about 15-30 minutes at this temperature. If you have a heated, air-bubble circulated
etching fluid tank available, this is probably the fastest way to etch. At higher
temperatures the etching performance decreases. The etching process is an exothermic
reaction, it generates heat. Take care, cool your etching tray when necessary! You should
minimize the amount of copper to etch by creating copper area in your PCB layout as
much as possible. When starting the etching process and little to etch it is difficult to keep
the etching solution at 35-45 degrees Celcius. It helps to fill for example the kitchen sink
with warm water and rock the etching tray in the filled kitchen sink.
When the ammonium peroxydisulfate is dissolved it is a clear liquid. After an
etching procedure it gradually becomes blue and more deeper blue - the chemical reaction
creates dissolved copper sulfate CuSO4. Compared to other etching chemicals like
hydrated iron (III) chloride FeCl3.6H2O a.k.a. ferric chloride or the combination of
hydrochloric acid HCL and hydrogen peroxide H2O2, using ammonium peroxydisulfate is
a clean and safe method.
4.5 Removing the Toner:
Before you can solder the components into the board, you need to remove the
toner. This may be done with steel wool or a 'Scotch Brite' type scrubbing pad. When
you're finished, you'll have a shiny copper layout. Try not to touch the copper with your
fingers because it will cause it to oxidize. Later you'll apply a clear coating to protect it.
You'll notice that every little crack or pin hole in the toner mask has resuted in the copper
being removed. If one of those cracks were across a trace, it would cause an open circuit
and would have to be repaired. After the board is cleaned, look for areas where the copper
hasn't been completely removed (between traces, pads or anything else). If there are any
short circuits, they must be removed now. If they are not and the device is powered up,
Handwriting Recognition System Page 25 of 41
R.C.P.I.T. Department of Electronics & Telecommunication
there could be significant damage to the board and the electrical components. To cut them
free, you can use something like an Exacto knife. Be very careful and take your time.
4.6 Drilling:
Holes through a PCB are typically drilled with tiny drill bits made of solid
tungsten carbide. The drilling is performed by automated drilling machines with
placement controlled by a drill tape or drill file. These computer-generated files are also
called numerically controlled drill (NCD) files or "Excellon files". The drill file describes
the location and size of each drilled hole. These holes are often filled with annular rings
(hollow rivets) to create vias. Vias allow the electrical and thermal connection of
conductors on opposite sides of the PCB.
Most common laminate is epoxy filled fiberglass. Drill bit wear is partly due to
embedded glass, which is harder than steel. High drill speed necessary for cost effective
drilling of hundreds of holes per board causes very high temperatures at the drill bit tip,
and high temperatures (400-700 degrees) soften steel and decompose (oxidize) laminate
filler. Copper is softer than epoxy and interior conductors may suffer damage during
drilling.
The walls of the holes, for boards with 2 or more layers, are made conductive then
plated with copper to form plated-through holes that electrically connect the conducting
layers of the PCB. For multilayer boards, those with 4 layers or more, drilling typically
produces a smear of the high temperature decomposition products of bonding agent in the
laminate system. Before the holes can be plated through, this smear must be removed by a
chemical de-smear process, or by plasma-etch.
4.7 Placing and Soldering Parts:
Now its time to move each component onto the pcb and begin the tedious work of
making all those components fit together. This is where you’ll find that pcb design is
really a jigsaw puzzle. Before proceeding with the detailed PCB design and layout, it is
necessary to gain a rough idea of where components will be located and whether there is
sufficient space on the board to contain all the required circuitry. This will enable
decisions about the number of layers needed in the board, and also whether there is
sufficient space to contain all the circuitry may need to be made.
Handwriting Recognition System Page 26 of 41
R.C.P.I.T. Department of Electronics & Telecommunication
Once a rough estimate has been made of the space and approximate locations of
the components, a more detailed component layout can be made for the PCB design. This
can take into account aspects such as the proximity of devices that may need to
communicate with each other, and other information pertaining to any RF considerations
for example.
In order that components can be incorporated into the PCB design they must have
all the relevant information associated with them. This will include the footprint for the
printed circuit board pads, any drilling information, keep out areas and the like. Typically
several devices may share the same footprint, so this information does not have to be
entered for each component part number. However a library for all the devices used will
be built up within the PCB layout design system. In this way components that have been
used previously can be called up easily.
Figure 4.2: Hardware of Handwriting recognition
Handwriting Recognition System Page 27 of 41
R.C.P.I.T. Department of Electronics & Telecommunication
5. Functional Pin Diagram of ICs
5.1 Microcontroller AT89C52
Figure 5.1: Pin diagram of AT89C52
The AT89C52 is a low-power, high-performance CMOS 8-bit microcomputer
with 8K bytes of Flash programmable and erasable read only memory (PEROM). The
device is manufactured using Atmel’s high-density nonvolatile memory technology and is
compatible with the industry-standard 80C51 and 80C52 instruction set and pinout. The
on-chip Flash allows the program memory to be reprogrammed in-system or by a
Handwriting Recognition System Page 28 of 41
R.C.P.I.T. Department of Electronics & Telecommunication
conventional nonvolatile memory programmer. By combining a versatile 8-bit CPU with
Flash on a monolithic chip, the Atmel AT89C52 is a powerful microcomputer which
provides a highly-flexible and cost-effective solution to many embedded control
applications. The AT89C52 provides the following standard features: 8K bytes of Flash,
256 bytes of RAM, 32 I/O lines, three 16-bit timer/counters, a six-vector two-level
interrupt architecture, a full-duplex serial port, on-chip oscillator, and clock circuitry.
In addition, the AT89C52 is designed with static logic for operation down to zero
frequency and supports two software selectable power saving modes. The Idle Mode
stops the CPU while allowing the RAM, timer/counters, serial port, and interrupt system
to continue functioning. The Power-down mode saves the RAM contents but freezes the
oscillator, disabling all other chip functions until the next hardware reset.
5.1.1 Pin Description:
VCC: Supply voltage 5v at pin 40.
GND: Ground at pin 20.
Port 0: Port 0 is an 8-bit open drain bi-directional I/O port. As an output
port, each pin can sink eight TTL inputs. When 1s are written to port 0
pins, the pins can be used as high impedance inputs. Port 0 can also be
configured to be the multiplexed low order address/data bus during
accesses to external program and data memory. In this mode, P0 has
internal pull-ups. Port 0 also receives the code bytes during Flash
programming and outputs the code bytes during program verification.
External pull-ups are required during program verification.
Port 1: Port 1 is an 8-bit bi-directional I/O port with internal pull-ups. The
Port 1 output buffers can sink/source four TTL inputs. When 1s are written
to Port 1 pins, they are pulled high by the internal pull-ups and can be used
as inputs. As inputs, Port 1 pins that are externally being pulled low will
source current (IIL) because of the internal pull-ups. In addition, P1.0 and
P1.1 can be configured to be the timer/counter 2 external count input
(P1.0/T2) and the timer/counter 2 trigger input (P1.1/T2EX), respectively.
Handwriting Recognition System Page 29 of 41
R.C.P.I.T. Department of Electronics & Telecommunication
Port 1 also receives the low-order address bytes during Flash programming
and verification.
Port 2: Port 2 is an 8-bit bi-directional I/O port with internal pull-ups. The
Port 2 output buffers can sink/source four TTL inputs. When 1s are written
to Port 2 pins, they are pulled high by the internal pull-ups and can be used
as inputs. As inputs, Port 2 pins that are externally being pulled low will
source current (IIL) because of the internal pull-ups. Port 2 emits the high-
order address byte during fetches from external program memory and
during accesses to external data memory that uses 16-bit addresses
(MOVX @ DPTR). In this application, Port 2 uses strong internal pull-ups
when emitting 1s. During accesses to external data memory that uses 8-bit
addresses (MOVX @ RI), Port 2 emits the contents of the P2 Special
Function Register. Port 2 also receives the high-order address bits and
some control signals during Flash programming and verification.
Port 3: Port 3 is an 8-bit bi-directional I/O port with internal pull-ups. The
Port 3 output buffers can sink/source four TTL inputs. When 1s are written
to Port 3 pins, they are pulled high by the internal pull-ups and can be used
as inputs. As inputs, Port 3 pins that are externally being pulled low will
source current (IIL) because of the pull-ups. Port 3 also serves the
functions of various special features of the AT89C51. Port 3 also receives
some control signals for Flash programming and verification.
P3.0 RXD (serial input port)
P3.1 TXD (serial output port)
P3.2 INT0 (external interrupt 0)
P3.3 INT1 (external interrupt 1)
P3.4 T0 (timer 0 external input)
P3.5 T1 (timer 1 external input)
P3.6 WR (external data memory write strobe)
P3.7 RD (external data memory read strobe)
RST: Reset input. A high on this pin for two machine cycles while the
oscillator is running resets the device.
Handwriting Recognition System Page 30 of 41
R.C.P.I.T. Department of Electronics & Telecommunication
ALE/PROG: Address Latch Enable is an output pulse for latching the low
byte of the address during accesses to external memory. This pin is also
the program pulse input (PROG) during Flash programming. In normal
operation, ALE is emitted at a constant rate of 1/6 the oscillator frequency
and may be used for external timing or clocking purposes. Note, however,
that one ALE pulse is skipped during each access to external data memory.
If desired, ALE operation can be disabled by setting bit 0 of SFR location
8EH. With the bit set, ALE is active only during a MOVX or MOVC
instruction. Otherwise, the pin is weakly pulled high. Setting the ALE-
disable bit has no effect if the microcontroller is in external execution
mode.
PSEN: Program Store Enable is the read strobe to external program
memory. When the AT89C52 is executing code from external program
memory, PSEN is activated twice each machine cycle, except that two
PSEN activations are skipped during each access to external data memory.
EA/VPP: External Access Enable (EA) must be strapped to GND in order
to enable the device to fetch code from external program memory
locations starting at 0000H up to FFFFH. Note, however, that if lock bit 1
is programmed, EA will be internally latched on reset. EA should be
strapped to VCC for internal program executions. This pin also receives
the 12-volt programming enable voltage (VPP) during Flash programming
when 12-volt programming is selected.
XTAL1: Input to the inverting oscillator amplifier and input to the internal
clock operating circuit.
XTAL2: Output from the inverting oscillator amplifier.
5.1.2 Oscillator Characteristics:
XTAL1 and XTAL2 are the input and output, respectively, of an inverting
amplifier that can be configured for use as an on-chip oscillator, as shown in Figure 7.
Either a quartz crystal or ceramic resonator may be used. To drive the device from an
external clock source, XTAL2 should be left unconnected while XTAL1 is driven, as
Handwriting Recognition System Page 31 of 41
R.C.P.I.T. Department of Electronics & Telecommunication
shown in Figure 8. There are no requirements on the duty cycle of the external clock
signal, since the input to the internal clocking circuitry is through a divide-by-two flip-
flop, but minimum and maximum voltage high and low time specifications must be
observed.
Figure 5.2: Crystal arrangement
5.1.3 Features:
Compatible with MCS-51™ Products
8K Bytes of In-System Reprogrammable Flash Memory
Endurance: 1,000 Write/Erase Cycles
Fully Static Operation: 0 Hz to 24 MHz
Three-level Program Memory Lock
256 x 8-bit Internal RAM
32 Programmable I/O Lines
Three 16-bit Timer/Counters
Eight Interrupt Sources
Programmable Serial Channel
Low-power Idle and Power-down Modes
5.2 LM 7805:
Handwriting Recognition System Page 32 of 41
R.C.P.I.T. Department of Electronics & Telecommunication
The LM 7805 series of three terminal positive regulators are available in the TO-
220/D-PAK package and with several fixed output voltages, making them useful in a
wide range of applications. Each type employs internal current limiting, thermal shut
down and safe operating area protection, making it essentially indestructible.
Figure 5.3: IC LM7805
If adequate heat sinking is provided, they can deliver over 1A output current.
Although designed primarily as fixed voltage regulators, these devices can be used with
external components to obtain adjustable voltages and currents.
5.2.1 Features
Output Current up to 1A.
Output Voltages of 5, 6, 8, 9, 10, 12, 15, 18, 24V.
Thermal Overload Protection.
Short Circuit Protection.
Output Transistor Safe Operating Area Protection.
5.3 LCD Display:
A 16x2 LCD means it can display 16 characters per line and there are 2 such lines.
In this LCD each character is displayed in 5x7 pixel matrix. The LCD discussed in this
section has 16 pins. The function of each pin is given in Table.
5.3.1 Pin configuration:
Handwriting Recognition System Page 33 of 41
R.C.P.I.T. Department of Electronics & Telecommunication
Pin Symbol Description
1 VSS Ground 0 V
2 VCC Main power supply +5 V
3 VEE Power supply to control contrast
Contrast adjustment by
providing a variable resistor
through VCC
4 RSRegister Select
RS=0 to select Command
Register
RS=1 to select Data
Register
5 R/WRead/write
R/W=0 to write to the
register
R/W=1 to read from the
register
6 EN Enable
A high to low pulse
(minimum 450ns wide) is
given when data is sent to
data pins
7 DB0
To display letters or numbers, their ASCII
codes are sent to data pins (with RS=1).
Also instruction command codes are sent
to these pins.
8 DB1
9 DB2
10 DB3 8-bit data pins
11 DB4
12 DB5
13 DB6
14 DB7
15 Led+ Backlight VCC +5 V
16 Led- Backlight Ground 0 V
Table 2: Pin configuration of LCD
Handwriting Recognition System Page 34 of 41
R.C.P.I.T. Department of Electronics & Telecommunication
Figure 5.4: LCD Display
. This LCD has two registers.
Command/Instruction Register- stores the command instructions given to
the LCD. A command is an instruction given to LCD to do a predefined
task like initializing, clearing the screen, setting the cursor position,
controlling display etc.
Data Register- stores the data to be displayed on the LCD. The data is the
ASCII value of the character to be displayed on the LCD.
5.3.1 Features:
Built-in controller (KS 0066 or Equivalent)
+ 5V power supply (Also available for + 3V)
B/L to be driven by pin 1, pin 2 or pin 15, pin 16 or A.K (LED)
N.V. optional for + 3V power supply
61 x 15.8 mm viewing area
5 x 7 dot matrix format for 2.96 x 5.56 mm characters, plus cursor line
Can display 224 different symbols
Low power consumption (1 mA typical)
Powerful command set and user-produced characters
TTL and CMOS compatible
Connector for standard 0.1-pitch pin headers
5.4 Touchpad:
Handwriting Recognition System Page 35 of 41
R.C.P.I.T. Department of Electronics & Telecommunication
Figure 5.5 Touchpad and stylus
Touchpads operate in one of several ways, including capacitive sensing and
conductance sensing. The most common technology used as of 2010 entails sensing the
capacitive virtual ground effect of a finger, or the capacitance between sensors.
Capacitance-based touchpads will not sense the tip of a pencil or other similar implement.
Gloved fingers may also be problematic.
If the computer is powered by an external power supply unit (PSU), the detailed
construction of the PSU will influence the virtual ground effect; [citation needed] a touchpad may
work properly with one PSU but be jerky or malfunction with another (this does not
imply any electrical risk whatsoever, a delicate capacitive ground, not a contact ground, is
at issue). This has been known to cause touchpad problems when a manufacturer's PSU,
which will have been designed to work with the touchpad, is replaced by a different type.
This effect can be checked by touching a metallic part of the computer with the other
hand and seeing if operation is restored. In some cases touching the (insulated) power
supply with some part of the body, or using the computer on the lap instead of on a desk,
while working can restore correct operation.
Handwriting Recognition System Page 36 of 41
R.C.P.I.T. Department of Electronics & Telecommunication
While touchpads, like touchscreens, by their design are able to sense absolute
position, resolution is limited by their size. For common use as a pointer device, the
dragging motion of a finger is translated into a finer, relative motion of the cursor on the
screen, analogous to the handling of a mouse that is lifted and put back on a surface.
Hardware buttons equivalent to a standard mouse's left and right buttons are below, above
or, to reduce the depth of the pad in compact devices such as netbooks, beside the pad.
Handwriting Recognition System Page 37 of 41
R.C.P.I.T. Department of Electronics & Telecommunication
6. Flowchart
Figure 6.1 Flowchart of programming
Handwriting Recognition System Page 38 of 41
R.C.P.I.T. Department of Electronics & Telecommunication
7. Testing Results
We expected to be able to interface the touch pad with the microcontroller and to
process and analyze the user input pattern. This project has met our expectations. We
were able to detect the handwriting on the screen in a fairly accurate and efficient manner
given the project time constraint. For example, it would be interesting to explore other
handwriting recognition algorithms and compare the quality and efficiency tradeoffs of
the results.
As any pattern plotted on touchpad so that output on LCD is like as below.
Character pattern plotted on touchpad Output at LCD disply
Initially without touchpad HANDWRITING RECOGNITION
A
3
K
Table 3: Input Output Table
7.1 Conclusion:
Handwriting recognition system is microcontroller based project, it recognize the
character which is plotted on touchpad. Handwriting recognition gives accurate result over
manually result. The component use in this project is easy to available in market and the
cost of project is not very high and also easy to implement.
Handwriting Recognition System Page 39 of 41
R.C.P.I.T. Department of Electronics & Telecommunication
7.2 Future scope:
In the future use of handwriting recognition are increases due to their availability
in the market and their cheapness. Touchpad is used for detection of plotted character.
Some modification in this project it is use for other applications.
Handwriting Recognition System Page 40 of 41
R.C.P.I.T. Department of Electronics & Telecommunication
8. Reference
[1] A. Amin, “Off-Line Character Recognition: A Survey,” Proc. Fourth Int'l Conf.
Documents Analysis and Recognition (ICDAR '97), pp. 596-599, Ulm, Germany,
Aug. 1997.
[2] E. Anquetil and G. Lorette, “Perceptual Model of Handwriting Drawing
Application to the Handwriting Segmentation Problem,” Proc. Fourth Int'l Conf.
Document Analysis and Recognition (ICDAR '97), pp. 112-117, Ulm, Germany,
Aug. 1997.
[3] E. Anquetil and G. Lorette, “On-Line Cursive Handwritten Character Recognition
Using Hidden Markov Models,” Traitement du Signal, vol. 12, no. 6, pp. 575-583,
1995.
[4] R. Bozinovic and S.N. Srihari, “Off-Line Cursive Script Recognition,” IEEE
Trans. Pattern Analysis and Machine Intelligence, vol. 11, no. 1, pp. 68-83, 1989.
[5] P.E. Bramall and C.A. Higgins, “A Cursive Script-Recognition System Based on
Human Reading Models,” Machine Vision and Applications, vol. 8, no. 4, pp.
224-231, 1995.
[6] Denial Redcliff, “Synaptics TouchPad Interfacing Guide,” Synaptics, Inc. second
edition, November 17, 1999.
Handwriting Recognition System Page 41 of 41