Introduction
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 or mobile device.
Motivation
As the Arabic language is
considered one of the most used language in the Middle East, It’s not commonly
used in the modern technology and most of the handwriting applications don’t
consider the Arabic language in its implementation, So we decided to enhance
the Arabic handwriting recognition by developing an android application that
allows user to write a mathematical equation using handwriting technique then
the application recognizes the mathematical equation and solve it immediately.
Main Work
We can divide our application’s main
work into main seven parts:
a-
Data
collection
Making an android application
that collects sample data of handwritten numbers and operations then saving the
collected data as pixels.
b- Data preprocessing
Converting all collected data
images to suitable fromat for training phase.
c-
Symbol recognition training
Using Google TensorFlow to
train on the data using the images and labels to develop a recognition model.
d- Expression
reading and segmentation
Dividing the input expression
into symbols to recognize each symbol.
e-
Symbol
recognition
Using the trained model to recognize
every symbol in the equation.
f- Number
construction
Grouping the related digits to
construct the numbers.
g- Expression
construction
Grouping the numbers and
operations to construct the equation in postfix form.
h- Expression
evaluation
Solving the constructing
equation and viewing the result.
Supported
digits and operations
- Digits (Ù , Ù¡, Ù¢, Ù£, Ù¤, Ù¥, Ù¦, Ù§, Ù¨, Ù©)
- Operations (+, -, ÷, ×, =, جا , جتا , ظا , /, (, ), √)
- Digits (Ù , Ù¡, Ù¢, Ù£, Ù¤, Ù¥, Ù¦, Ù§, Ù¨, Ù©)
- Operations (+, -, ÷, ×, =, جا , جتا , ظا , /, (, ), √)
MAK
Script Snapshots
1-
2-
3-
- Collecting more data sets for powerful recognition model.
- Adding more functionalities.
Application Links
- Application Demo - Youtube