Real Time Handwriting Recognition Techniques for Mathematical Notation in Interactive Teaching & Learning Applications

Similar documents
Handout 9: Imperative Programs and State

On-Line Recognition of Mathematical Expressions Using Automatic Rewriting Method

MC 302 GRAPH THEORY 10/1/13 Solutions to HW #2 50 points + 6 XC points

Mathematics Background

Explicit fuzzy modeling of shapes and positioning for handwritten Chinese character recognition

Metric Dimension in Fuzzy Graphs. A Novel Approach

1.3. Conditional expressions To express case distinctions like

MULTI-FEATURE EXTRACTION FOR PRINTED THAI CHARACTER RECOGNITION

Monotone Paths in Geometric Triangulations

The Language of Sets and Functions


Matrices. Chapter Matrix A Mathematical Definition Matrix Dimensions and Notation

FUNCTIONS AND MODELS

Catalan Numbers. Table 1: Balanced Parentheses

FAdo: Interactive Tools for Learning Formal Computational Models

2386 IEEE TRANSACTIONS ON INFORMATION THEORY, VOL. 52, NO. 6, JUNE 2006

SDP Memo 048: Two Dimensional Sparse Fourier Transform Algorithms

The angle measure at for example the vertex A is denoted by m A, or m BAC.

Equation Editor Applet with TeX Output for the Web E M I L K A C H K Y M B A E V

CSCI.6962/4962 Software Verification Fundamental Proof Methods in Computer Science (Arkoudas and Musser) Sections p.

DR.V.S.BANSAL Ph.D. (Glasgow),M.S.(Illinois)

Block-based Thiele-like blending rational interpolation

INTERSECTION OF CURVES FACTS, COMPUTATIONS, APPLICATIONS IN BLOWUP*

Binary Representation. Jerry Cain CS 106AJ October 29, 2018 slides courtesy of Eric Roberts

1.1. INTRODUCTION 1.2. NUMBER SYSTEMS

A Modified Playfair Encryption Using Fibonacci Numbers

Context-Free Languages & Grammars (CFLs & CFGs) Reading: Chapter 5

Discrete Mathematics

Lecture 5: Graphs. Rajat Mittal. IIT Kanpur

Generating (n,2) De Bruijn Sequences with Some Balance and Uniformity Properties. Abstract

COURSE: NUMERICAL ANALYSIS. LESSON: Methods for Solving Non-Linear Equations

Treewidth and graph minors

Introduction. chapter Functions

Increasing/Decreasing Behavior

Amarillo ISD Math Curriculum

Connexions module: m Linear Equations. Rupinder Sekhon

Education Services: Maximize the value of your data management investment with E-WorkBook Web E-WorkBook Web

Introduction to Automata Theory. BİL405 - Automata Theory and Formal Languages 1

Derivatives and Graphs of Functions

Module 7. Independent sets, coverings. and matchings. Contents

CSE 20 DISCRETE MATH. Fall

Byzantine Consensus in Directed Graphs

Testing Isomorphism of Strongly Regular Graphs

Planar Drawing of Bipartite Graph by Eliminating Minimum Number of Edges

Lecture 4: Petersen Graph 2/2; also, Friendship is Magic!

Mathematical Experiments with Mathematica

3 No-Wait Job Shops with Variable Processing Times

Reflected Number Systems

Increasing/Decreasing Behavior

FACULTY OF ENGINEERING LAB SHEET INFORMATION THEORY AND ERROR CODING ETM 2126 ETN2126 TRIMESTER 2 (2011/2012)

Pearson BTEC Level 5 Higher National Diploma in Engineering (Electrical and Electronic Engineering)

Consistency and Set Intersection

A fuzzy soft set theoretic approach to decision making problems

Lemma (x, y, z) is a Pythagorean triple iff (y, x, z) is a Pythagorean triple.

Solve problems involving proportional reasoning. Number Sense and Algebra

