handwriting recognition system

61
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 Handwriting Recognition System Page 1 of 61

Upload: tulan-kansagara

Post on 03-Dec-2014

220 views

Category:

Documents


1 download

DESCRIPTION

By Tulan Kansagara-7207222508,8866683805https://www.facebook.com/tulan.kansagara

TRANSCRIPT

Page 1: Handwriting Recognition System

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

Page 2: Handwriting Recognition System

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

Page 3: Handwriting Recognition System

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

Page 4: Handwriting Recognition System

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

Page 5: Handwriting Recognition System

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

Page 6: Handwriting Recognition System

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

Page 7: Handwriting Recognition System

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

Page 8: Handwriting Recognition System

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

Page 9: Handwriting Recognition System

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

Page 10: Handwriting Recognition System

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

Page 11: Handwriting Recognition System

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

Page 12: Handwriting Recognition System

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

Page 13: Handwriting Recognition System

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

Page 14: Handwriting Recognition System

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

Page 15: Handwriting Recognition System

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

Page 16: Handwriting Recognition System

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

Page 17: Handwriting Recognition System

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

Page 18: Handwriting Recognition System

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

Page 19: Handwriting Recognition System

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

Page 20: Handwriting Recognition System

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

Page 21: Handwriting Recognition System

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

Page 22: Handwriting Recognition System

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

Page 23: Handwriting Recognition System

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

Page 24: Handwriting Recognition System

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

Page 25: Handwriting Recognition System

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

Page 26: Handwriting Recognition System

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

Page 27: Handwriting Recognition System

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

Page 28: Handwriting Recognition System

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

Page 29: Handwriting Recognition System

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

Page 30: Handwriting Recognition System

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

Page 31: Handwriting Recognition System

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

Page 32: Handwriting Recognition System

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

Page 33: Handwriting Recognition System

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

Page 34: Handwriting Recognition System

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

Page 35: Handwriting Recognition System

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

Page 36: Handwriting Recognition System

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

Page 37: Handwriting Recognition System

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

Page 38: Handwriting Recognition System

R.C.P.I.T. Department of Electronics & Telecommunication

6. Flowchart

Figure 6.1 Flowchart of programming

Handwriting Recognition System Page 38 of 41

Page 39: Handwriting Recognition System

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

Page 40: Handwriting Recognition System

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

Page 41: Handwriting Recognition System

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