A NEW INTERFACE FOR WRITING AND RECOGNITION OF CHARACTERS


Chennakeshava Ramesh

chennakeshava.ramesh@wipro.com


1. Abstract

This paper presents a logical design structure for writing the character and how can it be recognized. This is a part of the research I am carrying to give alternative writing pad, where recognization can 100%. I have done it for Capital letters in English, where we ask the user to write the character on the logical structure define and we recognition it.

2. Introduction

We have different method to recognize handwritten characters. But the study I am carrying out is whether can we develop any logical structural design where we ask the user to write on it and it does not vary much with different users.

One of the by-product of this research was asking user to write on structure define below.


figure 1

This was done only for the Capital Letters in English

How users can write

The user were told to write the character on the above structure as shown in figure 1.


figure 2

The advantage of writing such way is the user doesn’t has to learn anything new. Once shown he can easily write in that format. But the only restriction was that he has to follow some rules.

The Recognition Process

The above structure was designed keeping in view to see that can we get 100% recognition. We get unique and small number of patterns for any character being written. For example lets name the boxes in the structure as follows.

Now for example a user tries to write a character A. he may write in the following way.


figure 3

So if we know the stroke patterns we can easily recognize the character using a simple rule based system only. But the difference comes in character like M , N . Let’s take the example of M


figure 4

In character ‘M’, ‘N’ , ‘K’ etc slant lines are part of the character , hence the following two cases may occur


figure 5

Recognition


figure 6

The recognition process consist of a simple rule based system where we observe the patterns and write the rules. When a new patter is observed the entry is made in the pattern list. The patterns are entered in a file in the following format


...

When the system is loaded the rules are generated. Here the each strokes represent the sequence of regions passed before the pen was lifted. For example for figure 6 the the entry in the list of strokes would be

2 187 1894345 M

when the character is written the stoke pattern generated are matched against those present in the file and if it matches it is recognized.

Here I am not planning to do any approximate matching because the number of possible patterns for a character are very less in this method. But if the total number patterns are very less across the user , I am planning to embed them directly into the code in the if-else structure


If(stroke1 = 187 && stroke2= 1894345)
{
print(" it is M ");
}

Difference between character D and O

Since here we are not taking into consideration any curvature, its only based on the movements between the regions , differentiating between character ‘D’ and ‘O’ become difficult. Hence the user is asked to learn to differentiate between ‘D’ and ‘O’ by writing in different regions.


figure 7

The same with 5 and S also.


figure 8

Conclusion

This is by product where we will try to see whether the user will accept it or not. If the acceptability level is high, I will go ahead and design such structure where the user may not have to learn more, but can use it to input the data in a faster way.