Study of Tools & Techniques for Accessing Mathematics by Partially Sighted / Visually Impaired persons. Akashdeep Bansal

A Visualization Tool to Improve the Performance of a Classifier Based on Hidden Markov Models

Curriki Geometry Glossary

C A S I O f x S UNIVERSITY OF SOUTHERN QUEENSLAND. The Learning Centre Learning and Teaching Support Unit

Put the Graphs for Each Health Plan on the Same Graph

FOUR EDGE-INDEPENDENT SPANNING TREES 1

Lower estimate of the square-to-linear ratio for regular Peano curves

On the Relationships between Zero Forcing Numbers and Certain Graph Coverings

Review of Operations on the Set of Real Numbers

Three-Dimensional Coordinate Systems

2.2.2.Relational Database concept

One Dim~nsional Representation Of Two Dimensional Information For HMM Based Handwritten Recognition

Course Number 432/433 Title Algebra II (A & B) H Grade # of Days 120

Reichenbach Fuzzy Set of Transitivity

Polymorphic lambda calculus Princ. of Progr. Languages (and Extended ) The University of Birmingham. c Uday Reddy

Lecture 15: The subspace topology, Closed sets

A Technique for Design Patterns Detection

C A S I O f x L B UNIVERSITY OF SOUTHERN QUEENSLAND. The Learning Centre Learning and Teaching Support Unit

Click here, type the title of your paper, Capitalize first letter

Optimum Alphabetic Binary Trees T. C. Hu and J. D. Morgenthaler Department of Computer Science and Engineering, School of Engineering, University of C

Definition 2.3: [5] Let, and, be two simple graphs. Then the composition of graphs. and is denoted by,

Integers & Absolute Value Properties of Addition Add Integers Subtract Integers. Add & Subtract Like Fractions Add & Subtract Unlike Fractions

Effect of Regularization on Fuzzy Graph

Applied Finite Mathematics. Collection Editor: Rupinder Sekhon

CSCI 5454 Ramdomized Min Cut

1. NUMBER SYSTEMS USED IN COMPUTING: THE BINARY NUMBER SYSTEM

Symmetric Product Graphs

Mathematical Models: What and Why

Programming Languages Third Edition

Keywords: Binary Sort, Sorting, Efficient Algorithm, Sorting Algorithm, Sort Data.

SCHOOL OF ENGINEERING & BUILT ENVIRONMENT. Mathematics. Numbers & Number Systems

Finding Strongly Connected Components

Solutions to the ARML Power Question 2006: The Power of Origami

2017 SOLUTIONS (PRELIMINARY VERSION)

Problem Set 3. MATH 778C, Spring 2009, Austin Mohr (with John Boozer) April 15, 2009

The Frequency Structure Matrix: A Representation of Color Filter Arrays

On Fuzzy Topological Spaces Involving Boolean Algebraic Structures

MATH 423 Linear Algebra II Lecture 17: Reduced row echelon form (continued). Determinant of a matrix.

EXERCISES SHORTEST PATHS: APPLICATIONS, OPTIMIZATION, VARIATIONS, AND SOLVING THE CONSTRAINED SHORTEST PATH PROBLEM. 1 Applications and Modelling

Reasoning About Programs Panagiotis Manolios

MATVEC: MATRIX-VECTOR COMPUTATION LANGUAGE REFERENCE MANUAL. John C. Murphy jcm2105 Programming Languages and Translators Professor Stephen Edwards

Math Typesetting and Authoring

Pi at School. Arindama Singh Department of Mathematics Indian Institute of Technology Madras Chennai , India

Basically, a graph is a representation of the relationship between two or more variables.

A TIGHT BOUND ON THE LENGTH OF ODD CYCLES IN THE INCOMPATIBILITY GRAPH OF A NON-C1P MATRIX

Transcription:

Real Time Handwriting Recognition Teciques for Mathematical Notation in Interactive Teaching & Learning Applications A. Chiou School of Engineering & Tecology, Central Queensland University, Rockhampton 4701 Queensland, Australia. a.chiou@cqu.edu.au Abstract This paper presents a selection of primary teciques used in the encoding of handwritten mathematical notation into a meta-string that can later be converted to a standard document markup language. This method is used to archive or deliver documents with handwritten mathematical notation via the Internet utilising platform independent devices. The teciques used include, encoding sequence that are unique for each symbol; and fuzzy membership functions to determine position, spacing and size of symbols. Copyright 015 Penerbit - All rights reserved. Keywords: Intelligent computing, handwriting recognition, pattern mapping, internet. 1.0 INTRODUCTION This paper presents a selection of primary teciques employed in recognising handwritten mathematical notation and encoding it as a meta-string that can be further converted to a standard document markup language. This is an update of the author s previous work and a report on the enhancement that have been introduced in Human Computer Interaction course delivered at Central Queensland University [7]. This project is an extension to the working prototype completed by Chiou and Lye []. The real time handwriting recognition expert system (HRES) was first developed as part of a module in a computer-assisted language learning system environment to instruct foreign languages [3]. Throughout its research and development, it was discovered that the inference engine used by HRES to recognise Romanised characters in languages such as Bahasa Malaysia and English; and other ideograph-based languages such as Chinese, Japanese and Arabic, can also be used to process mathematical symbols. At Central Queensland University (CQU), the mode of instruction has been a gradual shift from traditional classroom based delivery to Internet delivery. However, a number of challenges arose from using non-printed material. One such challenge was the transmission of documents containing handwritten mathematical symbols via the Internet. Arguably, one can use a document markup language such as LaTex or HTML; or an equation editor such as MathType to produce such documents. But such editing utilities have a steep learning curve and are not always accessible to either lectures or students. Other methods used for delivery such as, facsimile, scanned documents and normal mail were also proven to be slow and cumbersome. 0

This project employs the use of an input-interface that allows the user to write mathematical notation while an intelligent module processes the input concurrently. Unlike conventional handwriting recognition systems, HRES processes handwritten input in real time, allowing users to instantly observe what has been written and corrections to be made. Once the input is complete, the characteristics of the handwritten notation are encoded into a meta-string. The meta-string will consist entirely of standard ASCII characters that can be conveniently transmitted or archived using platform-independent devices. This meta-string can then be subsequently used to reproduce the original mathematical notation intended. This new development provides an opportunity to further extend an earlier work on an intelligent system for online tutoring [4]..0 CHARACTER RECOGNITION In [] Chiou and Lye extended and used the grid system originally introduced by Teitelman [5]. It was a novel idea that produced excellent results while dealing with Romanised characters and ideographs with a few exceptions that could easily be handled. But when it comes to mathematical and other symbols, the number of exceptions grow significantly and it becomes impossible to identify all the exceptions and deal with them on case by case basis. The problem lies with the way the sequences are generated by taking account of the crossing of the internal grid lines only. As a result, different strokes may be created using same grid intersections and vice versa. Here we propose a different labelling scheme of the same grid that will result in unique sequences for unique strokes. We call these sequences, Lye sequences for Lye s original contribution in []. The following diagram (Fig.1) reflects our scheme. (0,0) (0,1) (0,) (1,0) (1,1) (1,) (,0) (,1) (,) Figure 1: Grid System The above is an example of a single stroke character. Its Lye sequence as given by Definition is (0,9,7,). This sequence is stored in a knowledge base as a standard notation for the Greek letter Sigma commonly used in mathematics for summation. For more precision each grid square can further be divided into a 3 3 grid and so on for the system to be trained for a specific user. Any character or symbol drawn in this system can be uniquely coded using the following tecique and then decoded either in LaTeX or HTML format relatively easily. 1

Definition 1. A simple horizontal stroke is a stroke starting from a grid square (i,j) and ending at (i,j±1) and a simple vertical stroke is the one starting from (i,j) and ending at (i±1,j). Definition. A simple Lye sequence of a simple horizontal stroke is a tuple (i, i, j ± 1, j ± 1) and that of a simple vertical stroke is (i, i ± 1, j, j) starting from the grid square (i,j). Definition 3. A Lye sequence is a tuple (r, I, J, c), where r is the row number of the starting point, I is the sum of all the row numbers appearing in the stroke, J is the sum of all the column numbers appearing in the stroke and c is the column number of the end point of the stroke. Definition 4. Length of a Lye sequence is the number of simple strokes in the sequence. Using the above definitions we conclude the following: Theorem 1. A simple Lye sequence is unique. Proof. It is easy to see from Definition that all four sequences for left, right, up and down simple strokes are different. Now we can prove that each distinct stroke is uniquely identified by Lye sequences. Theorem. A Lye sequence is unique. Proof. We prove this using induction. A simple Lye sequence has length 1 and it is unique as proved in Theorem 1. Now consider a unique Lye sequence (r, I, J, c) of length k with the end point at (i,c). We can extend this sequence to a sequence of length k+1 by adding one simple stroke in three of four possible directions. For a horizontal move we get (r, I + i, J + c ± 1, c ± 1) and for a vertical extension we get (r, I + i ± 1, J + c, c). As we see all these four extensions are unique. Hence any Lye sequence is unique. Thus, we conclude that any character or symbol composed of multiple strokes will also generate a composite Lye sequence. 3. META-STRING Mathematical notations are fundamentally composed of strings, S. That is, S = {Z, Zm, D} (1) where, Z = {x x alphanumeric symbols, x operator symbols, x normal-size} () Z m = {y y alphanumeric symbols, y operator symbols, y minor-size} (3) D = {$, &, ^, #} (4) S is made up of normal-size in () and minor-size (proportionally diminished version of normal-size symbols) in (3). Minor-size symbols are used to denote subscript and superscript.

S also include delimiter symbols, D in (4), to denote grouping order of sub-strings ($ and &), superscript (^) and subscript (#). For example, the expression 1 + x x f ( x) = is converted to ( 1 + x ) S = $f(x) $= $&1 $+ $x^ $- $x^& $/ $&( $1 $+ $x^ $)^& (5) where the delimiter, $, denotes the preceding of each sub-string in S, as in (5). The delimiter, &, marks the preceding and proceeding of a sub-string to denote the numerator and denominator parts of a fraction. Here, S suffice being the meta-string - which can be further translated into other document markup languages. The process is simply reversed to reproduce the original expression into a human-readable format. The following sections explain a selection of teciques used in the processing and formation of S. 3.1 Encoding Primary Features To convert a handwritten mathematical sequence, three primary features of each input character, Cn, must first be determined before it can be appended to S. These features are, symbol size, spacing and position. The input-interface is a writing surface divided into grids to form a matrix. This matrix is subdivided into sectors resembling the grid system in Figure 1. As each symbol or character is written onto the input-surface, the inference engine in HRES will process and attempt to recognise the features of these input. Each symbol that has been successfully encoded will be stored as part of S. The basic conversion algorithm (Figure.) shows how an expression can be progressively appended to S after the current input character, C n, has been determined by Theorem. As (1) shows that S is composed of Z and Zm, once characteristic of Cn has been determined to be of relative normal-size or minor-size symbols compared to the previous character Cn-1, the appropriate delimiter, # and ^ can then be appended to denote subscript and superscript respectively. 3

Case C n = size_normal: If Cn-1 = space then S = $ + Cn Else S = S + Cn Endif Case C n = size_minor and superscript: If Cn-1 = size_normal then S = ^ + Cn Else S = S + Cn Endif Case C n = size_minor and subscript: If Cn-1 = size_normal then S= # + Cn Else S = S + Cn Endif Figure : Algorithm to form meta-string S. As inherent in all handwriting, characteristics of handwritten symbols can vary from individual to individual. Hence, a fixed unit of measurement used to determine the characteristics of handwritten symbols are inflexible. In this case, if-then rule-base decision [1] using fuzzy sets [6] are employed. The fuzzy membership functions to evaluate the current symbol C n are, µ 0 for h x h xn < n n n sup ( xn; ) = for xn 1 for xn > h n (6) and 4

0 for xn > xn h µ sub ( xn; ) = for 0 xn 1 for xn < 0 n (7) where for both (6) and (7), and x n = distance of C n from base level of C n-1 h n-1 = height of previous character, C n-1. Hence, depending on the degree of fulfilment (DOF) each membership function would yield, Cn is appended to S as a superscript or superscript. Likewise, other fuzzy membership function can be used to evaluate the DOF for spacing and the relative size of symbols using if-then rules. 3. Encoding Fractions The fraction symbol presents one of the more complex challenges in handwritten mathematical notation. This symbol, unlike its other operator counterparts (ie. +, -, (,)), is not fixed and varies in length in each notation. The method used is to keep track of the numerator and denominator parts as delineated by the fraction symbol. Figure 3 shows how to handle the non-linearity of notation employing fractions. As the numerator (S1) and denominator (S) is separated by a horizontal line, sub-string delimiters (&) are used. Once the entire fraction element composing of S1 and S is obtained, it is appended to S. In this way, a recursive function can be used to encode nested fraction notation. Case C n = fraction_symbol: loop get all numerator Cn S1 = S1 + Cn end loop S = $& + S1 + & loop get all denominator Cn S = S + Cn end loop S = $/ + $& + S Figure 3: Algorithm to encode fraction notation. 5

One of the methods used by HRES to keep track of the length of the horizontal line is to register the starting and ending x-coordinates of the line. Then, by comparing the coordinates of all symbols written above the line, all the symbols consisting of the numerator can be obtained. Similarly, the denominator is obtained by comparing all the coordinates of symbols written below the fraction line. 4. OUTCOME We have developed a real time mapping system for hand written characters and mathematical symbols for an interactive intelligent system for a computer assisted learning package. The proposed theory and teciques can be extended to image processing systems for both the real time and static images. A preliminary prototype is working and a more sophisticated version is under construction. REFERENCES [1] R.C. Berkan, S. L. Trubatch, Fuzzy Systems Design Principles: Building Fuzzy IF- THEN Rule Bases, NY: IEEE Press, 1997, ch. 3, pp. 83-19. [] A. Chiou, N.C. Lye, A Handwriting Recognition Interface for a Multilingual Society: A Working Prototype for Simultaneous Real-time Recognition of Handwritten Romanised Character and Ideographs, Proceedings of the First Asia Pacific Conference on Computer Human Interaction (APCHI 96), Singapore, June 1996, pp. 19-0. [3] A. Chiou, D. Clayton, P. Farrands, N.C. Lye, A Creative Mandarin Tutor: Some Project Experiences, Proceedings of the Twelfth Annual Conference of the Australian Society for Computers in learning in Tertiary Education (ASCILITE 95), Melbourne, Australia, 1995, pp.57-6. [4] M.A. Salam, An Intelligent NetTutor, Proceedings of the 5 th Pacific Rim Symposium on Natural Language Processing (NLPRS 99), Beijing, China, 1999, pp. 455-458. [5] W. Teitelman, Real Time Recognition of Hand-drawn Characters, Spartan Books, 1964, ch. 14, pp. 456-46. [6] L.A. Zadeh, Fuzzy Sets, Information and Control 8 (1965) 338-353. [7] COIS 1036 Human Computer Interaction (HCI) Term 1 015, 015, Moodle Course Website, Central Queensland University. 6